Stepper motor question

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View

This is an electricity question. There are two sides to a unipolar stepper,
call them A-B, and C-D. In my case, I'm driving a motor with 4 n-channel
low side FETs. The V+ is 24V and the motor is rated for 12V continuous.

This simple driver has no facility for regeneration or capturing energy
from the inductive kickback. When driving full-step, this this stalls at
a fairly low RPM.

Is there any sense in doing a make-before-break or break-before-make when
switching phases A-B or between C-D? I've tried to figure this out but
my basic electricity knowledge is pretty weak.

1 0 1 0
1 0 0 1
0 1 0 1
0 1 1 0

would become

1 0 1 0
1 0 0 1
0 1 0 1
0 1 1 0

Where transition would be one of

1 1 1 0
1 1 0 1
1 0 1 1
0 1 1 1

Re: Stepper motor question
oN 15-Dec-03, Bryan Hackney said:

Quoted text here. Click to load it

When you're trying to drive a stepper near or above its rated limit
(I've forgotten the correct jargon), it's not a simple electricity
question. Back when I was dealing with such things (nearly 20 years
ago), the best info I was able to find was, IIRC, from the University
of New Hampshire. It was a loose-leaf publication that filled a 3" ring
binder with a great deal of calculus.

The difficulty is that as you increase the frequency, you are unable to
couple much energy to the stepper coils, because of their high
inductance. The basic trick is to raise the impedance of the source to
the coils, as I recall, but there are many little tricks that come into
play on the path to achieving the best coupling.

Obviously, from the performance of inkjet printers, the art has been
reduced to solid science, but I'm not sure where to look for definitive
references these days.

Posted with XanaNews Version

Re: Stepper motor question
Quoted text here. Click to load it

Well, errr, that's probably why inkjet printers *don't* use steppers
anymore. At least not for the printing head. An ordinary but quiet DC motor
is used and the printing is synchronized with the head movement by an
optical grating.


Re: Stepper motor question
oN 15-Dec-03, Meindert Sprang said:

Quoted text here. Click to load it

Well, there you go. Shows that I'm out of touch with *that* technology,
at least. <g> Thanks for the info.

Posted with XanaNews Version

Re: Stepper motor question
On Mon, 15 Dec 2003 19:03:21 +0100, the renowned "Meindert Sprang"

Quoted text here. Click to load it

I had a look at a cheap inkjet printer the other day at Sam's Club (I
think it was around $40 or $50 US). There was a very thin and very
flimsy ribbon of clear plastic (probably polyester) running the width
of the carriage that was printed with a fine pattern of vertical
lines. Hard to dignify it with the term "optical grating" but that was
its function.

Best regards,
Spehro Pefhany
"it's the network..."                          "The Journey is the reward"             Info for manufacturers:
We've slightly trimmed the long signature. Click to see the full one.
Re: Stepper motor question
Hi, If you break before make you get a half stepper. Steppers are much harder
to drive than you would think. To get speed you need to use acceleration and
deacceleration to stop it again otherwise it will lose steps and stall. You
need to control the back emf from the motor in some way. Most simple drive use
a diode across each coil half.

Re: Stepper motor question
Quoted text here. Click to load it

The induction of the coils make the current start from zero
and then rise to 24V/dc-resistance. When you go fast, the current
is already switched off before it can reach maximum value.

So, if you want to go fast *and* achieve a high current through
the coils, you need to start with a higher voltage. 48V, 96V,
whatever it takes. But using high voltages cause problems when
the speed is too low, as the current rises too much and overheats
the motor.... more advanced stepper controllers use PWM to control
the current, with a high voltage power supply. With simple drivers
such as yours, speeds and torques are rather limited, alas.

Thanks, Frank.
(remove 'x' and 'invalid' when replying by email)

Re: Stepper motor question
On Mon, 15 Dec 2003 16:21:39 GMT, Bryan Hackney

Quoted text here. Click to load it

Frank's answer is a good one.  I would only add that since your motor
is rated for 12V continuous, you can't drive the motor directly with
24V without some dropping resistors in series with the coils.  Pick a
resistor equal to the DC resistance of your coils and then you will
get exactly 12V when stopped.  But this not be optimal in getting
started, where 24V would be really useful.  To benefit from the 24V
supply and protect the coils from burnout when stopped, use PWM to
control the current.  However, the benefit of 24V drive may not be as
much as you might think.  During the first part of the L/R
time-constant, when a coil is first energized, most of the 24V will be
applied to the coil anyway.  It is only after a significant current
starts to flow that the dropping resistor starts to reduce the voltage
applied to the coil.

As far as unipolar phase sequencing, the most power will be found by
using the full-stepping sequence that you gave:

Quoted text here. Click to load it

Half-stepping is smoother, but a little weaker in average torque.

There is no benefit from having make-before-break, because coils A and
B are magnetically just one coil.  Exciting both A and B is just like
exciting neither coil, as far as its effect on the torque.  And
exciting B before turning off A will not get you a head-start on the
L/R time constant of B because A and B are inductively coupled, with
no net magnetic field if both A and B are carrying current.

-Robert Scott
 Ypsilanti, Michigan
