Obstacle avoiding methods are used from least to the ultimate models. It is used to avoid the collision on obstacles. But before in old methods, there is no autonomous option to choose the alternative path when the obstacle is present in the way. But this can be possible now by using LIDAR with ROS, by using LIDAR scans mapping is done. So that the Bot knows the complete map of the environment and by using PRM for Path planning algorithm in Matlab alternative path can be chosen.
About Matlab ROS
In the Latest version of Matlab, it has ROS (Robotic Operating System) software supporting package. By using that its system can able to communicate with the ROS robot using ROS Network configurations.
In the existing obstacle avoidance robot, simply the sensors like IR and Ultrasonic sensors are used to sense the obstacle. It doesn’t have a feature to choose the alternative path and to follow it.
In this proposed system, by using 360-degree lidar is used to map the environment with an obstacle. And by using path planning algorithm robot chooses its own path to reach some destination point by avoiding the obstacle.
- Raspberry Pi is used with ROS software libraries
- RPLidar A1 360 degree lidar interfaced with the Raspberry Pi publishes the Laser scan data, which is received by subscribing the same ROS Topic in Matlab ROS Package.
- Initially, mapping is done throughout the environment using Laser scan from Lidar.
- If there is obstacle it gets also differentiated in the Laser scan map since before and after the scan is plotted of obstacle presence.
- Binary occupancy grid can be generated and prompts to choose the destination in the Map
- By using PRM (Probabilibitic Road Map) algorithm, with the number of nodes and length of connecting node distance path can be generated from the starting point to the destination point with the avoidance of colliding walls.
- Now the path following is performed to reach the destination.
- Raspberry Pi 3
- SD Card 16 GB class 10
- RPLidar A1
- Robot Setup
- Power Bank (10000 mAh, 2 A minimum)
- Arduino UNO
- HC-05 Bluetooth Module
- L293D Driver module
- ROS kinetic OS image for Raspberry Pi
- Matlab, which has a Robotic Operating System Software Package
- Arduino IDE
- SD Card Formatter
- Etcher/win32Disk Imager/Rufus
Mapping without obstacle
Mapping with obstacle
Destination Marking in Binary occupancy Grid
Path Planning using PRM (Probabilistic Road Map)