This is a ROS 2 simulation stack for the iRobot® Create® 3 robot.
Have a look at the Create® 3 documentation for more details on the ROS 2 interfaces exposed by the robot.
Required dependencies:
- ROS 2 galactic
- Gazebo
- ROS 2 dev tools:
- colcon-common-extensions
- rosdep: Used to install dependencies when building from sources
- vcs: Automates cloning of git repositories declared on a YAML file.
- Create a workspace if you don't already have one:
mkdir -p ~/create3_ws/src
-
Clone this repository into the src directory from above.
-
Use
vcs
to clone additional dependencies into the workspace:
vcs import ~/create3_ws/src/ < ~/create3_ws/src/create3_sim/dependencies.repos
- Navigate to the workspace and install ROS 2 dependencies with:
cd ~/create3_ws
rosdep install --from-path src -yi
- Build the workspace with:
colcon build --symlink-install
source install/local_setup.bash
Create® 3 can be spawned in an empty world in Gazebo and monitored through RViz with
ros2 launch irobot_create_gazebo_bringup create3_gazebo.launch.py
Create® 3 can be spawned in the AWS small house in Gazebo and monitored through RViz.
This requires that the package aws_robomaker_small_house_world
is available.
If you need it, you can build aws_robomaker_small_house_world
in your ROS 2 workspace by doing:
vcs import ~/create3_ws/src/ < ~/create3_ws/src/create3_sim/demo.repos
cd ~/create3_ws
colcon build --symlink-install
source install/local_setup.bash
Then you can run:
ros2 launch irobot_create_gazebo_bringup create3_gazebo_aws_small.launch.py