This project implements a ROS2-based autonomous navigation system using TurtleBot3 in a custom Gazebo world.
A user can select one or more predefined waypoints from a custom GUI, and the robot autonomously navigates to them in order, then returns to its home position.
- Select single or multiple waypoints via GUI.
- Robot navigates autonomously to selected stations in order.
- Automatic return to home position after completion.
- Live navigation status updates (Navigating, Reached, Failed).
- Stop/Cancel button for manual interruption.
- Error handling for blocked paths or failed navigation attempts.
- Single launch file to start all components.
Watch on 2x for better experience.
- Ubuntu 24.04
- ROS2 Jazzy
- Gazebo Sim Harmonic
sudo apt update && sudo apt upgrade
sudo apt install ros-jazzy-turtlebot3*
sudo apt install ros-jazzy-navigation2 ros-jazzy-nav2-bringup
Important
This package is missing from nav2 stack, might be fixed in upcoming ROS2 updates
sudo apt-get install ros-jazzy-nav2-route
cd
mkdir -p tbot3_ws/src
cd ~/tbot3_ws/src
git clone https://github.com/GJR-DHRL/TurtleBot3_GUI.git .
cd ~/tbot3_ws
colcon build
source install/setup.bash
Made launch file to start whole project at once :
ros2 launch tbot3_bringup tbot3.launch.py
Dhvaril Gajjar
Robotics Engineer • ROS2 Developer
“Engineering should not only function — it should inspire.”


