Skip to main content

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.

Jump to: navigation, search

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. (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)
  

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

Back to the top