This repository contains simulations of mobile robots moving through indoor scenes in Gazebo. It includes building a mobile robot as well as sensor models, localizing the robot's position, and using Nav2 for indoor navigation.
This project is based on the C++ version of ROS2. To prepare your PC you need:
- Install Ubuntu 22.04 on PC or in Virtual Machine Download the ISO Ubuntu 22.04 for your PC
- Install ROS Humble on your Ubuntu 22.04
- Install Gazebo 11 on your Ubuntu 22.04
- Install libraries that are not included in the standard ROS 2 package. Install them with:
sudo apt-get update && sudo apt-get install -y \
ros-humble-ros2-controllers \
ros-humble-gazebo-ros \
ros-humble-gazebo-ros-pkgs \
ros-humble-ros2-control \
ros-humble-gazebo-ros2-control \
ros-humble-joint-state-publisher-gui \
ros-humble-robot-localization \
ros-humble-tf-transformations
- Install Nav2 on your Ubuntu 22.04
To Launch the Simulation of the Robot
- Clone the repo
git clone
- Build the ROS 2 workspace
colcon build
- Source the ROS 2 Workspace
. install/setup.bash
- Launch the Gazebo simulation
ros2 launch mrobot_bringup mrobot.launch.py
To launch Nav2
- Open a new terminal and source the ROS2 Workspace
. install/setup.bash
- Launch the Nav2
ros2 launch mrobot_nav2 mrobot_nav2.launch.py
TODOS:
- Realization of VIO (Visual Inertial Odometry)
- Project management with Docker
Distributed under the Apache 2.0 License. See LICENSE
for more information.