일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Python
- ros2 튜토리얼 환경설정
- ros2 foxy tutorial
- error
- ROS FOXY 튜토리얼
- first-time robot setup guide
- docker foxy
- foxy nav2
- ros2 development guides
- CODEUP 6073
- nav2 getting started
- 코드업
- humble 환경설정
- Foxy tutorial
- nav2 튜토리얼
- ros2 configuring environment
- nav2 development guides
- Nav2 document
- nav2 설치
- development guides
- nav2 development guides
- ros2 튜토리얼
- ros2 remapping
- nav2 tutorial
- nav2 dev contatiner
- humble development guides
- CodeUp
- nav2 first-time robot setup guide
- ros2 foxy docker
- ros2 환경설정
- Today
- Total
BAN2ARU
[Humble/Nav2] 튜토리얼 1. Getting Started 본문
Nav2 튜토리얼은 공식 홈페이지를 참조하여 작성함
본 튜토리얼은 docker를 통해 진행하였으며, docker 관련 설정이 궁금한 경우는 이전글을 참고해주시길 바랍니다! 물론 ubuntu 22.04에서도 동작 가능합니다!
1. 설치
1. ROS2 패키지를 설치한다. (해당 부분은 이전 글 참고)
2. Nav2 패키지를 설치한다.
sudo apt install ros-humble-navigation2
sudo apt install ros-humble-nav2-bringup
3. Turtlebot 3 패키지를 설치한다.
sudo apt install ros-humble-turtlebot3-gazebo
2. 예제 실행
1. 터미널을 실행함
2. 터미널에서 다음과 같은 key environment를 설정함
source /opt/ros/humble/setup.bash
export TURTLEBOT3_MODEL=waffle
export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:/opt/ros/humble/share/turtlebot3_gazebo/models
3. 동일한 터미널에서 다음 명령어를 실행함
ros2 launch nav2_bringup tb3_simulation_launch.py headless:=False
제대로 실행하면 Rviz와 Gazebo GUI가 아래와 같이 나온다. 여기서 Gazebo GUI의 경우 로딩하는 시간이 좀 걸리니 충분히 기다려주자!
3. Navigating
로봇은 처음에 자신의 위치가 어디인지 전혀 모른다. 기본적으로 Nav2는 사용자가 대략적인 시작위치를 제공해주기를 기다림. Gazebo 환경에서 로봇이 있는 위치를 확인하고, 그 위치를 Rviz의 맵에서 찾아준다. 초기 위치를 설정하려면 Rviz에서 2D Pose Estimate 버튼을 클릭한 다음, 해당 위치를 맵에서 클릭한다. 클릭 후 드래그하여 방향을 설정한다.
만약 default 설정이라면, 로봇은 대략적으로 아래와 같은 위치에 있을 것이다.
정확한 위치를 맞추지 않더라도 Nav2는 이동하는동안 위치를 정교하게 조정할 것이다. 만약 처음 설정한 위치가 마음에 들지 않는다면, 2D Pose Estimate 버튼을 다시 클릭하여 위치를 재설정할 수 있다.
initial pose를 설정한 후, transform tree가 완료되면 Nav2는 완전히 활성화되어 준비 상태가 됨. 이 시점에서는 Rviz에서 로봇과 particle cloud를 확인할 수 있다.
다음으로 Navigation2Goal 버튼을 클릭한 후 목적지를 선택한다. 그러면 BT navigator가 action server를 통해 해당 목표로 이동한다. Nav2의 Rviz 플러그인에서 작업을 일시 정지(취소)하거나 리셋할 수 있다. 목표 위치 설정 후 아래와 같이 로봇이 이동하는 것을 볼 수 있다.
'Study > Nav2' 카테고리의 다른 글
[Humble/Nav2] 튜토리얼 2. Development Guides - 2) Dev Containers (6) | 2024.09.18 |
---|---|
[Humble/Nav2] 튜토리얼 2. Development Guides - 1) Build and Install (0) | 2024.09.18 |
[Humble/Docker] ubuntu에서 ROS2 humble docker 환경 구축 (4) | 2024.09.18 |
[Foxy/Nav2] 튜토리얼 3. Navigation Concepts - 2) Behavior Trees (0) | 2024.01.27 |
[Foxy/Nav2] 튜토리얼 3. Navigation Concepts - 1) ROS2 (0) | 2024.01.27 |