BEAMAnt
The BEAMAnt is a phototactic bot which has potentially complex behavior depending on the light level. It has two photodiodes for light sensing, and two antennae which switch the motors into reverse when they touch something.
The core of the BEAMAnt is a 74AC240 chip wired as two coupled bicores. The first “photo” bicore oscillates at a frequency and symmetry determined by the light falling on the photodiodes—slow in low light, and faster in bright light. The second “motor” bicore generates a basic left/right oscillation that is used to alternate the motors. The two bicores are coupled by resistors, which can lead to complex interactions between them. The circuit has two tactile sensors, which temporarily reverse the polarity of the motor on the other side. This allows the bot to turn away from obstacles.
This BEAMAnt is based on two small gear motors (Solarbotics GM15) on a bent paperclip frame. I solarized the circuit with a Miller solar engine, which you can see hanging off the back in the “under the hood” shot below. Most of the circuit is free-formed around the ‘240 IC; the two photodiodes sit underneath the front corners of the solar cell, and the 0.047F capacitor acts as a nose.
Initially, the bot just scooted forward on a skid made from the bent paperclip. However, on anything other than a very smooth surface, the bot wasn’t able to turn around. I solved this by hot-glueing a small bearing from a floppy drive stepper motor over the skid.
This bot has impressive phototactic abilities. If the light source is off to the side, it will turn on its axis until it’s facing the light, and then head straight towards it. Obstacle avoidance could use a bit of tuning; the sensor timers capacitors don’t work very well in a solar-driven bot, because the power keeps dropping away.