Kronos Robotics and Electronics
Site Map
 
Home Zeus Projects App Notes Downloads Dios Athena Forums
 

GAN116_gws

Convert a GWS S0N Servo to Continuous Operation

Some other Servo Modification Instructions

 

  By Michael Simpson

One of the simplest bots you can make is made by converting a couple of servos to free running mode.  You get a small motor, gearbox and speed controller all in one package.

First lets talk a bit about how a servo works.

Most servos are controlled by a series of pulses.  The width of the high state pulse is what determines the actual position of the servo. 

Generally a pulse of 1ms will place the servo at one end of its rotation (see figure 1) and 2ms will place it on the other end (see figure 2)

Figure 1

Figure 2

I say generally because I found that the range can be any where from .2ms to 3ms depending on the servo manufacture and model.  Again generally when the pulse width is 1.5ms the servo will reach the half way point in its swing.

There is a small potentiometer inside the servo that rotates with the main shaft.  This is what tells the electronics in the servo where it is at any given time.  When we convert a servo to free running mode we disconnect the potentiometer from the shaft and set it at its center position.  We also remove any mechanical stops that may keep the servo from turning completely around.

Once the servo can rotate freely we can find the center spot by slowly adjusting the pulse width. I call this the neutral position.  Now by adjusting the pulse width greater than the neutral position we can move the shaft in one direction.  By adjusting the pulse width less than the neutral position we can move the shaft in the opposite direction.

Most servos were designed so that when it gets closer to its allocated position it slows down.   This will allow us to adjust the speed of the shaft by varying the amount that deviates from the neutral position.

 

Servo Notes on GWS Servo

This is one of the noisy (electrical) servos I have ever tested.  It can cause the micro controller to reset on single power source systems.  Some are worse than others so they don't seem to be consistent.  I have also found some of the gears to be quite gritty.  When using this servo you can do a couple of things.

  • Dual power

  • Place a 2-3ohm 5 watt resistor in series with the + power lead to the servo.   This can be done on the Ares board by removing the servo power jumper and replacing it with a resistor.

All in all this is one of my last picks for a Bot Servo.

Modifying the Servo

Note that the following modifications will void your servo warranty.  

There are two ways to convert this servo.  You can open up the servo and disconnect and remove the potentiometer.  You then must solder two 2.2 resistors in place.   I feel this is too much work and can be very error prone.

In the following steps we will work only on the main shaft.  You never have to open up the guts of the servo.  Also By purchasing a new gear set you can restore the servo back to normal operation if you decide to do so later.

Step 1

Remove the 4 screws on the front of the servo.

Note that its not necessary to remove the back of the servo.

Remove any servo wheels or arms that may be attached to the main shaft.

Step 2

Remove the top of the servo by lifting. 

Note these two gears may have come off and are still inserted in the top cover.  Just remove them.

Step 3

Remove the small white ring located on the shaft of the potentiometer.  Just lift it off to remove it.

Step 4

Insert a small slit in the top of the potentiometer shaft as shown.  The shaft is plastic so it wont take much.

Use a razor saw or a cutting disk on a rotary tool.

Step 5

There is a small stop that must be removed from the main shaft.  I found that using small wire cutters and then cleaning up with and exact knife works the best.

Take small bytes so you wont damage the gear.

 

The GWS servos that I converted have a whole that goes through the center of the main shaft.  If yours does not you will need to use a 5/64" drill to place a whole through the shaft.

Step 6

Reinstall the gears as shown.  I found it easier to place the top ball bearing on the main shaft before installing the top cover.

 

Place the cover over the gears and attach with the 4 screws.

 

Step 9

To calibrate the servo just set it to a neutral (center position) 1500us.  Use a small screw driver to adjust the main shaft as shown.  Adjust until the drive shaft stops moving.

You can use the following program calibrate the servo's neutral position.

func main()
   SERVOinit(1)
   SERVO1us 1500
endfunc

include \lib\DiosHSServo.lib

 

 

 

Copyright © 2001 - 2007 Kronos Robotics