Вы находитесь на странице: 1из 41

2016 Kappa Electronics Motor Control Training Series © 2016 Kappa Electronics LLC

-Vth

Dave Wilson
Co-Owner
Kappa Electronics
www.kappaiq.com
Benefits of Field Oriented Control

Keeping your motors spinning. Dave Wilson


Maximum Torque Per Amp (MTPA)

Maximum torque per amp


(MTPA)
200
Newton-Meters

V(treaction)
200V

150 150V

Simulated Reactance Torque as


100 100V
a function of angle delta
from 2005 Prius Traction Motor
50 50V

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

Keeping your motors spinning. Dave Wilson


Field Oriented Control in Real Time

Interrupt:
Measure rotor flux angle
Regulate current vector to be 90o wrt rotor flux
A B C 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
Exit ISR
22 Adjustable

Torque expression based on amplitude invariant form of Clarke Transform.

Keeping your motors spinning. Dave Wilson


Establishing Space Vector Conventions

+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

-b Motor shaft axis

Keeping your motors spinning. Dave Wilson


How Do You Control Torque
on a DC Motor?
Brush DC Motor

Desired Current + Error Signal PI


PWM
Power Dave’s
Motor Control
Center

Controller
- Stage
Measured Current
ADC1
Commutator keeps
rotor and stator fields
properly aligned!

1. Measure current already flowing in the motor.


2. Compare the measured current with the desired current, and generate an error signal.
3. Amplify the error signal to generate a correction voltage.
4. Modulate the correction voltage onto the motor terminals.

Keeping your motors spinning. Dave Wilson


1. Measure currents already flowing in the motor.
A, B, and C axes are “fixed” with
respect to the motor housing. This
reference frame is also called the
Only 2 phases are measured! “stationary frame” or “stator frame”.
WHY?

net current vector ib


ia
B
A i c (implied)
Dave’s

B ib
Motor Control
Center
ic
C
ia A
ia
Controller ib
with A/D
ic
C

Keeping your motors spinning. Dave Wilson


2. Compare the measured current (vector) with the desired
current (vector), and generate error signals.

Commanded is 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) A
ia
ic = -Im sin(q - 240 o)
C
Im is proportional to motor torque
q is the angle of the rotor flux

So how do we find q?


Keeping your motors spinning. Dave Wilson
2. Compare the measured current (vector) with the desired
current (vector), and generate error signals.

q or qd
Magnetic axis for phase A

Usually accomplished with a


resolver or encoder.

Keeping your motors spinning. Dave Wilson


3-Phase Stationary Frame Current Regulators
q = rotor flux angle

+ Va
-
PI
Phase A
ia
-Imsin(q)
Reference current waveforms
synchronized to rotor position
q
+
Vc
-
PI Vb
Phase B
ib
-Imsin(q -120o) -

+
-
PI
Phase C ic
-Imsin(q -240o)

Keeping your motors spinning. Dave Wilson


2. Compare the measured current (vector) with the desired
current (vector), and generate error signals.

The CLARKE transform ib


allows us to convert is
three vectors into two B
orthogonal vectors that
produce the same net ic
vector.
ib
In other words, A
convert a 3-phase i a ia
motor into a 2-phase
motor. This is the Amplitude
C Invariant form of the
Forward Clarke Clarke Transform
a(t) b(t) c(t) a b
a t   23 at  - 13 b(t ) + c(t ) 
b t   1
3
bt  - ct 

Keeping your motors spinning. Dave Wilson


2-Phase Stationary Frame Current Regulators
Va

q
2-phase to Vb Vc
3-phase
transform

i B iα
Reference current waveforms Vα Vβ -
-
i C
3-phase to
2-phase iβ
synchronized to rotor position
i A
transform

+
-
PI
Phase α

+
-
PI
Phase β

Keeping your motors spinning. Dave Wilson


Stationary Frame Tracking

Keeping your motors spinning. Dave Wilson


Synchronous Frame Tracking

Keeping your motors spinning. Dave Wilson


2. Compare the measured current (vector) with the desired
current (vector), and generate error signals.

Jump up on the ib
rotating reference is
frame, whose x-axis B iq
is the rotor flux axis.

id
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 

Keeping your motors spinning. Dave Wilson


2. Compare the measured current (vector) with the desired
current (vector), and generate error signals.

id and i q are handled independently. Since the comparison is


performed in the synchronous frame, motor AC frequency is not
seen. Thus, they are DC quantities!

Under normal conditions, we have all


the flux we need supplied by the
permanent magnets on the rotor. So
i d (commanded) + errord (t)
commanded id is set to zero. -
i d (measured)

This is how much torque we want! i q (commanded) + errorq (t)

-
i q (measured)
Since id is directly aligned with the rotor flux, it can be used to
control the effect of the rotor flux on the stator coils.
iq controls the amount of torque generated by the motor
Keeping your motors spinning. Dave Wilson
3. (Finally!) Amplify the error signals to generate correction voltages.

