Autonomous Mobile Robot (AMR) ROS Gazebo simulator
This repo contains two types of AMR:
- Differential drive type
- Omni-directional drive type
- Clone the repository and catkin_make:
cd ~/catkin_ws/src
git clone https://github.com/kimtj5521/AMR_simulator
cd ../
catkin_make
source ~/catkin_ws/devel/setup.bash
roslaunch amr_simulation dd_amr_simulation.launch
- Occupancy grid base SLAM
roslaunch amr_simulation amr_slam_occ.launch
- TSDF base SLAM
roslaunch amr_simulation amr_slam_tsdf.launch
rosservice call /finish_trajectory 0
rosservice call /write_state "map_name.pbsteam" true
# example rosservie call /write_state ${HOME}/catkin_ws/src/amr_simulation/pbstream/map.pbstream true
# occupancy grid map case
rosrun map_server map_saver -f your_map.pbstream --occ 65 --free 20
# TSDF grid map case
rosrun map_server map_saver -f your_map.pbstream --occ 35 --free 15
If you want to get more information of usage about cartographer, please refer to Cartographer_ROS
You can convert the pbstream file to pgm+yaml files through using the ros map_server.
Occupied space and free space threshold values can be changed to your own threshold.
Change map path in launch file.
- Occupancy grid map
roslaunch amr_simulation amr_occ_localization.launch
- TSDF map
roslaunch amr_simulation amr_tsdf_localization.launch