Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Building a remote-controlled Rover
Revision as of 06:08, 18 January 2017 by Unnamed Poltroon (Talk) (Created page with "Systems requirements engineering *communication interface, steering/motor interfaces *Internal protocols System Architecture *Components - communication HW, engine, servos to...")
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