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"
m |
|||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | ==DRAFT== | ||
+ | This is a draft example of a workflow description for specific [https://www.eclipse.org/app4mc/ APP4MC] use cases. Future use cases may include: | ||
+ | |||
+ | *I have single core software system and I want to migrate to multi-core system | ||
+ | *I’m starting with multi-core development - how can APP4MC help me | ||
+ | |||
+ | |||
+ | ===I'm building a remote-controlled Rover=== | ||
+ | |||
'''Systems requirements engineering''' | '''Systems requirements engineering''' | ||
*communication interface, steering/motor interfaces | *communication interface, steering/motor interfaces |
Latest revision as of 06:18, 18 January 2017
DRAFT
This is a draft example of a workflow description for specific APP4MC use cases. Future use cases may include:
- I have single core software system and I want to migrate to multi-core system
- I’m starting with multi-core development - how can APP4MC help me
I'm building a remote-controlled Rover
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