Induction Motor – Direct Torque ControlByDr. Ungku Anisa Ungku AmirulddinDepartment of Electrical Power EngineeringCollege of Engineering
Dr. Ungku Anisa, July 2008 1EEEB443 - Control & Drives
OutlineIntroductionSwitching ControlSpace Vector Pulse Width Modulation (PWM)Principles of Direct Torque Control (DTC)Direct Torque Control (DTC) RulesDirect Torque Control (DTC) ImplementationReferences
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 2
IntroductionHigh performance Induction Motor drives consists of:
Field Orientation Control (FOC)Direct Torque Control (DTC)
Direct Torque Control is IM control achieved through direct selection of consecutive inverter states
This requires understanding the concepts of:Switching control (Bang-bang or Hysteresis
control)Space Vector PWM for Voltage Source Inverters
(VSI)Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 3
Switching ControlA subset of sliding mode controlAdvantages:
Robust since knowledge of plant G(s) is not necessaryVery good transient performance (maximum actuation
even for small errors)Disadvantage: Noisy, unless switching frequency is very
highFeeding bang-bang (PWM) signal into a linear amplifier is
not advisable. But it is OK if the amplifier contains switches (eg. inverters)
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 4
Switching Control
Amplifier Plant G(s)
Switching Controller
Continuous Control
Amplifier Plant G(s)
PI
ContinuousController Limiter
Switching Control
PWM Voltage Source Inverter – single phaseReference current compared with actual
currentCurrent error is fed to a PI controllerOutput of PI controller (vc) compared with
triangular waveform (vtri) to determine duty ratio of switches
vtri
Vdc
qvc
Pulse widthmodulator
PI Controller
iref
Dr. Ungku Anisa, July 2008 6EEEB443 - Control & Drives
Same concept is extended to three-phase VSIva*, vb* and vc* are the
outputs from closed-loop current controllers
In each leg, only 1 switch is on at a certain time
Leads to 3 switching variablesPulse widthmodulator
Va*
Pulse widthmodulator
Vb*
Pulse widthmodulator
Vc*
Sinusoidal PWM Voltage Source Inverter
Dr. Ungku Anisa, July 2008 7EEEB443 - Control & Drives
Sa
Sb
Sc
+ vc -
+ vb -
+ va -
n
N
Vdc a
b
c
S1
S2
S3
S4
S5
S6
S1, S2, ….S6
va*vb*
vc*
Pulse Width Modulation
Dr. Ungku Anisa, July 2008 8EEEB443 - Control & Drives
Switching signals for the
SPWM VSI
Sinusoidal PWM Voltage Source InverterThree switching variables are Sa, Sb and Sc (i.e. one per phase)One switch is on in each inverter leg at a time
If both on at same time – dc supply will be shortedIf both off at same time - voltage at output is undetermined
Each inverter leg can assume two states only, eg:Sa = 1 if S1 ON and S4 OFFSa = 0 if S1 OFF and S4 ON
Total number of states = 8An inverter state is denoted as [SaSbSc]2, eg:
If Sa = 1, Sb = 0 and Sc = 1, inverter is in State 5 since [101]2 = 5Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 9
Space Vector PWMSpace vector representation of a three-phase quantities
xa(t), xb(t) and xc(t) with space distribution of 120o apart is given by:
where:a = ej2/3 = cos(2/3) + jsin(2/3) a2 = ej4/3 = cos(4/3) + jsin(4/3)‘x’ can be a voltage, current or flux and does not necessarily has to be sinusoidal
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 10
)()()(3
2 2 txataxtx cba x (1)
Space Vector PWMSpace vector of the three-phase stator voltage is:
where va, vb and vc are the phase voltages.If va, vb and vc are balanced 3-phase sinusoidal voltage with
frequency f, then the locus of vs :circular with radius equal to the peak amplitude of the phase
voltagerotates with a speed of 2f
Dr. Ungku Anisa, July 2008 11EEEB443 - Control & Drives
(2) )()()(3
2 2 tvatavtv cba sv
+ vc -
+ vb -
+ va -
n
N
Vdc a
b
c
S1
S2
S3
S4
S5
S6
S1, S2, ….S6
va*vb*vc*
We want va, vb and vc to follow va*, vb* and vc*
Dr. Ungku Anisa, July 2008 12EEEB443 - Control & Drives
These voltages will be the voltages
applied to the terminals of the induction motor
Space Vector PWMFrom the inverter circuit diagram:
van = vaN + vNn
vbn = vbN + vNn
vcn = vcN + vNn
vaN = VdcSa , vbN = VdcSb , vcN = VdcSc
where Sa, Sb, Sc = 1 or 0 and Vdc = dc link voltage
Substituting (3) – (6) into (2): cbadccnbnan SaaSSVvaavv 22
3
2
3
2sv
(3)
(4)
(5)
(6)
(7)
Dr. Ungku Anisa, July 2008 13EEEB443 - Control & Drives
Space Vector PWMStator voltage space vector can also be expressed in
two-phase (dsqs frame).
Hence for each of the 8 inverter states, a space vector relative to the ds axis is produced.
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives
ssq
ssdcbadc vvSaaSSV j
3
2 2 sv (8)
14
Space Vector PWMExample: For State 6, i.e. [110]2 (Sa = 1, Sb = 1 and Sc = 0)
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives
ssq
ssddcdc
dc
dc
cbadc
vvVV
V
aaV
SaaSSV
j3
1j
3
1
sinjcos13
2
0113
23
2
32
32
2
2
svvS
ds
qs
dcV31
dcV31
15
Therefore, the voltage vectors for all the 8 inverter states can be obtained.
Note for states [000] and [111], voltage vector is equal to zero.
Space Vector PWM
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 16
[100] V1
[110] V2[010] V3
[011] V4
[001] V5 [101] V6
(2/3)Vdc
(1/3)Vdc
[000] V0 = 0[111] V7 = 0
ds
qs
Voltage Vector
Inverter state[SaSbSc]2
V0 State 0 = [000] 2
V1 State 4 = [100] 2
V2 State 6 = [110] 2
V3 State 2 = [010] 2
V4 State 3 = [011] 2
V5 State 1 = [001] 2
V6 State 5 = [101] 2
V7 State 7 = [111] 2
The dsqs plane can be divided into six 60-wide sectors, i.e. S1 to S6 as shown below( 30 from each voltage vectors)
Space Vector PWM
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 17
[100] V1
[110] V2[010] V3
[011] V4
[001] V5 [101] V6
[000] V0 = 0[111] V7 = 0
ds
qs
S1
S2S3
S4
S5 S6
Space Vector PWMDefinition of Space Vector Pulse Width Modulation
(PWM):modulation technique which exploits space vectors to synthesize the command or reference voltage vs* within a sampling period
Reference voltage vs* is synthesized by selecting 2 adjacent voltage vectors and zero voltage vectors
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 18
In general:Within a sampling period T, to synthesize reference voltage vs*, it is
assembled from:vector Vx (to the right) vector Vy (to the left) and a zero vector Vz (either V0 or V7)Since T is sampling period of vs*:
Vx is applied for time Tx
Vy is applied for time Ty
Vz is applied for the rest of the time, Tz
Space Vector PWM
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 19
[100] V1
[110] V2[010] V3
[011] V4
[001] V5 [101] V6
Note:[000] V0 = 0[111] V7 = 0
ds
qs
vs*
= vx
= vy
T
TV xx
T
TV yy
In general:Total sampling time: If close to 0 : Tx > Ty
If close to 60 : Tx < Ty
If vs* is large: more time
spent at Vx, Vy compared
to Vz i.e. Tx + Ty > Tz
If vs* is small: more time
spent at Vz compared
to Vx, Vy , i.e. . Tx + Ty < Tz
Space Vector PWM
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 20
[100] V1
[110] V2[010] V3
[011] V4
[001] V5 [101] V6
Note:[000] V0 = 0[111] V7 = 0
ds
qs
vs*
= vx
= vy
T= Tx + Ty + Tz (9)
T
TV xx
T
TV yy
Space Vector PWMIn general, if is the angle
between the reference voltage vs* and Vx (vector to it’s right), then:
where
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 21
[100] V1
[110] V2[010] V3
[011] V4
[001] V5 [101] V6
Note:[000] V0 = 0[111] V7 = 0
ds
vs*
60sinmTTx
sinmTTy
(10)
qs
(11)
Tz = T Tx Ty(12)
Vector Vx to the right of vs*
3
*
dcVm sv
Space Vector PWM
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 22
[100] V1
[110] V2[010] V3
[011] V4
[001] V5 [101] V6
Note:[000] V0 = 0[111] V7 = 0
ds
qsExample: vs* is in sector S1
• Vx = V1 is applied for time Tx
• Vy = V2 is applied for time Ty
• Vz is applied for rest of the time, Tz
= vx
= vy
T
TV x1
T
TV y2
vs*
T T
Vref is sampled
Vref is sampled
V1
Tx
V2
TyTz/2
V0
Tz/2
V7
va
vb
vc
Space Vector PWMExample: vs* in sector S1 Reference voltage vs* is
sampled at regular intervals T, i.e. T is sampling period:V1 [100]2 is applied for Tx
V2 [110]2 is applied for Ty
Zero voltage V0 [000]2 and V7 [111]2 is applied for the rest of the time, i.e. Tz
T= Tx + Ty + Tz
Dr. Ungku Anisa, July 2008 23EEEB443 - Control & Drives
V7 V2 V1 V0
Space Vector PWM
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 24
[100] V1
[110] V2[010] V3
[011] V4
[001] V5 [101] V6
Note:[000] V0 = 0[111] V7 = 0
ds
qs
Example: A Space Vector PWM VSI, having a DC supply of 430 V and a switching frequency of 2kHz, is required to synthesize voltage vs* = 240170 V. Calculate the time Tx, Ty and Tz required.
• Vx = ____ is applied for time Tx
• Vy = ___ is applied for time Ty
• Vz is applied for time Tz
• Since = ______, vs* is in sector _______
60sinmTTx
sinmTTy
Tz = T Tx Ty
S1
S2S3
S4
S5 S6
Space Vector Equations of IMThe two-phase dynamic model of IM in the stationary
dsqs frame:
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 25
ssdq
ssdq
ssdq Ψiv
dt
dRs
srdq
srdq
srdq
srdq ΨΨiv rr dt
dR j0 '
srdq
ssdq
ssdq iiΨ ms LL
srdq
ssdq
srdq iiΨ '
rm LL
(13)
(14)
(15)
(16)
Direct Torque Control (DTC) – Basic Principles1. Derivative of stator flux is equal to the stator EMF.
Therefore, stator flux magnitude strongly depends on stator voltage.
If voltage drop across Rs ignored, change in stator flux can be obtained from stator voltage applied :
Stator voltage can be changed using the space vectors of the Voltage Source Inverter (VSI).
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 26
ssdqs
ssdq
sdq
ssdq R
dt
diveψ
tssdq
ssdq vψ
[100]V1
[110]V2[010]V3
[011]V4
[101]V6[001]V5
(17)
(18)
Direct Torque Control (DTC) – Basic Principles2. Developed torque is proportional to the sine of angle
between stator and rotor flux vectors sr.
Angle ofs is also dependant on stator voltage. Hence, Te can also be controlled using the stator voltage through sr.Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 27
srrsrs
me
rsrs
me
LL
LPT
LL
LPT
sin22
3
22
3
'
'
ψψ
ψψ
(19)
(20)
Direct Torque Control (DTC) – Basic Principles3. Reactions of rotor flux to changes in stator voltage is
slower than that of stator flux.Assume r remains constant within short time t that stator voltage is changed.
Summary DTC Basic Principles: Magnitude of stator flux and torque directly controlled
by proper selection of stator voltage space vector (i.e. through selection of consecutive VSI states)
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 28
Direct Torque Control (DTC) – Basic Principles (example)
Assuming at time t, Initial stator and rotor flux are denoted as
s(t) and r
the VSI switches to state [100] stator voltage vector V1 generated
After short time interval t,New stator flux vector s(t+ t) differs from
s(t) in terms of :Magnitude (increased by s=V1(t))Position (reduced by sr)
Assumption: Negligible change in rotor flux vector r within t
Stator flux and torque changed by voltageDr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 29
[100]V1
[110]V2[010]V3
[011]V4
[101]V6[001]V5
s=V1(t)
s(t)s(t+t)
r
ds
qs
sr
sr
Direct Torque Control (DTC) – Rules for Flux Control
To increase flux magnitude:select non-zero voltage vectors
with misalignment with s(t) not exceeding 90
To decrease flux magnitude:select non-zero voltage vectors
with misalignment with s(t) that exceeds 90
V0 and V7 (zero states) do not affect s(t) , i.e. stator flux stops moving
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 30
[100]V1
[110]V2[010]V3
[011]V4
[101]V6[001]V5
s(t)
r
ds
qs
sr
Direct Torque Control (DTC) – Rules for Torque Control
To increase torque:select non-zero voltage vectors
which acceleratess(t)
To decrease torque:select non-zero voltage vectors
which deceleratess(t)
To maintain torque:select V0 or V7 (zero states) which
causes s(t) to stop moving
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 31
[100]V1
[110]V2[010]V3
[011]V4
[101]V6[001]V5
s(t)
r
ds
qs
sr
Direct Torque Control (DTC) – Rules for Flux and Torque Control
The dsqs plane can be divided into six 60-wide sectors (S1 to S6)
Ifs is in sector Skk+1 voltage vector
(Vk+1) increases s
k+2 voltage vector (Vk+2) decreases s
Example: heres is in sector 2 (S2)V3 increases s
V4 decreases s Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 32
[100] V1
[110] V2[010] V3
[011] V4
[001] V5 [101] V6
Note:[000] V0 = 0[111] V7 = 0
ds
qs
S1
S2S3
S4
S5 S6
s(t)
Direct Torque Control (DTC) – Rules for Flux and Torque ControlStator flux vector s is associated with a voltage vector VK
when it passes through sector K (SK)Impact of all individual voltage vectors on s and Te is
summarized in table below:
Impact of VK and VK+3 on Te is ambiguous, it depends on whether s leading or lagging the voltage vector
Zero vector Vz (i.e. V0 or V7) doesn’t affect s but reduces TeDr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 33
VK VK+1 VK+2 VK+3 VK+4 VK+5 Vz (V0 or V7)
s -
Te ? ?
Direct Torque Control (DTC) – Implementation1. DC voltage Vdc and three phase stator currents iabcs are
measured2. vsdq
s and current isdqs are determined in Voltage and Current
Vector Synthesizer by the following equations:
where Sa, Sb ,Sc = switching variables of VSI and
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 34
ssq
ssdcbadc
ssdq vvSaaSSV j
3
2 2 v
abcsssdq iTi abc
3
13
1
00
0
1abcT
(21)
(22)
Direct Torque Control (DTC) – Implementation3. Flux vector s and torque Te are calculated in the Torque
and Flux Calculator using the following equations:
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 35
dt ssds
ssd
ssd R ivψ
dt ssqs
ssq
ssq R ivψ
ssq
ssd
ssd
ssqe ii
PT ψψ
22
3
22 ssq
ssds ψψψ
(23)
(24)
(25)
(26)
Direct Torque Control (DTC) – Implementation4. Magnitude of s is compared with s* in the flux control
loop.5. Te is compared with Te* in the torque control loop.
6. The flux and torque errors, s and Te are fed to respective bang-bang controllers, with characteristics shown below.
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 36
Note:s=s
Tm= Te
b= b
Direct Torque Control (DTC) – Implementation7. Selection of voltage vector (i.e. inverter state) is based on:
values of b and bT (i.e. output of the flux and torque bang-bang controllers )
angle of flux vector s
direction of motor rotation (clockwise or counter clockwise)
Specifics of voltage vector selection are provided based on Tables in Slide 37 (counterclockwise rotation) and Slide 38 (clockwise rotation) and applied in the State Selector block.Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 37
ssd
ssq
ss ψψ
ψ 1tan (27)
Direct Torque Control (DTC) – ImplementationSelection of voltage vector in DTC scheme:Counterclockwise Rotation
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 38
b 1 0
bT 1 0 -1 1 0 -1
S1 V2 V7 V6 V3 V0 V5
S2 V3 V0 V1 V4 V7 V6
S3 V4 V7 V2 V5 V0 V1
S4 V5 V0 V3 V6 V7 V2
S5 V6 V7 V4 V1 V0 V3
S6 V1 V0 V5 V2 V7 V4
[100]V1
[110]V2[010]V3
[011]V4
[101]V6[001]V5
To minimize number of switching: • V0 always follows V1, V3 and V5 • V7 always follows V2, V4 and V6
Direct Torque Control (DTC) – ImplementationSelection of voltage vector in DTC scheme:Clockwise Rotation
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 39
b 1 0
bT 1 0 -1 1 0 -1
S1 V6 V7 V2 V5 V0 V3
S2 V5 V0 V1 V4 V7 V2
S3 V4 V7 V6 V3 V0 V1
S4 V3 V0 V5 V2 V7 V6
S5 V2 V7 V4 Vv1 V0 V5
S6 V1 V0 V3 V6 V7 V4
[100]V1
[110]V2[010]V3
[011]V4
[101]V6[001]V5
To minimize number of switching: • V0 always follows V1, V3 and V5 • V7 always follows V2, V4 and V6
b 1 0
bT 1 0 -1 1 0 -1
S2 V3 V0 V1 V4 V7 V6
Direct Torque Control (DTC) – Implementation (Example)
s is in sector S2 (assuming counterclockwise rotation)Both flux and torque to be
increased (b = 1 and bT = 1) – apply V3 (State = [010])
Flux decreased and torque increased (b = 0 and bT = 1) – apply V4 (State = [011])
Dr. Ungku Anisa, July 2008 EEEB443 - Control & Drives 40
[100]V1
[110]V2[010]V3
[011]V4
[101]V6[001]V5
s
r
ds
qs
sr
Direct Torque Control (DTC) – Implementation
EEEB443 - Control & Drives 41
Flux controlloop
Torque controlloop
Eq. (21) &(22)
Eq. (23) , (24) &(26)
Eq. (25)
Eq. (27)
Note:s=s
Tm= Te
b= b
a = Sa
b = Sb
c = Sc vi = Vdc
vs= vsdqs
iis= isdqs
ds=sds
qs= sqs
Based on Table in Slides 37 or 38
ReferencesTrzynadlowski, A. M., Control of Induction Motors, Academic
Press, San Diego, 2001.Asher, G.M, Vector Control of Induction Motor Course Notes,
University of Nottingham, UK, 2002.
Dr. Ungku Anisa, July 2008 42EEEB443 - Control & Drives