Professional Documents
Culture Documents
2002 Simulink Implementation of Induction Machine Model - A Modular Approach PDF
2002 Simulink Implementation of Induction Machine Model - A Modular Approach PDF
— A Modular Approach
Burak Ozpineci1 Leon M. Tolbert1,2
burak@ieee.org tolbert@utk.edu
1 2
Oak Ridge National Laboratory Department of Electrical and Computer
P.O. Box 2009 Engineering
Oak Ridge, TN 37831-6472 The University of Tennessee
Knoxville, TN 37996-2100
Abstract — In this paper, a modular Simulink implementation to the one in this paper but does not give any details.
of an induction machine model is described in a step-by-step In this paper, a modular, easy-to-understand Simulink
approach. With the modular system, each block solves one of the induction motor model is described. With the modular
model equations; therefore, unlike in black box models, all of system, each block solves one of the model equations;
the machine parameters are accessible for control and
verification purposes.
therefore, unlike in black box models, all of the machine
After the implementation, examples are given with the model parameters are accessible for control and verification
used in different drive applications, such as open-loop constant purposes.
V/Hz control and indirect vector control. Finally, the use of the The Simulink induction machine model discussed in this
model as an induction generator is demonstrated. paper has been featured in a recent graduate level text book
[6], and it also has been used by different scholars in the
I. INTRODUCTION United States [7–9], Korea, and Brazil [10–12] in their
research.
Usually, when an electrical machine is simulated in circuit
simulators such as PSpice, its steady state model is used; but
II. INDUCTION MOTOR MODEL
for electrical drive studies, the transient behavior is also
important. One advantage of Simulink over circuit simulators The induction machine d-q or dynamic equivalent circuit is
is the ease in modeling the transients of electrical machines shown in Fig. 1. One of the most popular induction motor
and drives and in including drive controls in the simulation. models derived from this equivalent circuit is Krause’s model
As long as the equations are known, any drive or control detailed in [13]. According to his model, the modeling
algorithm can be modeled in Simulink. However, the equations in flux linkage form are as follows:
( )
equations by themselves are not always enough; some dFqs ω R
experience with differential equation solving is required. = ω b vqs − e Fds + s Fmq + Fqs (1)
dt ωb xls
Simulink induction machine models are available in the
ωe
literature [1–3], but they appear to be black boxes with no dFds
= ω b vds + Fqs +
Rs
(Fmd + Fds ) (2)
internal details. Some of them [1-3] recommend using S- dt ω b x ls
functions, which are software source codes for Simulink
blocks. This technique does not fully utilize the power and iqs iqr
ease of Simulink because S-function programming Rs Lls=Ls -Lm Llr=Lr-Lm - + Rr
+ -
knowledge is required to access the model variables. S-
functions run faster than discrete Simulink blocks, but ωeΨds (ωe-ωr)Ψ dr
Simulink models can be made to run faster by using Lm
vqs vqr
“accelerator” functions or producing stand-alone Simulink Ψ qs=Fqs/ωb Ψ qr=Fqr/ωb
models. Both of these require additional expense and can be
avoided if the simulation speed is not critical. Another
approach is using the Simulink Power System Blockset [4] (a)
that can be purchased with Simulink. This blockset also ids idr
Rs Lls=Ls -Lm Llr=Lr-Lm Rr
makes use of S-functions and is not as easy to work with as - +
+ -
the rest of the Simulink blocks.
Reference [5] refers to an implementation approach similar ωeΨ qs (ωe-ωr)Ψ qr
vds Lm vdr
The submitted manuscript has been authored by a contractor of the U.S. Ψ ds=Fds/ωb Ψ dr=Fdr/ωb
Government under contract No. DE-AC05-00OR22725.
ωb
dr
dt xlr vector. Note that Fij = ψ ij ⋅ω b , where Fij is the flux linkage
dFdr (ω − ω r ) F +
= ω b vdr + e
Rr
(Fmd − Fdr ) (4) (i=q or d and j=s or r) and ψij is the flux.
ωb
qr
dt x lr In this case, state-space form can be achieved by inserting
(5) and (6) in (1–4) and collecting the similar terms together
Fqs Fqr
Fmq = x*ml + (5) so that each state derivative is a function of only other state
xls xlr variables and model inputs. Then, the modeling equations (1–
F F 4 and 12) of a squirrel cage induction motor in state-space
Fmd = x*ml ds + dr (6) become
xls xlr
dFqs ω R x* x*
iqs =
1
xls
(
Fqs − Fmq ) (7) dt
= ω b vqs − e Fds + s ml Fqr + ml − 1 Fqs
ωb
xls xlr
xls
(13)
ids =
1
(Fds − Fmd ) (8) dFds ω R x* x*
= ω b vds + e Fqs + s ml Fdr + ml − 1 Fds (14)
xls
dt ωb xls xlr x
ls
iqr =
1
xlr
(Fqr − Fmq ) (9)
dFqr (ω − ω ) R x* x*
= ω b − e r
Fdr + r ml Fqs + ml − 1 Fqr (15)
dt ωb xlr xls x
idr =
1
(Fdr − Fmd ) (10) lr
xlr (ω − ω )
dFdr R x* x*
= ωb e r
Fqr + r ml Fds + ml − 1Fdr (16)
3 p 1
Te =
2 2 ωb
(
Fdsiqs − Fqs ids ) (11) dt ω b
xlr xls
xlr
dω r p
2 dω
Te − TL = J r (12) = (Te − TL ) (17)
dt 2 J
p dt
wr 5 sin(theta-e) ic 3
TL(or Tl) : load torque, we
idr
wr
syn-abc
ic
For a squirrel cage induction machine, as in the case of this Fig. 2. The complete induction machine Simulink model.
paper, vqr and vdr in (3) and (4) are set to zero.
An induction machine model can be represented with five
differential equations as shown. To solve these equations,
they have to be rearranged in the state-space form,
A. o-n conversion block block for the current variables using (22) and (23), following
This block is required for an isolated neutral system, the same implementation techniques as before.
otherwise, it can be bypassed. The transformation carried out iqss = vqs cos θe + vds sin θ e
by this block can be represented as follows: s (22)
ids = −vqs sin θ e + vds cos θe
2 1 1
+ − −
van 3 3 3 vao
1 2 1 1 0
vbn = − 3 + − vbo (18)
3 3 ia
vcn 1 1 2 vco 1 3 iqss
− − + ib = − 2
−
2 idss
(23)
3 3 3 ic
1 3
This matrix is implemented in Simulink by passing the input −
2 2
voltages through a Simulink “Matrix Gain” block, which
contains the transformation matrix in (18). E. Induction machine d-q model block
Fig. 3 shows the inside of the induction machine d-q block
B. Unit vector calculation block where each equation from the induction machine model is
Unit vectors cosθe and sinθe are used in vector rotation implemented in a different block.
blocks, “abc-syn conversion block,” and “syn-abc conversion First consider the flux linkage state equations because flux
block.” The angle, θe, is calculated directly by integrating the linkages are required to calculate all the other variables.
frequency of the input three-phase voltages, ωe: These equations could be implemented using the Simulink
θ e = ∫ ω e dt (19) “State-space” block; but to have access to each point of the
model, implementation using discrete blocks is preferred.
The unit vectors are obtained simply by taking the sine and Fig. 4 shows what is inside of the block solving (1). All the
cosine of θe. other blocks in Column 1 are similar to this block.
This block is also where the initial rotor position can be
inserted, if needed, by adding an initial condition to the Simulation Tip 1 : Do not use derivatives. Some signals will
Simulink “Integrator” block. Note that the result of the have discontinuities and/or ripple that would result in spikes
integration in (19) is reset to zero each time it reaches 2π when differentiated. Instead try to use integrals and basic
radians so that the angle always varies between 0 and 2π. arithmetic.
C. abc-syn conversion block
Simulation Tip 2: Beware of the algebraic loops. Algebraic
To convert three-phase voltages to voltages in the two - loops might appear when there is a feedback loop in a system,
phase synchronously rotating frame, they are first converted i.e., when the calculation of the present value of a variable
to two-phase stationary frame using (20) and then from the requires its present value. When Simulink notices an
stationary frame to the synchronously rotating frame using algebraic loop, it will try to solve it. If it cannot, it will stop
(21). the simulation. An algebraic loop can be broken by adding a
1 0 0 van Simulink “Memory” block, which delays its input signal by
vqs
s
s = 1 1 vbn (20) one sampling time; however, this might affect the operation
0 −
vds 3 vcn of the system. If possible, avoid algebraic loops.
3
Te
wr 4
4 Tl
wr
Tl wr
vbo vbo ib
Gain3
0 vds* vbo* vbo*
i
Constant
vco vco ic
we vco* vco*
wr
Mux7
200 100
i a, ib, and ic, A
0
0
-200
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2 100
0 0.2 0.4 0.6 0.8 1 1.2
200
T e and T l, N. m.
50
Te and Tl, N .m .
- Te
100 Te
0
Tl Tl
0 -50
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2 0 0.2 0.4 0.6 0.8 1 1.2
ω r* and ω ,r rad/ se c
ω e and ω r, rad/ sec
600
400
ωe
400
200 ωr
200 ωr ωr *
0 0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2 0 0.2 0.4 0.6 0.8 1 1.2
Time, s Time, s
Fig. 7. Simulation results — direct ac startup. Fig. 9. Simulation results — open-loop constant V/Hz control.
To Initialize
Double-click vref
vao vao ia
200
ia, i b, and ic , A
vref
vqs* vqs* vao* vao*
wr* wr*
vds* vbo vbo ib
wr*
wr wsl vds* vbo* vbo*
ia1
Torque and Flux
Control we vco* vco*
vco vco ic 0
we
Sum2 iemdc2.mat
Command Voltage3- phase PWM Inverter Mux6
Generator Tl Tl Te To File1
Subsystem
Te1 - 200
we wr Mux5
0 0.2 0.4 0.6 0.8 1 1.2
Induction Machine Model
Te and Tl, N .m .
50 Te
Mux7 wr1 Tl
Fig. 10. Indirect vector control Simulink model.
0
1
wr* 2 PI 0
PI 1
wr Sum2 PI Controller2
Saturation1 vqs*
[iqs] Sum1 PI Controller1 Saturation2
From1 -50
Ids
PI 2
[ids] ids* -100
From3
Sum3 PI Controller3 Saturation3 vds*
-150
Lm/(Tr)
Gain
fluxr |u|
1 3 -200
u wsl
0 200 400 600 800 1000 1200
Product
absolute peak
rotor flux Abs Math ωr , rad/sec
Function
Fig. 13. Torque-speed curve in motoring and generation modes.
Fig. 11. Vector control block in Simulink.
2002. [10] J. O. P. Pinto, B. K. Bose, L. E. B. Silva, M. P. Kazmierkowski, “A
[7] B. Ozpineci, B. K. Bose, “A soft-switched performance enhanced high neural-network-based space-vector PWM controller for voltage-fed
frequency non-resonant link phase-controlled converter for ac motor inverter induction motor drive,” IEEE Transactions on Industry
drive,” The 24th Annual Conference of the IEEE Industrial Electronics Applications, vol. 36, no. 6, Nov./Dec. 2000, pp. 1628–1636.
Society (IECON'98), Aachen, Germany, 1998, vol. 2, pp 733–749. [11] J. O. P. Pinto, B. K. Bose, L. E. B. Silva, “A stator flux oriented vector-
[8] H. Li, B. Ozpineci and B. K.Bose, “A soft-switched high frequency controlled induction motor drive with space vector PWM and flux
non-resonant link integral pulse modulated dc-dc converter for ac vector synthesis by neural networks,” IEEE Industry Applications
motor drive,” The 24th Annual Conference of the IEEE Industrial Society Annual Meeting, Rome/Italy, 2000, pp. 1605–1612.
Electronics Society (IECON'98), Aachen, Germany, 1998, vol. 2, pp [12] J. O. P. Pinto, B. K. Bose, L. E. Borges, M. P. Kazmierkowski, “A
726–732. neural-network-based space-vector PWM controller for voltage-fed
[9] B. Ozpineci, L. M. Tolbert, S. K. Islam, Md. Hasanuzzaman, “Effects inverter induction motor drive,” IEEE Industry Applications Society
of silicon carbide (SiC) power devices on PWM inverter losses,” The Annual Meeting, Phoenix/Arizona, 1999, pp. 2614–2622.
27th Annual Conference of the IEEE Industrial Electronics Society [13] P. C. Krause, Analysis of Electric Machinery, McGraw-Hill Book
(IECON'01), Denver, Colorado, 2001,pp. 1187–1192. Company, 1986.