Skip to content

kuralme/holonomic_robot_project

Repository files navigation

Holonomic Robot Project

This project focuses on implementing and tuning PID controllers to enable precise and efficient navigation of the ROSBot XL, a holonomic (omni-directional) mobile robot. Its run in both simulation environment and with real robot within the Cyberworld Lab — a remote robotics testing environment of Construct.

The robot is tasked with navigating through a maze under constraints. The approach combines waypoint-based path planning and control theory, using C++ and ROS2, to ensure fast and accurate movement through each waypoint toward the final goal.

This repo contains 4 packages to do:

  • Eight Trajectory: Follow waypoints in shape of figure eight
  • Distance controller: Perform simple straight motion (subtask)
  • Turn controller: Perform pivoting motion towards goals (subtask)
  • PID maze solver: Controller in full action. Follows predefined waypoints from start to end, and then in reverse

Instructions

Build the repo and source your workspace and then run:

  1. Eight Trajectory follower in simulation:

    ros2 launch rosbot_xl_gazebo empty_simulation.launch.py
    ros2 launch eight_trajectory eight_trajectory.launch.py
  2. Maze follower in Maze World sim:

    ros2 launch rosbot_xl_gazebo simulation.launch.py
    ros2 run pid_maze_solver pid_maze_solver 1
  3. Maze follower in CyberLab:

    ros2 run pid_maze_solver pid_maze_solver 2

About

PID-Based Navigation for ROSBot XL holonomic robot

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published