I could not find a servo to fit the requirements of my buggy, so I designed my own high power servo. I receive a lot of mail asking exactly how it's done, so I've created a page to explain how it works. This page is not yet complete, but hopefully it will give you some useful information.

Warning: These servos have enough power to easily remove fingers from your hand. Please use caution.

I started by choosing a powerful gearmotor that would have no problem turning the wheels under any condition. Automotive windshield wiper motors seem to be the perfect match for this application. They have a rotating arm to which linkage can be easily attached. Window motors are also very powerful and they are smaller and lighter, but their use is limited due to the type of output shaft they have. Many window motors will have a square or geared shaft with no threads, and they are difficult to work with for this application. I have found that some late model Ford/Mazda vehicles use a sort of winch to raise and lower the windows. The motor has two shrouded cables coming out in opposite directions. When the motor turns one way it pulls on one cable and when reversed it pulls on the other. The information here will work with any DC gear motor, though I have a feeling that the motor speed and gear ratio may affect how well the system works. 

 The motor that I chose for steering is a windshield wiper motor for a 2000 Saturn L-Series car. These are available from various electronics surplus outlets for $15-$20, and can be used for just about any large scale project. These motors have the negative terminal connected to the case as I suspect many automotive wiper motors do. The motor needs to be modified so that it has two leads independent of the case. If you can isolate the motor case from the chassis of your car then this may not be necessary, but probably still a good idea. On the Saturn motor you can access the brushes by removing two screws and pulling the motor case off of the armature. You'll find three brushes and some other components on a circuit board. Just remove everything but the two oposing brushes, and connect your new wires to the brush holders. Add three .1 uf capacitors, one from each brush holder to the case and one between the two bush holders, to eliminate any motor noise that may affect the driver. Run your new wires out through the exixsting grommet and reassemble the moror.

A standard hobby servo uses what is called an H bridge to drive a very small motor. An H bridge consists of four transistors connected in a way that resembles an H. During normal operation only two of the transistors are are turned on at any given time. When two of the transistors are turned on the motor will run in one direction, and when the other two are turned on it will run in the opposite direction. The transistors are turned on and off very quickly using Pulse Width Modulation. The width (time) of the pulse determines the speed of the motor. The transistors in the servo can only handle a few milliamps of current. By replacing them with larger transistors we can drive a larger motor. It's not quite that simple, but you get the idea. 

The first step is to open up a servo and find the PWM signals that drive the H bridge. I'll show a popular and inexpensive Futaba S3003 servo for reference. If you don't know what I'm talking about, just buy an S3003 and do what I do.

Remove the four screws from the servo case. From the side with the output shaft, remove the gear cover and take all of the gears out. The only part that needs to remain in place is the splined output shaft which is directly connected to the potentiometer. After removing the gears you can put the gear cover back on. With the back cover removed from the servo, you will see the solder side of the circuit board. Most of the components are on the other side of the board, and just a few small surface mount parts on this side. All of the modifications can be done without removing the board, and removing the board from the case is difficult to do without damaging the potentiometer, so just leave it in place.

servo1.jpg (26673 bytes)

Referring to the picture of an S3003 servo above, two new wires should be attached to the board where the yellow circles are. There are two tiny 10nf capacitors that need to be removed, they are circled in red. The motor connections are circled in blue. The motor does not need to be removed, but the leads should be disconnected. Run the new wires out alongside the existing wires and trim the cover so they will fit through. Reinstall the cover and screws.

If you do not wish to use a S3003 servo or it is not compatible with your radio, you can use an oscilloscope to find the correct connection points. Each of the signals you're looking for will be 0 volts with the servo in idle or hold position and pulse supply voltage with any movement of the motor. The easiest way to locate them is to remove the gears first so that the motor will run continuously when you try to operate the servo. You will also notice that the motor will run if the potentiometer is turned away from the center position, it is trying to center the pot but it can't because the motor is no longer connected to the potentiometer through gears. Make the motor run either by operating the radio or by turning the potentiometer. While it's running you can use an oscilliscope to probe the board for the PWM signal. As motor speed increases you will see the pulse width get wider. Once you've found one you can reverse the direction and look for the other one.  Attach two small wires to the circuit board where you located the PWM signals.

What you have now is something that looks very much like a servo, but it has a different purpose. The circuitry inside will still decode the signal from the receiver and convert it into two PWM directional signals, but the signals will now drive an external H-bridge. The potentiometer will still be used for positioning feedback, and the servo case makes it easy to mount and connect to the new motor. The three wire connector will still plug into the receiver as usual. The two extra wires will be connected to the high power motor driver. The output shaft will be connected to the output shaft of the gear motor. The connection can be either a direct shaft to shaft connection or a linkage connection from arm to arm. If using linkage the ratio should probably be kept at 1:1, though slight variance should work as well if you require more or less travel from the new servo motor. Below is a picture of my steering motor with the modified S3003 mounted next to it and a short ball-end linkage connecting the arms.

dcp02518.jpg (18775 bytes)

Note: Care must be taken when powering up the servo for the first time. If the polarity is backwards it will run out of control until it destroys the linkage or stalls the motor. I recommend powering it up the first time with all linkage disconnected. The motor will most likely run continuously in one direction until you center the potentiometer by hand. Then as you slowly rotate the potentiometer shaft, the motor should begin running slowly in the opposite direction, the further you turn the pot, the faster the motor will run. If the motor turns the same direction as the potentiometer you need to reverse the polarity by reversing the motor leads or the PWM leads.

For my project I'm using pre-assembled D-100 motor drivers from Tecel Microcontrollers. During my initial research for this project I discovered that it would be cheaper to buy a driver from Tecel than to build my own, and I would gain some good features that are beyond my own design capabilities. Tecel now only offers the updated D-200 driver and the price has gone up quite a bit, but it's still a good deal. They have a very nice website that explains how to use the D-200. http://www.tecel.com/d200/ . Follow their directions on how to hook up the driver, all that is needed is 12 volt supply for the motor, 5 volt for the driver circuitry, the two PWM signals from the S3003, and the two motor leads.

I'm using a single LM7805 voltage regulator to provide 5 volts to the receiver, S3003 boards and motor controllers. This allows me to use a single 12 volt battery as a power source for the whole car. The Tecel website shows various options for the 5 volt source.

I have two drivers mounted in a small plastic project box, one for steering and one for brakes. I also stuffed the 5V regulator and a digital panel meter inside. The meter displays battery voltage and MOSFET temperature. Two small fans pull air across the boards for cooling. All connections are made externally using standard RC hobby type connectors. I've also included an output to drive an ignition relay that will shut off the engine if the battery gets disconnected or the voltage gets too low.

Below you can see how the servos and receiver get connected to the controller. The larger plugs are for the battery and the two gear motors. The small red connector is for the ignition cut relay. When the parts are installed on the car, extension cables are used to connect each component in it's actual position.

My brake motor is a power window motor from a Mazda Protege'. This winch-type motor is lighter than the windshield wiper motor and works well for my cable actuated disc brake.

dcp02522.jpg (21727 bytes)