|
SuperLocaliser
Maintained by: David Austin
|
The SuperLocaliser is the source (for high-level users) of all
localisation information in the DROS system. The idea is that the
SuperLocaliser takes care of queries for the robot's position, both in
robot (odometric) and world coordinates. In addition, the
SuperLocaliser maintains an archive of the robot's odometric and world
coordinates for times in the past. The primary purpose of the archive
is to find out where the robot was when measurements were taken.
The SuperLocaliser is also responsible for fusing the various
estimates of the robot's world position. For example, there may be
several localisation methods running, all supplying estimates of the
world position of the robot. The SuperLocaliser fuses the supplied
estimates.
This section documents some of the semantics of the operation of the
SuperLocaliser and the overall design ideas.
Basic design philosophy:
- The SuperLocaliser is responsible for fusing the world position
estimates from the localisers. Each localiser should report it's
estimate to the SuperLocaliser whenever updated. In general, the
fusion of the estimates will be non-trivial. However, if the
estimates are reduced to some simple form (e.g. single Gaussian
estimate) then fusion is relatively straightforward.
- The SuperLocaliser should have a long-term archive of where the
robot has been (world and robot coord). Obviously, this should go in
the database (though we need to think about caching for efficiency).
Clearly recent entries are going to be used much more frequently than
historical data.
- The SuperLocaliser proxy should be capable of interpolation and
extrapolation for short time periods. This way we improve the time
resolution of the data provided to clients without increasing the
amount of data transmitted. For time intervals of less than 0.1s (for
mobile robots) this is probably going to be fine.
- The SuperLocaliser should be able to operate without a robot (for
access to historical data). Also, it should be possible to change the
robot that the SuperLocaliser is connected to and to disconnect the
SuperLocaliser from it's robot for a while (for re-starting the
low-level robot controller).
|
Copyright 2001 David Austin
|