The mobile robot must satisfy a few requirements before it can be used with the navigation stack:
- The navigation stack can only support a differential drive and holonomic-wheeled robot.
- The shape of the robot must either be a square or a rectangle.
- The robot must provide information about positions of all the joints and sensors and the relationship between their coordinates frames.
- The robot must, at the very least, have a range sensor or similar such as a planar laser or a sonar. However, depth sensors can also be projected as ranger sensors before using them with the stack.
The following diagram shows the architecture of navigation stacks, which have three groups of boxes: gray, white, and dotted lines. The plain white boxes indicate the components of the stack provided by ROS, which has all nodes responsible for autonomous navigation:
ROS navigation stack
In the following section, we will discuss the development of platform-dependent components of the navigation stack, which are shown in gray boxes.