Learning About Robot Localization

MOV.AI’s employs SLAM robot localization features to enable precise localization of the robot at all times.

What is Localization?

Robot localization is the process of determining where a mobile robot is located with respect to its environment. Localization is one of the most fundamental competencies required by an autonomous robot because the knowledge of a robot's own location is an essential prerequisite for it to make decisions about future actions.
SLAM (Simultaneous Localization And Mapping) is a method used for autonomous vehicles that lets you build a map and localize your vehicle in that map at the same time.
SLAM algorithms allow the vehicle to map out unknown environments. This map is then used to carry out tasks such as path planning and obstacle avoidance.

Now that you’ve watched a simulation of a Husky robot and a Tugbot robot travelling around in squares, you may have noticed that the robot is not travelling around in perfect squares. It is drifting (meaning that it is accumulating a positioning error), and the more squares it completes, the more it has drifted.

So what happened?

The robot was given instructions to travel around in an exact 2 m x 2 m square. Therefore, it should be coming back to the same place after it completes each square.

But watch it! You’ll see that the robot doesn’t end up in the same place after it completes each square.

This accumulative positioning error is caused by the usage of odometry feedback, which always has a drift error in the real world. The longer the robot is in motion, the more the error accumulates.

What is Odometry?

Odometry is the use of motion sensors to determine the robot's change in position relative to some known position. For example, if a robot is travelling in a straight line and it knows the diameter of its wheels, then by counting the number of wheel revolutions it can determine how far it has travelled.

Real-world robots operating do not precisely translate a command to move 1 m in a specific direction into a real-life movement of exactly 1 m in that exact direction. They may even translate the same command a bit differently in each real-life environment. This drift error associated with robot movement differs according to the robot’s mechanics, wheels type/size, surface (tire slippage) and so on.

In summary, MOV.AI integrates state-of-the-art open-source SLAM localization into MOV.AI Flow in order to provide the functionality that compensates for this relative accumulative error and enables MOV.AI to know precisely where the robot is in a simulation or in its real environment.