Mobile Robotics 2024
This project is part of the ROBOTIQUE MOBILE course, taught at Polytech Sorbonne in the Robotics specialization.
code : GitHub
Mobile Robotics 2024
This project is part of the ROBOTIQUE MOBILE course, taught at Polytech Sorbonne in the Robotics specialization.
code : GitHub
Aim of the project :
Map exploration using the Pionneer robot with a joystick.
Implement an autonomous return to the loading base using trajectory planning.
The implementation is done under ROS NOETIC with a unicyle robot equipped with LIDAR and encoders.
Pionneer
I- Path Planning algorithm : Dijsktra and A*
a) Discretization of the occupancy grid
We need to discretize our environment. As input, we have an occupancy grid from ROS.
Here you can see the UML diagram of our object-oriented construction in C++ . It contains 3 classes for efficient planning (about 1 sec for planning)
For discretization, we divide the occupancy grid into grids of size PAS pixels. If a pixel is black (=obstacle), then the entire cell is considered an obstacle.
Results :
UML Diagram
b) Dijsktra implementation : results
The implementation of Dijstrka's algorithm is described in the pseudo code below. The result and the influence of the margin are also shown.
c) Convert from pixel coordinate (image) to world frame coordinate
The goal is now to convert our trajectory coordinate : from pixel coordinate to world frame
d) Follow path
The goal is now to control the robot (unicycle) to follow the path
II- Simulation : ROS Noetic Gazebo and Rviz