LATEST POSTS

Coverage Problem in Mobile Robotics

Visual SLAM - An Introduction

Simulataneous Localization and Mapping - An Introduction

Motion Planning in Robotics

Sampling-based Motion Planning



ROS Navigation Stack


Robot Operating System has umpteen number of ready to use packages but the ROS navigation stack is one of the most powerful ones. The ROS navigation stack is the go-to package for autonomous navigation for mobile robots with different drives mechanisms and onboard sensing technologies using multiple high-level control and motion algorithms as well as low-level actuator control strategies.

This article explains all the components of the ROS navigation stack and how to configure and use its tools for autonomous robot navigation.

Salient Features about the ROS Navigation Stack: .

Overview of the ROS Navigation Stack

All the nodes within the white box in the image above are already provided by ROS and the ones outside it are either to be provided or configured by the user for implementation on the specific robot. The robot specific components include sensor positioning, odometry information, wheel encoder styles and more.

RIGID BODY TRANSFORMATIONS

The tf transforms tree that has all relative transformations between the robot base, the sensors and the actuators, forms the spine of all navigation tasks.

The standard terminology used in rigid body transformations and the coordinate frames are:

CREATING TRANSFORMS

While storing the individual transforms and deriving transformations across multiple frames using hand-crafted mathematical operations is possible; the tf transform package is helpful to avoid the cumbersome steps.

The tf library can handle all types and quantities of sensors and robot transforms. If the LiDAR is placed at the tip of the robot frame 10 cm and 5 cm ahead and above the body frame center with the same axes' orientations, the tf tree stores this as a linear transformation and can thus convert every depth reading from the sensor frame to the body frame and use it to create a map.

IF YOU LIKED THE ARTICLE, DON'T FORGET TO LEAVE A REACTION OR A COMMENT!


Copyright @Akshay Kumar | Last Updated on 05/25/2019

counter