
- Nav2 is the successor of ROS Navigation Stack, aiming to enable safe and versatile mobile robot navigation for complex tasks in various environments.
- It supports tasks beyond simple point-to-point movement, such as intermediary poses and object following, and is trusted by over 50 companies as a high-quality navigation framework.
- It provides perception, planning, control, localization, visualization, and much more to build highly reliable autonomous systems.
- Nav2 uses behavior trees to create customized and intelligent navigation behavior via orchestrating many independent modular servers.
- The diagram below will give you a good first-look at the structure of Nav2.
- Map Management: It allows for the loading, serving, recording and storing of maps using the Map Server with
slam-toolbox
.
- Localization: The AMCL (Adaptive Monte Carlo Localization) module helps the robot accurately determine its position on the map with EKF (Extended Kalman Filter).
- Costmap Generation: The Nav2 Costmap 2D converts sensor data into costmap representations of the environment.
- Path Planning: Nav2 Planner assists in planning collision-free paths from one point to another while avoiding obstacles.
- Robot Control: The Nav2 Controller guides the robot along the planned path, ensuring it follows the desired trajectory.
- Python3 API: Nav2 offers a Python3 API for interacting with the framework in a pythonic manner, called
Simple Commander
.
[Installations](https://abstracted-cathedral-04e.notion.site/Installations-122a953eacc3809dbe1adebcaaa8a2f3)