Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Building a remote-controlled Rover"
Line 14: | Line 14: | ||
'''Software architecture''' | '''Software architecture''' | ||
− | *It should implement an MQTT client that sends out status information (direction, speed, obstacle insight) via XXX communication (wifi) stack. | + | *It should implement an MQTT client that sends out status information (direction, speed, obstacle insight) via XXX communication (wifi) stack. |
+ | **Tools: Mechantronic UML, Rhapsody, Papyrus RT? etc | ||
*Refine SW to HW mapping (Tools: APP4MC) | *Refine SW to HW mapping (Tools: APP4MC) | ||
Revision as of 06:10, 18 January 2017
Systems requirements engineering
- communication interface, steering/motor interfaces
- Internal protocols
System Architecture
- Components - communication HW, engine, servos to control steering, CPU or embedded system on a chip, chassis, wheels, remote control device (tablet, PC)
- Create a preliminary mapping from SW to HW
- Identify minimal hardware capabilities (APP4MC)
- Define - hardware, software, OS, (timing) constraints - models (APP4MC)
Software requirements
- Receive status messages from the Rover, for example heading, speed, obstacle warning, temperature
- Receive video feed in future version
Software architecture
- It should implement an MQTT client that sends out status information (direction, speed, obstacle insight) via XXX communication (wifi) stack.
- Tools: Mechantronic UML, Rhapsody, Papyrus RT? etc
- Refine SW to HW mapping (Tools: APP4MC)
Behavior modeling
- Describe behavior of software components
- state charts for protocols
- Tools: Papyrus, Mechatronic UML
- Access types, timing information (periods, deadlines), order constraints
- Tools: APP4MC
Implementation
- Test design, implementation of software, software integration and code review
- Define which parts of the software run on which core depending on OS, partitioning model, timing model
- Tools: APP4MC
- taskset (1) :
Validation
- Simulation (Tools: TA, Linux tools from Ericsson <?> )
- Trace (APP4MC, TraceCompass)
System Integration
- Create executables, partitioning, task creation, target mapping
- Tools: APP4MC