Sarah Turbot
From BEAM Robotics Wiki
Nv(11,9) and Nv(8,12) form a Bicore, and hold the up/down state. If the robot is up, the tilt sensor signals Nv(8,12). The Nv becomes active. If the robot tips back over within the time-out, then the tilt sensor signals Nv(11,9). If more than three and a half seconds elapses, the Turbot automatically switches. Nv(11,9) sends either a high or low signal to a light-sensitive Bicore.
The light-sensitive Bicore is on Nv(2,18) and Nv(17,3). The resistors are CdS cells. The neurons switch from Nv- (negative phototaxis) to Nv+ (positive phototaxis).
Nv(2,18) and Nv(17,3) signal (e.g. charge to Vcc) two Nu- neurons, Nu(4,16) and Nu(15,5). These neurons have pull-down resistors on the inputs, and discharge in about 70 milliseconds (100K resistor with 1uF capacitor). That is to say, the Nu- will be active providing that no more than 70 ms elapses between signals from the light Bicore.
If the light is balanced and bright enough (about room level), the light-sensitive Bicore duty-cycle is about equal. The Bicore is pumping up the Nus faster than they are discharging, both Nus are active. The motors spin forward.
If one side is brighter, the duty-cycle changes. If the change is enough, one Nu will not be recharged fast enough. The corresponding motor will spin in reverse. The Turbot will turn.
This works the same whether the robot is right-side up or up-side down. This is because the main variable is the duty-cycle, which is effectively inverted when upside-down. Even if it is inverted, however, if it is still roughly 50-50, then the robot will still move forward.



