-
MODELING A DC MOTOR FOR SIMULATION WITH PSPICE
1. Equations for a separately excited dc motor
The main equations for a dc motor whose speed is controlled by
varying the
armature voltage while the field current is kept constant are
shown below.
aa
aaaa EdtdI
LIRV ++= (1)
ma KE = (2)
mm
loadelec BdtdJTT ++= (3)
ae IKT = (4)
Equation (1) represents the armature circuit, where Va, Ia, Ra,
La and Ea are the
average voltage applied to the armature, the average armature
current, the armature
resistance, the armature inductance and the induced emf in the
armature (speed voltage)
respectively. The latter, as shown in (2), varies linearly with
the motor speed (m) given
in rad/s if one assumes that the flux () is constant, what is
quite reasonable since the
field current is kept constant.
Equation (3) presents the dynamics of the mechanical part of the
motor and load.
It shows that the electrical torque (Telec) is equal to the load
torque (Tload) plus the inertial
and the friction torques. The constants J and B are the moment
of inertia (kgm2) of the
rotating masses and friction coefficient (Nms). As one can see
in (4), the electrical torque
is a function of the armature current.
Example #1 - Steady-state characteristics of a dc drive
Consider a separately excited dc motor supplied by a dc-dc
step-down chopper. What is
the chopper duty cycle so that one obtains a speed of 1000 rpm
(104.72 rad/s)? The
parameters of the chopper, motor and load are as follows:
- Chopper: Supply voltage of 440 V and switching frequency of
500 Hz.
-
- Motor: PShaft = 26 kW, Van = 400 V, Ian = 75 A, Ra = 0.432 ,
La = 5.53 mH
and n = 1800 rpm (188.5 rad/s). The friction torque is
proportional to the
speed.
- Load: The load torque is proportional to the speed, absorbing
a mechanical
power equal to the rated power of the motor at rated speed.
Solution:
The duty cycle of the chopper is calculated as:
? , 440 , 7.104_7.104_
7.104 === aSupplySupply
am VVVV
VD
? ?, , 7.104_7.104_7.104_7.104_7.104_ ==+= aaaaaa EIERIV
? ,7.104_7.104_ == KKE ma
The factor K is constant and is calculated for the rated
condition. From (1) - (2):
Nm/A 95.1188.5
432.0 x 75400 ==
=mn
aanan RIVK
V 22.2047.104_ =aE
The armature current at the desired speed is calculated from (3)
(4).
? ?, , 7.104_7.104_
7.104_7.104_7.104_7.104_ ==
+== fricload
fricloadeleca TTK
TTK
TI
Nm 6.76 Nm, 93.137 , 104.7_x_
x_ ==== load
n
nloadn
mn
mloadnload T
PTTT
The friction torque at rated speed is obtained from the power
balance equation.
Nm 33.8 ,2x_
x_ =
==n
naanananfricn
mn
mfricnfric
PRIIVTTT
Nms 0.0442 Nm, 63.47.104_ ===
mn
fricnfric
TBT
AIa 66.4195.163.46.76
7.104_ =+
=
V 22.22222.2040.432 x 66.417.104_ =+=aV 0.50544022.222
7.104 ==mD
-
2. Creating a simplified model of a dc motor for PSpice
simulations
Figure 1 shows a model of a dc motor. It was implemented with
basic blocks of
PSpice according to the equations that represent the dynamics of
the machine. The
average value of the voltage applied to the armature winding can
be controlled with a
simple VPULSE voltage source. The armature winding is modeled
with a resistance, an
inductance and a Voltage Controlled Voltage Source, block E of
PSpice. This models the
effect of the motor speed on the induced emf in the armature or
speed voltage (Ea). The
gain of block E is the K factor of the motor.
The modeling of the armature winding is straightforward. The
input voltage is the
sum of the voltage drops across the series impedance and speed
voltage of the armature.
For the modeling of the mechanical part of the motor, one can
represent the electrical
torque, by a Current Controlled Current Source, block F of
PSpice. Thus, the other
torques should also be represented by currents that flow in
parallel branches. The
magnitude of the voltage across the three branches is
numerically equal to the speed of
the dc motor. Under this assumption, the friction torque can be
emulated by a resistor
with a value that is equal to the inverse of the friction
coefficient (B). The same idea
applies to the representation of the load torque when it is a
function of the speed of the
motor. The inertial torque can be represented by a branch with a
capacitor, since its value
depends on the variation of the speed of the motor. The value of
the capacitor should be
equal to the moment of inertia of the rotating masses (J) in
kgm2.
Fig. 1 Model of a dc motor using PSpice.
-
Figure 2 shows the transient response of the armature current
and motor speed
during start-up with rated armature voltage and after the
armature voltage is reduced to
222.22 V, that according to Example #1, should yield a motor
speed of 104.72 rad/s. One
can see the large positive armature current during start-up and
the negative armature
current that flows in the circuit when the armature voltage is
decreased. In such a case, a
regenerative braking takes place and the machine works as a
generator, converting kinetic
energy from the rotating masses
= 2
21 JEk into electrical energy that is sent to the
converter - dc bus that is feeding the machine.
Time
0s 0.2s 0.4s 0.6s 0.8s 1.0s 1.2s 1.4s 1.5sI(La)
-1.0KA
0A
1.0KA
SEL>>
(741.438m,75.403)
(783.475m,-261.746)
(32.988m,758.211)
V(wm_radps)0V
100V
200V
(1.4914,104.745)
(736.288m,188.431)
Fig. 2 Transient response for the system considering J = 1
kgm2.
A motor drive usually employs a main control loop, for
regulating the speed of
the motor, and a secondary control loop that is intended to
limit the current during start-
up or for avoiding overloading of the system. These systems are
often of the cascade or
parallel types as shown in Figs. 3 and 4. In the cascade case,
one designs first the inner
(current) loop and then the outer (speed) loop, with a lower
crossover frequency. Note
that the reference for the current is the output of the speed
controller and is limited to a
safe value by a limiter. In the parallel configuration, the two
control loops are designed
-
independently. A commutation system, with OR logic based on
diodes, selects the output
signal of the controller with lower magnitude to be the PWM
modulating signal.
Fig. 3 Cascaded control loops.
Fig. 4 Parallel control loops.
3. Transfer functions of a drive system for a dc motor
The following transfer functions can be derived for a dc
motor.
++
+
+
=
1 111
)()(
mamaa
a sssJL
KsVs
(5)
++
+
+
+
=
1 111
1
)()(
mamaa
m
a
a
sssL
s
sVsI
(6)
-
where: ( )21
and ,
K
JRBJ
RL a
mma
aa === .
Considering that the dynamics of the motor and load are much
slower than the
dynamics of a step-down dc-dc converter, the latter and its PWM
modulator can be
modeled by a simple gain ST
Supply
cont
achop V
VsV
sVsG )()()( == .
)(sVcont is the control or modulating voltage of the PWM and is
the peak
value of the carrier waveform, usually a ramp or sawtooth, which
presents a minimum
value equal to zero.
STV
In order to measure the motor speed, a dc tachometer with a
rated input to output
relationship of 188.5 rad/s to 10 V is used. It can be
represented by a gain
A current transducer is also required in the drive. Considering
that the
time constant of the armature (
( .053.0)( = sH )
a) is much bigger than the switching period of the dc-dc
converter (T), no signal filters are required and the current
transducer can be modeled by
a simple gain ( ).1.0)( =sHi
-
4 Design of the controller for the Current Loop
The uncompensated loop transfer function for the current loop,
including the
PWM modulator, the converter, the motor and the current sensor
is given by
i
mamaa
m
ST
Supply
cont
meaa KsssL
s
V
VsV
sI
++
+
+
+
=
1
_
111
1
)()(
(7)
The frequency response of the loop transfer function considering
J = 1 kgm2 is
20 log TFPIAn.
freqn0.1 1 10 100 1 103 1 104
40
20
0
20
40
arg TFPIAn rtd.
freqn0.1 1 10 100 1 103 1 104
100
50
0
50
100
Fig. 5 - Bode Diagram of the loop transfer function for current
(MATHCAD).
For a crossover frequency of 46 Hz (289 rad/s) one calculates
the gain as 8.4 dB
and the phase as 74.88 . In order to achieve a phase margin of
45 with a type 2
controller, the k factor and the frequencies of the zero and
pole are calculated from:
oo 88.2990 =+= TFPIApmboost (8)
-
73.12
45tan =
+= boostk o (9)
rad/s 500 and rad/s 167 ==== cpc
z kk
(10)
The dc gain of the controller (Kci) can be calculated as the
opposite of the gain of
the partially compensated (Kci = 1) loop transfer function at
the crossover frequency. In
MATHCAD it was calculated as 35.92 dB, yielding Kci = 62.5. The
Bode plot of the
controller and compensated loop transfer function are shown in
Fig. 6.
Fig. 6 - Bode Diagram of the current controller and compensated
loop transfer function.
The simulation with PSpice to verify the dynamic performance of
the controller
was carried out with the schematics shown in Fig. 7, that
resulted in the waveforms
shown in Fig. 8. There one sees that in the start-up the
armature current is limited to 150
A and is kept in this value for some time. The motor speed
increases slowly due to the
limited current and electrical torque. The duty cycle increases
slowly and become equal
to 1 at t = 0.95 s. From this point on, the motor speed, and the
speed voltage (Ea), reach a
-
certain level, decreasing the current. Nothing can be done to
keep it at 150 A, since the
duty cycle has already reached its maximum level. This positive
error makes the output
voltage of the controller (Vc) increase more and more. At 1.2 s,
when the reference
current is decreased, the output voltage of the controller
starts do decrease, but since its
value is too high, it is not able to reduce the duty cycle of
the main switch
instantaneously. One sees that the duty cycle remains equal to 1
up to 2 s. This could be
avoided by using an anti-windup integrator whose output would
not increase indefinitely.
Fig. 7 - Schematics diagram of the closed loop current control
of the dc motor.
-
Fig. 8 Waveforms for the dc motor operating with closed loop
current control: (a)
Output voltage of the controller; (b) Duty cycle of the main
switch; (c) Motor speed and
(d) Reference voltage for the current and feedback current
signal (Ki = 0.1).
5 Design of the controller for the Speed Loop
The uncompensated loop transfer function for the speed loop,
including the PWM
modulator, the converter, the motor and the speed sensor
(tachometer) is given by
++
+
+
= K
sssJL
KV
VsVs
mamaa
ST
Supply
cont
mea
1 111
)(
)(
(11)
The frequency response of the loop transfer function considering
J = 1 kgm2 is
-
20 log TFPW n.
freqn0.1 1 10 100 1 103 1 104
150
100
50
0
50
arg TFPW n rtd.
freqn0.1 1 10 100 1 103 1 104
200
150
100
50
0
Fig. 9 - Bode Diagram of the speed loop transfer function
(MATHCAD).
For a crossover frequency of 5.4 Hz (33.9 rad/s) one calculates
the gain as -10.34
dB and the phase as 96 . In order to achieve a phase margin of
45 with a type 2
controller, the boost angle, the k factor and the frequencies of
the zero and pole are
calculated using (8-10) as 51, 2.82, 12 rad/s and 95.7 rad/s
respectively,
The dc gain of the controller (Kc) can be calculated as the
opposite of the gain of
the partially compensated (Kc = 1) loop transfer function at the
crossover frequency.
In MATHCAD it was calculated as 36.05 dB, yielding Kc = 66. The
Bode plot of the
controller and compensated loop transfer function are shown in
Fig. 10.
-
Fig. 10 - Bode Diagram of the speed controller and compensated
loop transfer function.
The simulation with PSpice to verify the dynamic performance of
the controller
was carried out with the schematics shown in Fig. 11, that
resulted in the waveforms
shown in Fig. 12. There one sees that the start-up is done with
duty cycle equal to 1, so
the armature current and motor speed evolve as if there was no
converter. During the
interval the reference speed was higher than the motor speed,
the output of the controller
kept rising, reaching high values. This way, when the actual
speed exceeds the reference
and the duty cycle should be reduced, it is not because the
output of the controller that is
decreasing, still implies a duty cycle equal to 1. Again an
anti-windup integrator should
be used. After this transient, the motor speed finally reaches
the steady state value with
zero error. At t = 1.2 s the speed reference is increased with a
step change and one can
see that the transient to this small signal variation is good,
with a small overshoot due to
the 45 phase margin. It could be reduced with a controller
designed for a bigger phase
margin. Observe that the output voltage of the controller and
duty cycle do not saturate.
-
Fig. 11 - Schematics diagram of the closed loop speed control of
the dc motor.
Fig. 12 Waveforms for the dc motor operating with closed loop
speed control: (a)
Armature current; (b) Output of the speed controller (c) Duty
cycle of the main switch
and (d) Reference voltage for the speed and feedback speed
signal (K = 0.053).
-
6 Speed and current loops in parallel
Example #1 - Steady-state characteristics of a dc drive