Skip to main content
Jump to: navigation, search

Difference between revisions of "Building a remote-controlled Rover"

m
 
(2 intermediate revisions 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
Line 14: Line 23:
  
 
'''Software architecture'''
 
'''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)
+
*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)
  

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

Back to the top