This is a project where a robot maps its environment using rtabmap
This project uses the robot and environment models found here. It uses ros rtabmap_ros.
- Tested on ROS at Ubuntu 20.04 and 16.04.
- Required ROS packages:
$ sudo apt-get install ros-noetic-rtabmap-ros
$ sudo apt-get install ros-noetic-teleop_twist_keyboard
- Clone this package to your
<ROS_workspace/src>
- Compile:
$ catkin_make
- Launch world:
$ roslaunch my_robot world.launch
- Launch localization:
$ roslaunch my_robot mapping.launch
- Start rviz and add a
RobotModel
andmap
subscribed to topic/map
.
$ rviz
The robot should start creating a map of the environment:
- Control the robot with your keyboard
$ rosrun rosrun teleop_twist_keyboard teleop_twist_keyboard.py
Traverse de environment with a low speed. Try to stick to the same path and do 3 loops.
- Close everyhting and visualize the created map. (map is saved at ``/home/.ros/rtabmap.db)
$ rtabmap-databaseViewer ~/.ros/rtabmap.db
Click Ok if prompted to use database parameters.
Add the follwing visualizations:
- view -> Graph View (At the bottom you can see the global links. If you map has 5 or more, its a good map)
- To view the 3D point cloud:
- Luis M. - GitHub
Distributed under the MIT License. See LICENSE
for more information.
This project was developed for the Robotics Software Engineer nanodegree at Udacity.