Newsgroups: comp.robotics
Path: brunix!news.Brown.EDU!qt.cs.utexas.edu!cs.utexas.edu!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!eff!world!sja
From: sja@world.std.com (Stuart J Adams)
Subject: How to keep track of robot's position ???
Message-ID: <C2IBB5.HFJ@world.std.com>
Organization: The World Public Access UNIX, Brookline, MA
Date: Mon, 15 Feb 1993 20:23:29 GMT
Lines: 55

I have been looking at methods to allow a robot to keep
track of its position with reference to a known
starting point.  Let me know if you have any ideas/experience
with the following:
 
1. Use dual drag wheels (one on each side of the vehicle)
 
I was going to hack up a Microsoft compatible mouse slaving the
encoder wheels to drag wheels on opposite (left-right) sides of
the robot. The mouse connects to a serial port on the robot controller
at 1200 baud and sends a continuous stream of 3 bytes packets indicating
delta-x delta-y (in our case delta-left delta-right) from the last
packet. Using the delta information one could determine the course of
the robot and hence position.  (The mouse has an accuracy of
1/300 of an inch (or so the box claims).)
What kind of accuracy problems will I have with this approach - (say the
right half of the robot goes over a bump - this might look like a turn
according to the delta info)
 
2. Use a drag wheel and an electronic compass
 
Same approach as above for the single drag wheel. However, the
electronic compass should provide more accurate heading information
and is also an absolute reference (with respect to magnetic north).
Anyone know where can I get a cheap electronic compass ???
 
3. Use visual and/or range data
 
This approach would use video or range (ultrasonic or laser range finder)
data to build a 2-D/3-D local map from which features would be extracted.
Position would be computed by watching movement of the features as the
robot moves.
Are there any available algorithms for doing this ???
 
4. Use an Inertial Navigation Unit
 
This would use some combination of accelerometers and gyros and
would probably the most accurate but is also probably too expensive.
 
5. Radio/RF navigation (via triangulation)
 
With this scheme several base stations would either send/receive
a signal to/from the robot and use time-of-flight or phase differences
between the signals to allow the use of triangulation to pin-point the
robot's position (ala GPS, and other radio navigation methods)
Again, this sounds expensive/complicated and potentially inaccurate.
 
I realize most of these schemes will build up error over time and will
have will have to periodically be calibrated to a known reference
point.
 
Thanks,
Stuart Adams
sja@world.std.com

