MCS Rover Director
From TeamFrednetWiki
The Rover Director is a rover independend control (or director) UI, which allows us to send commands and requests to the Rover and receive the results from the Rover situated on the Luna surface. The Rover Director provides a GUI, a command line input, an input via peripherial devices such as joysticks or plottingports. The Rover Director is integrated into the FREDWEB. Furthermore it processes the returning data from the Rover and interprets the data. As example, a graphical plot of the driven path of the Rover can be drawn. The User interface provides also a video window from the Rover camera to support steering the Rover. The software works as webapplication and is platform independend. Dependend on Rover command design, the Rover Director can access librarys to convert the command inputs given by the user to the by the rover required command structure/style (and visa verca).
Exist a similar web based remote controler for Lego Mindstorms based rovers. See Portal:Lego_Mindstorms
Contents |
Overview
| System Integration | Data Flow and Tasks | Data Mindmap |
|---|---|---|
Programming
Languages
- PHP
- AJAX
Launchpad
UML Story
A Rover has a unique name and design and consists out of the following units
- Logic or Controller
- in charge for the radio communication, motor control, power, heater, and anaylsing the feedback of each unit
- some Batteries and Solar panels
- taking care to supply sufficient power to the rover
- Motors
- will be controlled by the controller and give some feedback to the controller
- Wheels
- are attached to the motors and move the rover into the whished direction
- Heaters and or Coolers
- might be neccessary to stabillize the temperature
- Steering motors
- as well controlled by the controller
- Radio TX/RX Unit
- doing everything related to comm
- Temperature Feeler
- measuring the temperature on dedicated points
- Pan and Tilt Servos
- to move the camera sensor installed on the rover, also controlled by the controller
- a Video Signal
- provided by the onboard camera but controlled by an independend system
- and an Accelerometer
- for a feedback of direction, speed and acceleration
Furthermore the rover director has to handle the
- Command structure
- that's what a rover needs to recieve in order to move or act
- and a Feedback structure
- that's what the rover will send back to earth after recieving an input or because of an autonmous produced signal.
| Rover Basic Classes |
|---|
Control Command and Status Request Inputs
- Commandline
- GUI
- Joystick
- Plottingboard
- Drive Pad
Control Commands
To be revised!!!
- Each command/request will have a unique number, e.g. the first command send to the rover has #1, second #2,...
- A command will not be automatically executed, except the STOP command.
- A status request does not need an execute command
- A command can be a single command or
- bundled commands
- up to x commands can be bundled
- a checksum will be created
- an "execute" command is the last in command row
- To activate commands an execute command must be given,
- The execute command can be given for each command or for a bundle of commands (e.g. execute command #2 or execute command #1 - #5)
Layout
Static example (best seen with Firefox):
| Rover Basic Classes | Browsers Comparison |
|---|---|
Actual layout version:
| Rover Director Layout |
|---|
Code at Launchpad
The Rover Director is a subpart of FREDWEB and code is currently hosted at Launchpad
Related links
See a rover director version for the Lego Mindstorms [Portal:Lego_Mindstorms/command robots].
