Understanding the ROS Navigation stack
The main aim of the ROS Navigation package is to move a robot from the start position to the goal position, without making any collision with the environment. The ROS Navigation package comes with an implementation of several navigation-related algorithms that can easily help implement autonomous navigation in mobile robots.
The user only needs to feed the goal position of the robot and the robot odometry data from sensors such as wheel encoders, Inertial Measurement Unit (IMU), and Global Positioning System (GPS), along with other sensor data streams, such as laser scanner data or 3D point cloud from sensors such as a Red-Green-Blue Depth (RGB-D) sensor. The output of the Navigation package will be the velocity commands that will drive the robot to the given goal position.
The Navigation stack contains the implementation of the standard algorithms, such as SLAM
, A *(star)
, Dijkstra
, amcl
, and so on, that can directly be used in our...