Академический Документы
Профессиональный Документы
Культура Документы
Syllabus
Types of stepping motor: variable-reluctance, permanentmagnet, hybrid, single-phase.
Stepping motor drivers,
drivers H
H-bridge,
bridge resistor ballasting
ballasting,
chopper drives, drive sequences
Microprocessor control of stepping motors
Static
St
ti torque
t
characteristic,
h
t i ti dynamic
d
i response, resonance,
pull-in and pull-out characteristics, micro stepping
Stepping motor model, high-speed operation, simulation,
velocity-error
velocity
error plane diagrams
Closed-loop control of stepping motors
James Grimbleby
Stepping Motors
Stepping motors convert switched excitation changes to
precise increments of rotation
This property allows stepping motors to be used in
positioning systems without the need for feedback
Rotor positioning
R
i i i iis achieved
hi
db
by magnetic
i alignment
li
off rotor
and stator poles
There are 3 classes of stepping motor: variable-reluctance
motors permanent
motors,
permanent-magnet
magnet motors and hybrid motors
motors.
James Grimbleby
Soft iron
stator
t t
S
Soft iron
rotor
t
N
A
James Grimbleby
Induced
magnetisation
Soft
S
ft iron
i
rotor
Stator
stack A
James Grimbleby
Stator
stack B
Stator
stack C
A:
B:
B
B
A
A
C:
A:
C
C
A
James Grimbleby
James Grimbleby
Soft
S
ft iron
i
stator
S
N
S
N
A
James Grimbleby
B
B
Permanent
magnet rotor
S
School of Systems Engineering - Electronic Engineering
A+:
N
S
S
N
N
S
B+:
S N
S N
S N
S N
S
S
A:
A-:
S
N
N
S
S
N
B:
B-:
N S
N S
N S
N S
N
James Grimbleby
Soft iron
stator
N
S
A
James Grimbleby
S
N
S
Rotor: soft
iron +
permanent
magnet
Permanentt
P
magnet
N
Soft iron
stator
Soft iron
rotor
James Grimbleby
N
S
B
S N
S N
N S
N S
N
S
A
S
N
S
N
James Grimbleby
Permanent
magnet
Soft iron
stator
James Grimbleby
James Grimbleby
Single-Phase
Single
Phase Stepping Motor
Permanent
magnet rotor
Soft iron
stator
A
James Grimbleby
A
A
Single-Phase
Single
Phase Stepping Motor
S
A+:
A-:
James Grimbleby
H-Bridge:
H
Bridge: Voltage Drive
+V
Vs
Q2
Q1
James Grimbleby
D2
D1
D4
D3
Q4
Q3
Q2
D2
IL
Q1
James Grimbleby
D1
D4
Q4
ZL
D3
Q3
H-Bridge:
H
Bridge: Voltage Drive
Stator winding excitation:
I
L
R
V0
dI
R.I + L. = V0
dt
-t
I = I0 .1 exp
T0
James Grimbleby
V0
where : I0 =
R
L
T0 =
R
H-Bridge:
H
Bridge: Voltage Drive
Motor parameters: (type ID31 motor)
Number of rotor p
poles:
Rotor inertia:
Coupling
p g coeff:
Viscous damping:
Coulomb friction:
Stator winding resistance:
Stator winding inductance:
Nominal stator current:
Thus:
and:
James Grimbleby
Nr = 50
Jr = 1.1610-5 kg m2
Kc = 0.121 V rad-1s
Dr = 0.0006 Nmrad-1s
Fr = 0.000 Nm
Rw = 0.66
Lw = 1.52 10-3 H
Iw = 2.0 A
V0 = Rw Iw = 1.32 V
T0 = Lw / Rw = 2.3 ms
School of Systems Engineering - Electronic Engineering
Q2
D2
IL
Q1
James Grimbleby
D1
D4
Q4
ZL
D3
Q3
H-Bridge:
H
Bridge: Voltage Drive
Stator winding de
de-excitation:
excitation:
I
L
R
V0
dI
R.I + L. = V0
dt
-t
I = I0 .2 exp
1
T0
James Grimbleby
V0
where : I0 =
R
L
T0 =
R
H-Bridge:
H
Bridge: Voltage Drive
Low stepping rate:
James Grimbleby
H-Bridge:
H
Bridge: Resistor Ballast Drive
For the ID31 motor:
L 1.52 10 3
T0 = =
= 2.3 ms
R
0.66
Stepping
pp g rate should be less than 400 step/s
p
To increase the stepping rate it is necessary to reduce T0
Since it is not possible to reduce L the only alternative is to
increase R: an external ballast resistance is placed in series
with the winding
This reduces T0 at the expense of efficiency
James Grimbleby
H-Bridge:
H
Bridge: Resistor Ballast Drive
+Vs
Q2
Q1
James Grimbleby
D2
D1
D4
D3
Q4
Q3
H-Bridge:
H
Bridge: Resistor Ballast Drive
Use a series ballast resistance of 11.34 :
L 1.52 10 3
T0 = =
= 0.13 ms
R 11.34 + 0.66
Stepping
pp g rate is increased to 8000 step/s
p
To maintain a stator current of 2 A requires
q
a supply
pp y voltage
g
of 24 V
Static power dissipation has increased from 2.64 W to 48 W
The poor efficiency of resistor ballast drive limits application
to low power motors
James Grimbleby
H-Bridge:
H
Bridge: Chopper Drive
+V
Vs
Q2
Q1
James Grimbleby
D2
D1
D4
D3
Q4
Q3
Q2
D2
IL
Q1
James Grimbleby
D1
ZL
D4
D3
Q4
Q3
H-Bridge:
H
Bridge: Chopper Drive
Stator winding initial excitation:
dI
R.I + L. = V0 where : V0 >> R.I
dt
V0
I0 .L
I .t or : T0
V0
L
Winding Cu
urrent (A)
H-Bridge:
H
Bridge: Chopper Drive
76
76
e
2
0.13 ms 2.3 ms
James Grimbleby
Time
Q2
D2
IL
Q1
James Grimbleby
D1
ZL
D4
D3
Q4
Q3
H-Bridge:
H
Bridge: Chopper Drive
St t winding
Stator
i di freewheeling:
f
h li
dI
R.I + L. = V0 = 0
dt
L
-t
I = I0 .exp
where : T0 =
T0
R
Stator
S
a o cu
current
e decays with time
e constant
co s a T0 towards
o a ds zero
eo
By
y alternately
y applying
pp y g the full supply
pp y voltage,
g , and the
freewheeling, the stator current is maintained close to the
nominal current.
James Grimbleby
Q2
D2
IL
Q1
James Grimbleby
D1
ZL
D4
D3
Q4
Q3
H-Bridge:
H
Bridge: Chopper Drive
Stator winding de
de-excitation:
excitation:
dI
R.I + L. = V0
dt
V0
I = I0 .t
L
where
h
: V0 >> R.I
I0 .L
or : T0 =
V0
T0 is the time for the current to fall to zero, and is the same
as the excitation time
The current in the stator winding is normally sensed by
placing
l i a smallll resistor
i t iin series
i with
ith th
the source tterminals
i l off
Q1 and Q3
James Grimbleby
H-Bridge:
H
Bridge: Chopper Drive
Initial
excitation
it ti
Chopping
De-excitation
Because
ecause o
of magnetostriction
ag e os c o the
e motor
o o will ge
generate
e a e noise
o se
at the chopping frequency
To prevent this causing annoyance the chopping
frequencyy is normallyy chosen to be greater
g
than 25 kHz
James Grimbleby
H-Bridge:
H
Bridge: Chopper Drive
D l 2 A chopper
Dual
h
d
drive
i
James Grimbleby
H-Bridge:
H
Bridge: Chopper Drive
B+
0
1
0
0
A
0
0
1
0
B
0
0
0
1
B+
1
1
0
0
A
0
1
1
0
B
0
0
1
1
B+
0
1
1
1
0
0
0
0
A
0
0
0
1
1
1
0
0
B
0
0
0
0
0
1
1
1
Microprocessor Control
Microprocessor
system
step
dir
step
dir
step
dir
Sequencer
and drivers
step
dir
A
B
Motor
A
B
Other
axes
s7
di 0
dir=0
s0
di 1
dir=1
A
s1
di 1
dir=1
dir=0
dir=0
dir=1
s6
A1,B
,
dir=1
Half-step
sequence
A,B1
,
dir=1
dir=0
dir=1
s5
A1
dir=1
dir=0
dir=1
s4
dir=0
dir=0
dir
0
s3
B1
A1 B1
A1,B1
James Grimbleby
s2
= clock;
= dir;
/* inputs */
/
/
PIN
PIN
PIN
PIN
=
=
=
=
/* outputs */
16
17
18
19
A;
A1;
B;
B1;
Vcc
B1
B
A1
A
y0
y1
y2
Microprocessor Coordinator
Step class (base class) definition:
class step {
public:
step() {}
// step class constructor
~step() {}
// step class destructor
void up();
// move one step clockwise
void dn();
// move one step anti
anti-clockwise
clockwise
};
James Grimbleby
Microprocessor Coordinator
Step class (base class) implementation:
#include "step.h"
#define p ((volatile unsigned char *) ...
#d fi
#define
di bi 0x01
dir_bit
0 01
#define step_bit 0x02
void step::up() {
*p = dir_bit;
*p = dir_bit
dir bit | step_bit;
step bit;
*p = dir_bit;
}
void step::dn() {
*p
p = 0;
;
*p = step_bit;
*p = 0;
}
James Grimbleby
Microprocessor Coordinator
Move class (derived class) definition:
#include "step.h"
p
class move: private step {
private:
i t
long int pos;
p
public:
move() { pos = 0; }
// move class constructor
~move()
() {}
// move class constructor
void g
go(long
(
g int x,
, long
g int s);
);
// move to position x at speed s
};
James Grimbleby
Microprocessor Coordinator
Move class (derived class) implementation:
#include "move.h"
void move::go(long int x, long int s)
{
const long int q = 1000000 / s;
l
long
int
i
k
k;
while (pos != x) {
for (k = q; k > 0; --k);
k);
if (pos < x) {
up(); pos++;
}
else {
dn(); pos
pos--;
;
}
}
}
James Grimbleby
Microprocessor Coordinator
Delayy loop:
p
; D7 <- k
; D5 <
<- q
; for (k = q; k > 0; --k);
000078 2E05
MOVE.L D5,D7
00007 6002
00007A
BRA _44
44
00007C 5387
_43
SUBQ.L #--1,D7
00007E 4A87
_44
44
TST.L D7
000080 6EFA
BGT _43
Microprocessor Coordinator
Improved move class (derived class) implementation:
#include "move.h"
void move::go(long int x, long int s)
{
unsigned long int k = 0;
while (pos != x) {
k += s;
if (k > 1000000) {
k -= 1000000;
if (x > pos) {
up(); pos++;
}
else {
dn(); pos--;
}
}
}
}
James Grimbleby
k:
James Grimbleby
22
27156
6
68
83945
5
14
40734
4
59
97523
3
05
54312
2
51
11101
96
67890
0
42
24697
7
88
81468
8
33
38257
7
79
95046
6
25
51835
5
89382
24
01728
80
14073
36
26419
93
38764
48
51110
04
63456
60
75801
16
88147
72
00492
28
12838
84
25184
40
31
13578
8
85
56789
9
77
70367
7
s=123456:
123456
77036
68
64691
12
52345
56
40
00000
0
k:
40000
4
00
Microprocessor Coordinator
s 456789:
s=456789:
k += s;
;
if (k > 1000000)
k -= 1000000;
Microprocessor Coordinator
Each iteration of the while loop involves around 24 machine
instructions taking t=6s.
t=6s
The proportion of iterations generating a step is s/1,000,000
s/1 000 000
and varies from 0 to 1 (as s varies from 0 to 1,000,000)
The maximum step frequency is therefore 160,000 steps/s
and the frequency increment is 160
160,000/1,000,000
000/1 000 000 = 0.16
0 16
steps/s
There will be a jitter in the step pulses of t=6s
James Grimbleby
Microprocessor Coordinator
Main loop:
#include "move.h"
int main()
{
move s;
for (;;) {
delay(100000);
s.go(800, 800);
d l (100000)
delay(100000);
s.go(0, 1200);
}
return 0;
}
James Grimbleby
Hardware Implementation
32-bit
MicroLatch
processor
32
32
D-bus
D Q
(s)
ce
l
le
32-bit
32-bit
Adder
Register
oflo
A
3
32
sum
D Q
clk
B
32
Clock
step
t
(k)
Microprocessor Coordinator
-3
3
-2
2
-1
1
Steps
1
2
=2/4n
3
2 /
=2/n
T = T0 sin n
where n is the number of rotor teeth and is the rotor angle
James Grimbleby
-4
i = i0
-3 -2
Torque
q
-1
Steps
i = i0 / 2
-3 -2
Torque
2T0
T0
-1
Steps
Torque/Speed Characteristic
Pull-out
Torque
T0/2
Stepping Speed
Pull-out
Pull
out torque is the torque that the motor can generate at a
given stepping rate: if the load torque exceeds this then the
motor loses synchronisation
James Grimbleby
A+
AT0/2
-4
-3
-2
-1
=2/8n
2
T0
Tmin = T0 cos n.
= T0 cos =
8n
8n
4
2
James Grimbleby
T0
3
A+
-4
4
-3
3
Tavg =
James Grimbleby
-2
2
2n
-1
1
= -/4n
/ 4n
T0 cos n d =
/ 4n
A-
T0
1
=/4n
2T0
/4
2 2T0
cos d =
/ 4
0
0.0
Time (seconds)
0.1
0.2
Nr = 50
Jr = 1.1610-5 kg m2
T0 = 0.242 N m
f0 = 1/ 2
nT0 / Jr
= 162 Hz
Any attempt to step the motor at the resonance rate will lead
to loss of synchronisation
The transient response from one step will reinforce the
response from a previous step, and eventually the amplitude
will exceed two steps.
James Grimbleby
4
Rotor
position
( p )
(steps)
1
0
0.0
Time (seconds)
0.2
4
Rotor
position
(steps)
1
0
0.0
Time (seconds)
0.1
4
Rotor
position
(steps)
1
0
0.0
Time (seconds)
0.1
4
Rotor
position
(steps)
1
0
0.0
Time (seconds)
0.1
Damper rotor
Viscous fluid
Micro Stepping
Micro-Stepping
Micro-stepping involves interpolating between full or halfstep positions
This is achieved by linear control of the stator winding drive
currents
t
Micro-stepping
Micro
stepping provides greater precision and smoother
operation at low speeds, and eliminates resonance
Micro-stepping requires complex linear drives together with
DACs to set the winding currents
James Grimbleby
Micro-Stepping
Micro
Stepping
In sine-cosine micro-stepping
pp g the currents in the A and B
stator windings are given by:
i a = i 0 sin
i b = i 0 cos
Micro-Stepping
Micro
Stepping
=0
Torque
A
B
A
B
Steps
Equilibrium
position
=/3
/3
A+B
Torque
A+B
Steps
A
B
Equilibrium
position
James Grimbleby
=/6
Torque
A+B
Steps
Equilibrium
position
=/2
/2
A
Torque
A+B
Steps
Equilibrium
position
Micro-Stepping
Micro
Stepping
The apparent
pp
superior
p
p
precision of micro-stepping
pp g is only
y
realised in practice in the absence of significant coulomb
friction and load torque
The actual shape of the static torque curve is not exactly
sinusoidal; this results in the micro steps being non-uniformly
spaced
DAC quantisation will also result in non-uniformly spaced
micro
i
steps
t
Very high step rates are necessar
Ver
necessary to achie
achieve
e normal rotation
speeds
James Grimbleby
Start/Stop Operation
The pull-out
Th
ll t torque-speed
t
d characteristic
h
t i ti may extend
t d tto
10,000 or 20,000 steps/s
However, a motor cannot be started or stopped at these
speeds
To move a large number of steps quickly a motor must be
started at low speed and then accelerated to high speed
The range of load torques and speeds for which the motor
will start and stop without loss of synchronisation is known
as the pull-in characteristic
James Grimbleby
Start/Stop Operation
C
Consider
id a motor
t iinitially
iti ll att restt
The first step of a sequence will cause the motor to
accelerate and it must move far enough, and attain sufficient
speed for synchronisation to be maintained
speed,
If the motor moves 1/2 step during the period of the first step
then a high torque will continue to be available during the
next step
The maximum pull-in
pull in torque occurs at zero speed, and is the
same as the zero-speed pull-torque
James Grimbleby
Start/Stop Operation
The maximum pull-in speed occurs when the load torque is
zero and all the motor torque is available for acceleration:
Jr
Integrating:
d2
dt 2
= Tavg =
2T0 2
1 2T0 2 2 1 2
t .
=
2 Jr
2 4n
t
2J r
4nT
T0 2
Jr
James Grimbleby
Start/Stop Operation
For the ID31 Motor:
Number of rotor poles:
Rotor inertia:
P k torque:
Peak
t
Nr = 50
Jr = 1.1610-5 kg m2
T0 = 0.242
0 242 N m
Maximum pull-in
pull in speed:
2 nT0 2
fmax =
Jr
= 773 step/s
Jr
James Grimbleby
Start/Stop Operation
Torque
Pull-in
Torque
Pull-out
Torque
Start at low
p
speed
Stop at low
speed
James Grimbleby
Stepping Speed
Accelerate to
high speed
Run at high
p
speed
Decelerate to
low speed
Start/Stop Operation
Slew
Speed
Speed
Run at slew
speed
Base
Speed
Time
Start at base
Decelerate to
speed
base speed
Accelerate to
slew speed
James Grimbleby
Stop at low
speed
Start/Stop Operation
Slew
Speed
Speed
Base
Speed
Time
Guard steps
Count steps in acceleration phase: assume that the same
number of steps will be required for deceleration
James Grimbleby
Start/Stop Operation
Slew
Speed
v
Speed
Slope =
deceleration (d)
Area = remaining
steps (n)
Base
Speed
vb
Time
1
n = t (v + v b )
2
t
v vb = d t
v = v b2 + 2nd
James Grimbleby
ia
va
ea
di a
v a = Ri a + L
+ ea
dt
di b
v b = Ri b + L
+ eb
dt
James Grimbleby
a = m cos n
b = m sin n
da
d
ea = m
= mn m sin n .
= K c sin n
dt
dt
d b
d
eb = m
= mn
m cos n .
= K c cos n
dt
dt
where m is the number of turns on the stator winding
James Grimbleby
ia
sin n + i b
cos n
dt Jr Jr
Jr
Jr
di a 1
Kc
R
= va ia +
sin n
dt L
L
L
di b 1
Kc
R
= vb ib
cos n
dt L
L
L
2Vs / 4
4Vs
2 2Vs
=
sin =
= 0.9Vs
cos d =
/ 4
4
James Grimbleby
2Vs / 2
4Vs
4Vs
a1 =
sin =
= 1.3Vs
cos d =
/ 2
Half
H
lf step:
t
+Vs
-Vs
2Vs 3 / 8
4Vs
3
a1 =
sin
= 1.2Vs
cos d =
8
3 / 8
James Grimbleby
C
Current
t iin stator
t t winding
i di A
A:
i a = i 0 sin(nt + )
or:
James Grimbleby
v 0 sin( + )
i 0 cos =
2 2 2
R +L n
RK c
R 2 + L2n 2 2
K c v 0 sin( + )
2
2 2 2
R +L n
RK c2
R 2 + L2n 2 2
M i
Maximum
motor
t torque:
t
T =
James Grimbleby
Kcv0
2
2 2 2
R +L n
RK c2
R 2 + L2n 2 2
Kcv0
2
2 2 2
R +L n
RK c2
R 2 + L2n 2 2
2V
0.0
5V
10V
James Grimbleby
20V
10000
Rotor speed (steps/s)
School of Systems Engineering - Electronic Engineering
20000
Steps
s
Time
0.0s
James Grimbleby
0.5s
Steps
s
Time
0.0s
James Grimbleby
0.2s
Steps
s
Time
0.0s
James Grimbleby
0.1s
Steps
s
Time
0.0s
James Grimbleby
0.5s
Velocity-Error
Velocity
Error Plane
It is convenient to display
p y the p
performance of a stepping
pp g
motor on the velocity-error plane
This plane
Thi
l
has
h positional
iti
l error as the
th horizontal
h i
t l axis,
i and
d
velocity as the vertical axis
A velocity-error plane trajectory always finishes at the zeroerror zero-velocity point if the motor remains synchronised
error,
It is therefore obvious from a simulation whether or not
synchronisation has been lost
The velocity-error plane is sometimes called the phase
plane
James Grimbleby
-400
00
0 steps/ss
4
4000
Velocity-Error
Velocity
Error Plane Trajectories
-4 steps
0 steps
+4 steps
Low damping coefficient: Dr=0.0006
=0 0006
James Grimbleby
-400
00
0 steps/ss
4
4000
Velocity-Error
Velocity
Error Plane Trajectories
-4 steps
0 steps
+4 steps
Hi h damping
High
d
i coefficient:
ffi i t Dr=0.006
0 006
James Grimbleby
0 steps/ss
2
2500
Velocity-Error
Velocity
Error Plane Trajectories
-250
00
Initial change in
command position
James Grimbleby
-2 steps
0 steps
10 steps at 25 steps/s
School of Systems Engineering - Electronic Engineering
-250
00
0 steps/ss
2
2500
Velocity-Error
Velocity
Error Plane Trajectories
James Grimbleby
IInitial
iti l change
h
iin
command position
-2 steps
0 steps
10 steps at 120 steps/s
School of Systems Engineering - Electronic Engineering
-250
00
0 steps/ss
2
2500
Velocity-Error
Velocity
Error Plane Trajectories
James Grimbleby
Initial change in
command position
-2 steps
0 steps
10 steps at 130 steps/s
School of Systems Engineering - Electronic Engineering
-250
00
0 steps/ss
2
2500
Velocity-Error
Velocity
Error Plane Trajectories
James Grimbleby
Initial change in
command position
-2 steps
0 steps
10 steps at 140 steps/s
School of Systems Engineering - Electronic Engineering
0 steps/ss
2
2500
Velocity-Error
Velocity
Error Plane Trajectories
-250
00
Initial
a cchange
a ge in
command position
James Grimbleby
-2 steps
0 steps
10 steps
t
att 500 steps/s
t
/
School of Systems Engineering - Electronic Engineering
0 steps/ss
2
2500
Velocity-Error
Velocity
Error Plane Trajectories
-250
00
Initial
a cchange
a ge in
command position
James Grimbleby
-2 steps
0 steps
10 steps
t
att 800 steps/s
t
/
School of Systems Engineering - Electronic Engineering
0 steps/ss
2
2500
Velocity-Error
Velocity
Error Plane Trajectories
-250
00
Initial
a cchange
a ge in
command position
James Grimbleby
-2 steps
0 steps
10 steps
t
att 900 steps/s
t
/
School of Systems Engineering - Electronic Engineering
0 s
steps/s
4000
0
Velocity-Error
Velocity
Error Plane Trajectories
-2 steps
0 steps
B
Base=400,
400 slew=4000,
l
4000 accel=32000,
l 32000 d
decel=48000
l 48000
James Grimbleby
0 s
steps/s
4000
0
Velocity-Error
Velocity
Error Plane Trajectories
-2 steps
0 steps
B
Base=400,
400 slew=6000,
l
6000 accel=32000,
l 32000 d
decel=48000
l 48000
James Grimbleby
Closed-Loop
Closed
Loop Control
Stepping
pp g motor systems
y
are simple,
p robust and very
y reliable
Open-loop stepping motors lose synchronisation as a result
of:
excessive load torque
operation at the resonant step rate
too rapid acceleration or deceleration
In open-loop
open loop systems loss of synchronisation can be neither
detected nor corrected
This problem can be overcome by the use of positional
feedback
James Grimbleby
Closed-Loop
Closed
Loop Control
In closed-loop
p stepping
pp g motor systems
y
an incremental shaft
encoder is used to sense rotor position
Alternatively
Alt
ti l the
th currentt waveforms
f
iin th
the stator
t t windings
i di
can
be used to sense position
The information gained can be used to detect and correct
loss of synchronisation
The excess torque
q capability
p
y that must be built into open-loop
p
p
systems is no longer required
Closed-loop stepping motor systems share the reliability and
robustness of open-loop systems
James Grimbleby
Open-Loop
Open
Loop Control
Coordinator
step
di
dir
step
dir
step
dir
Sequencer
step
di
dir
A
B
Motor
A
B
Other
axes
Closed-Loop
Closed
Loop Control
Coordinator
Sequencer
step
p
dir
step
dir
step
dir
step
p
dir
step
dir
cpos
James Grimbleby
Motor/encoder
A
B
A
B
step
dir
mpos
Closed-loop
controller
xpos
Open-Loop
Open
Loop Control
T
Torque
Position
( steps)
-5
-4 -3 -2 -1
4 5
Closed-Loop
Closed
Loop Control
T
Torque
Position
( steps)
-5 -4
-3 -2 -1
Closed-Loop
Closed
Loop Control Algorithm
Closed-loop
Closed
loop control algorithm to maintain a position of 0:
if (mpos < -2)
2)
xpos = mpos + 2;
else if (mpos > 2)
xpos = mpos - 2;
else
xpos = 0;
Closed-Loop
Closed
Loop Control
T
Torque
Position
( steps)
-5 -4
-3 -2 -1
Closed-Loop
Closed
Loop Control Algorithm
Closed-loop control algorithm to maintain a position of
cpos:
if (mpos - cpos < -2)
xpos = mpos + 2;
else if (mpos - cpos > 2)
xpos = mpos - 2;
else
xpos = cpos;
Provided that the error does not exceed 2 steps
p the
behaviour is identical to open-loop
If error exceeds 2 steps the excitation changes to provide
maximum correcting torque
James Grimbleby
Closed-Loop
Closed
Loop Control Algorithm
Open loop:
Closed loop:
-4000
Error:
-2
-6
6 -4
4
-2
2
-4000
Error:
James Grimbleby
-6 -4
4000
Spee
ed
Operation at the
resonantt step
t rate
t
(20steps at
153steps/s)
Sp
peed
4000
Closed-Loop
Closed
Loop Control Algorithm
4000
Sp
peed
Open loop:
Start-stop
operation
(100steps at
4000 t
4000steps/s)
/ )
-4000
Error:
-4 -2
-6
6
-4
4
Spee
ed
4000
Closed loop:
-4000
Error:
James Grimbleby
-6
-2
2
Closed-Loop
Closed
Loop Control Algorithm
4000
Sp
peed
Open loop:
Disturbance
response (0.5Nm
for 10ms)
-4000
Error:
-6
-4 -2
-6
6
-4
4
Closed loop:
Spee
ed
4000
0
-4000
Error:
James Grimbleby
-2
2
Stepping Motors
J. B. Grimbleby October 08
James Grimbleby