On 2/28/15 9:02 AM, Patrick Greenlee wrote:
That is why it is called a stepper motor. Its motion is stepwise, not
continuous, think digital not analog. If the steps are small enough and
are taken rapidly enough you can closely simulate the smooth turning of
an analog motor. Of course an advantage of the stepper motor is you can
keep track of where you are by counting the steps and not need a shaft
encoder or other method of tracking position in a system driven by an
analog motor. Stepping motors make position servos simpler.
We're getting a bit off topic of antennas, but it's relevant in the
sense that these things are also useful for remote tuners and in some
cases, antenna positioners (staying away from the rotor/rotator
controversy).
With a modern microstepping drive that controls the current into the
stepper windings with a DAC (or PWM equivalent), the motion is truly
continuous with no steps. It's no different than a synchronous AC motor
(or the ever popular SelSyn/Synchro motors used for remote position
indication, particularly wtih tons of cheap surplus synchros available
postwar)
This has the advantage that you don't have to worry about things like
torsional resonance (or, at least not worry as much.. a rapid velocity
ramp will still excite the resonance) AND the drive is much more
efficient than the old "big resistor and high voltage" simulating a
constant current drive type stepper drive.
Since a microstepping drive is really an analog drive, you can also set
the position much finer than a step. 256 microsteps per physical step
is common, giving you 51,200 steps/revolution with a common 200 step/rev
motor.
In low torque, low moment of inertia/mass, high friction applications
(the SteppIR is one of these, I think), you can use a very simple drive:
discrete steps (no microstepping) and not worry about response time: 4
transistors, 1 for each phase, and some simple logic.
The challenge with steppers is that they are a "relative" positioner:
you need something to tell you when you are at "zero". The low tech way
to do it is to run the motor until the load is against a mechanical stop
(popular with old floppy drives) or with a very simple encoder (e.g. an
opto and a "flag" or hole in the load) to give you a zero indication.
The other challenge is that if you don't have feedback, you don't know
if you "missed a step": if you've designed with plenty of margin this
isn't a problem(e.g. A stepper driving a variable capacitor in a tuner).
From first hand experience, it is very hard to use a stepper and
corresponding drive in a closed loop "servo" system. The dynamics of a
stepper (even with a smart drive) are quite different from a permanent
magnet motor, so all the usual control system schemes (PID controllers
and the like) really don't work. I've had much better luck with "open
loop control and confirm with feedback" and also using the feedback to
"tune" the open loop control stuff. Some feedback also lets you not
worry about the "where is zero" position problem.
In general, steppers are larger and consume more power for a given
torque output than a DC permanent magnet motor, even if you have to add
gears to the PM motor. Partly it's because there are 3,4,or 6 windings
inside the stepper and not all of them are energized at once. In the PM
motor, the entire field winding is used all the time, so you have better
utilization of the copper and iron.
If someone wants to build their own servo controller or stepper
controller these days, it's a lot easier. A run of the mill Arduino has
PWM outputs as well as ADCs and some have logic to handle a quadrature
encoder. There's off the shelf plug in "shields" that have 2 channel
PWM amplifiers using parts like the L298 H bridge which are quite nice
for driving 12V (and maybe 24V..). The L298 has about 1.4V total drop
through the transistors, so isn't so good for high power low voltage
applications.
There are a fair number of Arduino (or PIC) based antenna positioner
projects out there. I think it would be pretty easy (if someone's not
already done it) to hook up one of these to make a controller for one of
the venerable positioners we use on towers. Drive an H bridge or relay,
read the position pot. You could put it at the base of the tower (or
the top), just run power and use wireless serial or network to send the
commands and get feedback.
Things to be aware of when rolling your own: Make sure you have
reliable safety stops of some sort. If your position encoder fails, and
your controller keeps trying to move the load, you want it to stop
before it wraps the cable 17 times and rips it loose. Or if there's a
software bug. There are some simple, and clever, mechanical stop
schemes that allow for more than 360 degrees of rotation. A
And one of the cool things about putting a microcontroller into the mix
is that it can figure out which way to turn, without worrying about
putting an extra wrap into the cable or hitting the mechanical stops
trying to go the "wrong way" from 350 degrees to 10 degrees.
The only thing I wish was more readily available as an off-the-shelf
add-on for the arduino type widgets was a opto isolated serial interface
for long wired connections (like RS422 or current loop). Sure, you can
make your own with any of a variety of optos, but it's one more set of
parts to put on a piece of perfboard and wire up. I'd love a module
with 4 screw terminals on one side that just plugs into the Arduino.
Maybe I'll just have to design one.
_______________________________________________
_______________________________________________
TowerTalk mailing list
TowerTalk@contesting.com
http://lists.contesting.com/mailman/listinfo/towertalk
|