Download presentation
Presentation is loading. Please wait.
Published byFrancis King Modified over 9 years ago
1
Software Narrative: Brawns AND Brains T EAM 12 - SUPER TANK
2
O VERVIEW Project Refresher Software Architecture Overview The High Level – LRVC Protocol The Low Level – Main Embedded System Summary
3
P ROJECT R EFRESHER Long Range Vehicle (Tank) Control over wireless network Operate from anywhere in the world (Website/Android App) Collaboration with HKUST Shared Server Customizable for new vehicle features
4
PSSC S An ability to send/receive/decode commands from a controller wirelessly An ability to control direction/firing capability of a vehicle An ability to autonomously avoid obstacles encountered by the tank An ability to provide sensor feedback to a wireless controller An ability to monitor a battery and prevent unexpected signal loss by alerting operator
5
S OFTWARE A RCHITECTURE HKUST Server LRV Virtual Controller (Android Tablet/Phone) Pandaboard Micro VLC Server (Script ) Serial Server (Python) Android Virtual Controller App (Android) TCP/IP Stack UART Receiver (ASM) Main Embedded System (ASM) LRV LRVC Server (Java) RTSP TCP UART Receiver (ASM) USB Cam Bat Man. PCB MPEG4v Lion Battery UART TCP Virtual Controller Selection Website (Php) Web Browsing
6
T HE H IGH L EVEL – LRVC P ROTOCOL O VERVIEW The LRVC Protocol provides a framework for communications between a Virtual Controller and an LRV. The LRVC Protocol has been designed to be flexible enough to accommodate a diverse set of functionalities in an LRV yet structured enough to yield a fair amount of code re-use between LRV implementations.
7
T HE H IGH L EVEL – LRVC P ROTOCOL P ROPERTIES Android Compatible Extendable Robust UI Support Video Streaming Multiple Users Secure
8
T HE H IGH L EVEL – LRVC P ROTOCOL
9
HKUST Server LRV Virtual Controller (Android Tablet/Phone) Pandaboard Micro VLC Server (Script ) Serial Server (Python) Android Virtual Controller App (Android) TCP/IP Stack UART Receiver (ASM) Main Embedded System (ASM) LRV LRVC Server (Java) UART Receiver (ASM) USB Cam Bat Man. PCB Lion Battery Virtual Controller Selection Website (Php) THE LRVC Protocol
10
LRVC P ROTOCOL – P ORT M APPINGS
11
LRVC P ROTOCOL - T HE P HASES Connection Phase - This phase is responsible for the security and resource allocation of the LRVC Server along with providing services for the Virtual Controller to provide a User with a selection screen of LRV options. Configuration Phase - This phase is responsible for the configuration of a Virtual Controller. It populates the Virtual Controller with a standard interface of Standard Objects and a unique set of custom objects called Non-Standard Objects. These objects all have a known interface. Control Phase - This phase is responsible for synchronously distributing opcodes (aka commands) to an LRV at the rate of 10Hz. Additionally, it wraps and transports the LRV’s feedback as Status Messages back to the Virtual Controller at a rate of 10Hz. Lastly, it facilitates a video feed from the LRV back to the Virtual Controller at a target rate of 20Hz.
12
LRVC P ROTOCOL - C ONFIGURATION HKUST Server LRV Virtual Controller (Android Tablet/Phone) Pandaboard Micro VLC Server (Script ) Serial Server (Python) Android Virtual Controller App (Android) TCP/IP Stack UART Receiver (ASM) Main Embedded System (ASM) LRV LRVC Server (Java) UART Receiver (ASM) USB Cam Bat Man. PCB Lion Battery Virtual Controller Selection Website (Php) Web Browsing
13
LRVC P ROTOCOL - C ONFIGURATION 1. Web Repository of Apps for Download 2. Standard App, With Extension Scheme
14
LRVC P ROTOCOL – W EB R EPOSITORY Web Browse To This Webpage LRV #1 LRV #1 Description Download LRV #2 LRV #2 Description Download
15
LRVC P ROTOCOL – E XTENSION S CHEME FIRE Obj1.class Obj.class Standard ObjectsCustom Objects Obj.class
16
C ONTROLLER O BJECTS Obj.class CustomLRVCObject Interface getOpcode() public boolean wasActivated() Used internally to aggregate activated objects giveResponse() “Speed 8mph” 0xA3
17
C ONTROLLER O BJECTS FIRE 0x11 0x07 0x060x0A0x100x0C0x01 NOTE: Opcodes are made up Command Msg
18
C ONTROLLER O BJECTS FIRE NOTE: Responses are made up Status Msg (3ft, 2ft) “No Events” 0x2F Video Stream
19
T HE B IG P ICTURE The basic idea is that the protocol allows extension and custom implementation through creating custom GUI objects (Java objects that contain a known “CustomLRVCObjects” interface), serializing them through the standard Java library, and interfacing them through the controllers GUI. Thus, the custom implementation is achieved not by modifying the LRVC Protocol but by adjusting the bindings of these GUI components.
20
LRVC P ROTOCOL – C ONNECTION AND C OMMAND Comprehensive 22 Page Document. 2 Collaborating Teams Sequence Diagrams Message Schemas
21
T HE L OW L EVEL – E MBEDDED S YSTEM HKUST Server LRV Virtual Controller (Android Tablet/Phone) Pandaboard Micro VLC Server (Script ) Serial Server (Python) Android Virtual Controller App (Android) TCP/IP Stack UART Receiver (ASM) Main Embedded System (ASM) LRV LRVC Server (Java) UART Receiver (ASM) USB Cam Bat Man. PCB Lion Battery Virtual Controller Selection Website (Php) Internal Communications
22
E MBEDDED S YSTEM C ONSTRAINTS 96K SRAM Currently <1K Vars ~ 1K Instructions Not using Flash Critical Spots 128 B Trig Tables 256-288B Send and Receive Buffers
23
I NTERFACE T O T HE LRVC S ERVER
24
E MBEDDED S YSTEM Buffer OpCodes Async. Send Status Messages 10 Hz Timer Interrupt Code Command FlagsStatus Messages 8 Messages 36 Byte Max Msg Size 8 Commands (8 Bytes) Execution Functions Construct Response Functions Obst Det IRs (10) Battery Management Trig Tables Obstacle Detection Alg. Bat. Algo Variables Battery Level Alg. Receive Buffer (256) 1. 2. 3. 50 Hz Timer Interrupt Code Command Process Obstacle Avoid. Process Obstacle Avoid Alg. Past Movements And Obstacles
25
E MBEDDED S YSTEM – M EMORY M APPING
27
Power Supply Power Supply Power Supply Power Supply External Oscillation JTAG (ULinkMe) Left Drive Motor Right Drive Motor Turret Drive Motor Fire Ledge Det. Obstacle Det. Panda Comm (UART) Reset Bat Management Comm (UART)
28
C URRENT P ROGRESS TaskProgressTeam Owner UART Com90%Purdue Obstacle Detection5%Purdue Battery Management25%Purdue Motor Drivers100%Purdue Video Streaming10%Purdue LRVC Protocol100%Purdue/HKUST LRVC Server25%HKUST Virtual Controller25%Purdue Integration0%Purdue
29
Q UESTIONS ?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.