[FF1 Generator] Refactor and consoldiate the current feature set
Main Features
- The generator shall still take an allocation table collection as input.
- An FMU for each task shall be generated.
- A configuration file for the FMI adapter shall be generated.
- JSON files encoding the allocations shall be generated.
Changes
- Active task reconfiguration support (via the FI interface) is not needed for now. The ability to parse a reconfiguration graph and export it as a JSON file should be retained.
- No external fault injection scripts shall be used. Instead, the generator shall generate JSON-configuration files which add dedicated FI buttons to the simulation's UI in Gazebo and inform the user about the state of the system via the RQT message interface.
- The generation of ROS launch files should not be needed for now, as all ROS nodes are co-simulated by the same instance of the FMI adapter. Hence, also the configuration files encoding the signal's routes through the platforms network are not necessary as of now.
Meeting 28th of April
GENERATOR SETUP:
- Add reuse libraries to the rover model for both the logical and platform architecture to address the hard-coded port names in the middleware (e.g. MotorValue, SteeringValue).
INPUTS:
- Logical Architecture - based on reuse lib
- Task Architecture - automatically generated
- Hardware Architecture - based on reuse lib
- Allocation tables - using DSE for example
GENERATOR FUNCTIONALITY:
- Right click on ATC
- Choose "Deploy on rover" in menu
- Choose rover (color) from new dropdown menu (+ also have an input option)
- Generate FMUs for each task
- Ensure middleware setup on the Pis
-
scp
FMUs on Pis inshare/
folder of middleware based on software-to-hardware allocation - Start middleware