-
터틀봇3 NavigationROS 2020. 12. 30. 22:20반응형
로보티즈에서 제공하는 e-매뉴얼을 따라 진행했다.
emanual.robotis.com/docs/en/platform/turtlebot3/slam/#run-slam-node
Navigation 역시 SLAM과 마찬가지로 bring up 과정이 필요하다.
아래 글에서 Bring up부터 TURTLEBOT3_MODEL 파라미터 사전 정의하는 부분까지 진행한다.
PC에서 새 터미널을 열고 아래 명령어를 입력해 Navigation 노드를 시작한다. (RViz가 실행된다.)
map_file 뒤에 사용하고자 하는 map 파일의 경로를 입력하면 된다.
roslaunch turtlebot3_navigation turtlebot3_navigation.launch map_file:=$HOME/map.yaml
위 명령어는 HOME 위치에 있는 map.yaml 파일을 불러와서 실행한다. (SLAM 과정에서 저장했던 지도 파일)
현재(초기) 위치 추정하기
먼저 RViz 상단 메뉴에서 '2D Pose Estimate'을 클릭한다.
지도 내 실제 터틀봇이 있는 위치에서 한 번 클릭하고, 초록색 화살표가 실제 터틀봇이 가리키는 방향과 일치하도록 드래그한다. 센서 데이터가 지도에 오버레이 될 때까지 이 과정을 반복한다.
로봇의 위치를 보다 정확하게 조정하기 위해 새 터미널을 열고 Teleoperation (원격 조작) 노드를 시작한다.
roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
로봇을 앞 뒤로 조금씩 움직여서 주변 환경 정보를 수집하고 초록색 작은 화살표로 표시된 터틀봇의 예상 위치를 점점 좁혀나간다.
위치 조정이 끝났다면 ctrl+c 키를 눌러서 Teleoperation 노드를 종료한다.
(Navigation 실행 중 여러 노드로부터 cmd_vel(속도)값이 퍼블리시 되는 걸 막기 위해)
목적지 설정하기
RViz 상단 메뉴에서 '2D Nav Goal'을 클릭한다.
앞 단계에서 했던 것처럼 지도에서 원하는 목적지 위치에서 한 번 클릭하고, 화살표가 실제 터틀봇이 가리킬 방향과 일치하도록 드래그한다.
목적지 설정이 완료되면 목적지를 향해서 터틀봇이 실제로 움직이기 시작한다.
반응형'ROS' 카테고리의 다른 글
ROS gdb, valgrind 디버깅 (0) 2023.03.01 osm_cartography - RViz에 오픈스트리트맵(OSM) 데이터 시각화하기 (0) 2022.12.25 터틀봇3 SLAM (0) 2020.12.27 터틀봇3 연결하기 (Ubuntu 18.04, ROS Melodic) (3) 2020.12.18 ROS Melodic 설치 (Ubuntu 18.04) (0) 2020.12.18