Bacterio-Bot uses a light sensor and implements the "tumble and run" biased random walk algorithm that is used by organisms such as E. coli. Although those types of organisms are most often following chemical gradients, Bacterio-Bot follows a light gradient instead. The robot samples the current light level; if the situation is improving -- if the light is stronger -- the robot will continue moving in the same direction; otherwise, the robot will turn to a new, random orientation and move in that direction. Only very modest "memory" is needed for the algorithm, since only one prior sensory reading needs to be stored for comparison with the current one.
Special thanks to Wesley R. Elsberry for help, especially with hardware and photography.
Step 1: Hardware
4th wheel for the back of the Create robot
Materials for light sensor:
(1) DB-9 subminiature male solder-cup connector (~$2.00 per unit in single quantity)
(1) Cadmium sulfide (CdS) photo-cell (~ $2.50 / pack of 5 sensors at Radio Shack)
(1) 5K ohm potentiometer (~$2.00 for assorted potentiometers at Radio Shack)
(1) small piece of perfboard sufficient to hold photo-cell and potentiometer (~$5.00 for larger piece)
(3) 12" pieces of hook-up wire (~$6.00 for 60' of 22 gauge hook-up wire at Radio Shack)
(1) soldering iron