02 Intro To FOC
02 Intro To FOC
02 Intro To FOC
www.kappaiq.com
Dave Wilson
Maximum Torque Per Amp (MTPA)
V(treaction)
200V
150150V
0 0V
-50-50V
-100
-100V
-150
-150V
-200
-200V
0.0s 0.3s 0.6s 0.9s 1.2s 1.5s 1.8s 2.1s 2.4s 2.7s 3.0s 3.3s 3.6s
-180o -150o -120o -90o -60o -30o 0o 30o 60o 90o 120o 150o 180o
N
S
Interrupt:
Measure rotor flux angle
A B C Regulate current vector to be 90o wrt rotor flux
Exit ISR
Interrupt:
Currents Measure new rotor flux angle
Regulate current vector to be 90o wrt rotor flux
Exit ISR
Constant Constant
(for now)
Interrupt:
3P †
Measure new rotor flux angle
Torque dr I qs Regulate current vector to be 90o wrt rotor flux
22 Adjustable
Exit ISR
†
Torque expression based on amplitude invariant form of Clarke Transform.
+b
Direction of positive rotation
Direction of positive speed
B Direction of positive torque
A
-a +a
C
Phase A leads phase B
Phase B leads phase C
Phase C leads phase A
+
Desired Current Error Signal PI
PWM
Power Texas Instruments
Controller
Stage
Dave’s
Motor Control
Center
1.
sure current already flowing in the motor.
measured
2. current with the desired current, and generate an err
y the error
3. signal to generate a correction voltage.
4.correction voltage onto the motor terminals.
te the
Torque K a i
B ia
A Texas Instruments
i c (implied)
B Dave’s
Motor Control
Center
ib ic
C
ia A
ia
Controller ib
with A/D
ic C
Commanded i s
Error
}
The desired phase currents is
can be calculated via these B
equations:
ic
ia = -Im sin(q) ib
ib = -Im sin(q - 120 o) Ro A
ia Rottoor flux axis
r flu
x ax
?
C
Im is proportional to motor torque
q is the angle of the rotor flux
” a xis
“d
ct” or
e
e “dir
e d th
is call
s
Thi
q or q d
N
Magnetic axis for phase A
S
b
B - C
3
q
i us a
r rad
rCos(q) -r
ib
Trick #2
Jump up on the q axis
rotating reference is
frame, whose x-axis B iq
is the rotor flux axis.
lux axis
id da x i s rotor f
q
A
ia
This is called the
Park Transform
C
a b id ia cos q + ib sin q
iq -ia sin q + ib cos q
-
i q (measured)
i d can be used to weaken the field of the machine.
i q controls the amount of torque generated by the motor
PI Controller (d-axis)
Error
Commanded Id + + Vd
Ka Kb ∫ +
Measured Id -
PI Controller (q-axis)
Error
Commanded Iq + + Vq
Ka Kb ∫ +
Measured Iq -
q axis
Before we can apply the
vb
voltages to the motor Voltage vector
vb
Part B. Next, we Voltage Vector
Phase A - top
Phase A - bottom
Phase B - top
Phase B - bottom
Phase C - top
Phase C - bottom
Wilso
Torque Current
n
q
Flux Current
Reverse Vb Vc
Clarke-Park
q Transforms
i iq
Vq Vd B
Forward
+
+
i id
-1 C
Clarke-Park
i A Transforms
Desired Torque +
PI
-
q
Desired Flux +
-
PI
Sector 2
Vref
Sector 3 T2•V2
V4 = 011 a V1 = 100
T1•V1 q-axis
Sector 4 Sector 6
Sector 5
V5 = 001 V6 = 101
-Vth
Space Vector Modulation
• PWMs treat each phase individually.
V
• PWMs control the phase voltages. W
120° offsets between A, B, and C.
• SVM controls the Voltage Vector.
The inverter can be driven to 8 states.
V1 = 001 V3 = 011 V2 = 010
A A B C A B C A B C
- 6 voltage
B vectors V6=110 V4 = 100 V5 = 101
A B C A B C A B C
V0 = 000 V7 = 111
- 2 null vectors 1 = Top Switch is on
0 = Bottom Switch is on
Source: Mahmoud Riaz, Sc.D., Professor of Electrical
Engineering, Department of Electrical and Computer
Engineering, University of Minnesota
Vref = Vmag•SIN(q)
A
240o 300o
V4 V5
0 60 120 180 240 300 0 Vector Diagram
“6-Step” Voltage Waveforms
Output voltage vector created by repeatedly switching between adjacent vectors and the “null” vector
(all three phases high or all three phases low).
Output angle q determined by relative “on” time between two adjacent vectors.
Output magnitude determined by relative “on” time between two adjacent vectors and the null vector.
Sector 5
T1 T2 T0
NULL=V0 NULL=V7
1 1
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0
0
0 60 120 180 240 300 360 0 60 120 180 240 300 360
A B C A B C
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0 0
0 60 120 180 240 300 360 0 60 120 180 240 300 360
A B C A B C
0.8
0
Most popular form of SVM 0 60 120 180 240 300 360
A B C
Sc
Sb
Sa
V1 V3 V7 V3 V1 V0 V1 V3 V7 V3 V1
t1 t2 t0 t2 t1 t0 t1 t2 t0 t2 t1
Alternating-Reversing Sequence
Check out http://www.ipes.ethz.ch/ipes/Raumzeiger/e_RZ4.html for a neat SVM animation!
UDC-BUS
A
PWM2 PWM4 PWM6
C
15%
PWM3
B
PWM1 PWM5
Uphase-phase
Uphase-phase
A
A
PWM2 PWM4 PWM6
C
C
Animation Source: Leos Chalupa
• “Shifting” voltage u0 must be the same for all three phases, thus it can only contain
3r harmonics!
A
15%
B C
T1 = T•m•SIN(60 - a)
Vb
T2 = T•m•SIN(a) m Va 2 + Vb 2
T0 = T - T1 - T2
T2·Vy Vb
a a tan -1
Yuck!
Vx
T1·Vx Va Va
…but with FOC, we don’t have
POLAR notation. We have
RECTANGULAR notation Or…
(Va and Vb.
We could use a simple procedure designed
Reference Voltage Vector
specifically for RECTANGULAR notation:
Components of the Stator Reference Voltage
amplitude
1 VaVector Vb
0.8
0.6
0.4
1. Perform modified
0.2
0
inverse Clarke-
-0.2
-0.4 transform on the
-0.6
-0.8
-1 0
voltage vector
a 60 120 180 240 300 360
2. Calculate which
angle
sector the voltage
Sector 1Sector 2Sector 3Sector 4Sector 5Sector 6 vector is in
3. Determine T1, T2,
Dave Wilson TI Spins Motors…Smarter, Safer, andGreener.
T0
1. Perform Modified Inverse
Clarke Transform
3 Vb
Va
3
+
0 .5 i
i Va -
- 2 2
Vb
-
j
j Vb
-
0 .5 k
3 Vb
k- Va -
2 2
i j k i
b. Use look-up table below to determine the sector from the value of N
N= 1 2 3 4 5 6
Sector = 6 2 1 4 5 3
Alternatively, you can determine the sector by using IF THEN statements to check the polarities of i, j, and k.
i j k
1 2 3 4 5 6
Dave Wilson TI Spins Motors…Smarter, Safer, Greener.
3. Based on the sector, determine T1, T2, and T0
Sector→ 1 2 3 4 5 6
Bounded by: (U0-U60) (U60-U120) (U120-U180) (U180-U240) (U240-U300) (U300-U0)
T1† i -k j -i k -j
T2† j -i k -j i -k
Alternating
T0 = 1 – T1 – T2 Null = V0
V7 in 1,3,5
Null = V7 V0 in 2,4,6 V0 in 1,3,5
V7 in 2,4,6
Reversing
Sequencing
U = T1+T2 U = 100% U = 100% U = T1+T2 U = T1+T2+.5T0
Sector 1 V = T2 V = T0+T2 V = T0+T2 V = T2 V = T2+.5T0
W=0 W = T0 W = T0 W=0 W = .5T0
U = T1 U = T0+T1 U = T1 U = T0+T1 U = T1+.5T0
Sector 2V = T1+T2 V = 100% V = T1+T2 V = 100% V = T1+T2+.5T0
1/Ld
1/Lq
Kb ∫
KE
When the back-EMF amplitude reaches the bus voltage, current goes to zero.
Therefore, the motor cannot go any faster…all because of too much flux.
Speed
Torque
Flux
Id_nominal
Idref
Rated Speed
Speed
ò
Vq - Idref
+
0.97
Min Limit
Slew Value
Vqlim
Vqlim Vq
0.7 -
Vq
S
VEMFq + Q
“1” or “0”
Reset
R Vd
Vlim
Torque
Flux
-Vth
Dave Wilson
-2KV
-4KV
-14KV
V(tem)
50V
40V
30V
20V
10V
Starting Torque
0V
-10V
-20V
-30V
-40V
-50V
-60V
-70V
0s
0 2s
0.2 4s
0.4 6s
0.6 8s
0.8 10s
1.0 12s
1.2 14s
1.4 16s
1.6 18s
1.8 20s
2.0
% Synchronous Speed
Source: Mahmoud Riaz, Sc.D., Professor of Electrical Engineering, Department of Electrical and Computer Engineering,
University of Minnesota
a 2 rr
jwaLm
S
General equivalent circuit showing arbitrary value of referral ratio “a” (a=1
corresponds to a turns ratio of Ns/Nr, which yields the conventional circuit.)
Rotor Flux
current
id Stator currentRotor leakage reactance now lum
with mutual and stator leakage reac
Source: Vector Control and Dynamics of AC Drives, by Don Novotny and Tom Lipo, Oxford University Press, 2000
iqr -
Lm
iqs
idr
Lr iqs
iqr iqs iqr iqs
ids ids
ids
dr dr
dr
Rotor current (and Rotor flux (and thus
thus torque) are torque) are gradually
instantaneously changed.
Dave Wilson TIchanged.
Spins Motors…Smarter, Safer, Greener.
ACIM Slip Frequency Calculation
Texas Instruments
is a
neat company!
Dave Wilson’s
Encoder
Motor Control
Center
qr
Slip Calculator
Poles/2
1
id 1 + St r tr qe
D +
w ^q slip q
^d
iq
N ^ slip
ò +
x
rotor flu
Axis of
qd
9.9�
C
Dave Wilson TI Spins Motors…Smarter, Safer, Greener.
P
+
+ Vd
Commanded id
(flux) - +
Commanded iq
(torque)
I ∫ Reverse
Clarke-Park
Va
Vb Texas Instruments
is a
neat company!
Transform Vc
Commanded P P Dave Wilson’s
Motor Control
Center
Rotor + +
Speed + + Vq θd
- + - +
I ∫ I ∫
id iq
ia
Forward
Speed
Clarke-Park
ib
Calculator
Transform -
ic
-
θd
Commanded id Slip
Slip + θd
∫
Frequency
Commanded iq Calculator
+
Control Diagram of an Induction Motor Speed Controller Utilizing Field Oriented Control.
-Vth
Dave Wilson
Buried Magnets Create NEW Torque
N
Permanent Magnet Rotor
S
Reaction Torque Reluctance Torque
3P
†
Torque
Q Reaction Torque (magnet to magnet)
CCW
D
Stable Stable Unstable
0 o Unstable 45 o
90 o
135 o Unstable 180o
CW
Reluctance Torque (magnet to metal)
The magnets exerts force
on the rotor in an effort to
minimize the resistance
(reluctance) of the flux path.
Locked Rotor
Dave Wilson TI Spins Motors…Smarter, Safer, Greener.
Effect of Saliency on Optimum Torque Angle
Transform Vc
Commanded q i
+ Current Vq θd
Controller
-
id iq
d/dt ia
Forward
Clarke-Park
ib
Transform
ic Phase C
Current
Calculation
θd
Rotor Flux Angle