5.4 Robot Position Control
The robots mobile base is equipped with wheel encoders that keep track of the revolutions of the wheels as the robot travels about its environment. The robots motion controller board integrates these measurements to attempt to estimate the robots current position at any time with respect to its original position, that is, where it was when it started rolling.
While this measurement is highly accurate for short distances, error can and does accumulate as the robot travels further afield. By itself, the motion controller hardware has no way to detect wheel skid or errors in wheel tracking, routine hazards in real-world research and operational environments plagued with slippery floors, carpeting, doorjambs, and the like. This deficiency is mitigated somewhat by the redundancy and crosschecking supplied by the robots other sensory systems. The robot continually uses information from its other sensory systems to update its model of its environment. The odometry data, highly accurate in the short term, is fed into the robots "world model" its map or model of its surrounding environment which then can help smooth out accumulative errors in the odometry.
In This Chapter Youve Learned...
...about many of the capabilities -- as well as the limitations -- of your robots sensors: its sonars, infrareds and tactile sensors (or "bump switches"). Youve also learned how to communicate with these sensors from your own application programs.
Youve also learned about robot position control, that is, how the robot determines where it is at any given time relative to where it was when it started moving -- all by counting the rotations its wheels and integrating the results into a positional estimate.