PI Controller (d-axis)
Error


Commanded Id + + Vd
Ka Kb
- +
Measured Id
PI Controller (q-axis)


Error
Commanded Iq + + Vq
Ka Kb
- +
Measured Iq

K a  L  Current Bandwidth (rad / sec) , K b  R L


Motor Rd Rq Ld Lq
PMSM Rs Rs Ls Ls
 L 2   L 2 
ACIM Rs Rs+Rr Ls 1 - m  Ls 1 - m 
 Lr Ls   Lr Ls 
   
IPM Rs Rs Ls_d Ls_q

Keeping your motors spinning. Dave Wilson


4. Modulate the correction voltages onto the motor terminals.

Before we can apply the


voltages to the motor vb Voltage vector

windings, we must first B


vq
jump off of the rotating
reference frame. vd
q
va A
Part A. Transfer the
voltage vectors back to
C
the stationary rectangular
coordinate system.
a b
va  vd cos q  - vq sin q 
vd (t)
vq(t)
vb  vd sin q  + vq cos q 

Keeping your motors spinning. Dave Wilson


4. Modulate the correction voltages onto the motor terminals.

vb
Part B. Next, we Voltage Vector

transform the voltage B vc


vectors from the
rectangular coordinate vb
system to three phase
vectors.
v a va A

Reverse Clarke Transformation


A a
a b A B C
B  - 12 a + 2
3
b
C  - 12 a - 2
3
b

Keeping your motors spinning. Dave Wilson


4. Modulate the correction voltages onto the motor terminals.

Phase A - top
Phase A - bottom
Phase B - top
Phase B - bottom
Phase C - top
Phase C - bottom

Over time, under steady-state conditions, the correction voltages


va, vb, and vc will be sine waves phase shifted by 120o.

Keeping your motors spinning. Dave Wilson


FOC in a Nutshell Va

Wilson
Torque Current

q
Flux Current
Reverse Vb Vc
Clarke-Park
q Transforms

i iq
Vq Vd B
Forward
-
-
i C
id
Clarke-Park
i A Transforms
Desired Torque +
PI
- q

Desired Flux +
-
PI

Keeping your motors spinning. Dave Wilson


2016 Kappa Electronics Motor Control Training Series © 2016 Kappa Electronics LLC

-Vth

Dave Wilson
Owner
Kappa Electronics
www.kappaiq.com
ACIM Circuit Representation with
Arbitrary Turns Ratio “a”
rs j  Ls - aLm  
j a 2 Lr - aLm 

a 2 rr
jaLm
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.)

If the real value of rotor current isn’t


required, “a” can be any value except
zero or infinity, resulting in a
multitude of possible circuits!

Keeping your motors spinning. Dave Wilson


ACIM Circuit Representation with
Turns Ratio a=Lm/Lr
Torque current
iq

Rotor Flux
current
id Stator current
Rotor leakage inductor is gone!

This implies that a


reference frame
exists where the
stator current can
be resolved into
torque current
and flux current.

Source: Vector Control and Dynamics of AC Drives, by Don Novotny and Tom Lipo, Oxford University Press, 2000

Keeping your motors spinning. Dave Wilson


Torque Production in an ACIM
Stator current is resolved
into flux producing and
torque producing
iq
components.

Rotor flux is NOT fixed


w.r.t. rotor. It is
“asynchronous” to rotor
position. id
is
 r  Lmid
Both id and iq produce torque.
So why is torque usually set
 Lm  3 L2m by iq only?
Te 
3P
Lmid  iq   P id iq
4 rotor flux  Lr  4 Lr Hint: There are two reasons.
P equals the number of poles

Keeping your motors spinning. Dave Wilson


Dynamic Response of Rotor-
Referenced Field Orientation
Step change in iq Step change in id

iqr  -
Lm
iqs idr
Lr iqs
i qr i qs i qr i qs
i ds i ds
ids

dr dr
dr
Torque instantaneously changed. Torque slowly changed.

Keeping your motors spinning. Dave Wilson


ACIM Flux Angle Calculation
Dave’s
Motor Control
Center

Encoder
Slip Calculator

1
tr
Commanded id
1 + Str r
D ^s
 + ^
qd

Commanded iq N

Recall that the rotor flux sweeps


across the surface of the rotor at a
speed equal to the slip frequency, i.e.,
qd
it is “asynchronous” to the rotor.
A

Keeping your motors spinning. Dave Wilson


Synchronous Frame Regulation
iq and id are still regulated independently. However, we now need a non-zero id value, since
the rotor doesn’t produce any flux on its own (i.e., it doesn’t have a permanent magnet)

P
i d (commanded) + +
error(t)
vd
-

+
id (measured) I

P
i q (commanded) + +
error(t)
vq

- +
i q (measured) I
i d controls rotor flux magnitude.
i q controls amount of torque generated by motor