(Reply through newsgroups, not by direct e-mail, as automatic reply address is

Re: Stepper motor question

Quoted text here. Click to load it

It's intermittent duty, so the rating is OK. In fact, the curves I have
for torque for my selected motor are for a 5V motor driven with 40V.

Quoted text here. Click to load it

That's what I thought...

Quoted text here. Click to load it

Not much more insight today, except maybe a magic component ????. Perhaps
opposed zeners (Vz > V+).

|              Coil
|      ______________________
|      |                    |                    |/|
|          L            R                        |\|
|______0)0)0)0)0)___/\/\/\/\____A_____|______| N-FET |_____GND
|                                     |
|                                     |
|                                     |
|                                     |
|                                    ????
|                                     |
|                                     |
|                                     |
|                                     |
|                                     |
|                                     |
|______0)0)0)0)0)___/\/\/\/\____B_____|_____| N-FET |_____GND

Quoted text here. Click to load it
Quoted text here. Click to load it

Re: Stepper motor question
On Tue, 16 Dec 2003 06:25:51 GMT, Bryan Hackney

Quoted text here. Click to load it

What is it that makes it intermitent duty?  That is normally insured
by the controller, whose design you were discussing.  Are you going to
ensure that drive control is removed as soon as the stepper gets the
desired position?  Or are you going to interrupt the drive based on
current feedback?  In some applications it is necessary to keep some
holding current flowing to keep the stepper from moving when it is
supposed to be stopped.

It is typical for 5V motors to be driven by 40V supplies, but only by
controllers that do ensure that 40V will not be applied when stopped.
In fact, even if the stepper is moving slowly, the current could rise
to damaging levels at each step if there isn't any feedback from
current monitoring, or some other way to limit the duration of the
applied 40V.

-Robert Scott
 Ypsilanti, Michigan
(Reply through this forum, not by direct e-mail to me, as automatic reply
address is fake.)

Re: Stepper motor question

Quoted text here. Click to load it

Exactly. It moves short distances infrequently. There is no holding
current - a relay shorts all phases to assist in holding position.

Quoted text here. Click to load it

I may be able to design a better controller or use a better one, but I'm
stuck with this simple drive method for a while.

Re: Stepper motor question
Hi, your shorting relay will have no effect on holding ability.

Re: Stepper motor question

Quoted text here. Click to load it

My bench testing proves otherwise. I know what you are saying, but it
does seem to provide a slight holding.

Rotate a free stepper _slowly_, and feel the detents. Now, short the
phases and do the same, as slowly as possible. A single click between
detents requires slightly more torque. This is from my perception, not
from detailed measurements, but I believe there is a slight holding.

If you cannot accept this, I will try to perform some measurements, I
I can figure out how.

Re: Stepper motor question
Hi, yes that is quite so, but the motor is not holding is it?

Re: Stepper motor question
On Tue, 16 Dec 2003 15:57:42 GMT, Bryan Hackney

Quoted text here. Click to load it

While shorting the coils may offer some resistance to the motor
turning (where the motor acts like a generator), that resistance is
dependent on speed.  Very slow rotation of the stepper will see
virtually no difference between the coils shorted and the coils open.
It will do nothing to hold position.

-Robert Scott
 Ypsilanti, Michigan
(Reply through this forum, not by direct e-mail to me, as automatic reply
address is fake.)

Re: Stepper motor question
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031007
X-Accept-Language: en-us, en
MIME-Version: 1.0
Newsgroups: comp.arch.embedded
Subject: Re: Stepper motor question
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 16
X-Trace: 1071596451 ST000 (Tue, 16 Dec
12:40:51 EST)
NNTP-Posting-Date: Tue, 16 Dec 2003 12:40:51 EST
Organization: SBC
Date: Tue, 16 Dec 2003 17:40:51 GMT
Xref: comp.arch.embedded:182266

CBarn24050 wrote:
Quoted text here. Click to load it

Here's my 2 cents worth.
Zowie! 40V on a 5V motor, That may be a bit much.
The way I understand it is that when the mosfet first turns on, the current the
current in the winding will ramp up in fairly linear fashion until it reaches the
maximum defined by the supply voltage and the winding resistance. In order to
get the
motor to move as quickly as possible you need to get the current to reach the
rated current as quickly as possible. The rate at which the current ramps up is
defined by the law of inductance. V=L(di/dt) where V is the applied voltage, L
is the
inductance, di is the change in current, and dt is the time that the voltage is
applied. You can rearrange the equation slightly to di/dt=V/L, where di/dt
the rate of increase in winding current. Since L is fixed by the motor winding
only way to increase di/dt is to increase the applied voltage. The problem is
with a high supply voltage the current will reach an excessively high value if
it is
left applied too long. That's where the current limiting resistors can help. For
example, with a 5V 1A rated motor running with a 40V supply you would need a
resistor of (40V-5V)/1A = 35 ohms in order prevent burning out the windings or
demagnetizing the magnets. It works better to run the motor with a higher
voltage and
limit the current with a resistor because when the voltage is first applied
turned on) the inductance will prevent any current from flowing. With no current
flowing there is no voltage drop in the limiting resistor which results in the
supply voltage appearing across the motor and from the law of inductance we know
this will result in the current ramping up at a higher rate. As the current
increasing the voltage drop across the limiting resistor starts increasing
in the voltage across the motor decreasing. The net effect is that di/dt starts
very high and decreases as the voltage across the motor decreases.
A much better method is use use an active current limiter. An active current
will maintain the full 40V across the motor until the current reaches the
maximum set
in the limiter. This will yield much better results than a simple resistor since
rate of current rise will be very high right up to the point where the current
reaches maximum.
Yes, shorting the windings will make it very slightly harder to turn the motor,
even a small holding current would be better. I don't know if it's done, but I
think some type of foldback limiting might be useful for supplying a smaller than
maximum rated curent for holding the motor position.


Site Timeline