Skip to content

Latest commit

 

History

History
232 lines (168 loc) · 6.17 KB

File metadata and controls

232 lines (168 loc) · 6.17 KB

Table of Contents

This demonstration showcases how to:

  • Configure and operate a heterogeneous team of robots in Ignition Gazebo using customized spawn launch files:
  • Launch and remap multiple RViz2 instances, each with its own configuration file for development and visualization

Before running the demonstrations, follow the instructions in our setup guide to properly configure your environment.

Once your environment is ready, follow these steps to set up the project:

  1. Clone the repository:
    Download the project files to your computer.
git clone https://github.com/multirobotplayground/Jazzy-Multi-Robot-Sandbox.git
cd Jazzy-Multi-Robot-Sandbox
  1. Initialize submodules:
    Some dependencies are included as submodules. This command fetches them.
git submodule update --init --remote
  1. Source ROS 2 environment:
    Make sure your terminal session is using the correct ROS 2 distribution (here, jazzy).
source /opt/ros/jazzy/setup.bash
  1. Build the workspace:
    Compile all packages in the repository.
colcon build
  1. Source the workspace:
    Update your environment so ROS 2 can find the newly built packages.
source install/setup.bash

After completing these steps, your workspace will be ready to run the multi-robot simulations and integrations described in this guide.

Run the following launch file from the multi-robot-simulations package:

ros2 launch multi-robot-simulations heterogeneous_launch.py

If the launch is successful, Ignition Gazebo should start alongside six RViz2 instances, each dedicated to a different robot:

Run the following command:

ros2 topic list

You should see topics for all robots, such as:

/clock
/parameter_events
/robot_1/cmd_vel
/robot_1/imu
/robot_1/joint_states
/robot_1/lidar/points
/robot_1/lidar/scan
/robot_1/odometry
/robot_1/pose
/robot_1/robot_description
...
/robot_6/pose
/robot_6/robot_description
/rosout
/tf
/tf_static

To visualize the transformation tree:

ros2 run tf2_tools view_frames

This will generate a .pdf file with a full-frame diagram of your robot transforms.

Sensors and data:

  • IMU
  • 3D LiDAR
  • 2D LiDAR
  • Odometry
  • Ground truth pose

TF Tree:

RViz Visualization:

Sensors and data:

  • IMU
  • 3D LiDAR
  • 2D LiDAR
  • Odometry
  • Ground truth pose

TF Tree:

RViz Visualization:

Sensors and data:

  • IMU
  • RGB-D Camera
  • Odometry
  • Ground truth pose

TF Tree:

RViz Visualization:

Support Open Source mobile robots projects for search and rescue in natural disasters, which is my main motivation. Your donation will make a huge difference!

Donate Donate

All content from this repository is released under a modified GPLv3 license.

Author/Maintainer:

emails: