This Repo is designed to test the performance of Fuse package and robot-localization package. The project includes configuration and launch files to run the localization nodes and test their performance.
To start first install docker and docker-compose use this Preliminary . Then run the following commands to build and run the Docker container for ROS 2 Jazzy:
git clone git@github.com:SaxionMechatronics/Fuse-Project.git
cd Fuse-Project
docker compose up --build -d
docker compose exec ros2_jazzy bash --login
source /opt/ros/jazzy/setup.bash
colcon build
This will build the Docker image, start the container, and set up the ROS 2 Jazzy environment. You can then use the container to develop and test your ROS 2 applications.
you can open second terminal to run another container to run other ROS 2 nodes and test your applications. Open the second terminal, run the following commands to access the other container Note that you should be in the same directory where the docker-compose.yml file is located:
cd Fuse-Project
docker compose exec ros2_jazzy bash --login
source /opt/ros/jazzy/setup.bash
sudo apt update
sudo apt install ros-jazzy-robot-localization
To install the Fuse package, you can follow these steps:
- Update the package list and install the Fuse package using apt:
sudo apt update
sudo apt install ros-jazzy-fuse
- Build and source it in your ROS 2 workspace:
colcon build
source install/setup.bash
To run the launch files, you can use the following command in your terminal and give the path to your rosbag file as an argument. Make sure to replace the path with the actual path to your rosbag file.
ros2 launch demcon_fuse fuse_localization.launch.py bag1_path:=/path/to/your/rosbag
To run the launch file without a bag and then play the bag in another terminal, you can follow these steps:
- In the first terminal, run the launch file without specifying the bag path:
ros2 launch demcon_fuse fuse_localization_without_rosbag.launch.py
- In the second terminal, play the rosbag using the following command, replacing the path with the actual path to your rosbag file:
ros2 bag play /path/to/your/rosbag --clock --rate 1.0