Active SLAM was a individual project I have done in 2016 for UTS course Advanced Robotics. It challenges my knowledge to solve modern autonomous robotic problems in localization and mapping (where the robot are and what the environment looks like).
The primary difference of active SLAM or SPLAM (simultaneously planning, localization and mapping) and normal SLAM is to gain information of unknown surrounding environment autonomously. This involves additional path planning (how the robot goes to there) and control (where it should go to collect more information) mechanism.
In this project, its primary goal is to control the Fetch robot moving from one side to another in dynamic environment such as a corridor with collision avoidance in mind (for example, an emergency stop action).
The final implementation of this project was developed in C++ and Python 2.7 under ROS (Robot Operating System, a Ubuntu Linux based environment). It was later tested on Fetch Robot provided by UTS. In conclusion, using state-of-art SLAM and navigation package with homemade exploration planner in this project has achieved its specified goals in real environment tests. Although the solution has its flaws, overall it was well performed in both simulation and real world test run.
Click here to download the full report.
Test Run #1
Test Run #2
Test Run #3
Test Run #4