├── .gitignore ├── LICENSE ├── README.md ├── documentation ├── ICSE_2021.pdf └── overview.png ├── experiments ├── logging_experiment │ ├── config_logging_experiment.py │ └── logging_turtlebot_runner │ │ ├── __main__.py │ │ ├── mission │ │ └── mission.py │ │ └── modules │ │ ├── movement │ │ ├── MovementController.py │ │ └── RotationDirection.py │ │ ├── sensors │ │ └── OdomSensor.py │ │ └── utilities │ │ └── Utilities.py ├── mini_mission │ ├── mini_mission_gazebo.py │ ├── mini_mission_realworld.py │ └── turtlebot_runner │ │ ├── __main__.py │ │ ├── common │ │ ├── ClientMetricsController.py │ │ └── __init__.py │ │ └── mission │ │ ├── camera │ │ ├── CameraController.py │ │ └── ClientOnDemandComponent.py │ │ └── mission.py ├── mini_sim_test │ └── mini_sim_test_config.py └── mini_test │ └── mini_test_config.py └── robot-runner ├── ConfigValidator ├── CLIRegister │ └── CLIRegister.py ├── Config │ ├── Models │ │ ├── FactorModel.py │ │ ├── OperationType.py │ │ ├── RobotRunnerContext.py │ │ └── RunTableModel.py │ ├── RobotRunnerConfig.py │ └── Validation │ │ └── ConfigValidator.py └── CustomErrors │ ├── BaseError.py │ ├── CLIErrors.py │ ├── ConfigErrors.py │ ├── ExperimentOutputErrors.py │ └── ProgressErrors.py ├── EventManager ├── EventSubscriptionController.py └── Models │ └── RobotRunnerEvents.py ├── ExperimentOrchestrator ├── Architecture │ ├── Processify.py │ └── Singleton.py ├── Experiment │ ├── ExperimentController.py │ └── Run │ │ ├── IRunController.py │ │ └── RunController.py └── Misc │ ├── BashHeaders.py │ ├── DictConversion.py │ └── PathValidation.py ├── Plugins ├── Profilers │ ├── INA219Profiler.py │ └── NetworkProfiler.py └── Systems │ ├── TopicSubscriber.py │ └── TurtleBot3 │ ├── BasicTurtleBot3.py │ └── modules │ ├── movement │ ├── MovementController.py │ └── RotationDirection.py │ ├── recording │ └── MetricsRecorder.py │ ├── sensors │ ├── BatterySensor.py │ ├── CPUSensor.py │ ├── CameraSensor.py │ ├── OdomSensor.py │ └── RAMSensor.py │ └── utilties │ └── Utilities.py ├── ProgressManager ├── Output │ ├── BaseOutputManager.py │ ├── CSVOutputManager.py │ └── OutputProcedure.py └── RunTable │ ├── Models │ └── RunProgress.py │ └── RunTableManager.py └── __main__.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/README.md -------------------------------------------------------------------------------- /documentation/ICSE_2021.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/documentation/ICSE_2021.pdf -------------------------------------------------------------------------------- /documentation/overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/documentation/overview.png -------------------------------------------------------------------------------- /experiments/logging_experiment/config_logging_experiment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/logging_experiment/config_logging_experiment.py -------------------------------------------------------------------------------- /experiments/logging_experiment/logging_turtlebot_runner/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/logging_experiment/logging_turtlebot_runner/__main__.py -------------------------------------------------------------------------------- /experiments/logging_experiment/logging_turtlebot_runner/mission/mission.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/logging_experiment/logging_turtlebot_runner/mission/mission.py -------------------------------------------------------------------------------- /experiments/logging_experiment/logging_turtlebot_runner/modules/movement/MovementController.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/logging_experiment/logging_turtlebot_runner/modules/movement/MovementController.py -------------------------------------------------------------------------------- /experiments/logging_experiment/logging_turtlebot_runner/modules/movement/RotationDirection.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/logging_experiment/logging_turtlebot_runner/modules/movement/RotationDirection.py -------------------------------------------------------------------------------- /experiments/logging_experiment/logging_turtlebot_runner/modules/sensors/OdomSensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/logging_experiment/logging_turtlebot_runner/modules/sensors/OdomSensor.py -------------------------------------------------------------------------------- /experiments/logging_experiment/logging_turtlebot_runner/modules/utilities/Utilities.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/logging_experiment/logging_turtlebot_runner/modules/utilities/Utilities.py -------------------------------------------------------------------------------- /experiments/mini_mission/mini_mission_gazebo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/mini_mission/mini_mission_gazebo.py -------------------------------------------------------------------------------- /experiments/mini_mission/mini_mission_realworld.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/mini_mission/mini_mission_realworld.py -------------------------------------------------------------------------------- /experiments/mini_mission/turtlebot_runner/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/mini_mission/turtlebot_runner/__main__.py -------------------------------------------------------------------------------- /experiments/mini_mission/turtlebot_runner/common/ClientMetricsController.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/mini_mission/turtlebot_runner/common/ClientMetricsController.py -------------------------------------------------------------------------------- /experiments/mini_mission/turtlebot_runner/common/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /experiments/mini_mission/turtlebot_runner/mission/camera/CameraController.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/mini_mission/turtlebot_runner/mission/camera/CameraController.py -------------------------------------------------------------------------------- /experiments/mini_mission/turtlebot_runner/mission/camera/ClientOnDemandComponent.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/mini_mission/turtlebot_runner/mission/camera/ClientOnDemandComponent.py -------------------------------------------------------------------------------- /experiments/mini_mission/turtlebot_runner/mission/mission.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/mini_mission/turtlebot_runner/mission/mission.py -------------------------------------------------------------------------------- /experiments/mini_sim_test/mini_sim_test_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/mini_sim_test/mini_sim_test_config.py -------------------------------------------------------------------------------- /experiments/mini_test/mini_test_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/experiments/mini_test/mini_test_config.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/CLIRegister/CLIRegister.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/CLIRegister/CLIRegister.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/Config/Models/FactorModel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/Config/Models/FactorModel.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/Config/Models/OperationType.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/Config/Models/OperationType.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/Config/Models/RobotRunnerContext.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/Config/Models/RobotRunnerContext.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/Config/Models/RunTableModel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/Config/Models/RunTableModel.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/Config/RobotRunnerConfig.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/Config/RobotRunnerConfig.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/Config/Validation/ConfigValidator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/Config/Validation/ConfigValidator.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/CustomErrors/BaseError.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/CustomErrors/BaseError.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/CustomErrors/CLIErrors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/CustomErrors/CLIErrors.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/CustomErrors/ConfigErrors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/CustomErrors/ConfigErrors.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/CustomErrors/ExperimentOutputErrors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/CustomErrors/ExperimentOutputErrors.py -------------------------------------------------------------------------------- /robot-runner/ConfigValidator/CustomErrors/ProgressErrors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ConfigValidator/CustomErrors/ProgressErrors.py -------------------------------------------------------------------------------- /robot-runner/EventManager/EventSubscriptionController.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/EventManager/EventSubscriptionController.py -------------------------------------------------------------------------------- /robot-runner/EventManager/Models/RobotRunnerEvents.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/EventManager/Models/RobotRunnerEvents.py -------------------------------------------------------------------------------- /robot-runner/ExperimentOrchestrator/Architecture/Processify.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ExperimentOrchestrator/Architecture/Processify.py -------------------------------------------------------------------------------- /robot-runner/ExperimentOrchestrator/Architecture/Singleton.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ExperimentOrchestrator/Architecture/Singleton.py -------------------------------------------------------------------------------- /robot-runner/ExperimentOrchestrator/Experiment/ExperimentController.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ExperimentOrchestrator/Experiment/ExperimentController.py -------------------------------------------------------------------------------- /robot-runner/ExperimentOrchestrator/Experiment/Run/IRunController.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ExperimentOrchestrator/Experiment/Run/IRunController.py -------------------------------------------------------------------------------- /robot-runner/ExperimentOrchestrator/Experiment/Run/RunController.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ExperimentOrchestrator/Experiment/Run/RunController.py -------------------------------------------------------------------------------- /robot-runner/ExperimentOrchestrator/Misc/BashHeaders.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ExperimentOrchestrator/Misc/BashHeaders.py -------------------------------------------------------------------------------- /robot-runner/ExperimentOrchestrator/Misc/DictConversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ExperimentOrchestrator/Misc/DictConversion.py -------------------------------------------------------------------------------- /robot-runner/ExperimentOrchestrator/Misc/PathValidation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ExperimentOrchestrator/Misc/PathValidation.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Profilers/INA219Profiler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Profilers/INA219Profiler.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Profilers/NetworkProfiler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Profilers/NetworkProfiler.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TopicSubscriber.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TopicSubscriber.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TurtleBot3/BasicTurtleBot3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TurtleBot3/BasicTurtleBot3.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TurtleBot3/modules/movement/MovementController.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TurtleBot3/modules/movement/MovementController.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TurtleBot3/modules/movement/RotationDirection.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TurtleBot3/modules/movement/RotationDirection.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TurtleBot3/modules/recording/MetricsRecorder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TurtleBot3/modules/recording/MetricsRecorder.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TurtleBot3/modules/sensors/BatterySensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TurtleBot3/modules/sensors/BatterySensor.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TurtleBot3/modules/sensors/CPUSensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TurtleBot3/modules/sensors/CPUSensor.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TurtleBot3/modules/sensors/CameraSensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TurtleBot3/modules/sensors/CameraSensor.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TurtleBot3/modules/sensors/OdomSensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TurtleBot3/modules/sensors/OdomSensor.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TurtleBot3/modules/sensors/RAMSensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TurtleBot3/modules/sensors/RAMSensor.py -------------------------------------------------------------------------------- /robot-runner/Plugins/Systems/TurtleBot3/modules/utilties/Utilities.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/Plugins/Systems/TurtleBot3/modules/utilties/Utilities.py -------------------------------------------------------------------------------- /robot-runner/ProgressManager/Output/BaseOutputManager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ProgressManager/Output/BaseOutputManager.py -------------------------------------------------------------------------------- /robot-runner/ProgressManager/Output/CSVOutputManager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ProgressManager/Output/CSVOutputManager.py -------------------------------------------------------------------------------- /robot-runner/ProgressManager/Output/OutputProcedure.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ProgressManager/Output/OutputProcedure.py -------------------------------------------------------------------------------- /robot-runner/ProgressManager/RunTable/Models/RunProgress.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ProgressManager/RunTable/Models/RunProgress.py -------------------------------------------------------------------------------- /robot-runner/ProgressManager/RunTable/RunTableManager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/ProgressManager/RunTable/RunTableManager.py -------------------------------------------------------------------------------- /robot-runner/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/S2-group/robot-runner/HEAD/robot-runner/__main__.py --------------------------------------------------------------------------------