Keeping your motors spinning. Dave Wilson


P
+
+ Vd
Commanded id
(flux) - +

Commanded iq
(torque)
I ∫ Reverse
Clarke-Park
Va
Vb Dave’s
Motor Control
Center

Transform Vc
Commanded P P
Rotor + +
Speed + + Vq θd
- + - +

I ∫ I ∫
id iq
ia
Forward
ib
Clarke-Park
Transform -
ic
-
θd

Commanded id Slip
Frequency + θd

Slip
Commanded iq Calculator
+

Actual Rotor Speed

Control Diagram of a Variable Speed Control System Utilizing Field Oriented Control.

Keeping your motors spinning. Dave Wilson


Motor D-Q Coupling
1/Ld

1/Lq

Keeping your motors spinning. Dave Wilson


Stator Voltage Differential Equations
Voltage equations from the block diagram:
d-axis
 Vsd - rs isd + sq s dt  isd Lsd + K  sd
q-axis
 Vsq - rs isq - sd s dt  isq Lsq sq

Taking the derivative of both sides:


d-axis Vsd - rs isd + sq s  Lsd d
i
dt sd

q-axis Vsq - rs isq - sd s  Lsq dtd isq

Substituting for flux terms and rearranging:


d-axis Vsd - rs isd + Lsq isq s - Lsd d
i 0
dt sd

q-axis Vsq - rs isq - isd Lsd + K s - Lsq dtd isq  0


Keeping your motors spinning. Dave Wilson
Current Regulator Decoupling
Permanent Magnet Motors
Commanded id +
Ka
-
+
+ Vd
+ -

Kb ∫
id Vd compensation

 Ls
iq
Vq compensation
Commanded iq -
Ka
+
+ + Vq
+
+ +

Kb ∫
KE

Keeping your motors spinning. Dave Wilson


Current Regulator Decoupling
AC Induction Motors


Lm / Lr Vd compensation
+
Rr
Lm -
Lr
 Lm 2
+
id
- Ls -
Lr
iq

Rr / Lr Lm / Lr Vq compensation
+

+
2
L
Ls - m
Lr

Keeping your motors spinning. Dave Wilson


Cross-coupling Effect with FOC Current Regulators
Commanded Iq
Decoupling
Compensation Actual Iq
OFF

400ms 420ms 440ms 460ms 480ms 500ms 520ms 540ms 560ms 580ms 600ms 620ms 640ms 660ms 680ms

Commanded Iq
Decoupling
Compensation Actual Iq
ON

400ms 420ms 440ms 460ms 480ms 500ms 520ms 540ms 560ms 580ms 600ms 620ms 640ms 660ms 680ms

Keeping your motors spinning. Dave Wilson


2016 Kappa Electronics Motor Control Training Series © 2016 Kappa Electronics LLC

-Vth

Dave Wilson
Owner
Kappa Electronics
www.kappaiq.com
Flux is “reluctant” to
Reluctance Torque
jump through air
because air has high
permeability.
N
i Torque
The magnet exerts
force on the knife
in an effort to
minimize the
reluctance of the
flux path.

Keeping your motors spinning. Dave Wilson


Total Motor Torque
Ids
Iqs

Permanent Magnet Rotor

Reaction Torque Reluctance Torque

   

3P
Torque  dr I qs + Lds - Lqs I ds I qs
22

Torque expression based on amplitude invariant form of Clarke Transform.

Keeping your motors spinning. Dave Wilson


Buried Magnets Create NEW Torque

Buried rotor magnets


produce different
inductances on the d-q axes.

This results in a NEW torque


component proportional to
the difference in these
inductances.

Keeping your motors spinning. Dave Wilson


Torque vs. Angle
Locked Rotor
-D

-Q

Torque
Q
Reaction Torque (magnet to magnet)

CCW
D D
Stable Stable Unstable
0o Unstable 45o 90o 135o Unstable 180o

CW
Reluctance Torque (magnet to metal)
The magnets exerts force
on the rotor in an effort to
Q -Q
minimize the resistance
(reluctance) of the flux path.
-D

Keeping your motors spinning. Dave Wilson


Effect of Saliency on Optimum Torque Angle

Positive Ids Negative Ids

Keeping your motors spinning. Dave Wilson


MTPA Control of IPM Motors
Commanded d i
Commanded
Limit i
Speed + T 1  r r2  + Current Vd
id  -  + + 8iT2 
- 4  Ld - Lq
 L
d - Lq 
2
 -
Controller
IPM
id Va
Reverse
Actual Vb
Speed Clarke-Park Dave’s
Motor Control
Center

Transform Vc
id
θd
iq  sign iT  iT2 - id2
+ Current Vq
Controller
-

Commanded iq
id iq
d/dt ia
Forward ib
Clarke-Park
Transform ic -

-
θd Rotor Flux Angle

Keeping your motors spinning. Dave Wilson

Вам также может понравиться