Académique Documents
Professionnel Documents
Culture Documents
Direct rotor flux control Indirect Rotor Flux control Controller design Discussion
Vector controller controls the currents in the dq domain and outputs dq voltage demands Voltage demands are inversed transformed into 3-phase demand voltages for PWM The transformations need the angle at every point in time vsd* vsq* v*sabc 2/3
PWM IM
vs*
e j
vs*
Vector Controller
isd isq
is
is
q r
(t ) = e (t )dt
DIRECT VECTOR CONTROL in which the rotor flux angle is derived from measured stator voltages and currents INDIRECT VECTOR CONTROL in which is derived from the vector controlled constraint equation
Vector Control using DRFO Finding the rotor flux angle Consider the dynamic equations of the two stator coils in the frame:
vs = is Rs +
ds dt
v s = i s Rs +
s = (vs Rs is )dt
We want rotor fluxes
s = v s R s i s dt
ds dt
s = Ls is + Lo ir
s = Ls is + Lo ir
r = Lo i + Lr ir
r = Lo is + Lr ir
L r = r { (v s Rs is )dt Ls is } Lo L r = r v s Rs is dt Ls is Lo
{(
{(
is
L s
Rs
vs
+ -
Lr Lo
tan 1
r r
Note: the above can be drawn as two separate diagrams one for and one for
is vs
R
1 Lo
imrd
isq*
vsq* vsd*
e j
vs *
2/3
PWM
IM
isq
e j
isd
Flux & flux angle calculator
is 3/2
isabc
vsabc 3/2 vs
The PI controllers acting on the current errors are called the current controllers Real voltages are difficult to measure obtain from DC-link voltage & switching states
isq and isd are compared with demand values If isq* > real isq,then want more q-axis voltage to increase isq isq* means a torque demand, isd* means a flux current demand
r*
+ -
PI
isq* isd*
vsq* vsd*
e j
vs *
2/3
PWM
IM
isq
e j
isd
Flux & flux angle calculator
is 3/2
isabc
vsabc 3/2 vs
r is measured and compared with demand value If r * > real r ,then want more isq. But must limit isq* to e.g. 2x rated
The PI controller acting on the speed error is called the speed controller
r*
+ -
PI PI
isq* isd*
vsq* vsd*
e j
vs *
2/3
PWM
IM
isq
e
isd imd*
+ -
is 3/2
isabc
imd
Flux &
vsabc 3/2 vs
1 Lo
flux angle
calculator
imrd is derived and compared with demand value If imrd * > real imrd, then want more isd to increase the flux imrd * is derived from a field weakening block The PI controller acting on the imrd error is called the field or flux controller
Direct Rotor Flux Orientation (DRFO) Problem integrator drift DRFO is NOT used for high performance vector control is
L s
Rs
vs
+ -
Lr Lo
tan 1
r r
Let e.g. vs contain (small) dc offset. This will be integrated to give increasing output Called integrator drift - situation is shown in diagrams below
Int i/p Int o/p With sin input Int i/p Int o/p
Direct Rotor Flux Orientation (DRFO) Problem integrator drift Blue line is frequency response of ideal integrator see that it has infinite dc gain this is what causes integrator drift
Must limit output. Do this by replacing 1/s by 1/(sc+1) Cut-off frequency fc (=1/2c) is about 1Hz Phase errors introduced below 1Hz This means that will be wrong But OK if e above 2Hz
0 -45 -90
1Hz
10Hz
100Hz
L s
Rs
vs
+ -
Lr Lo
r
tan
r r
Remember: Vs proportional to frequency At high frequencies vs >> is Rs Below 2Hz, vs or even < than is Rs Since Rs varies thermally, it is not an accurate parameter Therefore signals and can be inaccurate below 2Hz
Integrator drift and poor knowledge of Rs means that low speed performance is poor. In fact, a DRFO drive often doesnt even start!
Vector Control using Indirect Rotor Flux Orientation Getting the rotor flux angle Consider the vector control equations D-axis vector control equation :
( r s + 1)imrd = isd
sl =
imrd =
1 isd ( r s + 1)
= e dt = ( r + sl )dt = ( r +
with imrd obtained above
isq
r imrd
)dt
Vector Control using IRFO Implementing the rotor flux angle calculator
= e dt = ( r + sl ) dt = ( r +
r*
+ -
i sq
r i mrd
vsq* vsd*
) dt
imrd =
1 isd ( r s + 1)
PI PI
e j
2/3
PWM
IM
e
sl
+ +
isd
3/2
isabc
isq r imrd
re r
P/2
Vector Control using IRFO Adding field weakening Demand isq* can be used for slip gain calculator (cleaner than isq) Field weakening added as shown If no field weakening action, isd* can be used in slip gain calculator
r*
+ -
vsq* vsd*
e j
2/3
PWM
IM
e
sl
+ +
r
imd*
1 sr + 1
isd
3/2
isabc
isq *
irmd
r imrd
re r
P/2
Vector Control using IRFO Why IRFO works Proof for base speed when imrd = isd Let the real flux angle in the machine be Let the real flux angle in the controller be The current vector is the same since currents are measured The rotation speed e is the same But the angle error in the d-axis will produce different dq current components
e
is d q r is
e
d er
q
isd
sq i
isq
sd i
Vector Control using IRFO Why IRFO works The rotation speed in controller e is the same as the real machine (imposed on PWM converter) The mechanical speed in controller is the same as the real machine Therefore we can say that sl = sl
isq*
PI
-
r*
PI
vsq* vsd*
PI
e j
2/3
PWM
IM
e
sl
+ +
isd
3/2
isabc
isq r imrd
e re r
P/2
Rr 1 isq isq = q-axis vector control (constraint) equation : sl = Lr imrd r isd i Rr 1 sq isq = But in the controller we also have: sl = r sd Lr imrd i
We know that
sl = sl
1 r sq 1 isq i = sd r isd i
If r = r then
is
=
d
q isq
Hence
But if
=
then
isd
sd i
r r
and
isq
Errors in
Unfortunately,
Rr
Controller Design
(Either DRFO or IRFO)
k prop +
kint s
x*(s)
G( s ) =
ki k ( s + ai ) s( s + p)
kp s p + 1
plant
can be written as
k (s + p)
k i ( s + ai ) s
controller
x(s)
samp=2fsamp
Gcl ( s ) =
n is natural frequency in rad/s often called bandwidth chosen by designer is the damping - chosen by designer System is digital with a samp. Normally samp is about 10-20 x n [for s-plane design] n can be related to step response rise time 3/n ; or settling time 4/n
2 2
Sampling synchronised to PWM sample e.g 5kHz PWM will give a system sampling time of 5kHz (symmetric PWM) or 10kHz (asymmetric) Voltage demand will be updated every samp (e.g. fsamp = 5kHz or Tsamp = 200s) Red signals are sampled at samp the fast sampling.
r*
+ -
isq*
PI PI PI PI
vsq* vsd*
e j
2/3
PWM
IM
isd* isq
r
imd*
1 sr + 1
isd
3/2
isabc
isq *
irmd
r imrd
sl
+ +
re r
P/2
d/dt
r*
+
isq*
PI PI PI
vsq* vsd*
e j
2/3
PWM
IM
isd*
isq
r
imd*
1 sr + 1
isd
3/2
isabc
isq *
irmd
r imrd
sl
+ +
re r
P/2
d/dt
The isd and isq P+I controllers will be identical one design for both Current loops are fast. Choose n as 2 x 100-200Hz e.g. 1000rad/s Need to find plant transfer function. Look at all delays in system (modelled by 1st order time constant)
I= 200s
controller
isq*
vsq*
inverter
k i ( s + ai ) s
1 s I + 1
usq*
plant
isq
Gp( s )
1 s f + 1
Anti-aliasing filter
f= 200s
Inverter delay: delay before demand voltage actually gets on to lines. Normally assume 1/fsamp. In our example, this is 200s Filter filters away PWM current ripple, cut-off < fsamp/2 e.g. 1kHz f 200 s What is Gp(s)?
usd = Rsisd + Ls
It would be good if we had only the first two terms e.g. for the d-axis equation:
usd = Rsisd + Ls
d isd dt
And the 1st two terms of the q-axis equation: usq = Rsisq + Ls Giving:
usq
1 / Rs s s + 1
usd = Rsisd + Ls
imd
sLo 2 / Lr
e Lo 2 / Lr
The terms in the red box are the demand voltages to overcome changing flux and the back-emf in the machine. We can add these as feed-forward terms into the controller
+ + +
eLs
isq* isd*
PI PI
vsq*+ vsd*
e j
2/3
PWM
IM
isq isd
e j
3/2
isabc
Current Controllers
The feedforward terms means that the PI control only supplies the voltages to increase or decrease the current The plant transfer function Gp(s) is now 1st order and given below The value of s is about 10-25ms and is much slower than the delays of filter and inverter
inverter
f= 200s
plant
f= 20ms
isq*
k i ( s + ai ) s
1 s I + 1
1 / Rs s s + 1
isq
1 s f + 1
Anti-aliasing filter
f= 200s
Current Controllers
The feedforward terms means that the PI control only supplies the voltages to increase or decrease the current The plant transfer function Gp(s) is now 1st order and given below The value of s is about 10-25ms and is much slower than the delays of filter and inverter
plant
isq*
k i ( s + ai ) s
1 / Rs s s + 1
isq
Control design is now easy. Let s = 0.02 and Rs = 1. Hence plant Assume wish for n = 1000rad/s with =0.75 Then we have: s 2 + ( 50 + 50 k i ) s + 50 k i a i = s 2 + 1500 s + 10 6 From which PI parameters are derived
50 s + 50
The machine will develop torque Te and this will cause a speed response The response will be defined by:
J = moment of inertia Bv = viscous friction coefficient Ba = aerodynamic friction coefficient
Te = TLoad
d + J r + Bv r + Ba r 2 dt
Tload is associated with the application it is unknown and is treated as a disturbance Bv and Ba may be included as part of Tload if they are not known J is that of the motor and load Ba normally neglected to make design linear (but can be significant at high speeds)
Writing using Laplace operator and ignoring aerodynamic friction:
Te = TLoad + Jsr + Bv r
TLoad Te
1/ J s + Bv / J
r =
1/ J (Te TLoad ) s + Bv / J
P Lo 2 imrd isq T = 3 2 L r
We can now put a torque demand isq* on to machine. The machine will develop torque according to isq this will be within 2-10ms of the torque demand fast.
isq*
f= 5ms
isq Te
TLoad
plant
r*
k i ( s + ai ) s
kt
1/ J s + Bv / J
P Lo 2 imrd isq T = 3 2 L r
We can now put a torque demand isq* on to machine. The machine will develop torque according to isq this will be within 2-10ms of the torque demand fast.
plant
r*
k i ( s + ai ) s
isq*= isq
kt / J s + Bv / J
Current loop effectively neglected since it speed will not change much in a few ms! Combine kt with plant, and control design follows in same way as before n difficult to chose generally a few Hz for machines 5-50kW In practice, J and mechanics of plant not known, PI is normally a PID and is set by trial and error by the commissioning engineer
Field controller takes error of imrd (or flux) and outputs signal isd* Plant will take isd* and outputs imrd . Must identify all delays between isd* and imrd Know that isd* follows isd with delay 2-10ms (like q-component)
r*
+ -
isq*
PI PI PI PI
vsq* vsd*
e j
2/3
PWM
IM
isd* isq
r
imd*
1 sr + 1
isd
3/2
isabc
isq *
irmd
r imrd
sl
+ +
re r
P/2
d/dt
Field controller takes error of imrd (or flux) and outputs signal ids* Plant will take isd* and outputs imrd . Must identify all delays between ids* and imrd Know that isd* follows isd with delay 2-10ms (like q-component)
isd* imrd*
f= 5ms
isd
plant
k i ( s + ai ) s
1 s r + 1
imrd
To choose n: note imrd* comes from the field weakening function driven by speed. Thus imrd* cannot change by more than the CL speed bandwidth (a few Hz). Choose CL flux n as e.g. 8-10 times that of the speed. Eg let r = 100ms, n = 20Hz, damping factor = 0.8 Require: s2+200s+15800; have s2+10(1+k)s+10ka k=19, a =83 BUT in field weakening r increases slower plant. Do not try for too much n
e j
2/3
PWM
IM
e j
3/2
isabc
A torque demand or flux producing current demand may be applied. The actual isd and isq will track the demands within milliseconds.
(i)
If a step isq* is applied to a machine in Bv is zero or very low, then machine will accelerate in an uncontrolled manner (see right) The acceleration depends on the difference between ktisq* and TLoad
isq isq*
(ii)
(i) idq applied with no load torque (ii) idq applied with constant Tload but < Te
t4: t5:
r* r*
+
PI
isq*
IRFO current control
IM
imrd *
0 t1
t2
t3
t4 t5