Acroname Servos: Theory, Operation, and Comparison
Last Modified: 2013-06-28
find:

basket

Acroname Robotics  
 

Contents

Servo Motors

Servo motors are extremely common in robotic applications.  They act as controllable joints, and turn wheels, sensors, heads, arms, and much more. 

The purpose of this article is to describe the basic theory behind servos, answer common questions about servo operation, and compare the servos Acroname has to offer. 


The Acroname family of servos

Theory of Operation

Servos are small motors used to control either the orientation or rotational velocity of an axis, which may be a servo arm, wheel, or other object attached to the servo.  Servos typically consist of a printed circuit board, a small motor, and several reduction gears inside a housing.  Most require a PWM signal (discussed below), power, and ground lines to operate.  Servos derive from analog RC controls, and have been widely used in RC for decades.  It is only recently that servos have begun to be designed for and integrated into robotics applications. 

Servos typically come in two flavors: standard servos and continuous servos.  Standard servos attempt to reach (and hold) a position specified by the user, while continuous servos attempt to reach (and hold) a velocity specified by the user.  Standard servos usually have a limited range of movement, while continuous servos can move a full 360 degrees. 

Both kinds of servos are typically internally closed-loop, meaning that they will fight against opposing forces using an internal logic loop to try to attain the desired position / velocity.  However, the servos are externally open loop, meaning that the user has no way of knowing if the servo was actually successful.  Furthermore, continuous servos do not contain internal encoders, so there is no ready way to tell their position (though you can employ external encoders separately). 

The servos available through Acroname use a splined shaft, pictured below, to connect between the servo and any attachments.  The servos ship with a number of servo horns of various shapes that lock on to this spline.  These horns come with holes that can be used to attach wheels or turrets, or these parts can simply be epoxied directly to the horn.  In addition, the center of the servo shaft is threaded, meaning that attachments may be screwed directly to the servo shaft.  Servo horns from a single manufacturer are typically interchangeable servo-to-servo, but this is not always the case between manufacturers. 

The Acroname servos also come with four in-plane mounting holes for attaching the servo to a base.  These can be seen below and are shown in the part drawings on the individual product pages. 


A close up of a servo showing the spline and a round servo horn

Digital Servos

Digital servos are the latest generation of servo motors.  Digital servos have the same motors and geartrains as standard servos, and accept the same PWM signal for operation (discussed below).  The difference lies in the addition of a microprocessor and Mosfet amplifier built into the control circuitry of digital servos.  This gives the servos two distinct advantages over standard servos.  The first advantage is that digital servos are externally programmable, meaning that their parameters may be adjusted to optimize a given task.  The second advantage lies in the way these microprocessors are able to pulse the motor to move the servo.  Typically, when a servo needs to apply torque, it sends varying-width pulses of power at 50 Hz to the motor as shown below, left.  Digital servos, on the other hand, pulse at 300 Hz, with the pulses reduced to 1/6th the standard pulse width.  Because the pulse width is reduced in proportion to the period, digital servos deliver the same amount of power as standard servos but with a significantly higher resolution.  This allows for a much faster and more accurate response, as well as smoother servo operation overall. 


A standard servo (left) versus a digital servo (right)

Powering a Servo

Servos typically come in a three-wire configuration, with black or brown being ground.  The servos available through Acroname all use standard 0.1" 3-heading connections which plug straight into most controllers.  Typically, the three wires are set up with the lightest wire being signal, the middle wire power, and the third wire (brown or black) being ground, as shown below. 

Servos, like any motor, can introduce noise on the ground and power planes due to inductive spikes caused by the large coils in the motors, as shown below.  These spikes appear whenever the servo is applying a torque, and can interfere with and even reset microcontrollers.  There are many ways to mitigate this effect, the most basic of which is assuring the correct gage of wire for the servos.  In addition, it is important to give each servo its own path to ground, or, stated another way, to make sure that the servo grounds connect to the controller ground downstream of the controller.  Finally, it is good practice to use separate servo batteries on a common ground with the controller. 


An oscilloscope reading of a spike in the servo ground plane

Care should also be taken in choosing a power source for a servo.  Most servos accept a small range of voltage inputs (typically 4.8 to 6V), with a requirement for around 100 mA of available current.  Within this voltage range, higher voltage values will give the servo more available torque and speed.  However, you cannot simply give the servo a higher voltage than its maximum to give it more available torque; doing so will typically damage the servo or cause it to exhibit jerk.  Likewise, when less than the minimum voltage is supplied the servo may not work properly or may not work at all.  Many controllers provide three-pin servo connections with a 5V power line that will work for most (but not all) servos. 

If for some reason you need to use a higher power source for your servos than is recommended for the servo, it is possible to reduce the incoming voltage.  One possibility is to use high-current diodes (such as 1N4001) to reduce the input voltage.  Two power diodes in series, for instance, can drop the 7.2V produced by 6 NiMH AA batteries down to the 6V maximum for many servos, though the extra voltage will need to be dissipated as heat.  It is also possible to use a voltage divider to lower the voltage, but again this will result in a proportion of wasted battery energy.  Care must be taken in designing the divider since the servo internal resistance will be in parallel with the voltage divider resistance. 


Servo wire colors and their meanings. Top wire (white, yellow, or grey) is signal, middle is power, bottom (black or brown) is ground.

PWM Signals

The majority of servos require a pulse-width modulation, or PWM signal to operate.  As shown below, these signals are square wave (digital) signals at CMOS levels (0 to 5V).  The wave period is typically on the order of 20 ms (50 Hz) and can be chosen by the user within limits, while the pulse width itself modulates between a minimum and maximum set by the servo manufacturer.  The industry standard neutral pulse length is 1500 µs, with 400 to 500 µs modulation on each side. 

The 'minimum' pulse width corresponds to the counterclockwise extreme of a standard servo, or the maximum negative velocity of a continuous servo.  'Neutral' corresponds to the middle position, or no velocity, while 'maximum' corresponds to the clockwise extreme or maximum positive velocity.  Giving a servo a PWM signal outside its recommended pulse width may cause the servo to exhibit jerk and otherwise undesirable behaviour. 

Many controllers, including our BrainStem GP and Moto controller, have servo output pins and take care of PWM signal generation.  However, it is also entirely possible to use a function generator to create the signal. 

There is no difference in the PWM signal between standard and digital servos, which are discussed above. 

If you are interested in learning more about PWM signals, we have an article available here

PWM Wave
A servo PWM wave with typical values

Comparing the Acroname Servos

The following table is a side-by-side comparison of the various servo motors available through Acroname.  Unless otherwise noted, each sensor requires a Vcc (voltage) input of between 4.8 and 6 volts.  Voltages higher than this should not be used, as they will likely damage the servo.  The torque listed is the maximum torque available at the low and high end of the voltage spectrum, and intermediate voltages will yield intermediate values.  The maximum servo speed is also a variable that increases with voltage.  The range listed is the total range available for movement, evenly split around the neutral position.  Note that 360 degree movement denotes 180 degrees from neutral, and is not synonymous with continuous (listed as n/a in this column). 

Different types of servos are designed for different applications, as noted:

  • Micro servos are the smallest servos available, and sacrifice torque and toughness to shed ounces.  These servos have ball-bearing construction for long life, but are intended for small RC applications and are by no means heavy duty.  These servos should be avoided where there is a chance for large instantaneous torques in any direction. 
  • Standard servos, in the middle of the list below, are designed for mid-size RC use in vehicles, planes, etc., though they also work nicely in small robots. 
  • Heavy servos, appearing towards the bottom of the list below, are suitable for small to medium robotics and vehicles, and are specifically designed to be bumped and bruised.  They have stronger axles and gears than the nylon used in the smaller servos.  Though they typically cost more for similar torque, these servos tend to have much longer lives and are well suited for mission-critical components. 
  • Robotics servos, such as the digital and titanium servos below, are intended for robots and off-road vehicles.  They typically come with additional features; the titanium servo, for instance, is watertight, has an internal heat sink, and operates at higher voltages than the smaller servos. 
