SLAM 해보기

해당 페이지는 일부 수정될 수 있습니다.

GMAPPING

로봇을 적당한 곳에 두고 ssh로 접속합니다.

[내 PC] roscore를 실행하고,

[로봇] roslaunch omo_r1mini_bringup omo_r1mini_robot.launch 도 실행하고

ssh로 로봇에 한 번 더 들어가서

[로봇] roslaunch omo_r1mini_slam omo_r1mini_slam.launch 을 실행하고,

[내 PC] roslaunch omo_r1mini_slam omo_r1mini_slam_rviz.launch 를 실행해줍니다.

그러면 rviz(알비즈)가 뜹니다.

[내 PC] roslaunch omo_r1mini_teleop omo_r1mini_teleop_key.launch 를 실행하고

[내 PC] 키보드로 로봇을 움직여보면 RVIZ에서 map이 완성되는 것이 보입니다.

다 완성했다~ 싶으면~

적당한 시점에 teleop.launch 를 중지해 맵 만들기를 멈추고,

[내 PC] rosrun map_server map_saver -f map 으로 맵을 저장합니다.

이제 터미널에서 실행 중인 모든 노드를 중단한 후에,

  • 내 PC와 로봇의 모든 터미널, 즉 roscore까지 전부 중단해주세요.

[내 PC] map.pgm 파일과 map.yaml 파일을 omo_r1mini/ omo_r1mini_navigation/maps 에 복사해줍니다.

sudo cp map.pgm map.yaml catkin_ws/src/omo_r1mini/omo_r1mini_navigation/maps
  • 잘 따라하셨다면 내 PC의 홈(cd ~)에 파일이 있습니다.

다시 내 PC에 roscore를 실행하고 로봇에서 roslaunch omo_r1mini_bringup omo_r1mini_robot.launch을 실행하고 난 후~ 내 PC에서 roslaunch omo_r1mini_navigation omo_r1mini_navigation.launch를 실행해주세요.

[내 PC] roslaunch omo_r1mini_navigation omo_r1mini_navigation_rviz.launch도 실행해줍니다.

그러면 rviz에서 이런 화면이 뜨는 걸 확인할 수 있습니다.

RVIZ의 상단 메뉴에서 2D pose estimation버튼을 클릭하여 초기 위치를 잡아주세요.

이렇게~

그리고 2d new goal을 이용해서 목표 지점을 알려줍니다.

그러면 로봇이 스스로 목표 지점까지 가는 것을 확인할 수 있습니다.

이렇게요^^ 짠~~~

Last updated