Projects - Fritz
Fritz was built in August 2001 by David Sharp. Currently this robot (Fritz, that is) has only one sensor, an ultrasonic rangefinder, which he sweeps back and forth to create a rudimentary map of the world in front of him. Tactile bump sensors will hopefully be added soon, making for a much more robust design. He was created simply for the fun of it, and to gain experience from using new sensor and navigational techniques. At the time of this writing, his only goal is to wander around aimlessly, without bumping into things. For the most part he does this very well.
Power consumption - He lasts roughly half an hour on 10 NiCd AA cells. This is good enough for demonstration purposes, but a "real" robot would probably need more juice. Never assume that your 1Ah battery will run your 0.5A robot for 2 hours, it'll never happen!
Ultrasonic rangefinder - Overall it worked very well indeed. However, it can require a bit of tweaking to fit the environment it will be used in. For example, when the robot is on a smooth kitchen floor, the signal will rarely bounce back off the floor, but when operating on gravel or a thick carpet, it will need to weed through more false alarms as the sound waves reflect back on the rough (but still safe) surface. Another thing to consider is that obstacles that are too smooth and faceted have a "stealth" effect: they reflect the sound waves away, often going undetected. A dog's metal water bowl consistently appeared invisible to Fritz, as did the corner of a wooden cabinet when at a certain angle. Perhaps one way to increase the reliability would be to take multiple sonar readings at the same angle and average them together. This should result in much more reliable data.
Servo-swept sensors - All in all it worked very well to scan the ultrasonic rangefinder back and forth with a servo. The only problem was that it was somewhat slow, taking a good portion of half a second to scan the full map. This made it necessary to come to a complete stop to scan when negotiating obstacles that are too close.
Sensors - It is clear that a good robot needs more sensors to fall back on. Complementing the ultrasonic rangefinder with more ways to feel the world (tactile, infrared, etc) is always a good idea. Perhaps using a stepper motor would mostly solve the speed problem (as well as making it less noisy).
Here is the Basic Stamp 2 code.