Ros injection tool that subscribes to a topic and makes chenges to it according to preset behavior
Setting up procedure
As it stands this tool works with ROS2 Humble, planned to port on ROS Noetic in near future. You need to have Carla 0.9.10.1 installed as well as newest version of Autoware-AI.
mkdir -p ws/src
cd ws/src
We need to clone couple of packages in order to get everything to work. You can host them spearately or in one workspacegit clone https://github.com/danilo-pejovic/fault_injection_ros2
git clone https://github.com/autowarefoundation/autoware_ai_simulation
git clone https://github.com/carla-simulator/carla-autoware.git
git clone https://github.com/carla-simulator/ros-bridge.git
As an example if we need to change ackermann control we need to change topic in this line to a topic that is output of out mux launchfile - so far very creatively named muxed_topic.cd ..
rosdep install --from-paths src --ignore-src -r -y
source /opt/ros/humble/setup.bash
MAKEFLAGS="-j1 -l1" colcon build
source install/setup.bash
TODO: testing (no testing done so far) and automatically triggering TODO: Create docker container for whole setup
After that one of the launch files like:
ros2 launch fault_injection_ros2 launch_robot.launch.py
Should have mux enabled by default with hardcorded priorities.
Known limitations:
- Works only with untimestamped messages
- Produces bit of lag when taking a lot of data
- Has to be manually turned on and take messages