Skip to content

Mostafa-Tarek/Map-My-World-Robot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Map My World

The goal of this project is that robot moving indoors, mapping the surroundings and localizing itself using ROS pkg rtabmap_ros pkg which is a ROS wrapper (API) for interacting with rtabmap to generate a 2D occupancy grid and 3D octomap from a provided simulated environment with best solution for (SLAM) to develop mobile robots. RTAB-Map lead to a solid foundation for mapping and localization well.

2D Map and 3D Map

2d map and 3d map

Occupancy_Grid_Mapping

Occupancy_Grid_3d

This project is intended to be completed in the Udacity Workspace or on Jetson TX2 and might encounter performance issue on personal laptop or the VM.

Because RTAB-Map 's speed and memory management for information analysis and the quality of the documentation.

Project Setup

To begin, several ROS packages need to be installed as dependencies:

$ sudo apt-get update && sudo apt-get upgrade -y
$ sudo apt-get install ros-kinetic-rtabmap-ros
$ sudo apt-get install ros-kinetic-teleop-twist-keyboard

With the dependencies installed, download/clone the repository, navigate up to the root level directory, and execute:

$ catkin_make
$ source devel/setup.bash
$ roslaunch my_robot world.launch

To operate the robot via the keyboard, open a second terminal, navigate to the root level directory, and execute:

$ source devel/setup.bash
$ roslaunch my_robot teleop_twist.launch

You can then command the robot to move using the keys indicated by the teleop node.

Finally, to run SLAM, open a third terminal, navigate to the root level directory, and execute:

$ source devel/setup.bash
$ roslaunch my_robot Mapping.launch

As you move the robot around, RTAB-Map will build a map of the room. When you terminate the mapping window, the map will be saved as a database file in the launch folder. To view the map, execute: $ rtabmap-databaseViewer rtabmap_gloable.db

  • Choose View -> Constraints View and Graph View
  • To see 3D Map, Choose Edit -> View 3D Map.

You could also open the database I already generated in this project. The number of loop closures can be found in overview.png.

In order to get a loop closure in this project
  • you have to drive your robot with low velocity while moving in a straight line and a little bit when you spinnig (rotating).

  • increasing the number of your features in your Env.

  • beside tuning the rtabmap-pkg

About

Used RTABMAP package to make a differential wheeled robot simultaneous localization and mapping and generated a 2D Occupancy grid and 3D Octomap.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors