This is only a preview of the May 2001 issue of Silicon Chip. You can view 33 of the 104 pages in the full issue, including the advertisments. For full access, purchase the issue for $10.00 or subscribe for access to the latest issues. Articles in this series:
Items relevant to "Using Linux To Share An Internet Connection; Pt.1":
Articles in this series:
Items relevant to "Powerful 12V Mini Stereo Amplifier":
Items relevant to "Two White-LED Torches To Build":
Items relevant to "PowerPak: A Multi-Voltage Power Supply":
Purchase a printed copy of this issue for $10.00. |
Ein Servo Mit
Most hobbyists would be familiar with the little servos used to
control model planes, boats and cars. They’re fine if that’s all
you want to control. But what if your application calls for a
servo with industrial-strength muscle? That’s when you need
our new, B-I-G, powerful, industrial-strength, Jumbo Servo.
Y
our typical model servo is capable of very fine adjustment
over a range of about 90° or so.
It measures about 40 x 20 x 35mm,
weighs about 50g and has a torque
somewhere around 5kg-cm (some a bit
more, some a bit less).
Our new “Jumbo” servo is also
capable of very fine adjustment over
a 90° range. It comes in at 180 x 110 x
110mm, weighs about 1300g and has
a torque somewhere in the kg-m range
(no, we couldn’t measure it!). Suffice
to say it’s a tad more than “typical”
model servos!
Possible applications
What on earth would you want that
sort of muscle for? Here are just a few
applications that we thought of – you
can probably think of many more
(in fact, right now there are readers
throughout the South Pacific thinking
“at last! Now I can…..”).
• Robotics – no longer are you limited to piddly little designs. Build a
monster!
• Radio control of large (eg, 1/4-scale
or even bigger) models – steering,
brakes, etc which require some real
power.
• Remote (as distinct from radio) control (ie “fly by wire”) in real boats,
cars, etc – eg, the rudder, trim or even
throttle control without the usual
mechanical linkages.
• Rotator for a radio or TV antenna;
even a satellite dish azimuth/elevation positioner.
• Remote gate or door controller.
68 Silicon Chip
• Heavy duty pan or tilt controller for
a remote camera or camcorder – eg,
unattended wildlife photography or
surveillance work.
• Remote (or even local) electronic
control of valves or flow control
devices, especially if they are in
hazardous areas.
• Flue, vent or high hopper window
openers/closers.
• Remote winch or sail furling on a
real yacht (you add the hardware!)
• Perhaps (obviously with additional
electronics) even navigation control
with feedback from a GPS unit (as
published last month in SILICON
CHIP).
We’re sure we have merely scratched
the surface of ideas for this one. It’s
one of those projects that is a solution
waiting for an application – and there
are literally countless applications.
Servo control
The vast majority of servos sold
today are designed to operate to a
somewhat standard 1.0-2.0ms pulse
width on a 20ms (+/-) frame rate.
At centre, the pulse width should be
1.5ms. Increase the pulse width and the
servo turns “forward”, proportionally
all the way up to 2.0ms where it is at
full forward. Similarly, decrease the
pulse width and the servo turns “reverse”, with the servo in full reverse
at 1.0ms.
The frame rate, or time between
pulses, is usually quoted as 20ms (or
50Hz) but this does not appear to be
crucial. The pulse width, though, is –
for obvious reasons.
The Jumbo Servo also uses this
1.0-2.0ms/50Hz standard, so it is compatible with the vast majority of radio
control equipment sold.
Radio control units tend to use a
standard colour coding in their output
leads – red, yellow and black. Red and
black are + and – power respectively,
while the yellow is the pulse train
(normally referenced to the black lead).
For convenience, we often use red,
brown and black wires in hobby radio
control wiring because these are the
first three colours in a rainbow cable
– very handy because the three wires
can be stripped off together.
(In fact, in most rainbow cables you
get two lots of black, brown, red wires
– most rainbow cables have 15 or more
conductors).
Inside a “normal” servo is a tiny
electric motor/gearbox, which is driven one way to send the servo actuator
forward and the opposite way to go
reverse.
Outside our jumbo servo is a much
larger electric motor/gearbox which
works in exactly the same way. While
we used a particular motor/gearbox
combination in the prototype, you
could choose from a huge range of
motors and gearboxes, depending on
the amount of grunt you need.
The motor/gearbox we used is actually a powerful little German unit
(aha! so that’s the association in the
title!) from Oatley Electronics but
others which you could use include a
variety of automotive models – wind-
Gerrunttt!
screen wiper motors, auto headlight
motors, electric antenna motors and
so on). You can also obtain a variety
of motors and gearboxes from hobby
and electronics stores.
Bear in mind, though, that a too-high
gear ratio (say 100:1 or more) may result in a particular servo position being
difficult to accurately or consistently
reproduce.
This is because of the latency of the
motor/gearbox – the motor might make
several turns before the geared output
starts to turn. Of course, the higher the
ratio, the more torque you’ll get from a
given motor so it’s something of a tradeoff. In a lot of cases, this won’t matter.
The prototype had also slightly
lower than the normal 90° travel – it
was about 85°. This is because of component tolerance spreads and could be
corrected by closer component selection. However, this may or may not be
important to you – some applications
may only need half this travel, or even
less, so less wouldn’t matter.
Fly-by-wire
If you don’t have (or don’t want)
a radio-control unit with receiver, you won’t have a source of the
1.0-2.0ms/50Hz pulses required to
control the servo. Fortunately, that’s
easy to solve. You can quite simply
synthesize such a pulse stream with
just a few components. As we mentioned before, the frame or pulse rate
(50Hz) is not particularly critical but
the 1.0-2.0ms pulse width is.
For those who want to use a wired
controller for the servo, we show details of a small variable pulse generator
which creates those 1.0-2.0ms pulses
at about 50Hz. The pulse width is
controlled by a pot; centre is off, full
anti-clockwise is full reverse and full
clockwise is full forward.
This can be connected as far as you
like (within reason!) from the servo
unit itself.
Mechanicals
We show the details of our prototype in the drawings and photographs
which accompany this article. Needless to say, there are many ways to
skin a cat – and your servo mounting
arrangements could obviously be very
different if you use a different motor.
The two basic requirements are:
(a) some means of mounting the servo
Article by
Ross Tester
actuator “arm” to the motor (gearbox) shaft, and
(b) some means of connecting the
positioning sensing, or feedback,
potentiometer to the motor (gearbox) shaft.
The photographs and drawings
show how we accomplished this in the
prototype – again, yours will depend
on the motor/gearbox used.
Our servo actuator arm was a 250 x
15mm strip of 10 gauge aluminium,
bent over on itself but with a 10mm
“bell” at the midpoint. A hole was
drilled into this to accommodate a
screw and locknut which in turn fastened on the gearbox shaft. Of course,
holes were also drilled in the arm to
allow the shaft to pass through (a fairly
tight, or “friction” fit).
One or two 3mm screw(s) and lockMAY 2001 69
The circuit of the servo controller section. The input can be from
a radio control receiver or, as we explain later, a purpose-built oscillator.
nut(s) prevented the two halves from
“opening up”. This screw could also
be a connection point for whatever the
servo arm was actuating, if necessary.
A shallow “U”-shaped bracket was
made up to support the feedback pot
and, for convenience, the servo controller electronics housed in a small
zippy box. (The electronics can be
mounted remotely if desired).
The bracket was glued, not screwed,
to the electronics box, again more for
convenience than anything else.
The pot shaft was connected to
the motor shaft with a short length of
heatshrink tubing, shrunk into position
once the pot was mounted and the two
shafts aligned.
Circuit description
There’s not a great deal to the circuit.
It basically consists of two sections:
the pulse detection, shaft position and
driving circuitry based on the ZN409
70 Silicon Chip
Servo Driver IC and the “H-bridge”
motor driver (Q1-Q8).
The circuit is in fact very similar to
one contributed by Nicholas Baroni
in “Circuit Notebook”, SILICON CHIP
December 1997.
The 50Hz pulse stream is fed into
pin 14 of IC1. This chip has its own
reference oscillator, producing 1.5mswide pulses every 20ms (ie, 50Hz). The
incoming pulse stream is compared to
this reference.
Usually, a trimpot would be used
to adjust the reference oscillator to account for variations in receiver outputs
but in this case there is a pot, rather
than a trimpot, and it is connected
rather differently.
The potentiomenter is now physically connected to the gearbox shaft and
varies as the servo position varies. This
gives the IC feedback, letting it know
where the shaft is at that time. More
on this shortly.
Also, most ZN409 motor-driver circuits have the outputs from pin 5 and
9 – as you can see from the circuit, our
outputs are pins 7 and 8.
If the incoming receiver pulses are
longer than the reference oscillator
pulses, the pin 7 output is taken high
and pin 8 output taken low. Conversely, if shorter, pin 7 goes low and pin 8
high. If the pulses are the same length,
both pin 7 and pin 8 are high.
As Q1 and Q2 are PNP devices, a
logic “high” on their bases will turn
them off and a “low” will turn them
on. Therefore, unless the IC sends both
pins 9 and 5 high, when Q1 is on Q2
must be off and vice versa.
If the pulses are long and Q1 is
off, Q3 and Q5 will also be off. At the
same time the base of Q2 is taken low,
turning it on. Q6, Q8 and Q4 are also
turned on. Current can therefore flow
from positive, through Q4, the motor,
Q8 and back to negative.
The PC board component overlay
shows where everything fits. There
are two additional 0.1µF capacitors
not shown on this overlay; they are
for motor noise supression and are
wired directly between the motor
terminals and the earthed motor,
with leads as short as possible. The
wiring on the right side of the PC
board should be heavy duty, able to
handle the heavy motor current. The
wiring on the left is ideally made
from ribbon cable.
Close-up of the
servo controller,
removed from its
case. Compare this
to the PC board
overlay above.
Therefore, the motor will turn in
one direction, turning the servo actuator arm attached to its shaft (or more
correctly, its gearbox shaft).
But remember that feedback pot we
mentioned before? As its resistance varies, it changes the width of the pulses
from the reference oscillator in IC1. At
a certain point, the comparator will register that the reference pulses and the
incoming receiver pulses are identical
and send both pins 9 and 5 high.
When this happens Q1 and Q2 are
both turned off, in turn turning Q3
and Q6 off. Q5 and Q8 turn off when
this happens, so current cannot pass
to the negative supply and therefore
the motor cannot turn.
If the incoming pulses become
shorter than the reference, the whole
operation above reverses; the net result
is that current can flow from positive
to negative via Q7, the motor and Q5.
But this current flow is in the oppo-
site direction as far as the motor is concerned, therefore it turns the opposite
way – that is, until equilibrium is once
again reached, with the feedback pot
fooling the comparator into believing
that the pulse widths are equal.
Power supplies
The circuit requires two supplies,
+12V (or the voltage at which your
motor operates) and +5V.
The 5V is usually supplied by the
radio-control receiver (via the 3-wire
cable which also supplies pulses); if
you build the servo oscillator/controller unit there is also a 5V regulated
supply built into that.
Otherwise you may need to lash together a similar 7805 regulator circuit
which can derive its input from the
12V DC source for the motor supply.
While we are specifying 12V for
the motor supply, there may be users
Viewed from the underside, this pic shows the
electronics of the Jumbo Servo with the case
cover removed for clarity. Note the position
feedback pot mounted on the bracket which
also holds the case and PC board.
MAY 2001 71
These two close-up shots show the servo controller arm and its method of mounting on the gearbox shaft. The position
feedback potentiometer must be aligned with this shaft and connected to it – we found the easiest way was with heatshrink.
who want to run higher voltage motor/
gearboxes. One advantage of this is that
for the same torque, a higher voltage
motor will normally draw less current.
With the transistors specified, higher
voltage motors are a possibility (eg, 24V
truck wipers) but we must emphasise
that these have not been tried. You may
also need to supply heatsinking for the
power transistors.
Inertia and dead band
The ZN409 has a built-in “deadband” which stops it trying to adjust
the servo over too close a range. Without the deadband, the servo motor
would continually “hunt” or chatter
as it tried to correct its position.
This is caused by the mechanical
inertia of the motor/gearbox assembly.
The circuit tells the motor to spin for so
long then, when the circuit senses that
it has reached the right point, motor
current is cut off. But the motor cannot
stop spinning immediately – it slows
to a stop. This takes the servo slightly
beyond where it should be.
So the circuit tries to correct this and
spins the motor back the other way –
woops, too far, so it corrects this and...
The dead band stops this happening.
It won’t let the controller supply power
to the motor if the servo is within a
certain band or percentage of where
it should be. The capacitor connected
to pin 13 slightly extends the ZN409
normal deadband to take into account
the longer inertia of the larger motors
used in this servo.
With the .022µF capacitor shown,
the dead band is about 14% of the servo
travel – fairly normal for a servo but if
unacceptably large, you could reduce
this capacitor somewhat. See what
works for your application.
72 Silicon Chip
The two 2.2MΩ resistors serve a
related function, albeit inverse, in the
“stick” of the radio control unit. They
give the stick more control, without a
lot of dead stick (ie, the amount the
stick must be moved before there’s any
reaction from the servo). If necessary,
these resistors can be reduced but don’t
go below about 560kΩ.
Lastly, the two 22µF capacitors
between these resistors really are
connected “back-to-back” as shown,
as the polarity across them can (and
does!) reverse.
Pulse source
We’ve already mentioned that this
controller is compatible with the vast
Parts List – Jumbo Servo (Actuator)
1 PC board, 52 x 77mm, code K165
1 12V motor/gearbox assembly (see text)
1 14-pin DIL IC socket
8 PC stakes
3 lengths black-brown-red ribbon cable (to suit)
1 length 3-conductor ribbon cable (to suit)
2 lengths heavy-duty red hookup wire
2 lengths heavy-duty black hookup wire
1 aluminium bracket to hold feedback pot (see text)
1 aluminium servo actuator arm, captive to shaft (see text)
1 length heatshrink tubing to suit gearbox shaft & potentiometer
Semiconductors
1 ZN409 servo controller IC (IC1)
2 C8550 PNP transistors (Q1, Q2)
2 BC639 NPN transistors (Q3, Q6)
2 MJE2955 PNP power transistors (Q4, Q7)
2 MJE3055 NPN power transistors (Q5, Q8)
Capacitors
1 470µF 35VW electrolytic, radial type (C2)
2 22µF 25VW electrolytics, PC mounting (C3, C4)
1 2.2µF 25VW electrolytic, PC mounting (C9)
1 0.47µF polyester (C7)
3 0.1µF polyester or MKT (C1, C5, C6)
3 0.1µF ceramic (C10, C11*)
1 0.022µF polyester (C8)
Resistors
2 2.2MΩ 2 100kΩ 2 10kΩ 1 12kΩ 1 5.6kΩ 1 1.2kΩ
8 470Ω 2 68W 1Ω
1 10kΩ linear potentiometer
* solder between motor terminals and earthed motor case
It’s not so much a Jumbo Servo Controller as a Jumbo
Servo Controller Controller. It contains two oscillators
whose pulse width is variable between one and two
milliseconds; ie, perfect for “driving” the Jumbo Servo.
majority of radio control receiver outputs, with their 1.5ms-wide output
pulses (±0.5ms) on a 50Hz square
wave.
Connect the output of the radio
control receiver to this circuit and you
should find the combination works
perfectly. However, if you don’t have
an R/C receiver (or want to wire the
controller direct) it’s very easy to build
an oscillator which simulates this
waveform.
That’s what the other box in our
photographs does. In fact, built into
this box, with oodles of room to spare,
are two such oscillators (obviously
for controlling two Jumbo Servos). If
you want to control more, you could
arguably fit four or even six oscillators
in the disposals box we used.
This box was once a 110V power
supply – not exactly usable in Oz or NZ,
so we threw away the transformer (OK,
we lied – it’s a great paper weight!).
We did keep and use the small rectifier PC board, though – it provides
some useful filtering and also protects
against reverse polarity supply. This
board also fits into the box – still with
plenty of room.
The oscillator is based on a 555
Inside the box looks like a dog’s breakfast (’cos it is!). The
vertical PC board contains two oscillators (hence the two
pots on the front) while the other PC board is a rectifier
board retrieved from a 110V supply and “crammed in”.
timer, running at around 50Hz. This
circuit is a little different from most 555
timer circuits in that it is effectively
“back to front”.
Normally, pin 3 of a 555 is its output
pin but we use pin 3 to charge and
discharge the timing capacitor, taking
the output pulses from what would
normally be the discharge pin (pin 7).
The 555 output can both source
and sink current. When its output is
low, C3 discharges through the IC and
when high, it charges C3, with both the
charge and discharge times dependent
on the setting of VR1.
Note, though, the large discrepancy
in series resistors between the charge
and discharge cycles: these set up the
oscillator to provide the one-to-two
millisecond-wide output pulses, taken
from pin 7 .
Construction
Start, as always, by examining the
PC board(s) to ensure it (they) is (are)
free from defects. We’ll assemble the
main PC board first.
Mount and solder the lowest-profile,
non-polarised components first –ie,
the resistors and ceramic or polyester
capacitors. Use the colour code in the
table or check their value with a digital
multimeter if you aren’t sure.
Next solder in the electrolytic capacitors. The large electro near the power
transistors is a little unusual these
days – it is an axial type rather than a
PC board mounting type.
Detail of our servo arm. Exact size is not important
– this size was chosen because it is easily made from
a 250mm length of 20mm x 3mm strip aluminium,
commonly available at hardware stores.
MAY 2001 73
Here’s what the contents of
the controller oscillator box
reveal: the two oscillators (on
one PC board) at left, while
the board in the background
is the one recovered from a
110V supply. It contains a
bridge rectifier along with a
nice big smoothing capacitor and a fuse, so it doesn’t
matter which way around
you connect power (low
voltage AC, even!). The ICs at
the back of the oscillators are
7805 regulators to give a 5V
supply.
If for some reason you cannot get an
axial, a PC board type can be used but
you’ll have to run one of its leads back
along the body in order to lie it flat on
the board. (Standing up it would be
too high to fit in the case).
Now solder in the small transistors,
taking care that you don’t mix ’em up.
All look much the same but they aren’t!
Solder in the IC socket, making sure
its notch goes the same way as shown
on the PC board overlay.
And finally, solder the four power
transistors in place. Again, they are
not all the same. They mount down
close to, but not right on, the PC board
– allow say 3mm space under them.
Try to mount them all at exactly the
same height – just because they look
neater that way.
Plug the IC into its socket, again
ensuring the notch lines up with the
notch on the socket. Apart from soldering on the various connecting wires,
this PC board is now complete. Note
that one resistor and the pot should be
left over – the resistor solders direct to
the pot terminals.
In like manner to the controller
board, solder the components to the
smaller PC board (the oscillator board).
If you are only going to control one
servo, you only need to place one set
of components (the board contains two
identical halves for two oscillators in
case you want to control two Jumbo
74 Silicon Chip
Servos – eg, steering and brakes on a
big model car).
Connecting cables
Most of the connecting cables can be
trios (ie, 3 wires in one strip) peeled
off a length of ribbon cable. Bearing in
mind what we said above about blackbrown-red colours, remove suitable
lengths of cable and connect as shown
in the diagrams.
Wires to the remote pot can also be
a trio from ribbon cable – colours here
aren’t at all important; use what you
have the most of. Just remember to
connect the right one to the right point
on the PC board!
Cables which connect to the motor
and to the battery or power source
should be considerably heavier than
ribbon cable. For a motor which draws,
say, 5A continuous, we would be inclined to use 10A cable to minimise
voltage drop (I2R losses) – especially
if the motor is mounted any distance
away. You can buy “auto” cable rated
at 20A or more which is even better.
We would normally always use
red and black cable for polarised (ie,
power) connections – it minimises the
chance of a mistake. Having said that,
you may note from the photographs
we used red and green for the motor
because that’s what the motor was
supplied with. Oh well, 50% right is
better than 100% rong!
You may also have noticed that we
used a trio of black-brown-red ribbon
cable to connect power to the oscillator
board (it’s more than thick enough for
this purpose). In this case, we simply
chopped off the brown in the middle
but kept to the red and black convention for power.
In this demonstration prototype, too,
we have used much thinner red and
black cable for the power connection
to the PC board than we would have
preferred. It’s just that we had some of
this on hand and the lolly shop was
closed and…
Firing it up
You might find it easier to check it
all out without the servo actuator arm
The Servo Oscillator is based around an old friend, the 555 timer. This circuit also
includes a regulated 5V supply for the servo driver chip on the other PC board.
The component
overlay for one
of the oscillators
and 5V supplies.
One is needed for
each servo. At
right are two such
circuits on one PC
board.
in place, or at least not yet captive (ie,
loosen the grub screw!). The arm has
this annoying habit of getting caught
in other things while flailing back on
forth when spread out on the bench.
Connect the feedback pot to the
main PC board (remember that resistor
across it!) and set it to roughly its midpoint. Apply power. You’ll probably
find that nothing happens. That’s good,
because without input pulses, the servo doesn’t know where it should be.
Disconnect from power.
Now’s the time to align the pot to the
shaft – as we said, we used heatshrink
for simplicity and ease; you might have
other ideas.
Now you’ll need either an R/C receiver with servo output or the oscillator. Connect either up to the “receiver”
terminals on the PC board, observing
the polarity of the power leads and the
position of the signal lead (it goes to
the centre).
Apply power to the servo and oscillator (or turn on your R/C receiver
and transmitter). Turning the pot (or
moving the transmitter joystick) one
way should make the servo turn one
way, the opposite way should make it
go back the other direction.
If so, all you have to do is secure the
Parts List –
Servo Controller
Oscillator (1 unit)
1 PC Board, 40 x 63mm, code
K166
1 recovered PC board with
components (see text)
1 8-pin DIL IC socket
8 PC stakes
2 lengths black-brown-red ribbon
cable (to suit)
1 length 3-conductor ribbon
cable (to suit)
servo arm to the appropriate place on
the gearbox shaft, mount the electronics in the appropriate boxes, run any
necessary cables – and you’re done!
If it doesn’t work
There’s a snaffu somewhere, eh?
Eliminate the radio control side by
plugging in a standard servo (eg, from a
model plane, car, etc) to the radio control receiver and make sure it works as
intended. If you’ve built the oscillator,
it can be plugged into a standard servo
and checked.
If everything works, there’s something wrong on the PC board – a component back to front or misplaced, a
solder bridge or dry joint – or maybe
you have simply forgotten to connect
something to something else (the motor, maybe?)
The board is quite simple, so if a
check and double check finds nothing
wrong, start checking voltages, for
example:
• power (from the R/C receiver or
oscillator) at pin 10 of IC1 and also
the emitters of both Q1 and Q2.
• power (the same voltage as the
battery) between the sources of
Q5/Q7 and Q6/Q8.
If you have access to an oscilloscope,
Resistor Colour Codes
Value
2.2MΩ
100kΩ
12kΩ
10kΩ
5.6kΩ
1.2kΩ
470Ω
68Ω
4-Band Code (1%) 5-Band Code (1%)
red red green brown red red black yellow brown
brown black yellow brown brown black black orange brown
brown red orange brown brown red black red brown
brown black orange brown brown black black red brown
green blue red brown green blue black brown brown
brown red red brown brown red black brown brown
yellow violet brown brown yellow violet black black brown
blue grey black brown blue grey black black gold
Semiconductors
1 7805 3-terminal regulator
(IC1)
1 555 timer IC (IC2)
1 1N4004 power diode (D1)
2 1N4148 signal diodes (D2, D3)
Capacitors
1 1000µF 35VW electrolytic, PC
mounting (C1)
1 10µF 16VW electrolytic, PC
mounting (C2)
2 .047µF polyester or MKT (C3,
C4)
Resistors (0.25W, 1%)
1 1MΩ 2 10kΩ
1 20kΩ linear potentiometer, PC
board mounting
you might check that there is indeed
a 50Hz (ish) squarewave coming into
pin 14 of IC1 and that pins 7 and 8 go
high and low as they should.
Wheredyageddit?
Various kits are available from Oatley Electronics, who hold the copyright
on the PC board patterns.
They have the servo kit (all electronics, PC board and a case) for
$35.00; a dual oscillator/controller kit
(electronics, PC board and case) for
$14.00; a power supply (including the
110V supply suitable for ratting) for
$24 and, most importantly, they have
the German Motor/Gearbox for $20.00
each. Contact Oatley Electronics on
(02) 9584 3563, fax (02) 9584 3561 or
via www.oatleyelectronics.com SC
Capacitor Codes
Value IEC code EIA code
0.47uF
470n
474
0.1uF
100n
104
.047uF
47n
471
.022uF
22n
221
MAY 2001 75
|