Servo Torque Speed
(per 60°)*
Range
**
Size (mm)
(in)
Weight Type
4.8 V 6 V 4.8 V 6 V
Sub-Micro
MPI
14 oz-in17 oz-in 0.09 s0.075 s 180° 21 x 11 x 22
0.83 x 0.43 x 0.87
0.21 oz / 5.9 g Standard
Micro
MPI
17 oz-in20 oz-in 0.09 s0.075 s 180° 22 x 11 x 22
0.87 x 0.43 x 0.87
0.32 oz / 9.5 g Standard
Standard
GWS
47 oz-in58 oz-in 0.18 s0.15 s 180° 40 x 20 x 36
1.6 x 0.79 x 1.4
1.5 oz / 41 g Standard
Continuous
Futaba
47 oz-in57 oz-in 0.20 s0.16 s n/a 41 x 20 x 36
1.6 x 0.79 x 1.4
1.6 oz / 45 g Standard
Full Turn
GWS
92 oz-in106 oz-in 0.26 s0.21 s 360° 41 x 20 x 42
1.6 x 0.79 x 1.7
1.8 oz / 50 g Standard
Heavy Duty
Hitec
42 oz-in51 oz-in 0.19 s0.15 s 180° 40 x 20 x 36
1.6 x 0.78 x 1.4
1.5 oz / 43 g Standard
Digital Robot
Hitec
110 oz-in130 oz-in 0.17 s0.14 s 90° 42 x 20 x 38
1.6 x 0.77 x 1.5
2.1 oz / 60 g Digital
Titanium
Hitec
333 oz-in
@ 6V
417 oz-in
@ 7.4V
0.17 s
@ 6V
0.14 s
@ 7.4V
180° 40 x 20 x 37
1.6 x 0.78 x 1.5
2.4 oz / 68 g Digital
Digital Robot
Hitec
102.76 oz-in
@ 6V
127.98 oz-in
@ 7.4V
0.20 s
@ 6V
0.18 s
@ 7.4V
180° 40 x 20 x 37
1.57 x 0.78 x 1.45
1.92 oz / 54.70 g Digital

*: Condition: no applied load
**: This is the total range. The range in each direction from neutral is half of this value unless otherwise denoted.

Servo Control Options

While it is entirely possible to control a single servo directly from a function generator such as an oscilloscope, using visual feedback to guide the servo, this is not often practical.  Most robotic applications require the automatic control of several servos, and we offer a number of tools to fill this need. 

Microcontrollers

  • BrainStem: Our General Purpose (GP) module has built in PWM to control up to 4 servos, with additional analog inputs, digital I/O, and an I2C bus.  Our Moto module can control up to two servos or motors. 
  • Devantech: Devantech offers two dedicated servo control boards designed for animatronics, the SD21 and SD84 modules, which can control 21 and 84 servos respectively. 
  • Nubotics Wheel Commander creates a rich closed loop control system for differential drive robots that can actuate either servos or DC motors. 

Other Interface Options

In addition to the specialized systems above, any digital I/O pin on a controller or a converter (such as a USB to I2C adapter ) can be set up to transmit PWM signals and therefore control a servo, though it is an exercise for the reader to figure out how to do this with a given controller or host computer. 

Revision History:

  • 2008-05-01: Added HSR-8498HB digital servo motor to comparison table.
  • 2008-03-24: Fixed typo in operating range for the digital robot servo.
  • 2007-11-29: Article created
  • 2007-11-29: Article on Servo Basics
 

Related Links:

How to provide servo power for CMUCam2+ and BrainStem GP 2.0

voice: 720-564-0373, email: sales@acroname.com, address: 4822 Sterling Dr., Boulder CO, 80301-2350, privacy
© Copyright 1994-2012 Acroname, Inc., Boulder, Colorado. All rights reserved.