ROS 2 Navigation Stack: Nav2
This chapter will discuss one of the popular robotics capabilities in ROS 2: autonomous navigation and mapping. This capability is one of the main reasons ROS has become popular. Many robots use this capability to navigate in different environments. Autonomous/self-driving robots can map the environment and navigate autonomously from point A to point B. The Nav2 project is a popular ROS 2-based project that provides ready-made packages and nodes for any mobile robot to implement autonomous navigation quickly without re-implementing the wheel.
We will start the chapter with an introduction to Nav2, a brief overview of its architecture, and the installation of Nav2 in ROS 2 Jazzy. After that, we will see how to set up and configure mapping and navigation using SLAM Toolbox and Nav2 for our robot. After configuring the robot, we will see how to create a behavior-tree-based application in Nav2. Finally, we will look at a case study using Nav2 to deploy...