SLAM (Simultaneous Localization and Mapping) 은 임의의 공간에서 현재 위치를 추정하여 지도를 작성하는 기술이다. 해당 섹션에서는 Gazebo 가상 환경에 대해 SLAM 기법을 이용하여 지도를 작성할 것이다.

2.1 Launch Simulation World

Gazebo를 실행시켜 가상 환경을 불러와 주세요

$ roslaunch turtlebot3_gazebo turtlebot3_world.launch

Untitled

2.2 Run SLAM Node

Gmapping SLAM 방식을 사용하는 SLAM Node를 실행시켜 주세요

$ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping

Untitled

2.3 Run Teleoperation Node

로봇을 움직여 가상 환경 전체 지역을 탐험하여 전체 지도를 작성할 수 있도록 teleoperation node 를 켜줍니다.

$ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

Untitled

2.4 Save Map

로봇을 움직이다 보면 오른쪽 그림처럼 가상 환경을 표현해 주는 2D grid map이 완성될 것입니다. 완성이 되면 아래 명령어를 통해 작성된 지도를 저장해 주세요

Untitled

$ rosrun map_server map_saver -f ~/map