SLAM

이어서 다시 gazebo에 turtlebot burger 모델을 구동하고 시작한다. 환경은 world로 한다.

export TURTLEBOT3_MODEL=burger
roslaunch turtlebot3_gazebo turtlebot3_world.launch

조금 전과 같은 육각형의 맵이 나올 것이다. 여기서 다른 터미널에서 SLAM 노드를 킨다.

export TURTLEBOT3_MODEL=burger
roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping

이러면 오른쪽과 같은 mapping 이 rviz를 통해 나타난다.

Screenshot from 2022-08-22 16-56-23.png

현재 12시 근방에 위치한 터틀봇이 당장 라이다로 읽을 수 있는 map을 나타낸 것이며 여기서 다른 터미널을 켜서 teleop으로 버거를 움직이며 전체를 mapping할 수 있다.

roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

Screenshot from 2022-08-22 16-58-46.png

이 map은 다음 ros node로 저장한다.

rosrun map_server map_saver -f ~/map

튜토리얼은 여기까지지만 심심하므로 house map도 mapping 해보기로 한다. 복잡한 그래픽으로 인해 gazebo가 켜지는데 오래 걸린다.

gazebo와 rviz가 켜지면 위와 같은 step으로 mapping 해본다.

Screenshot from 2022-08-22 17-11-26.png

맵이 상당히 크다. 열심히 돌아다니면서 지도를 만든다.

Screenshot from 2022-08-22 17-21-24.png

꽤나 정확한 mapping 형상을 볼 수 있다. 우리 turtlebot은 상당히 귀엽다.

Screenshot from 2022-08-22 17-21-04.png