There is an Instructable that documents how to control an OWI Arm with an Arduino and a motor shield. I think this is far too complicated. I recently ordered some jumper wires and will attempt to control the arm with the Arduino by wiring it in as the controller and not by connecting the motors to some sort of motor shield or transistor network. I think this will give me the same controls as in the Instructable but will use the electronics board in the arm instead of the Arduino. Perhaps this will also use fewer pins on the Arduino.
One of the drawbacks of using a OWI arm is that is uses DC motors and not servos or stepper motors. This means that I need to figure out some way to determine how far the arms have moved. I could calibrate the time it takes to move each motor to various distances, but this will not account for drift in the motors or variations in the power given to the motors from the ever-draining D batteries. An ingenious solution to the distance measurement problem is found by using infrared sensors to measure to rotation of a gear in each gearbox. I have obtained sensors, but I still need to modify the gears and gear boxes so the sensors fit. I'm not sure if this will be less work than making a robotic arm with servos, but I think it will be less expensive in the long run. I have attached some photos of the gear box and the position of the opto coupler. I need to cut some of the plastic in the gearbox so the slit in the optical sensor is in the same plane as the gear. I will detail the process of installing and wiring the opto coupling system as I complete it. I want to demonstrate the Arduino control first after the jumper wires arrive this week.