Okay, now we are going to start configuring the navigation stack and all the necessary files to start it. To start with the configuration, first we will learn what costmaps are and what they are used for. Our robot will move through the map using two types of navigation: global and local:
- The global navigation is used to create paths for a goal in the map or at a far-off distance
- The local navigation is used to create paths in the nearby distances and avoid obstacles, for example, a square window of 4 x 4 meters around the robot
These modules use costmaps to keep all the information of our map. The global costmap is used for global navigation and the local costmap for local navigation.
The costmaps have parameters to configure the behaviors, and they have common parameters as well, which are configured in a shared file.
The configuration basically consists of three files where we can set up different parameters. The files are as follows:
- costmap_common_params.yaml
- global_costmap_params.yaml
- local_costmap_params.yaml
Just by reading the names of these configuration files, you can instantly guess what they are used for. Now that you have a basic idea about the usage of costmaps, we are going to create the configuration files and explain the parameters that are configured in them.