at the Vrije Universiteit Amsterdam we are working on a tool for automatically executing repetitive missions in ROS. The tool is called Robot Runner and it can be useful in case you need to execute several runs of the same mission, for example for profiling CPU/memory consumption, checking network requests, etc. We are using it for executing experiments targeting the energy consumption of different variations of the same robot.
The idea behind the tool is that you define a self-contained Python-based description of the experiment and then the tool automatically executes the runs (while collecting measurement data) and packages collected measures into a ready-to-use CSV file. The tool is plugin-based, so you can expand it with your own behaviour, and it supports both ROS1 and ROS2.
If you want to know more, below you can find some pointers about Robot Runner:
- YouTube video: https://www.youtube.com/watch?v=le-SAXI2k1E
- GitHub repo: https://github.com/S2-group/robot-runner
- Scientific article about the tool: ICSE_2021.pdf
Of course, feel free to let us know what you think about it and to post GitHub issues/PRs if you encounter any bugs!