Date post: | 29-Dec-2015 |
Category: |
Documents |
Upload: | cory-stevens |
View: | 218 times |
Download: | 1 times |
Software Framework for Software Framework for Teleoperated VehiclesTeleoperated Vehicles
Team Eye-CreateTeam Eye-CreateECE 4007 L01ECE 4007 L01
Karishma JivaKarishma JivaAli BenquassmiAli BenquassmiSafayet AhmedSafayet Ahmed
Armaghan MahmudArmaghan MahmudKhin Lay NweKhin Lay Nwe
OverviewOverview
Software to control and communicate with Software to control and communicate with TGVsTGVs
Customizable software needed Customizable software needed
Customers with robotic vehiclesCustomers with robotic vehicles
$42,140 development cost of test platform$42,140 development cost of test platform
Design ObjectivesDesign Objectives
Flexible modular software architectureFlexible modular software architecture
Communication and control over wireless Communication and control over wireless networknetwork
Sensors and video feedbackSensors and video feedback
Open InterfaceOpen Interface Protocol to communicate with iRobotProtocol to communicate with iRobot
Commands made of opcode andCommands made of opcode and
parametersparameters
Protocol does not implement any Protocol does not implement any
hand shakinghand shaking
RS-232 Serial InterfaceRS-232 Serial Interface
Robot End SoftwareRobot End Software
iRobot Create
SerialCommunication
TC
P/IPMotion Control
Controlled Robot API
Sensors
USB
Executive Program
TCP/IP
Com
mun
icat
ion
Lib
rary
Robot End SoftwareRobot End Software
USB
GPS Receiver
Temperature Sensor
Some Other Sensor
Sensors Layer
Network Configuration of Test Network Configuration of Test PlatformPlatform
LAWN
Control End
Address relay node
Robot End
Layered Structure of Layered Structure of CommunicationsCommunications
Layers Layers correspond correspond
to our to our librarylibrary
Application Application LayersLayers
Remote Remote Access Access ProtocolProtocol
Address Address Relay Relay
ProtocolProtocol Video feedback Video feedback systemsystem
Boundary Boundary Preserving ProtocolPreserving Protocol
Layers Layers correspond correspond to libraries, to libraries,
OS and OS and hardwarehardware
Transport Transport LayerLayer TCPTCP UDPUDP
Network Network LayerLayer IPIP
Link LayerLink Layer 802.11 Wireless802.11 WirelessPhysical Physical LayerLayer
Boundary Preserving ProtocolBoundary Preserving Protocol
TCP does not preserve message boundaries TCP does not preserve message boundaries
BPP provides message boundary abstractionBPP provides message boundary abstraction
Message SizeMessage Size Complete messageComplete message
4 bytes4 bytes Variable sizeVariable size
Address Relay ProtocolAddress Relay Protocol
Problem: Problem:
- DHCP assigns client, server arbitrary addresses- DHCP assigns client, server arbitrary addresses
- Client needs server address to initiate - Client needs server address to initiate communication communication
Solution: Solution:
- Third node with static address- Third node with static address- Node relays address between server, client- Node relays address between server, client
Address Relay ProtocolAddress Relay Protocol
Server’s IPV4 address
Server’s IPV4 address
Server not registered
request
request
Server Address Relay ClientMessage formats
Request: single ascii character “r” sent by client
Server not registered:4 bytes representing address 255.255.255.255
Server’s IPV4 address:Server’s 4 byte IP address in network byte order
Remote Access ProtocolRemote Access Protocol
Remotely access different robot functions Remotely access different robot functions e.g. wheel velocitye.g. wheel velocity
Transfer sensor data back to the control Transfer sensor data back to the control interfaceinterface
Op code when Op code when transmitting to robottransmitting to robot Function argumentsFunction arguments
4 bytes4 bytes Variable sizeVariable size
Sensor ID when Sensor ID when transmitting from transmitting from
robotrobot
Sensor dataSensor data
Example:Example:
0x000000030x00000003 0xFFFFFF000xFFFFFF00 0xFFFFFF000xFFFFFF00
Function: “wheel Function: “wheel velocity” (4 bytes)velocity” (4 bytes)
Left wheel velocity Left wheel velocity
(4 bytes)(4 bytes)Right wheel velocity Right wheel velocity
(4 bytes)(4 bytes)
Description of Video Transfer Description of Video Transfer ProtocolProtocol
To be determinedTo be determined
Should Should • transfer video frames of sufficient transfer video frames of sufficient
qualityquality• minimize delay in transfer of framesminimize delay in transfer of frames• preserve order of framespreserve order of frames
May use UDP to transmit framesMay use UDP to transmit frames
Development Tools & EnvironmentDevelopment Tools & Environment
Language: C, C++Language: C, C++
Compiler: GCC, MS C++ compilerCompiler: GCC, MS C++ compiler
OS: Windows CE, LinuxOS: Windows CE, Linux
Other Tools: Qt library, MS Visual Other Tools: Qt library, MS Visual Studio Studio
Cost of Development of Test PlatformCost of Development of Test Platform
Parts CostParts Cost $3,850$3,850
Engineering labor Engineering labor $26,250$26,250
OverheadsOverheads $12,040$12,040
TotalTotal $42,140$42,140
Future Work Future Work
Code higher layers in robot end Code higher layers in robot end softwaresoftware
Complete coding communication Complete coding communication librarylibrary
Complete GUI development at Complete GUI development at control interfacecontrol interface
Integrate all systems and test on Integrate all systems and test on LAWNLAWN