The snake consists of 9 segments, each with two r/c servos. The servos are mounted at right angles so that one moves horizontally, the other vertically.
There are 3 Scott Edwards Engineering SSC II (http://www.seetron.com/) RS232 serial to servo controllers used to control the 18 servos. For simplicity, the snake is divided into 3 sections, each with three segments. The SSC II is mounted in the middle segment of the three. All three SSCs are hooked in parallel for the processor power ( 7-12 VDC(nominally 9V) @ 10 mA each) and for the RS232 signal. It turns out that the 9V processor power and the RS232 share a common ground, so only 3 wires are used. The SSCs are set up for 9600 bps, and the necessary jumpers are installed to address them all differently.
The servos on segments 1,2,3 (the front of the snake) are addressed at 0-5, the next set are addressed at 8-13 (installing the jumper), and the last set are at 16-21 (using a SSC II ordered to start at 16). Two servo outputs on each SSC are unused.
Servo power was originally tested using a 4 cell NiCd pack and two servos connected to the SSC. This appeared to have torque problems, so the power was changed to a 6V Carbon Zinc lantern battery, which worked much better. The first set of 3 segments was wired up and tested successfully with the 6V battery. A test program sent successive commands to the horizontal servos to move in a sinuous fashion, which worked quite nicely.
For test purposes, the servo power to each SSC was connected to a common twisted pair bus, not attached to the snake. In the eventual configuration, each SSC will get servo power from NiMH batteries in the segments adjacent to the one with the SSC.
After wiring the remaining SSCs and servos up, the test was repeated to a resounding failure. The SSCs all came up (indicated by the green LED) and decoded the serial streams (indicated by flashing of appropriate lights, but the servos didn't move (just sort of buzzed, laying there on the ground). A quick check of the voltage on the battery showed that the load was pulling it down to around 3.5V. The current was some 2.5 Amps in this configuration (without any motion being commanded, although no doubt, the actual position didn't match the commanded one on some of the servos).
A somewhat regulated 5V linear supply was connected which at least allowed one servo at a time to move without pulling down the voltage too much, but sinuous motion overloaded it.
When the servo batteries are installed, there needs to be some convenient way to switch the power, without needing a whole raft of little switches along the body of the snake. The following circuit shows how the SSC power can be used to switch the servo power, as long as the SSC power voltage is sufficiently higher than the servo voltage to overcome the Vbe drop of the TIP120.
On second thought, the Vce(Sat) of the TIP120 is pretty high: 2-4 Volts!, although, the chart in the data sheet shows less than a volt, for Ic<3A. Still, out of 6V, a 1V drop is pretty high.
robot/snakewire.htm - 28 October 2001