Lecture 7: Control of a DC Motor Drive
ELEC-E8405 Electric Drives (5 ECTS)
Marko Hinkkanen
Aalto University
School of Electrical Engineering
Autumn 2015
1 / 25
Learning Outcomes
After this lecture and exercises you will be able to:
I Draw the block diagram of a cascaded control system and explain it
I Calculate the controller gains based on the model parameters and the desired
bandwidth
I Implement the current and speed controllers in the Simulink software
2 / 25
Introduction
I Modern electric drives automatically identify motor parameters
(auto-commissioning, identification run)
I Model-based controllers are preferred, since they can be automatically tuned
based on the known (identified) motor parameters
I Cascaded control system is commonly used
I Current or torque controller (fast)
I Speed controller (slower), not always needed
I Various control methods exist: our approach is based on
two-degrees-of-freedom (2DOF) PI controllers
I Control systems are typically implemented digitally
(but can be often designed in the continuous-time domain)
I Controllers and tuning principles can be extended to AC drives
A cascaded control system may also include a position controller, but we will not cover it in these lectures.
3 / 25
Outline
Preliminaries
Current Control
Voltage Saturation and Anti-Windup
Cascaded Control System and Speed Control
4 / 25
Closed-Loop Control
I Closed-loop transfer function
Controller d Plant
y (s) L(s) r e u y
= H(s) = K (s) G(s)
r (s) 1 + L(s)
where L(s) = K (s)G(s) is the loop
transfer function r = reference
I Typical control objectives e = control error
I Zero control error in steady state u = control output
I Well-damped and fast transient d = load disturbance
response y = output
The stability of the closed-loop system H(s) is often evaluated indirectly via the loop transfer function L(s). For example, the gain and phase
margins can be read from a Bode plot or a Nyquist plot of L(jω). In these lectures, we mainly analyse the closed-loop transfer function H(s) directly.
5 / 25
PI Controller
I Most common controller type
I Time domain PI controller
Z
1
u = kp e + ki e dt ki
s
I Transfer function r e u
kp
e(s) k
= K (s) = kp + i
u(s) s y
6 / 25
Outline
Preliminaries
Current Control
PI Controller
IMC Tuning Principle
2DOF PI Controller
Voltage Saturation and Anti-Windup
Cascaded Control System and Speed Control
7 / 25
Current Control System
Udc
Closed-loop current control enables: qA , qB
ia,ref
1. Current limitation Current ua,ref
controller PWM
2. Precise and fast torque control
ia
ua ia
8 / 25
Block Diagram
Assumptions:
I Switching-cycle averaged quantities
I Ideal voltage production: ua = ua,ref
Motor model
ea ωM
kf
TL
ia,ref
Current ua 1 ia 1
controller kf
sLa + Ra sJ
TM
Switching-cycle averaged symbols will not be marked with overlining in these lectures.
9 / 25
Simplified Block Diagram
I Back-emf ea is a slowly varying ea
load disturbance ia,ref
I P controller cannot drive the Current ua 1 ia
controller sLa + Ra
steady-state error to zero
I PI controller suffices
10 / 25
PI Current Controller
I Time domain
Z Current controller ea
ua = kp e + ki e dt
ia,ref e ua ia
K (s) Ya (s)
I Transfer function
e(s) k
= K (s) = kp + i
ua (s) s
1
I How to tune the gains kp and ki ? Ya (s) =
sLa + Ra
11 / 25
Closed-Loop Transfer Function
I Closed-loop transfer function
ia (s) K (s)Ya (s)
= H(s) =
ia,ref (s) 1 + K (s)Ya (s)
ea
I Desired closed-loop system
ia,ref e ua ia
αc K (s) Ya (s)
H(s) =
s + αc
where αc is the bandwidth
I Time constant of the
closed-loop system is τc = 1/αc
12 / 25
Internal Model Control (IMC) Principle
I Let us equal the closed-loop transfer function with the desirable one
K (s)Ya (s) αc αc
H(s) = = ⇒ K (s)Ya (s) =
1 + K (s)Ya (s) s + αc s
I Controller K (s) can be solved
αc αc αc Ra
K (s) = = (sLa + Ra ) = αc La +
sYa (s) s s
I Result is a PI controller with the gains kp = αc La and ki = αc Ra
I Bandwidth αc should be (at least) one decade smaller than the angular
sampling frequency 2π/Ts
13 / 25
Example: Step Response
ia (A)
I Ra = 1 Ω, La = 10 mH 60 ia,ref Closed-loop control
I Constant ea = kf ωM = 100 V
40
I Open-loop controller
I Slow (τa = 10 ms) 20 Open-loop control
I Inaccurate even in steady
0
state (since Ra varies as 0 4 8 12 16 20 t (ms)
a function of temperature) ua (V)
I Closed-loop PI controller 400 Z
I Fast (τc = 2 ms) ua = kp (ia,ref −ia ) + ki (ia,ref −ia )dt
I Steady-state accuracy
depends on the current 200
measurement accuracy ua = Ra ia,ref + ea
0
0 4 8 12 16 20 t (ms)
14 / 25
Example: Step Response During Acceleration
ia (A) Some control error during accelaration
60
I IMC-tuned PI controller is 40
sensitive to the varying load
20
disturbance ea = kf ωM
I Causes control error during 0
0 4 8 12 16 20 t (ms)
accelerations ua (V)
I Load-disturbance rejection 400
can be improved with an
active resistance
200
ea increases 2 V/ms
0
0 4 8 12 16 20 t (ms)
15 / 25
2DOF PI Current Controller: Improved Disturbance Rejection
I Active resistance r is a
controller gain Current controller ea
I Affects like a physical
resistance (without ia,ref ua0 ua 1 ia
K (s)
causing losses) sLa + Ra
ia (s) r
= Ya0 (s)
ua0 (s)
1
=
sLa + Ra + r
Ra + r
I Bandwidth of Ya0 (s) can = αc ⇒ r = αc La − Ra
be selected to equal αc La
This controller structure could also be represented as a state feedback controller with integral action and reference feedforward.
16 / 25
2DOF PI Current Controller
I IMC principle gives
αc
K (s) = ea
sYa0 (s)
αc (Ra + r ) ia,ref e ua0 ia
= αc La + K (s) Ya0 (s)
s
I Controller gains
r = αc La − R a 1
kp = αc La Ya0 (s) =
sLa + Ra + r
ki = αc (Ra + r ) = αc2 La
17 / 25
Outline
Preliminaries
Current Control
Voltage Saturation and Anti-Windup
Cascaded Control System and Speed Control
18 / 25
Voltage Saturation: Control Loop Becomes Nonlinear
I Maximum converter output voltage is limited: −umax ≤ ua ≤ umax
I Reference ua,ref may exceed umax for large ia,ref steps
(especially at high rotor speeds due to large back-emf ea )
1
ki ea
s Saturation
ia,ref e ua,ref ua 1 ia
kp
sLa + Ra
19 / 25
Back-Calculation Anti-Windup Method
Current controller
This signal is nonzero
1/kp only if the voltage saturates
1
ki ea
s
ia,ref e ua,ref ua 1 ia
kp
sLa + Ra
20 / 25
Example: Step Responses With and Without Anti-Windup
ia (A)
60 No anti-windup
I Voltage saturates after the 40 Back-calculation anti-windup method
current reference step
20
(due to high ea )
I No overshoot if anti-windup 0
0 8 16 24 32 40 t (ms)
is implemented
ua (V)
I Rise time is longer than the umax = 400 V
400
specified one
(due to voltage saturation)
200 Higher speed ⇒ higher ea
0
0 8 16 24 32 40 t (ms)
21 / 25
Outline
Preliminaries
Current Control
Voltage Saturation and Anti-Windup
Cascaded Control System and Speed Control
22 / 25
Cascaded Control System
Udc
Control system
ωM,ref qA , qB
Speed TM,ref 1 ia,ref
controller Current ua,ref
kf PWM
controller
ia
ua ia
ωM
Current controller: Inner (faster) loop
Speed controller: Outer (slower) loop
Controllers can be designed separately due to different time scales
23 / 25
Block Diagram
I Ideal torque control can be assumed: TM = TM,ref
I What is the resulting system?
Motor model
ea ωM
kf
TM,ref ia,ref
ωM,ref ua,ref TL
Speed 1
Current 1 ia 1
controller kf kf
controller sLa + Ra sJ
TM
24 / 25
Simplified Block Diagram
I Assumption on ideal torque control TM = TM,ref
I Holds well if the current-control bandwidth is (at least) one decade faster than
the speed-control bandwidth
TL
ωM,ref
Speed TM 1 ωM
controller sJ
I Mechanical and electrical systems are analogous
1 1
↔
sJ + B sLa + Ra
i.e. J ↔ La , B ↔ Ra , TM ↔ ua , ωM ↔ ia , . . .
I Same control structures and tuning principles can be directly used
25 / 25