One question many people ask us is: “Can you navigate with X mm accuracy?” And of course, the question is understandable, the newer generations of robots are detached from infrastructure such as rails or induction guidance and they navigate increasingly complex environments. Generally they need to interact with other devices in the environment. Even a robotic vacuum cleaner needs to accurately position itself on its dock to charge its battery. However, this does not automatically mean the robot needs to localize itself accurately all the time. But how do we get a robot to do its work reliably, without accurate global positioning?
Why do you need it?
Autonomous mobile robots (AMRs) move items from one place to another, or perform other actions at multiple locations. Mobility provides them the flexibilty to do their work not in just one place, but anywhere the robot is allowed to go. Getting from one place to another is a matter of safety, reliability, and efficiency. So when moving from one point of interest to the next, accuracy is typically not so much a requirement.
What is the requirement?
So where does the question come from? Of course, you want your mobile robot to position itself accurately with respect to another component in the system. This way, actions that are performed at these points of interest are also reliable and repeatable. Accurate docking at a charging station or transferring a load at a workstation, for example. So somewhere between nominal driving and positioning at a POI, there is a transition in the required accuracy, although the requirement is a matter of repeatability and reliability now. The global accuracy is not important, as long as the robot is capable of docking accurately at the right docking station.
How does that work without global accuracy?
Let’s say you’re visiting a town you don’t know. You’ve asked for directions to a supermarket. The instructions: “Take the second left, continue straight and you’ll find the supermarket on your right.” Now, you may find yourself, consciously or unconsciously, making a mental model of the situation like this:
Even though you have no idea what the coordinates of the supermarket are, neither globally, nor with respect to your current position, you can find the supermarket. This very rudimentary map is already enough to provide you with the necessary information.
Our localization map is similar to this mental map. Although it does contain more accurate information about distances and angles, it is only a means for the robot to get an idea of where it is. These maps are typically not perfect, so localization based on the landmarks you see around you will not result in millimeter-accurate global coordinates. — You’ve found the second left, but have no idea what your coordinates with respect to your starting position are now. — However, you do have an accurate measurement of your position with respect to these local landmarks. — You know where to turn left now.
Clever use of data
As the requirement is safe, reliable, and efficient navigation, the accuracy is sufficient if this requirement can be satisfied. If a distorted map of the environment is enough for the robot to find its way from one place to another, and POIs are given in this map, our robot is capable of finding and identifying these POIs. Once it gets to the POI, the focus is shifted towards features around (or on) the POI, eliminating the global navigation accuracy from the equation.
This can be done explicitly by switching to a detection and tracking system for a docking station (visual servoing), but it can also occur implicitly. Using a lidar system, as the robot gets closer, the docking station makes up more and more of our sensor data. This results in a bias toward accuracy with respect to the dock. This clever use of sensor data makes it possible to dock with sub-millimeter accuracy where the map accuracy is in the order of multiple centimeters.
Why global coordinates are convenient
So global localization accuracy is irrelevant? Well, not completely. Global coordinates link the physical world to the robot’s representation of the environment. We want to understand what the robot is doing — during the integration process, but also when passing commands to the robots — so it is useful to have a recognizable match between the physical world we know and the robot’s idea of it. But unless the robot is blind for its POIs and everything around it, precision in the order of centimeters offers sufficient precision.
For a robot to always know exactly where it is with respect to the physical world is challenging if not impossible. Luckily, in most applications, this is not necessary. By “roughly” navigating towards a goal and cleverly positioning itself accurately with respect to the surroundings, a mobile robot can still interact with the environment highly precisely.
By looking at your specific positioning challenge, RUVU Robotics helps you to select the right sensors and provides the necessary software to achieve your accuracy requirements.