This is the circuit used in X-Contamination that allows the arm to go through a full cycle without manual interference, or be interrupted at any point in that cycle, without needing any sort of microcontroller or programming:Parts List:
Two PicoSwitch 1A R/C Switches: http://www.robotmarketplace.com/products/0-PICOSW1.html
One Micro Switch with 2-Wire Cable and Screws: http://www.ifirobotics.com/edu-electrical.shtml
One Spike H-Bridge Relay: http://www.ifirobotics.com/spike.shtml
One Spektrum BR-6000 Receiver: http://www.robotmarketplace.com/products/RC-SPM6000BR.html
^Two channels were used from the controller for a reliable failsafeDiagram:Instructions:
(Courtesy of the work of Mr. DuBard, the Adviser for RE Robotics, and the RE Robotics team.)
In Mr. DuBard's Words:
The first picoswitch is wired to the "GEAR" channel, and is failsafed to off. When activated, it allows a +5V signal (available from any central pin on the BR6000) to pass. This is our failsafe, and a way to deactivate the arm in a 'runaway' situation. The switched +5V out from this then connects to a parallel connection of the microswitch and the second picoswitch. The microswitch is deactivated by the arm in the down position, and the second picoswitch is connected to the "RUDDER" channel so that it is activated when the stick is full left. The "far side' of the parallel circuit is connected to the White input on the Spike, with the Red input for the Spike is connected to any black wire on the BR6000.
Edit: It should be noted that the Spike Relay used an auto-resetting fuse, and both of X-Contamination's arm motors were run off of the same Spike in parallel.