Are you sure?
This action might not be possible to undo. Are you sure you want to continue?
Vakgroep Elektromechanica en Vermogenselektronica
Afstudeerverslag
MODELLING AND IDENTIFICATION
OF SINGLE AND DOUBLECAGE
INDUCTION MACHINES
EMV 9421 S.M. Schilperoort
Hoogleraar:
Mentor:
Prof. Dr. Ir. AJ.A. Vandenput
Dr. Ir. lL. Duarte
Eindhoven, december 1994
De Faculteit der Elektrotechiek van de Technische Universiteit Eindhoven aanvaardt geen verantwoordelijkheid voor de inhoud
van stage en afstudeerverslagen
Summary
SUMMARY
This report aims at incorporating the influence of skineffect into models, which are
suited for numerical simulation of electrical machine dynamics. With a secondorder
description the skineffect is approached. This leads to a doublecage machine model.
Equations for the rotor circuit in rotor coordinates are derived, resulting in a linear rotor
transfer function. The stator circuit is described in stator coordinates. Both circuits are
linked by transforming current and flux from stator to rotor coordinates and viceversa.
Another subject of study is machine parameter estimation. Two identification methods
are studied: the twofluxmodel (TFM) method and an OutputError (OE) method. The
TFMmethod uses two independent set of equations. With the TFMmethod only single
cage model parameters can be estimated using special load and test conditions.
The OEmethod is based on the minimisation of the quadratic error between real output
and model output. The switching harmonics of an inverter supply are used as excitation
source to estimate the machine parameters. It is found that with this method it is
possible to estimate doublecage machine parameters.
Both methods are applied to single and doublecage simulation models. For singlecage
model estimation both methods lead to parameter values with deviation less than 1%.
The OEmethod is able to estimate all doublecage parameters with the same accuracy.
The singlecage machine parameters generated by the TFMmethod can also be used to
approximate the dominant time constant of higher order machine models.
Finally, the methods are tested on a doublecage 11 kW SKA machine. When the OE
method is used, it appears that the estimated singlecage parameters are dependent of the
prefilter choice. This indicates that the chosen model order does not fit the real system
(i.e. undermodelling). Applying a doublecage model results in an estimation that is
independent of the chosen prefilter.
To validate the estimated machine parameters, the simulation models are fed with the
measured stator voltages and rotor speed. The estimated stator currents are compared
with the measured currents. Results show that the OEmethod describes the stator
current more accurately than the TFMmethod does.
Samenvatting
SAMENVATTING
iii
In dit rapport wordt ingegaan op het modelleren van het skineffect in een dynamisch
machinemodel. Voor de modellering van het skineffect is een tweede orde benadering
toegepast. Dit resulteerd in een dubbelkooi machinemodel. Voor de modelvorming is
het rotorcircuit beschreven in rotorcoordinaten waardoor een lineaire rotor overdrachts
functie ontstaat, waarin uitbreiding tot een hoger orde rotorcircuit relatief eenvoudig is.
Het statorcircuit daarintegen wordt beschreven in statorcoordinaten. Beide circuits
worden met elkaar gekoppeld door de flux en stroom te transformeren van rotor naar
statorcoordinaten en omgekeerd.
Een tweede studieonderwerp in dit rapport is machine identificatie. Twee identificatie
methodes zijn nader bekeken: de TweeFluxModel (TFM) methode en een Output
Error (OE) method. De TFMmethode gebruikt twee fluxmodellen met onafhankelijke
machineparameters. Met de TFMmethode kunnen echter alleen enkelkooi machine
parameters geschat worden. De OEmethode is gebaseerd op minimalisatie van de
kwadratische fout tussen de geschatte procesuitgang en de werkelijke procesuitgang.
Voor machine identificatie worden de harmonische componenten van de inverter
voeding gebruikt als excitatiebron.
Beide methoden zijn toegepast op een dynamische enkel en dubbelkooi machinemodel.
Toegepast op een enkelkooimodel resulteren beide methoden in een schatting van de
enkelkooiparameters waarbij de afwijking kleiner is dan 1 %. Toegepast op een dubbel
kooi simulatiemodel resulteert de OEmethode in een schatting van alle dubbelkooi
parameters met dezelfde nauwkeurigheid. De TFMmethode kan gebruikt worden om
hogere orde machine modellen te benaderen met een enkelkooi model.
Ais laatste zijn de methoden getest op een llkW SKA dubbelkooi machine. De
resultaten zijn beoordeeld aan de hand van het vergelijken van gemeten en gesimuleerde
stromen, waarbij de gemeten spanningen en rotorsnelheid aangeboden worden aan de
geschatte simulatiemodellen. Hieruit voIgt dat het geschatte dubbelkooi machinemodel
bij gebruik van de OEmethode resulteerd in een betere benadering van de statorstroom
dan het geschatte enkelkooi model bij gebruik van de TFMmethode.
list ofsymbols
LIST OF SYMBOLS
Machine parameters
v
L
h
L
m
Las
L
ak
La
L
a2
cr
~ 2
L
sk
' L
ks
R
kO
R
k
R
kl
,R
k2
R
s
k
p
mj
N
j
J
Mel
M
load
slip
Main air gap inductance.
Main inductance.
Leakage inductance of the stator.
Leakage inductance of the rotor.
Leakage inductance.
Leakage inductance of the inner cage.
Relative leakage factor.
Mutual inductance between inner and outer cage
Mutual inductance between stator and rotorcage.
Per phase rotor resistance of a 3 phase machine.
Per phase cageresistance.
Resistance of outer and inner cage.
Stator resistance.
Transformation ratio.
Number of pole pairs.
Number of stator/rotor phases j ={s, k}
Number of stator/rotor windings j ={s, k}
Momentum of inertia.
Electric torque.
Load torque.
Slip [%].
Stator current component in the direct axis of the fluxreference.
Stator current component in the quadrature axis of the fluxreference.
Inverter parameters
U
dc
U
rec
uref
uqN
uqo
u
tri
mi
n
p
0) tri
DCvoltage on the input of the converter.
Rectified threephase voltage.
reference voltage.
Voltage between phase q and negative inverter terminal.
Voltage between phase q and the starnode of the machine.
Triangular carrier wave.
Modulation index.
Pulse number.
Trianglecarrier wave frequency
vi
Greek variables
Modelling and identification ofsingle and doublecage induction machines
<pS
• s
<p
Angle with respect to the stator axis.
Angular frequency with respect to the stator axis.
Stator voltage angle with respect to the stator axis
Stator voltage angular frequency
Angle between rotor and stator coordinates
Mechanical angular frequency.
Flux.
Identification parameters
(u)o/;
A
 ,
( i)\f'k
u
v
y
E
D
is
T
s
fnyq
ro nyq
Go(ro)
q
G(q)
H(q)
L(q)
B(q)
F(q)
q , ~ , bnh
fi.f2, fn/
8
<l>
N
No
N
p
m
l:i.f
Nnoise
U
ojfset
Estimated cage flux of the VII model.
Estimated cage flux of the I I q> model.
System input.
Coloured output noise.
Predicted output.
Output error.
Parameter set.
Sample frequency [Hz].
Sample time [s].
Nyquist frequency [Hz].
Angular Nyquist frequency [rad/s].
Real process.
Shift operator.
Process model.
Noise model.
Lowpass prefilter.
OE numerator polynomial.
OE denominator polynomial.
Parameters of B(q).
Parameters of F(q).
Parameter vector.
Regression vector.
Number of data points.
Number of samples within one fundamental period.
Number of periods in the data set.
Number of samples in Np periods
Distance between two observable frequencies [Hz].
Desired signal to noise ratio.
Offset voltage.
list ofsymbols vii
Space vectors
:#
I
k
:a
III
:a
Ik
7r
Ikl
r
i
k2
7a
Is
s
Us
'iJ%
'iJr
k
'iJ;1
 r
\}Jk2
' i J ~
'iJs
s
Preprocessed data set of N complex data points.
Stepsize (NewtonRaphson method).
Lossfunction to be minimised.
First and second derivative of the lossfunction with respect to e.
Gradient of the prediction error.
Transformed equivalent rotor current.
Magnetising current vector in arbitrary coordinates, a E {r, s}
Cage current vector in arbitrary coordinates, a E {r, s}
Outer cage current vector in rotor coordinates
Inner cage current vector in rotor coordinates
Stator current vector in arbitrary coordinates, a E {r, s}
Stator voltage in stator coordinates
Cageflux vector in arbitrary coordinates, a E{r,s}
Cageflux vector in rotor coordinates
Outer cageflux vector in rotor coordinates
Inner cageflux vector in rotor coordinates
Airgap flux vector in arbitrary coordinates, a E {r, s}
Stator flux vector in stator coordinates
Complex variables:
Currentvector represented as complex number with stator/rotor as
reference A = is, R} .
Voltagevector represented as complex number A =is, R}.
Fluxvector represented as complex number A={S, R}.
Rotor impedance.
Superscripts: X is an arbitrary variable
X
S
Representation ofX in stator coordinates.
X
r
Representation ofX in rotor coordinats.
X
a
Representation ofX in an arbitrary axis.
X
R1
Real part of the complex representation, equals rotor coordinate rl.
X
R2
Imaginary part ofthe complex representation, equals rotor coordinate r2.
X Derivative of variable X
viii
A
X
X'
Xl.
Modelling and identification ofsingle and doublecage induction machines
Estimated variable or parameter.
Transformed parameter or variable.
Inverse polynomial.
Subscripts: X is an arbitrary variable
X
s
X
r
X
o
X
cr
X
m
X
k,kl,k2
X
max
Operators
Abreviations
AC
AID
DC
DSP
IRTF
OE
PE
PWM
SKA
SCaSM
DCaSM
TFM
Referring to the stator.
Referring to the rotor.
Related to the fundamental component.
A leakage component.
Related to the mechanical section.
Refering to the cage.
Maximum value.
Laplace operator.
Schift operator.
Frequency spectrum ofX
Alternating current.
Analoque to Digital conversion.
Direct current.
Digital Signal Processor.
Ideal Rotating TransFormer.
Output Error.
Presistently Exciting.
Pulse Width Modulation.
Special cage asynchronuous machine
Singlecage simulation model.
Doublecage simulation model.
TwoFIuxModel.
Table ofcontents
Contents
ix
Summary i
SaIIlenvatting iii
List of symbols v
1. Introduction 1
2. Asynchronous machine modelling 3
2.1. Introduction 3
2.1.1. The asynchronous machine 3
2.1.2. Squirrel cage 4
2.2. Lockedrotor induction machine modelling 6
2.2.1. Singlecage 6
2.2.2. Doublecage / Deepbar induction machine 10
2.2.3. Deepbar cage 14
2.3. DynaIIlic model 15
2.4. DynaIIlic modelling using the ideal rotating transfonner 19
2.5. Converter modelling 22
2.6. Comparing double and singlecage effects 26
2.6.1. Steadystate speed/torque curves 26
2.6.2. No load situation, motor fed with a PWMinverter 27
2.6.3. DynaIIlic response, motor fed with a PWMinverter 27
3. Machine paraIIleter identification 29
3.1. Twofluxmodel method 29
3.1.1. Identification strategy 31
3.1.2. Optimisation of the method 33
3.1.3. Estimation of the rotor resistance 33
3.2. Output error method 35
3.2.1. Identification Procedure 35
3.2.2. Estimation of the process output 37
3.2.3. Model set structure 39
3.2.4. Identification of the machine paraIIleters 41
3.2.5. Offline data preprocessing 44
3.2.6. Offline identification algorithm 48
4. Simulation results 51
4.1. Machine models 51
4.3. Twofluxmodel method 52
4.3.1. Singlecage estimation 52
4.3.2. Skin effect 53
4.4. Output error method 57
4.4.1. Singlecage estimation 57
4.4.2. Doublecage estimation 60
5. Estimation ofreal machine paraIIleters 65
5.1. Measurements 65
5.2. Twofluxmodel method 66
5.3. Output error method 71
5.3.1. Data Acquisition 71
x Modelling and identification ofsingle and doublecage induction machines
5.3.2. Singlecage estimation 74
5.3.3. Doublecage estimation 76
5.4. Verification of the estimation results 79
5.4.1. Steadystate curves 79
5.4.2. Validation based on measured data 81
6. Conclusions and recommendations 85
6.1. Conclusions 85
6.2. Recommendations 86
Bibliography 89
Appendix A: The bond graph method 93
Appendix B: Coordinate transformations 97
Appendix C: Machine parameters 99
C1: Machine characteristics and pu references 99
C2: Calculation of singlecage machine parameters 100
Appendix D: Momentum of inertia 103
Appendix E: PSIIc Simulation program's 105
El: TFM_id.psm: 105
E2: OE_data.psm: 108
Appendix F: DSPProgram's, TMS320c30 code 113
F1: TFM ident 113
F2: OE data 122
F3: Store data in MatlabFile 127
Appendix G: Matlab Mfiles 133
Gl: Pre'proc.m: 133
G2: par_est.m 137
G3: Specint.m 139
Chapter i, introduction
1. INTRODUCTION
i
For many purposes, among them analysis and control design, people want to be able to
describe electric machines in an understandable way. This means we want to describe
some aspects of the real machine in an abstract way. For modelling it is therefore
important to select only those characteristics which are necessary and sufficient for the
desired purpose. Induction machines are widely used in all sorts of electromechanical
drive systems because of their simple and robust structure. Due to the developments of
modem control techniques, using power electronics and microprocessors, induction
machines have now become a good alternative to DCmachines for variable speed
applications. However, these control methods require an accurate machine model and
therefore an estimation of the machine parameter is necessary.
The goal in this report is to derive a model of an induction machine with significant
skineffect, which results in an accurate description of a real induction machine. In
previous work many different machine models are developed; a lot of these models are
based on singlecage machine properties. For dynamic modelling most of these machine
models are described using one coordinate system (such as fluxcoordinates or stator
coordinates). This approach always needs the standard machine equations to be
transformed [Van '92]. In case of singlecage modelling this is not a real problem, but
for higher order rotorcircuits like a doublecage this becomes very complicated and the
equations become disorderly. In Chapter 2 a steadystate machine model will be
derived, using a second order skineffect approach, which equals a well known double
cage rotor model. This steadystate model is expanded to a dynamic doublecage model
using the mechanical machine equations. However, once a machine model has been
derived, it will only be useful if the parameters of this model can be found.
In Chapter 3 two identification methods are studied. One method is based on the state
space description of the singlecage induction machine. The parameters are tuned by
minimising the error between two independent flux models. The second method is based
on the minimisation of the error between real and estimated machine output, by means
of a quadratic minimisation function. This so called outputerror method is based on
estimation of a linear inoutput model and is therefore not directly applicable on the
measured stator voltage and current, because they have no linear relation. By
transforming the measured stator signals to rotor coordinates this nonlinearity is
cancelled out.
To be able to validate the estimation results of the two methods, the methods are tested
on the single and doublecage simulation models derived in Chapter 2. The results are
discussed in Chapter 4.
The identification methods are applied to a real machine, which is discussed in Chapter
5. The used machine is a Heemaf llkW SKAmachine. According to the measured
steadystate speed/torque curve this machine has a significant skineffect. The steady
state and dynamic behaviour of the estimated machine models is validated based on
measured machine data.
Chapter 2, Asynchronous machine modelling
2. ASYNCHRONOUS MACHINE MODELLING
2.1. INTRODUCTION
3
In recent years AC drives have become a good alternative to DC machines for variable
speed applications. This is mainly due to the developments in power electronics. In
particular asynchronous motor drives have the advantage of being robust and not having
hindrance of commutators or brushes. These factors lead to a more reliable system, with
less maintenance. These advantages also have a counterside however: asynchronous
motors are difficult to control. Induction motors described as a dynamic system are at
least 6
th
order systems [Velt '94], while a DC machine can be described as a 2
nd
order
system. However the use of fieldoriented control for ACmachines gives us a tool to
create a highly dynamic drive system. In the ideal case a fieldoriented controlled
induction motor becomes an easy to control DClike machine. To create a good field
oriented control an accurate machine model is required. Accurate machine models can
also be very useful to study:
• effects ofthe nonsinusoidal inverter supply on machine losses;
• effects of a particular mechanical load on the machine;
• new controllers.
In this chapter a transient simulation model for a doublecage/deepbar machine is
derived. First a lockedrotor equivalent circuit for a singlecage induction machine is
derived. Then a lockedrotor circuit of a doublecage machine is studied. The locked
rotor circuits are then expanded to dynamic models using spacevector notation and the
mechanical equations. Another approach for deriving a dynamic machine model is given
by [Velt '94] using an ideal rotating transformer.
The following assumptions are made: the machine is a 3phase asynchronous machine
with one polepair; no saturation; both cages of the discussed doublecage have the
same number of rotor bars; there is no influence of iron losses such as eddy current and
hysteresis.
2.1.1. THE ASYNCHRONOUS MACHINE
All rotating electrical machines can be divided in a stationary part, the stator, and a
rotating part, the rotor. Between the rotor and stator is a small air gap which is assumed
to be narrow and uniform. The stationary part of the machine has three identical stator
windings mechanically placed at an angle of 120
0
• These stator windings are considered
to be sinusoidal distributed along the stator circumference.
In case of a woundrotor the rotor construction is similar to that of the stator. Squirrel
cage rotors however are made up of two end rings and a number of rotor bars. This cage
acts as a set of shortcircuited windings. The symmetrical squirrel cage can therefore be
seen as a small number of lumped windings assuming that the rotor material is linear
and isotropic. If magnetic saturation is neglected, the rotor "windings" may be
4 Modelling and identification ofsingle and doublecage induction machines
represented as three identical, shortcircuited, lumped windings, like the stator
windings, positioned at an angle of 120 mechanical degrees, see Fig. 2.1.
Figure 2.1: schematic layout ofa 3phase asynchronous machine.
In normal operation the rotor rotates slower than the applied stator field, which causes
an induced voltage in the shorted windings. This voltage will generate a current flow
through the rotor windings (bars). The magnetic field produced by the stator penetrates
the rotor winding and, therefore, torque will be generated. If the rotor speed equals the
rotation speed of the stator field (synchronous speed), no voltage is induced and
consequently no torque is generated. The relative difference between the stator field
rotation speed <j>s =2nfo and the mechanical rotor speed pS, is defined as slip:
. s . s
slip=<+> p
. s
<+>
For medium power induction machines the slip at rated torque is about 1.. .3 %.
2.1.2. SQUIRREL CAGE
(21)
To simplify the modelling, a symmetrical 3phase machine can be described by an
equivalent model with just two orthogonal windings. A 3phase system will produce a
rotating field composed of the three phase components with an angle of 120
0
to each
other, see Fig. 2.2. The resulting vector component can be described in a two
dimensional plane without loss of information by means of rotation.
.s>
Is
Chapter 2, Asynchronous machine modelling
82
/'\
/ \
/ \
\
\
\
\
\
\
¥    . . e    ~  81
I
ish I
I
Figure 2.2: vector diagram ofa three phase system
5
Throughout this work the twocoordinate system will be used with the stator coordinates
sl an s2 and the rotor coordinates r1 and r2. The transformation is discussed in
Appendix B.
To use this socalled semi 4phase model for a squirrel cage machine, it has to be treated
like a wound rotor machine; the squirrelcage machine with unequal mutual
inductance's must be transformed to a wound rotor induction machine with equal
mutual inductance's without losing any machine dynamics. In general the flux linkage,
in case of a singlecage rotor, between stator and rotor side can be written in space
vector notation:
(22)
(23)
with L
s
the inductance of the stator, L
k
the inductance of the rotor and L
ks
, L
sk
the
mutual inductance between rotor and stator circuit. By defining an equivalent rotor
current
:# : L
ks
zk =zk
L
sk
and substituting this equivalent rotor current in Eq. (22 and 23) yields:
  #
\{Is = Lsi
s
+Lski k
with:
(24)
(25)
(26)
(27) LX = L
sk
L
k
L
ks
This new rotor current T/ is associated with a nonphysical equivalent circuit with equal
mutual inductances. Therefore the nonphysical rotor circuit has the same construction
as the stator winding. This results in the equivalent lockedrotor transformer circuit as
depicted in Fig. 2.3.
6 Modelling and identification ofsingle and doublecage induction machines
.. ..
Figure 2.3: equivalent lockedrotor transformer circuit.
The mutual inductance between rotor and stator is defined as [Mach '90]:
Lij = (A. N
j
• Nj ) i,j={s, k} (28)
With N
s
k is the number of stator/rotor windings and m
s
k the number of phases. A is
the permeability of the flux path through the Thus with m
s
=3, mk
will equal 3 and the rotor cage has changed to an equivalent three phase rotor. Both
rotor and stator can be described by a three phase wound system, which enables us to
use the equivalent semi 4phase circuit.
2.2. LOCKEDROTOR INDUCTION MACHINE MODELLING
2.2.1. SINGLECAGE
The starting point for this modelling concept IS the spacevector description of an
induction machine with lockedrotor:
tp: = +it) +L
crs
tpI =L
crk
Tf + L
h
(T; +Tf)
(29)
(210)
(211)
(212)
In this case the rotor impedance and current are transformed to the stator side and the
mutual inductance is represented by one main airgap inductance L
h
, as depicted in
Fig.2.4. The current flowing trough L
h
is called the magnetising current TJl . The mutual
air gap flux 'Ph =LJJl' linked to both stator and rotor windings, is produced by this
magnetising current .
Chapter 2, Asynchronous machine modelling 7
R
s
oIc:::::=Jf'''
7S
IS
•
Figure 2.4: equivalent circuitfor an induction machine with lockedrotor
The leakage inductances of stator and rotor windings are represented by Las and L
ak
.
The stator resistance R
s
and the rotor resistance R
k
are the transformed values in the two
phase plane (Appendix B). It's clear that the equivalent scheme of Fig. 2.4 is analogue
to a single phase transformer with a secondary resistive load.
To describe the machine with 3 inductors, as depicted in Fig. 2.4, an infinite number of
different equivalent circuits can be found with the same impedance at the stator side and
the same torque characteristics [Lag '92]. This is caused by the redundancy in the
classical steadystate equivalent circuit. This can be seen with the aid of the Bondgraph
method, in Fig. 2.5 the Bondgraph of the equivalent circuit in Fig. 2.4 is given. The
bondgraph method uses a "1" for a series connection and "0" for a parallel connection,
links between connections being called bonds (Appendix A).
. problcrn
'.
. .
, .
S,,:u. 1
Is I , Is', .' ik I Ik
. I . \·.. i""J.u .// ik lu
I Lh 1,·ok
I:L
ns
I:Lh I:L
ak
Figure 2.5: Bondgraph ofequivalent circuit Figure 2.3.
This method shows that the circuit leads to a noncausal Bondgraph, because the
voltage (effort) on the parallel connection can not be assigned. If no causality can be
assigned to a Bondgraph, no simulation can be executed with simulation programs
based on the solution of ordinary differential equations, according to [Bosch '94].
Pod 1
0,,
ZI
r'l [=:::J ¢
1,1 Z2 Par·t 2
,__
l [J
Port 1 Il
zA
Port 2
I LL;
".,."f./
hh'.l l.rllulltoTJlI"T
Figure 2.6: equivalent circuits with identical impedance's and transfer function
8 Modelling and identification ofsingle and doublecage induction machines
This causal problem can be solved by eliminating the redundancy in the circuit. When
the current in two of the three inductors is given the third will be known through
Kirchhoff's law. This means that the three inductors L
crs
' L
h
and L
crk
can be described
by two inductors (model reduction). To reduce the model order one has different choices
for taking an equivalent circuit for two of the three inductances. In Fig. 2.6 such an
equivalent is given. When port 1 is open:
(213)
u u Zz
portl  portZ ZI +Zz
ZportZ =ZI +Zz =ZA
If port 2 is shorted:
Z  ZI' Zz ZB (2 14)
port
1
 Z\ +Zz 
This leads to the following parameters for the equivalent circuit with ZA and ZB:
(215)
Any circuit element connected to the secondary side of the ideal transformer can be
transformed to the primary side. When applied on Fig. 2.4 with L
crk
=ZI and L
h
=Zz
the rotor leakage inductance L
crk
can then be placed in series with the stator leakage
inductance L
crs
' The stator and rotor leakage inductances are now replaced by one
effective total leakage inductance L
cr
and all leakage inductance is supposed to be
concentrated in the stator. The rotor resistance seen at the primary side, is now
represented by an effective rotor resistance R ~ . The resulting steadystate scheme is
depicted in Fig. 2.7.
. S
liS ,w s
¢     ~      
Figure 2.7: equivalent circuit with alliealwge inductance concentrated in the stator.
(216)
The transformed parameters of Fig. 2.7 are related to the general lockedrotor steady
state model parameters in the following way, with the transformation factor k :
k= L
h
=
L
h
+L
ak
1+cr k
The total leakage inductance is then defined as:
L =L + L
h
·L
crk
=L + ~
cr crs L
h
+ L
crk
as 1+ (j k
(217)
The main inductance can be written as:
Chapter 2, Asynchronous machine modelling 9
(218)
the rotor resistance
(219)
(220)
And the leakage factor is defined as:
L
(J k =.SI!£
L
h
The stator resistance remains unchanged. The transfonnation results in a new set of
rotor variables related to the original set by the constant k.
:' 1 '7
'k ='Ik
k
Substituting these new variables in Eq.(29, 210) gives:
t¥s = (L
h
+ L
crs
)7.s + k L
h
(
t ¥ ~ =k L
h
7.s +k
2
( L
h
+ Lcrk)T
k
'
Rewriting these Equations yields
t¥ =(L + L
h
4k + L/ Jl + L
h
2
T
k
'
s as L
h
+ L
ak
L
h
+ L
crk
S L
h
+4k
(221)
(222)
(223)
(224)
(225)
_ , L
h
2
: L
h
2
 ,
\}Jk = 's + i
k
(226)
L
h
+ 4k L
h
+ L
crk
Using the transformed parameters Eq.(216, 220) the following space vector notation
for the singlecage lockedrotor machine is found:
t¥s =4 ~ +L
m
(7.s +lk')
t ¥ ~ =L
m
(7.s + lk')
The voltage space vector representation is then given by
2 ' :.,
kUk = k Rki
k
+ \}Jk
u ~ =R ~ lk' + t ¥ ~ =0
u =R T +\{l
S S S S
(227)
(228)
(229)
(230)
10 Modelling and identification ofsingle and doublecage induction machines
2.2.2. DOUBLECAGE I DEEPBAR INDUCTION MACHINE
In this chapter the influence of skin effect on the machine characteristics in addition to a
singlecage machine is studied. Skin effects appears more or less in every electric
machine. As it will be shown , it is possible to model skin effect by assuming that the
machine has a doublecage rotor. The resulting equivalent circuit will be used later to
create a dynamic doublecage machine model.
The doublecage induction machine was essentially made to upgrade the performance at
startup. The only difference with respect to the singlecage machine is its rotor
construction. This consists of two rotor bars placed parallel, see Fig. 2.8a. The outer
cage K
j
is a thin bar cage with high resistance and is placed immediately below the rotor
surface, thus has little leakage inductance. As a result this cage produces a high pullout
torque and due to the low leakage inductance, this cage dominates at high rotor
frequencies. The inner 'operational' rotor cage K
2
is thick and has a low resistance.
Because it is embedded in the rotor iron the leakage inductance is high. This cage
becomes mainly effective at low slip frequencies.
Stalor
.)
Ro,tor
,
,
,
,
   "    ..
Slnlo1"
t:7
I
ryyv '\ I_=JI
J
L
n
R
n
Figure 2.8: a)doublecage rotor b) Deepbar rotor
The same effect can be achieved by the use of a deepbar rotor instead of a doublecage,
Fig. 2.8b. In case of a deepbar rotor, the lower position of the bars is linked by more
slot leakage flux than the upper part of the bars. Under transient conditions the
inductance of the lower part of the bar is higher than that of the upper part, which will
increase the effective resistance of the bar and therefore also the produced torque. This
phenomenon is the same for both deepbar and doublecage rotors.
A double cage can be described by two parallel LR branches, while a deepbar is
usually approximated by a large number of parallel LR branches (Fig. 2.8b). However,
as already said, both systems have one common characteristic: the effective rotor
resistance increases and the effective rotor inductance decreases with frequency.
Chapter 2, Asynchronous machine modelling 11
Stator
,
"
i. ,,_ I i \jJ"2 /
; , , lJr' ' , ,Rolor
Ii' }!: I
\\\ /' / /
\,' /j ,
f,','
,
,
,
,
,
, ,
, ,
"
,
,
,
,
,
,
,
,
,
,
,
"
Figure 2.9: physical interpretation ofthe fluxes
In Fig.2.9 the physical interpretation of the fluxes in a doublecage induction machine is
depicted. Using the space vector notation, the flux linkages can be expressed as function
of the rotor and stator currents in the following way:
(231)
(232)
(233)
(234)
with:
L
h
: main air gap inductance
LIs : mutual inductance of upper cage and stator
L
I2
: mutual inductance of upper cage and lower cage
L
crs
: leakage inductance of the stator
L
crl
: leakage inductance of the upper cage
L
cr2
: leakage inductance of the lower cage
The fluxes 'Psi and 'Pal have to cross more than once material with low permeability.
As a result we can postulate that these fluxes are much smaller than the remaining
leakage fluxes. Thus they are assumed to be approximately equal to zero. The flux
Eq.(2.31 to 234) reduce then to:
(235)
(236)
(237)
12 Modelling and identification ofsingle and doublecage induction machines
(238)
The vector diagram for this simplified situation is given in Fig. 2.10. The voltage vector
equations of stator and rotor are given by:
(239)
(240)
(241 )
(242)
these equations results in the lockedrotor model of the doublecage machine, given in
Fig. 2.11.
statoraxis
Figure 2.10: vector diagram ofthe doublecage machine
Its Las
,
". s
·S
,w s
0 .....
Figure 2.11: lockedrotor doublecage model.
As with the singlecage model, we also have a causality problem, which will be solved
in a similar way. The three inductances of the Tnetwork will be transfonned to a two
inductance equivalent scheme (depicted in Fig. 2.12), with:
k= L
h
L
h
+L
l2
(243)
Chapter 2, Asynchronous machine modelling 13
(244)
(245)
(246)
(247)
The causal bond graph is given in Fig. 2.13, showing that the equivalent circuit can be
used to derive an executable simulation model.
Figure 2.12: causal equivalent steadystate doublecage model
,
I: L
o2
I: L
m
R
s
R'kl
",1;, u",1..,
_,.1 1 I 0 URkl 1 Ie>'
 .. ',  , " k2
I s I I i k2 i k2
i;L lURk' i
__JL _1,
Figure 2.13: causal Bondgraph doublecage lockedrotor model.
Like in the singlecage situation a new set of rotor variables is introduced:
=k· 'f'kl
(248)
, 
'P
k2
= k . '¥k2 (249)
(250)
Substituting the transformed parameters and variables into Eq's.(235 to 241) results in
the flux spacevector notation:
14 Modelling and identification ofsingle and doublecage induction machines
(251)
(252)
(253)
(254)
and the voltage spacevector notation:
5= + (256)
5= + (257)
The resulting vector diagram of a doublecage machine is depicted in Fig. 2.14.
..  st.atoraxis
Figure 2.14: resulting doublecage vector diagram.
2.2.3. DEEPBAR CAGE
When modelling a higherorder cage rotor, like in the case of a deepbar rotor it will be
convenient [Velt '94] to rewrite the rotor branch as a parallel LR pair connected in
series with some remaining resistance R
ser
and inductance L
ser
' In Fig. 2.15 this
transformation is shown. Both schemes show identical admittance. For a doublecage
machine the values can be rewritten as follows:
R = 4
R
2 +  + R2 ) _ R)R
2
(258)
(259)
Chapter 2, Asynchronous machine modelling
(260)
15
(261)
R = R} R2
p R! + R
2
This series approximation is leads to digital simulation equations with higher time
constants, which allows larger simulation steps. However, this series representation
leads to a nonphysical rotor model, where the stator flux remains unchanged.
ilryyY"L__..JJ
..J'YYY"r::==JJ
L
n
R
n
<=>
JY';,:, i [><", I }
L.Jv'.(Y"
L
pl
1,1 R
__JL
Lpn
Figure 2.15: parallel to series transformation
2.3. DYNAMIC MODEL
In this paragraph a dynamic model for an asynchronous machine is derived, starting
with the doublecage flux and voltage equations (Eq. 251 to 57). The physical machine
consists of a stationary part (stator) and a rotating part (rotor), both with there own
reference frame. The angle of displacement between these reference frames is the
mechanical angle ps. If the number of pole pairs of the machine equals one, the
mechanical rotation speed is the derivative of this angle:
ill m =Ps for p =1
The mechanical rotation speed (shaft speed) is calculated using:
(262)
(263)
(264)
with J the momentum of inertia of the machine plus load. The electrical torque,
produced in the machine is given by:
M
 [R( 7t) lTI
S
JT 7
S
.s! nI
s2
.s2 nIsi
el 2" T
S
'ls =ls 'T
s
+ls 'T
s
To create a dynamic machine model these mechanical equations also have to be used.
Therefore the space vectors of flux and voltages are rewritten in a way that the stator
part is denoted in stator coordinates and the rotor part is given in rotor coordinates. The
stator flux in stator coordinates will then be given in space vector notation by:
16 Modelling and identification ofsingle and doublecage induction machines
(265)
The rotor flux is denoted in rotor coordinates as follows:
(266)
(267)
The voltage spacevector equations are split into stator coordinates for the stator voltage
and rotor coordinates for the rotor voltage:
s R ~ s \TJS
US = sis + T
s
_ , __ ,r ...:..,r
0= R
k2
i
k2
+\fJ
k2
(268)
(269)
(270)
Looking at the voltage and flux equations shows that in this situation the stator current
and the flux \f1;1 are used both in rotor and stator coordinates. Therefore, this current
and flux must be transformed from rotor to stator coordinates or viceversa. This is
done with the use ofthe standard vector rotation matrix R(a) defined as:
R(a) =[cos(a) sin(a)]
sin(a) cos(a)
The stator current is transformed to rotor coordinates as follows:
Another example ofthe transformation between stator and rotor is:
(271)
(272)
(273)
Rewriting Eq.(265 to 270) results in the following equations in integral notation. The
stator voltage and flux are presented in stator coordinates. The rotor fluxes and currents
are given in rotor coordinates, using Eq.(2.68)
{
'PsI = Ju
sl
R i
sl
dt
s s s s
\fls2 =Ju
s2
R i
s2
dt
s s s s
(274)
Chapter 2, Asynchronous machine modelling
rewriting Eq.(2.65) results in the following equation for the stator current:
lus1 u/ sl
is1 = Ts  Tkl
s L
cr
lUs2 u/ s2
is2 = T s  T kl
s L
cr
With Eq.(2.69) in the integral fonn results in:
{
, rl f" rl
\fI
k1
= R
k1
i
k1
dt
, r2 f" r2
\fI
k1
= R
k1
i
k1
dt
The leakage flux of the innercage can be derived using Eq.(2.66 and 2.67).
1
'rl f( , ,rl) ,rl f( , ,rl " rl)
= dt  ,, d dt
\fI
cr2
=f(R
k2
1
k2
)dt\fIkl =f( Rk1l
k1
R
k2
1
k2
)dt
The currents flowing in the rotor circuit can now be calculated as follows:
:'r tiJ;,r :r
lk =L  Is
m
, r
_,r \fI
2 . cr
lk2 =,
L
cr2
(275)
(276)
(277)
(278)
(279)
(280)
17
These equations are used to describe a block diagram of the resulting dynamic
simulation model, which is given in Fig. 2.16.
18 Modelling and identification ofsingle and doublecage induction machines
Stator Rotor
+
M
10ad
Figure 2.16: block diagram ofthe doublecage simulation model
This simulation model is used for the simulations made in this report. The block
diagram can easily be rewritten to a singlecage model by removing the inner
loop( ' For higher order models only the rotor side has to be rewritten, by
adding other inner loops.
Chapter 2, Asynchronous machine modelling 19
2.4. DYNAMIC MODELLING USING THE IDEAL ROTATING TRANSFORMER
Another way to approach the dynamic machine modelling lies in expanding the locked
rotor model with an Ideal Rotating Transformer (IRTF) [Velt '94], see Fig.2.17. The
IRTF is a theoretical device that connects two orthogonal perphase circuits with a
mechanical system. Therefore it has two electrical multiports, one for the stator and one
for rotor, and one mechanical port. The IRTF has the following properties:
• no energy dissipation or storage
• no leakage flux, all flux is mutual
• no magnetising current (L=ex:»
• the angle between rotor and stator reference frame pS is equal to the shaft angle if the
machine has two pole pairs (p=1)
Stator
i
R

I
1
' ~
I
I ~ R
I
!
Rotor
Figure 2.17: symbol for the Ideal Rotating TransFormer
An ideal transformer transforms current and voltage by means of the mutual main flux.
Because the IRTF does not need a magnetising current, the current and flux on both
sides of the IRTF have the same length. The difference lies in the reference frames of
stator and rotor (Fig. 2.18).
/ HI
/
/
, / \
'\ I ,/ I
JP
'
\ i /' :
. ~       ; ~ .   .:.   ~     S 1
/" /' I"
I \
\
\
\
\
\
\
\
\
\
\
Figure 2.18: stator and rotor reference frame
The IRTF just transforms currents and fluxes from rotor to stator coordinates and vice
versa, with the use of the standard vector rotation matrix R(a) (Eq. 271). One can look
at the IRTF as an induction motor with L
m
= ex:> , Las = L
ak
= 0, R
s
= °and R
k
= ex:>. The
current and flux vector can be represented in rotor coordinates (rl ,r2) or in stator
coordinates (sl,s2). The angle between the rotor and stator coordinate system pS is the
output of the mechanical part of the machine Eq. 263:
20 Modelling and identification ofsingle and doublecage induction machines
(281)
For the calculation of the electric torque Mel in the machine Eq. 264 is used:
(282)
Only the reference frames of the flux and current on both sides of the IRTF are different.
Therefore the electric torque can also be defined using flux and current in rotor
coordinates.
(283)
IMPEDANCES AT AN IRTF
The elements of the two dimensional space vectors with real components u: and ~ s ,
may be represented as complex valued numbers defined as:
(284)
(285)
(287)
The rotor circuit contains a resistor R ~ connected in series with an inductance L
K
which
, under steadystate conditions and sinusoidal voltages and currents, can be described as:
R ' . ut
Zk =R
k
+ J(ro s  ro m)L
k
=~ (286)
I
k
As the rotor flux equals the time integral ofthe rotor impedance times the rotor current
\TJR _ R ~ + j(oo s 00 m)Lk II I j(CJlsCJlm)t
Tk. . k· e
J(ro s  ro m)
with: (288)
The impedance that appears at the stator side Z% depends on the mechanical shaft speed
rom:
(289)
(290)
Chapter 2, Asynchronous machine modelling 21
(291)
A rotor impedance Z{ will thus be seen as a virtual impedance Z{ on the stator side:
Z
R R"( )L ZS . L
k = k +J ro s  ro m k k =( )+Jros k
ro
s
rom
An inductance on the rotor side of the IRTF can be moved across the IRTF to the stator
side without changing it's value. A resistor however will appear at the stator side as a
resistor with a value depending on the slip (rosro
m
), which is equal to the, previously
discussed, steady state circuit.
One can therefore conclude that inductances are free to move across the IRTF . The
IRTF can thus be placed at 3 positions in the equivalent lockedrotor circuit: between
R
s
and La' between La and Lmor between L
m
and the rotor circuit. After placing the
IRTF the rotor resistance will have a constant value, independent of the slip frequency.
In the block diagram of Fig. 2.16 the vector rotating blocks (VR), which have the same
function as the IRTF, can therefore also be moved without changing the model
properties. This option will be used for identification purposes in section 3.2. In
Fig.2.19 the IRTF is placed between La andL
m
this is also the case in the block diagram
of Fig.2.16.
G 1 L
rn
"dj 11;, ]
\V
rl
I kl ·rl
ik2
SLa Lor
!RTF HoLor
Figure 2.19: dynamic perphase equivalent circuit with 1RTF
Using the IRTF as an expansion of the lockedrotor equivalent circuits, results in a
dynamic perphase circuit as depicted in Fig. 2.19. This dynamic equivalent circuit can
be translated to the dynamic block diagram (Fig. 2.16) of an induction machine as
derived in Section.2A.
22 Modelling and identification ofsingle and doublecage induction machines
2.5. CONVERTER MODELLING
Nowadays most electrical drive systems use power electronic converters as power
supply. The generated voltage will always contain harmonics, which can be used for
identification purposes. For simulations a PWMinverter is studied, which is a voltage
source converter. Voltage source converters consist of three main parts: a rectifier, a
filter and an inverter. In Fig. 2.20 the general structure of a 3phase voltage source
converter fed motor drive is given. The 3phase rectifier converts the 3phase voltage
into a rectified DCvoltage with some ripple. By means of the LC the rectified input
current is smoothened and thereby reducing the voltage ripple on the DClink. Finally, a
3phase inverter transforms the DClink voltage into a 3phase ACvoltage. The
fundamental frequency component can be adjusted both in frequency and in amplitude.
Converler
Figure 2.20: Voltage source converterfed motor drive.
The three phase rectifier is connected to the symmetrical three pase grid (380/220 V ,
50Hz):
(292)
(293)
(294)
We assume that the diodes in the rectifier are ideal, without voltage drop. The grid
impedance is neglected.
(295)
The LCfilter is used to reduce the voltage ripple on the Udc' to reduce the harmonic
content of the rectified current and to enable negative values of the DCcurrent for short
periodes of time. This filter is also assumed to be ideal. Therefore, the DCvoltage is
thought to be constant for simulation purposes.
Ude =max(Uline) = 16Uper lase =539 V (296)
The voltage source inverter consists of three phase legs; each leg consists of a pair of
power semiconductor switching devices. Ideally each phase leg can be considered as a
2level switch that can switch between two voltage levels: the positive and the negative
DClink terminal.
Chapter 2, Asynchronous machine modelling
+,,
23
Figure 2.21: equivalent 2level switches.
Using different switching patterns of the 2level switches, it is possible to vary both the
amplitude and frequency of the output voltages. Because of the inductive character of
the asynchronous machine and the possibility to deliver reactive power of the converter
(freewheel diodes), the voltage source converter is a suitable (voltage) supply.
Therefore, the three terminals of the 3phase induction machine can be directly
connected with the inverter.
PWMSWITCHING PATTERN
The conversion of a constant dclink voltage to threephase voltages whose amplitude
and frequency are controllable can be done with a pulsewidth modulation technique
(PWM). The goal of pulsewidth modulation is to achieve sinusoidal stator currents in
the induction machine.
In case of sinusoidal PWM, the control signals of the 2level switches are obtained by
comparing a sinusoidal reference signal (added with 12% of third harmonic component),
uref' with a triangular carrier signal U
trj
, as depicted in Fig. 2.22.
a l, O.oos i G.D' 0.0;2:; 0.03!, i
: I I,]
! i r'; 
. ,,,"IL1 I II i I
coo
,. 400! I
o I i
;;0011 r
QlU
n 0.01 0.015 0.07 0.025
I fill
0.003 0.0."35 0.01\ 0,045 0.05
7
I
f) 1
I I
> 200 1,1
::: 1 00
JI
°1 40 Hz
1 1
I
I,,,
I '
19
I
(Hz I
Figure 2.22: PWMswitchingpattern and spectrum ofa inverter phase voltage
24 Modelling and identification ofsingle and doublecage induction machines
The inverter switching frequency is determined by the frequency OJ
tri
. The frequency
and amplitude u
tri
of the triangular carrier wave are usually hold constant. The
amplitude and the frequency of the reference signal are the desired values of the
fundamental output voltage component. The switching moments are determined by the
points of intersection between the reference signal and the carrier. When uref > utri the
output voltage of the particular phase is connected to the positive terminal of the DC
voltage. When the reference voltage is larger than the triangle voltage uref < utri then the
output is connected to the negative terminal of the DCvoltage. Each phase is compared
with a the same triangle carrier. The number of the carrier frequency periods that fit in
one period of the reference signal frequency is called pulse number, defined as:
OJ tri
n =
p
OJ ref
(297)
Thus there are n
p
pulses in each half period of the output voltages. The relation between
the amplitude of the reference signal and the carrier is called the modulation index,
defined as:
(298)
(299)
In Fig 2.22. the modulation index and pulse number are set to a constant value: m
i
=0.8,
np = 3. Three types of modulation are defined:
• sinus modulation, if 0 ~ mi ~ 1
• over modulation, if m
i
> 1
• block modulation, if mi ~ 00.
Only in case of sinus modulation the fundamental component of the output voltage is
proportional with the modulation index:
U
dc
. ( )
uSa(l) =m
i
2 .SIn OJ S. t
For simulations in this report only sinus modulation is used, In that case the maximum
value of the fundamental output voltage is half the DCvoltage. Thus if a constant DC
voltage, Ude =539V, is used with m
i
=0.8 the maximum perphase fundamental
voltage is 215.5V. Therefore the motor can not be used at rated power.
The output voltage of the inverter not only contains a fundamental component with
frequency, OJref = OJ S' but harmonic components of the carrier frequency, OJ tri' as well.
Increasing the value of the pulsenumber n
p
results in higher inverter switch losses, but
reduces the machine harmonic losses. The choice of pulsenumber is therefore a balance
between inverter loss and machine harmonic losses.
Usually a third harmonic is added to the sine reference wave (12% of the fundamental
component) to make the wave form more flattopped, which allows a larger modulation
index. If the connected machine windings are connected to a common starpoint this
third harmonic will not appear in the phase voltages.
Chapter 2, Asynchronous machine modelling 25
A completely different approach for generating PWM results from representing the
threephase inverter output voltages in a space vector system. This approach is quite
convenient to be implemented by microprocessors, being widely used nowadays.
However, the space vector method generates virtually the same pulse pattern as the
sinusoidal PWM with increased voltage utilisation (third harmonic addition). For this
reason, only the sinusoidal PWM technique will be considered in this report.
For simulations of inverter fed asynchronous machines, the machine models according
to Sec. 2.3 will be used. The input for these models are the twophase voltages, which
are the transformed threephase voltages according to Appendix B. Therefore the three
phase stator voltages have to be provided by the inverter model. Because the stator
voltages have the starpoint 0 as reference point, the perphase stator voltages have to be
calculated with respect to this reference point, see Fig 2.23.
Figure 2.23: voltage references ofmotor and inverter.
The inverter output voltages with respect to the negative terminal N , are rewritten with
the starpoint of the machine as reference, using the following transformation:
[
uao] [UaN] [UoN] [2 1 1] [U
aN
]
ubO = ubN  UoN = 1 2 1· ubN
uco ucN uON 1 1 2 ucN
(2100)
(2101)
These stator voltages with respect to the starpoint can now be transformed to the two
phase representation, which can be fed into the machine simulation model.
26 Modelling and identification ofsingle and doublecage induction machines
2.6. COMPARING DOUBLE AND SINGLECAGE EFFECTS
In this section the behaviour of a doublecage and a singlecage machine model will be
compared, using the previously discussed machine and inverter models. The parameters
of the doublecage machine are taken from previous work of [Donc1 '86]. The used
singlecage machine is an approximation of the doublecage machine steadystate
speed/torque characteristic in the normal operating range.
To compare the effects of a doublecage with respect to a singlecage motor model, the
following simulations are made:
• steadystate speed / torque curves;
• no load situation, motor fed with a PWMinverter;
• dynamic response, motor fed with a PWMinverter .
The simulation models are implemented in the simulation program "PSI/c", while this
simulation program has the ability to simulate an ideal inverter model without errors in
switching events. The used program is given in Appendix E2.
2.6.1. STEADYSTATE SPEED/TORQUE CURVES
In Fig. 2.24 the speed/torque curves of a double and singlecage machine model are
depicted. The difference lies at the points where the slip is high, thus at startup. Here
the torque produced by the doublecage machine model is significantly higher, as
expected. The rated speeds are almost equal for both machines.
I
i
I
Gonn
Figure 2.24: steadystate torque and current characteristics
doublecage model,  singlecage model.
Machines used for frequency controlled drives are using the most effective operation
range of the curve, which is around synchronous speed. Inverters with variable
frequency and voltage enable the use of only this area. Therefore, the advantage of the
doublecage (higher torque at high slip frequencies) is no longer useful. However, as a
result of the use of inverters, higher harmonics are generated. These components will
excite the outer rotorcage, with high resistance and low leakage inductance. Compared
Chapter 2, Asynchronous machine modelling 27
to a single cage, the higher rotor resistance causes higher eR power loss for the
harmonic currents and the lower leakage inductance will result in a higher torque ripple.
2.6.2. No LOAD SITUATION, MOTOR FED WITH A PWMINVERTER
The influence of higher harmonics produced by an inverter on electric torque and
current of a double and singlecage machine is studied using the PWMinverter
simulation model at fundamental frequency of 40 Hz (0,8 pu) and a dcvoltage of 537 V
(1.73 pu). In Fig. 2.25 the torque and currents of the doublecage and singlecage model
are shown.
E
z
tirnf' 15]
100   ~   ~  ~  ~    ~  ~   ~  ~      ,
T
.T
 1 0 0     ~  ~  ~  ~  ~   L  ~   ~  ~   '
o 0.005 0_01 0.015 0.02 0.02:' 0.03 0.035 0.04 0.045 0.05
lime [5]
Figure 2.25: PWM inverter fed machine, pulse number=9
   doublecage model, singlecage model
The doublecage machine has a significant larger current and torque ripple compared to
the singlecage machine. The stator fluxes of both machine models are almost equal,
which is important in fieldoriented control of a machine with skin effect. The torque
and current ripple will decrease when the pulse number is increased (less harmonic
content). However the percentile difference between double and singlecage, current
and torque ripple, will remain the same.
2.6.3. DYNAMIC RESPONSE, MOTOR FED WITH A PWMINVERTER
To study the behaviour of the machine models, we will look at the response of the two
machines models at a sudden load change M1oad=0 + 40% of the rated torque, at rated
speed. In Fig. 2.26 the dynamic response, for a double and singlecage machine, is
given.
28 Modelling and identification ofsingle and doublecage induction machines
100
E
50
"
" or
0
<0
0.1 0.2 0 ..3 0.4 0.5
t [5]
0.6 0.7 0.8 0.9
50 single
<0 50 L ., I
D D.l 0.2 0.3 0.4 O.S
t [5J
D.6 0.7 0.8 0.9
Figure 2.26: electric torque response at load change ofa double
and singlecage machine model
The stator currents i:
1
of the single and doublecage machine model at the load change
is depicted in Fig. 2.27.
Figure 2.27: stator currents ofdouble and singlecage model at load change.
As a result of the performed simulations one can conclude that, if the steadystate
operating condition is in the low slip region, the dominant time constant of both single
and doublecage models is the same. This means that a machine with skin effect
(doublecage) can be approximated by an equivalent singlecage model when only the
dominant time constant of the machine has to be known. This can be the case in a speed
control system.
Chapter 3, Parameter identification methods
3. MACHINE PARAMETER IDENTIFICATION
29
In this chapter two identification methods, for machine parameter estimation, are
discussed. Machine parameters are needed for control design or machine analysis.
The first method used to estimate the machine parameters is a method proposed by
[Bla'94]. The method uses two fluxestimation models. Identification is done by
adjusting the model parameters in different operation conditions, resulting in an
estimation of singlecage machine parameters. Another method proposed by [Gort '94],
using the Output Error Method, will also be studied. This method allows higher order
machine parameters estimation (e.g. the doublecage parameters) and no special
operation conditions are needed.
3.1. TWOFLUXMODEL METHOD
The estimation method proposed by Blaschke uses two auxiliary models, an VIImodel
and an I/q> model, to estimate the singlecage parameters L(5' L
m
, and R
s
' In each
model the cageflux 'f'; is calculated, the VIImodel uses the stator resistance and the
leakage inductance while the I/<pmodel uses the main inductance and the rotor
resistance. By adjusting these model parameters the fluxes can be made equal, leading
to the desired machine parameters. In Fig. 3.1 a scheme of the two models is given. For
the use of the method the following assumptions are made:
• R
s
can easily be measured and is therefore known;
• constant saturation level (only small variations around a desired flux level are
admitted).
U/Imol1cl
1/ rp mode!
Figure 3.1: identification model, with VIImodel and II<p model
The VIImodel uses measured stator voltages and currents to estimate the stator flux.
= J(u: R
s
(31)
(32)
30 Modelling and identification ofsingle and doublecage induction machines
'S
The cage flux (u)l.f'k of the UIImodel can be derived by subtracting the leakage flux
from the stator flux.
(33)
This "cage" flux in stator coordinates is transformed to polar notation. The output of
UIImodel is the flux in polar form; the length of the flux and the angle <Pk
between the cage flux and stator coordinates.
This angle <Pk is used as input for the I/<pmodel. Rotating the stator current over the
angle <Pk , results in a projection of the stator current, in stator coordinates, upon the
flux coordinates. This is called field orientation, see Fig. 3.2. In flux coordinates the
current component parallel to the flux is called the blindcomponent and the
perpendicular component is called the workcomponent r;
·w
Is
 .   CI u x  a xis
 Slaloraxis
Figure 3.2: vector diagram offlux and current
In the singlecage fluxreference frame the following equations hold [Van '92]:
. .b .' b
(34)
II! =Is +lk
.W .'W
(35) 0= Is + l
k
, ,b . ,
.R
k
i
k
= \Ilk
(36)
,
'W
, . r
R
k
i
k
= \Ilk q> (37)
, ,
(38)
\Ilk =L
m
· il!
Mel = ·i;
(39)
Thus with the stator current in fluxcoordinates the flux of the I1q>model can be
calculated with the estimated parameters L
m
and using Eq. 34, 36 and 38:
Chapter 3, Parameter identification methods
(310)
31
This leads to two flux models with independent machine parameters, the UIImodel uses
R
s
and La and the I/q>model uses L
m
and With the assumption that R
s
is correctly
measurable, only 3 parameters have to be estimated for the singlecage situation.
Using the flux difference ,the parameters La and L
m
can be estimated
using only stationary conditions. The value of has to be identified under dynamic
operation because of the fact that in a stationary situation if =O.
3.1.1. IDENTIFICATION STRATEGY
In the following the tuning procedure for La' L
m
and will be discussed, using the
two flux models. In fact, in order to avoid the problems related to the open integrator in
Fig. 3.1 with \P% as output, a stabilised UIImodel should be applied [Werf '94]. The
stator resistance can be measured accurately at standstill, thus R
s
=R
s
' The estimation
procedure starts at noload situation where:
MeZ=O i;=O (311)
The vector diagram of currents and fluxes in the machine and in the auxiliary models at
, s
noload are given in figure 3.3a. In this case the vectors lss, 'P: and 'P
k
are all in one
direction. At first the model parameters La and L
m
are made equal to zero, which
results in the flux estimations as shown in Fig. 3.3b, where:
and (312)
Statoraxis
a) Machine
: • fluxaxis
. b . J. ,
"..  . e()kS \jJ S
_ r (11) S
Statoraxis
h) Model
Figure 3.3: vector diagram at no load, a) machine b) model
The flux difference Il'fl
k
is therefore positive. Enlarging the value L
m
until ll'f:1
k
= 0
leads to the first estimation of the main inductance:
(313)
32 Modelling and identification ofsingle and doublecage induction machines
The second step is to operate the machine at half load. The steadystate vector diagram
of the machine and the models, is depicted in Fig. 3.4. Because La = °the leakage flux
'" '" , S A I
between 'f': and 'f'k will be equal to zero. This results in a vector (i)'f'k which will be
to long, with an angle <Pk larger then CPk (of the machine). The angle between the
estimated flux and the stator axis, which is too large, will lead to a vector component ish
which is also larger than the real value. Due to the large value of ish and the large first
estimation of L
m
, the estimated flux value of the IIcP model will be larger than the flux
estimated by the UIImodel:
( i ) ~ ~ > ( u ) ~ ~
~ ~ k <0 (314)
  Slaloraxis
a) Machine
Sla toraxis
b) Model
Figure 3.4: vector diagram at load, a) machine b) model
Enlarging La will lead to an angle reduction and a larger estimated flux ( u ) ~ ~ . When the
flux difference is reduced to zero, the estimated leakage inductance will be larger than
the actual value (La > La).
After this first iteration step both estimated values La and L
m
will be larger than the real
values. The procedure can be repeated starting again at noload. In this situation
~ ~ k < 0 as a result of the large L
m
. Decreasing the value of L
m
until ~ ~ k = 0, leads to
a better estimation where L
m
= Lm(l)  La(I)' Due to the fact that L
a
(1) is too large,
L
m
(2) < L
m
. Under load condition La has to be adjusted again, which eventually results
in a better parameter estimation. The estimation will improve with the number of
iterations perfonned.
Chapter 3, Parameter identification methods
3.1.2. OPTIMISATION OF THE METHOD
33
Altering the above discussed method slightly will make it possible to estimate the
"correct" values for L(1 and L
m
after just one iteration. This can be done by defining:
1m( load) = 1m( noload)  L(1
(315)
Starting at noload with both 1(1 and 1
m
equal to zero, leads to an estimated value
(316)
Under load condition the estimated value 1(1 must be enlarged to eliminate the flux
difference. The value 1
m
(toad) should then automatically be changed to:
1
m
(toad) =L
m
+ L(1  1(1 (317)
When in this case the model reaches the same vector geometry as in the machine, the
estimated parameters will have the following values:
(318)
L
m
(load) =L
m
+ L(1  L(1 =L
m
It is obvious that after just one iteration, noload/load, the right parameter values have
been found. This simplification can be made by changing the scheme of Fig.3.1 as
depicted in Fig.3.5.
Figure 3.5 : optimisation ofthe scheme
3.1.3. ESTIMATION OF THE ROTOR RESISTANCE
As discussed in the previous section, only steadystate stator currents and voltages are
needed for estimating the parameter values L(1 and L
m
• In order to estimate the rotor
resistance the rotor circuit has to be excited, creating a dynamic response.
After the values for R
s
, 1
m
and 1(1 have been assigned in the two flux models it is
obvious that the UIImodel is also valid under transient operation. The I/q>model
however only provides reasonable results during transient operation if the estimated
rotor resistance equals the real value ( R ~ = R ~ ) . In that case 8'i'k = 0 will hold for both
34 Modelling and identification ofsingle and doublecage induction machines
steadystate and dynamic operation, presuming that L
cr
and L
m
are correctly estimated.
To estimate the rotor resistance the stator voltage is changed stepwise. If < the
A
time constant t = will be too large and as a result the estimated cage flux (i)
R
k
changes to slow. If however > the time constant is too small and the estimated
cage flux changes to rapid. This is illustrated in Fig. 3.6.
< 1

= 1 IX
• . > 1
R.
•
R•
f
J
\ \1
(II) Ie I ........
I _.....== (u) V.
'7 (J)cV.
I w
I ,",'l'. i'" .·
(i) cV. \
I \
I \
f
r/
\ \1
..·L
'u)l.
,",'l'; i,,' "<
(u)\I'. " .
iii \1': \ / (.)
\ I
\ I
excitation model resDonse
Figure 3.6: effect ofdeviation in the estimated rotor
resistance on the estimatedflux difference.
The dynamic responses will serve as a command for changing the value of in the
right direction.
Chapter 3, Parameter identification methods
3.2. OUTPUT ERROR METHOD
35
Most estimation methods, both online and offline, use the measured fundamental
components of the phase voltages, currents and mechanical speed. In that case
infonnation concerning only two parameters can be obtained from each set of
experimental data. When using single steadystate experiments, identification of all
machine parameters requires varying operating situations (twojluxmodel method).
A method proposed by [Gort '94], based on the output error method, will be discussed.
This method takes into account the available switching harmonics produced by a nonnal
converter and does not require additional external test signals for the purpose of
identifying all machine parameters. The results will be compared later with the twojlux
model method [Bla '94].
3.2.1. IDENTIFICATION PROCEDURE
The identification approach used to identify the machine parameters is a socalled
parametric identification (finite number of parameters). This method is based on the
minimisation of a criterion function, which in tum is based on the prediction error
method: the mismatch between real output and model output. A model structure has to
be chosen and the parameters in this structure will be derived by minimising a cost
function.
However, there will always be a purpose in trying to derive an optimal machine model.
There are two reasons: machine analysis and control design. In machine analysis we
want to predict the machine behaviour in different operation conditions. Usually the
analysis is done by simulations. In control design the goal is to develop a controller,
which makes the machine behave in a desired way.
In both cases the model must predict the behaviour of the machine, therefore a very
logical quality criterion is a measure for it's prediction capacity. This capacity of
prediction can be quantified by comparing the actual output with the calculated future
output. If the error between real and predicted output is small the model will be good.
Methods that are based on this principle are called "prediction error methods".
Parameter identification deals with the problem of finding numerical values for the
parameters resulting in the "best" description of a dynamic system, in this case an
asynchronous machine. The dynamic properties of a system must be extracted from the
observed input and output only. These in and output signals are sampled with a sample
time T
s
' The Nyquist frequency is then equal to:
(319)
The measured system output at time k· T
s
will be noted as y( k), the input been denoted
as u( k ). The output of the system is disturbed by an additive noise term v at the output,
according to Fig. 3.7.
36 Modelling and identification ofsingle and doublecage induction machines
Figure 3.7: system representation
For strictly proper processes, the model output is denoted as y( klk 1) which is called
the onestep ahead prediction of y(t), based on measurements up to t=kl. If the
process is not strictly proper, which is the case for the used machine models, the model
output is no longer called a prediction but an estimation of the process output using
input u( t) measurements up to t=k and output measurements y(t) up to t=k1.
Comparing the model output y( klk)with the real process output, leads to the so called
output error:
E(klk) =y(k) y(klk) (320)
(321)
The model will be good if it has a small output error, but for one model the output error
can be small at one instant and large for another. Therefore it's better to look at a
sequence of prediction errors. To prevent positive and negative prediction errors from
cancelling out, the square has to be taken. This results in the following loss function:
1 N 2
I
N
=L>(klk)
N k=1
The "best" model minimises this loss function. The model parameters are collected in
the parameter vector 8. Within a selected model structure, the optimal model will have
a parameter vector that minimises the loss function:
with
eN = arg min JN (8)
BeD
(322)
(323)
N
J N(8) =_1 LE
2
(klk,8)
N k=1
The set D is the set of possible parameter vectors. This could be, for example, the set of
parameter vectors that result in a stable model. It is clear that, to compute the prediction
error, an estimation of the process output is needed.
Chapter 3, Parameter identification methods
3.2.2. ESTIMATION OF THE PROCESS OUTPUT
37
Prediction error methods are based on the estimation of the process output, using a
process model. We will use the standard model representation as depicted in Fig. 3.8.
y
, v(k)
"", ' :" ,'"
 I G(q)
! +
Figure 3.8: standard model representation
The process output can be written as follows:
Y(k) = G(q) U( k) + H(q)e(k) = G(q) u(k) + V( k)
y(k) n]U(k) + qn}(k)
(324)
(325)
Where G(q) is the process model and H(q)is the noise model of the output signal. If the
system is not strictly proper, the process model G(q) is written as:
G( )
12
q =go+glq +g2q ....
The noise is defined by:
H(q) = 1+h1q1 + h
2
q2 .
(326)
(327)
with h
o
=1. The signal e(k) is a ZeroMean WhiteNoise (ZMWN) sequence and q
represents a shift operator, defined as:
(328)
From measurements, the set {y(ll),u(t)} for 1=k, kI, is known. If G(q) and
H(q) are also known, then v(t) for 1= kl,k2, ... is known, since:
v(t) =y(t)G(q)u(l)
The model output estimation at time t=k is then given by:
(329)
(330)
38 Modelling and identification ofsingle and doublecage induction machines
Ifwe assume that G(q)is known and not strictly proper, G(q)u(k) will contain values up
to k and is therefore also known at time instant t=k. We have to obtain v(klk 1) to
calculate the model output. To do this, the noise filter H( q) must satisfy three
conditions; H(q) must be
• stable,
• inversely stable
• )
The monic condition implies that the noise process can be written as an impulse
response representation
00
v(k)=e(k)+'Lh[e(kl) (331)
1=1
The best value of the coloured noise term v(k) will be the expectation ofEq. 331.
(332)
Since e( k) is a zero mean white noise sequence the first part is expected to be zero. The
second part is deterministic because v(I) and e(I) are assumed to be known for Is k 1.
This results in:
aJ
v( klk 1) = I h(l)· e(k I) = [H(q) IJe(k)
[=1
Since H(q)is inversely stable, Hl(q) =1+ h;qI + exists such that:
Hl(q)H(q) =H(q)Hl(q) =1
From Eq. 324 and 334 follows that:
e(k) =Hl(q)v(k)
which, together with Eq. 333, yields:
(333)
(334)
(335)
(336)
Thus for calculation of the prediction of the noise term v(k) only values of v(I) up to
I s k 1 are needed. The model output G(q)u(1) uses input values up to I s k, which
results in the following system output estimation:
y( klk) = G(q)u(k) +[1 H.l(q)] v(k  I) (337)
Since v(l) =y(l)  G(q)u(1) for I s k 1, the output estimation can be written as:
Chapter 3, Parameter identification methods
y( klk) =G(q)u( k) + [1 Hl(q)][Y(k 1)  G(q)u(k 1)]
= Hl(q)G(q)u(k) + [1 Hl(q)]y(k1)
(338)
39
The error between estimated system output and the measured system output can now be
rewritten as follows
E( klk) =y( k)  y(klk) =
=Hl(q)G(q)u(k) + Hl(q)y(kl)
This expression is valid for any model structure that can be written as
y(k) =G(q)· u(k)+ H(q)· e(k)
(339)
(340)
where G(q) is not restricted with respect to the strictly proper properties. This general
expression for the prediction ofy(k) is valid for all model structures. However, different
model structures can be used to describe a process.
3.2.3. MODEL SET STRUCTURE
The method used for machine identification is a socalled parametric identification. For
parametric identification a process model structure has to be chosen a priori. Therefore
different parametrisations for the process model G(q) and noise model H(q) in Eq. 340
exist [Bosch '94], such as:
• Finite Impulse Response model (FIR);
• Auto Regressive with eXogenous input model (ARX);
• Auto Regressive Moving Avarage with eXogenous input model (ARMAX);
• Output Error model (DE);
• BoxJenkins model.
These models are special cases of the general process model:
(341 )
For estimating machine parameters an Output Error model is preferable because the
noise model is not estimated separately. In machine models used for control
development and analysis no noise model is used either, so this will be a good choice.
OE model
The Output Error model is given by:
F(q)x(k) =B(q)u(k)
y(k) =x(k) +e(k)
In this case the process model and noise model are defined as:
(342)
H(q) =1 (343)
40 Modelling and identification ofsingle and doublecage induction machines
Using Eq. 338 the DE estimation model can then be written as:
y(klk) =F1(q)B(q)· u(k)
with B(q) and F(q) representing sequences of the shift operator q defined as:
F(q) =1+ fiqI + /zq2.... fNjqNj
1 / I '2
F (q)=l+fiq +f2q ....
B(q) =b1q1 +b2q2.... bNhqNh
(344)
(345)
(346)
(347)
The coefficients of the sequences B(q) and F(q) are collected in the parameter vector 8
defined by:
S=[fi ..... fN
j
bl...... bNhr (348)
The estimated output signal is not a linear function of the parameter vector 8 and
therefore the OE estimation model is called a pseudolinear regression model. This
model can be written as a pseudolinear regression model:
y(k,8(i)) =cj>(k,8(i)).S(i) (349)
with 8(i)denoting the parameter vector after i iterations. The regression vector is defined
by:
cj>(k,8(i))=[y(kl,S(i)), ...... ,y(knj,8(i)), u(k), ..... ,U(knb)] (350)
The regression vector cj> contains the measured input u(I) up to l=k and the estimated
system output y(118) for I :::; k 1.
A criterion function which is often used is a quadratic function of the filtered prediction
error:
k { C1J }2
J(8(i)) = 2
l
k ~ I ~ L I E(mi)
(351)
The predicted error is filtered with a stable linear filter L(q), where the choice of the
filter can influence the criterion function and therefore the estimated parameters. This is
made clear when the criterion function is written in the frequency domain [Lju '87]:
(352)
where Go(ro)represents the process we want to identify. The model G will, in practice,
never be able to describe the system Go exactly. The model G will always be an
approximation of the real process.
The coefficients of the parameter vector 8 are the values that make G the best
approximation of Go with a frequency weighting IIL(ro )11 <I>u (ro ). Using this frequency
Chapter 3, Parameter identification methods 41
weighting function, the errors in the different frequency ranges can be weighted. If the
term IIL(co)11 <t>u(co ) is large, then the part
0
0
(0)) j = 110 0(0))  o( (353)
in the criterion function is relative important and as a result the estimated parameters are
tuned in a way that a small error is obtained at those frequencies.
NOISE INFLUENCE
There is no correlation between the noise power spectrum <t>v and the parameter vector
8. Thus the contribution of the noise term will be the same for all parameter vectors.
Consequently, the noise does not affect the estimated parameter vector e. Hence, the
estimation is consistent if the optimal process model G
opt
(q,8) is in the model set even
when the noise model does not correspond to the real noise process. The estimation of
the deterministic contribution G(q,8) is separated from the noise contribution v(k)
when using an OEmodel.
Because the OEmodels are pseudolinear in the parameters, the optimal parameter
vector 8 can only be found by means of a nonlinear optimisation technique.
3.2.4. IDENTIFICATION OF THE MACHINE PARAMETERS
The problem with most identification methods is the fact that the rotor impedance is
estimated at the stator side, using only stator voltage and currents. However, according
to Eq. 291 the rotor resistance seen at the stator side is scaled by the slip:
(354)
For sinusoidal signals the lockedrotor equivalent circuit is therefore changed to a non
linear slip dependent equivalent circuit, as depicted in Fig. 3.9.
H!'j 1.
0
)6c==:J'"yVY \·r
I.)
__ lk" Ikl<tlk2
j jem 'r.C".
I
I IJ
J Slip
$''
Figure 3. 9: slip dependent equivalent circuit seen at the stator side.
This nonlinear behaviour of the motor admittance cannot be described by a linear
model. To solve this identification problem the stator resistance and the rotor parameters
42 Modelling and identification ofsingle and doublecage induction machines
are separated and the rotor parameters are identified in rotor coordinates, since the
relation between the flux 'f1; and the current T; in rotor coordinates is described during
steadystate and in transient situations by a linear inputoutput function. If the stator
resistance R
s
and rotor angle p s are known, the stator flux and current can be translated
to rotor coordinates from measured stator voltage and current in the following way:
(355)
(356)
The rotor of the induction machine is assumed to be electrically symmetrical, thus the
rotor start position can be chosen arbitrarily. For the singlecage rotor model (according
to Fig. 2.7) the following rotor transfer function is found:
(357)
where "p" represents the Laplace operator. However, the output error identification is
applicable only to a corresponding discrete model for the rotor transfer function (in z
domain) of the singlecage machine.
G( z) = B( z) = bo+ ht Z1
F( z) 1+.Ii zI
(358)
The discrete transfer function can be derived from the continuous time transfer function
Eq. 356. The parameters of the discrete model can be written as a function of the
parameters of the continuous model and the sampling time T
s
using the Z
transformation, which assumes the use of an ideal ZeroOrder Hold circuit. This results
in the following relation:
(359)
(360)
with:
1' Rt
.Ii =e ·'·l.m
b
o
=La
ht =L
m
+.Ii (L
m
+ La)
These coefficients can be identified with the prediction error method. The parameter
vector e and the regression vector ~ are then defined by:
e=[1 .Ii b
o
b
I
r
~ = [_'¥sR(k 1,8),  ,¥/(k 2,8), IsR(k), IsR(k 1)]
(361)
Chapter 3, Parameter identification methods
where:
(362)
(363)
43
(364)
As it will be explained later, it is convenient to combine the components of the space
vectors in a complex representation.
The physical machine parameters of the continuous model can then be determined using
the unique inverse transformation on the estimated discrete parameters (Eq. 360) in the
following way:
L = q +bofi
m 1+ fi
R ~ =log( fi) L
m
~
For a doublecage rotor as discussed in Chap. 2 the continuoustime flux current relation
in rotor coordinates is found to be:
(365)
For model orders ~ 2, there are several ways to derive an approximative discrete
transfer function from the continuoustime model description, instead of developing
exact (but cumbersome) Ztransformations. If the sampling period ~ is short enough
compared to the system time constants, Tustin'stransformation defined by
2 1 zl
P=r 1 I
s +z
(366)
leads to satisfying results. By substituting then Eq. 365 into Eq. 364 one gets
where G(z,8) has the general form for the rotor circuit is given by:
6(z, 8) =bO+qzl + ~ z  2
1+fizl+f2z2
(367)
(368)
44 Modelling and identification ofsingle and doublecage induction machines
The coefficients of the transfer function Eq. 368 can be identified with the DEmethod.
After identification, the estimated discrete time model is transformed again to a
continuous transfer function, using the Tustin'stransformation, which results in:
b
1.. I h_ 2 2
G
A
( 8) _ 0 + UJ Z + uz Z Tustin G
A
( ) _ Wo + WI P+ W2 P
Z,  I 2 ( ) P  2
1+ fi Z +fz Z 1+ VI P+ V2 P
(369)
However, it should be clear that the transformation from discrete to continuous time will
always be an approximation, where the quality of the parameters is dependent of the
used transformation. With the estimated continuous transfer function the continuous
doublecage machine parameters, Eq. 365, can be derived using the following unique
transformation:
(370a)
(370b)
(370c)
(370d)
(370e)
(370f)
These continuous machine parameters can be used III the doublecage machine
simulation model discussed in Chap. 2.
3.2.5. OFFLINE DATA PREPROCESSING
When using an inverter, such as PWMVSI, cycloconverter, matrixconverter, the
stator voltage and current will contain one dominant frequency, i.e. the fundamental
supply voltage frequency 0) 0 and a large number of switching harmonics. As a result of
the transformation to rotor coordinates the frequency spectrum is shifted by the
mechanical velocity 0) m =Ps as follows:
(371)
The most dominant frequency in rotor coordinates is the slip frequency O)slip =0)0 O)m'
The slip frequency is dependent of the load torque M
1oad
' In steadystate the load
torque is equal to the machine torque. Under noload condition the slip frequency is
Chapter 3, Parameter identification methods 45
(372)
normally very low and because the data set must contain at least one period of the rotor
frequency the data set must be very long. For identification it is therefore preferable that
the machine operates under load condition with higher slip frequencies (12 Hz).
The measured stator voltages and currents can not be directly used in the identification
algorithm. The signals are usually disturbed by:
• drift and offset, thus low frequency disturbances;
• spikes, due to cross talk between cables ;
• high frequency noise, due to sensors and AD conversion.
The preprocessing of the collected data set involves the following processing steps, to
make the data suitable for identification purposes:
• trend determination and correction;
• offset correction;
• peak shaving (clipping);
• noise reduction, low pass filtering.
As mentioned before, the proposed identification method [Gort '94] is based on the
reconstruction of the flux \iJ; and current ~ r in rotor coordinates. An important data pre
processing task is thus the reconstruction of these signals from measured stator voltage
u:, current ~ s and rotor position p s. The stator current and flux are derived, using the
following equations:
I R =e(ipS) . IS
S S
In the equations above, the components of the two dimensional space vectors
(373)
[
'SI]
and ~ s = :;2
(374)
have been represented as complex numbers defined as:
I
s _ ·sl . ·s2
s  Is +} Is
(375)
(376)
The procedure of deriving the flux in rotor coordinates is sensitive to offset errors,
because offset causes drift in the integration. Therefore offset must correctly be
compensated and integration has to be accurate.
Due to the fact that the machine is driven by an inverter, the measured voltage and
current will have many different frequency components. To avoid aliasing the
continuous signals must be filtered with a continuous antialiasing filter before the
46 Modelling and identification ofsingle and doublecage induction machines
(377)
(378)
signals are converted to digital signals. The N measured data points are presented in the
data set 2N' The data set contains the digitised measured voltage uf ( k ~ ), the
measured current If ( k ~ ) and the measured rotor position pS ( k ~ ) or velocity pS ( k ~ ).
First the data is clipped to reduce the effect of outliers (spikes). If the mechanical
velocity is measured the position can be derived by discrete integration. The start
position can be chosen arbitrarily if the machine is symmetrical, which is assumed
throughout this work.
In steadystate the electrical signals are periodic and the data preprocessing can be
performed in the frequency domain, if the data set contains sufficient periods of the
fundamental stator frequency fa. The fundamental component is calculated by counting
the number of samples between two zero crossings of both stator voltages after lowpas
filtering u:
1
and u:
2
. The number of full periods Np of the fundamental frequency
component in the data set is determined as follows:
N =N
fo
=NT +0 N
p
eN
p Is si(
The data set is now reduced to Np whole periods with a length of m samples, where m
is found to be:
N
m=P
f o ~
The new data set is denoted as 2
m
, The distance /1f between two observable frequencies
is related to the total time duration of the data set, and is given by:
I1f =_1_ = fa
m ~ N
p
Next, the derivative of the stator flux tp; is calculated as follows:
(379)
(380)
In this expression the stator resistance is used. The stator resistance is however easy
measurable and therefore presumed to be known. The discrete Fourier transformation
will be performed on this stator flux derivative q.,; and stator current I/. The highest
observable frequency component in the data set is the Nyquist frequency fnyq :
I
fn
y
q=2T (381)
s
The spectra of the flux derivative and current in rotor coordinates is calculated in the
following way:
m
<I> .(n/1f)= '" IS(kT)ej2nnMkT
[s L..J s S .\
.. k=l
(382)
Chapter 3, Parameter identification methods 47
m
<I>1jJ! =
k=!
(383)
m m
with:   +1 n 
2 2
The following data preprocessing steps are perfonned on these flux and current
spectra.
• offset compensation;
• low pass filtering;
• noise reduction;
• stator flux reconstruction.
Offset compensation is done by removing the low frequency part of the spectrum. All
frequencies below fojJset are removed by setting the spectrum to zero.
= 0 for
. {foffset foffset I' z}
1 E ,IE
(384)
(385) = 0 for
Low pass filtering to remove the high frequency components is done by setting all
frequencies above fband to zero.
i E{m+1fband 1\ fband m Ii EZ}
2 Af'2
Noise reduction is done by removing the frequency components with a small amplitude
relative to the amplitude of the fundamental component. The following criteria is used:
(386)
The stator flux reconstruction can be accurately perfonned in the frequency domain.
Integration in the frequency domain is equal to multiplying the spectrum with
! _! I" .
jm  j21tntij' resu tmg ill .
. I, for iE{m+1,mliEZ i:t=O} (387)
.\' 2 2
Another advantage of integrating in the frequency domain is that no initial condition has
to be defined. It is however important to perfonn all operations both on the current
spectrum and the spectrum of the flux derivative, to avoid phase shift between the two
signals. The signals 1/ and \fI; in time domain are then derived using the inverse
Fourier transfonnation.
48 Modelling and identification ofsingle and doublecage induction machines
m
(388)
m
with 1~ k ~ m.
(389)
(390)
The input signals for identification of the rotor circuit, the stator flux and stator current
in rotor coordinates are eventually found by rotating the complex values in the complex
plane.
I:(kT
s
) =ejps(kT
,
). I;(kT
s
)
'f!sR(kT
s
) =e jpS (kT,) . 'f!;(kT
s
)
These preprocessed values are collected in the preprocessed data set ZN defined as:
(391)
In order to perform the identification only the real part (with coordinate Rl) or the
imaginary part (with coordinate R2) of the data set is enough, because there will be no
difference in the identification results if the machine is symmetrical.
3.2.6. OFFLINE IDENTIFICATION ALGORITHM
The optimal estimation of the parameter vector a can only be found analytically if the
predicted output is linear in 8. This is however not the case for the output error models.
Thus the optimal solution must be obtained with an iterative search (numerical
optimisation). An optimisation method used in this study is the NewtonRaphson
algorithm, given by:
(392)
The estimated parameter vector a(i), after i iterations, is updated every iteration using
the first and second derivative J' and J" of the lossfunction J (Eq. 351) with respect
to the parameter vector 8. Because an offline identification method is used the
information of the whole dataset is used for every iteration.
Chapter 3, Parameter identification methods 49
The term [f'(e(i))r
1
f(e(i)) gives the direction of the parameter change. With the
variable a the step size will be controlled. Using the lossfunction Eq. 351 the
derivatives are written as:
with:
E(klk) ='PsR1(k) tPsR1(klk)
X(k,8) = ~ E ( k , 8 ) = ~ \Il
s
R1
(k,8)
(393)
(394)
(395)
(396)
For the second derivative of the lossfunction this yields:
N
J" (8) =:fa J' (8) =_1I[x(k,8)x
T
(k,8)  ~ (X
T
(k,8))E(k,8)]
2N k=1
Close to the optimal parameter vector value, the prediction errors will mainly determine
a noise term. The prediction errors are therefore independent and the last term of Eq. 3
95 will become zero. This approximation is used in the GaussNewton method. With the
rewritten search direction the algorithm becomes:
(397)
Thus, for the iterative search, the gradient of the prediction error X(k,8) has to be
known. For the output error approach the gradient X(k,8) can be written as follows:
(398)
with the regression vector $(k,8) defined as:
The realisation of the preprocessing and identification algorithm is done with the
mathematical program "MATLAB". Using the MATLAB System Identification Toolbox
the output error model is estimated with the Mfile "OE.m", which returns a discrete
parameter vector which minimises the lossfunction (Eq. 351). This discrete parameter
vector is then transformed in a continuous parameter vector, using the Tustin's
transformation. The estimated continuous parameter vector is used to derive the
continuous machine parameters according to Eq. 370.
50 Modelling and identification ofsingle and doublecage induction machines
The inputs of the Mfile are the preprocessed data set ZN and the desired model order
of numerator and denominator. The Mfiles used for preprocessing and identification
are given in Appendix G.
u(l) ylt)
+ T,
'lk)
Offline estimation
Figure 3.37: Output Error identification scheme
For identification purposes, the filtered output error is used. For linear 8180 (single
input single output) systems this is equivalent to filtering the input and output with this
filter, as depicted in Fig. 3.10.
Chapter 4, Simulation results
4. SIMULATION RESULTS
51
To validate the identification methods discussed in Chap. 3, the two methods are tested
on simulation models. Using simulation models is the only way to validate the methods,
because only in this case the parameters are known. Both single and doublecage
models are used for the validation of the methods.
4.1. MACHINE MODELS
In Chap. 2 a dynamic machine model (doublecage) is presented. The simulation model
is implemented in the simulation program IlPSI/c
ll
• To test the identification methods the
parameters of a singlecage simulation model (SCaSM) and a doublecage simulation
model (DCaSM) are estimated. In table 4.1 the parameters of the used singlecage
machine model are given. The doublecage machine model parameters are given in
Table 4.2.
Table 4.1: parameters ofthe SCaSM
parameter value
[si] [pu]
L
m
33.75 mH 3
La
6.52 mH 0.58
,
0.141 n 0.04
R
k
R
s
0.212 n 0.06
Table 4.2: parameters ofthe DCaSM
parameter value
[si] [pu]
L
m
33.09 mH 2.941
La
2.012 mH 0.179
,
2.718 n 0.769
R
k1
.
0.136 n 0.039
R
k2
.
5.406 mH 0.481
L
a2
R
s
0.212 n 0.06
For identification with the twojluxmodel method (TFMmethod) the machines are fed
by sinusoidal voltage supply. In case of the output error method (OEmethod) it is
necessary to use a power supply, with sufficient harmonic content. The method is
therefore performed on a dataset derived form an inverter fed machine model. The
inverter used for the simulations is described in Sec. 2.5. The per unit reference values
used in the simulations are denoted in Table 4.3.
52 Modelling and identification ofsingle and doublecage induction machines
Table 4.3: per unit reference values
Reference Value
Voltage 311 V
Current 88A
Frequency 50Hz
Resistance 3.53 n
Inductance 11.25 mH
4.3. TWOFLUXMODEL METHOD
To test the TFMmethod (Sec. 3.1) on the simulation models. The identification method
and the machine models are implemented in the simulation program "PSI/c". The
program is given in Appendix E1.
The method is performed applying the following test conditions:
• simulation time step 100f.lS;
• stator frequency = 40 Hz;
• stator voltage amplitude = 311 V;
• load condition = 50% of rated torque;
• voltage step = 100% ~ 80% of rated voltage.
4.3.1. SINGLECAGE ESTIMATION
Performing the optimised TFMmethod on the SCaSM resulted after some iterations in
the parameter estimations, given in Table 4.4. The stator resistanceR
s
is assumed to be
known and no saturation effects are included in the models.
Table 4.4: TFMmethod, singlecage estimation ofthe SCaSM(R
s
=0.212 n)
parameter SCaSM estimation error
[si] [pu] [si] [pu] [%]
A
33.75 mH 3 33.66 mH 2.99 3
L
m
La
6.52 mH 0.58 6.461 mH 0.574 0.9
A'
0.141 n 0.04 0.142 n 0.0402 0.7
R
k
Using the optimised estimation procedure still a few iteration steps are needed to get a
good estimation of main inductance L
m
and the leakage inductance La' Estimation of
the rotor resistance Ric, using the stator voltage step procedure, is more time consuming.
In the simulation the fluxdeviation between the two estimated fluxvalues can be
minimised very accurately, however more iteration steps will then be necessary.
Chapter 4, Simulation results
4.3.2. SKIN EFFECT
53
In some situations it can be found useful to approximate a machine with significant
skineffect by a singlecage model. To test the usefulness of such an approximation, the
TFMmethod was tested on the doublecage simulation model (Table 4.2). Thus a
singlecage model is matched to a higher order system (under modelling). To validate
the estimated parameters the behaviour of the estimated and simulation model in their
normal operation range is studied. The parameters of the estimated singlecage model
are found using the procedure discussed in Sec. 3.1. The resulting parameters are given
in Table 4.5.
Table 4.5: TFMmethod, singlecage
estimation ofthe sinusoidalfed DCaSM
(R
s
= 0.2120)
parameter value
[si] [pu]
L
m
29.08 mH 2.615
La
6.355 mH 0.565
~ ,
0.105 n 0.030
R
k
This parameter estimation is performed with sinusoidal voltage supply. However the
method can also be applied to a inverterfed machine. In Sec. 2.5. the inverter model has
been discussed. For the simulations the following inverter properties are applied:
• fundamental frequency /0 = 40Hz ;
• DCvoltage Ude =538V ;
• Pulse number pn== 3.
The three phase inverter voltages are transformed to the twophase representation and
applied to the machine model and TFMmethod. In Fig 4. the applied stator voltages, in
stator coordinates s1 and s2, are depicted.
time [s]
0.0\ 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.'
time fsl
Figure 4.1: applied twophase stator voltages to test the
TFMmethod at PWMinverter supply.
54 Modelling and identification ofsingle and doublecage induction machines
To estimate the cage resistance R ~ a voltage step has to be applied. This is done by
changing the DCvoltage between 10080 % of the rated voltage.
As a result of the switching harmonics the flux difference ~ \f'~ , necessary for tuning the
model parameters, has a high harmonic content. For accurate estimation the DC
component of this flux must be tuned to zero, therefore the estimated fluxdeviation is
filtered with a 4
th
order Butterworth filter, with cutofffrequency Ie =50Hz. The
resulting estimated singlecage parameters are given in Table 4.6.
Table 4.6: TFMmethod, singlecage
estimation ofthe inverter fed DCaSM
(R
s
= 0.2120)
parameter value
[si] [pu]
A
29.41 mH 2.613
L
m
A
5.737mH 0.511
L
cr
AI
0.106 n 0.030
R
k
It is clear that the estimated leakage inductance L
cr
is considerable different in both
estimations. This is due to the effect of the higher harmonics on the doublecage.
The steadystate and dynamic behaviour of both estimated singlecage model results are
compared with the doublecage reference model to study the usefulness of this single
cage approximation. In Fig 4.2 the steadystate speed/torque characteristic of the
DCaSM and the estimated singlecage models are given, at sinusoidal voltage supply. It
shows that only in the normal operation range of the machine, at small slip frequencies,
the characteristics are almost equal.
~ c t o r speed [rpm]
rotor speed [rpm]
Figure 4.2: steadystate speed/torque characteristic ofthe doublecage
machine (1); the estimated singlecage machine using sinusoidal
voltages (2) and estimatedsinglecage using PWMsupply (3).
In Fig 4.3 the dynamic response, as a result of a load change, is given. In this case the
machine models where fed with a sinusoidal voltage. The responses of both estimated
Chapter 4, Simulation results 55
singlecage models almost match the response of the doublecage machine. The small
difference in the responses of the estimated models is due to the difference in the
leakage inductance of both estimated models.
I
,cor
~
~
0
0
'"
01
0 0.1 0.2 0.3 0.4
time [5]
0.5 0.6
 
07 0.8
o o. , 0.2 0.3 0.4
lime [s]
0.5 0.6 0.7 0.8
Figure 4.3: dynamic response at sinusoidal supply ofthe doublecage
reference machine (1); estimated singlecage machine fed with
sinusoidal voltage (2) and estimated singlecage machine fed
with PWMvoltage (3).
A more significant difference between estimated models and the doublecage machine
model will be found in the machine losses and torque ripples, in case the machine is fed
by an voltage or current source inverter, see Sec. 2.6.
To study the influence of an inverter supply, the dynamic responses of the DCaSM and
the estimated singlecage models are compared. Therefore, the machine models are fed
by an PWMinverter (pulsenumber pn=3). In Fig. 4.4. the responses at a load change of
40% of the rated torque are given.
T
6
o o.? 0."1
lAne [sl
O.G 0.8 o 0.2 0.4 0.6 0.8
lil""nC [51
Figure 4.4: dynamic response at inverter supply (pn=3), ofthe doublecage
reference machine (1); estimated singlecage machinefed with
sinusoidal voltage (2) and estimated singlecage machine fed
with PWMvoltage (3).
Figure 4.4 shows that the responses, except for the torque and current ripple, are almost
equal. If we compare Fig. 4.3 and 4.4 it shows that the sinusoidal estimated singlecage
56 Modelling and identification ofsingle and doublecage induction machines
model has a slightly better response when fed with sinusoidalvoltage, the PWM
estimated singlecage model has a better fit when using the PWMinverter voltage.
Another way to validate the estimated parameters is to compare the Bodeplot of the
simulatedrotor transfer function and estimatedrotor transfer function. In Fig. 4.5 the
Bodeplot of the doublecage rotor transfer function is compared with those of the two
estimated singlecage transfer functions.
~ ]
( ~  J ~ ~ 
10.3 10:!
f'equency [Hz J
Dr
1f i
2
J
"
'" 0
"' "
lO J 10 7 10 ,
10
n
10' 10' 10
3
f nYI) 10'"
frequency [Hz]
Figure 4.5: Bodediagram ofthe doublecage machine (1); the estimated
singlecage machine using sinusoidal voltages (2) and estimated
single cage using PWMsupply (3).
The Bodeplots shows a good lowfrequency fit, but as expected the singlecage model
is not able to describe the frequency behaviour above 10Hz in case of the sinusoidal
supply estimation. The estimation performed with a PWMinverter supply shows to be
less accurate.
However, it shows that using the twofluxmodel method a machine with significant
skineffect can be approximated by a singlecage model. This estimated model can be
used for describing the dominant time constant of the machine.
Chapter 4, Simulation results
4.4. OUTPUT ERROR METHOD
57
To test the OEmethod on the single and doublecage machine models, the inverter
model as described in Sec. 2.5 is applied to create the stator voltage supply for the
machine models. The used inverter properties are given in Table 4.7.
Table 4.7: inverter properties.
fundamental frequency 10 40Hz
DClink voltage Ude 538 V
Pulse number pn 3
Sample frequencyIs 5 kHz
total measurement time 2.5 s
number 01stator periods 99
For identification purposes the datasets containing stator voltage, stator current and
mechanical rotor angle are derived using a machine model at a simulation time step of
T =100IJS . For simulations a RungaKutta 4 integration method is applied. The data is
stored with a sample frequency of Is =5 kHz. If however no precautions are taken,
aliasing is likely to occur. Therefore the stator voltage and currents are filtered with a
4
th
order Butterworth filter with a cutoff frequency set to Ie =1.5 kHz and the dataset
is stored after down sampling from 10 kHz to 5 kHz.
From the simulated stator voltage U;, stator current I; and mechanical rotor angle pS,
the stator flux 'P
s
R
and stator current I: in rotor coordinates are reconstructed. The
mechanical load M
10ad
is hold constant at about 50% of the rated torque.
In the simulation models the rotor circuits in the rotoraxis Rl and R2 are equal.
Therefore, estimation results will be independent of the choice of data, related to the Rl
or R2axis. The offline OEmethod is applied to data related to the Rlrotor axis, which
results in an estimated discrete rotor transfer function G(q, e) .
4.4.1. SINGLECAGE ESTIMATION
The main interest is to estimate the machine parameters which describe the machine at
the fundamental frequency. Therefore the low frequency fit should be emphasised by
means of the prefilter L(q). To estimate all machine parameters the input signal
(current I:) must be sufficiently exciting. If the input signal is a single sinusoidal signal
only two parameters can be estimated from amplitude and phase information. A signal
is called persistently exciting (PE) of order n if the spectrum is different from zero in at
least n points in the interval  f nyq < f < f nyq' Thus, besides the fundamental component
at least one higher harmonic should be present, for estimation of the singlecage
parameters (PE = 2).
58 Modelling and identification ofsingle and doublecage induction machines
For identification the singlecage machine model is fed with a PWMvoltage supply. In
Fig. 4.6. the harmonic content of the applied stator voltage and resulting stator current is
given. The used dataset with a total measurement time of 2.5 seconds contains 12500
samples (N=12500).
frequency [Hz] frequency [HZ]
7
5 I 11 13 19
o
o 40 Hz 500 '000 1500
7 50
3
11
1
200
lOJ 7
;:l I
L
5
00'1 L..l.L
s
o.L
o
',J
o
oo'',iJ
S
00
10 liz
Figure 4.6: harmonic content ofthe appliedstator voltage uf (PWM with n
p
=3)
and resulting stator current If ' using the SCaSM.
The stator flux '¥sR and stator current I: in rotor coordinates are reconstructed using the
offline method discussed in Sec. 3.2.5. using the Matlab mfile "PRE_PROC.m",
Appendix 01. In Fig. 4.7 the flux and current in rotor coordinate Rl, necessary for
identification, are depicted.
2
 , 00
o
Il: •
...
, 00
lillIe IsI lime lsi
Figure 4.7: stator current 1:
1
andflux '¥sRI in rotor coordinate r 1.
For the singlecage identification three parameters have to be identified: LCJ' L
m
and
the stator resistance is assumed to be known. Using only one single sinusoidal voltage
component, enables the estimation of two parameters from amplitude and phase
information. Therefore, twosignal frequencies are needed to estimate the desired single
cage parameters. The filter L(q) is used to emphasise the fundamental component plus
one harmonic. Looking at the harmonic content of the current and flux in rotor
coordinates gives an indication for the choice of the filter L(q). The spectrum of
reconstructed stator current and flux in rotor coordinates is given in Fig. 4.8. The
spectrum contains peaks at the slip frequency Islip and at the switching harmonics in
rotor coordinates at 240 ±Islip and 480 ±Islip (40 Hz fundamental frequency).
Chapter 4, Simulation results
I
1
~ J
rn
;> 0.5
''
I
~
'"'
~
".
51
7
III 13
~
5 1
7
II 13
0
0 500 1000 1500 0 500 1000 1500
59
frequency [HZ] frequency [HZ]
Figure 4.8: harmonic content olstator current 1:
1
andflux 'P:
1
in rotor coordinate rl.
The used prefilter is a fourthorder Butterworth filter. The cutoff frequency of the
applied lowpass prefilter is chosen to be Ie =300Hz. Filtering will cause phase
shift. Therefore, to avoid errors due to this phase shift both input (current 1fl) and
output (flux \fIt
l
) are filtered with the same prefilter. The filtered data set is used as
input for the OEidentification routine "PAR_EST.m" in the program "MATLAB"
(Appendix G2). With the offline method an OEmodel is used to estimate the discrete
transfer function between the reconstructed flux and current. From the resulting discrete
parameters the physical parameters are derived, using the inverse Ztransformation
according to Eq. 364. The resulting continuous time singlecage parameters are given
in Table 4.8.
Table 4.8: DEmethod, singlecage estimation 01the SCaSM prefilter
at 300Hz (R
s
= 0.2120)
parameter simulation estimation error
[si] [pu] [si] [pu] [%]
L
m
33.75 mR 3 33.53 mR 2.981 0.65
La 6.52 mR 0.58 6.527mR 0.580 0.03
,
0.141 n 0.04 0.1414 n 0.040 0.02
R
k
In Fig. 4.9 the outputerror between the reconstructed stator flux
tpRI =f(U
RI
 1
Rl
R)dt
s s s s
and the estimated flux
(41)
(42)
is shown. The reconstructed flux is derived by integration in the frequency domain
using the discussed offline method. The estimated stator flux is calculated using the
estimated discrete transfer function G(q,e) with the unfiltered measured stator current
as input signal.
60 Modelling and identification ofsingle and doublecage induction machines
I
0 0.5 1.5 25
lime [s]
OOl
I
.::.
o
0.05 J
0 0.5 '1.5 2.5
lime Isl
Figure 4.9: resulting outputerror between 1) reconstructed and
2) estimated statorflux. lowpass prefilter at 300 Hz.
Because, the initial value of the estimated stator flux is not correct, the output of the
transfer function needs some time to converge. Used on the SCaSM the OEestimation
method results in a good estimation of the simulated machine parameters (error < 1%).
As long as the cutoff frequency of the prefilter is chosen < 500Hz, the filter has little
influence on the estimation results. If the cutoff frequency is chosen higher, the high
frequency components are emphasised too much, which results in a less accurate
estimation at the fundamental frequency component.
4.4.2. DOUBLECAGE ESTIMATION
To be able to compare the identification methods, the OEmethod is first applied to fit a
singlecage estimation on the doublecage simulation model. In this case the low
frequency fit should be emphasised with the use of the prefilter L(q).
The doublecage machine model is fed with a PWMvoltage, the properties of the
inverter are defined in Table 4.7. In Fig. 4.10 the harmonic content of the stator current
of the doublecage machine is given. Comparing the harmonic content of the stator
current resulting from the DCaSM with the stator current of the SCaSM (Fig. 4.5)
shows significant higher amplitudes of the switching components in case of the double
cage model.
I
I
ii'
]
>
200
I
I
7
:;
50 !
.....
100  I 11
J
.....
;:l
ULI'3
19 25 29
I
I I 3,'
19
29
a I a
oj 500 1 (JOO 1'::)00 0
1 500 1000 1500
''0 Hz 140 Hz
frequency [flz 1 frequency [HZ]
Figure 4.10: harmonic content ofPWMsupply voltage U; and resulting stator
current I;, using the DCaSM
Chapter 4, Simulation results 61
After preprocessing the current and voltage the resulting current I: and flux \fI
s
R
(Fig.
4.11) in rotor coordinates are applied in the DEidentification method.
lime 1,1
2 a
lime 1,1
2
Figure 4.11: stator current 1:
1
andjlux ,¥:I in rotor coordinate ri.
In Fig. 4.12 the harmonic content of both current and flux in rotor coordinates is given.
An optimal estimation can be found by looking at the resulting outputerror between the
reconstructed and estimated flux \fI
s
R1
.
III
<0['
,
~ [
~
>
.....
~
I"'
I
r'
0: '"
20
5 i
11
~
[13 11 ,13
a
~ a 5 1
7
a 500 1000 1500 a 500 1000 1500
frequency [Hz] f ..equency [1"iZ]
Figure 4.12: harmonic content ofreconstructedstator current 1:
1
andjlux
\I.lRI . d' 1
T S m rotor coor mate r ,
In practice the continuoustime system to be identified is never completely described by
the chosen model. Usually the estimated model is of lower order than the real system.
Trying to describe a system by means of a lowerorder model is called under modelling.
In that case it is not possible to identify the true parameters of the process. A clear effect
of under modelling is that the estimated parameters depend on the weighted input
spectrum. If the input signal is sufficiently exciting, the prefilter can be used to shape
the modelfit in a relevant frequency region.
o 0.5
lime l!l]
1 0 2.5
t.ime rs 1
Figure 4.13: resulting prediction error, when applying the unfiltered
current to the estimated singlecage rotor transfer function.
62 Modelling and identification ofsingle and doublecage induction machines
Filtering the dataset with the cutoff frequency of the prefilter set equal to Ie =100Hz,
in order to emphasis the lowfrequency fit, results in an optimal outputerror. In Fig.
4.13 the resulting outputerror is depicted.
It is clear that the estimated transfer function is not able to predict the high frequency
behaviour correctly, which is probably a result of under modelling. The estimated
discrete rotor transfer function is now transformed to a continuous time approximation.
The physical parameters are derived using Eq. 364, the result is given in Table 4.9.
Table 4.9: DEmethod, estimated single
cage parameters ofthe DCaSM (lowpas
filter at 100 Hz)
parameter value
[si] [pu]
L
m
17.2 mH 1.53
La
3.4 mH 0.30
0.131 Q 0.0371
It shows that the estimated main inductance is very low compared to the main
inductance of the DCaSM (Table 4.2). To validate these estimated singlecage machine
parameters, the Bodeplots of the simulated and estimated continuous rotor transfer
function are compared, see Fig. 4.14.
20
m
o
50
1CJ
iO ' 1Uo 10'
"
\
i
_J
I
I
i 0
3
f ny'1 10"
frequency [HLJ
D
f,equency [Hz]
l
I
10
2
10'
./
./
/
/
/
/
./
,
"
"
"
\
\
"
"
50L__
iO J iO2 10 1 100
0'
0;
o
V, !
o
c
r,
Figure 4.14: Bodediagram ofthe doublecage simulation model rotor transfer
function (1) and the estimated singlecage rotor transfer function (2).
Due to a combination of under modelling and an extreme doublecage effect, the OE
method is not able to emphasise the lowfrequency fit, like in case of the TFMmethod.
However, in contrast to the TFMmethod, the DEmethod should be able to estimate
higher order machine models. The desired model order can be found by increasing the
order of the estimated model, thereby looking at the resulting predictionerror. If, as a
Chapter 4, Simulation results 63
result of a higher order estimation the predictionerror is not decreased anymore, an
optimal model order is selected. Following this procedure one must keep in mind that it
takes one harmonic signal to identify two parameters.
The ability to estimate higher order systems is tested on the doublecage reference
machine (Table 4.2). A doublecage model has five rotor parameters which must be
identified. Therefore, at least three different exciting signals are needed. The stator
current I:and flux 'P
s
R
, in rotor coordinates were already given in Fig. 4.12. The cutoff
frequency of the prefilter L(O)) is set to Ie = 600Hz. Applying the filtered dataset to a
secondorder model estimation with the DEidentification method, results in the output
error given in Fig. 4.15.
o , 1.5 2
lime [s]
o 0.5 1.5 2.5
time [s)
Figure 4.15: resulting outputerror between reconstructed (1) and
estimatedjlux (2), when applying the unfiltered current as
input to the estimated doublecage rotor transjer function.
The estimated discrete transfer function resulting from the DEroutine, is then
transformed to continuous time transfer function, using Tustin'stransformation Eq. 3
70. Tustin'stransformation is an approximation of the estimated discrete transfer
function, which in many cases leads to satisfying results. Using Eq. 370 the continuous
time machine parameters are derived. The estimated continuoustime parameters are
given in Table 4.10.
Table 4.10: OEmethod, doublecage estimation ofthe DCaSM (R, =0.2120)
parameter DCaSM estimation error [%]
[si] [pu] [si] [pu]
L
m
33.09 mH 2.941 33.33 mH 2.962 0.73
La
2.012 mH 0.179 2.021 mH 0.180 0.45
,
2.718 n 0.769 2.7189 n 0.770 0.515
R
kl
,
0.136 n 0.039 0.1355 n 0.0384 0.34
R
k2
,
5.406 mH 0.481 5.427 mH 0.482 0.39
L
a2
The error introduced using Tustin'stransfonnation is studied by comparing the Bode
plots of (1): the simulated continuoustime rotor transfer function, (2) the estimated
64 Modelling and identification ofsingle and doublecage induction machines
discrete transfer function and (3) the transformed estimated continuoustime transfer
function, as depicted in Fig. 4.16.
Due to the chosen structure, the estimated discrete transfer function will always have
zerophase on the Nyquist frequency. This estimated discrete transfer function is
therefore not able to describe the real continuous rotor transfer function accurately for
frequencies just below the Nyquist frequency, because the continuous transfer function
has no zerophase at the Nyquist frequency.
10] 10 1 1DU 10' 10:'>
r,eqency [Hz)
10
J
10
4
f
nyq
100 10
1
freqency [HzJ
0,,
vv
0
10,3 10 2
"
"
"' CL
Figure 4.16: Bodeplot ofthe rotor transferfunction: simulation (1),
discrete estimation (2) and transformed (Tustin) continuous
time estimation (3).
The leakage inductance Lfj dominates the rotor transfer function in the high frequency
region K
high
. The low frequency gain K
DC
is defined mainly by the main inductance
L
m
. From Eq. 364 it follows that:
K
DC
= Lim G(ro) = L +L
m
L
m
(43)
fj
K
high
= Lim G(ro) =Lfj (44)
Thus, increasing the sample frequency results in a more accurate estimation of the
leakage inductance Lfj.
The results show that the DEmethod is able to estimate higher order models, like a
doublecage, and that using Tustin'stransformation leads to a accurate discrete to
continuous transformation of the estimated doublecage model.
Chapter 5, Real machine parameters
5. ESTIMATION OF REAL MACHINE PARAMETERS
65
In this chapter the parameters of a Heemaf llkW SKAmachine (Appendix C) are
estimated. According to the speed/torque curve this is an asynchronous machine with
significant skineffect. Using the TFMmethod the machine is identified as being a
singlecage machine. With the DEmethod the effect of a second order model
identification is studied.
5.1. MEASUREMENTS
For both identification methods, the threephase voltages and currents have to be
measured. The measured three phase voltages and currents are fed into a DSPsystem.
The DSPsystem was already available and is build up around a TM320c30 processor.
The system is elaborately discussed in the thesis of [lans '93].
In this DSPsystem the measured values are scaled and transformed to a twophase
representation, according to Appendix B. The twophase representation of voltage and
current serves as input to the TFMmethod (Sec. 3.1) or they are stored to create the
necessary dataset that an be to applied in the DEmethod (Sec. 3.2).
VOLTAGE CURRENT
IOOA == IV
Figure 5. J: measurement ofthe threephase voltages and currents
The stator terminal voltages and currents are measured using LEM's (transfoshunts) as
depicted in Fig. 5.1. The voltages are observed with respect to an artificial star node. For
the realisation ofthis measurement an existing system is used (BRAMAMATIC, m. EM
1764). The system has three threephase voltage and current measurements and was, for
this purpose, extended with a direct output of the desired voltage and current
measurements.
66 Modelling and identification ofsingle and doublecage induction machines
The measured analogue values are transfonned to a digital value, using a 12 bits AID
converter. The input range of the AIDconverter is 10 to IOV. After a scaling correction
this equals an integer value between 2048 and 2048. To be able to use the values in the
DSPsystem, scaling will be necessary. The input/output routines for the analogue board
are defined in the DSPprogram "P06.asm". For the digital board the I/O routines are
defined in the program "P09.asm".
5.2. TwOFLUXMODEL METHOD
To apply the TFMmethod on the machine, the two fluxmodels are implemented in a
DSPsystem. The measured voltages and currents are transfonned to digital values and
scaled to be used in the DSPsystem. For the TFMmethod all measured values and
system parameters are translated to a Per Vnit system. Using the references given in
Appendix C1, this lead to the scaling factors given in Table 5.1.
Table 5.1: import scalingfactors used
for the TFMmethod
scimp value
V
2.1 Jlz048 pu
I
1.9J1z048 pu
With the use of four DCvoltage sources the estimated machine parameters R
s
' La
and L
m
are fed into the DSPsystem via an AIDconverter. This way the parameters can
be tuned online. In Fig. 5.2 the realised configuration is depicted. The two fluxmodels
have been implemented in a DSPprogram given in Appendix Fl. However, for stability
reasons the VIImodel is realised in an other way as depicted in Fig. 3.1. Due to
measurement noise the output of an integrator without feedback will drift away. To
avoid this integration drift an extended VIImodel with feedback is used, as depicted in
Fig. 5.2. A thorough description of this VIImodel is given in [lans '93]. In the I/<p
model no drift problems will occur.
. sl ,., ·"'sl 
Is I I Is r \  "'k 1;<1 k
 ... C J;...
Is Is 9 k 0 k
'  ' La   P
l _ + A+
, (Ii, . I rA'
, \.' '
,
,
,
Figure 5.2: applied VIImodel in the TFMmethod
Chapter 5, Real machine parameters
WardLeonard syslem
i   '        : Three ph8!i1C vDllsle
I I with variable frequency
I I Bud amplitude
67
Grid
I
I
I
~                                  ~
Personal compuler
,
I
I
I
I
I
I
[
DSPSYSlem i
~ ~ , ~ TMS320c30 :
' .J I _ I
I                   ~
LOAD
Figure 5.3: configuration usedfor identification with sinusoidal voltages and currents
The per phase stator voltages and currents are measured, using the BRAMAMATIC.
Via an AIDconverter the measured values are fed into the DSPsystem. In the DSP
system the 3phase voltages and currents are transformed to a 2phase representation
which are the inputs of the two fluxmodels. Output of the TFMmethod is the flux
difference i1t¥k' Via the AIDboard this analogue signal can be measured with a
voltmeter. This flux deviation can be made equal to zero by tuning the model
parameters under different operation conditions.
The identification method is performed using a sinusoidal voltage supply. Because a
voltage with variable frequency and amplitude is needed a WardLeonard configuration
had to be used. In Fig. 5.3. the applied system configuration is given.
The system is operated in the following way. First a synchronous machine is used to
drive a DCgenerator. The excitation of the DCgenerator is variable, resulting in a
variable DCvoltage. This voltage is used to feed a DCmotor, which drives a
synchronous generator. Changing the excitation of the DCgenerator and synchronous
generator, results in a three phase voltage with variable amplitude and frequency. The
machine to be identified is then fed with this variable voltage. The load of the machine
is created with a 15kW DCmachine, used as generator with constant field excitation.
For correct use of the TFM identification method, using the above configuration, it is
important not to drive the machine far into saturation. This is important, because
otherwise the parameter estimation will not converge. This can be explained as follows:
using this configuration the flux level can not be hold at a constant value when changing
form noload to load condition. A change in flux level results in changing machine
parameters as a result of saturation. However, this will not be the case if no saturation
68 Modelling and identification ofsingle and doublecage induction machines
occurs or if the flux can be hold at a constant value (e.g. applying the TFMmethod on a
v/fcontrolled machine).
Thus to be able to use the method correctly one needs to know where saturation starts. A
first indication of the saturation region can be found by measuring stator voltage and
current at constant frequency. In this case the stator voltage is proportional with the
machine flux. At noload the rotor current will be small and the stator current will be
almost equal to the magnetising current. At small flux level (small stator voltage
amplitude) no saturation occurs and the relation between voltage and current will be
proportional.
Identification of the machine parameters is performed with a stator frequency
is =40Hz and a per phase voltage Us == 100 Vrms. First the stator resistance is
determined, which can easily be measured with an ohmmeter. The estimation
procedure, of the TFMmethod is described in Sec. 3.1. The measured stator resistance,
the estimated main inductance L
m
, the concentrated leakage inductance La and the
estimated rotor in cold conditions are given in Table 5.2.
Table 5.2: TFMmethod, estimated singlecage
parameters (cold) ofthe HeemafSKAmachine at
sinusoidal supply. (U, == IOOVrrns., f" =40Hz)
parameter Value
[pu] [si]
R
s
0.039 0.2380
La
0.22 4.4mH
2.14 43mH
L
m
0.026 0.1590
The estimation of the rotor resistance, as described before, is not very easy in the
applied configuration because it is not possible to make a good stepwise voltage change
by means of changing the rotor excitation of the synchronous generator. Another way to
estimate is to use (Eq. 57):
(51)
Where <i>r equals the slip frequency of the machine. Using the two flux models, both
cage flux 'P
k
' and current are estimated. If the slip frequency is known the rotor
resistance can be derived. The mechanical speed of the machine is measured with a
tachometer. The estimation of the rotor resistance was performed at noload (slip
0.12%) and at load (slip 0.48%), the results being given in Table 5.3.
Table 5.3: rotor resistance estimation (cold), ofthe Heemaf llkWSKAmachine
is [Hz] Slip [%]
f([pu]
[pu]
A'
R
k
40 0.12 0.032 0.428 0.013 pu 0.080
40 0.48 0.047 0.352 0.029 pu 0.170
Chapter 5, Real machine parameters 69
It's clear that the rotor resistance is frequency dependent, which is typical for skin effect.
This effect will be discussed further on in this report.
At a slip of 0.48% the rotor resistance is about equal to the value estimated in Table 5.2.
Consequently, if the mechanical speed can be measured the last discussed method is
easier to perform. Nevertheless, both methods show however similar values for the rotor
resistance estimation.
The singlecage machine parameters can also be calculated using the measured voltages
and currents in load and noload tests, see Appendix C2. The estimated and calculated
singlecage parameters are given in Table 5.4.
Table 5.4: estimated and calculated singlecage parameters (R. = 0.2380)
parameter calculation TFMestimation
[si] [pu] [si] [pu]
L
m
29.6 mH 1.48 43mH 2.15
La 5.8 mH 0.29 4.4mH 0.22
,
0.1637 Q 0.027 0.17 Q 0.028
R
k
The results show a large deviation in the estimated main inductance, which is caused by
the saturation effect in the machine. In this situation whereby the machine flux is not
controlled, the TFMmethod must be performed on the machine working in the
unsaturated region. The calculated machine parameters according to Appendix C2 are
derived using rated voltage. Because almost all machines are designed to make optimal
use of the iron at rated voltage the machine will be working in saturation. In the
following section the saturation effects will be further studied.
SATURATION EFFECT
A physical asynchronous machine is built out of iron, copper, aluminium and insulation.
To optimise the machine's powertoweight ratio, any magnetic saturation at rated flux
density is usually the case. The magnetising inductance L
h
is therefore in general
considerably nonlinear around the operating point. The saturation effect will be
estimated using the TFMmethod.
According to Eq.'s(216 to 219) the singlecage parameters, except the stator resistance,
of Fig. 2.7 are all dependent of the transformation factor k. Which implies that the
parameters are dependent of the magnetising inductance and some rotor leakage
inductance. However, it is usually assumed that most of the leakage flux travels through
air and is therefore not affected by magnetic saturation.
In the model, depicted in Fig. 2.16 leakage flux has influence on the total leakage
inductance La and partly in the main inductance L
m
. To be able to estimate the
saturation effect in the machine, the parameters R
s
' R ~ and La are assumed to be
constant and the saturation effect of the magnetising inductance L
h
is thought to be
concentrated in the main inductance L
m
. Due to this assumption a small error will be
70 Modelling and identification ofsingle and doublecage induction machines
made because and La are, to some extend dependent of the changes in the
magnetising inductance L
h
according to Eq.'s (242 to 247).
The saturation effect is observed with the use of the two flux models. When the stator
voltage is increased at a constant frequency, the flux in the machine is changed
proportionally. If saturation is reached, and the main inductance of the machine L
m
decreases, the estimated value L
m
in the Ijcrmodel will be incorrect. This results in an
A A
estimated flux =L
m
· which will be larger than the "real" flux value and
therefore < O. Because and La are thought to be independent of saturation, the
deviation in must be adjusted by decreasing the value of L
m
• The measured
estimated saturation curve is given in Fig. 5.4, this curve being obtained through
measurements. In the machine model described in Chap. 2, the relation between the
"cage" flux and the "magnetising" current is given by L
m
• Thus for modelling
saturation effects the constant L
III
has to be replaced by the estimated currentflux
relation.
o D.' 0./ [}.3 0.4 0 ..<> 0.5 n 7 n.R 0.9
[pu]
o 0.1 0.7 0 j 04 0 D.G 0 I 0.8 0.9
fpuj
Figure 5.4: estimated saturation effect on the main inductance
The fluxcurrent relation depicted in Fig. 5.4 has to be modelled by a function, which
can be used in the machine model already presented in Chap. 2.
REMARKS
Advantages of the TFMmethod:
• only terminal voltage and current measurements
• no rotor position sensor needed
• good fit for low frequency components
Disadvantages:
• The two fluxmodel method can only be used for estimation of singlecage machine
parameters.
• The use of sinusoidal voltage sources (although not necessery) brings additional
problems for this identification method because variable amplitude and frequency
are required. Looking at Fig. 5.1. reveals that four machines are needed to create the
desired stator voltage.
Chapter 5, Real machine parameters
5.3. OUTPUT ERRORMEmOD
71
To perform the OEmethod the SKAmachine is fed by an invertervoltage. The used
inverter is a standard Holecinverter (type PMO, nr. EM 1800) with a voltage/frequency
control unit. The fimdamental output voltage component is controlled with this
voltage/frequency control unit. To be able to estimate all machine parameters the
applied terminal voltage must have sufficient harmonic content. The inverter is set to a
fundamental frequency of 50.62 Hz; the pulse number of the inverter then equals 3. The
DCvoltage is about 539V.
To apply the OutputError method a dataset of measured twophase voltages and
currents and the rotor angular position are needed. Therefore the measured threephase
voltages and currents are transformed into a twophase representation in the DSP
system. The rotor position is measured using a 1000 pulse encoder and a digital module.
This digital module is a simple counter, that counts the flanks of the encoder pulses.
Depending on the rotating direction, it counts up or down from 40 to 4040. In the DSP
system this integer value is scaled to an angle between 0 and 21t (Fig. 5.5).
rot.or angle
I
21T
01'""'""
I
I
I
sneed reversal
I.
Figure 5.5: rotor angle representation
The measured values of voltage and current must be scaled to the real voltage and
current values, before storing in the dataset. In Table 5.5. the used scaling factors are
gIven.
Table 5.5: import scaling usedfor
creation ofDEmethod dataset
sClmp value
U
666.6/i V
2048
I 1 0 ~ A
2048
In the DSPprogram these scaling factors are placed in the file IP06.ASM". The rotor
angle transformation is given in "P09.ASM", see Appendix F2.
5.3.1. DATA ACQUISITION
The terminal voltage uf, current If and rotor position were measured during steady
state operation at a constat load, using a sample frequency of Is = 10kHz. To avoid
aliasing the voltages and currents are prefiltered with an analogue 2
nd
order lowpass
Butterworth filter with cutoff frequency Ie =1.5 kHz.
72 Modelling and identification ofsingle and doublecage induction machines
To be able to store a dataset with sufficient rotor periods in the DSPsystem, the
measured data is down sampled to 5 kHz and the RAMmemory was changed from 16k
to 64k. This enables a total measuring time of 2.4 seconds at a sample frequency of 5
kHz. The operation conditions of the SKAmachine are given in Table 5.6.
Table 5.6: operation conditions ofthe Heemaf
SKAmachine and Holec PWMinverter.
fundamental frequency fo 50.62 Hz
DClink voltage Ude 539V
Pulse number pn 3
Stator current Isa,ejf 16.8 A
Rotor speed 986.3 rpm.
Slip 2.58 %
Slipfrequency 1.31 Hz
Applied load
The scheme of the system configuration, used to create the necessary dataset, IS
depicted in Fig. 5.6.
HoJec
Grid ¢
PWM
inverler
fler!lonlll cornputcoT
I ;' I I 11100 '00".
,       i  eneOdeK·SKA • FJ K
i
+ r ====  : 'c _1< .
VI"'""lnahulI... ; .:1 I)/A A/I): ,G rf.__  _ Ie
Col)v.'rlcr I uuYcrll'r I I> I
i il __ __ __ I__ ' ' ..
: I ,
I Buy l :
i J
i I ",pu' :
I TMS32or:30 I l__,
, . I : RS232
I ' ,
Figure 5.6: configuration usedfor creation ofa dataset.
To store the measured data on in the external memory of the DSPsystem, two macro's
are used [So Bosga]: "MATINIT" defines and initialises the necessary memory space;
"NAARMAT" stores the data in the defined section and is called each time data needs
to be stored. The data stored in the external memory of the DSPsystem can then be
stored in a datafile on disk using the "C30DEBUGGER". This datafile is converted to
a MATLAB file using the program "STRIPPER.exe". The procedure to store the
measured data on disk is more thoroughly discussed in Appendix F3.
Chapter 5, Real machine parameters 73
The spectrum of the measured stator voltage and current is given in Fig. 5.7. It shows
that significant harmonics are present in the signals (5
th
at 253.1 Hz, 7
th
at 354.34 Hz and
11 th at 556.8 Hz). The stator flux and current in rotor coordinates (Sec. 3.2.5.), given in
Fig. 5.8, are reconstructed according to the discussed offline method, using the Matlab
Mfile "PRE_PROC.m" (Appendix Gl).
1400 1200 1000
0' 2001 "DO
f
o
.=5D.6ilHI 253.1
i [: '( ,,: : : .1 ':[J4l"'"
fiDD BOO
frequency [lIzJ
200' t400 BOD BOD 1000 1200 1400
"'.. '''.3 fr'flueney IJlz]
I
... 100
Ul';;
:J
o
o t
r0
Figure 5.7: harmonic content ofterminal voltage U; and current 1;.
. 'I I
(l.S 1.\ 1.5
lime lsi lillie [sl
Figure 5.8: reconstructedflux 'P
s
RI
and current 1:
1
in rotor coordinate rI.
The hannonic content of current and flux is depicted in Fig. 5.9. After transformation to
rotor coordinates the spectra contain significant peaks at the slip frequency
Islip = 10  1
m
= 1.31 Hz and at the switching harmonics on 303.7±Islip and
607.4 ±Islip'
';( =
.
cr: .lIp Irf'{. ! .Iip
=1.:\1111
[) t fiOO HOD 1080 1700
30:1.7111 frequency IHz]
,lip
.
0.5
...
.Iip frelJ.
::I.JIIII
i f) 7
() 1 I !
IDO t lion
3DUII.
Ilip
lim.tllt
! dip
I
I
111,1:1
I I ;I4f
liOn BOO 1[)OO 1100
frequency [Jlzi
Figure 5.9: Harmonic content ofthe reconstructedflux I:£I,Rl and current 1:' in
rotor coordinate r1.
The OEidentification method is applied to the reconstructed flux and current signal.
The dataset exists of 12000 samples. The amplitude of the fundamental component of
the stator flux is found to be I\{Is.ol =0.69 Vs.
74 Modelling and identification ofsingle and doublecage induction machines
5.3.2. SINGLECAGE ESTIMATION
A first step in using the OEmethod is to derive a proper model order. This is, like in the
simulations, done by starting with a singlecage parameter estimation. If the estimated
result changes significantly when changing the prefilter L(q), the chosen modelorder
is not correct. By increasing the model order the resulting prediction error should
become smaller until the best approximation of the model order is selected.
To estimate the singlecage parameters the filter is set to Ie =300Hz, thereby including
two harmonic signals, according to Fig. 5.9. The resulting outputerror is given in Fig.
5.10. It shows that the higher frequency components are weighted to much, resulting in
a good prediction of the high frequency component but a large low frequency miss fit.
For a better estimation of the low frequency behaviour, the low frequencies in the output
error have to be more emphasised by means of the prefilter.
0.5
time [s}
1.5 2.5
o , 1,5 2
lime hd
Figure 5. J0: resulting outputerror between reconstructed (J) and
estimatedflux (2), using a singlecage rotor model
estimation. Prefilter at 300 Hz.
Using a prefilter cutoff frequency of200 Hz results in a better low frequency fit, but
still the fundamental component is present in the outputerror signal, see Fig. 5.11.
Therefore, one can conclude that not all low frequency information is used in the
minimisation of the outputerror.
,l I I
o 1 1 5 2 ;;
lime [!I}
005 1 output """'
o 0.5
lime r8 1
15
Figure 5. JI: resulting outputerror between reconstructed (J) and
estimatedflux (2), using a singlecage rotor model
estimation. Prefilter at 200 Hz.
Chapter 5, Real machine parameters 75
Lowering the cutoff frequency of the prefilter to Ie =50 Hz, results in the outputerror
given in Fig. 5.12. It shows that the outputerror is dominated even more by the high
frequency components and the fundamental frequency component is further minimised.
The estimated discrete rotor transfer function is transformed to a continuous time single
cage rotor transfer function, which should give a good description of the rotor circuit for
low frequencies. The estimated continuous time singlecage parameters are then derive
using Eq. 364. In Table 5.7. the resulting estimated singlecage parameters of both
TFMmethod and DEmethod are compared.
' : : ~  1
o 0.5 1 5 2 2.5
time [5']
o 0.5
Lime 191
1.5 2.0
Figure 5.12: resulting outputerror between reconstructed (1) and
estimatedflux (2), using a singlecage rotor model
estimation. Prefilter at 50 Hz.
The DEmethod is applied on measured voltages and currents at a fundamental flux
level of I'Ps,ol =0.69 Vs. The amplitude of the cageflux is derived using Eq.'s(227 to 2
28) and equals I'P;,ol =0.65 Vs. Therefore, to be able to compare the results of the
estimation methods, the saturation effect must be taken into account. This is done by
changing the estimated main inductance found with the TFMmethod, using the
estimated saturation curve, depicted in Fig. 5.4.
Table 5.7: estimated singlecage parametersfor the SKAmachine.
at aflux level ofl qJ;,0I= 0.65 Vs and measured stator resistance
(R
f
= 0.2380)
parameter DEmethod TFMestimation
[si] [pu] [si] [pu]
A
38.6 mH 1.93 39mH 1.95
L
m
L
cr
3.2 mH 0.16 4.4mH 0.22
A'
0.198 Q 0.032 0.17 Q 0.028
R
k
Taking the saturation effect into account the estimation of the main inductance i
m
is
almost equal for both estimationmethods. However there is a significant difference in
the estimated leakage inductance i
cr
• Using the DEmethod the leakage inductance is
estimated by using an exciting signal at about 300 Hz. This estimated value is not equal
76 Modelling and identification ofsingle and doublecage induction machines
to the value estimated with the TFMmethod whereby the machine is only excited at
low slip frequencies using different operation conditions. The difference in the
estimated value of the leakage inductance due to different exciting procedures indicates
under modelling. In the next section the OEmethod is applied to derive doublecage
parameters using the same dataset.
5.3.3. DOUBLECAGE ESTIMATION
In the previous section it is shown that using the OEmethod to estimate a singlecage
model will not result in a frequency independent model. A better approximation is
found using a doublecage estimation model. To be able to estimate all doublecage
parameters, the input signal must contain at least three harmonic signals. Looking at the
harmonic content of the current I
s
RI
shows sufficient harmonic components to be able to
estimate all parameters. The cutoff frequency of the prefilter L(q) is chosen at
Ie =500 Hz. In Fig. 5.13 the outputerror between the estimated and reconstructed
stator flux in rotor coordinates is depicted. It shows that applying a doublecage model
the outputerror method results in a better highfrequency fit without losing low
frequency information. Changing the cutoff frequency of the prefilter from 300 to 800
Hz does not result in significant changes in the estimated parameters, which indicates
that the chosen model order is a satisfying approximation of the real system.
.~ o ~ 1
o 0.5 1.5
() 
".;
.,
 o . ( ) ~ 
[)
time rs 1
Figure 5./3: resulting outputerror between reconstructed (l) and
estimatedflux (2), using a doublecage rotor model
estimation. Prefilter at 500 Hz.
Using higher order models did not result in a smaller outputerror, which is probably
due to insufficient higher harmonic frequency components in the used dataset. For a
third order estimation the input signal must at least contain four significant harmonic
components, to be able to identify 7 model parameters. The estimated discrete second
order transfer function is then transformed to a continuous time approximation using
Tustin'stransformation. The continuous time rotor transfer function is rewritten
according to Eq. 370 resulting in the estimated continuous time doublecage
parameters, as given in Table 5.8.
Chapter 5, Real machine parameters 77
Table 5.8: OEmethod, estimated doublecage parameters
for the SKAmachine. Lowpass prefilter at 500 Hz.
Measured stator resistance R = 0.2380
s
parameter DEestimation
[si] [pu]
~
41.87 mH 2.094
L
m
i
cr
2.46 mH 0.123
~ ,
3.166 n 0.519
R
k1
~ ,
0.219 n 0.036
R
k2
~ ,
1.997 mH 0.10
L
cr2
In Fig. 5.14 the Bodeplots of the estimated single and doublecage continuous rotor
transfer functions as a result of both tested estimation methods are given.
CD
~ 40
c
'0
C>
10
3
f ny.) 10' 10
'
10
0 10
1 10 2
60 '__~ __~ ~ __~ ~ __~ _ L _ ____"
103
freqency [Hz]
0'
m ·20
<:>
"
u,
D
C
,,
40
co
103
10' 10
2
10
J
f nyC) 10
4
freqency [HI]
Figure 5.14: Bodeplots ofthe estimated rotor transfer fimctions
1) Twojluxmodel method singlecage estimation;
2) OEmethod singlecage estimation;
3) OEmethod doublecage estimation.
The Bodeplots show that the low frequency fit is about the same for all estimated
models. The high frequency fit, dominated by the leakage inductance L
cr
, is significant
different for both singlecage models. Using the DEmethod for the estimation of the
singlecage model, the leakage inductance L
cr
is determined at a harmonic frequency
component of about 300 Hz. Looking at the Bodeplots it shows that the gains of the
DEmethod estimated doublecage and singlecage transfer functions are matched at
about 300 Hz. In the TFMmethod all singlecage machine parameters are determined at
small slip frequencies. This different approach of identification will cause the difference
in estimated leakage inductance value for both methods.
78 Modelling and identification ofsingle and doublecage induction machines
Applying the OEmethod, the estimation results are evaluated by comparing the
resulting error between reconstructed and estimated stator flux \fJ:I and by comparing
the Bodeplots. In the following section the estimated machine models are compared
with the real machine properties, using the single and doublecage estimated simulation
models.
REMARKS
Advantages of the OEmethod:
• identification is performed without additional test signals or special load conditions;
• easy to perform offline;
• online estimation is posible;
• able to estimate higher order rotor circuits, leading to a better current/flux
reconstruction.
Disadvantages:
• accurate measurement of the rotor position or speed is necessery.
Chapter 5, Real machine parameters
5.4. VERIFICATION OF THE ESTIMATION RESULTS
79
As seen in the previous sections the Heemaf 11kW SKAmachine is identified, as being
a singlecage machine when applying the TFMmethod. Applying the DEmethod the
machine is identified as single or doublecage machine. The goal of the described
machine modelling and the studied identification methods is to derive a machine model
which fits the real machine properties as good as possible.
In this section the estimated machine parameters derived in Chap. 5 are applied to the
simulation models which have been discussed in Chap. 2. In the previous sections the
following three machine models have been identified:
• TFMmethod, singlecage model;
• DEmethod, singlecage model;
• DEmethod, doublecage model.
For the validation of these estimated machine models, two tests are performed whereby
the properties of the simulation model will be compared with the real SKAmachine
properties. For validation the following tests are performed:
1. comparing the measured and simulated steadystate speed/torque curves;
2. using the measured stator voltage and rotor speed as input for the estimated machine
models and comparing the resulting stator currents with the measured stator
currents.
5.4.1. STEADYSTATE CURVES
A first validation is to compare the steadystate curves of the real machine and the
estimated models. Therefore, the steadystate speed/torque curve of the SKAmachine is
measured. The curve can not be measured at rated voltage, because of the fact that too
large currents will flow through the machines windings at large slip frequencies (about
58 times the rated current). To be able to measure the full speed/torque curve form
stand still to synchronous speed, the stator current must be limited. Therefore, the
applied stator voltage must be kept small. For the measurement of the steadystate
speed/torque curve of the SKAmachine a constant stator voltage of Uab,efJ =100V is
applied. The simulation models have been tested using the same stator voltage. In Fig.
5.15 the measured and simulated steadystate speed/torque curves are depicted.
The measured curve (1) shows a significant doublecage effect, high pullout torque.
Naturally the both estimated singlecage models (2) and (3) will not match this effect.
The estimated doublecage (4) was assumed to be able to match the measured curve
better. However, it appears that this estimated doublecage model results in better fit
(higher pullout torque) but is not able to predict the real steadystate torque behaviour.
80 Modelling and identification ofsingle and doublecage induction machines
20
sr 
o 100 200 .300 ';00 500 600 700 800 900 1000
Rolor sDeed f rDm1
Figure 5.15: the steadystate speed/torque curves at a stator voltage
of Uab,ejf = 100V.
1. HeemafSKAmachine
2. TFMmethod estimated singlecage model,
3. OEmethod estimated singlecage model,
4. OEmethod estimated doublecage model.
All estimation methods are performed in the normal operation range of the machine.
Therefore, it is not fair to compare the hole speed/torque curves. It will be more
appropriate to compare the steadystate curves in the normal operation area. In Fig. 5.16
the
900 920 9.50 9l\() 950 9£)0 970 980 990 1000
Rolor fTum 1
Figure 5.16: the steadystate speed/torque curves at a stator voltage
of Uab,ejf = 100 V.
1. HeemafSKAmachine
2. TFMmethod estimated singlecage model,
3. OEmethod estimated singlecage model,
4. OEmethod estimated doublecage model.
It shows that in the normal operation range (950 to 1000 rpm.) the estimated and
measured curves do not differ much. Therefore, one can conclude that in the normal
operation range the steadystate behaviour can be described by the TFMmethod
estimated singlecage model (2) or OEmethod estimated doublecage model (4). In this
steadystate situation the OEmethod estimated singlecage model (3) results in a too
high torque compared to the measured torquecurve. While the electric torque of the
machine is dependent of the leakage inductance La' the estimated leakage inductance
Chapter 5, Real machine parameters 81
must be to small. This can also be seen in Fig. 5.14, here the DEmethod singlecage is
estimated using two frequency components, the slip frequency and the switching
harmonic at about 300 Hz.
5.4.2. VALIDATION BASED ON MEASURED DATA
Another, and perhaps better way to validate the estimated machine models is to compare
the measured signals with the simulated signals. The measured stator voltage u: and
mechanical rotor speed serve as input for the estimated machine simulation models. The
A
output of the simulation models will be estimated stator current ~ s in stator coordinates.
If the estimated machine model is accurate the predicted stator current should
correspond with the measured stator current. To be able to compare these currents for
validation, the amplitude spectra of the measured and estimated stator current have
been compared.
TFMMETHOD SINGLECAGE
In Fig. 5.17 the harmonic content of the measured and simulated stator is depicted. The
difference between measured and simulated stator current is given in Fig. 5.18.
Measured
':t
30[ ,
I tL
...
I
..
10 
....,
o ~   . J 1
(J 100 200 300 400 ~ O O 600 700 800
frequency 1HZ]
Simulal.ed
':t
'''0
]
""
...
1
..
?o·
10
(,=,
0
0 100 200 300 400 ~ ) O O 600 100 800
Ireqdency [H 1 J
Figure 5.17: amplitude spectrum ofmeasured and simulated stator
current. The TFMmethod SCaSM is fed with the measured
stator voltage.
iL
• • •
,
.::,
I I
.;
1
I
.._
1
<l
I
I
0 100 /00 30ll 400 500 60ll 700 800
frequency lHz]
Figure 5.18: deviation between measured andsimulated stator
current. Using the TFMmethod SCaSMfed with the
measured stator voltage.
82 Modelling and identification ofsingle and doublecage induction machines
It is clear that the model is not able to predict the amplitude of the higher harmonic
components. The estimation error on the fundamental frequency component is about
0.5%. Less accurate is the estimation of the 5
th
harmonic component with an error of
about 25%. The error in the 7
th
harmonic is also about 25%. Therefore, the TFM
method singlecage estimation is only valid to estimate the fundamental frequency
component.
OEMETHOD, SINGLECAGE
Applying the measured voltages and rotor speed to the DEmethod estimated SCaSM
results in the amplitude spectra, depicted in Fig. 5.19. The difference between measured
and simulated current is given in Fig. 5.20.
Measured
~
: ~ u
• • • •
l
c
j
~
=
I
0 100 200 JOO 400 500 600 700 BOO
frequency [Hz]
30
r
Sinlulaled
3:
1
20
"E
LL
10 
~
0
I
0 100 200 300 400 500 600 700 BOO
t requency i Hz J
Figure 5.19: amplitude spectrum ofmeasured andsimulatedstator
current. The OEmethod SCaSM is fed with the measured
stator voltage.
~
:J
1
j
....:' I
J

I <1
1 01
, j
0 100 200 JOO 400 500 600 100 BOO
frequency [Hz]
Figure 5.20: deviation between measured and simulated stator
current. Using the OEmethod SCaSMfed with the
measured stator voltage.
Comparing these results with the estimated stator current of the TFMSCaSM (Fig.
5.19) shows that the DEmethod SCaSM gives a better estimation of the real stator
current. The fundamental frequency component is estimated with an error of about
0.5%. The 5
th
harmonic component is estimated less accurate with an error of about
5%. The 7
th
harmonic has an estimation error of about 5%. The DEmethod estimated
singlecage model gives a better estimation of machines stator current.
Chapter 5, Real machine parameters
OEMETHOD, DOUBLECAGE:
83
The best estimation of the stator current is found by using the estimated DCaSM. In Fig.
5.22 the difference between the harmonic content of measured and simulated stator
current is shown.
::0
Measured
..:::.
•
.
• • •
I
=
j
0 100 200 300 400 SOD 600 700 BOD
frequency [HZ]
::r !
Simulaled
<t
j
..
':U
0 100 200 .100 400 500 600 lOa 800
frequency [Hz]
Figure 5.21: amplitude spectrum ofmeasured and simulated stator
current. The OEmethod DCaSM is fed with the measured
stator voltage.
rlJ. = 1 • I
o 'DO 200 .lOa 500 600 lOa 800
[Hz]
Figure 5.22: deviation between measured and simulated stator
current. Using the OEmethod DCaSMfed with the
measured stator voltage.
Using the DCaSM results in an accurate estimation of the fundamental component (1 %),
the 5
th
harmonic (error 2%), the 7
th
harmonic (error 1%) and the 11th harmonic (error
15%). These results show that the estimated doublecage model leads to a significantly
better prediction of the machines stator current, compared to both estimated singlecage
models.
Chapter 6, Conclusions and recomendations
6. CONCLUSIONS AND RECOMMENDATIONS
6.1. CONCLUSIONS
85
In Chap. 2 modelling of single and doublecage induction machines is discussed.
Keeping the stator part and rotor part of the machine separated [Velt '94], results in a
simple machine model. In this case the rotor circuit is a linear system which can easily
be expanded to a higher order rotor circuit.
In Chap. 3 two parameter identification methods are discussed. The methods are tested
on simulation models in Chap. 4. The TFMmethod is based on the conventional steady
state noload and load tests and is only able to estimate singlecage parameters. The
method performs well on singlecage simulation models. Applying the method to a
doublecage machine model results in a good estimation of the dominant time constant.
This leads to a singlecage machine model which enables the prediction of the dynamic
responses at sinusoidal supply. The difference lies in the effects of the higher harmonics
on the machines behaviour. Higher harmonics are caused by inverter supply. In modem
electric drive systems an inverter supply is always applied. These switching harmonics
result in significantly higher current and torque ripples when using a doublecage
machine.
Secondly, an outputerror method based on linear inputoutput models is considered.
The model parameters are found by minimising the squared difference between the
predicted outputs based on the measured inputs and outputs. To be able to estimate all
machine parameters, sufficient frequency components must be applied to the machine.
Therefore, the switching harmonics due to the inverter supply are used as excitation
sources. The DEmethod is based on a linear inoutput model and is therefore not
directly applicable to the measured dataset because there is no linear relation between
the stator currents and voltages. By transforming the measured stator signals to rotor
coordinates this nonlinearity is cancelled out. Transformation to rotor coordinates
requires knowledge of the rotor position and stator resistance. The transformed signals
correspond with the current and flux which are induced in the rotor. For the
transformation offline routines are used.
With the use of a prefilter the lowfrequency fit can be emphasised. When changing the
prefilter one should keep in mind that the estimated leakage inductances are mainly
defined by the switching harmonics and that the estimated main inductance and rotor
resistance are mainly defined by the slip frequency. A too low prefilter cutoff
frequency will therefore result in badly estimated leakage inductances.
Applying the DEmethod to the single and doublecage simulation models results in a
very accurate estimation of the desired single or doublecage machine parameters.
However, trying to estimate a singlecage machine model with data of the doublecage
simulation model did not result in a good estimation of the dominant rotor time
constant. This indicates that the method is sensitive for under modelling.
86 Modelling and identification ofsingle and doublecage induction machines
In chap. 5 both methods are applied to a Heemaf llkW, SKAmachine. Both methods
are first applied to estimate the singlecage machine parameters. As a result of the used
configuration for the voltage supply, it's important not to drive the machine far into
saturation if the TFMmethod is used. Because the flux in the machine can not be hold
at a constant value when changing the machine from noload to load operation, the
parameters can not be tuned to a stable value as a result of saturation. Decreasing the
stator voltage to about 100 V no saturation occurs and the machine parameters can be
tuned correctly. In the tested situation the TFMresults in the unsaturated singlecage
parameters. However, usually machine parameters at rated voltage are desired.
Therefore, the saturation effect is assumed to be concentrated in the main inductance. At
constant values of the rotor resistance and the leakage inductance the stator voltage was
increased, resulting in a flux difference between both estimated cagefluxes. This
deviation is made equal to zero by adjusting the main inductance, resulting in a
saturation dependent main inductance.
The DEmethod is applied to a measured dataset of stator voltage, stator current and
rotor position. The DEmethod is performed at only one flux level while the used PWM
inverter contained a voltage/frequencycontrol unit, keeping the flux in the machine at a
constant level. Based on this dataset both single and doublecage machine parameters
were estimated. The main difference in the singlecage estimation, using the TFM
method or the DEmethod, is the value of the leakage inductance. This is caused by the
fact that the two methods are developed using a different approach. The TFMmethod is
based on the classic machine equations and minimising the error between two estimated
fluxes, while the DEmethod is based on minimising the error between the real system
output and the output of an estimated machine model. Validation of the estimated
single and doublecage models shows that the DEmethod estimated doublecage
model results in the best prediction of the measured stator current, hen the SKA
machine is supplied with a PWMinverter.
The goal of the tested models and identification methods was to achieve an accurate
description of the real machine behaviour. It is clear that it is not possible to give one
model which describes the real machine completely. In this report no special purpose for
the machine model was defined. It should have been better to define such a purpose. In
that case the model estimation can be concentrated on a particular operation point.
6.2. RECOMMENDATIONS
• The problem using the TFMmethod, in combination with the sinusoidal voltage
supply configuration of Fig. 5.3, is that the flux level could not be hold at a constant
value if the machine load changes. Therefore, it should be better to apply this
method in combination with a controlsystem (e.g. fieldoriented control).
• The outputerror identification is based on discrete models. In this report Tustin's
transformation is used to transform the estimated discrete parameters to continuous
time parameters. This method led to satisfying results. However, it is possible that
other transformations perform even better.
Chapter 6, Conclusions and recomendations 87
• In [Gort '94] the outputerror method is proposed to be used for online parameter
estimation. Therefore, recursive algorithms of the OEmethod are derived. This
recursive method can be implemented in a DSP system. In combination with a field
oriented controller the machine parameters can be adapted continuously. In that
case an online estimation of the stator resistance must also be applied.
• The data preprocessing necessary for the OEmethod is performed offline, where
integration is done in the frequency domain. The integrated signals will however
always be an approximation, An optimal way for data preprocessing is the use of
analogue integrators to reconstruct the stator flux. This can be done with the aid of
opamp circuits and special analogue divices for transformation of the threephase
voltages and currents to the desired twophase representation. This also reduces the
necessary calculation time in the DSPsystem.
• To validate the estimated machine models it should be better to test these models in
combination with a machine control unit.
Bibliography
BIBLIOGRAPHY
[Alg '70] Alger P.L.
"Induction machines, their behaviour and uses".
Second edition, Gordon end Breach science publishers, 1970.
[Bla '93] Blaschke, F.
"Voorldufiger bericht uber verbesserungen bei der feldorientierten
regelug von asynchronmaschinen"
Bad voslau, Osterreich, 1994.
Technische Universiteit Eindhoven.
[Bosch '93] Bosch, P.P.J. van den,
"Modelling and simulations PSI/C".
Delft University of Technology,
Second edition, September 1993
ISBN 9071898172
[Bosch '94] Bosch P.P.J. van den; A.C. van der Klauw.
Stochastische Systeem theorie
"Modelling, identification and simulation ofdynamical systems".
Collegedictaat (5N060)
Faculteit der Elektrotechniek, Technische Universiteit Eindhoven
Measurement and control group, 1994.
[Boze '86] Boze, B.K.
"Power electronics andACdrives".
PrinticeHall, Englewood Cliffs, New Jersey 07632, 1996
ISBN: 0136868827025
89
[Doncl '86] Doncker, R. de
"Synthesis and digital implementation ofadaptive fieldoriented
controllers for induction machines with air gapflux control and
deepbar compensation".
Katholieke Universiteit Leuven, Departement Elektrotechniek, Vermogen
en Industriele Toepassingen, Proefschrift, December 1986
UDC 621.314.5
[Done '84] Doncker, R. de; W. Geysen.
"The doublecage induction motor model for the simulation ofinverter
fed machines".
IMACS, Electrical Machines and Convertersmodelling and simulation,
1984.
90 Modelling and identification ofsingle and doublecage induction machines
[Donc2 '86] Doncker, R. de; A. Vandenput; W. Geysen.
''A digital oriented controller using the doublecage induction motor
model".
IEEE Trans. on Industry Applications, p.502 509, 1986.
[Done '92] Doncker, R. de,
"FieldOriented controller with rotor deep bar compensation circuits".
IEEE Trans. on Industry Applications, Vol. 28, No.5,
September/October 1992
[Gar '80] Garces, L.J.
"Parameter adaptionfor the speedcontrolled static ACdrive with
squirrel cage induction motor".
IEEE Trans. on Industry Applications, Vol.IA16, no.2, p.173178, 1980.
[Gort! '94] Gorter, R.J.A.; A. Veltman and P.P.J. van den Bosch.
"Skin effect impact on induction motor parameter identification
using an outputerror identification method".
Proceedings PESC '94, Taipei 1994
[Gort2 '94] Gorter, R.J.A.; A. Veltman and P.P.J. van den Bosch.
"Parameter estimationfor induction machines, using the outputerror
identification method".
Proc. EPE Symposium on electric drive Design and Applications,
Lausanne, 1994
[Gort '94] Gorter, R.J.A.
"A parameter estimator for induction machines".
Eindhoven: Instituut Vervolgopleidingen,
Eindhoven University of Technology, 1994
ISBN 905282357X geb.
[Jans '93] Jansen, P.W.G.
"realisatie van realtime simulaties op een modulair DSPsysteem"
Afstudeerverslag, Technische Universiteit Eindhoven.
Faculteit der Elektrotechniek, Vakgroep Elektromechanica en
vennogenselektronica, 1993.
[Lag '92] Lagonotte, P.; H.AI. Miah and J.e. Trigeassou.
"Modelling and nonlinear identification ofstatic parameters ofa
doublecage induction machine".
Proc. Int. Conf. on electrical machines 1992, Vol. 2, p.59296.
Bibliography 9J
[Leo '85] Leonhard, W.
"Control ofelectrical drives".
Springer Verlag; Berlin, Heidelberg, New York, Tokyo, 1985
[Lju '87] Ljung, L.
"System theory for the user
PrenticeHall, 1987
ISBN: 0138816409025
[Lju '91] Ljung, L.
"System Identification Toolbox user's guide for use with Matlab"
1991.
[Moo '93] Moon, S.1. and A. Keyhani
"Estimation ofinduction machine parameters from standstill time
domain data".
IEEElAS Annual meeting, October 38, 1993, Toronto, Canada,
p.336342.
[Mach '90] Schot, J.A.
"Elektrische machines ]"
College dictaat (5K050)
Technische Universiteit Eindhoven,
Faculteit der Elektrotechniek, Vakgroep Elektromechanica en
vermogenselektronica, 1990.
[Slem '] Siemon G.R.
"Electric Machines and Drives"
AddisonWesley publishing company
ISBN: 0201578859.
[Tex '93] Texas Instruments,
"TMS320c30, users guide"
Revision E, June 1991.
[Van '92] Vandenput, Prof. Dr.ir. A.
"Elektriche aandrijvingen".
Collegedictaat: Elektrische Aandrijftechniek (5PI20))
Technische Universiteit Eindhoven, Fac. E, Vakgroep EMV, Maart 1992.
[Velt '94] Veltman, A.
"The fish method: interaction between ACmachines and switchingpower
converters ".
Technical University Delft, PhDthesis 1994.
ISBN: 9090067639
92
[Werf'94]
Modelling and identification ofsingle and doublecage induction machines
Werf, Johan van der
Het toepassen van een spannings/stroommodel voor directe
koppelregeling van een asynchrone machine
Afstucleerverslag EMV 9413
Technische Universiteit Eindhoven, Faculteit cler Elektrotechniek,
Vakgroep Elektromechanica en vermogenselektronica, December 1994.
Appendix A
ApPENDIX A: THE BOND GRAPH METHOD
93
A bond graph is composed of components that exchang energy or power through
connections. These connections are called (power) bond. In contrast with block
diagrams these connections represent an exchange of power instead of a oneway
transport of information. Each connection (bond) transports power or energy and is
represented by a line. This power is the product of two variables, namely effort e and the
flow f. The effort and flow are generalisations of similar physical phenomena, see table
A.I.
table A.I
Electrical Mechanical Hydraulic
effort e voltage u force F pressure p
flowf current i velocity v flow cP
The same description and variables can be used in different physical systems. This is
useful if a physical system is for example an electromotor that drives a pump.
Components and variables of the different physical systems (electronic, electro
magnetic, mechanical and hydraulic) are used in one system description.
Besides effort and flow other variables can be used, namely the displacement q and the
momentump.
q= fldt p=fedt
These variables p and q preserve their value if a coordinate transformation is performed
and are therefore called preserved variables.
BONDS
Bonds can be defined more precisely by adding a direction and causality of the variables
effort and flow. A bond is represented by a line. The symbol for effort is put above or
right of the line. The symbol for the flow is placed below or left of the line as depicted
in figure A.I a.
a)
f e
e
Il)
e
f e .    ~
f
figure A.I: the bond
The direction of the positive power flow is indicated by a half arrow, as shown in figure
A.lb.
94
CAUSALITY
Modelling and identification ofsingle and doublecage induction machines
Causality is introduced artificially to calculate the model described by a bond graph.
Physical processes however do not have causality. They represent a parallel system with
mutually influencing elements. Consequently, causality means assigning cause and
effect or input and output to a physical phenomon as expressed by a mathematical
expression.
Causality can be expressed in a bond graph by assigning a crossstroke at one of the two
ends of a bond. If the effort e is the cause and the flowfthe effect (I =G . e), then the
crossstroke is placed at the side of the component. Otherwise, if the flowfis the cause
and the effort e is the effect (e = R· I), then the crossstroke is placed opposite to the
component side, as illustrated in figure A.2.
f
f = G'e
e = R·f
_e__" "  ~ I G
I
__e__",,'>. R
f
Figure A.2: causality ofRand G element
Remark: The causality stroke is introduced purely for determining the calculation
sequence. It has no relation to the half arrow of the bond, which indicates the positive
power flow.
BOND GRAPH ELEMENTS
A bond is a connection between two elements. The basic elements are given in table A.2
symbol Name Function Electric example
Source:
S JL esource e usource
e J
SJ
e
fsource f isource
7
Oneports:
e
R Resistor e= R·I Resistor
7
e
G Conductivity I=G·e Resistor
7
e
C Capacity
e= ~ J 1 dt
Capacitor
7
JL I Inertia
1 =7 Jedt
Coil
J
Multiports:
~ O 2
Ojunction e, =e
2
=e
3
Parallel
h h
h+J;+/;=O
~ l ~
Ijunction
h=12=/;
Serial
h
J;
e, +e
2
+e
3
=0
Appendix A
SOURCE CAUSALITY
95
Sources always prescribe causality. An effort source Se will impose an effort on the
system. Consequently the causal stroke has to be drawn at the end of the bond where the
effort points to. A flowsource SI imposes a flow on the system. Hence the cross stroke
must be located at the component side of SI' the flow leaves the source. This is
illustrated in figure A.3.
e
f
Figure A.3: Source causality
INTEGRAL CAUSALITY
A capacitor or an inertia can be described both by means of an integral equation and a
differential equation. However, in simulation software an integrator is supported while a
differentiator cannot be realised accurately. This means that the effort is always the
input of an inertia and a flow is always the input of a capacity.
f = ~ Jedt
e
"I
I
f
e= ~ J fdt
e
"
C
f
Figure A.4: Integral causality
CAUSALITY WITH JUNCTIONS
A Ojunction represents a parallel circuit with all efforts having the same value.
Consequently, only one effort can be an "input". The flows at the other bonds of this 0
junction have to be "inputs". There is always one causality stroke at a Ojunction.
A series circuit, where all flows having the same value, is represented by a Ijunction.
This means that only one flow can be an "input". The efforts in the other bonds at that
junction will become "inputs". Only one bond, of all bonds will have a cross stroke at a
Ijunction. In figure A.S. examples ofthis junction causality are shown.
"'10"'1
Figure A.5: Causality withjunctions.
96 Modelling and identification ofsingle and doublecage induction machines
CAUSALITY OF RESISTORS AND CONDUCTIVITY'S
In practice either a R or a G element can be selected, depending upon the causality
requirements. This is illustrated in figure A.6.
f G'e
__e__ G
f
e = R·f
e
R
f
Figure A. 6: Causality ofRand G elements.
AppendixB
ApPENDIX B: COORDINATE TRANSFORMATIONS
97
In this section the transformation form a symmertrical threephase system to a two
phase system is described. The transformation is derived under the condition that the
power in the threephase system equals the power in the equivalent twophase system
[Van '92, Chap. 11].
Current from 3 ~ 2 is transformed in the following way:
The transformation 3 ~ 2 + I for flux and voltage is defined by:
As a result of this transformation with equal power in both three and twophase
systems the parameters L
m
, La, R
k
and R
s
have to change. The parameters of the three
phase system are denoted with "(3)". In the twophase equivalent system the parameters
are denoted with "(2)". The stator voltage equation for the twophase can be written as:
Thus the threephase parameter values are transformed to the equivalent twophase
parameters by:
RA2) =1R
s
(3)
4(2)=14(3)
L
m
(2) =1L
m
(3)
'() 2 '
R
k
2 =3" R
k
(3)
Where the inductance L
m
(3) can be calculated from measured data, found by
performing a noload and load test according to Appendix C. This method results in the
3 threephase parameter values.
Appendix C
ApPENDIX C: MACHINE PARAMETERS
Cl: MACHINE CHARACTERISTICS AND PUREFERENCES
Heemaf EM 3008; SKAmachine nr. 552047; Type: NK 586
I1Y 220/380 V 41.5/24 A
11kW115pk cos cp = 0.83
rated speed 950 rpm
rated slip 5%
rated frequency 50Hz
number of pole pairs 3
Per Unit references
U
ref
= J2 .Us,ejJ
311 V
I
ref
= t J2.is,ejJ
51 A
0) ref = 2·n . Is,rated
lOOn rad/s
tref
3.18s
U
ref
R
ref
=
6.1 Q
I
ref
U
ref
L
ref
=
0.02H
I
ref
.0) ref
M  ( U ~ r l ~ f J
151,5Nm ref  p'
0) ref
U
ref
'P
ref
=
0.99 Vs
0) ref
U
ref
· I
ref
J
ref
=
3
5.12 . 10
4
kgm
2
0) ref
99
100 Modelling and identification ofsingle and doublecage induction machines
C2: CALCULATION OF SINGLECAGE MACHINE PARAMETERS
The singlecage machine parameters of the testmachine can be calculated, with data of
three measurements:
• a dcmeasurement of the stator resistance
• an acmeasurement during noload operation
• an acmeasurement during loadoperation.
In noload situation one can assume that the machine rotates almost at synchronous
speed (slip ~ 0). The equivalent perphase circuit for an induction machine is then given
in Fig. Cl.
Figure Cl: Noload equivalent perphase circuit
For most machines the stator resistance can be neglected, resulting in the following
equation:
IU%,noloadl
I I
= co s(L
m
+ La) = XL + XL
~ a m
Is. noload
where the stator voltage magnitude during noload, IUs,noloadl, and the stator current
magnitude during noload, lis,noloadl are known from a measurement in a noload
situation. Under load conditions the equivalent perphase circuit is given in Fig. C.2.
Figure C2: Equivalent perphase circuit under load condition
The input impedance is defined as:
IU:,loadI{( ).. ( )}
Zin,load = I's I cos <Ps,load +] ·sm <Ps,load
Is, load
(C2)
where the stator voltage magnitude, IUs,loadl, the stator current magnitude, lis,loadl and the
load angle <Ps between stator voltage vector and stator current vector are known from
Appendix C 101
measurements under load condition. The per phase stator input impedance of the
equivalent circuit in Fig. C2 can also be written as:
Z (R (rosL/II)2
Rr
) . (L rosLmR;) (C 3)
in,load  s + (ro
s
L/II)2 +R; +J' ffi s cr + (ro .. Lni +R; 
The singlecage parameters can then be derived using Eq. (C1, C2 and C3) in the
following way:
2 2 I s I
XLmRr us,load. ( )
XLa + 2 2 = I's ISin <Ps,load = B
XL + Rr ls load
/II •
X + X =IU:.noload I =C
La L/II I'S I
ls,noload
(C4)
(C5)
(C6)
(C7)
(C9)
(C8)
Because the constant values, A, B, C, are known from measurements, the singlecage
induction machine parameters can be derived, by solving the equation system, (C4),
(C5) and (C6):
L
m
(3) = XL/II =_1[(CB)+ A
2
J
ffi s ffi s (C B)
R ~ ( 3 ) =Sload . Rr =Sload[A + A
3
2 J
(CB)
L
cr
(3) = X
La
= _1[B  A
2
J
ffi
s
ffi
s
(CB)
The calculated parameters are parameters of the equivalent threephase circuit (this is
indicated with (3) in Eq.(C7, C8, C9). To transfer the parameters to a twophase
representation, all parameters must be multiplied with a factor t, see Appendix B.
L
m
(2) = t Lm(3)
Ra2) = tR ~ ( 3 )
L
cr
(2) = t4(3)
102 Modelling and identification ofsingle and doublecage induction machines
SINGLECAGE PARAMETER CALCULATION OF THE 11 KW SKAMACHINE
To calculated the singlecage parameters of the Heemaf 11 kW SKAmachine the
measured values of the following noload and load condition are used.
Noload test
us,efJ (per phase) 220V
is,efJ (per phase) 13.2 A
load angle <ps ~ 9 0 °
speed ill meeh
~ 1 0 0 0 rpm
Load test
Us,efJ (per phase) 220 V
is,efJ (per phase) 16.5 A
load angle <p s 57.6
0
speed ill meeh
986 rmp
The measurements result in the following singlecage machine parameters:
parameter value
[si] [pu]
L
m
29.6 mH 1.48
La
5.8 mH 0.29
,
0.1637 n 0.0268
R
k
R
s
0.238 n 0.0385
AppendixE
ApPENDIX D: MOMENTUMOF INERTIA
103
The total inertia of the 11 kW machine and load machine is detennined with the use of
an oscillation test. To do this, a mass attached to the axis of machine, see Fig. D.l.
Where Ris the length from the rotor axis to the mass m. JR is the total inertia of both
ACmachine and DCmachine. The inertia of the system with the pendulum mass is
then.
(Dl)
Figure D.l: estimation ofinertia
The torque equals the total system inertia J
tot
times the acceleration of the angle if>:
M =Jtot<p (D2)
The torque M also equals the force times the length to the machine axis:
(D3)
If the angle q> is small sinq> == q> this yields:
(D4)
(D5)
This resuilts in the system resonance frequency roo :
(D6)
104 Modelling and identification ofsingle and doublecage induction machines
results in the following expression for the momentum of inertia of both machines
(D2)
With the use of an angle sensor the period time of the system is measured. The results
are given in table D.1.
Table D.I: Measured inertia ofthe SKAmachine and
DCload machine.
rose
m f
JR
[sec] [kg] [m] [kgm
2
] [pu]
1.75 5.125 0.371 0.742 1449
AppendixE
ApPENDIX E: PSI/c SIMULATION PROGRAM'S
El: TFM ID.PSM:
\
\ TFM_ID.psm
%
105
%
%
SINGLECAGE MACHINE IDENTIFICATION
% TwoFluxModel (TFM) method [Blaschke]
% Performed on a doublecage machine model fed by
% a sinusoidal voltage supply
%
% reference values for pusystem (Chap. 3 Vandenput)
U ref
I ref
omega_ref
R ref
L ref
flux ref
m ref
J ref
PAR(311); %[V] sqrt(2)*[<Usq (eff»]n
PAR(88); %[A] 2/3*sqrt(2)*[<Isq (eff»]n
PAR(100*pi); %[rad/s]
PAR (U_ref/I_ref) ; %[0]
PAR(U_ref/(I_ref*omega_ref)); %[H]
PAR (U_ref/omega_ref) ; %[Vs]
PAR(U ref*I ref/omega ref); %[Nm]
PAR(u=ref*I=ref/(omeg;_ref)A3 );%[kgm
2
]
%
% Sinusoidal voltage supply and load condition
%
PAR(O.3*m_ref) ; % Mechanical load
u s des PAR(O.8*311);
alfaP s s des= PAR(100*pi);
% Voltage amplitude
% Supply voltage frequency
alfa s s des
u s sl
u s s2
INTMOD(alfaP_s_s_des PAR: .83144, pi);
u_s_des * cos(alfa_s_s_des); % Twophase stator voltage in
u_s_des * sin(alfa_s_s_des); % stator coordinates
%
% DUBBELCAGE INDUCTION MOTOR MODEL (Chap. 2)
%
% The used machine parameters are defined in [Done '86]
%
% Machine parameters according to the Jordan model
% Given in PU and translated to SIvalues
%
Lh
Lsig_s
L 12
Lsig_2
r s
R_k1
R k2
P
J mach
PAR (3 * L_ref);
PAR(O.12* L_ref);
PAR(O.06* L_ref);
PAR(O.5 * L_ref);
PAR(O.06* R_ref);
PAR(O.8 * R_ref);
PAR(O.04* R_ref);
PAR(l) ;
PAR (1449*J_ref) ;
% Number of pole pairs.
% Mechanical inertia.
106 Modelling and identification ofsingle and doublecage induction machines
%
% TRANSFORMATION of the MACHINE parameters to MODEL parameters
%
% transformation to equivalent model with 2 inductances
k
Lm
R k1 acc
Lsig
Lsig_2_acc
R k2 acc
PAR(Lh/(Lh+Lsig_12)) ;
PAR (k*k* (Lh+Lsig_12) );
PAR (k*k*R_kll ;
PAR(Lsig_s + Lh*Lsig_12/(Lh+Lsig_12));
PAR (k*k*Lsig_2) ;
PAR (k*k*R_k2) ;
%
% ROTOR PART in rotor coordinates
%
i k acc r1
  
i k acc r2
i k1 acc r1
  
i k1 acc r2
i k2 acc r1
  
i k2 acc r2
flux_k_acc_r1/Lmi_s_r1;
flux_k_acc_r2/Lmi_s_r2;
i_k_acc_r1  i_k2_acc_r1;
i k acc r2  i_k2_acc_r2;
flux_sig2_r1 / Lsig_2_acc;
flux_sig2_r2 / Lsig_2_acc;
; total cage current
current through outer cage
E_sig2_r1
E_sig2_r2
flux_sig2_r1
flux_sig2_r2
R_k1_acc*i_k1 acc_r1 + R_k2_acc*i_k2_acc_r1;
R_k1_acc*i_k1_acc_r2 + R_k2_acc*i_k2_acc_r2;
INT(E_sig2_r1 PAR: .184425);
INT(E_sig2_r2 PAR: 7.9778E2);
flux_k_acc_r1= INT(i_k1_acc_r1*Rk1 acc PAR: .470608);
flux K acc r2= INT(i_k1_acc_r2*Rk1_acc PAR: 0.529156);
%
% ROTATION OF FLUX AND CURRENT
%
flux_k_acc_S1= flux_k_acc_r1*cos(rho_s)  flux_k_acc_r2*sin(rho_s);
flux_k_acc_s2= flux_k_acc_r1*sin(rho_s) + flux_k_acc_r2*cos(rho_s);
i s r1
i s r2
i_s_S1*cos(rho_s) + i_s_s2*sin(rho_s);
i_s_s1*sin(rho_s) + i s s2*cos(rho_s);
%
% STATOR PART in stator coordinates
%
flux s sl
flux s s2
i s sl
i s s2
INT(U_S_S1i_s_S1*r_s PAR: .582941);
INT(u_s_s2i_s_s2*r_s PAR: 0.500511);
(flux_S_S1flux_k_acc_s1l/lsig;
(flux_s_s2flux_k_acc_s2)/lsig;
%
MECHANICAL PART
%
M el
rhoP s
rho_s
p*(i_s_S1 * flux_s_s2 + i_s_s2 * flux_s_s1);
p*INT(l/J_mach*(M_elM_last) PAR: 306.726);
INTMOD(rhoP_s PAR: 3.71331E2, pi);
AppendixE 107
%
% UIMODEL (fig 5.2)
%
Sl
S2
0;
1 ;
% damping constants
%
% Estimated machine parameters
%
r s est
r_k_acc_est
Lsig_est
Lm_est
0.06*R_ref;
0.0297*R_ref;
0.53*L_ref;
3.2*L_ref;
% ROTATION OF THE STATOR VOLTAGE AND CURRENT TO STATOR FLUX REFERENCE FRAME
u_sy1_obs
u_sy2_obs
i_sy1_obs
i_sy2_obs
u_S_S1*cos(phi_s_s_obsl + u_s_s2*sin(phi_s_s_obsl;
u_s_s1*sin(phi_s_s_obsl + u_s_s2*cos(phi_s_s_obsl;
i_s_S1*cos(phi_s_s_obsl + i_s_s2*sin(phi_s_s_obsl;
i_s_s1*sin(phi_s_s_obsl + i_s_s2*cos(phi_s_s_obsl;
% Sl AND S2 ARE USED IN THE STABILISING LOOP 
fluxP_sy1_obs
fluxP_sy2_obs
(u_sy1_obs i_sy1_obs*r_s_estl/(1Sll;
u_sy2_obs  i_sy2_obs*r_s_est  S2*fluxP_sy1_obs;
% flux_sy1_obs IS THE FLUX AMPLITUDE IN THE STATOR FLUX REFERENCE FRAME
flux sobs
phiP_s_s_obs
phi_s_s_obs
fluxP_sy2_obs / flux_s_obs;
INTMOD(phiP_s_s_obs PAR: 0.708966, pil;
% determine the MODEL FLUX flux_ky_obs
flux_ky1_obs= flux_s_obs  i_sy1_obs*Lsig_est;
flux_ky2_obs= i_sy2_obs*Lsi9_est;
% CARTHESISCH to POLAR transformation
flux k obs
phi_ky_obs
phi_k_s_obs
sqrt(flux_ky1_obs*flux_ky1_obs+flux_ky2_obs*flux_ky2_Obsl;
ATAN2(flux_ky2_obs,flux_ky1_obsl;
%
% I/phimodel (Optimized method)
%
i_s_b i_s_S1*cos(phi_k_s_obsl + i_s_s2*sin(phi_k_s_obsl;
i s w i_s_s1*sin(phi_k_s_obsl + i_s_s2*cos(phi_k_s_obsl;
flux k est INT(fluxP_k_est PAR: .611175l;
Lm_real Lm_estLsi9_est;
fluxP k est= (i_s_b  flux_k_est/(Lm_realll*R_k_acc_est;
% COMPARE THE TWO ESTIMATED FLUXES 
deltaflux = flux k est  flux_k_obs;
%
108
E2: OE DATA.PSM:
Modelling and identification ofsingle and doublecage induction machines
%
% OE_DATA.psm
%
% PWM INVERTER FED DOUBLECAGE INDUCTION MACHINE MODEL
%
% To apply the DEmethod a dataset of stator voltages, current and rotor
% position is created.
%
% Inverter properties: pulse number pn=3
% stator frequency fs= 40 Hz
% DCvoltage = 539 V
% Sine modulation (+ 12% third harmonic)
%
% reference values for pusystem (Chap. 3, Van '92)
U ref PAR (311) ; % [V] sqrt(2)*[<Usq(eff»]n
I ref PAR(88) ; % [A] 2/3*sqrt(2)*[<Isq(eff»]n

omega_ref PAR (100*pi) ; % [rad/s]
R ref PAR(U_ref/I_ref); % [0]
L_ref PAR(U_ref/(I_ref*omega_ref)) ; % [H]
flux ref PAR (U_ref/omega_ref) ; % [Vs]
M ref PAR (U_ref*I_ref/omega_ref) ; % [Nm]
J ref PAR(U_ref*I_ref/(omega_ref)A3 );% [kgm
A
2]
%
% CONTROL PARAMETERS
%
u_s_des PAR(1.73*U_ref); % amplitude statorvoltage
alfaP_s s des= PAR(O.8*omega_ref); % anglefrequency statorvoltage
M load PAR(O.5*M_ref) ; % loadtorque in PU * reference
%
% PWMINVERTER MODEL
%
% INVERTERMODEL PARAMETERS
u dc
Mi
pg
harm3
PAR(517) ;
PAR(O.8);
PAR (3 );
PAR(O.12);
% dclink voltage
% modulationindex
% pulsnumber
% amplitude of 3th harmonic in ref. signal
% TRIANGLE CARRIER WAVE GENERATION 
A tri
alfaP tri
alfa tri
u tri
u harm3
u_s_des/Mi; % amplitude triangle wave
(pg*alfaP_s_s_des) ;
INTMOD(alfaP_tri PAR:1.57153, pi);
A_tri*(abs(alfa_tri)*2/pi  1); % triangle carrier wave
harm3*u_s_des; % amplitude of third harmonic
%  3PHASE REFERENCE VOLTAGES WITH 3th HARMONIC COMPONENT 
alfa s s des
usa
u_s_b
usc
INTMOD(alfaP_s_s_des PAR: 2.61799, pi); % start value 0
u_s_des*cos(alfa_s_s_des) u_harm3*cos(3*alfa_s_s_des);
u_s_des*cos(alfa_s_s_des2*pi/3)u_harm3*cos(3*alfa_s_s_des);
u_s_des*cos(alfa_s_s_des+2*pi/3)u_harm3*cos(3*alfa_s_s_des);
AppendixE 109
%
u dc PAR(539); % DClink, mean value of the rectified voltage
Mi PAR (0.8) ; % Modulationindex
pg PAR (3) ; % Pulsnumber
harm3 PAR(0.12); % Amplitude for 3de harmonic in ref. signal
%
% SWITCH EVENTS AT INTERSECTION OF REFERENCE VOLTAGE AND TRIANGLE WAVE
% USING STATE EVENTS (PSImanual)
s a in
s a uit
s b in
s_b_uit
s c in
s c uit
timer
state
STE(u_triu_s_a PAR:le6,I);
STE(u_triu_s_a PAR:le6, 1);
STE(u_triu_s_b PAR:le6,I);
STE(u_triu_s_b PAR:le6, 1);
STE(u_triu_s_c PAR:le6,I);
STE(u_triu_s_c PAR:le6, 1);
TIM (1 PAR: 1) ;
s_a_inls_a_uitls_b_inls_b_uitls_c_inls_c_uitltimer;
SWITCH ACTIONS OF THE INVERTER 
usa 10
usb 10
usc 10
FFL(O, s

a uit, s a

in PAR: 0,0) ;
 
FFL(O, s b uit, s b in PAR: 1,0) ;

 
FFL(O, s

c

uit, s

c

in PAR: 0,0) ;
u s aN
u s bN
u s cN
u_s_a_l0*u_dc;
u_s_b_l0*u_dc;
U_S_c_l0*u_dc;
% voltage between positive side and the
% negative side (N) of the inverter
% output
% VOLTAGE BETWEEN ONE PHASE AND THE STAR NODE OF THE MACHINE 
1/3*<2*u_s_aN 
1/3* < u_s_aN +
1/3* ( u_s_aN 
u s bN
2*u s bN
u s bN
u_s_cN) ;
u_s_cN) ;
+ 2*u_s_cN);
%  VOLTAGE REFERENCE CORRECTION AND 3PHASE > 2PHASE TRANSFORMATION 
u s sl
u s s2
1/3*(2*u_s_aN  u_s_bN  u_s_cN);
1/3*(sqrt(3)*u_s_bN  sqrt(3)*u_s_cN);
%***************************************************************************
%
% DUBBELCAGE INDUCTION MOTOR MODEL (see Chap. 2)
%
% Machine parameters according to the Jordan model
% Given in PU and translated to SIvalues
%
Lh PAR (3 * L_ref);
Lsig_s PAR(O.12* L_ref);
L_12 PAR(O.06* L_ref);
Lsig_2 PAR(O.5 * L_ref);
R_s PAR(O.06* R_ref);
R_kl PAR(0.8 * R_ref);
R_k2 PAR(0.04* R_ref);
% mechanical inertia
110 Modelling and identification ofsingle and doublecage induction machines
%
% TRANSFORMATION the MACHINE parameters to MODEL parameters
%
% transformation to equivalent model with 2 inductances
k
Lm
Rk1 acc
Lsig
Lsig_2_acc
Rk2 acc
PAR{Lh/{Lh+L_12));
PAR {k*k* (Lh+L_12)) ;
PAR{k*k*R_k1);
PAR{Lsig_s + Lh*L_12/{Lh+L_12));
PAR{k*k*Lsig_2);
PAR{k*k*R_k2);
%
% ROTOR PART in rotor coordinates
%
i k acc r1
  
i k acc r2
  
i k1 acc r1
  
i k1 acc r2
i k2 acc r1
  
i k2 acc r2
E_sig2_r1
E_sig2_r2
flux_sig2_r1
flux_sig2_r2
i_s_r1+flux_k_acc_r1/Lm;
i s_r2+flux_k_acc_r2/Lm;
i_k_acc_r1i_k2_acc_r1;
i_k_acc_r2i_k2_acc_r2;
flux_sig2_r1 / Lsig_2_acc;
flux_sig2_r2 / Lsig_2_acc;
Rk1_acc*i_k1_acc_r1 + Rk2_acc*i_k2_acc_r1;
Rk1 acc*i k1 acc r2 + Rk2_acc*i_k2_acc_r2;
INT{E_sig2_r1 PAR: 9.485E2);
INT{E_sig2_r2 PAR: 0.188543);
flux_k_acc_r1= INT{i_k1_acc_r1*Rk1_acc PAR: 1.22539);
flux K acc r2= INT{i_k1_acc_r2*Rk1_acc PAR: .140882);
%
% ROTATION OF FLUX AND CURRENT
%
flux_k_acc_s1= flux_k_acc_r1*cos{rho_s)  flux_k_acc_r2*sin{rho_s);
flux_k_acc_s2= flux_k_acc_r1*sin{rho_s) + flux_k_acc_r2*cos{rho_s);
i s r1
i s r2
i_s_s1*cos{rho_s) + i_s_s2*sin{rho_s);
i_s_s1*sin{rho_s) + i_s_s2*cos{rho_s);
%
% STATOR PART in stator coordinates
%
flux s sl
flux_s_s2
i s sl
i s s2
INT{U_s_s1i_s_s1*r_s PAR: .671947);
INT{u_s_s2i_s_s2*r_s PAR: 1.23295);
{flux_S_S1flux_k_acc_s1)/lsig;
(flux_s_s2flux_k_acc_s2)/lsig;
%
% MECHANICAL PART
%
mel
rhoP s
rho s
i_s_s1 * flux_s_s2 + i_s_s2 * flux_s_s1;
INT{l/theta* (melmlast) PAR: 247.279);
INTMOD{rhoP_s PAR: 2.0011, pi);
Appendix E
%***************************************************************************
%  FILTERING OUTPUT VALUES FOR DATASET WITHOUT ALIASING III 
% Using fourth order Butterworth filter's 
III
wb
tau2
tau1
PAR (1500*2*pi);
par 1/(2*0.38*wb);
par 1/(2*0.92*wb);
% Filter cutoff frequency 1500 Hz
% Astrom and Wittenmark
% Adaptive control pag. 416.
%  FILTER i s s1 
filt3 inf (filt2is1 PAR: 1.3405E4,tau2,tau2);
filt2 int (wb*wb*filt1 par: 13.7941);
filt1 inf (i_s_s1filt2 par: 1.39877E4,tau1,tau1);
is1 int (wb*wb*filt3 par: 12.7686);
%  FILTER i s s2 
 
filt31 = inf (filt21is2 PAR: 2.64929E4,tau2,tau2);
filt21 = int (wb*wb*filtll par: 83.7418);
filt11 = inf (i_s_s2filt21 par: 2.70726E4,tau1,tau1);
is2 int (wb*wb*filt31 par: 81.7792);
%  FILTER u s s1 
filt32 = inf (filt22us1 PAR: 3.5402E9,tau2,tau2);
filt22 = int (wb*wb*filt12 par: 172.333);
filt12 = inf (u_s_s1filt22 par: 6.867E22,tau1,tau1);
us1 int (wb*wb*filt32 par: 172.333);
%  FILTER u s s2 
filt33 = inf (filt23us2 PAR: 2.7727E20,tau2,tau2);
filt23 = int (wb*wb*filt13 par: 298.49);
filt13 = inf (u_s_s2filt23 par: 0, tau1, taul) ;
us2 int (wb*wb*filt33 par: 298.49);
%
AppendixF
ApPENDIX F: DSPPROGRAM'S, TMS320c30 CODE
In this appendix the following DSPprogram's are given:
• TFM ident: twofluxmodel method identification
• OE data: program for storing a dataset used to apply the outputerror
method;
• Matlab.asm: In this file the macro's for creating a Matlabfile are defmed.
Fl: TFM IDENT
To apply the TFMmethod the following files are necessery:
• TFM_ID.asm: Main program of the implemented twofluxmodels
• BLOCKS.asm: Initialization and definition of variables and macros
used in TFM ID.asm
113
***************************************************************************
*
*
*
; *
*
*
*
TFM ID.ASM
TwoFluxModel method parameter identification [Bla '94]
for asynchronous machines
Online tuning of the singlecage machine parameters:
Lm, Lsig, Rk_acc and Rs
; * INPUT: 3phase stator voltages and currents and four parameter values
; * OUTPUT: flux difference between U/Imodel flux and I/phimodel flux
*
* TMS320C30 code
*
*
*
*
author: J. v.d. Werf
updates: S.M. Schilperoort
date 157'94
**************************************************************************
**************************************************************************
* Main code automaticaly called after initialisation
**************************************************************************
Application independent
initialisation : reset and interrupt vectors (application independent)
.include " .. /c30/pOScinit.asm"
macro definitions for global names{application independent)
.include " .. /c30/globdef.asm"
include mathlib for testing purposes (application independent)
.include " .. /c30/mathlib.asm"
inputoutput data migration through ADCs (application independent)
.include " .. /c30/p06.asm"
114 Modelling and identification ofsingle and doublecage induction machines
Application dependent
variables for program flow (application dependent)
sample, 402
samplepu, 3.141S927e2
_samplepu, 31.830989
auxiliary (global)
.data
definei
define
define
timer period, 402 == 100us
(timer period)*100pi
Ipu time == 1/(2pi*SO) sec
block, variable definitions and used macros
.include blocks.asm
interrupt services (application dependent)
.include " .. /c30/isr1.asm"
*************************************************************************
 beginning of code segment 
 all program code should be inserted after this point 
i 
.text
PROGRAM: LDP PROGRAM,DP
, set sample time  
LDI @TOPER,ARO
LDI @sample,RO
STI RO,*ARO
LDF @samplepu,RO
STF RO,@dt
LDF @_samplepu,RO
STF RO,@_dt
, loop from conv to conv
Ius: LDI EINT1, IE
XOR IF, IF
OR GIE,ST
IDLE
XOR IF,IF
;start of program code
;label PROGRAM defined at pOSboot.asm
;timer 0 period register
;desired period
;AD and DA conv start at +flanc
;@samplepu == integration step
;enable ext int 1 only (comes from ADC)
;reset int request occurence bits
;enable execution interrupt
;wait interrupt 1, then execute ISR1
; (almost) nothing happens inside ISR1
;at return IE() == OOH & GIEbit == 0
;reset int bits, always do that!
i 
 r/o instruction
Measured voltage and current 
point_to p06_b1
import @i_sa_mes,ch1,scimp_1$96
import @i_sb_mes,ch2,scimp_1$96
import @u_sa,ch3,scimp_2$14
import @u_sb,ch4,scimp_2$14
import @u_sc,chS,scimp_2$14
Machine parameters 
point_to p06_b2
import @inv_Lm_est,ch1,scimp_O$60
import @Lsig_est,ch2,scimp_1$OO
import @R_s_est,ch3,scimp_0$10
import @R_k_acc_est,ch4,scimp_1$OO
Scaling factors
scimp_@ are defined
in "p06.asm".
AppendixF
;**************************************************************************
i TwoFluxModel method for parameter identification
;
j 
i Transformation of voltage and current to a 2dimensional representation
(see BLOCKS 0asm)
j 
u_from_3_to_2
IUVW_to_s1s2 @i_sa_mes,@i_sb_mes,@i_s_s1,@i_s_s2
j 
; UImodel with feedback, (see Fig. 5.2).
115
minPI
Check for statorfluxo It
LDF @Sflux_s_obs,R7
BP posflux
NEGF R7
STF R7,@Sflux_s_obs
LDF @Sphi_s_s_obs,R6
CMPF @PI,R6
BP minPI
ADDF @PI,R6
STF R6,@Sphi_s_s_obs
B posflux
SUBF @PI,R6
STF R6,@Sphi_s_s_obs
posflux CMPF @THREE,R7
BN smalthr
LDF @THREE,R5
STF R5,@Sflux_s_obs
B vectrot
smalthr CMPF 0.01,R7
BGE vectrot
LDF 0.01,R7
STF R7,@Sflux_s_obs
has to be positive, > 0.01 and < 3.0 
make flux positive
plus or minus pi for statorflux angle
plus pi
minus pi
compare flux with 300
Smaller then Three
Flux is correct
compare flux with 0001
j 
; Rotation to stator fluxcoordinates
;
vectrot LDF @Sphi_s_s_obs,R7
sin R7
NEGF RO
STF RO,@sin_neg
cos R7
STF RO,@cos_neg
; output of sin function to RO
output of cos function to RO
vr @cos_neg,@sin_neg,@u_s_s1,@u_s_s2,u_sps1_obs,u_sps2_obs
; rotate stator voltage to flux coordinates
vr @cos_neg,@sin_neg,@i_s_S1,@i_s_s2,i_spS1_obs,i_sps2_obs
; rotate stator current to flux coordinates
;
; EMvoltages in U/Imodel
;
LDF @u_spS1_obs,R4
LDF @u_sps2_obs,RS
LDF @i_sps1_obs,R6
LDF @i_sps2_obs,R7
MPYF @R_s_est,R6
MPYF @R_s_est,R7
SUBF R6,R4
SUBF R7, R5
R6=R_s_est*i_sPS1_obs
R7=R_s_est*i_spS2_obs
R4=e_sps1_obs=u_spS1_obsR_s_est*i_sps1_obs
R5=e_sps2_obs=u_sps2_obsR_s_est*i_sps2_obs
116 Modelling and identification ofsingle and doublecage induction machines
j 
i Statorflux with feedback
j 
MPYF @Slp,R4 i R4 = fluxP_s_obs
LDF R4,R6 ; R6 for later use
integrate Sflux_s_obs,R4,ONE
j 
i Statorflux angle in statorcoordinates with feedback
j 
MPYF @S2,R6
ADDF R6,RS
div RS,@Sflux_s_obs output to RO
LDF RO,R4
integrate Sphi_s_s_obs,R4,ONE
j 
i Cageflux of rotorcage
;
flux_kysl=i_sysl*Lsig_est+flux_s
flux_kyS2=i_syS2*Lsig_est
LDF
LDF
MPYF
MPYF
SUBF
NEGF
NEGF
capo
LDF
ADDF
STF
@i_sySl_obs,R6
@i_sys2_obs,R7
@Lsig_est,R6
@Lsig_est,R7
@Sflux_s_obs,R6
R6
R7
R6,R7, flux_k_acc_obs , phi_kys_obs
@phi_kys_obs,RS
@Sphi_s_s_obs,RS
RS,@phi_k_s_obs
j 
i Estimation of the cageflux using the I/phimodel (Fig.3.1)
j 
; Rotation of the stator current to shortcircuit rotorfluxcoordinates
j 
LDF @phi_k_s_obs,R7
sin R7 i output of sin function to RO
NEGF RO
STF RO,@sin_neg
cos R7 i output of cos function to RO
STF RO,@cos_neg
VR @cos_neg,@sin_neg,@i_s_Sl,@i_s_s2,i_s_b_nr,i_s_w_nr
j 
i Integration and feedback loop = I/phimodel
j 
LDF @i_s_b_nr,R4
LDF @Sflux_k_acc_nr,Rl
MPYF @inv_Lm_est,Rl
SUBF Rl, R4
MPYF @R_k_acc_est,R4
integrate Sflux_k_acc_nr,R4,ONE
j 
j 
LDF
SUBF
STF
@flux_k_acc_obs,RO
@Sflux_k_acc_nr,RO
RO,@delta_flux_k flux difference
AppendixF
i 
; Deter.mine stator flux in stator coordinates for visualiation
i                            ~                                              
117
LDF
sin
STF
cos
STF
poca
@Sphi_s_s_obs,R7
R7 output of sin function to RO
RO,@sin""'pos
R7 output of cos function to RO
RO,@cos""'pos
@Sflux_s_obs,@cos""'pos,@sin""'pos,flux_s_sl,flux_s_s2
Write to analog outputs AIDboard p06
point_to p06_bl
export @flux_k_acc_obs,chl,scexp_4$OO
export @Sflux_k_acc_nr,ch2,scexp_4$OO
export @delta_flux_k,ch3,scexp_O$20
export ®U_S_Sl,ch4,scexp_4$OO
export ®U_s_s2,chS,scexp_4$OO
export @i_s_sl,ch6,scexp_4$OO
export @i_s_s2,ch7,scexp_4$OO
export @m_el_obs,ch8,scexp_l$OO
 the cycle is now finished ...
Scaling factors
scexp_@ are defined
in "p06. asm" .
update_states
BR lus
.end
;update states to new values
;jump back
;END OF CODE
118 Modelling and identification ofsingle and doublecage induction machines
**************************************************************************
* blocks.asm:
*
* Initialisation of variables and MACROS used in TFM ID.asm
*
*
; *
update : S.M. Schilperoort
date : 150794
**************************************************************************
 mathmacros and precompiled Croutines
. include mathlib.asm (already included at sinusmod.asm)
**************************************************************************
* declare all used variables
* reserve space and assign to initial value in data section
**************************************************************************
.data
;**************** simulation step *******************
define dt,
define _dt,
3.1415927e2
31.830989
== 100 us, defaut
don't forget to reassign dt
;*************** machine parameters *****************
, Initial values of the estimated machine parameters [PU]
define r s est, 0.39 stator resistance
define r k accacc

est, 0.03 rotor resitance
define 1sig_acc_est , 0.3 leakage inductance
define inv_lm_est, 0.38 1/1m_est
Input/Output vaiables
, measured signals 
define i sa_mes, 0.0

define i sb_mes, 0.0

define i sc_mes, 0.0

define u

sa, 0.0
define u sb, 0.0
define u sc, 0.0

define rho

s, 0.0
define sinrho, 0.0
define cosrho, 1.0
define rho_max, 0.0
define d m el_nr, 0.0
define delta

flux k, 0.0
define flux s sl, 0.0
define flux s s2, 0.0
define flux_kyS1, 0.0
define flux_kys2, 0.0
current in fase a
current in fase b
error in torque
flux difference between the
flux in stator in statorcoordinates
used for verification
j 
Internal variables
i 
; nonstates 
voltages and currents in
define
define
define
define
u_s_s1,
u_s_s2,
i_s_s1,
i_s_s2,
81/82 coordinates
0.0
0.0
0.0
0.0
Appendix F
Variables for the ur model
signals 
119
define
define
define
define
define
define
sin_neg,
cos_neg,
U_SyS1_obs,
u_syS2_obs,
i_syS1_obs,
i_sys2_obs,
0.0
1.0
0.0
0.0
0.0
0.0
feedback variables
define SIp,
define S2,
U/Imodel
1.0
1. a
fluxes 
define flux_k_acc_obs,
define phi_k_s_obs,
define phi_kys_obs,
define sinyos,
define cosyos,
define eps_kys,
define i_k_est,
define i_kyS1,
currents in flux coordinates
define i_s_b_nr,
define i_s_w_nr,
1.0
0.0
0.0
0.0
1.0
0.0
0.0
0.0
used in the I/phimodel 
0.0
o. a ;
i 
; statevariables 
; don't forget to assign good initial values to get a stable start
i scalar states
Astates
Anew states
.word states
.word new states
states define
define
Sflux_s_obs, 1. a
Sflux_k_acc_nr, 1.0
, anglestates (states are always between 2 PI and 2 PI) 
anglst
(new_statesstates) ,NUMBER_STATES
(new_statesanglst) ,NUMBER_SCALAR
define
define
new states
.asg
.asg
Salpha,
Sphi_s_s_obs,
0.0
0.0
;Used in update_states
;Used in update_states
reserve space for new calculated states
. space NUMBER_STATES
define space for previous value of stateinput (used in integrate macro)
bak define
define
define
define
Sflux_s_obs_Bak, 0.0
Sflux_k_acc_nr_Bak, 0.0
Salpha_Bak, 1. a
Sphi_s_s_obs_Bak, 0.0
120 Modelling and identification ofsingle and doublecage induction machines
**********************************************************************
**************************** MACROS **********************************
**********************************************************************
*
*
*
*
*
*
macro parameter name
R <name>
RD <name>
A <name>
conventions:
register type parameter : ROR7
register type parameter : ROR7
or direct type parameter : @....
pointer type parameter, adress of a variable
**********************************************************************
**********************************************************************
*
*
macro : update_states
*
*
*
*
calling syntax:
description:
update_states
Copy new calculated statevalues to current
state var. Keeps angle type state between
2PI and 2PI
*
*
*
*
*
inputs:
output:
uses:
cycles:
RO, ARO, ARI
18
*********************************************************************
update_states .macro
.asg O,x
LDI @Astates,ARl
LDI @Anew_states,ARO
LDF *ARO++,RO
. loop
.break (x==NUMBER STATESI)
LDF *ARO++,RO
STF RO,*ARl++
.eval x+l,x
.endloop
STF RO,*ARI
.endm
copy to states
copy from new states
load RO with first state
loop until all states are copied
store st and load next st in RO
store last state
**********************************************************************
*
*
macro IUVW to sls2
*
*
*
*
*
calling syntax:
description:
IUVW to sls2
transformation of 3 to 2 phase representation
In stator coordinates.
Using 2 measured stator currents
*
*
*
*
*
inputs:
outputs:
uses:
updates:
cycles:
I_sa,I_ab
I_s_sl,I_s_s2
RO,Rl
8
**********************************************************************
IUVW to sls2
LDF I

sa,RO
NEGF RO
MPYF O.5,RO ;RO 1/2 i sa
LDF I sb,Rl ;Rl i sb

NEGF Rl
ADDF RO,Rl ;Rl 1/2 i sa + i sb

AppendixF
MPYF
MPYF
STF
STF
.endm
@SQR3,R1
3.0,RO
RO, I_s_s1
R1, I_s_s2
;R1
;RO
i s s2
i s sl
sqr(3) {1/2
1 1/2 i_sa
i sa
121
**********************************************************************
*
*
macro : U from 3 to 2 (Use with BRAMAMATIC EM 1567)
*
*
*
calling syntax:
description:
u from 3 to 2
 
voltage transformation
*
*
*
*
*
inputs:
outputs:
uses:
updates:
cycles:
U_sa,U_sb,U_sc
U_S_S1, U s s2
R1,
**********************************************************************
LDF U_sa,R1
NEGF R1
STF R1,U_s_s1
LDF U_sb,R1
SUBF U_sc,R1
NEGF R1
MPYF @INVSQR3,R1
STF R1,U s s2
.endm
stator voltages
sign correction due to measurement
u s sl u sa
sign correction
u_s_s2 = 1/sqr3 usb  1/sqrt3 usc
**********************************************************************
*
*
macro : i from 3 to 2
*
*
calling syntax:
description:
i from 3 to 2
 
current transformation
*
*
; *
; *
*
; *
inputs:
outputs:
uses:
updates:
cycles:
I_sa, I_sb, I_sc
I_s_S1, I_s_s2
R1,
1/2* (I_sb+I_scl
I sa1/2*(I_sb+I_scl=I s sl
**********************************************************************
LDF @I_sb,R1
ADDF @I_sc,R1
MPYF @HALF,R1
NEGF R1
ADDF @I sa,R1
STF R1,@I_s_s1
LDF @I_sb,R1
SUBF @I_sc,R1
MPYF @HALFSQR3,R1
STF R1,@I_s_s2
.endm
**********************************************************************
J22
F2: OE DATA
Modelling and identification ofsingle and doublecage induction machines
The macros used in OE_DATA.asm are also defined in BLOCKS.asm given in
Appendix Fl.
**************************************************************************
**************************************************************************
. * ,
; *
; *
*
*
*
OE_DATA.asm:
storing:
Used for creating a dataset to apply to the
DEidentification
stator voltage and current in the two phase
stator coordinates
; * Using:
*
*
*
; *
* TI320C30 code
*
MATLAB.ASM (macro's MATINIT and NAARMAT) storing
data in the external memory of the C30 DSPsystem,
in the debugger this data can be put on disk.
With the Cprogram "STRIPPER" the data can be
transformed to matlab format.
*
*
author: S.M. Schilperoort
date : 0608' 94
*************************************************************************
*************************************************************************
* Main code automatically called after initialisation
*************************************************************************
*************************************************************************
Application independent
*************************************************************************
initialisation : reset and interrupt vectors (application independent)
.include ", ./c30/pOScinit.asm"
macro definitions for global names (application independent)
. incl ude " .. / c3 O/globdef . asm"
include mathlib for testing purposes (application independent)
mathematical library
.include n •• /c30/mathlib.asm"
include matlab to create a matlab file
.include matlabl.asm
inputoutput data migration through ADCs (application independent)
.include " .. /c30/p06.asm"
inputoutput data migration through fully digitised board
.include " .. /C30/p09.asm"
*************************************************************************
*
Application dependent
*************************************************************************
block definitions and macros describing the machine
.include blocks.asm
interrupt services (application dependent)
.include " .. /c30/isrl.asm"
Appendix F
auxiliary (global) variables for program flow (application dependent)
define sample time and pu translation 
123
.data
definei
define
define
sample, 402
samplepu, 3.l4lS927e2
_samplepu, 31.830989
timer period, 402 == 100us
(timer period)*lOOpi
lpu time == 1/(2pi*SO) sec
************************************************************************
Declare all used variables
reserve space and assign to initial value in data section
************************************************************************
Simulation step
define dt,
define _dt,
3.l4l5927e2
31. 830989
lpu == l/lOOpi sec
== 100 us, default
don't forget to reassign dt
measured phase voltages
define u_sa_mes, 0.0
define u_sb_mes, 0.0
define u_sc_mes, 0.0
measured
define
define
phase currents
i_sa_mes,
i_sb_mes,
0.0
0.0
semi four phase voltages
define u_s_sl, 0.0
define u_s_s2, 0.0
semi four phase currents
define i_s_Sl, 0.0
define i s_s2, 0.0
angles 
define rho s, 0.0
variables used for "na armat"
definei time, 0
definei counter, 0
definei previous, 0
define start, 0
counts the number of time steps
used for matlab storage
used for matlab storage
command to save data
filtered values
define
define
define
define
u_s_sl f,
u_s_s2_f,
i_s_sl_f,
i_s_s2_f,
o
o
o
o
**************************************************************************
* Beginning of code segment 
* The program code should be inserted after this point 
**************************************************************************
PROGRAM:LOP
. text
PROGRAM,OP
;start of program code
;label PROGRAM defined at p05boot.asm
i
LOI @TOPER,ARO
LOI @sample,RO
STI RO, *ARO
set sample time 
;timer 0 period register
;desired period
;AD and OA conv start at +flanc
124 Modelling and identification ofsingle and doublecage induction machines
initialisation of time and
used in naarmatlab
LDF
STF
LDF
STF
LDI
STI
@sampleyu,RO
RO,@dt
@_sampleyu,RO
RO,@_dt
0, RO
RO, @time
;@sampleyu integration step
;Initialisation matlab file 
sample frequency 10kHz , 12000 samples at 5kHz
total measuring time = 2.4 sec
;
matinit @dt,2,12000, """u_s_sl_f""", """u_s_s2_f""", """i_s_sl_f""" ,
1111l1i_s_s2 filII", "lIl1rho_slllln
j
XOR IF,IF
Ius: LDI
XOR
OR
IDLE
EINTl,IE
IF,IF
GIE,ST
Program loop from conv to conv 
;enable ext int 1 only (comes from ADC)
;reset int request occurence bits
;enable execution interrupt
;wait interrupt 1, then execute ISRI
; (almost) nothing happens inside ISRI
;at return IE() == OOH & GIEbit == 0
;reset int bits, always do that!
[A]
if value of switch is > 2V,
then start storing data
measured currents result in
measured voltages result in [V]
rotor position [rad]
point_to p09
get_rotyos @rho_s
;inport values 
point_to p06_bl
import @i_sa_mes,chl,scimp_l00$0
import @i_sb_mes,ch2,scimp_I00$0
import @u_sa_mes,ch3,scimp_666$0
import @u_sb_mes,ch4,scimp_666$0
import @u_sc_mes,ch5,scimp_666$0
import @start,chB,scimp_l0$0
;
3>2 transformation to a 2dimensional frame
result: u_s_Sl,u_s_s2,i_s_sl and i_s_s2
i 
u_from_3_to_2 @u_sa_mes,@u_sb_mes,@u_sc_mes,@u_s_sl,@u_s_s2
IUVW_to_sls2 @i sa_mes,@i sb_mes,@i_s_sl,@i_s_s2
j 
write data to matlab file, if write=O
the macro naarmat uses the actual time and the start command "counter" if
counter is 1 no storage, if counter is 0 , the desired number of mesure
ments is stored in section matlab. The number of samples is
initialised in macro "matinit"
j 
LDF
CMPF
BP
LDI
STI
@start,RO
@TWO,RO
startO
O,Rl
Rl,@counter
if input value start > 2V
then data aquisition is started
startO
naarmat @time,2,@counter,@previous,@u_s_sl_f,@u_s_s2_f,
@i s sl_f,i_s_s2_f,@rho_s
i\ppendixF
i 
Write variables to D/Aconverter
j 
point_to p06_b1
export @u_s_s1,ch1,scexp_666$0
export @u_s_s2,ch2,scexp_666$0
export @i_s_S1,ch3,scexp_100$0
export @i_s_s2,ch4,scexp_100$0
export @u_sa_mes,chS,scexp_666$0
export @rho_s,ch8,scexp_8$00
j 
; the cycle is now finished ... increment the timer
j 
125
LD1
ADDI
ST1
BR
@time, R1
I, R1
R1, @time
Ius jump back to start new
calculation
j 
. end ;END OF CODE
j 
**********************************************************************
*
*
*
*
P09.asm
inputoutput signal flow through P09boards
**********************************************************************
* by JDuarte
* updated by S.M. Schilperoort 25894
**********************************************************************
00804000H
00804400H
00804800H
*
;p09
;p09
p09
*
addressing the fully
.data
. word
. word
. word
digital 10 boards 
;warning: check possible conflict with
;switch sw40 (3 2 1) must be: 111
110
101
p06
* offsets (from basic
aXF0S .set 3
*
address) for the registers at each board 
16 bits, 360 degrees == 900 points;
reset to OH (+sense) or FFFFH (sense)
by input /OH after each revolution;
Pos dir : OOOOH > 0384H (= 900),
Neg dir : FFFFH > FC7BH
(in this case add +1 »> 2cmps 1)
*
* data handle and scaling 
*
; ax position (angular position with a 1000 points encoder)
mask 16 .set OFFFFH ;allows 16 LSBs
mask 12 .set OFFFH
mask msb .set 4000H ;allows only bit 14
126 Modelling and identification ofsingle and doublecage induction machines
negJlrefix
sc_axJlos
.word OFFFF8000H
.float 6.283185307e3
.float 1.570796327e3
;sets the 17 MSBs of a 32 bits reg
2pi/1000 points
2pi/4000 points
*
* macro definitions for general purpose use 
i 
; macro for reading rotor position with an encoder
i 
posdir?
fl?
.macro
LDI
AND
TSTB
BZ
OR
ADDI
B
AND
FLOAT
MPYF
STF
.endm
value
*+AR7(axJlos),R7
mask_12,R7
mask_ffisb,R7
posdir?
@negJlrefix,R7
1000,R7
fl?
07fffH, R7
R7
@sc_axJlos,R7
R7,value
;read value from channel
;test rotation sense
;extend to 32bits
store input value as float
i 
macro for reading rotor position with a 1000 points encoder
extended to use with a 12bits 4000 up/down counter.
Counter on digital board (EPLD) count up/down dependent on the rotation
direction. As a result of the used construction the counter counts
for.m 40 to 4040. (S.M. Schilperoort)
i 
get_rotJlos .macro
LDI
AND
FLOAT
SUBI
MPYF
STF
.endm
value
*+AR7(O),R7
mask_12,R7
R7
40,R7
@sc_rotyos,R7
R7,value
Read value from channel
use only 12 bits
"offset" correction
scale integer value, result 0  2pi
store input value as float
j 
AppendixF
F3: STORE DATA IN MATLABFILE
By S. Bosga, Technical University Eindhoven, Department EMV.
127
The macros defined in "MATLAB.asm" are used to store data in the C30 DSP system
and to make a MATLAB datafile. To do this two macros are used: matinit defines and
initialises memory space and naarmat stores the desired data in the DSP memory. The
stored data can then be written to disc, using the Debugger. Using the program Stripper
the file is changed to matlabformat.
Macro: matinit
call: malinit dT,step,length,P1, P8
The macro matinit creates a section "matsec" in the internal DSP memory. The first
variable stored is the sample time in [pu]. Variable step is the number timesteps
between two data samples. Length determines the number of samples per variable.
Pl .. P8 are the names of the desired variables to store. The variable names must be
placed between triple quotes. The macro matinit also defines the variable: matlen which
is the length of the matlabfile in words. Matinit uses the macro mateen to reserve and
initialize the memoryspace per variable. mateen also defines a table mattab (data
section). In this table the starting adresses of the memory space are placed.
Macro: naarmat
Call: naarmat time, step, counter,previous,P1, ....... P8
This macro is called each timestep. Step is the numer of time steps between two storage
of data. The data is stored if counter equals zero. Counter is incremented evert time data
is stored until the defined memory space is full. At that moment counter is set to 1.
Store on disc
This is done in the Debugger using the instruction "ms matsec, *matlen,jilename". The
debugger automaticly add's the extension ".obj". The resulting datafile is given in the
COFFformat. Exept the desired data a header is added to the file.
Conversion to Matlabformat: Stripper.exe
The program Stripper removes the header of the stored datafile. Using Stripper results
in a matlabfile (".mat") which can directly be used in MATLAB.
128 Modelling and identification ofsingle and doublecage induction machines
************************************************************************
* MATLAB.asm
*
. * ,
*
Macro's for creating a Matlab file with the TMS320C30
* Auteur: Sjoerd Bosga(changes for use with C30
* by Simon Schilperoort}
* Creation: 22 maart 1994
; * updates: 11 augustus 1994
************************************************************************
########################################################################
# Macro: matinit (initialisation of a Matlab file)
# In: Dt, Tussen, Lengte (variable ore number)
# PI tim P8 (names of variables)
# Reg's: Rl, ARI
# SGB, 22 maart 94
# n.b. Names of variables must be placed between
# triple quotes (bv. ,''''''u_s_Sl'''''', ... )
#
matinit .macro Dt,Tussen,Lengte,Pl,P2,P3,P4,PS,P6,P7,P8
.mlist
; 
matsec .sect "matlab"
.global matsec
; start of matlab file
. text
LDF
MPYF
TOIEEE
Dt, Rl
Tussen, Rl
Rl, Rl
Rl=Dt*Tussen=time between measurements
mat tab
mateen Illdeltat"
II
,I,Rl
.data
Matlabvariable del tat = Rl
; table is a table with the start adresses
; of the storage space
matend
mattab
matlen
opslen
. text
LDF
TOIEEE
mateen
mateen
mateen
mateen
mateen
mateen
mateen
mateen
.sect
. word
.global
.data
. word
. word
. word
.global
. global
.global
. text
.endm
0.0, Rl
Rl, Rl
Pl,Lengte,Rl
P2,Lengte,Rl
P3,Lengte,Rl
P4,Lengte,Rl
PS,Lengte,Rl
P6,Lengte,Rl
P7,Lengte,Rl
P8,Lengte,Rl
"matlab"
99999999h
matend
mat tab
matendmatsec
Lengte
amattab
matlen
opslen
Create storage space for PI tim P8
Rl = initial value storage space
Lengte=number of words in storagespace
Sign for end of matlab file
Adress of table with adresses
Length of matlab file
Space for 1 variable
; Continue assemble in .text
AppendixF
#######################################################################
# Macro: mateen (init. of one varable in a Matlab file)
# In: Naam (string between triple quotes)
# Len (variable ore number)
# Initwaarde (register, IEEE format)
# PI tim P8 (names of variables)
# Reg's: Rl, ARI
# SGB, 22 maart 94
# n.b. Only used by macro "matinit"
#
129
mateen . macro
.if
.asg
.asg
.if
.asg
.endif
.if
.asg
.endif
.if
.asg
.endif
Naam,Len,Initwaarde
($symlen(Naam) >0)
;Length of a variabele name plus 1
$symlen(Naam)+12,Naml ;null comming up) (2 for quotes)
111111111111, Spaties
(Naml=5)
0, Spaties
(Naml=9)
0, Spaties
(Naml=13)
0, Spaties
.sect
mdata?
"matlab"
. word
. word
. word
. word
. word
. string
. space
10
1
Len
o
Naml
Naam, Spaties
Len
Matlab file format: see Matlab User
Guide p. 3122
type (PC, columnwise, singleprecision, no
mrows (1 row)
ncols (Len column)
imagf (no imaginar part)
namlen (length of variable name)
name of variable and zero's
storage space
text)
; 
Initwaarde, *ARl++ ; initialisation of storage space
; Caution STI ipo STF for C30 use !!
. data
amdata? . word
. text
LDI
.if
LDI
RPTS
.endif
STI
.endif
.endm
mdata?
@amdata?, ARI
(Len>l)
(Lenl), RC
; start adress of space reserved for this var.
if more than one word: repeat
130 Modelling and identification ofsingle and doublecage induction machines
If (Teller>=max) than storage space
full and make Teller= 1
ARO . adress of mattab
IRO . Teller
If (Teller=O) start storage
Store ones per (Tussen) time steps
Store PIon adress:
*+(*+mattab(O)) (Teller)
ARI . adress of PI storage space
let op STI ipv STF voor C30!!
0, R1
naartO?
($symlen(PI) >0)
PI, RO
RO, RO
*ARO++, ARI
RO, *+ARI (IRO)
Detijd, RO
Eerder, RO
Tussen, RO
naaren?
1, RO
@opslen, R1
naarmv?
Detijd, RI
RI, Eerder
@amattab, ARO
Teller, IRO
($symlen (P2) >0) Store P2 on adress:
P2, RO *+ (*+mattab (I) ) (Teller)
RO, RO
*ARO++, ARI ARI := adress of P2 storage space
RO, *+ARI(IRO)
($symlen(P3) >0) Store P3 on adress:
P3, RO *+ (*+mattab (2)) (Teller)
RO, RO
*ARO++, ARI ARI := adress of P3 storage space
RO, *+ARI(IRO)
($symlen(P4) >0) Store P4 on adress:
P4, RO *+ (*+mattab (3)) (Teller)
RO, RO
*ARO++, ARI ARI := adress of P4 storage space
RO, *+ARI(IRO)
($symlen (PS) >0) Opslaan van PS op adres:
PS, RO *+(*+mattab(4)) (Teller)
RO, RO
*ARO++, ARI AR1 := adress of PS storage space
########################################################################
# Macro: naarmat (write to Matlab file)
# In: Detijd, Tussen, (variable ore number)
# Teller, Eerder, (variables)
# P1 tim PB (variables ore numbers)
# Reg's: RO, R1
# SGB, 24 maart 94
#
Detijd,Tussen,Teller,Eerder,P1,P2,P3,P4,PS,P6,P7,PB
Teller, R1 ; If (Teller=1) no storage
1, R1
naaren?
naarmat .macro
LDI
CMPI
BEQ
CMPI
BEQ
LDI
SUBI
CMPI
BLT
LDI
CMPI
BGE
naartO? LDI
moveI
LDI
LDI
.if
LDF
TOIEEE
LDI
STI
.endif
.if
LDF
TOIEEE
LDI
STI
.endif
.if
LDF
TOIEEE
LDI
STI
.endif
.if
LDF
TOIEEE
LDI
STI
.endif
.if
LDF
TOIEEE
LDI
Appendix F
BTl RO, *+ARl(lRO)
.endif
.if ($symlen(P6) >0) Store P6 on adress:
LDF P6, RO *+ (*+mattab (5) ) (Teller)
TOlEEE RO, RO
LDl *ARO++, ARI ARI := adress of P6 storage space
BTl RO, *+ARl(lRO)
.endif
.if ($symlen (P7) >0) Store P7 on adress:
LDF P7, RO *+ (*+mattab(6)) (Teller)
TOlEEE RO, RO
LDl *ARO++, ARI ARI := adress of P7 storage space
BTl RO, *+ARl(lRO)
.endif
.if ($symlen(PB) >0) Store PB on adress:
LDF PB, RO *+ (*+mattab (7)) (Teller)
TOlEEE RO, RO
LDl *ARO++, ARI ARI := adres of PB storage space
BTl RO, *+ARl(lRO)
.endif
LDl Teller, RO
ADDI 1, RO
naarmv? move I RO, Teller
naaren? .endm
########################################################################
initialisation table nessesery for the TOlEEE macro
(page 1145 user's guide)
131
ieeetab
aieeetab
.data
.word
.word
. word
.word
. word
.word
.global
OFFBOOOOOh
OFFOOOOOOh
07FOOOOOOh
OBOOOOOOOh
OBI000000h
ieeetab
aieeetab
; 
132 Modelling and identification ofsingle and doublecage induction machines
RD, AR1
RO
14 (worst case)
conversion between the 320c30 format and the IEEE
floating point numbers. The number to be converted
is in the upper 32 bits of RD. The result will be
in the lower 32 bits of RO
function:
uses:
result:
cycles:
########################################################################
# macro: TOIEEE (FAST Version page 1146, user's guide)
#
#
#
#
#
#
#
#
#
TOIEEE
NEG?
RES?
. macro
LDI
LDF
LDFZ
BND
ABSF
LSH
PUSHF
POP
ADDI
LSH
BR
POP
ADDI
LSH
ADDI
num_in,num_out
@aieeetab,AR1
num_in,RO
*+AR1(4),RO
NEG?
RO
1,RO
RO
RO
*+AR1(2),RO
l,RO
RES?
RD
*+AR1(2),RO
l,RO
*+AR1 (3), RO
AR1 points to table (page 1145 user's guide)
determine the sign of the number
If zero, load appropriate number
Branch to NEG if negative (delayed)
Take the absulute value of the number
Eliminate the sign bit in RO
place RO onto the stack (float)
Place number in lower 32 bits of RO (int)
Add exponent bias (127)
Add the positive sign
; Place number in lower 32 bits of RO (INT)
Add exponent bias (127)
Make space for the sign
Add the negative sign
LDI
.endm
place result in num_out
i 
AppendixG
ApPENDIX G: MATLAB MFILES
For the OEmethod in Matlab the following mfiles
• Pre'proc: reconstruction of stator current and stator flux in rotor coordinates.
• Par_est: estimation of the machine parameters using OEmethod.
• Specint: Integration in frequency domain.
G1: PRE PROC.M:
133
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% PRE PROC.m
%
%
%
%
%
%
%
This Mfile preprocesses the measured dataset.
Measured voltage and current in the twophase representation
Are used for the reconstruction of the stator flux. The recon
structed stator flux and stator current are transformed to
rotor coordinates using the measured rotor position rho_so
% The reconstructed Flux and current will then be applied for
% OEidentification method "PAR EST.m".
%
% INPUT: u s sl f,u s s2 f, i s sl f, i_s_s2_f and rho s
% OUTPUT: IsR (stator current in rotor coordinats)
% FsR (stator flux in rotor coordinats)
%
% S.M. Schilperoort 81994
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dT=1/S000;
USS=(u_s_s1_fj*u_s_s2_f) ;
ISS=(i_s_s1_f+j*i_s_s2_f) ;
Motpos=rho_s;
x=max(size(UsS)) ;
t=O : 1: x1;
t=t*dT;
% deltat= sample time;
% Define stator voltage and current
% as complex values (measured voltage has
% rotation direction opposit to current!!)
% Length of data set
% total time
%%%%%%%%%%%%%%%%%%%%% SIGNAL INFORMATION %%%%%%%%%%%%%%%%%%%%%%%%%
clc;
numsamp=len(UsS); % Number of samples
dT=t(2)t(1); % dT = sample time
fs=l/dT; % fs = sample frequency
fnyq=fs/2; % fnyq= Nyquist frequency
maxtime=max(t) ; % total record time
disp( ['Record time I ,num2str(maxtime) , , [s] 'J),
disp( ['Recorded samples ',int2str(numsamp),' [#] I]),
disp(['Record Sample frequentie = ',int2str(fs), I [Hz] ']),
disp ( [' ']);
disp( ['Machine information']);
p=input('Number of pool pairs =... ');
%%%%%%%%%%%%%%%%%%% OPERATION CONDITIONS %%%%%%%%%%%%%%%%%%%%%%%%
% Show rotor position 
134 Modelling and identification ojsingle and doublecage induction machines
newplot (211)
plot (t,Motpos) ;
title('Rotor position')
xlabel(ltime [s] I);
ylabel(lrho_s [deg] I);
% Show mechanical rotor speed
mp=exp(j*p*Motpos) ;
mp=anglecon(mp) ;
mv=diff([mp(l) ;mp])/(dT*2*pi);
mv(l)=O;
mv(2)=0;
fbut=700/fnyq;
[B,A]=butter(4,fbut) ;
mV=filter(B,A,mv) ;
mv=mv*60/p;
x=5000:1:len(t) ;
plot(t(x),mv(x)) ;
xlabel ( 1time [s] I) ;
ylabel(lomega_m [rpm] I);
shaftspeed=mean(mv) ;
pause
%
% Make continuous angle
% Differentiat rotor postition
% start values mech.velocity (mv)
%
% filter at 700 Hz
% 4th order butterworth filter
% filter motor velocity
% Speed in [rpm]
% plot mech. velocity
% Calculate mean mech.velocity
%% Remove part of dataset if it has no correct startvalue %%%%%
a=input('take data from ... sec I);
b=a/dT+1;
c=len (t) ;
UsS=UsS(b:c) ;
IsS=IsS(b:c) ;
Motpos=Motpos(b:c) ;
t=[O:l:len(UsS)l]*dT;
% Shorting the data set from t=a
% not using data upto t=a
% c = max time
% correction data length
% data from t=b to t=c
%
% new max time
%%%%%%%%%%%%%%%%%%%%%%%%% CALCULATE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Fundamental frequency component
% Number of stator periods in the data set
% Rotor speed
% Slip frequency
clc;
disp('determine fundamental frequency component of te stator voltage')
disp (I Filter UsS, lowpass at 100 [Hz] ... I); % filtering to determine
% fundamental frequency
mt=max (t) ;
F1=1/mt;
Flp=100;
Nlp=Flp/fnyq;
[B,A] =butter (4,Nlp) ;
UsSf=filter(B,A,UsS) ;
AV=anglecon(UsSf) ;
n=len (AV);
W=[0.5*n:n] ;
DAV=detrend(AV(W)) ;
sAV=AV(W)DAV;
dPdT=(sAV(2)sAV(1))/dT;
Ffund=dPdT/(2*pi) ;
Nper=floor(max(t)*abs(Ffund));
c=floor(Nper/(dT*abs(Ffund)));
% Total time
%
% 100 Hz cutoff frequency
% Normalized filter frequency
% 4th order lowpass filter
% filtering stator voltage
% continue angle of UsS
% new number of samples
% Take last n/2 samples
% Determine trend in AV.
% Detrend correction.
% determine sloop of the signal
%
% Number of full stator periods.
% rearange data, start data at t=O
AppendixG 135
if rem(c,2)==I,
c=cl;
%
end;
% clear variables 
clear t a fre mag q w Flp Nlp B A Av AV W DAV sAv dPdT UsSf
clear Set finput pha sAV testl Fl mt n numsamp filen
%
t=[O:I: (cl)]; % Dataset has Nper full periods in
t=t*dT; % stator frequency.
t=row(t) ; % Make rowvector
Motpos=Motpos(l:c); % Rotor position up to t=c
IsS=IsS(I:c); %
UsS=UsS (1: c) ; %
disp( ['Fundamental frequency = ',num2str(Ffund) , , [Hz] ']),
disp( ['Number of stator periods = ',num2str(Nper), 1 ']),
disp ( [' ']);
disp( ['Rotor speed = ',num2str(shaftspeed),' [rpm] ']),
disp ( [' Slip frequency = I, num2str (abs (Ffund) abs (shaftspeed*p/60) ) , ' [Hz] '] ) ,
disp ([' I]);
clear abc ;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Flux reconstruction
% R.J. Gorter maart 94
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
disp('Stator flux reconstruction .);
k=menu('Method ','Freq. domain', 'Detrend ');
Rs=input('two phase stator resistance [ohm]? ')
%%%%%%%%%%%%% INTEGRATION IN FREQUENCY DOMAIN %%%%%%%%%%%
if k==1
FsS=specint(t, (UsSRs*IsS) ,O.8*Ffund); % SPECINT= spectrum integration
%%%%%%%%%%%%% INTEGRATION IN TIME DOMAIN %%%%%%%%%%%%%%%%
% Using a 4th order Addams Moulton routine
%
%
%
%
%
% AdamsMoulton integration
%
% Determine the drift per period
% Define number new time steps
elseif k==2
bd= [1 1];
ad=dT/24*[9 19 5 1];
FsS=filter(ad,bd,UsSRs*IsS). ';
RPnts=[1/6:1/6:fix(Nper)];
IPnts=len(t)/Nper*RPnts;
n=len(t) ;
NPl=fix (Nper) ;
MPnts=zeros(NPl,6) ;
if NPI >1,
for k=[1:6],
W=[k:6:6*NPl] ;
MPnts(:,k)=FsS(IPnts(W))mean(FsS(IPnts(W))) ;
end; %
Drift=mean(MPnts')'; %
Tper=I/Ffund; %
VDrift=mean(diff(Drift))/Tper; %
elseif NPl==I, %
Drift=FsS(n/Nper+l) FsS(I); %
VDrift=Drift/Tper; %
136 Modelling and identification ofsingle and doublecage induction machines
end; %
FlxDrift=VDrift*row(t); % Drift correction per period
FsS=FsSFlxDrift*sign(Ffund); clear FlxDrift;
FsS=FsSmean(FsS(1:NP1/Nper*n)); %
clear RPnts IPnts MPnts Drift VDrift FlxDrift FlxS Tper n;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Filtering and remove DC component
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[bd ad] =c2dm( [1 0], [1 10] ,dT, 'tustin');
FsS=filter(bd,ad,FsS) ;
IsS=filter(bd,ad,IsS) ;
end;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Rotating stator signals to Rotor coordinats
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
IsR=exp(j*p*Motpos) .*IsS;
FsR=exp(j*p*Motpos) .*FsS. ';
% Plot reconstructed flux and current 
newplot (211);
plot(t,IsR) ;
title('Current and flux in rotor coordinates')
xlabel ( 'time [s]');
ylabel ( 'IsR [A] I ) ;
plot(t,FsR) ;
xlabel ( I time [s]');
ylabel ( 'FsR [Vs] I) ;
end;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Appendix G
G2: PAR EST.M
137
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% PAR EST.m
%
% OEmethod; Identification of the asynchronous machine parameters
%
% INPUT: IsR and FsR (stator current and flux in rotor coordinats)
%
% OUTPUT: dependent on chosen model order
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
x=1 : 1°:1 en (t) ;
clc;
newplot (211)
plot(t(x) ,real(IsR(x))) % show stator current in rotor coordinats
subplot (212) %
plot(t(x) ,real(FsR(x))) % show stator flux in rotor coordinats
Z=[row(real(FsR)) row (real (IsR))] ;
pause;
% PerFiltering the desired frequency region 
f nyq= . 51 (t (2)  t (1) ) ; % nyquist freq = 1/2*sample freq.
FMAX=input(['Prefilter (L) cutoff [Hz] < fnyq=',num2str(fnyq),' [Hz] ... : ']);
if FMAX<fnyq,
[Bf,Af]=butter(4,FMAX/fnyq) ;
[In,zpI]=filter(Bf,Af,flipud(Z(:,2))) ;
[Uit,zpU]=filter(Bf,Af,flipud(Z(:,I))) ;
[In]=filter(Bf,Af,Z(:.2) ,zpI);
[Uit]=filter(Bf,Af,Z(:,I) ,zpU);
Z= [Uit In];
clear Fmax In Uit zpI zpU Bf Af w fvss Mvss;
end;
clc;
%%%%%%%%%%%%%%%%%%%%%%%% OE model structure %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
TH=oe(Z, [Ordnb Ordna 0]);
%%%%%%%%%%%%%%%%%%%%%%%% Estimation results %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
present (TH) ;
pause;
%%%%%%%%%%%%%%%%%%%%%%%% SHOW OUTPUT ERROR %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Z=[FsR.' IsR.'];
FsRhat=predict(Z,TH) ;
% dataset vector
% estimated stator flux
newplot (211)
axis( [0,2.5, 1.5, 1.5]);
preerror=(Z(:,I)FsRhat) ;
plot (t (x) , [FsRhat (x) Z (x, 1)] ) ;
gridxy(0,3);
gridxy(O,O);
title('stator flux in rotor coordinat Rl
'
)
xlabel (' time [s]')
ylabel(' flux [Vs] ')
138 Modelling and identification ofsingle and doublecage induction machines
subplot (212)
axi s ( [0, 2 . 5,  . OS, . OS) )
plot(t(x) ,preerror(x));
title ('prediction error')
xlabel (' time [s)')
gridxy
pause
% SHOW BODEDIAGRAM OF ESTIMATED TRANSFER FUNCTION 
TH(l,2)=dT;
[a,Bd,c,d,Fd)=th2poly(TH) ;
% Denote sample time
% discrete polynomials
fre=logspace(S,pi,100) ;
fre=fre/pi*fnyq;
% Define freq. range
[mag_d,phase_d)=dbode(Bd,Fd,dT,fre*2*pi); % Discrete bode plot
%
% Chosen model order = 1 , calculate
% Lsig, Lm, and Rr for continious time
%
if Ordna==l
% inverse ztransform
% calculate singlecage machine
% parameters
%
Ztransform => see Section 3.2 ****
% B=Numi= [b1 bO)
% F=Deni=[f1 fO)
%***** INVERSE
fO=Deni(2) ;
bO=Numi (2) ;
b1=Numi (1) ;
disp('Lsig Lm Rk tr')
Lsig=b1
Lm=(bOb1*fO)/(l+fO)
Rk=log(fO)*Lm/T1
tk=log(fO)/T1
BO=(Lsig*Lm)/Rk;
B1=Lsig+Lm;
FO=Lm/Rk;
Bc= [BO B1);
Fc= [FO 1);
% calculate the continuous time
% parameters
% continuous time polynomial
% parameters
%
% Chosen model order=2: calculate the continuous
% time physical doublecage parameters
%
% Parameters of the estimated
% discrete transfer function
elseif Ordna==2
%******** TUSTIN TRANSFORMATION ****************
bO=Bd(l);
b1=Bd(2);
b2=Bd (3) ;
f1=Fd (2) ;
f2=Fd (3) ;
BO=«bOb1+b2)*dT
A
2)/4;
B1=(bOb2)*dT;
B2=(bO+b1+b2);
FO=«lf1+f2)*dT
A
2)/4;
F1=(lf2)*dT;
F2= (l+f1+f2) ;
Bc= [BO B1 B2);
Fc= [FO F1 F2);
% Parameters of the estimated
% discrete transfer function
Appendix G
%***** Calculation
Bc=Bc/Fc(3) ;
Fc=Fc/Fc (3) ;
w2",Bc(l) ;
wl=Bc(2) ;
wO=Bc (3) ;
v2=Fc(I);
vl=Fc(2) ;
of the pysical continous parameters ****
% Bc and Fc are the estimated
% polynomials in continous
% time. Bc=[b2 bl bO]
% Fc", [f2 f1 fO]
139
Lsig=w2/v2
Lm=(wOLsig)
t2=(wlLsig*vl)/Lm;
t1=v2/t2;
Rk1=Lm/tl
Rk2=Lm/(vltlt2)
Lsig2=Rk2*t2
end;
% machine parameters:
% total leakage inductance Lsig
% main inductance Lm
% cage resistance Rkl
% cage resistance Rk2
% cage leakage inductance Lsig2
[mag_d,phase_d]=dbode(Bd,Fd,dT,2*pi*fre); % Discrete bode plot
[mag_c,phase_c] =bode (Bc,Fc, fre*2*pi) ; % Continious bode plot
semilogx(fre,20*logI0(mag_c), 'W' ,fre,20*logI0(mag_d), 'g');
xlabel('frequency [Hz] ');
ylabel('Gain [dB]');
semilogx(fre,phase_c, 'w',fre,phase_d, 'g');
xlabel('frequency [Hz] ');
ylabel('Phase [deg] ');
pause
end;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
G3: SPECINT.M
%
function [y]=specint{t,y,fband)
%
% function [y]=specint(t,y,fband),
% Integration in freq domain;
% DC offset is removed, phase is correct;
%
% fband reduces all componetns between fband fband
% R.J.A. Gorter 14294
%
filenaam='specint';
n=max(size(t)) ;
if rem(n,2)",=I,
last=nl;
else,
last=n;
end;
if nargin==I,
I=t(I:last) ;
t=I/last* [O:lastl], ;
else,
t=row(t(I:last));
I=row( (y(I:last)));
j =sqrt ( 1) ;
140
end;
t=tt(l);
S=fft (I) ./last;
Modelling and identification ofsingle and doublecage induction machines
Magp=2*abs(S(2:last/2)) ;
Anglep=angle(S(2:last/2)) ;
Magn=2*abs(S(last/2+1:last));
Anglen=angle(S(last/2+1:last)) ;
% DC component removed.
% DC component removed.
%
% amplitude integration
% pos. freq.
%
dT=t(2)t(1) ;
dF=l/(dT*last) ;
freq=2 *pi *dF* [0: last/2 1] , ;
freqdc=freq(2:len(freq)); % DC component removed.
Magintp=Magp./freqdc;
Magintp=[ 0 Magintp']'; % DC component = 0;
Anglep=Angleppi/2;
Anglep=[ 0 Anglep']'; %DC component = 0;
freqinv=2*pi*dF*row( [(last/2) :1:1]);
Magintn=Magn./freqinv;
Anglen=Anglen+pi/2;
Ang=[Anglep' Anglen']';
Mag=[Magintp' Magintn'] ';
freq=[O freqdc' freqinv'];
if nargin==3,
fband=abs(fband) ;
Nskip=fix( (fband)/dF)l;
Mag(l:Nskip,l)=zeros(Nskip,l);
x=len (Mag) ;
xmin=xNskip+1;
Mag(xmin:x,l)=zeros(Nskip, 1) ;
end;
I=O.S*Mag.*(cos(Ang)+i*sin(Ang));
y=ifft (I) *last; % inverse fourier transformation
%
Summary
SUMMARY
This report aims at incorporating the influence of skineffect into models, which are suited for numerical simulation of electrical machine dynamics. With a secondorder description the skineffect is approached. This leads to a doublecage machine model. Equations for the rotor circuit in rotor coordinates are derived, resulting in a linear rotor transfer function. The stator circuit is described in stator coordinates. Both circuits are linked by transforming current and flux from stator to rotor coordinates and viceversa. Another subject of study is machine parameter estimation. Two identification methods are studied: the twofluxmodel (TFM) method and an OutputError (OE) method. The TFMmethod uses two independent set of equations. With the TFMmethod only singlecage model parameters can be estimated using special load and test conditions. The OEmethod is based on the minimisation of the quadratic error between real output and model output. The switching harmonics of an inverter supply are used as excitation source to estimate the machine parameters. It is found that with this method it is possible to estimate doublecage machine parameters. Both methods are applied to single and doublecage simulation models. For singlecage model estimation both methods lead to parameter values with deviation less than 1%. The OEmethod is able to estimate all doublecage parameters with the same accuracy. The singlecage machine parameters generated by the TFMmethod can also be used to approximate the dominant time constant of higher order machine models. Finally, the methods are tested on a doublecage 11 kW SKA machine. When the OEmethod is used, it appears that the estimated singlecage parameters are dependent of the prefilter choice. This indicates that the chosen model order does not fit the real system (i.e. undermodelling). Applying a doublecage model results in an estimation that is independent of the chosen prefilter. To validate the estimated machine parameters, the simulation models are fed with the measured stator voltages and rotor speed. The estimated stator currents are compared with the measured currents. Results show that the OEmethod describes the stator current more accurately than the TFMmethod does.
Samenvatting
iii
SAMENVATTING
In dit rapport wordt ingegaan op het modelleren van het skineffect in een dynamisch machinemodel. Voor de modellering van het skineffect is een tweede orde benadering toegepast. Dit resulteerd in een dubbelkooi machinemodel. Voor de modelvorming is het rotorcircuit beschreven in rotorcoordinaten waardoor een lineaire rotor overdrachtsfunctie ontstaat, waarin uitbreiding tot een hoger orde rotorcircuit relatief eenvoudig is. Het statorcircuit daarintegen wordt beschreven in statorcoordinaten. Beide circuits worden met elkaar gekoppeld door de flux en stroom te transformeren van rotor naar statorcoordinaten en omgekeerd. Een tweede studieonderwerp in dit rapport is machine identificatie. Twee identificatie methodes zijn nader bekeken: de TweeFluxModel (TFM) methode en een OutputError (OE) method. De TFMmethode gebruikt twee fluxmodellen met onafhankelijke machineparameters. Met de TFMmethode kunnen echter alleen enkelkooi machineparameters geschat worden. De OEmethode is gebaseerd op minimalisatie van de kwadratische fout tussen de geschatte procesuitgang en de werkelijke procesuitgang. Voor machine identificatie worden de harmonische componenten van de invertervoeding gebruikt als excitatiebron. Beide methoden zijn toegepast op een dynamische enkel en dubbelkooi machinemodel. Toegepast op een enkelkooimodel resulteren beide methoden in een schatting van de enkelkooiparameters waarbij de afwijking kleiner is dan 1 %. Toegepast op een dubbelkooi simulatiemodel resulteert de OEmethode in een schatting van alle dubbelkooiparameters met dezelfde nauwkeurigheid. De TFMmethode kan gebruikt worden om hogere orde machine modellen te benaderen met een enkelkooi model. Ais laatste zijn de methoden getest op een llkW SKA dubbelkooi machine. De resultaten zijn beoordeeld aan de hand van het vergelijken van gemeten en gesimuleerde stromen, waarbij de gemeten spanningen en rotorsnelheid aangeboden worden aan de geschatte simulatiemodellen. Hieruit voIgt dat het geschatte dubbelkooi machinemodel bij gebruik van de OEmethode resulteerd in een betere benadering van de statorstroom dan het geschatte enkelkooi model bij gebruik van de TFMmethode.
Modulation index. Triangular carrier wave. Relative leakage factor. Main inductance. Per phase rotor resistance of a 3 phase machine. Leakage inductance of the stator. Stator current component in the quadrature axis of the fluxreference. reference voltage. k} Momentum of inertia. Per phase cageresistance. Leakage inductance of the inner cage. Stator current component in the direct axis of the fluxreference. Leakage inductance of the rotor. Number of stator/rotor phases j ={s. Transformation ratio. Number of pole pairs. Mutual inductance between inner and outer cage Mutual inductance between stator and rotorcage. Inverter parameters Udc U rec uref uqN uqo utri mi np 0) tri DCvoltage on the input of the converter. Load torque. k} Number of stator/rotor windings j = {s. Resistance of outer and inner cage. Electric torque. Voltage between phase q and the starnode of the machine. Voltage between phase q and negative inverter terminal. Stator resistance. Pulse number.Rk2 k p mj Nj J Mel M load slip Main air gap inductance. Rectified threephase voltage. Leakage inductance.list ofsymbols v LIST OF SYMBOLS Machine parameters Lh Lm Las Lak La La2 cr ~2 Lsk ' L ks RkO Rk Rs Rkl . Trianglecarrier wave frequency . Slip [%].
Number of data points. Number of samples within one fundamental period. Flux. Real process. Desired signal to noise ratio. Process model. bnh fi. Regression vector. Noise model.and doublecage induction machines Greek variables <pS <p •s Angle with respect to the stator axis. Sample frequency [Hz]. Parameters of ( i)\f'k u v y E D Ts is fnyq ro nyq Go(ro) q G(q) H(q) L(q) B(q) F(q) q. Number of periods in the data set. Output error. Parameter set. . Angular Nyquist frequency [rad/s]. System input. . Offset voltage. fn/ F( q). Estimated cage flux of the I I q> model.~. 8 <l> N No Np m l:i. Angular frequency with respect to the stator axis. Identification parameters (u)o/. Number of samples in N p periods Distance between two observable frequencies [Hz].and stator coordinates Mechanical angular frequency. OE numerator polynomial. Nyquist frequency [Hz]. OE denominator polynomial.vi Modelling and identification ofsingle.f2.f Nnoise U ojfset Parameter vector. Shift operator. Stator voltage angle with respect to the stator axis Stator voltage angular frequency Angle between rotor. Lowpass prefilter. A Estimated cage flux of the VII model. Coloured output noise. Sample time [s]. Parameters of B( q). Predicted output.
Stepsize (NewtonRaphson method). Imaginary part of the complex representation. Fluxvector represented as complex number A = {S. Magnetising current vector in arbitrary coordinates. Representation of X in rotor coordinats. equals rotor coordinate r2. First and second derivative of the lossfunction with respect to Gradient of the prediction error. Lossfunction to be minimised. s} 7r Ikl r ik2 s 7a Is Us a E {r. Superscripts: X is an arbitrary variable X X X X X S Representation of X in stator coordinates. Derivative of variable X r a R1 R2 X . s} Ik a E {r.r \}Jk2 a E{r. R} . Cage current vector in arbitrary coordinates. a E {r. Stator voltage in stator coordinates Cageflux vector in arbitrary coordinates. Representation of X in an arbitrary axis. Voltagevector represented as complex number A = is. Cageflux vector in rotor coordinates Outer cageflux vector in rotor coordinates Inner cageflux vector in rotor coordinates Airgap flux vector in arbitrary coordinates. Outer cage current vector in rotor coordinates Inner cage current vector in rotor coordinates Stator current vector in arbitrary coordinates. Rotor impedance.list ofsymbols vii Preprocessed data set of N complex data points. R}. e. Real part of the complex representation. R}. equals rotor coordinate rl.s} 'iJ~ 'iJs s Complex variables: Currentvector represented as complex number with stator/rotor as reference A = is.1 . Space vectors :# Ik :a III :a Transformed equivalent rotor current. s} 'iJ% 'iJr k 'iJ. s} Stator flux vector in stator coordinates a E {r.
Related to the mechanical section. . Referring to the rotor. Maximum value. Subscripts: X is an arbitrary variable Xs Xr Xo Xcr Xm X k. Refering to the cage. Transformed parameter or variable. Output Error.kl. Related to the fundamental component. Special cage asynchronuous machine Singlecage simulation model. TwoFIuxModel. Schift operator.and doublecage induction machines A X X' Xl. Frequency spectrum of X Abreviations AC AID DC DSP IRTF OE PE PWM SKA SCaSM DCaSM TFM Alternating current. Doublecage simulation model. Direct current. Inverse polynomial. Estimated variable or parameter. Ideal Rotating TransFormer. A leakage component. Digital Signal Processor. Operators Laplace operator.viii Modelling and identification ofsingle. Presistently Exciting. Pulse Width Modulation.k2 X max Referring to the stator. Analoque to Digital conversion.
Estimation of the rotor resistance 3.2. Converter modelling 2.1. Output error method 4. Estimation ofreal machine paraIIleters 5.3.2. Twofluxmodel method 3.6. Identification of the machine paraIIleters 3. Output error method 5.4. Comparing double.3. DynaIIlic modelling using the ideal rotating transfonner 2.1.1. motor fed with a PWMinverter 2.2. The asynchronous machine 2.1.2.1.2.2.2. Singlecage estimation 4. Data Acquisition i iii v 1 3 3 3 4 6 6 10 14 15 19 22 26 26 27 27 29 29 31 33 33 35 35 37 39 41 44 48 51 51 52 52 53 57 57 60 65 65 66 71 71 .2.1. Output error method 3.1.6.6.1. Lockedrotor induction machine modelling 2.2. Deepbar cage 2.4. Model set structure 3. Machine models 4.2.2. motor fed with a PWMinverter 3. Offline data preprocessing 3. DynaIIlic response. Introduction 2. Optimisation of the method 3.2. DynaIIlic model 2.2.1.3.1. Skin effect 4.3.1.5. Offline identification algorithm 4.3.2. Singlecage 2. No load situation. Doublecage estimation 5.1.3. Identification Procedure 3.1.5.3. Singlecage estimation 4.2.4. Asynchronous machine modelling 2.6.1. Machine paraIIleter identification 3.2. Introduction 2.2. Measurements 5. Simulation results 4.and singlecage effects 2. Twofluxmodel method 4. Steadystate speed/torque curves 2.1. Identification strategy 3. Squirrel cage 2. Twofluxmodel method 5. Doublecage / Deepbar induction machine 2.Table ofcontents ix Contents Summary SaIIlenvatting List of symbols 1.6.2. Estimation of the process output 3.3.1.3.1.4.2.4.3.
x Modelling and identification ofsingle.1.2.3.psm: E2: OE_data. Singlecage estimation 5. Steadystate curves 5.3.m 74 76 79 79 81 85 85 86 89 93 97 99 99 100 103 105 105 108 113 113 122 127 133 133 137 139 . Validation based on measured data 6. Doublecage estimation 5. Verification of the estimation results 5.2.4.2. Recommendations Bibliography Appendix A: The bond graph method Appendix B: Coordinate transformations Appendix C: Machine parameters C 1: Machine characteristics and pu references C2: Calculation of singlecage machine parameters Appendix D: Momentum of inertia Appendix E: PSIIc Simulation program's El: TFM_id. TMS320c30 code F 1: TFM ident F2: OE data F3: Store data in MatlabFile Appendix G: Matlab Mfiles Gl: Pre'proc.4.m G3: Specint.1. Conclusions 6.and doublecage induction machines 5.psm: Appendix F: DSPProgram's. Conclusions and recommendations 6.4.m: G2: par_est.3.
. The goal in this report is to derive a model of an induction machine with significant skineffect. introduction i 1. Due to the developments of modem control techniques. For modelling it is therefore important to select only those characteristics which are necessary and sufficient for the desired purpose.Chapter i. the methods are tested on the single. The identification methods are applied to a real machine. This means we want to describe some aspects of the real machine in an abstract way. For dynamic modelling most of these machine models are described using one coordinate system (such as fluxcoordinates or statorcoordinates). This approach always needs the standard machine equations to be transformed [Van '92]. This so called outputerror method is based on estimation of a linear inoutput model and is therefore not directly applicable on the measured stator voltage and current. INTRODUCTION For many purposes. In case of singlecage modelling this is not a real problem. In Chapter 2 a steadystate machine model will be derived. among them analysis and control design. One method is based on the statespace description of the singlecage induction machine. The results are discussed in Chapter 4. However. it will only be useful if the parameters of this model can be found. because they have no linear relation. According to the measured steadystate speed/torque curve this machine has a significant skineffect. a lot of these models are based on singlecage machine properties. In Chapter 3 two identification methods are studied. The steadystate and dynamic behaviour of the estimated machine models is validated based on measured machine data. By transforming the measured stator signals to rotor coordinates this nonlinearity is cancelled out.and doublecage simulation models derived in Chapter 2. which results in an accurate description of a real induction machine. these control methods require an accurate machine model and therefore an estimation of the machine parameter is necessary. once a machine model has been derived. using a second order skineffect approach. which equals a well known doublecage rotor model. which is discussed in Chapter 5. This steadystate model is expanded to a dynamic doublecage model using the mechanical machine equations. The parameters are tuned by minimising the error between two independent flux models. The second method is based on the minimisation of the error between real and estimated machine output. induction machines have now become a good alternative to DCmachines for variable speed applications. In previous work many different machine models are developed. However. Induction machines are widely used in all sorts of electromechanical drive systems because of their simple and robust structure. people want to be able to describe electric machines in an understandable way. by means of a quadratic minimisation function. but for higher order rotorcircuits like a doublecage this becomes very complicated and the equations become disorderly. To be able to validate the estimation results of the two methods. The used machine is a Heemaf llkW SKAmachine. using power electronics and microprocessors.
The following assumptions are made: the machine is a 3phase asynchronous machine with one polepair. The stationary part of the machine has three identical stator windings mechanically placed at an angle of 120 0 • These stator windings are considered to be sinusoidal distributed along the stator circumference. However the use of fieldoriented control for ACmachines gives us a tool to create a highly dynamic drive system. Asynchronous machine modelling 3 2. while a DC machine can be described as a 2 order system.Chapter 2. Then a lockedrotor circuit of a doublecage machine is studied. Another approach for deriving a dynamic machine model is given by [Velt '94] using an ideal rotating transformer. no saturation. Between the rotor and stator is a small air gap which is assumed to be narrow and uniform. Squirrelcage rotors however are made up of two end rings and a number of rotor bars. The symmetrical squirrel cage can therefore be seen as a small number of lumped windings assuming that the rotor material is linear and isotropic. Accurate machine models can also be very useful to study: • effects of the nonsinusoidal inverter supply on machine losses. both cages of the discussed doublecage have the same number of rotor bars.1. The lockedrotor circuits are then expanded to dynamic models using spacevector notation and the mechanical equations. These advantages also have a counterside however: asynchronous motors are difficult to control. ASYNCHRONOUS MACHINE MODELLING 2. In particular asynchronous motor drives have the advantage of being robust and not having hindrance of commutators or brushes. THE ASYNCHRONOUS MACHINE All rotating electrical machines can be divided in a stationary part. there is no influence of iron losses such as eddy current and hysteresis. INTRODUCTION In recent years AC drives have become a good alternative to DC machines for variable speed applications. Induction motors described as a dynamic system are at th nd least 6 order systems [Velt '94]. 2. In this chapter a transient simulation model for a doublecage/deepbar machine is derived. and a rotating part. • new controllers. This is mainly due to the developments in power electronics. In the ideal case a fieldoriented controlled induction motor becomes an easy to control DClike machine. This cage acts as a set of shortcircuited windings. the stator. To create a good fieldoriented control an accurate machine model is required. • effects of a particular mechanical load on the machine. the rotor. These factors lead to a more reliable system. with less maintenance. First a lockedrotor equivalent circuit for a singlecage induction machine is derived. the rotor "windings" may be . If magnetic saturation is neglected. In case of a woundrotor the rotor construction is similar to that of the stator.1.1.
. shortcircuited.1: schematic layout ofa 3phase asynchronous machine.2. no voltage is induced and consequently no torque is generated. A 3phase system will produce a rotating field composed of the three phase components with an angle of 1200 to each other. In normal operation the rotor rotates slower than the applied stator field. 2.4 Modelling and identification ofsingle. is defined as slip: (21) .and doublecage induction machines represented as three identical. therefore.1. The relative difference between the stator field rotation speed <j>s =2nfo and the mechanical rotor speed . 2.2.s <+> pS. This voltage will generate a current flow through the rotor windings (bars). The resulting vector component can be described in a twodimensional plane without loss of information by means of rotation. . torque will be generated. SQUIRREL CAGE To simplify the modelling. which causes an induced voltage in the shorted windings. The magnetic field produced by the stator penetrates the rotor winding and. a symmetrical 3phase machine can be described by an equivalent model with just two orthogonal windings. If the rotor speed equals the rotation speed of the stator field (synchronous speed). lumped windings.1. 2.s . like the stator windings. see Fig. positioned at an angle of 120 mechanical degrees.3 %.. see Fig.s slip=<+> p For medium power induction machines the slip at rated torque is about 1. Figure 2.
Chapter 2. Lsk the mutual inductance between rotor and stator circuit. Asynchronous machine modelling 5 82 /'\ / / \ \ \ \ \ \ \ \ ¥. Lk the inductance of the rotor and Lks . By defining an equivalent rotor current :# zk =zk : Lks Lsk  (24) and substituting this equivalent rotor current in Eq. the squirrelcage machine with unequal mutual inductance's must be transformed to a wound rotor induction machine with equal mutual inductance's without losing any machine dynamics. Therefore the nonphysical rotor circuit has the same construction as the stator winding. between stator. (22 and 23) yields: \{Is = Lsis + Lskik # (25) (26) with: LX = Lsk Lk Lks (27) This new rotor current is associated with a nonphysical equivalent circuit with equal mutual inductances. in case of a singlecage rotor. T/ .s>  81 I I I Figure 2. The transformation is discussed in Appendix B.and rotor side can be written in space vector notation: (22) (23) with Ls the inductance of the stator. To use this socalled semi 4phase model for a squirrel cage machine. In general the flux linkage. This results in the equivalent lockedrotor transformer circuit as depicted in Fig..2: vector diagram ofa three phase system ish Is Throughout this work the twocoordinate system will be used with the stator coordinates sl an s2 and the rotor coordinates r1 and r2. it has to be treated like a wound rotor machine. 2.e~ .3.
Nj • N j ) i.2.4. as depicted in Fig. . LOCKEDROTOR INDUCTION MACHINE MODELLING SINGLECAGE IS The starting point for this modelling concept induction machine with lockedrotor: the spacevector description of an (29) (210) (211) tp: = Lh(~s + it) + Lcrs ~s tpI = Lcrk Tf + Lh (T. 2. Figure 2.3: equivalent lockedrotor transformer circuit. The mutual air gap flux 'Ph = LJJl' linked to both stator and rotor windings.6 Modelling and identification ofsingle.1.and doublecage induction machines . k} (28) With N s k is the number of stator/rotor windings and ms k the number of phases. Both rotor and stator can be described by a three phase wound system. ..j={s. + Tf) (212) In this case the rotor impedance and current are transformed to the stator side and the mutual inductance is represented by one main airgap inductance L h . is produced by this magnetising current . mk will equal 3 and the rotor cage has changed to an equivalent three phase rotor.. The current flowing trough L h is called the magnetising current TJl . Thus with ms =3. A is the mag~etic permeability of the flux path through the ~achine. 2.2. The mutual inductance between rotor and stator is defined as [Mach '90]: Lij = ~j (A. which enables us to use the equivalent semi 4phase circuit.2.
. If no causality can be assigned to a Bondgraph. [=:::J Z2 ~L..__ ~K:I r'l Pod 1 0. .l l.Rk':o. links between connections being called bonds (Appendix A). Lh . according to [Bosch '94].. This can be seen with the aid of the Bondgraph method.4.3._ ¢ 1.rllulltoTJlI"T Figure 2."f. The stator resistance Rs and the rotor resistance Rk are the transformed values in the twophase plane (Appendix B). Il ~1 zA Port 2 hh'.6: equivalent circuits with identical impedance's and transfer function .4 is analogue to a single phase transformer with a secondary resistive load. 2. To describe the machine with 3 inductors. as depicted in Fig.Chapter 2. This method shows that the circuit leads to a noncausal Bondgraph.~ 11_u./ l [J LL../~ ~~usal problcrn S. Is'. Is I . 2. 2. 2. I I sJ~~ILosI I:Lh ....4: equivalent circuitfor an induction machine with lockedrotor The leakage inductances of stator and rotor windings are represented by Las and L ak .:u.·ok I:L ns I:L ak Figure 2. '. ZI . i""J. in Fig. \·.5: Bondgraph ofequivalent circuit Figure 2. an infinite number of different equivalent circuits can be found with the same impedance at the stator side and the same torque characteristics [Lag '92]. ..1 Par·t 2 ~___ Port 1 ~> I ".' ik I Ik u .// ik lu 1. It's clear that the equivalent scheme of Fig.I~k . This is caused by the redundancy in the classical steadystate equivalent circuit.. because the voltage (effort) on the parallel connection can not be assigned. The bondgraph method uses a "1" for a series connection and "0" for a parallel connection. Asynchronous machine modelling 7 Rs oIc:::::=Jf''' 7S IS • Figure 2.4 is given.5 the Bondgraph of the equivalent circuit in Fig. no simulation can be executed with simulation programs based on the solution of ordinary differential equations. ~~ 1 L_~~ O.
When the current in two of the three inductors is given the third will be known through Kirchhoff's law.7. The rotor resistance seen at the primary side. This means that the three inductors Lcrs ' Lh and Lcrk can be described by two inductors (model reduction). The resulting steadystate scheme is depicted in Fig. 2. with the transformation factor k : k= Lh L h + L ak = 1+ cr k (216) The total leakage inductance is then defined as: L =L cr crs + Lh ·Lcrk =L L h + Lcrk as +~ 1+ (j k (217) The main inductance can be written as: . .Z\ + Zz uportl uportZ ZI ZzZz + (213) ZB (2 14)  This leads to the following parameters for the equivalent circuit with ZA and ZB: (215) Any circuit element connected to the secondary side of the ideal transformer can be transformed to the primary side.4 with Lcrk = ZI and Lh = Zz the rotor leakage inductance Lcrk can then be placed in series with the stator leakage inductance Lcrs ' The stator and rotor leakage inductances are now replaced by one effective total leakage inductance Lcr and all leakage inductance is supposed to be concentrated in the stator.6 such an equivalent is given. 2.w s ¢~ Figure 2.ZI' Zz port 1 . S liS . When applied on Fig. In Fig.7 are related to the general lockedrotor steadystate model parameters in the following way.8 Modelling and identification ofsingle. is now represented by an effective rotor resistance R~. To reduce the model order one has different choices for taking an equivalent circuit for two of the three inductances. 2. When port 1 is open: ZportZ =ZI +Zz =ZA If port 2 is shorted: Z . The transformed parameters of Fig.and doublecage induction machines This causal problem can be solved by eliminating the redundancy in the circuit. 2.7: equivalent circuit with alliealwge inductance concentrated in the stator.
Chapter 2.(216. u~ = R~ lk' + t¥~ = 0 (229) u S =RS T S +\{l S (230) ..s + k 2 ( Lh + Lcrk)Tk' Rewriting these Equations yields 2 (223) (224) t¥ =(L + Lh 4k s as _.s + k Lh( t¥~ = k L h7.. L/ J l + L L 4k + h S h T' k (225) Lh 2 Lh + 4k Lh + Lcrk ik (226) Using the transformed parameters Eq.SI!£ Lh (220) The stator resistance remains unchanged. The transfonnation results in a new set of rotor variables related to the original set by the constant k.s + lk') The voltage space vector representation is then given by kUk = k Rkik + \}Jk 2 ' :. \}Jk = Lh 2 : L h + Lak 's + + Lh + Lcrk .s + lk') (227) (228) t¥~ = Lm (7. 210) gives: t¥s = (L h + Lcrs )7.(29. 220) the following space vector notation for the singlecage lockedrotor machine is found: t¥s = 4~ + Lm(7. Asynchronous machine modelling 9 (218) the rotor resistance (219) And the leakage factor is defined as: (J k L =. (221) :' 'k = 'Ik 1 k '7 (222) Substituting these new variables in Eq.
. both systems have one common characteristic: the effective rotor resistance increases and the effective rotor inductance decreases with frequency..8: a)doublecage rotor b) Deepbar rotor The same effect can be achieved by the use of a deepbar rotor instead of a doublecage. see Fig. The only difference with respect to the singlecage machine is its rotor construction. 2. this cage dominates at high rotor frequencies.8a..tor .. .) Stalor Ro. The outer cage K j is a thin bar cage with high resistance and is placed immediately below the rotor surface. Slnlo1" h)~ t:7 ryyv. which will increase the effective resistance of the bar and therefore also the produced torque.and doublecage induction machines 2. while a deepbar is usually approximated by a large number of parallel LR branches (Fig.10 Modelling and identification ofsingle.. 2. In case of a deepbar rotor. This cage becomes mainly effective at low slip frequencies. The inner 'operational' rotor cage K2 is thick and has a low resistance. This consists of two rotor bars placed parallel. Under transient conditions the inductance of the lower part of the bar is higher than that of the upper part. as already said." . . . The resulting equivalent circuit will be used later to create a dynamic doublecage machine model. the lower position of the bars is linked by more slot leakage flux than the upper part of the bars. thus has little leakage inductance. The doublecage induction machine was essentially made to upgrade the performance at startup. As a result this cage produces a high pullout torque and due to the low leakage inductance. As it will be shown . Fig. This phenomenon is the same for both deepbar and doublecage rotors. it is possible to model skin effect by assuming that the machine has a doublecage rotor. 2. A double..2.8b.cage can be described by two parallel LR branches. DOUBLECAGE I DEEPBAR INDUCTION MACHINE In this chapter the influence of skin effect on the machine characteristics in addition to a singlecage machine is studied. . Skin effects appears more or less in every electric machine. Because it is embedded in the rotor iron the leakage inductance is high.8b).T·~:=:JJ Ln Rn Figure 2.'\ IJ I_=JI YYY'. .2. However.
. Ii' lJr' ' .Chapter 2. . Asynchronous machine modelling 11 Stator ". Using the space vector notation. . . . i. . .:=:=~~>" .31 to 234) reduce then to: (235) (236) (237) . As a result we can postulate that these fluxes are much smaller than the remaining leakage fluxes. Figure 2. / .9 the physical interpretation of the fluxes in a doublecage induction machine is depicted. .>~.'.Rolor " }!: I .' .._ I i \jJ"2 ./)jj \\\ / '/j/ \. ... .'". . /~ .2.. Thus they are assumed to be approximately equal to zero.(2. the flux linkages can be expressed as function of the rotor and stator currents in the following way: (231) (232) (233) (234) with: Lh LIs L I2 L crs Lcrl L cr2 main air gap inductance : mutual inductance of upper cage and stator : mutual inductance of upper cage and lower cage : : : : leakage inductance of the stator leakage inductance of the upper cage leakage inductance of the lower cage The fluxes 'Psi and 'Pal have to cross more than once material with low permeability..9: physical interpretation ofthe fluxes " In Fig. !i<./ f. The flux Eq.. .. . .
2._. The voltage vector equations of stator and rotor are given by: (239) (240) (241 ) these equations results in the lockedrotor model of the doublecage machine.s . 2. ~·S u~ ".. The three inductances of the Tnetwork will be transfonned to a twoinductance equivalent scheme (depicted in Fig. we also have a causality problem._{~=::::.12 Modelling and identification ofsingle.. Figure 2. given in Fig.10: vector diagram ofthe doublecage machine Its Las 0. which will be solved in a similar way.. As with the singlecage model.}_~_fVYY ..12).w s 0. ~ statoraxis Figure 2..11: lockedrotor doublecage model.10. 2.and doublecage induction machines (238) The vector diagram for this simplified situation is given in Fig..11. with: k= Lh L h + L l2 (242) (243) .
Figure 2. i k2 i 1 I_UR~~ Ie>'k2 .1. showing that the equivalent circuit can be used to derive an executable simulation model..13: causal Bondgraph doublecage lockedrotor model..1 ~ Is I 1 I u"..Chapter 2. " i k2 i. ~..1. Like in the singlecage situation a new set of rotor variables is introduced: 'P~I = k· 'f'kl 'Pk2 = k . (248) (249) (250)  Substituting the transformed parameters and variables into Eq's.. '¥k2 .13... I: L o2 __JL I: Lm Figure 2.'2 _1.(235 to 241) results in the flux spacevector notation: . IlR~. _._l~_. . . Asynchronous machine modelling 13 (244) (245) (246) (247) The causal bond graph is given in Fig.." .L lURk' ~21IlL.~~'" I~ 0 URkl ' .~.12: causal equivalent steadystate doublecage model Rs R'kl ". 2..
LI~(RI + R2 ) _ R)R2 ~ 4+~ ~+~ (258) (259) . DEEPBAR CAGE When modelling a higherorder cage rotor.14: resulting doublecage vector diagram. 2.14 Modelling and identification ofsingle. .3. like in the case of a deepbar rotor it will be convenient [Velt '94] to rewrite the rotor branch as a parallel LR pair connected in series with some remaining resistance Rser and inductance Lser ' In Fig.14.2 The resulting vector diagram of a doublecage machine is depicted in Fig. For a doublecage machine the values can be rewritten as follows: R = 4 R2 + ~RI .st.) 5 = R~2 Tk~ + ~. Both schemes show identical admittance.15 this transformation is shown.atoraxis Figure 2. 2. 2..2. (256) (257) .and doublecage induction machines (251) (252) (253) (254) and the voltage spacevector notation: 5 = R~) ~~ + ~.
However. where the stator flux remains unchanged. The stator flux in stator coordinates will then be given in space vector notation by: . Asynchronous machine modelling 15 (260) R p = R} R2 R! + R2 (261) This series approximation is leads to digital simulation equations with higher time constants. DYNAMIC MODEL In this paragraph a dynamic model for an asynchronous machine is derived. <=> JY'.JJ .7t) Mel. I L pl } 1.Chapter 2.3. The angle of displacement between these reference frames is the mechanical angle p s.. 251 to 57).:.[R( 2" lTI S T S JT 'ls 7 S . both with there own reference frame. Therefore the space vectors of flux and voltages are rewritten in a way that the stator part is denoted in stator coordinates and the rotor part is given in rotor coordinates.. The physical machine consists of a stationary part (stator) and a rotating part (rotor).Jv'. The electrical torque.1 R ilryyY"L__. which allows larger simulation steps. produced in the machine is given by: .15: parallel to series transformation 2.s! =ls nI 'T s2 . starting with the doublecage flux and voltage equations (Eq.J'YYY"r::==JJ Ln Rn L. i [><".(Y" l~VY'c Lpn pn~l ~5 __JL Figure 2. the mechanical rotation speed is the derivative of this angle: ill m = Ps for p =1 (262) The mechanical rotation speed (shaft speed) is calculated using: (263) with J the momentum of inertia of the machine plus load..s2 nIsi s +ls ' T s (264) To create a dynamic machine model these mechanical equations also have to be used. this series representation leads to a nonphysical rotor model. If the number of pole pairs of the machine equals one.
68) 'PsI = s { \fls2 s Ju =J u s s2 s sl Rs issl dt Rs iss2 dt (274) .(2.16 Modelling and identification ofsingle. using Eq.1 are used both in rotor and stator coordinates.r 0= Rk2 ik2 + \fJk2 (270) Looking at the voltage and flux equations shows that in this situation the stator current and the flux \f1.r .:. The rotor fluxes and currents are given in rotor coordinates..to stator coordinates or viceversa. The stator voltage and flux are presented in stator coordinates.and doublecage induction machines (265) The rotor flux is denoted in rotor coordinates as follows: (266) (267) The voltage spacevector equations are split into stator coordinates for the stator voltage and rotor coordinates for the rotor voltage: US s = Rsis ~s + \TJS T s (268) (269) _ .. This is done with the use of the standard vector rotation matrix R(a) defined as: R( a) = [cos(a) sin(a)] sin( a) cos(a) The stator current is transformed to rotor coordinates as follows: (271) (272) Another example of the transformation between stator and rotor is: (273) Rewriting Eq. this current and flux must be transformed from rotor.(265 to 270) results in the following equations in integral notation.. Therefore. __ ..
.Tkl s L cr s2 u/ s2 lU is2 = T s .rl f( .~i.T kl s L cr (275) With Eq. 'l'~:.Chapter 2.li.f" R k1 i k1 r2 { \fI .f"k1 ik1 rl dt R = .65) results in the following equation for the stator current: lus1 u/ sl is1 = T s . which is given in Fig.(2. Asynchronous machine modelling 17 rewriting Eq.66 and 2.~ d dt ..16.69) in the integral fonn results in: \fIk1 k1 .(2. . :r Is (278) (279) _. rl " rl) 1 lk (277) \fIcr2 = f(R k2 1 )dt\fIkl = f( Rk1lk1 Rk2 1 )dt k2 k2 The currents flowing in the rotor circuit can now be calculated as follows: :'r tiJ. ' f( R~'l~'"rl) .. rl = dt  'l'~l" ~ R'.~ .. Lcr2 \fIcr 2 .r . lk2 = .. r (280) These equations are used to describe a block diagram of the resulting dynamic simulation model.67).(2.R. r2 (276) dt The leakage flux of the innercage can be derived using Eq. 2..r m =L. rl = .
~~" Rotor /r~/'.~" + M10ad Figure 2. . For higher order models only the rotor side has to be rewritten. by adding other inner loops.16: block diagram ofthe doublecage simulation model This simulation model is used for the simulations made in this report.18 Modelling and identification ofsingle.and doublecage induction machines Stator /r/'. The block diagram can easily be rewritten to a singlecage model by removing the inner loop( R~2 ' L~2).
. and one mechanical port. Therefore it has two electrical multiports. One can look at the IRTF as an induction motor with Lm = ex:> ./ \ I '\ I . see Fig.. .1 I I ~R I Rotor Figure 2.. Las = Lak = 0.. all flux is mutual • no magnetising current (L=ex:» • the angle between rotor and stator reference frame pS is equal to the shaft angle if the machine has two pole pairs (p= 1) i R '~ ! Stator I .~ .r2) or in stator coordinates (sl.17: symbolfor the Ideal Rotating TransFormer An ideal transformer transforms current and voltage by means of the mutual main flux. the current and flux on both sides of the IRTF have the same length.. 271). / / / HI / . DYNAMIC MODELLING USING THE IDEAL ROTATING TRANSFORMER Another way to approach the dynamic machine modelling lies in expanding the lockedrotor model with an Ideal Rotating Transformer (IRTF) [Velt '94].:. 2.18: stator and rotor reference frame The IRTF just transforms currents and fluxes from rotor to stator coordinates and vice versa.. with the use of the standard vector rotation matrix R(a) (Eq. 263: ° .. The IRTF is a theoretical device that connects two orthogonal perphase circuits with a mechanical system. The difference lies in the reference frames of stator and rotor (Fig.2. \ \ \ \ \ . Asynchronous machine modelling 19 2. one for the stator and one for rotor. .~ . Rs = and Rk = ex:>..Chapter 2.. The angle between the rotor and stator coordinate system pS is the output of the mechanical part of the machine Eq./" /' I" I \ \ i /' : JP ' S1 \ \ \ \ \ Figure 2. The IRTF has the following properties: • no energy dissipation or storage • no leakage flux.18). Because the IRTF does not need a magnetising current. The current and flux vector can be represented in rotor coordinates (rl .17.~.s2).4.
20 Modelling and identification ofsingle. = Rk' + J( ro s  ro m)Lk = ~ Ik ut (286) As the rotor flux equals the time integral of the rotor impedance times the rotor current \TJR _ + j(oo s 00 m)Lk j(CJlsCJlm)t Tk. . Therefore the electric torque can also be defined using flux and current in rotor coordinates. (283) IMPEDANCES AT AN IRTF The elements of the two dimensional space vectors with real components may be represented as complex valued numbers defined as: u: and ~s. can be described as: R Zk . k· e ro s . 264 is used: (282) Only the reference frames of the flux and current on both sides of the IRTF are different. under steadystate conditions and sinusoidal voltages and currents. (284) (285) The rotor circuit contains a resistor R~ connected in series with an inductance LK which .ro R~ II I J( m) (287) with: (288) The impedance that appears at the stator side Z% depends on the mechanical shaft speed rom: (289) (290) .and doublecage induction machines (281) For the calculation of the electric torque Mel in the machine Eq.
which is equal to the. . 2. One can therefore conclude that inductances are free to move across the IRTF .2A. steady state circuit.~ ['~ HoLor 1 i~"j \V rl L "dj kl rn I 11. =(rorosR~ ) + Jro s Lk rom s (291) An inductance on the rotor side of the IRTF can be moved across the IRTF to the stator side without changing it's value. This dynamic equivalent circuit can be translated to the dynamic block diagram (Fig. 2. results in a dynamic perphase circuit as depicted in Fig.19 the IRTF is placed between La andL m this is also the case in the block diagram of Fig.19: dynamic perphase equivalent circuit with 1RTF Using the IRTF as an expansion of the lockedrotor equivalent circuits. This option will be used for identification purposes in section 3.16) of an induction machine as derived in Section. A resistor however will appear at the stator side as a resistor with a value depending on the slip (rosro m).2. In the block diagram of Fig. can therefore also be moved without changing the model properties. In Fig.16. 2. ] ·rl ik2 SLa Lor !RTF Figure 2.2. which have the same function as the IRTF.2.19.. independent of the slip frequency.Chapter 2.16 the vector rotating blocks (VR). Asynchronous machine modelling 21 A rotor impedance Z{ will thus be seen as a virtual impedance Z{ on the stator side: R Zk = R"(ro s k +J ro m )Lk ~ ZS k . G ''J. After placing the IRTF the rotor resistance will have a constant value. previously discussed. The IRTF can thus be placed at 3 positions in the equivalent lockedrotor circuit: between Rs and La' between La and Lmor between Lm and the rotor circuit.
.20 the general structure of a 3phase voltage source converter fed motor drive is given. each leg consists of a pair of power semiconductor switching devices. Ideally each phase leg can be considered as a 2level switch that can switch between two voltage levels: the positive and the negative DClink terminal. For simulations a PWMinverter is studied.and doublecage induction machines 2. the DCvoltage is thought to be constant for simulation purposes. (295) The LCfilter is used to reduce the voltage ripple on the U dc' to reduce the harmonic content of the rectified current and to enable negative values of the DCcurrent for short periodes of time. which is a voltage source converter. In Fig.20: Voltage source converter fed motor drive. CONVERTER MODELLING Nowadays most electrical drive systems use power electronic converters as power supply. Therefore. which can be used for identification purposes. 2.22 Modelling and identification ofsingle. The fundamental frequency component can be adjusted both in frequency and in amplitude. Converler Figure 2. The 3phase rectifier converts the 3phase voltage into a rectified DCvoltage with some ripple. Voltage source converters consist of three main parts: a rectifier. The grid impedance is neglected. Finally. 50Hz): (292) (293) (294) We assume that the diodes in the rectifier are ideal. a filter and an inverter. without voltage drop. This filter is also assumed to be ideal. By means of the LC the rectified input current is smoothened and thereby reducing the voltage ripple on the DClink. U de = max( Uline) = 16 U per lase = 539 V (296) The voltage source inverter consists of three phase legs. The generated voltage will always contain harmonics. a 3phase inverter transforms the DClink voltage into a 3phase ACvoltage.5. The three phase rectifier is connected to the symmetrical three pase grid (380/220 V .
the voltage source converter is a suitable (voltage) supply.OO~ ~ . i f.~)/ : 0."35 r'. it is possible to vary both the amplitude and frequency of the output voltages.] coo .003 fill ~ I~ I 0. The goal of pulsewidth modulation is to achieve sinusoidal stator currents in the induction machine.. I ' ~_')OO I 19 I I (Hz Hz fl(~qucncy I Figure 2.015 0. :::l/~AA~ a l.1 ~ 1 1 ~ 1 00 JI °1 40 I 1 I I.. i 0. 2. as depicted in Fig.Chapter 2.~.22: PWM switching pattern and spectrum ofa inverter phase voltage .07 I L1 0.025 0."I 0.2:.0.0.03!.05 >::: 200 1.045 II 0. In case of sinusoidal PWM. o I~~~i I i I 400! rn~~I· i O. 0. Because of the inductive character of the asynchronous machine and the possibility to deliver reactive power of the converter (freewheel diodes).. O.01\ I 0.D~) I I. Figure 2. Therefore. Asynchronous machine modelling 23 +. Using different switching patterns of the 2level switches.22.0011 n r QlU . 0.21: equivalent 2level switches. the control signals of the 2level switches are obtained by comparing a sinusoidal reference signal (added with 12% of third harmonic component).01 I~: 7 f) ! ... uref' with a triangular carrier signal Utrj .?4~ D..D' iO~D1S O.04 O. PWMSWITCHING PATTERN The conversion of a constant dclink voltage to threephase voltages whose amplitude and frequency are controllable can be done with a pulsewidth modulation technique (PWM)..oos ~~I O.Oj~) i G. the three terminals of the 3phase induction machine can be directly connected with the inverter. ~/\.
defined as: np = . OJ tri' as well. if mi ~ 00. but reduces the machine harmonic losses. When the reference voltage is larger than the triangle voltage uref < utri then the output is connected to the negative terminal of the DCvoltage. which allows a larger modulation index. Only in case of sinus modulation the fundamental component of the output voltage is proportional with the modulation index: uSa(l) . The number of the carrier frequency periods that fit in one period of the reference signal frequency is called pulse number.SIn ( OJ S. . OJref = OJ S' but harmonic components of the carrier frequency. if 0 ~ mi ~ 1 over modulation. The relation between the amplitude of the reference signal and the carrier is called the modulation index. if mi > 1 block modulation. The output voltage of the inverter not only contains a fundamental component with frequency. The tri amplitude and the frequency of the reference signal are the desired values of the fundamental output voltage component. Three types of modulation are defined: • • • sinus modulation. is used with mi = 0. Increasing the value of the pulsenumber n p results in higher inverter switch losses. U de = 539 V. Usually a third harmonic is added to the sine reference wave (12% of the fundamental component) to make the wave form more flattopped.8 the maximum perphase fundamental voltage is 215.5V. t ) (299) For simulations in this report only sinus modulation is used. The switching moments are determined by the points of intersection between the reference signal and the carrier. = 0. Therefore the motor can not be used at rated power. U = mi 2dc . If the connected machine windings are connected to a common starpoint this third harmonic will not appear in the phase voltages.22. the modulation index and pulse number are set to a constant value: mi n p = 3. The choice of pulsenumber is therefore a balance between inverter loss and machine harmonic losses.OJ ref OJ tri (297) Thus there are np pulses in each half period of the output voltages. Each phase is compared with a the same triangle carrier. Thus if a constant DCvoltage. In that case the maximum value of the fundamental output voltage is half the DCvoltage. The frequency and amplitude u of the triangular carrier wave are usually hold constant. When uref > utri the output voltage of the particular phase is connected to the positive terminal of the DCvoltage.24 Modelling and identification ofsingle. defined as: (298) In Fig 2.and doublecage induction machines The inverter switching frequency is determined by the frequency OJ tri .8.
However.3 will be used. . are rewritten with the starpoint of the machine as reference. which are the transformed threephase voltages according to Appendix B. using the following transformation: (2100) uao] = [UaN] . Therefore the threephase stator voltages have to be provided by the inverter model. This approach is quite convenient to be implemented by microprocessors. Asynchronous machine modelling 25 A completely different approach for generating PWM results from representing the threephase inverter output voltages in a space vector system. 1NvERTERS~ATION For simulations of inverter fed asynchronous machines. Figure 2. The input for these models are the twophase voltages. only the sinusoidal PWM technique will be considered in this report. the machine models according to Sec. being widely used nowadays. Because the stator voltages have the starpoint 0 as reference point. 2. For this reason. The inverter output voltages with respect to the negative terminal N . the space vector method generates virtually the same pulse pattern as the sinusoidal PWM with increased voltage utilisation (third harmonic addition).Chapter 2.23: voltage references ofmotor and inverter. which can be fed into the machine simulation model.23. see Fig 2.[UoN] = ~ ubO ubN UoN [ uco ucN uON a [2 1 1] [UubNN] 1 2 1· 1 1 2 (2101) ucN These stator voltages with respect to the starpoint can now be transformed to the twophase representation. the perphase stator voltages have to be calculated with respect to this reference point.
These components will excite the outer rotorcage. . The used singlecage machine is an approximation of the doublecage machine steadystate speed/torque characteristic in the normal operating range.6. However.26 Modelling and identification ofsingle. COMPARING DOUBLE. • no load situation.AND SINGLECAGE EFFECTS In this section the behaviour of a doublecage and a singlecage machine model will be compared.6.24: steadystate torque and current characteristics doublecage model. Therefore. the following simulations are made: • steadystate speed / torque curves. ====~'==========:'::::=::==I I i I ~JGOO Gonn Figure 2. The simulation models are implemented in the simulation program "PSI/c". thus at startup.singlecage model.1. the advantage of the doublecage (higher torque at high slip frequencies) is no longer useful.and doublecage induction machines 2. 2. To compare the effects of a doublecage with respect to a singlecage motor model. Compared .24 the speed/torque curves of a double. higher harmonics are generated. as expected. Inverters with variable frequency and voltage enable the use of only this area.and singlecage machine model are depicted. with high resistance and low leakage inductance. STEADYSTATE SPEED/TORQUE CURVES In Fig. motor fed with a PWMinverter. while this simulation program has the ability to simulate an ideal inverter model without errors in switching events. which is around synchronous speed. 2. using the previously discussed machine and inverter models. The parameters of the doublecage machine are taken from previous work of [Donc1 '86]. Machines used for frequency controlled drives are using the most effective operation range of the curve. The difference lies at the points where the slip is high. as a result of the use of inverters. motor fed with a PWMinverter . Here the torque produced by the doublecage machine model is significantly higher. • dynamic response. The rated speeds are almost equal for both machines. The used program is given in Appendix E2.
will remain the same. 2. No LOAD SITUATION. Asynchronous machine modelling 27 to a single cage.04 0. E z tirnf' 15] 100 ~~~~~~~~. In Fig. is given.05 [5] Figure 2. MOTOR FED WITH A PWMINVERTER The influence of higher harmonics produced by an inverter on electric torque and current of a double. DYNAMIC RESPONSE. we will look at the response of the two machines models at a sudden load change M1oad=0 + 40% of the rated torque.26 the dynamic response.035 0. 2.25: PWM inverter fed machine.. MOTOR FED WITH A PWMINVERTER To study the behaviour of the machine models.6.02:' lime 0. .and singlecage.73 pu). The stator fluxes of both machine models are almost equal.6.045 0.T T 100~~~~~L~~~' o 0.25 the torque and currents of the doublecage and singlecage model are shown. . 2. 2.015 0.Chapter 2..2.and singlecage machine is studied using the PWMinverter simulation model at fundamental frequency of 40 Hz (0.03 0.singlecage model The doublecage machine has a significant larger current and torque ripple compared to the singlecage machine. However the percentile difference between double.and singlecage machine. pulse number=9 . which is important in fieldoriented control of a machine with skin effect. current and torque ripple. for a double.doublecage model. the higher rotor resistance causes higher eR power loss for the harmonic currents and the lower leakage inductance will result in a higher torque ripple. The torque and current ripple will decrease when the pulse number is increased (less harmonic content).8 pu) and a dcvoltage of 537 V (1.. In Fig.3.005 0_01 0.02 0. at rated speed.
4 0. the dominant time constant of both singleand doublecage models is the same..6 0. This can be the case in a speed control system.6 0.5 t 0.1 0.7 0.3 0. I D D.3 0.28 Modelling and identification ofsingle.4 O.S D. 2. This means that a machine with skin effect (doublecage) can be approximated by an equivalent singlecage model when only the dominant time constant of the machine has to be known.27. i: 1.and doublecage induction machines 100 E ~ 50 <0 ~ "r o " 0 0. .l 0. if the steadystate operating condition is in the low slip region..8 0.9 [5] fo~ <0 50 single cog=e~_ 50 L . As a result of the performed simulations one can conclude that.and singlecage model at load change.8 0.2 0 .27: stator currents ofdouble.26: electric torque response at load change ofa doubleand singlecage machine model The stator currents 1 of the single.7 0.9 t [5J Figure 2.and doublecage machine model at the load change is depicted in Fig.::~ Figure 2.2 0.
for machine parameter estimation.1: identification model. This method allows higher order machine parameters estimation (e. Machine parameters are needed for control design or machine analysis. 3. are discussed. The method uses two fluxestimation models.g. with VIImodel and II <p model (31) The VIImodel uses measured stator voltages and currents to estimate the stator flux. For the use of the method the following assumptions are made: • Rs can easily be measured and is therefore known. TWOFLUXMODEL METHOD The estimation method proposed by Blaschke uses two auxiliary models. the doublecage parameters) and no special operation conditions are needed. 3. using the Output Error Method.1. to estimate the singlecage parameters L(5' Lm . The first method used to estimate the machine parameters is a method proposed by [Bla'94].Chapter 3. • constant saturation level (only small variations around a desired flux level are admitted). Parameter identification methods 29 3. Identification is done by adjusting the model parameters in different operation conditions. an VIImodel and an I/ q> model. ~: = J(u: . MACHINE PARAMETER IDENTIFICATION In this chapter two identification methods. will also be studied.R ~s)dt s (32) . resulting in an estimation of singlecage machine parameters.1 a scheme of the two models is given. the VIImodel uses the stator resistance and the leakage inductance while the I/<pmodel uses the main inductance and the rotor resistance. '~v~~ ~vr U/Imol1cl 1/ rp mode! Figure 3. Another method proposed by [Gort '94]. In Fig. R~ and Rs ' In each model the cageflux is calculated. leading to the desired machine parameters. By adjusting these model parameters the fluxes can be made equal. 'f'.
= \Ilk .2: vector diagram offlux and current In the singlecage fluxreference frame the following equations hold [Van '92]: . the length of the flux vector(u)~~ and the angle <Pk between the cage flux and stator coordinates. . This is called field orientation. 34. CI u x .. .. Rotating the stator current ~s over the angle <Pk .'W . Thus with the stator current in fluxcoordinates the flux (i)~~ of the I1q>model can be calculated with the estimated parameters Lm and R~ using Eq..Rk ik . II! = Is . upon the flux coordinates. 3. . .and doublecage induction machines The cage flux (u)l.a xis  Slaloraxis Figure 3. . r Rk ik = \Ilk (37) (38) (39) = Lm · il! .f'k of the UIImodel can be derived by subtracting the leakage flux from the stator flux. see Fig.W . The output of UIImodel is the flux in polar form. 36 and 38: . (33) This "cage" flux in stator coordinates is transformed to polar notation. Is ·w ~==i=9oo1. \Ilk . This angle <Pk is used as input for the I/<pmodel..2. in stator coordinates.b 'W .30 Modelling and identification ofsingle.b . In flux coordinates the current component parallel to the flux is called the blindcomponent i~ and the perpendicular component is called the workcomponent ~ 'S r.' b +lk (34) (35) (36) q> 0= Is + lk . Mel = \II~ ·i. results in a projection of the stator current.
The stator resistance can be measured accurately at standstill. In this case the vectors lss. 3. in order to avoid the problems related to the open integrator in Fig. (U~:~~ • S e()k ~~ r \jJ S (11) S Statoraxis . b .. Enlarging the value leads to the first estimation of the main inductance: Lm until ll'f:1k = 0 (313) . 3.3: vector diagram at no load. which m results in the flux estimations as shown in Fig. 'P: and 'Pk .1. In fact. Parameter identification methods 31 (310) This leads to two flux models with independent machine parameters.1. The value of R~ has to be identified under dynamic if = O. using the m two flux models.Chapter 3. With the assumption that R s La and Lmcan be estimated using only stationary conditions.s are all in one direction. fluxaxis Statoraxis a) Machine h) Model Figure 3.=O (311) The vector diagram of currents and fluxes in the machine and in the auxiliary models at noload are given in figure 3.the parameters operation because of the fact that in a stationary situation Rs and La and the I/q>model uses Lmand R~. _ J. the UIImodel uses is correctly measurable._l~ .3b. At first the model parameters La and L are made equal to zero. thus R = Rs ' The estimation s procedure starts at noload situation where: MeZ=O ~ i.1 with \P% as output. . only 3 parameters have to be estimated for the singlecage situation. IDENTIFICATION STRATEGY In the following the tuning procedure for La' L and R~ will be discussed.3a. where: and (312) i~ : " . Using the flux difference ll'f:1k=(u)'fl~(i)'fl~ . a stabilised UIImodel should be applied [Werf '94]. . a) machine b) model The flux difference Il'flk is therefore positive. 3.
Due to the large value of ish and the large first estimation of Lm .Slaloraxis a) Machine b) Model Sla toraxis Figure 3. This results in a vector (i)'f'k which will be to long. . In this situation ~~k < 0 as a result of the large Lm . will lead to a vector component '" '" .and doublecage induction machines The second step is to operate the machine at half load. with an angle <Pk larger then CPk (of the machine). S I ish which is also larger than the real value. a) machine b) model Enlarging La will lead to an angle reduction and a larger estimated flux (u)~~. Lm < Lm Under load condition La (2) . The angle between the estimated flux and the stator axis. is depicted in Fig. The procedure can be repeated starting again at noload. the estimated leakage inductance will be larger than the actual value (La > La). The estimation will improve with the number of iterations perfonned.4. After this first iteration step both estimated values La and L will be larger than the real m values. The steadystate vector diagram of the machine and the models.La(I)' Due to the fact that L (1) is too large. leads to a better estimation where L = Lm(l) . which is too large. When the flux difference is reduced to zero.4: vector diagram at load. which eventually results in a better parameter estimation..32 Modelling and identification ofsingle. 3. Decreasing the value of Lm until ~~k = 0. m a has to be adjusted again. the estimated flux value of the II cP model will be larger than the flux estimated by the UIImodel: (i)~~ > (u)~~ ~~k <0 (314) . Because La = the leakage flux ° A between 'f': and 'f'k will be equal to zero.
In that case 8 'i'k = 0 will hold for both .Chapter 3. This can be done by defining: (315) 1m( load) = 1m( noload) . Figure 3.L(1 = Lm It is obvious that after just one iteration. noload/load.1(1 When in this case the model reaches the same vector geometry as in the machine. Parameter identification methods 33 3. the right parameter values have been found.5 : optimisation ofthe scheme 3.2.1 as depicted in Fig.5.3. 1m and 1(1 have been assigned in the two flux models it is s obvious that the UIImodel is also valid under transient operation. The I/q>model however only provides reasonable results during transient operation if the estimated rotor resistance equals the real value (R~ = R~). the estimated parameters will have the following values: (318) Lm(load) = Lm + L(1 . ESTIMATION OF THE ROTOR RESISTANCE As discussed in the previous section. After the values for R . leads to an estimated value (316) Under load condition the estimated value difference.1. The value 1(1 must be enlarged to eliminate the flux 1m(toad) should then automatically be changed to: (317) 1m(toad) = Lm + L(1 .1.3.L(1 Starting at noload with both 1(1 and 1m equal to zero. only steadystate stator currents and voltages are needed for estimating the parameter values L(1 and Lm • In order to estimate the rotor resistance the rotor circuit has to be excited. OPTIMISATION OF THE METHOD Altering the above discussed method slightly will make it possible to estimate the "correct" values for L(1 and Lm after just one iteration. This simplification can be made by changing the scheme of Fig.3. creating a dynamic response.
R~. iii \1': \ ~f \ \ f ~ f. .34 Modelling and identification ofsingle. < 1 . (i) (u)\I'.".==\ \ \ \1 (u) V. i'" .' "~< i. R.6: effect ofdeviation in the estimated rotor resistance on the estimatedflux difference.6."... 3. > • R• 1 I ... _ . \ .and doublecage induction machines steadystate and dynamic operation. This is illustrated in Fig.. To estimate the rotor resistance the stator voltage is changed stepwise. • I I = 1 IX.~ / (. If however R~ > R~ the time constant is too small and the estimated cage flux (i)~~ changes to rapid. u"5~ (II) ~'r/ Ie I '7 I I (J)cV. r/ _.'l'. 'u)l....'l'.) ~J. If R~ < R~ the time constant t = ~": Rk will be too large and as a result the estimated cage flux (i) ~~ changes to slow.. I I excitation ~'lux model resDonse Figure 3. w ~. The dynamic responses will serve as a command for changing the value of R~ in the right direction. R~. " .· cV.. ~ J~ . ·L Volta~e \ \1 _~.. presuming that A Lcr and Lm are correctly estimated. ~.
Usually the analysis is done by simulations. In machine analysis we want to predict the machine behaviour in different operation conditions. IDENTIFICATION PROCEDURE The identification approach used to identify the machine parameters is a socalled parametric identification (finite number of parameters). based on the output error method. If the error between real and predicted output is small the model will be good. In that case infonnation concerning only two parameters can be obtained from each set of experimental data. A model structure has to be chosen and the parameters in this structure will be derived by minimising a cost function. 3. Methods that are based on this principle are called "prediction error methods". The dynamic properties of a system must be extracted from the observed input and output only. This capacity of prediction can be quantified by comparing the actual output with the calculated future output. The results will be compared later with the twojluxmodel method [Bla '94]. There are two reasons: machine analysis and control design. . according to Fig. use the measured fundamental components of the phase voltages. In control design the goal is to develop a controller. A method proposed by [Gort '94]. both online and offline. 3.7. which in tum is based on the prediction error method: the mismatch between real output and model output. Parameter identification methods 35 3. When using single steadystate experiments. However.Chapter 3.1. which makes the machine behave in a desired way. This method is based on the minimisation of a criterion function. identification of all machine parameters requires varying operating situations (twojluxmodel method).and output signals are sampled with a sample time Ts ' The Nyquist frequency is then equal to: (319) The measured system output at time k· Ts will be noted as y( k).2. OUTPUT ERROR METHOD Most estimation methods. will be discussed. currents and mechanical speed. the input been denoted as u( k ). The output of the system is disturbed by an additive noise term v at the output. there will always be a purpose in trying to derive an optimal machine model. Parameter identification deals with the problem of finding numerical values for the parameters resulting in the "best" description of a dynamic system. These in. in this case an asynchronous machine. therefore a very logical quality criterion is a measure for it's prediction capacity.2. This method takes into account the available switching harmonics produced by a nonnal converter and does not require additional external test signals for the purpose of identifying all machine parameters. In both cases the model must predict the behaviour of the machine.
the model output is no longer called a prediction but an estimation of the process output using input u( t) measurements up to t=k and output measurements y(t) up to t=k1. . leads to the so called output error: E(klk) = y(k). which is the case for the used machine models.and doublecage induction machines Figure 3. the square has to be taken. Comparing the model output y( klk)with the real process output. This results in the following loss function: I N =L>(klk) N k=1 1 N 2 (321) The "best" model minimises this loss function. an estimation of the process output is needed. the optimal model will have a parameter vector that minimises the loss function: eN = arg min J N (8) BeD (322) with J N(8) = _1 L E2 (klk. based on measurements up to t=kl. If the process is not strictly proper. the model output is denoted as y( klk 1) which is called the onestep ahead prediction of y(t). Within a selected model structure. This could be. for example.36 Modelling and identification ofsingle. To prevent positive and negative prediction errors from cancelling out. Therefore it's better to look at a sequence of prediction errors. but for one model the output error can be small at one instant and large for another. to compute the prediction error.y(klk) (320) The model will be good if it has a small output error.7: system representation For strictly proper processes. the set of parameter vectors that result in a stable model. The model parameters are collected in the parameter vector 8. It is clear that.8) N k=1 N (323) The set D is the set of possible parameter vectors.
. (327) with ho = 1.. ESTIMATION OF THE PROCESS OUTPUT Prediction error methods are based on the estimation of the process output. defined as: (328) From measurements.. k I. the process model G( q) is written as: 12 G( q) =go+glq . Parameter identification methods 37 3.  ~I I G(q) ' ~ :" . (326) The noise is defined by: H(q) = 1+ h1q1 + h2q2 .. since: v(t) = y(t)G(q)u(l) The model output estimation at time t=k is then given by: (329) (330) . the set {y(ll).q n] U( k) + [~hn q n}(k) Where G(q) is the process model and H( q) is the noise model of the output signal..u(t)} for 1= k. using a process model.Chapter 3.8. If the system is not strictly proper. 3.8: standard model representation The process output can be written as follows: Y(k) = G(q) U( k) + H(q )e(k) = G(q) u(k) + V( k) (324) (325) y( k) ~ [~g. The signal e(k) is a ZeroMean WhiteNoise (ZMWN) sequence and q represents a shift operator.2.2. is known..k2. is known. We will use the standard model representation as depicted in Fig. If G(q) and H(q) are also known. "".'" .+g2q . then v(t) for 1= kl. v(k) y + ~) ~ ! Figure 3.
which results in the following system output estimation: y( klk) = G(q)u(k) +[1. Hl(q) = 1 + h.and doublecage induction machines Ifwe assume that G(q)is known and not strictly proper. H( q) must be • stable. 333. The model output G( q )u(1) uses input values up to I s k.l(q)] v(k . The second part is deterministic because v (I) and e (I) are assumed to be known for I s k .H.qI + h~q2 Hl(q)H(q) = H(q)Hl(q) = 1 From Eq. This results in: v( klk 1) = I h(l)· e(k I) = [H(q) IJe(k) [=1 aJ (333) exists such that: (334) Since H(q)is inversely stable. To do this. 331. (332) Since e( k) is a zero mean white noise sequence the first part is expected to be zero.1. We have to obtain v( klk 1) to calculate the model output. 324 and 334 follows that: e(k) = Hl(q)v(k) which. together with Eq.38 Modelling and identification ofsingle. yields: (335) (336) Thus for calculation of the prediction of the noise term v( k) only values of v( I) up to I s k 1 are needed. the noise filter H( q) must satisfy three conditions. • inversely stable • monic(H(q)=1+~ql+h2q2+ ) The monic condition implies that the noise process can be written as an impulse response representation 00 v(k)=e(k)+ 'Lh[e(kl) 1=1 (331) The best value of the coloured noise term v(k) will be the expectation ofEq. G(q)u(k) will contain values up to k and is therefore also known at time instant t=k.G( q )u(1) for I s k 1. the output estimation can be written as: .I) Since (337) v(l) = y(l) .
y( klk) = =Hl(q)G(q)u(k) + Hl(q)y(kl) This expression is valid for any model structure that can be written as (339) y(k) = G(q)· u(k)+ H(q)· e(k) (340) where G(q) is not restricted with respect to the strictly proper properties. such as: • Finite Impulse Response model (FIR). In machine models used for control development and analysis no noise model is used either. • Auto Regressive Moving Avarage with eXogenous input model (ARMAX). MODEL SET STRUCTURE The method used for machine identification is a socalled parametric identification.Chapter 3. • Output Error model (DE). • BoxJenkins model.Hl(q)][Y(k 1) . 340 exist [Bosch '94]. OE model The Output Error model is given by: F(q)x(k) = B(q)u(k) y( k) = x( k) + e( k) In this case the process model and noise model are defined as: (342) H(q) = 1 (343) . These models are special cases of the general process model: (341 ) For estimating machine parameters an Output Error model is preferable because the noise model is not estimated separately. For parametric identification a process model structure has to be chosen a priori. so this will be a good choice.3.G(q)u(k 1)] = Hl(q)G(q)u(k) + [1. different model structures can be used to describe a process. This general expression for the prediction of y(k) is valid for all model structures. However. Therefore different parametrisations for the process model G(q) and noise model H(q) in Eq. Parameter identification methods 39 y( klk) = G(q)u(k) + [1.2.Hl(q)]y(k1) (338) The error between estimated system output and the measured system output can now be rewritten as follows E( klk) = y(k) . 3. • Auto Regressive with eXogenous input model (ARX).
never be able to describe the system Go exactly.8(i)).8(i)) = cj>(k....40 Modelling and identification ofsingle. (345) (346) (347) B(q) = b1q1 + b2q2 . k 1.. . bNhqNh The coefficients of the sequences B(q) and F(q) are collected in the parameter vector 8 defined by: S=[fi ..8(i))=[y(kl.U(knb)] (350) The regression vector cj> contains the measured input u(I) up to l=k and the estimated system output y(118) for I :::... Using this frequency ..y(knj. The model G will..(q)=l+fiq I +f2q .. bNhr (348) The estimated output signal is not a linear function of the parameter vector 8 and therefore the OE estimation model is called a pseudolinear regression model. u(k)... . This is made clear when the criterion function is written in the frequency domain [Lju '87]: (352) where Go(ro ) represents the process we want to identify. fNjqNj / '2 F 1.. ....S(i)). where the choice of the filter can influence the criterion function and therefore the estimated parameters... fN j bl.S(i) (349) with 8(i)denoting the parameter vector after i iterations.. A criterion function which is often used is a quadratic function of the filtered prediction error: l k { C1J J(8(i)) = 2k ~I ~LI E(mi) }2 (351) The predicted error is filtered with a stable linear filter L( q). . in practice.... The regression vector is defined by: cj>(k.and doublecage induction machines Using Eq. The coefficients of the parameter vector 8 are the values that make G the best approximation of Go with a frequency weighting IIL( ro )11 <I> u (ro ). 338 the DE estimation model can then be written as: y(klk) = F1(q )B(q)· u(k) with B(q) and F(q) representing sequences of the shift operator q defined as: (344) F(q) = 1+ fiqI + /zq2 . The model G will always be an approximation of the real process...... This model can be written as a pseudolinear regression model: y(k.8(i)).
To solve this identification problem the stator resistance and the rotor parameters . 3.C". as depicted in Fig. 3. e.e(i)~1 (353) in the criterion function is relative important and as a result the estimated parameters are tuned in a way that a small error is obtained at those frequencies.8) is in the model set even opt when the noise model does not correspond to the real noise process. NOISE INFLUENCE There is no correlation between the noise power spectrum <t>v and the parameter vector 8.4. 0 )6c==:J'"y VY ~.Chapter 3. the errors in the different frequency ranges can be weighted.~.'ll]. 'r.9. the noise does not affect the estimated parameter vector estimation is consistent if the optimal process model G (q. Parameter identification methods 41 weighting function. \·r I lk" Ikl<tlk2 ~. The estimation of the deterministic contribution G(q. 291 the rotor resistance seen at the stator side is scaled by the slip: (354) For sinusoidal signals the lockedrotor equivalent circuit is therefore changed to a nonlinear slip dependent equivalent circuit. However. I. Because the OEmodels are pseudolinear in the parameters.8) is separated from the noise contribution v(k) when using an OEmodel. ~. 9: slip dependent equivalent circuit seen at the stator side.2. according to Eq. using only stator voltage and currents.~ J Slip $'' Figure 3. If the term IIL(co )11 <t>u(co ) is large.) . This nonlinear behaviour of the motor admittance cannot be described by a linear model. IDENTIFICATION OF THE MACHINE PARAMETERS The problem with most identification methods is the fact that the rotor impedance is estimated at the stator side. then the part 0 0(0)) ~1: j = 0 0(0))  1 o(O).~j j I em .~. the optimal parameter vector 8 can only be found by means of a nonlinear optimisation technique. IJ ~. the Consequently. Hence. Thus the contribution of the noise term will be the same for all parameter vectors. H!'j __ ~ 1.
. IsR(k). 356.¥/(k .2. the stator flux and current can be translated to rotor coordinates from measured stator voltage and current in the following way: (355) (356) The rotor of the induction machine is assumed to be electrically symmetrical. which assumes the use of an ideal ZeroOrder Hold circuit.8).Ii bo bI r ~ = [_'¥sR(k 1. The parameter vector e and the regression vector ~ are then defined by: e = [1 . . The parameters of the discrete model can be written as a function of the parameters of the continuous model and the sampling time Ts using the Ztransformation. IsR(k 1)] (361) . However.8).Ii zI (358) The discrete transfer function can be derived from the continuous time transfer function Eq.7) the following rotor transfer function is found: (357) where "p" represents the Laplace operator. in rotor coordinates is described during relation between the flux steadystate and in transient situations by a linear inputoutput function. This results in the following relation: (359) with: .Ii = e bo = La 1' Rt ·'·l. since the and the current T. the output error identification is applicable only to a corresponding discrete model for the rotor transfer function (in zdomain) of the singlecage machine.and doublecage induction machines are separated and the rotor parameters are identified in rotor coordinates. thus the rotor start position can be chosen arbitrarily.42 Modelling and identification ofsingle. For the singlecage rotor model (according to Fig.Ii (L m + La) These coefficients can be identified with the prediction error method. G(z) = B( z) = bo+ ht Z 1 F( z) 1+ . If the stator resistance Rs and rotor angle p s are known. 'f1. 2.m (360) ht = Lm + .
fi) Lm For a doublecage rotor as discussed in Chap.Chapter 3. it is convenient to combine the components of the space vectors in a complex representation. 2 the continuoustime flux current relation in rotor coordinates is found to be: (365) For model orders ~ 2. instead of developing exact (but cumbersome) Ztransformations.zl P=r 1 s +z I (366) leads to satisfying results. there are several ways to derive an approximative discrete transfer function from the continuoustime model description. Parameter identification methods 43 where: (362) (363) As it will be explained later. By substituting then Eq. 365 into Eq. 8) = bO+qzl +~z2 1+fizl+f2z2 (368) . If the sampling period ~ is short enough compared to the system time constants. Tustin'stransformation defined by 2 1. 360) in the following way: L = m q +bofi 1+ fi ~ (364) R~ = log(.8) has the general form for the rotor circuit is given by: 6(z. 364 one gets (367) where G(z. The physical machine parameters of the continuous model can then be determined using the unique inverse transformation on the estimated discrete parameters (Eq.
OFFLINE DATA PREPROCESSING When using an inverter. 2. 8) _ b0 + UJ  Z I 1 + fi Z  I + uz Z 2 + fz Z  h_ 2 ( Tustin ) G A ( P  ) _ Wo + WI P + W2 P 2 1 + VI P + V2 P 2 (369) However. 365. can be derived using the following unique transformation: (370a) (370b) (370c) (370d) (370e) (370f) These continuous machine parameters can be used simulation model discussed in Chap. where the quality of the parameters is dependent of the used transformation. III the doublecage machine 3.e. 1.and doublecage induction machines The coefficients of the transfer function Eq. which results in: A G ( Z.44 Modelling and identification ofsingle. the stator voltage and current will contain one dominant frequency. As a result of the transformation to rotor coordinates the frequency spectrum is shifted by the mechanical velocity 0) m = Ps as follows: (371) The most dominant frequency in rotor coordinates is the slip frequency O)slip = 0)0 O)m' The slip frequency is dependent of the load torque M 1oad ' In steadystate the load torque is equal to the machine torque. With the estimated continuous transfer function the continuous doublecage machine parameters.2.. After identification.5. Eq. such as PWMVSI. Under noload condition the slip frequency is . matrixconverter. i. the estimated discrete time model is transformed again to a continuous transfer function. cycloconverter. 368 can be identified with the DEmethod. using the Tustin'stransformation. it should be clear that the transformation from discrete to continuous time will always be an approximation. the fundamental supply voltage frequency 0) 0 and a large number of switching harmonics.
• noise reduction. due to cross talk between cables . • offset correction. To avoid aliasing the continuous signals must be filtered with a continuous antialiasing filter before the . IS S (372) (373) In the equations above. ·s2 +} Is (375) (376) The procedure of deriving the flux in rotor coordinates is sensitive to offset errors. • spikes.Chapter 3. the components of the two dimensional space vectors and 'SI] ~s = [:. • high frequency noise. • peak shaving (clipping). Due to the fact that the machine is driven by an inverter. u:. the measured voltage and current will have many different frequency components. As mentioned before. current S ~s and rotor position p s. Therefore offset must correctly be compensated and integration has to be accurate. Parameter identification methods 45 normally very low and because the data set must contain at least one period of the rotor frequency the data set must be very long.ipS) . The signals are usually disturbed by: • drift and offset. because offset causes drift in the integration. due to sensors and AD conversion. low pass filtering. The measured stator voltages and currents can not be directly used in the identification algorithm. The stator current and flux are derived. the proposed identification method [Gort '94] is based on the and current ~r in rotor coordinates. using the following equations: IR = e(. An important data prereconstruction of the flux processing task is thus the reconstruction of these signals from measured stator voltage \iJ. thus low frequency disturbances. to make the data suitable for identification purposes: • trend determination and correction. The preprocessing of the collected data set involves the following processing steps.2 (374) have been represented as complex numbers defined as: s_ Is  ·sl Is . For identification it is therefore preferable that the machine operates under load condition with higher slip frequencies (12 Hz).
The discrete Fourier transformation will be performed on this stator flux derivative and stator current The highest observable frequency component in the data set is the Nyquist frequency fnyq : I fny q=2T (381) s q. the derivative of the stator flux tp. In steadystate the electrical signals are periodic and the data preprocessing can be performed in the frequency domain.and doublecage induction machines signals are converted to digital signals.. k=l (382) .J s S .. The spectra of the flux derivative and current in rotor coordinates is calculated in the following way: m <I> [s. and is given by: I1f = _1_ = m~ fa Np (379) Next. I/.(n/1f)= '" IS(kT)ej2nnMkT L.46 Modelling and identification ofsingle. The start position can be chosen arbitrarily if the machine is symmetrical. which is assumed throughout this work. The number of full periods N p of the fundamental frequency component in the data set is determined as follows: u: u: fo N p =N Is =NTsi( +0 N p eN (377) The data set is now reduced to N p whole periods with a length of m samples. The fundamental component is calculated by counting the number of samples between two zero crossings of both stator voltages after lowpas filtering 1 and 2 . if the data set contains sufficient periods of the fundamental stator frequency fa.. The distance /1f between two observable frequencies is related to the total time duration of the data set. where m is found to be: m=Pfo~ N (378) The new data set is denoted as 2 m .. the measured current If (k~) and the measured rotor position p S (k~) or velocity pS ( k~ ). The N measured data points are presented in the data set 2 N' The data set contains the digitised measured voltage uf (k~ ). If the mechanical velocity is measured the position can be derived by discrete integration. is calculated as follows: (380) In this expression the stator resistance is used. First the data is clipped to reduce the effect of outliers (spikes).\ . The stator resistance is however easy measurable and therefore presumed to be known.
Parameter identification methods 47 <I>1jJ! (n~f) = L4'f(k~)ej21tnNkTs k=! m (383) m m with: .. The following criteria is used: (386) The stator flux reconstruction can be accurately perfonned in the frequency domain.Chapter 3. Offset compensation is done by removing the low frequency part of the spectrum. <I>(i~f) = 0 for . • stator flux reconstruction. • offset compensation. 1/ and \fI.fband 2 '~f 1\ fband Ii EZ} (385) Noise reduction is done by removing the frequency components with a small amplitude relative to the amplitude of the fundamental component. <I>(i~f) = 0 for i E{m +1. All frequencies below fojJset are removed by setting the spectrum to zero.+ 1 ~ n ~ 2 2 The following data preprocessing steps are perfonned on these flux and current spectra. • low pass filtering.\' for iE{m+1. • noise reduction.¥s(i~f)= J27tl~f·' . . <I>ljJs(i~f) .I I' ~f ~f z} m Af'2 (384) Low pass filtering to remove the high frequency components is done by setting all frequencies above fband to zero.mliEZ 2 2 i:t=O} (387) Another advantage of integrating in the frequency domain is that no initial condition has to be defined. 1E {foffset . to avoid phase shift between the two signals. Integration in the frequency domain is equal to multiplying the spectrum with jm  ! _! j21tntij' resu I" tmg ill . I.foffset E .. <I>. in time domain are then derived using the inverse . It is however important to perfonn all operations both on the current spectrum and the spectrum of the flux derivative. The signals Fourier transfonnation.
I. An optimisation method used in this study is the NewtonRaphson algorithm. 3. This is however not the case for the output error models. Thus the optimal solution must be obtained with an iterative search (numerical optimisation). is updated every iteration using the first and second derivative J' and J" of the lossfunction J (Eq. 351) with respect to the parameter vector 8. given by: (392) The estimated parameter vector a(i). after i iterations.) . ).6.jpS (kT.2. The input signals for identification of the rotor circuit.and doublecage induction machines m (388) m (389) with 1 ~ k ~ m.48 Modelling and identification ofsingle. OFFLINE IDENTIFICATION ALGORITHM The optimal estimation of the parameter vector can only be found analytically if the predicted output is linear in 8. (kTs ) (390) These preprocessed values are collected in the preprocessed data set ZN defined as: (391) In order to perform the identification only the real part (with coordinate Rl) or the imaginary part (with coordinate R2) of the data set is enough. I:(kTs ) = ejps(kT. a . the stator flux and stator current in rotor coordinates are eventually found by rotating the complex values in the complex plane.(kTs ) 'f!sR (kT ) s = e. because there will be no difference in the identification results if the machine is symmetrical. Because an offline identification method is used the information of the whole dataset is used for every iteration. 'f!.
the prediction errors will mainly determine a noise term. This approximation is used in the GaussNewton method.tPsR1(klk) R1 X(k.m".8) has to be known.8)] (396) Close to the optimal parameter vector value. Parameter identification methods 49 The term [f'(e(i))r f(e(i)) 1 gives the direction of the parameter change. . 370. The estimated continuous parameter vector is used to derive the continuous machine parameters according to Eq. which returns a discrete parameter vector which minimises the lossfunction (Eq.8) can be written as follows: (398) with the regression vector $(k.8) 2N k=1 N (394) (395) ~ (X T (k. using the Tustin'stransformation. Using the MATLAB System Identification Toolbox the output error model is estimated with the Mfile "OE.8) = ~ \Ils (k. This discrete parameter vector is then transformed in a continuous parameter vector. Using the lossfunction Eq.8) For the second derivative of the lossfunction this yields: J" (8) = :fa J' (8) = _1 I[x(k. The prediction errors are therefore independent and the last term of Eq. for the iterative search.Chapter 3. With the variable a the step size will be controlled.8) = ~E(k. For the output error approach the gradient X(k.8)x T (k. 351). the gradient of the prediction error X(k.8) defined as: The realisation of the preprocessing and identification algorithm is done with the mathematical program "MATLAB".8))E(k. With the rewritten search direction the algorithm becomes: (397) Thus. 395 will become zero. 351 the derivatives are written as: (393) with: E(klk) = 'PsR1(k).
u(l) ylt) Y(k)~rJ + 'lk) T. .50 Modelling and identification ofsingle. as depicted in Fig.and doublecage induction machines The inputs of the Mfile are the preprocessed data set ZN and the desired model order of numerator and denominator.10. '~~/~~/ Offline estimation Figure 3. the filtered output error is used.37: Output Error identification scheme For identification purposes. 3. The Mfiles used for preprocessing and identification are given in Appendix G. For linear 8180 (single input single output) systems this is equivalent to filtering the input and output with this filter.
941 0. SIMULATION RESULTS To validate the identification methods discussed in Chap.039 0. the two methods are tested on simulation models.406 mH For identification with the twojluxmodel method (TFMmethod) the machines are fed by sinusoidal voltage supply. because only in this case the parameters are known. Table 4. The method is therefore performed on a dataset derived form an inverter fed machine model. The per unit reference values used in the simulations are denoted in Table 4. MACHINE MODELS In Chap.179 0.1.212 n 0. Simulation results 51 4. The doublecage machine model parameters are given in Table 4.1 the parameters of the used singlecage machine model are given.012 mH 2. Rk Rs value [pu] [si] 3 33. 3.2: parameters ofthe DCaSM parameter value [si] 33.141 n 0.136 0. with sufficient harmonic content.58 0.06 Lm La .3. 4.06 Table 4. L Rs Rk1 Rk2 n n a2 5.and doublecage models are used for the validation of the methods. Using simulation models is the only way to validate the methods.769 0. 2. Both single. 2 a dynamic machine model (doublecage) is presented.52 mH 0.481 0.718 n 0.75 mH 6.09 mH 2.04 0. The simulation model is implemented in the simulation program IlPSI/c ll • To test the identification methods the parameters of a singlecage simulation model (SCaSM) and a doublecage simulation model (DCaSM) are estimated.Chapter 4.2. The inverter used for the simulations is described in Sec. In case of the output error method (OEmethod) it is necessary to use a power supply. .212 [pu] 2.5.1: parameters ofthe SCaSM parameter Lm La . In table 4. . .
3.0402 Rk A' n n Using the optimised estimation procedure still a few iteration steps are needed to get a good estimation of main inductance Lm and the leakage inductance La' Estimation of the rotor resistance Ric. • voltage step = 100% ~ 80% of rated voltage.25 mH 4. The stator resistanceRs is assumed to be known and no saturation effects are included in the models.52 mH 0. 4.3: per unit reference values Reference Voltage Current Frequency Resistance Inductance Value 311 V 88A 50Hz 3.75 mH 6.7 parameter A SCaSM [si] 33. given in Table 4. • stator voltage amplitude = 311 V. • stator frequency = 40 Hz. singlecage estimation ofthe SCaSM (Rs = 0.and doublecage induction machines Table 4.04 Lm La estimation [pu] [si] 2.141 [pu] 3 0. .4: TFMmethod. • load condition = 50% of rated torque.3. The method is performed applying the following test conditions: • simulation time step 100f.142 0. The identification method and the machine models are implemented in the simulation program "PSI/c".66 mH 6.lS. is more time consuming. The program is given in Appendix E 1. using the stator voltage step procedure.9 0. 3.1.461 mH 0.53 n 11.58 0.4.212 n) error [%] 3 0. SINGLECAGE ESTIMATION Performing the optimised TFMmethod on the SCaSM resulted after some iterations in the parameter estimations.99 33.1) on the simulation models.574 0. Table 4. TWOFLUXMODEL METHOD To test the TFMmethod (Sec.52 Modelling and identification ofsingle. In the simulation the fluxdeviation between the two estimated fluxvalues can be minimised very accurately. however more iteration steps will then be necessary.
5. Rk ~ n This parameter estimation is performed with sinusoidal voltage supply.07 0. time [s] 0.5. The parameters of the estimated singlecage model are found using the procedure discussed in Sec.02 0.5: TFMmethod. In Sec. the TFMmethod was tested on the doublecage simulation model (Table 4.0\ 0.08 mH 6.565 0.08 0. To test the usefulness of such an approximation.1: applied twophase stator voltages to test the TFMmethod at PWMinverter supply. However the method can also be applied to a inverterfed machine.06 0. For the simulations the following inverter properties are applied: • fundamental frequency /0 = 40 Hz .2).09 0. . SKIN EFFECT In some situations it can be found useful to approximate a machine with significant skineffect by a singlecage model.105 [pu] 2.Chapter 4. The resulting parameters are given in Table 4. In Fig 4. To validate the estimated parameters the behaviour of the estimated and simulation model in their normal operation range is studied. Simulation results 53 4. The three phase inverter voltages are transformed to the twophase representation and applied to the machine model and TFMmethod. are depicted. • DCvoltage U de = 538 V .2. Thus a singlecage model is matched to a higher order system (under modelling).3.355 mH 0. Table 4. in stator coordinates s1 and s2.03 0.1.04 0.05 0. the applied stator voltages. 2.615 0.' time fsl Figure 4. the inverter model has been discussed. singlecage estimation ofthe sinusoidalfed DCaSM (Rs 0.2120) parameter = value [si] 29. 3. • Pulse number pn== 3.030 L m La.
613 0. The responses of both estimated . As a result of the switching harmonics the flux difference ~\f'~. the characteristics are almost equal. has a high harmonic content.511 0. This is due to the effect of the higher harmonics on the doublecage. The steadystate and dynamic behaviour of both estimated singlecage model results are compared with the doublecage reference model to study the usefulness of this singlecage approximation. at sinusoidal voltage supply. at small slip frequencies.3 the dynamic response. In Fig 4. The resulting estimated singlecage parameters are given in Table 4.2 the steadystate speed/torque characteristic of the DCaSM and the estimated singlecage models are given. In this case the machine models where fed with a sinusoidal voltage. is given.6: TFMmethod.54 Modelling and identification ofsingle. necessary for tuning the model parameters. It shows that only in the normal operation range of the machine. This is done by changing the DCvoltage between 10080 % of the rated voltage.6. as a result of a load change. Table 4. singlecage estimation ofthe inverter fed DCaSM (Rs = 0.737mH 0.106 [pu] 2. therefore the estimated fluxdeviation is filtered with a 4 th order Butterworth filter. In Fig 4.2: steadystate speed/torque characteristic ofthe doublecage machine (1). For accurate estimation the DCcomponent of this flux must be tuned to zero.41 mH 5.and doublecage induction machines To estimate the cage resistance R~ a voltage step has to be applied.030 Lm Lcr Rk AI A n It is clear that the estimated leakage inductance L is considerable different in both cr estimations.2120) parameter A value [si] 29. the estimated singlecage machine using sinusoidal voltages (2) and estimated singlecage using PWMsupply (3). ~ctor speed [rpm] rotor speed [rpm] Figure 4. with cutofffrequency Ie = 50Hz.
6. If we compare Fig.7 0. . In Fig.? 0.8 o 0. the dynamic responses of the DCaSM and the estimated singlecage models are compared. in case the machine is fed by an voltage or current source inverter.4 time 0.4 it shows that the sinusoidal estimated singlecage . Figure 4. Simulation results 55 singlecage models almost match the response of the doublecage machine.4 shows that the responses.4: dynamic response at inverter supply (pn=3). Therefore."1 lAne O. see Sec.cor ~ ~ 00 '" 01 0 . A more significant difference between estimated models and the doublecage machine model will be found in the machine losses and torque ripples.Chapter 4. the machine models are fed by an PWMinverter (pulsenumber pn=3).6 0. the responses at a load change of 40% of the rated torque are given. estimated singlecage machine fed with sinusoidal voltage (2) and estimated singlecage machine fed with PWMvoltage (3).0. are almost equal. ofthe doublecage reference machine (1). 4.8 [sl lil""nC [51 Figure 4.3 0. I .6 0.2 0.8 [5] o o.3: dynamic response at sinusoidal supply ofthe doublecage reference machine (1).2 0.3 0. To study the influence of an inverter supply.6 07 0.4 0. T 6 o o.4 0.5 0. 2. 4.5 0. 0.2 0. estimated singlecage machine fed with sinusoidal voltage (2) and estimated singlecage machine fed with PWMvoltage (3).3 and 4.8 lime [s] Figure 4.G 0. The small difference in the responses of the estimated models is due to the difference in the leakage inductance of both estimated models.1 0.4. except for the torque and current ripple.
56 Modelling and identification ofsingle. 4. .5: Bodediagram ofthe doublecage machine (1). In Fig.and doublecage induction machines model has a slightly better response when fed with sinusoidalvoltage. the PWM estimated singlecage model has a better fit when using the PWMinverter voltage.cage using PWMsupply (3)..5 the Bodeplot of the doublecage rotor transfer function is compared with those of the two estimated singlecage transfer functions. This estimated model can be used for describing the dominant time constant of the machine. 10 n 10' 10' 10 3 f nYI) 10'" frequency [Hz] Figure 4. The estimation performed with a PWMinverter supply shows to be less accurate. the estimated singlecage machine using sinusoidal voltages (2) and estimated single.3 10:! f'equency [Hz J 1f 2" " '" 0 "' J lO. but as expected the singlecage model is not able to describe the frequency behaviour above 10Hz in case of the sinusoidal supply estimation. The Bodeplots shows a good lowfrequency fit. ~] Dr (~ J~~10. it shows that using the twofluxmodel method a machine with significant skineffect can be approximated by a singlecage model. However.J i 10.7 10. Another way to validate the estimated parameters is to compare the Bodeplot of the simulatedrotor transfer function and estimatedrotor transfer function.
Simulation results 57 4. related to the Rlor R2axis. stator current and mechanical rotor angle are derived using a machine model at a simulation time step of T = 100 IJS . OUTPUT ERROR METHOD To test the OEmethod on the single.4. The used inverter properties are given in Table 4. The offline OEmethod is applied to data related to the Rlrotor axis. The mechanical load M 10ad is hold constant at about 50% of the rated torque. for estimation of the singlecage parameters (PE = 2). stator current I. From the simulated stator voltage 'PsR U. Therefore the low frequency fit should be emphasised by means of the prefilter L(q). If however no precautions are taken. Therefore the stator voltage and currents are filtered with a 4 th order Butterworth filter with a cutoff frequency set to Ie = 1.. The data is stored with a sample frequency of Is = 5 kHz. In the simulation models the rotor circuits in the rotoraxis Rl and R2 are equal. Therefore. aliasing is likely to occur. 2.and doublecage machine models. the stator flux and stator current in rotor coordinates are reconstructed. Table 4. which results in an estimated discrete rotor transfer function G(q. I: 4. fundamental frequency 10 DClink voltage Ude Pulse number pn Sample frequency Is total measurement time number 01 stator periods 40Hz 538 V 3 5 kHz 2.7: inverter properties.f nyq < f < f nyq' Thus.1.5 kHz and the dataset is stored after down sampling from 10 kHz to 5 kHz. e) .5 is applied to create the stator voltage supply for the machine models. the inverter model as described in Sec. If the input signal is a single sinusoidal signal only two parameters can be estimated from amplitude and phase information. SINGLECAGE ESTIMATION The main interest is to estimate the machine parameters which describe the machine at the fundamental frequency.7.5 s 99 For identification purposes the datasets containing stator voltage. and mechanical rotor angle pS. A signal is called persistently exciting (PE) of order n if the spectrum is different from zero in at least n points in the interval . For simulations a RungaKutta 4 integration method is applied.Chapter 4. estimation results will be independent of the choice of data.4. . besides the fundamental component at least one higher harmonic should be present. To estimate all machine parameters the input signal (current I:) must be sufficiently exciting.
The filter L(q) is used to emphasise the fundamental component plus one harmonic. The spectrum of reconstructed stator current and flux in rotor coordinates is given in Fig.J oo''.6.l. The spectrum contains peaks at the slip frequency Islip and at the switching harmonics in rotor coordinates at 240 ± Islip and 480 ± Islip (40 Hz fundamental frequency).:l I 200 7 7 50 11 7 00'1 L 5 L.5.m". Looking at the harmonic content of the current and flux in rotor coordinates gives an indication for the choice of the filter L( q). 1 ~ ~ lOJ .iJ 00 s o o S frequency [Hz] o Y'''F='=~. are depicted._~. 00 '~~~ o lillIe Is I 2 lime Figure 4.2. For the singlecage identification three parameters have to be identified: LCJ' Lm and R~.58 Modelling and identification ofsingle.7 the flux and current in rotor coordinate Rl.8. necessary for identification. The used dataset with a total measurement time of 2. Therefore. In Fig. using the Matlab mfile "PRE_PROC. 4. Appendix 01. .L'. 3. .7: stator current 1: lsi 1 andflux '¥sRI in rotor coordinate r 1.. . Using only one single sinusoidal voltage component. The stator flux '¥sR and stator current in rotor coordinates are reconstructed using the offline method discussed in Sec. enables the estimation of two parameters from amplitude and phase information. the stator resistance is assumed to be known..and doublecage induction machines For identification the singlecage machine model is fed with a PWMvoltage supply. the harmonic content of the applied stator voltage and resulting stator current is given. 4.. 00 .. 4. In Fig. I: Il: • . twosignal frequencies are needed to estimate the desired singlecage parameters.6: harmonic content ofthe applied stator voltage and resulting stator current uf (PWM with np =3) If ' using the SCaSM.J 5 I 11 13 19 o 40 Hz 500 frequency '000 1500 [HZ] Figure 4.5 seconds contains 12500 samples (N=12500).L 3 10 liz o.
141 n 0.52 mR 0. ~ '"' ~ 500 frequency 0 0 51 7 II 13 500 1000 1500 [HZ] Figure 4.9 the outputerror between the reconstructed stator flux tpRI s = f(UsRI  1sRl R)dt s (41) and the estimated flux (42) is shown. .53 mR 2.58 0.2120) parameter Lm La Rk . From the resulting discrete parameters the physical parameters are derived.580 0.8. using the inverse Ztransformation according to Eq. The filtered data set is used as output (flux input for the OEidentification routine "PAR_EST.m" in the program "MATLAB" (Appendix G2). \fIt Table 4. The reconstructed flux is derived by integration in the frequency domain using the discussed offline method. Filtering will cause phase shift. simulation [si] [pu] 33.75 mR 3 6.03 0. Therefore.527mR 0. With the offline method an OEmodel is used to estimate the discrete transfer function between the reconstructed flux and current. 4.Chapter 4.e) with the unfiltered measured stator current as input signal.1414 n error [%] 0. The used prefilter is a fourthorder Butterworth filter. The resulting continuous time singlecage parameters are given in Table 4.5 '' ~ rn 51 III 13 I 1000 1500 ".981 6.04 estimation [pu] [si] 33. singlecage estimation 01the SCaSM prefilter at 300Hz (Rs = 0. 364. The estimated stator flux is calculated using the estimated discrete transfer function G(q.> 0.65 0.8: harmonic content olstator current 1: 1 andflux 'P: frequency [HZ] 1 in rotor coordinate rl.040 0. Simulation results 59 ~J 0 I 1 7 .02 In Fig. The cutoff frequency of the applied lowpass prefilter is chosen to be Ie = 300Hz.8: DEmethod. to avoid errors due to this phase shift both input (current 1fl) and l ) are filtered with the same prefilter.
low pass prefilter at 300 Hz. ii' 50 .5) shows significant higher amplitudes of the switching components in case of the doublecage model.::. DOUBLECAGE ESTIMATION To be able to compare the identification methods. using the DCaSM . In this case the lowfrequency fit should be emphasised with the use of the prefilter L(q).9: resulting outputerror between 1) reconstructed and 2) estimated stator flux.5 1. the properties of the inverter are defined in Table 4.~ of the SCaSM (Fig..2. I > 200 . ~. Used on the SCaSM the OEestimation method results in a good estimation of the simulated machine parameters (error < 1%).~mAAAn/\lV~ ~~~ 0 0.. In Fig.5 lime Isl Figure 4. the initial value of the estimated stator flux is not correct.. "'~ a 0 1'::)00 1 LJ~ 140 Hz ! 19 ~5 29 ] 1500 500 frequency 1000 1 [HZ] Figure 4. the OEmethod is first applied to fit a singlecage estimation on the doublecage simulation model.05 2. Because. the filter has little influence on the estimation results.5 '1... the high frequency components are emphasised too much. Comparing the harmonic content of the stator current resulting from the DCaSM with the stator current I. which results in a less accurate estimation at the fundamental frequency component.10: harmonic content ofPWMsupply voltage U. the output of the transfer function needs some time to converge.7.5 I 25 lime [s] . 4. The doublecage machine model is fed with a PWMvoltage.60 Modelling and identification ofsingle. and resulting stator current I.4.. 4. "'~ I 100  7 I 11 19 25 29 .. If the cutoff frequency is chosen higher.' 500 frequency J I I :.10 the harmonic content of the stator current of the doublecage machine is given..5 ~ ~ I 0. 4. ~ OOl 0 o ~ J 0.and doublecage induction machines ~ 1:..:l a oj ''0 ULI'3 I Hz I I 1 (JOO [flz I 3. As long as the cutoff frequency of the prefilter is chosen < 500Hz.
ime rs 1 Figure 4.13: resulting prediction error.11: stator current 1: lime 1.1 1 andjlux . In Fig.lRI m .equency [1"iZ] ~ Figure 4..12: harmonic content ofreconstructed stator current \I.13 500 f a 1000 1500 frequency [Hz] . Trying to describe a system by means of a lowerorder model is called under modelling. > III ~ .1 Figure 4. Simulation results 61 After preprocessing the current and voltage the resulting current and flux \fIsR (Fig.¥:I in rotor coordinate ri. A clear effect of under modelling is that the estimated parameters depend on the weighted input spectrum.5 t. T S 1: 1 andjlux rotor coord' mate r 1. 4. . I: 2 a 2 lime 1.. In practice the continuoustime system to be identified is never completely described by the chosen model.. o 0. the prefilter can be used to shape the modelfit in a relevant frequency region. . If the input signal is sufficiently exciting..Chapter 4. An optimal estimation can be found by looking at the resulting outputerror between the reconstructed and estimated flux \fIsR1 . Usually the estimated model is of lower order than the real system.5 lime l!l] 1 0 2..11) in rotor coordinates are applied in the DEidentification method. when applying the unfiltered current to the estimated singlecage rotor transfer function. 4.12 the harmonic content of both current and flux in rotor coordinates is given. <0[' 20 0:~ '" a 5 i I"' 11 [13 I a 500 1000 1500 [ r' ~ ~ a 7 51 11 . In that case it is not possible to identify the true parameters of the process.
The desired model order can be found by increasing the order of the estimated model.2). " . which is probably a result of under modelling. m o "\ 50 1 CJ . ! " . 364. " o o 0. thereby looking at the resulting predictionerror. results in an optimal outputerror. in order to emphasis the lowfrequency fit. Due to a combination of under modelling and an extreme doublecage effect. However. 4.4 mH 0.9: DEmethod. see Fig.~~~~./ I \ / \ / r. the result is given in Table 4. the Bodeplots of the simulated and estimated continuous rotor transfer function are compared.14: Bodediagram ofthe doublecage simulation model rotor transfer function (1) and the estimated singlecage rotor transfer function (2). 4. Table 4.and doublecage induction machines Filtering the dataset with the cutoff frequency of the prefilter set equal to Ie = 100Hz.14.13 the resulting outputerror is depicted.J ~ iO2 ~' 10.equency [Hz] Figure 4.2 mH 3. in contrast to the TFMmethod. the DEmethod should be able to estimate higher order machine models.1 10 0 "" / / . If.~._~~0' . The physical parameters are derived using Eq.9. 20 . In Fig. To validate these estimated singlecage machine parameters.5 0 L_ _ iO. The estimated discrete rotor transfer function is now transformed to a continuous time approximation. as a .53 0. c .~ i _J I I iO ' 1Uo frequency 10' i 0 3 f ny'1 10" [HLJ D I'~====. like in case of the TFMmethod.30 0. estimated singlecage parameters ofthe DCaSM (lowpas filter at 100 Hz) parameter Lm La value [si] 17./ l V. It is clear that the estimated transfer function is not able to predict the high frequency behaviour correctly.62 Modelling and identification ofsingle.131 Q [pu] 1.0371 R~ It shows that the estimated main inductance is very low compared to the main inductance of the DCaSM (Table 4./ 10' 10 2 f. the OEmethod is not able to emphasise the lowfrequency fit.
The estimated continuoustime parameters are given in Table 4.180 2. 4.5 2 2.770 2. in rotor coordinates were already given in Fig. doublecage estimation ofthe DCaSM (R. which in many cases leads to satisfying results.179 0.0384 0. an optimal model order is selected.718 n 0. Following this procedure one must keep in mind that it takes one harmonic signal to identify two parameters. results in the output error given in Fig.941 0.10: OEmethod.5 time [s) Figure 4. The estimated discrete transfer function resulting from the DEroutine. 1.482 La2 5.45 0. when applying the unfiltered current as input to the estimated doublecage rotor transjer function.12.962 33. Table 4. Tustin'stransformation is an approximation of the estimated discrete transfer function.15: resulting outputerror between reconstructed (1) and estimatedjlux (2).769 0.427 mH The error introduced using Tustin'stransfonnation is studied by comparing the Bodeplots of (1): the simulated continuoustime rotor transfer function. n n 0.09 mH 2.5 1.481 Lm La .~ .15. (2) the estimated . The cutoff frequency of the prefilter L(O)) is set to Ie = 600Hz. parameter DCaSM [si] 33. 4. The ability to estimate higher order systems is tested on the doublecage reference machine (Table 4. fJ~V\/\N o o. using Tustin'stransformation Eq.34 0.406 mH 5. The stator current I:and flux 'PsR .39 Rk2 . estimation [si] [pu] 2.10.136 [pu] 2. o 0. 370..039 0.Chapter 4.73 0. 370 the continuous time machine parameters are derived.1355 = 0.021 mH 0.515 0. Therefore.2120) error [%] 0. A doublecage model has five rotor parameters which must be identified. Using Eq. at least three different exciting signals are needed.~ lime [s] (Fnnmn~Zm. is then transformed to continuous time transfer function.5 2.7189 n 0. Simulation results 63 result of a higher order estimation the predictionerror is not decreased anymore. Rkl .2).33 mH 0.012 mH 2. Applying the filtered dataset to a secondorder model estimation with the DEidentification method.":.
This estimated discrete transfer function is therefore not able to describe the real continuous rotor transfer function accurately for frequencies just below the Nyquist frequency. From Eq. discrete estimation (2) and transformed (Tustin) continuoustime estimation (3). The low frequency gain K DC is defined mainly by the main inductance Lm .~=~/7TI " " CL "' 10. . The results show that the DEmethod is able to estimate higher order models.16. 4. 10] 10 1 1DU 10' 10:'> r.64 Modelling and identification ofsingle.and doublecage induction machines discrete transfer function and (3) the transformed estimated continuoustime transfer function.3 50~·~~~~~ 10.1~ f nyq 10 4 Figure 4. and that using Tustin'stransformation leads to a accurate discrete to continuous transformation of the estimated doublecage model. the estimated discrete transfer function will always have zerophase on the Nyquist frequency. like a doublecage. The leakage inductance Lfj dominates the rotor transfer function in the high frequency region K high .eqency [Hz) 0.. as depicted in Fig. increasing the sample frequency results in a more accurate estimation of the leakage inductance Lfj.16: Bodeplot ofthe rotor transfer function: simulation (1).2 v v0 100 10 1 10J freqency [HzJ ~_. Due to the chosen structure. because the continuous transfer function has no zerophase at the Nyquist frequency. 364 it follows that: K DC = Lim K high CJ)~O G(ro) = L + Lm ~ Lm fj (43) (44) = Lim CJ)~0Cl G(ro) = Lfj Thus.
Using the TFMmethod the machine is identified as being a singlecage machine. according to Appendix B. ESTIMATION OF REAL MACHINE PARAMETERS In this chapter the parameters of a Heemaf llkW SKAmachine (Appendix C) are estimated. J: measurement ofthe threephase voltages and currents The stator terminal voltages and currents are measured using LEM's (transfoshunts) as depicted in Fig. The system has three threephase voltage and current measurements and was.1. For the realisation of this measurement an existing system is used (BRAMAMATIC. 5.1) or they are stored to create the necessary dataset that an be to applied in the DEmethod (Sec. The measured three phase voltages and currents are fed into a DSPsystem. The twophase representation of voltage and current serves as input to the TFMmethod (Sec.1. The system is elaborately discussed in the thesis of [lans '93]. With the DEmethod the effect of a second order model identification is studied.2). EM 1764). . In this DSPsystem the measured values are scaled and transformed to a twophase representation. for this purpose. m. 3. Real machine parameters 65 5. MEASUREMENTS For both identification methods. According to the speed/torque curve this is an asynchronous machine with significant skineffect.Chapter 5. VOLTAGE CURRENT IOOA == IV Figure 5. 5. The DSPsystem was already available and is build up around a TM320c30 processor. 3. extended with a direct output of the desired voltage and current measurements. The voltages are observed with respect to an artificial star node. the threephase voltages and currents have to be measured.
for stability reasons the VIImodel is realised in an other way as depicted in Fig. 5.. The input range of the AIDconverter is 10 to IOV.2 the realised configuration is depicted. .1. For the digital board the I/O routines are defined in the program "P09. .2.1. 5. 5. The input/output routines for the analogue board are defined in the DSPprogram "P06. I I ·"'sl Is . The two fluxmodels have been implemented in a DSPprogram given in Appendix Fl.and doublecage induction machines The measured analogue values are transfonned to a digital value.~r'+'11 "'k  . k ~ + A+ .2.' . After a scaling correction this equals an integer value between 2048 and 2048. The measured voltages and currents are transfonned to digital values and scaled to be used in the DSPsystem.~"~ ..1 Jlz048 1. (Ii. A thorough description of this VIImodel is given in [lans '93]. However. To avoid this integration drift an extended VIImodel with feedback is used.!'~vl _ Is r. I rA' ' Figure 5. La and Lm are fed into the DSPsystem via an AIDconverter.asm". TwOFLUXMODEL METHOD To apply the TFMmethod on the machine. Using the references given in Appendix C1. .<1 C P ~  J. . Table 5. using a 12 bits AIDconverter. For the TFMmethod all measured values and system parameters are translated to a Per Vnit system. In the I/<pmodel no drift problems will occur.~ rk 1. This way the parameters can be tuned online..1: import scalingfactors used for the TFMmethod scimp V I value 2. sl .:~ ~J v~~I~:r. . To be able to use the values in the DSPsystem. \.66 Modelling and identification ofsingle. In Fig. the two fluxmodels are implemented in a DSPsystem. .+:~ ~~:~ .. as depicted in Fig. this lead to the scaling factors given in Table 5. scaling will be necessary.asm". 0k ~ ~.9J1z048 pu pu With the use of four DCvoltage sources the estimated machine parameters Rs' R~.\ La ~ Is ' Is ' 9   .2: applied VIImodel in the TFMmethod . 3. Due to measurement noise the output of an integrator without feedback will drift away.
Changing the excitation of the DCgenerator and synchronous generator.. Because a voltage with variable frequency and amplitude is needed a WardLeonard configuration had to be used. using the BRAMAMATIC. Output of the TFMmethod is the flux difference i1t¥k' Via the AIDboard this analogue signal can be measured with a voltmeter.J [ TMS320c30 _ I I Personal com puler ~ Figure 5. the applied system configuration is given. The excitation of the DCgenerator is variable... A change in flux level results in changing machine parameters as a result of saturation.~ '. resulting in a variable DCvoltage. Via an AIDconverter the measured values are fed into the DSPsystem. In the DSPsystem the 3phase voltages and currents are transformed to a 2phase representation which are the inputs of the two fluxmodels.' .3: configuration usedfor identification with sinusoidal voltages and currents The per phase stator voltages and currents are measured. This flux deviation can be made equal to zero by tuning the model parameters under different operation conditions. I I I LOAD I I I DSPSYSlem i : I ~~. For correct use of the TFM identification method. this will not be the case if no saturation .. This can be explained as follows: using this configuration the flux level can not be hold at a constant value when changing form noload to load condition. which drives a synchronous generator. The load of the machine is created with a 15kW DCmachine.. This is important. This voltage is used to feed a DCmotor. 5. using the above configuration.: Three ph8!i1C I I WardLeonard syslem vDllsle I with variable frequency I Bud amplitude Grid I I I ~~ .3. First a synchronous machine is used to drive a DCgenerator. The system is operated in the following way. The identification method is performed using a sinusoidal voltage supply. Real machine parameters 67 i . used as generator with constant field excitation... However. The machine to be identified is then fed with this variable voltage. it is important not to drive the machine far into saturation. In Fig. results in a three phase voltage with variable amplitude and frequency. because otherwise the parameter estimation will not converge.Chapter 5.
047 0.4mH 43mH 0.1590 R s La Lm R~ ~ The estimation of the rotor resistance.48%). (U. 57): (51) Where <i>r equals the slip frequency of the machine.080 0. At noload the rotor current will be small and the stator current will be almost equal to the magnetising current. f" = 40Hz) parameter Value [pu] 0.48 0.1.013 pu 0.026 [si] 0.2380 4. The measured stator resistance.14 0. If the slip frequency is known the rotor resistance can be derived. Thus to be able to use the method correctly one needs to know where saturation starts. applying the TFMmethod on a v/fcontrolled machine).and doublecage induction machines occurs or if the flux can be hold at a constant value (e.3.12 0.68 Modelling and identification ofsingle.g. The estimation procedure. as described before. is not very easy in the applied configuration because it is not possible to make a good stepwise voltage change by means of changing the rotor excitation of the synchronous generator. the estimated main inductance L . 3. Using the two flux models. estimated singlecage parameters (cold) ofthe HeemafSKAmachine at sinusoidal supply.352 0.2: TFMmethod.039 0. the concentrated leakage inductance La and the m estimated rotor resistanceR~ in cold conditions are given in Table 5. Another way to estimate R~ is to use (Eq.428 0.170 . At small flux level (small stator voltage amplitude) no saturation occurs and the relation between voltage and current will be proportional. which can easily be measured with an ohmmeter.. Table 5. A first indication of the saturation region can be found by measuring stator voltage and current at constant frequency.12%) and at load (slip 0. ofthe Heemaf llkW SKAmachine is [Hz] Slip [%] f([pu] I~~I [pu] 0.2.3: rotor resistance estimation (cold).22 2.032 0. of the TFMmethod is described in Sec. The mechanical speed of the machine is measured with a tachometer. the results being given in Table 5. == IOOVrrns. In this case the stator voltage is proportional with the machine flux. First the stator resistance is determined.029 pu Rk A' 40 40 0. The estimation of the rotor resistance was performed at noload (slip 0. both cage flux 'Pk' and current i~w are estimated. Table 5. Identification of the machine parameters is performed with a stator frequency is = 40Hz and a per phase voltage Us == 100 Vrms.
if the mechanical speed can be measured the last discussed method is easier to perform. In this situation whereby the machine flux is not controlled.16 leakage flux has influence on the total leakage inductance La and partly in the main inductance Lm. = 0.8 mH 0. which is typical for skin effect.6 mH 1. which is caused by the saturation effect in the machine. the TFMmethod must be performed on the machine working in the unsaturated region. see Appendix C2.'s(216 to 219) the singlecage parameters. aluminium and insulation.48% the rotor resistance is about equal to the value estimated in Table 5.Chapter 5.2. Consequently. of Fig. This effect will be discussed further on in this report. 2. it is usually assumed that most of the leakage flux travels through air and is therefore not affected by magnetic saturation. To be able to estimate the saturation effect in the machine.29 5. Because almost all machines are designed to make optimal use of the iron at rated voltage the machine will be working in saturation. However. To optimise the machine's powertoweight ratio.48 0. The estimated and calculated singlecage parameters are given in Table 5. except the stator resistance. Nevertheless. The calculated machine parameters according to Appendix C2 are derived using rated voltage. The magnetising inductance Lh is therefore in general considerably nonlinear around the operating point. 2.22 4. calculation [si] [pu] 29. Table 5.4. Due to this assumption a small error will be .15 0.7 are all dependent of the transformation factor k.1637 Q 0. The saturation effect will be estimated using the TFMmethod. depicted in Fig. In the following section the saturation effects will be further studied. Real machine parameters 69 It's clear that the rotor resistance is frequency dependent.027 TFMestimation [pu] [si] 43mH 2.17 Q 0. The singlecage machine parameters can also be calculated using the measured voltages and currents in load and noload tests.4mH 0. SATURATION EFFECT A physical asynchronous machine is built out of iron. both methods show however similar values for the rotor resistance estimation.028 The results show a large deviation in the estimated main inductance.4: estimated and calculated singlecage parameters (R. At a slip of 0. Which implies that the parameters are dependent of the magnetising inductance and some rotor leakage inductance. the parameters Rs' R~ and La are assumed to be constant and the saturation effect of the magnetising inductance Lh is thought to be concentrated in the main inductance Lm . any magnetic saturation at rated flux density is usually the case. copper. According to Eq. In the model.2380) parameter Lm La Rk .
and the main inductance of the machine L m decreases. 2. 2. 5. This results in an m estimated flux (i)'P~ A = L · i~ which will be larger than the "real" flux value (u)'P~ and m A therefore ~~k < O.4 0 . Because R~ and La are thought to be independent of saturation. When the stator voltage is increased at a constant frequency. • The use of sinusoidal voltage sources (although not necessery) brings additional problems for this identification method because variable amplitude and frequency are required. .3 0. III o D.7 0 j 04 0 ~ D.4 has to be modelled by a function.9 'y~1 fpuj Figure 5. which can be used in the machine model already presented in Chap.4: estimated saturation effect on the main inductance The fluxcurrent relation depicted in Fig.5 n7 n. the relation between the "cage" flux \f'~ and the "magnetising" current i~ is given by Lm • Thus for modelling saturation effects the constant L has to be replaced by the estimated currentflux relation.. Looking at Fig.4.70 Modelling and identification ofsingle.1. the flux in the machine is changed proportionally. the estimated value L in the Ijcrmodel will be incorrect. In the machine model described in Chap.G 0 I 0./ [}.'s (242 to 247). 5. If saturation is reached. The saturation effect is observed with the use of the two flux models.and doublecage induction machines made because R~ and La are. 5. REMARKS Advantages of the TFMmethod: • only terminal voltage and current measurements • no rotor position sensor needed • good fit for low frequency components Disadvantages: • The two fluxmodel method can only be used for estimation of singlecage machine parameters. reveals that four machines are needed to create the desired stator voltage.1 0. to some extend dependent of the changes in the magnetising inductance L h according to Eq.<> 0.R 0. the deviation in ~'ftk must be adjusted by decreasing the value of Lm • The measured estimated saturation curve is given in Fig. this curve being obtained through measurements.' 0.9 1y~1 [pu] o 0.8 0.
62 Hz. In Table 5. rot. This digital module is a simple counter. OUTPUT ERROR MEmOD To perform the OEmethod the SKAmachine is fed by an invertervoltage. nr. sneed reversal Figure 5.or angle 21T I 01'""'""I I I I. The fimdamental output voltage component is controlled with this voltage/frequency control unit. Therefore the measured threephase voltages and currents are transformed into a twophase representation in the DSPsystem. To avoid aliasing the voltages and currents are prefiltered with an analogue 2nd order lowpass Butterworth filter with cutoff frequency Ie = 1.ASM". If .3.Chapter 5. using a sample frequency of Is = 10kHz. To apply the OutputError method a dataset of measured twophase voltages and currents and the rotor angular position are needed. The DCvoltage is about 539V.5: rotor angle representation The measured values of voltage and current must be scaled to the real voltage and current values. In the DSPsystem this integer value is scaled to an angle between 0 and 21t (Fig. see Appendix F2.1. uf. that counts the flanks of the encoder pulses.5).6/i 2048 V 10~ 2048 A In the DSPprogram these scaling factors are placed in the file IP06. The rotor position is measured using a 1000 pulse encoder and a digital module.5 kHz.3. DATA ACQUISITION The terminal voltage current and rotor position were measured during steadystate operation at a constat load. To be able to estimate all machine parameters the applied terminal voltage must have sufficient harmonic content. The used inverter is a standard Holecinverter (type PMO. Table 5. it counts up or down from 40 to 4040. 5.5. the used scaling factors are gIven. before storing in the dataset. 5. Real machine parameters 71 5. The rotor angle transformation is given in "P09.5: import scaling usedfor creation ofDEmethod dataset sClmp U I value 666. Depending on the rotating direction. EM 1800) with a voltage/frequency control unit.ASM". The inverter is set to a fundamental frequency of 50. the pulse number of the inverter then equals 3.
5. fundamental frequency fo DClink voltage U de Pulse number pn Stator current Isa.  . : I eneOdeK· SKA 'c _1< • ~ I> rI.G ..6.~ : I I)/A i il__ ~ __ ~ __ I Col)v.. . i A/I): ' . depicted in Fig..i. To store the measured data on in the external memory of the DSPsystem.].om TMS32or:30 l : ~i~:JriJ ~ Buy I I I. The procedure to store the measured data on disk is more thoroughly discussed in Appendix F3.4 seconds at a sample frequency of 5 kHz. 2. The operation conditions of the SKAmachine are given in Table 5.and doublecage induction machines To be able to store a dataset with sufficient rotor periods in the DSPsystem.'rlcr y..pu' : l__. two macro's are used [So Bosga]: "MATINIT" defines and initialises the necessary memory space. This enables a total measuring time of 2.. .I I__ ' .__ _ Ie I I uuYcrll'r i i I l~~::l.:1~ ====. This datafile is converted to a MATLAB file using the program "STRIPPER.6: configuration usedfor creation ofa dataset.' I I 11100 '00".~ ~~ ~_ r . Table 5. used to create the necessary dataset. +.72 Modelling and identification ofsingle.~ K FJ ~ .. I ~ I ' : . HoJec Grid IS ¢ PWMinverler ~ VI"'""lnahulI.. "NAARMAT" stores the data in the defined section and is called each time data needs to be stored.. rf.exe". The data stored in the external memory of the DSPsystem can then be stored in a datafile on disk using the "C30DEBUGGER".58 % 1.62 Hz 539V 3 16.6. ~. RS232 ~DQ fler!lonlll cornputcoT Figure 5.6: operation conditions ofthe Heemaf SKAmachine and Holec PWMinverter..~~i ".8 A 986.ejf Rotor speed Slip Slip frequency Applied load 50. . .31 Hz ~50Nm The scheme of the system configuration. the measured data is down sampled to 5 kHz and the RAMmemory was changed from 16k to 64k..3 rpm. .
9.7 ± Islip and 607.1 ~. ~ Ilip frequency [Jlzi Figure 5..9: Harmonic content ofthe reconstructedflux I:£I. ~200~ Ul'..Iip = . . 5.( l~: ~m _~ .ol = 0.2. lim.1 1400 1200 r0 =~B..~:~ . Real machine parameters 73 The spectrum of the measured stator voltage and current is given in Fig.m" (Appendix Gl).Rl and current rotor coordinate r 1. 7th at 354.lIp Irf'{. The stator flux and current in rotor coordinates (Sec.5.4 .31 Hz and at the switching harmonics on 303. 3. I . [) 11~I:I fiOO ! . 100 I o o t 200' i [: '( .4 ± Islip' cr: ~ '.. The hannonic content of current and flux is depicted in Fig.8: reconstructedflux 'Ps and current 1: lillie [sl 1 in rotor coordinate rI.5 . 5... '''.&2111 "'.lip frequency IHz] 3DUII..7111 ~ . using the Matlab Mfile "PRE_PROC.7. l~O() .\ .3 frequency [lIzJ Figure 5. ~ 0.tllt ! dip ::I. It shows that significant harmonics are present in the signals (5 th at 253.7: harmonic content ofterminal voltage U.69 Vs. given in Fig. and current 1.. :J .Chapter 5.f~ lion liOn BOO 1[)OO 1100 l~OO 30:1.3 fr'flueney IJlz] ~ ':[J4l"'"~ 0' 2001 "DO fiDD BOO 1000 1200 1400 f o .8 Hz). The amplitude of the fundamental component of the stator flux is found to be I\{Is.34 Hz and 11 th at 556.: t400 BOD BOD 1000 : : . 5.).1m = 1.=5D.. =1.1:1 ! ~oo HOD 1080 1700 t I I .6ilHI 253.8.S 1. The dataset exists of 12000 samples. 'I 1.:\1111 o'~... .JIIII I I ~O() t () 1 IDO i f) 7 I 1 11. (l.1 Hz.5 I lime lsi RI Figure 5. After transformation to rotor coordinates the spectra contain significant peaks at the slip frequency Islip = 10 . 1:' in The OEidentification method is applied to the reconstructed flux and current signal.Iip frelJ. are reconstructed according to the discussed offline method.
~. the low frequencies in the output error have to be more emphasised by means of the prefilter.~ . 1. using a singlecage rotor model estimation. Prefilter at 300 Hz.5 1. The resulting outputerror is given in Fig.11.and doublecage induction machines 5. J0: resulting outputerror between reconstructed (J) and estimatedflux (2). Therefore.9. using a singlecage rotor model estimation.l ~o 1 I o. It shows that the higher frequency components are weighted to much.. 5. one can conclude that not all low frequency information is used in the minimisation of the outputerror. like in the simulations. resulting in a good prediction of the high frequency component but a large low frequency miss fit.3. but still the fundamental component is present in the outputerror signal.10. 005 output " " " ' ~ '~j=~JN·''!~tffj o 0. see Fig.74 Modelling and identification ofsingle. To estimate the singlecage parameters the filter is set to Ie = 300Hz.5 . 5. according to Fig.~ I ~ 1 lime [!I} 1 5 2 .5 time [s} 2. Prefilter at 200 Hz. If the estimated result changes significantly when changing the prefilter L(q). For a better estimation of the low frequency behaviour. J I: resulting outputerror between reconstructed (J) and estimatedflux (2).2. By increasing the model order the resulting prediction error should become smaller until the best approximation of the model order is selected. Using a prefilter cutoff frequency of200 Hz results in a better low frequency fit. . 0. done by starting with a singlecage parameter estimation. the chosen modelorder is not correct.~:r~ o o. thereby including two harmonic signals. . This is. SINGLECAGE ESTIMATION A first step in using the OEmethod is to derive a proper model order..5 2 lime hd Figure 5.5 15 lime r8 1 Figure 5. 5.~] .
93 3.ol = 0. Prefilter at 50 Hz. The amplitude of the cageflux is derived using Eq.0 I= 0. using a singlecage rotor model estimation.2380) . This is done by changing the estimated main inductance found with the TFMmethod. Table 5.5 [5'] o 0.7: estimated singlecage parametersfor the SKAmachine. which should give a good description of the rotor circuit for low frequencies. However there is a significant difference in the estimated leakage inductance i cr • Using the DEmethod the leakage inductance is estimated by using an exciting signal at about 300 Hz.17 Q 0.12. 5.69 Vs.. using the estimated saturation curve.4.95 4. Therefore. depicted in Fig. It shows that the outputerror is dominated even more by the highfrequency components and the fundamental frequency component is further minimised. Real machine parameters 75 Lowering the cutoff frequency of the prefilter to Ie = 50 Hz.ol = 0.65 Vs. In Table 5.22 0.5 2. This estimated value is not equal .'s(227 to 228) and equals I'P.6 mH 1. the resulting estimated singlecage parameters of both TFMmethod and DEmethod are compared.028 parameter A Lm Lcr A' DEmethod [si] [pu] 38. The estimated discrete rotor transfer function is transformed to a continuous time singlecage rotor transfer function.Chapter 5. results in the outputerror given in Fig. at a flux level ofl qJ (R f = 0.12: resulting outputerror between reconstructed (1) and estimatedflux (2).16 0.5 1 5 2 time 2.198 Q 0.5 Lime 1.65 Vs and measured stator resistance TFMestimation [pu] [si] 39mH 1.2 mH 0.032 Rk Taking the saturation effect into account the estimation of the main inductance i m is almost equal for both estimationmethods. 5. The DEmethod is applied on measured voltages and currents at a fundamental flux level of I'Ps. to be able to compare the results of the estimation methods.. '::~1 o 0.7. 364.4mH 0.0 191 Figure 5. the saturation effect must be taken into account. The estimated continuous time singlecage parameters are then derive using Eq.
The difference in the estimated value of the leakage inductance due to different exciting procedures indicates under modelling. It shows that applying a doublecage model the outputerror method results in a better highfrequency fit without losing lowfrequency information. For a third order estimation the input signal must at least contain four significant harmonic components. In the next section the OEmethod is applied to derive doublecage parameters using the same dataset. DOUBLECAGE ESTIMATION In the previous section it is shown that using the OEmethod to estimate a singlecage model will not result in a frequency independent model. . Looking at the harmonic content of the current I sRI shows sufficient harmonic components to be able to estimate all parameters. to be able to identify 7 model parameters.. which is probably due to insufficient higher harmonic frequency components in the used dataset. A better approximation is found using a doublecage estimation model./3: resulting outputerror between reconstructed (l) and estimatedflux (2).~o~1 o 0.3. The cutoff frequency of the prefilter L(q) is chosen at Ie = 500 Hz.8. . . Prefilter at 500 Hz. using a doublecage rotor model estimation.13 the outputerror between the estimated and reconstructed stator flux in rotor coordinates is depicted.()~ [) time rs 1 Figure 5.76 Modelling and identification ofsingle. In Fig. Changing the cutoff frequency of the prefilter from 300 to 800 Hz does not result in significant changes in the estimated parameters.and doublecage induction machines to the value estimated with the TFMmethod whereby the machine is only excited at low slip frequencies using different operation conditions. The continuous time rotor transfer function is rewritten according to Eq.3. 5.  ()  o. To be able to estimate all doublecage parameters. as given in Table 5. Using higher order models did not result in a smaller outputerror.. which indicates that the chosen model order is a satisfying approximation of the real system. 5. 370 resulting in the estimated continuous time doublecage parameters. The estimated discrete second order transfer function is then transformed to a continuous time approximation using Tustin'stransformation.5 1.5 ". the input signal must contain at least three harmonic signals.
The Bodeplots show that the low frequency fit is about the same for all estimated models. Measured stator resistance R = 0. Looking at the Bodeplots it shows that the gains of the DEmethod estimated doublecage and singlecage transfer functions are matched at about 300 Hz.219 Rk1 ~. 2) OEmethod singlecage estimation. n n 0. the leakage inductance Lcr is determined at a harmonic frequency component of about 300 Hz. .997 mH In Fig. estimated doublecage parameters for the SKAmachine. Real machine parameters 77 Table 5.C D 40 co 10.Chapter 5. CD ~ '0 C> c 40 60 '_ _ __ 10.14: Bodeplots ofthe estimated rotor transfer fimctions 1) Twojluxmodel method singlecage estimation.) 10' m <:> 0' ·20 u ". 5.14 the Bodeplots of the estimated single.10 Lcr2 1. 3) OEmethod doublecage estimation.46 mH 3. The high frequency fit.2380 s parameter ~ Lm i cr ~ DEestimation [pu] [si] 41.166 0. Using the DEmethod for the estimation of the singlecage model. . In the TFMmethod all singlecage machine parameters are determined at small slip frequencies. Lowpass prefilter at 500 Hz.8: OEmethod.87 mH 2.. .123 2.036 0.3 10' 10 2 10 J f nyC) 10 4 freqency [HI] Figure 5.094 0. dominated by the leakage inductance Lcr .2 10.and doublecage continuous rotor transfer functions as a result of both tested estimation methods are given. This different approach of identification will cause the difference in estimated leakage inductance value for both methods.1 ~ ~ ~ __ ~ ~ __ ~_L _ ____" 10 0 ' freqency [Hz] 10 10 3 f ny. is significant different for both singlecage models.519 0.3 10. Rk2 ~.
using the single. the estimation results are evaluated by comparing the resulting error between reconstructed and estimated stator flux and by comparing the Bodeplots. .and doublecage induction machines Applying the OEmethod.and doublecage estimated simulation models. • able to estimate higher order rotor circuits. • easy to perform offline.78 Modelling and identification ofsingle. • online estimation is posible. \fJ:I REMARKS Advantages of the OEmethod: • identification is performed without additional test signals or special load conditions. In the following section the estimated machine models are compared with the real machine properties. Disadvantages: • accurate measurement of the rotor position or speed is necessery. leading to a better current/flux reconstruction.
For the measurement of the steadystate speed/torque curve of the SKAmachine a constant stator voltage of Uab. as being a singlecage machine when applying the TFMmethod. In this section the estimated machine parameters derived in Chap. STEADYSTATE CURVES A first validation is to compare the steadystate curves of the real machine and the estimated models.4. For validation the following tests are performed: 1. In Fig. two tests are performed whereby the properties of the simulation model will be compared with the real SKAmachine properties.efJ = 100 V is applied. The measured curve (1) shows a significant doublecage effect.1. VERIFICATION OF THE ESTIMATION RESULTS As seen in the previous sections the Heemaf 11kW SKAmachine is identified.4. Naturally the both estimated singlecage models (2) and (3) will not match this effect. 5. To be able to measure the full speed/torque curve form stand still to synchronous speed. the applied stator voltage must be kept small. 5 are applied to the simulation models which have been discussed in Chap. Therefore. However. In the previous sections the following three machine models have been identified: • TFMmethod. it appears that this estimated doublecage model results in better fit (higher pullout torque) but is not able to predict the real steadystate torque behaviour. For the validation of these estimated machine models. using the measured stator voltage and rotor speed as input for the estimated machine models and comparing the resulting stator currents with the measured stator currents. 5. the stator current must be limited. high pullout torque. because of the fact that too large currents will flow through the machines windings at large slip frequencies (about 58 times the rated current). 2.or doublecage machine. Applying the DEmethod the machine is identified as single. Real machine parameters 79 5. 2. comparing the measured and simulated steadystate speed/torque curves. singlecage model. doublecage model.15 the measured and simulated steadystate speed/torque curves are depicted. • DEmethod. singlecage model. . The curve can not be measured at rated voltage.Chapter 5. The estimated doublecage (4) was assumed to be able to match the measured curve better. the steadystate speed/torque curve of the SKAmachine is measured. The goal of the described machine modelling and the studied identification methods is to derive a machine model which fits the real machine properties as good as possible. • DEmethod. The simulation models have been tested using the same stator voltage. Therefore.
Therefore.) the estimated and measured curves do not differ much. In this steadystate situation the OEmethod estimated singlecage model (3) results in a too high torque compared to the measured torquecurve. TFMmethod estimated singlecage model. HeemafSKAmachine 2. It shows that in the normal operation range (950 to 1000 rpm. it is not fair to compare the hole speed/torque curves. All estimation methods are performed in the normal operation range of the machine. 3.16: the steadystate speed/torque curves at a stator voltage of Uab. While the electric torque of the machine is dependent of the leakage inductance La' the estimated leakage inductance .300 '. Therefore.50 9l\() 950 9£)0 970 980 990 1000 Rolor ~1)C'ed f Tum 1 Figure 5.80 Modelling and identification ofsingle. 20 sr [. OEmethod estimated singlecage model.ejf = 100 V.l~~~~~~~~" o 100 200 . OEmethod estimated doublecage model.ejf = 100V. one can conclude that in the normal operation range the steadystate behaviour can be described by the TFMmethod estimated singlecage model (2) or OEmethod estimated doublecage model (4). It will be more appropriate to compare the steadystate curves in the normal operation area. 4. 1.00 500 600 700 800 900 1000 Rolor sDeed f rDm 1 Figure 5. OEmethod estimated doublecage model. TFMmethod estimated singlecage model. 5. OEmethod estimated singlecage model. HeemafSKAmachine 2.and doublecage induction machines 2Sr~~~~~~_~~. In Fig. 3. 4. 1.15: the steadystate speed/torque curves at a stator voltage of Uab.16 the 900 ~110 920 9.
"" ?o· ' '0 10 0 0 100 200 300 1 ] ~)OO 400 600 100 800 I reqdency [H 1 J Figure 5. ...... . 5. 5.. To be able to compare these currents for validation.::.18: deviation between measured and simulated stator current. 5.Chapter 5. the slip frequency and the switching harmonic at about 300 Hz.14. This can also be seen in Fig. If the estimated machine model is accurate the predicted stator current should correspond with the measured stator current. TFMMETHOD SINGLECAGE In Fig. . .=. The A u: output of the simulation models will be estimated stator current ~s in stator coordinates.. VALIDATION BASED ON MEASURED DATA Another. here the DEmethod singlecage is estimated using two frequency components. .ed ':t (.J 200 1 300 400 frequency I ~OO 600 700 800 I 1HZ] Simulal. . 5.18. The measured stator voltage and mechanical rotor speed serve as input for the estimated machine simulation models. Using the TFMmethod SCaSMfed with the measured stator voltage.. The TFMmethod SCaSM is fed with the measured stator voltage.. .17 the harmonic content of the measured and simulated stator is depicted.. Real machine parameters 81 must be to small. . the amplitude spectra of the measured and estimated stator current have been compared. Measured ':t .4. The difference between measured and simulated stator current is given in Fig.17: amplitude spectrum ofmeasured and simulated stator current. . and perhaps better way to validate the estimated machine models is to compare the measured signals with the simulated signals. o (J 100 ~.. _ <l iL 0 I I I I I 100 • /00 1 30ll • 1 400 500 60ll 700 800 • frequency lHz] Figure 5. tL 10  30[ .2..
The estimation error on the fundamental frequency component is about 0. SINGLECAGE Applying the measured voltages and rotor speed to the DEmethod estimated SCaSM results in the amplitude spectra.19. The OEmethod SCaSM is fed with the measured stator voltage. j 100 200 1 JOO 1 j J 500 400 600 100 BOO frequency [Hz] Figure 5. ~ . depicted in Fig. The fundamental frequency component is estimated with an error of about 0. Therefore.and doublecage induction machines It is clear that the model is not able to predict the amplitude of the higher harmonic components.. The DEmethod estimated singlecage model gives a better estimation of machines stator current.5%. 5. The difference between measured and simulated current is given in Fig.5%. . Less accurate is the estimation of the 5th harmonic component with an error of about 25%. 5.:'  :JI 0 <1 I 01 .20. The 5th harmonic component is estimated less accurate with an error of about 5%.. ~ c = :~u 0 30 20 Measured j 100 200 • l ~ I JOO 400 • frequency [Hz] 500 • 600 • 700 BOO Sinlulaled 3: "E ~ r 0 100 10  0 200 LL 300 400 t requency 1 I 500 600 700 BOO i Hz J Figure 5. The error in the 7th harmonic is also about 25%. Using the OEmethod SCaSMfed with the measured stator voltage. The 7th harmonic has an estimation error of about 5%. 5. the TFMmethod singlecage estimation is only valid to estimate the fundamental frequency component. Comparing these results with the estimated stator current of the TFMSCaSM (Fig.82 Modelling and identification ofsingle.19) shows that the DEmethod SCaSM gives a better estimation of the real stator current..20: deviation between measured and simulated stator current. OEMETHOD.19: amplitude spectrum ofmeasured and simulated stator current.
o 'DO 200 .22: deviation between measured and simulated stator current.100 400 frequency [Hz] 500 600 lOa 800 Figure 5. the 7th harmonic (error 1%) and the 11 th harmonic (error 15%). DOUBLECAGE: The best estimation of the stator current is found by using the estimated DCaSM. . ~ = ~ ::0 0 j 100 • 200 300 400 frequency SOD 600 • 700 • BOD I [HZ] • Simulaled <t (~ . Using the DCaSM results in an accurate estimation of the fundamental component (1 %). .lOa (requ~ncy [Hz] = 500 1 600 lOa • 800 I Figure 5. Measured .:::. The OEmethod DCaSM is fed with the measured stator voltage. the 5th harmonic (error 2%). Using the OEmethod DCaSMfed with the measured stator voltage. 5. These results show that the estimated doublecage model leads to a significantly better prediction of the machines stator current.. Real machine parameters 83 OEMETHOD.Chapter 5..22 the difference between the harmonic content of measured and simulated stator current is shown.21: amplitude spectrum ofmeasured and simulated stator current. compared to both estimated singlecage models. rlJ. ~ ::r 0 ! ':U j 100 200 . In Fig.
or doublecage machine parameters. The methods are tested on simulation models in Chap.and doublecage simulation models results in a very accurate estimation of the desired single. In this case the rotor circuit is a linear system which can easily be expanded to a higher order rotor circuit. With the use of a prefilter the lowfrequency fit can be emphasised.1.Chapter 6. 4. 2 modelling of single and doublecage induction machines is discussed. In Chap. Applying the DEmethod to the single. These switching harmonics result in significantly higher current and torque ripples when using a doublecage machine. The transformed signals correspond with the current and flux which are induced in the rotor. When changing the prefilter one should keep in mind that the estimated leakage inductances are mainly defined by the switching harmonics and that the estimated main inductance and rotor resistance are mainly defined by the slip frequency. . results in a simple machine model. This leads to a singlecage machine model which enables the prediction of the dynamic responses at sinusoidal supply. Conclusions and recomendations 85 6. Higher harmonics are caused by inverter supply. The method performs well on singlecage simulation models. The difference lies in the effects of the higher harmonics on the machines behaviour. Transformation to rotor coordinates requires knowledge of the rotor position and stator resistance. In modem electric drive systems an inverter supply is always applied. Secondly. However. trying to estimate a singlecage machine model with data of the doublecage simulation model did not result in a good estimation of the dominant rotor time constant. This indicates that the method is sensitive for under modelling. The DEmethod is based on a linear inoutput model and is therefore not directly applicable to the measured dataset because there is no linear relation between the stator currents and voltages. sufficient frequency components must be applied to the machine. the switching harmonics due to the inverter supply are used as excitation sources. By transforming the measured stator signals to rotor coordinates this nonlinearity is cancelled out. To be able to estimate all machine parameters. The model parameters are found by minimising the squared difference between the predicted outputs based on the measured inputs and outputs. Applying the method to a doublecage machine model results in a good estimation of the dominant time constant. CONCLUSIONS In Chap. Therefore. The TFMmethod is based on the conventional steady state noload and load tests and is only able to estimate singlecage parameters. For the transformation offline routines are used. A too low prefilter cutoff frequency will therefore result in badly estimated leakage inductances. Keeping the stator part and rotor part of the machine separated [Velt '94]. 3 two parameter identification methods are discussed. CONCLUSIONS AND RECOMMENDATIONS 6. an outputerror method based on linear inputoutput models is considered.
3. it is possible that other transformations perform even better. It should have been better to define such a purpose. Because the flux in the machine can not be hold at a constant value when changing the machine from noload to load operation. is the value of the leakage inductance.86 Modelling and identification ofsingle. resulting in a saturation dependent main inductance. However. it should be better to apply this method in combination with a controlsystem (e. usually machine parameters at rated voltage are desired. Therefore. • RECOMMENDATIONS The problem using the TFMmethod. This is caused by the fact that the two methods are developed using a different approach. hen the SKAmachine is supplied with a PWMinverter. The DEmethod is applied to a measured dataset of stator voltage. stator current and rotor position. • .g.and doublecage machine parameters were estimated. Based on this dataset both single. resulting in a flux difference between both estimated cagefluxes. the saturation effect is assumed to be concentrated in the main inductance. The DEmethod is performed at only one flux level while the used PWMinverter contained a voltage/frequencycontrol unit. Validation of the estimated single.and doublecage models shows that the DEmethod estimated doublecage model results in the best prediction of the measured stator current. It is clear that it is not possible to give one model which describes the real machine completely. 5 both methods are applied to a Heemaf llkW. SKAmachine. The goal of the tested models and identification methods was to achieve an accurate description of the real machine behaviour. In the tested situation the TFMresults in the unsaturated singlecage parameters. Therefore. while the DEmethod is based on minimising the error between the real systemoutput and the output of an estimated machine model. At constant values of the rotor resistance and the leakage inductance the stator voltage was increased. This deviation is made equal to zero by adjusting the main inductance. As a result of the used configuration for the voltage supply. it's important not to drive the machine far into saturation if the TFMmethod is used. is that the flux level could not be hold at a constant value if the machine load changes. However. fieldoriented control). In that case the model estimation can be concentrated on a particular operation point. keeping the flux in the machine at a constant level. Both methods are first applied to estimate the singlecage machine parameters. using the TFMmethod or the DEmethod. The outputerror identification is based on discrete models.2. The TFMmethod is based on the classic machine equations and minimising the error between two estimated fluxes. in combination with the sinusoidal voltage supply configuration of Fig. In this report Tustin'stransformation is used to transform the estimated discrete parameters to continuous time parameters. This method led to satisfying results. 5. Decreasing the stator voltage to about 100 V no saturation occurs and the machine parameters can be tuned correctly. 6. The main difference in the singlecage estimation. the parameters can not be tuned to a stable value as a result of saturation. In this report no special purpose for the machine model was defined.and doublecage induction machines In chap.
This also reduces the necessary calculation time in the DSPsystem. The data preprocessing necessary for the OEmethod is performed offline. where integration is done in the frequency domain. In combination with a field oriented controller the machine parameters can be adapted continuously. This can be done with the aid of opamp circuits and special analogue divices for transformation of the threephase voltages and currents to the desired twophase representation. This recursive method can be implemented in a DSP system. recursive algorithms of the OEmethod are derived. To validate the estimated machine models it should be better to test these models in combination with a machine control unit.Chapter 6. In that case an online estimation of the stator resistance must also be applied. Therefore. Conclusions and recomendations 87 • In [Gort '94] the outputerror method is proposed to be used for online parameter estimation. An optimal way for data preprocessing is the use of analogue integrators to reconstruct the stator flux. The integrated signals will however always be an approximation. • • .
Stochastische Systeem theorie "Modelling. "The doublecage induction motor model for the simulation ofinverter fed machines". 1996 ISBN: 0136868827025 Doncker. 1970. F. Geysen. Second edition. R. R. Blaschke.L. "Power electronics and ACdrives". Proefschrift. [Bla '93] [Bosch '93] [Bosch '94] [Boze '86] [Doncl '86] [Done '84] . Gordon end Breach science publishers. Technische Universiteit Eindhoven Measurement and control group. their behaviour and uses". "Induction machines. Englewood Cliffs. Electrical Machines and Convertersmodelling and simulation. W.J. "Voorldufiger bericht uber verbesserungen bei der feldorientierten regelug von asynchronmaschinen" Bad voslau.Bibliography 89 BIBLIOGRAPHY [Alg '70] Alger P. de "Synthesis and digital implementation ofadaptive fieldoriented controllers for induction machines with air gap flux control and deepbar compensation". van den. Osterreich.5 Doncker. de. Boze.314. 1994.P. "Modelling and simulations PSI/C". Second edition. PrinticeHall. New Jersey 07632. IMACS.P.J. Katholieke Universiteit Leuven. September 1993 ISBN 9071898172 Bosch P. Collegedictaat (5N060) Faculteit der Elektrotechniek. van der Klauw. December 1986 UDC 621. Delft University of Technology. B.C. Technische Universiteit Eindhoven. van den.K. 1984. Bosch. A. Departement Elektrotechniek. identification and simulation ofdynamical systems". P. Vermogen en Industriele Toepassingen. 1994.
"Skin effect impact on induction motor parameter identification using an outputerror identification method". R. September/October 1992 Garces.90 Modelling and identification ofsingle.A.J. "A parameter estimator for induction machines". IEEE Trans. Eindhoven: Instituut Vervolgopleidingen. Taipei 1994 Gorter. "FieldOriented controller with rotor deep bar compensation circuits".AI. Lagonotte.P. Veltman and P. Gorter. p. "Modelling and nonlinear identification ofstatic parameters ofa doublecage induction machine". p.J. van den Bosch. W.A. IEEE Trans. EPE Symposium on electric drive Design and Applications.e. Vol. de. A. Proceedings PESC '94. R. 1980.J. Doncker. Proc. 1994 Gorter. 28. Faculteit der Elektrotechniek. ''A digital oriented controller using the doublecage induction motor model".J. Vol. Int. Vol. van den Bosch. Technische Universiteit Eindhoven. IEEE Trans. Proc. [Done '92] [Gar '80] [Gort! '94] [Gort2 '94] [Gort '94] [Jans '93] [Lag '92] .A.J. L. P. Lausanne. R. no.173178.G. Trigeassou.and doublecage induction machines [Donc2 '86] Doncker. H. using the outputerror identification method". A. 1993. "Parameter estimationfor induction machines. P. 2. Veltman and P. No. on Industry Applications. A. "realisatie van realtime simulaties op een modulair DSPsysteem" Afstudeerverslag. 1994 ISBN 905282357X geb. Eindhoven University of Technology.2. on electrical machines 1992. on Industry Applications. Conf.J. Jansen.. Miah and J. p.502 509.5.IA16. Vandenput.P. Vakgroep Elektromechanica en vennogenselektronica. R. Geysen.. "Parameter adaptionfor the speedcontrolled static ACdrive with squirrel cage induction motor".W.59296. de. R.. 1986. on Industry Applications.
Veltman. "The fish method: interaction between ACmachines and switching power converters ". Siemon G. L. Vakgroep Elektromechanica en vermogenselektronica. Fac. Vakgroep EMV. October 38. "Control ofelectrical drives". Springer Verlag. L. Schot. Prof. "System Identification Toolbox. Tokyo. Maart 1992. "TMS320c30. 1993.Bibliography 9J [Leo '85] Leonhard. "Elektriche aandrijvingen". Faculteit der Elektrotechniek. New York.336342. Technical University Delft. Dr.1. Texas Instruments. Toronto.ir. 1990. J. Canada. ISBN: 9090067639 [Lju '87] [Lju '91] [Moo '93] [Mach '90] [Slem '] [Tex '93] [Van '92] [Velt '94] .R. E. Moon. and A. IEEElAS Annual meeting.A. users guide" Revision E. p. 1987 ISBN: 0138816409025 Ljung. W. A. Keyhani "Estimation ofinduction machine parameters from standstill time domain data". "Elektrische machines ]" College dictaat (5K050) Technische Universiteit Eindhoven. Berlin. PhDthesis 1994. Vandenput. "System identification'~ theory for the user PrenticeHall.user's guide for use with Matlab" 1991. "Electric Machines and Drives" AddisonWesley publishing company ISBN: 0201578859. Collegedictaat: Elektrische Aandrijftechniek (5PI20)) Technische Universiteit Eindhoven. S. June 1991. 1985 Ljung. A. Heidelberg.
.and doublecage induction machines [Werf'94] Werf. Faculteit cler Elektrotechniek.92 Modelling and identification ofsingle. Vakgroep Elektromechanica en vermogenselektronica. Johan van der Het toepassen van een spannings/stroommodel voor directe koppelregeling van een asynchrone machine Afstucleerverslag EMV 9413 Technische Universiteit Eindhoven. December 1994.
Components and variables of the different physical systems (electronic. Besides effort and flow other variables can be used.Appendix A 93 ApPENDIX A: THE BOND GRAPH METHOD A bond graph is composed of components that exchang energy or power through connections. as shown in figure A. q= fldt p= edt f These variables p and q preserve their value if a coordinate transformation is performed and are therefore called preserved variables.I: the bond The direction of the positive power flow is indicated by a half arrow. This is useful if a physical system is for example an electromotor that drives a pump. see table A.I effort e flowf Electrical voltage u current i Mechanical force F velocity v Hydraulic pressure p flow cP The same description and variables can be used in different physical systems. The symbol for the flow is placed below or left of the line as depicted in figure A. namely effort e and the flow f. electromagnetic. Each connection (bond) transports power or energy and is represented by a line. These connections are called (power) bond. The effort and flow are generalisations of similar physical phenomena.I a. a) Il) f e e f e. . table A. A bond is represented by a line.I.lb. namely the displacement q and the momentump. The symbol for effort is put above or right of the line. This power is the product of two variables. BONDS Bonds can be defined more precisely by adding a direction and causality of the variables effort and flow. mechanical and hydraulic) are used in one system description.~ e f figure A. In contrast with block diagrams these connections represent an exchange of power instead of a oneway transport of information.
. then the crossstroke is placed at the side of the component. The basic elements are given in table A.+/. If the effort e is the cause and the flow fthe effect (I = G . Otherwise. BOND GRAPH ELEMENTS A bond is a connection between two elements. It has no relation to the half arrow of the bond. causality means assigning cause and effect or input and output to a physical phenomon as expressed by a mathematical expression.and doublecage induction machines CAUSALITY Causality is introduced artificially to calculate the model described by a bond graph.94 Modelling and identification ofsingle.2.=O h=12=/. if the flow fis the cause and the effort e is the effect (e = R· I). then the crossstroke is placed opposite to the component side. Causality can be expressed in a bond graph by assigning a crossstroke at one of the two ends of a bond. f = G'e _e __ ""~I f I G __ e__ >. Physical processes however do not have causality.2 symbol Source: Se JL J SJ 7 Oneports: e 7 R e 7 G e 7 C JL Name Function Electric example e esource fsource Resistor Conductivity Capacity Inertia e f e= R·I I=G·e e= 1 usource isource Resistor Resistor Capacitor Coil ~J 1 dt J I = 7 Jedt Multiports: ~O2 Ojunction Ijunction h h e. . Consequently. e). They represent a parallel system with mutually influencing elements. + e2 + e3 = 0 Parallel Serial ~l~ h J. e. = e2 = e3 h+J.' f Figure A. R ". which indicates the positive power flow. as illustrated in figure A.2: causality ofRand G element e = R·f Remark: The causality stroke is introduced purely for determining the calculation sequence.
only one effort can be an "input". However. is represented by a Ijunction. Consequently the causal stroke has to be drawn at the end of the bond where the effort points to. Hence the cross stroke must be located at the component side of SI' the flow leaves the source. An effort source Se will impose an effort on the system. The efforts in the other bonds at that junction will become "inputs". The flows at the other bonds of this 0junction have to be "inputs". Consequently. of all bonds will have a cross stroke at a Ijunction. In figure A. This means that only one flow can be an "input".S.3: Source causality INTEGRAL CAUSALITY A capacitor or an inertia can be described both by means of an integral equation and a differential equation. A series circuit. A flowsource SI imposes a flow on the system. "'10"'1 Figure A. This is illustrated in figure A.5: Causality with junctions. in simulation software an integrator is supported while a differentiator cannot be realised accurately. . There is always one causality stroke at a Ojunction. Only one bond. e f Figure A. examples of this junction causality are shown. where all flows having the same value.4: Integral causality CAUSALITY WITH JUNCTIONS A Ojunction represents a parallel circuit with all efforts having the same value.Appendix A 95 SOURCE CAUSALITY Sources always prescribe causality.3. This means that the effort is always the input of an inertia and a flow is always the input of a capacity. f = ~ edt J e f "I I e= ~J fdt e f " C Figure A.
f G'e _ ___ e ~"'II f f~=:.. depending upon the causality requirements.96 Modelling and identification ofsingle. This is illustrated in figure A.and doublecage induction machines CAUSALITY OF RESISTORS AND CONDUCTIVITY'S In practice either a R or a G element can be selected.6. G f Figure A. e = R·f e R . 6: Causality ofRand G elements.
The stator voltage equation for the twophase can be written as: Thus the threephase parameter values are transformed to the equivalent twophase parameters by: RA2) = 1Rs (3) 4(2)=14(3) Lm (2) = 1Lm (3) 2 Rk' (2) = 3" Rk' (3) Where the inductance Lm (3) can be calculated from measured data. The parameters of the threephase system are denoted with "(3)". Chap. found by performing a noload and load test according to Appendix C. . The transformation is derived under the condition that the power in the threephase system equals the power in the equivalent twophase system [Van '92. This method results in the 3 threephase parameter values. La. 11]. In the twophase equivalent system the parameters are denoted with "(2)". Rk and Rs have to change. Current from 3~2 is transformed in the following way: The transformation 3~2+ I for flux and voltage is defined by: As a result of this transformation with equal power in both three.and twophase systems the parameters Lm .AppendixB 97 ApPENDIX B: COORDINATE TRANSFORMATIONS In this section the transformation form a symmertrical threephase system to a twophase system is described.
02H 151.5/24 A 11kW 1 15pk cos cp = 0. SKAmachine nr.ejJ I ref = t J2 .18s 6. Type: NK 586 I1Y 220/380 V 41. 552047.Us.1 Q 0.99 Vs 5. Is.5Nm 0) 2·n .p' (U~rl~f J 0) ref 'P ref = . is.I ref L ref = U ref I ref .Appendix C 99 ApPENDIX C: MACHINE PARAMETERS Cl: MACHINE CHARACTERISTICS AND PU REFERENCES Heemaf EM 3008.ejJ ref = 311 V 51 A lOOn rad/s 3.104 kgm 2 J ref = U ref · I ref 0) 3 ref .0) ref Mref .0) U ref ref 0.12 .83 rated speed 950 rpm rated slip 5% rated frequency 50Hz number of pole pairs 3 Per Unit references U ref = J2 .rated tref U ref R ref = .
Cl. and the stator current magnitude during noload. load (C2) where the stator voltage magnitude.loadl and the load angle <P s between stator voltage vector and stator current vector are known from . resulting in the following equation: IU%. noload I = co s(L m + La) = XL a + XLm where the stator voltage magnitude during noload. Figure Cl: Noload equivalent perphase circuit For most machines the stator resistance can be neglected.noloadl are known from a measurement in a noload situation. IUs. The equivalent perphase circuit for an induction machine is then given in Fig. the stator current magnitude.noloadl I ~ Is.2. In noload situation one can assume that the machine rotates almost at synchronous speed (slip ~ 0). lis..and doublecage induction machines C2: CALCULATION OF SINGLECAGE MACHINE PARAMETERS The singlecage machine parameters of the testmachine can be calculated. lis.loadl.noloadl. C. ( )} Zin.load Is. Under load conditions the equivalent perphase circuit is given in Fig.load = I's I cos <Ps.100 Modelling and identification ofsingle. Figure C2: Equivalent perphase circuit under load condition The input impedance is defined as: IU:.load + ] ·sm <Ps.load I{ ( ). IUs. with data of three measurements: • a dcmeasurement of the stator resistance • an acmeasurement during noload operation • an acmeasurement during loadoperation.
Lm = t Lm(3) (2) Ra2) = R~(3) cr t L (2) = t 4(3) .) Lni +R. (Lcr + (ro .Appendix C 101 measurements under load condition.noload I = C L/II I'ls. by solving the equation system.load  (R + (ro s (rosL/II)2 Rr ) L/II)2 +R..B) 3 A 2 2 (C7) R~(3) = cr Sload . C2 and C3) in the following way: (C4) X La + 2 2 XLmRr XL /II 2 ( ) 2 = Sin <Ps.load. s + J' . C. the singlecage induction machine parameters can be derived. (C5) and (C6): Lm (3) = XL/II ffi s =_1 [(CB)+ ffi s A J (C .noload I S (C6) Because the constant values.(CB) J A ffi s ffi s (C9) The calculated parameters are parameters of the equivalent threephase circuit (this is indicated with (3) in Eq. representation.load = + Rr ls • load Ius. are known from measurements. R r = Sload[A + 2 (CB) J (C8) L(3) = XLa = _1 [B . (C4).(C7. B. C8. ffi s rosLmR. all parameters must be multiplied with a factor t. C2 can also be written as: Z in. (C1. The per phase stator input impedance of the equivalent circuit in Fig. A. To transfer the parameters to a twophase see Appendix B. (C 3)  The singlecage parameters can then be derived using Eq. C9). s I I's I B (C5) X La +X = IU:.
102
Modelling and identification ofsingle and doublecage induction machines
SINGLECAGE PARAMETER CALCULATION OF THE 11 KW SKAMACHINE
To calculated the singlecage parameters of the Heemaf 11 kW SKAmachine the measured values of the following noload and load condition are used.
Noload test
us,efJ (per phase) is,efJ (per phase)
Load test 220V 13.2 A
~90°
Us,efJ (per phase) is,efJ (per phase)
load angle <p s speed ill meeh
load angle <p s speed ill meeh
~1000
rpm
220 V 16.5 A 57.6 0 986 rmp
The measurements result in the following singlecage machine parameters: parameter value [si] 29.6 mH 5.8 mH 0.1637 n 0.238 [pu] 1.48 0.29 0.0268 0.0385
Lm La
Rk Rs
,
n
AppendixE
103
ApPENDIX D: MOMENTUM OF INERTIA
The total inertia of the 11 kW machine and load machine is detennined with the use of an oscillation test. To do this, a mass attached to the axis of machine, see Fig. D.l. Where Ris the length from the rotor axis to the mass m. J R is the total inertia of both ACmachine and DCmachine. The inertia of the system with the pendulum mass is then. (Dl)
Figure D.l: estimation ofinertia
The torque equals the total system inertia
M
J tot times
the acceleration of the angle if>:
(D2)
= Jtot<p
The torque M also equals the force times the length to the machine axis:
(D3)
If the angle q> is small sinq> == q> this yields:
(D4) (D5)
This resuilts in the system resonance frequency roo :
(D6)
104
Modelling and identification ofsingle and doublecage induction machines
results in the following expression for the momentum of inertia of both machines (D2)
With the use of an angle sensor the period time of the system is measured. The results are given in table D.1.
Table D.I: Measured inertia ofthe SKAmachine and DCload machine.
rose
m
f
JR
[kgm2] 0.742 [pu] 1449
[sec] 1.75
[kg] 5.125
[m] 0.371
04* L_ref). R_ref).5 * PAR(O.%[kgm 2 ] %% Sinusoidal voltage supply and load condition %PAR(O. % [0] PAR(U_ref/(I_ref*omega_ref)). %[Vs] PAR(U ref*I ref/omega ref). alfaP s s des= PAR(100*pi). u s des PAR(O.PSM: \TFM_ID.06* PAR(O.83144. %[A] 2/3*sqrt(2)*[<Isq (eff»]n PAR(100*pi). pi).psm % % % SINGLECAGE MACHINE IDENTIFICATION % % % % TwoFluxModel (TFM) method [Blaschke] Performed on a doublecage machine model fed by a sinusoidal voltage supply reference values for pusystem (Chap. % stator coordinates %% % DUBBELCAGE INDUCTION MOTOR MODEL (Chap. PAR(l) .8 * PAR(O. %[Nm] PAR(u=ref*I=ref/(omeg.3*m_ref) . %[rad/s] PAR (U_ref/I_ref) .12* PAR(O. % Number of pole pairs. L_ref). %[H] PAR (U_ref/omega_ref) . %[V] sqrt(2)*[<Usq (eff»]n PAR(88). .06* PAR(O. L_ref).AppendixE 105 ApPENDIX E: PSI/c SIMULATION PROGRAM'S El: TFM \ ID. % Twophase stator voltage in u_s_des * sin(alfa_s_s_des). 3 Vandenput) %U ref I ref omega_ref R ref L ref flux ref m ref J ref PAR(311)._ref)A 3 ). R_ref). u_s_des * cos(alfa_s_s_des). R_ref). 2) The used machine parameters are defined in [Done '86] % % % Machine parameters according to the Jordan model % Given in PU and translated to SIvalues %Lh Lsig_s L 12 Lsig_2 r s R_k1 R k2 P J mach PAR (3 * PAR(O. L_ref). alfa s s des u s sl u s s2 % Mechanical load % Voltage amplitude % Supply voltage frequency INTMOD(alfaP_s_s_des PAR: . PAR (1449*J_ref) . % Mechanical inertia.8*311).
i %MECHANICAL PART %M el rhoP s rho_s p*(i_s_S1 * flux_s_s2 + i_s_s2 * flux_s_s1).and doublecage induction machines %% TRANSFORMATION of the MACHINE parameters to MODEL parameters transformation to equivalent model with 2 inductances PAR(Lh/(Lh+Lsig_12)) . PAR(Lsig_s + Lh*Lsig_12/(Lh+Lsig_12)).71331E2. . INTMOD(rhoP_s PAR: 3. p*INT(l/J_mach*(M_elM_last) PAR: 306. %% k Lm R k1 acc Lsig Lsig_2_acc R k2 acc % %ROTOR PART in rotor coordinates flux_k_acc_r1/Lmi_s_r1. flux_sig2_r1 / Lsig_2_acc. R_k1_acc*i_k1 acc_r1 + R_k2_acc*i_k2_acc_r1. R_k1_acc*i_k1_acc_r2 + R_k2_acc*i_k2_acc_r2. i i s r1 s r2 i_s_S1*cos(rho_s) + i_s_s2*sin(rho_s). total cage current %i . i_k_acc_r1 .106 Modelling and identification ofsingle.flux_k_acc_r2*sin(rho_s). INT(E_sig2_r2 PAR: 7. %% ROTATION OF FLUX AND CURRENT %flux_k_acc_S1= flux_k_acc_r1*cos(rho_s) . flux_k_acc_s2= flux_k_acc_r1*sin(rho_s) + flux_k_acc_r2*cos(rho_s). . i_s_s1*sin(rho_s) + i s s2*cos(rho_s).acc . %% STATOR PART in stator coordinates % flux s sl flux s s2 i s sl s s2 INT(U_S_S1i_s_S1*r_s PAR: .726).i_k2_acc_r1.i k1 acc r2 i k2 acc r1 .r1 i k acc r2 i k1 acc r1 . INT(u_s_s2i_s_s2*r_s PAR: 0. flux_sig2_r2 / Lsig_2_acc.582941).529156). PAR (k*k*R_k2) . PAR (k*k*R_kll .i k2 acc r2 E_sig2_r1 E_sig2_r2 flux_sig2_r1 flux_sig2_r2 current through outer cage flux_k_acc_r1= INT(i_k1_acc_r1*Rk1 acc PAR: . flux K acc r2= INT(i_k1_acc_r2*Rk1_acc PAR: 0.k .500511). i k acc r2 .470608).184425). (flux_S_S1flux_k_acc_s1l/lsig. (flux_s_s2flux_k_acc_s2)/lsig.i_k2_acc_r2. pi). INT(E_sig2_r1 PAR: . PAR (k*k* (Lh+Lsig_12) ).9778E2). PAR (k*k*Lsig_2) . flux_k_acc_r2/Lmi_s_r2.
%deltaflux COMPARE THE TWO ESTIMATED FLUXES  = flux k est . %.611175l.ROTATION OF THE STATOR VOLTAGE AND CURRENT TO STATOR FLUX REFERENCE FRAME u_sy1_obs u_sy2_obs i_sy1_obs i_sy2_obs u_S_S1*cos(phi_s_s_obsl + u_s_s2*sin(phi_s_s_obsl. 3. fluxP k est= (i_s_b .Sl AND S2 ARE USED IN THE STABILISING LOOP fluxP_sy1_obs fluxP_sy2_obs (u_sy1_obs.2) 0. pil. i_s_s1*sin(phi_k_s_obsl + i_s_s2*cos(phi_k_s_obsl.S2*fluxP_sy1_obs. %.flux_sy1_obs IS THE FLUX AMPLITUDE IN THE STATOR FLUX REFERENCE FRAME flux sobs phiP_s_s_obs phi_s_s_obs fluxP_sy2_obs / flux_s_obs. 1. ATAN2(flux_ky2_obs.flux_k_obs. %.i_sy1_obs*r_s_estl/(1Sll. Lm_real Lm_estLsi9_est.2*L_ref.CARTHESISCH to POLAR transformation flux k obs phi_ky_obs phi_k_s_obs %% I/phimodel (Optimized method) sqrt(flux_ky1_obs*flux_ky1_obs+flux_ky2_obs*flux_ky2_Obsl.06*R_ref. %Sl S2 % damping constants %% Estimated machine parameters %r s est r_k_acc_est Lsig_est Lm_est 0. u_s_s1*sin(phi_s_s_obsl + u_s_s2*cos(phi_s_s_obsl.i_sy2_obs*r_s_est . flux_ky2_obs= i_sy2_obs*Lsi9_est.AppendixE 107 %% UIMODEL (fig 5.i_sy1_obs*Lsig_est. i_s_s1*sin(phi_s_s_obsl + i_s_s2*cos(phi_s_s_obsl.determine the MODEL FLUX flux_ky_obs flux_ky1_obs= flux_s_obs . u_sy2_obs . i_s_S1*cos(phi_s_s_obsl + i_s_s2*sin(phi_s_s_obsl. 0.53*L_ref. flux k est INT(fluxP_k_est PAR: .0297*R_ref. 0.flux_ky1_obsl. % . %i_s_b i s w i_s_S1*cos(phi_k_s_obsl + i_s_s2*sin(phi_k_s_obsl. INTMOD(phiP_s_s_obs PAR: 0. %.708966. %.flux_k_est/(Lm_realll*R_k_acc_est.
signal % TRIANGLE CARRIER WAVE GENERATION u_s_des/Mi. % start value 0 u_s_des*cos(alfa_s_s_des) u_harm3*cos(3*alfa_s_s_des).5*M_ref) .8). PAR (3 ). % PAR(88) .12).and doublecage induction machines E2: OE DATA. % triangle carrier wave harm3*u_s_des.1). % PAR (100*pi) . u_s_des*cos(alfa_s_s_des+2*pi/3)u_harm3*cos(3*alfa_s_s_des). %% amplitude statorvoltage % anglefrequency statorvoltage % loadtorque in PU * reference % PWMINVERTER MODEL %% INVERTERMODEL PARAMETERS u dc Mi pg harm3 % PAR(517) . A_tri*(abs(alfa_tri)*2/pi . % % % % Inverter properties: pulse number pn=3 stator frequency fs= 40 Hz DCvoltage = 539 V Sine modulation (+ 12% third harmonic) (Chap.psm PWM INVERTER FED DOUBLECAGE INDUCTION MACHINE MODEL To apply the DEmethod a dataset of stator voltages. % PAR (U_ref*I_ref/omega_ref) .% %% CONTROL PARAMETERS u_s_des PAR(1.PSM: %% % % % OE_DATA. current and rotor % % % position is created. % PAR(U_ref/(I_ref*omega_ref)) . % amplitude of third harmonic A tri alfaP tri alfa tri u tri u harm3 % . pi). PAR(O. . % PAR(U_ref*I_ref/(omega_ref)A 3 ). u_s_des*cos(alfa_s_s_des2*pi/3)u_harm3*cos(3*alfa_s_s_des). INTMOD(alfaP_tri PAR:1.108 Modelling and identification ofsingle. pi).57153. 3.73*U_ref).8*omega_ref). % PAR (U_ref/omega_ref) . % amplitude triangle wave (pg*alfaP_s_s_des) . PAR(O. Van '92) [V] sqrt(2)*[<Usq(eff»]n [A] 2/3*sqrt(2)*[<Isq(eff»]n [rad/s] [0] [H] [Vs] [Nm] A [kgm 2] %% reference values for pusystem U ref I ref omega_ref R ref L_ref flux ref M ref J ref PAR (311) . M load PAR(O. % PAR(U_ref/I_ref). % % % % dclink voltage modulationindex pulsnumber amplitude of 3th harmonic in ref.3PHASE REFERENCE VOLTAGES WITH 3th HARMONIC COMPONENT alfa s s des usa u_s_b usc INTMOD(alfaP_s_s_des PAR: 2.61799. alfaP_s s des= PAR(O.
mean value of the rectified voltage Modulationindex Pulsnumber Amplitude for 3de harmonic in ref. u_s_b_l0*u_dc.in PAR: 0. R_ref). s b in PAR: 1. R_ref). % voltage between positive side and the % negative side (N) of the inverter % output % VOLTAGE BETWEEN ONE PHASE AND THE STAR NODE OF THE MACHINE 1/3*<2*u_s_aN u s bN 1/3* < u_s_aN + 2*u s bN 1/3* ( u_s_aN u s bN u_s_cN) . PAR (3) . U_S_c_l0*u_dc. s_a_inls_a_uitls_b_inls_b_uitls_c_inls_c_uitltimer. signal % SWITCH EVENTS AT INTERSECTION OF REFERENCE VOLTAGE AND TRIANGLE WAVE % USING STATE EVENTS (PSImanual) s a in s a uit s b in s_b_uit s c in s c uit timer state STE(u_triu_s_a STE(u_triu_s_a STE(u_triu_s_b STE(u_triu_s_b STE(u_triu_s_c STE(u_triu_s_c PAR:le6. % TIM (1 PAR: 1) . s .06* PAR(O. L_ref). + 2*u_s_cN). PAR:le6.VOLTAGE REFERENCE CORRECTION AND 3PHASE > 2PHASE TRANSFORMATION u s sl u s s2 1/3*(2*u_s_aN .I). PAR:le6.12* PAR(O.8 * PAR(0. PAR(0. L_ref).5 * PAR(O.a .8) . % % % % DClink.AppendixE 109 u dc Mi pg harm3 %PAR(539). .12).0) . SWITCH ACTIONS OF THE INVERTER  u s a 10 u s b 10 u s c 10 u s aN u s bN u s cN FFL(O. % mechanical inertia . 2) %% Machine parameters according to the Jordan model % Given in PU and translated to SIvalues Lh Lsig_s L_12 Lsig_2 R_s R_kl R_k2 %PAR (3 * PAR(O. L_ref). u_s_cN) . 1/3*(sqrt(3)*u_s_bN . % .sqrt(3)*u_s_cN). PAR:le6. s .0) .c uit. PAR:le6. FFL(O. .FFL(O.I). 1). 1).u_s_a_l0*u_dc.a uit. s b . R_ref). %*************************************************************************** %% DUBBELCAGE INDUCTION MOTOR MODEL (see Chap.06* PAR(0.uit. s . 1). PAR (0.0) .u_s_cN).04* L_ref). PAR:le6.I). s c in PAR: 0.u_s_bN .
acc. . %% ROTATION OF FLUX AND CURRENT %flux_k_acc_s1= flux_k_acc_r1*cos{rho_s) . i_k_acc_r2i_k2_acc_r2. %% STATOR PART in stator coordinates % flux s sl flux_s_s2 i s sl i s s2 INT{U_s_s1i_s_s1*r_s PAR: .485E2).r1 i k2 acc r2 E_sig2_r1 E_sig2_r2 flux_sig2_r1 flux_sig2_r2 i_s_r1+flux_k_acc_r1/Lm. flux_k_acc_r1= INT{i_k1_acc_r1*Rk1_acc PAR: 1. PAR{Lsig_s + Lh*L_12/{Lh+L_12)). INTMOD{rhoP_s PAR: 2.r1 i k1 acc r2 i . flux K acc r2= INT{i_k1_acc_r2*Rk1_acc PAR: .22539).k2 . INT{E_sig2_r1 PAR: 9.23295). flux_sig2_r2 / Lsig_2_acc. INT{u_s_s2i_s_s2*r_s PAR: 1. Rk1_acc*i_k1_acc_r1 + Rk2_acc*i_k2_acc_r1.. INT{E_sig2_r2 PAR: 0. flux_k_acc_s2= flux_k_acc_r1*sin{rho_s) + flux_k_acc_r2*cos{rho_s). i_k_acc_r1i_k2_acc_r1. pi).279). i s_r2+flux_k_acc_r2/Lm.k . {flux_S_S1flux_k_acc_s1)/lsig. Rk1 acc*i k1 acc r2 + Rk2_acc*i_k2_acc_r2.acc . %% MECHANICAL PART % mel rhoP s rho s i_s_s1 * flux_s_s2 + i_s_s2 * flux_s_s1. i_s_s1*sin{rho_s) + i_s_s2*cos{rho_s). i i s r1 s r2 i_s_s1*cos{rho_s) + i_s_s2*sin{rho_s). PAR{k*k*Lsig_2). PAR {k*k* (Lh+L_12)) .i .r2 i . INT{l/theta* (melmlast) PAR: 247.0011. (flux_s_s2flux_k_acc_s2)/lsig. %% ROTOR PART in rotor coordinates %i k acc r1 .flux_k_acc_r2*sin{rho_s).and doublecage induction machines %% TRANSFORMATION the MACHINE parameters to MODEL parameters % transformation to equivalent model with 2 inductances k Lm Rk1 acc Lsig Lsig_2_acc Rk2 acc %PAR{Lh/{Lh+L_12)).k1 . flux_sig2_r1 / Lsig_2_acc. PAR{k*k*R_k2).110 Modelling and identification ofsingle.188543). PAR{k*k*R_k1).140882).acc .671947).
70726E4. is2 int (wb*wb*filt31 par: 81. (wb*wb*filt33 par: 298. % .tau2.7792).64929E4. % .38*wb).tau1).FILTER u s s1 filt32 = inf (filt22us1 PAR: 3.333).7686).7941). 416. filt11 = inf (i_s_s2filt21 par: 2.tau2). par 1/(2*0.7727E20.FILTER u s s2 filt33 = inf filt23 = int filt13 = inf us2 int (filt23us2 PAR: 2.s . (i_s_s1filt2 par: 1.FILTER i .tau2).333).s2 filt31 = inf (filt21is2 PAR: 2. filt22 = int (wb*wb*filt12 par: 172.tau2. filt12 = inf (u_s_s1filt22 par: 6.tau1). par 1/(2*0. (u_s_s2filt23 par: 0. (wb*wb*filt13 par: 298. % .tau2). us1 int (wb*wb*filt32 par: 172.7418).3405E4.tau1). taul) . % .tau1.tau1.867E22.39877E4. % .49).FILTER i s s1 filt3 filt2 filt1 is1 inf int inf int (filt2is1 PAR: 1.5402E9.tau1.92*wb). % Filter cutoff frequency 1500 Hz % Astrom and Wittenmark % Adaptive control pag.tau2.49).tau2. tau1.tau2). (wb*wb*filt1 par: 13.Appendix E III %*************************************************************************** % .FILTERING OUTPUT VALUES FOR DATASET WITHOUT ALIASING III % wb tau2 tau1 Using fourth order Butterworth filter's PAR (1500*2*pi). (wb*wb*filt3 par: 12. filt21 = int (wb*wb*filtll par: 83.
/c30/p06. Fl: TFM IDENT To apply the TFMmethod the following files are necessery: • TFM_ID.asm: Initialization and definition of variables and macros used in TFM ID. * * * * .d. Lsig. /c30/globdef. • Matlab.ASM TwoFluxModel method parameter identification [Bla '94] for asynchronous machines Online tuning of the singlecage machine parameters: Lm. * .include " .asm" .. /c30/pOScinit. Rk_acc and Rs INPUT: 3phase stator voltages and currents and four parameter values OUTPUT: flux difference between U/Imodel flux and I/phimodel flux TMS320C30 code author: J.asm" macro definitions for global names{application independent) . /c30/mathlib.asm" include mathlib for testing purposes (application independent) ..include " . * * * * * * * TFM ID.asm: In this file the macro's for creating a Matlabfile are defmed. v. TMS320c30 CODE In this appendix the following DSPprogram's are given: • TFM ident: twofluxmodel method identification • OE data: program for storing a dataset used to apply the outputerror method.asm *************************************************************************** * * * ..include " . Werf updates: S.asm" inputoutput data migration through ADCs (application independent) .M. Schilperoort date 157'94 ************************************************************************** Main code automaticaly called after initialisation ************************************************************************** * ************************************************************************** Application independent initialisation : reset and interrupt vectors (application independent) .include " ..AppendixF 113 ApPENDIX F: DSPPROGRAM'S.asm: Main program of the implemented twofluxmodels • BLOCKS.
always do that! i.scimp_1$96 import @i_sb_mes.ch4..@_dt STF loop from conv to conv LDI EINT1.AD and DA conv start at +flanc .scimp_2$14 Machine parameters point_to p06_b2 import @inv_Lm_est.ST IDLE .@dt LDF @_samplepu. 402 samplepu.reset int request occurence bits .ARO LDI @sample.all program code should be inserted after this point  i.scimp_0$10 import @R_k_acc_est. 31.enable ext int 1 only (comes from ADC) . variable definitions and used macros .include blocks. .data definei define define (global) variables for program flow (application dependent) sample.RO STI RO.text LDP PROGRAM. then execute ISR1 .IF .RO RO.reset int bits. set sample time . 3.r/o instruction Measured voltage and current point_to p06_b1 import @i_sa_mes.scimp_1$96 import @u_sa.scimp_2$14 import @u_sc.ch3.timer 0 period register .chS. 402 == 100us (timer period)*100pi Ipu time == 1/(2pi*SO) sec block.at return IE() == OOH & GIEbit == 0 .ch2.asm interrupt services (application dependent) .141S927e2 _samplepu.include " .desired period .beginning of code segment .scimp_2$14 import @u_sb. IF OR GIE.ch3. Ius: XOR IF.asm .830989 timer period.asm" ************************************************************************* .ch2.*ARO @samplepu. (almost) nothing happens inside ISR1 .@samplepu == integration step .DP .asm".scimp_1$OO Scaling factors scimp_@ are defined in "p06.scimp_O$60 import @Lsig_est.114 Modelling and identification ofsingle.scimp_1$OO import @R_s_est.and doublecage induction machines Application dependent auxiliary .PROGRAM: . IE XOR IF..label PROGRAM defined at pOSboot.enable execution interrupt .start of program code .wait interrupt 1. /c30/isr1.ch1.LDI @TOPER.RO LDF STF RO.ch4.ch1.
R4 LDF @u_sps2_obs.@Sphi_s_s_obs posflux CMPF @THREE. Rotation to stator fluxcoordinates .R4 SUBF R7.AppendixF 115 . Check for statorfluxo It has to be positive.01. (see Fig.@i_s_s2. UImodel with feedback.@sin_neg.u_sps2_obs . EMvoltages in U/Imodel ..************************************************************************** i TwoFluxModel method for parameter identification .@sin_neg cos R7 STF RO. j. R5 R6=R_s_est*i_sPS1_obs R7=R_s_est*i_spS2_obs R4=e_sps1_obs=u_spS1_obsR_s_est*i_sps1_obs R5=e_sps2_obs=u_sps2_obsR_s_est*i_sps2_obs .R6 plus pi STF R6.i Transformation of voltage and current to a 2dimensional representation (see BLOCKS 0asm) j. .@i_s_S1.@Sflux_s_obs LDF @Sphi_s_s_obs.R7 BP posflux NEGF R7 make flux positive STF R7.@u_s_s1.R6 MPYF @R_s_est.R6 LDF @i_sps2_obs.@sin_neg.vectrot LDF @Sphi_s_s_obs.R5 STF R5.R6 BP minPI ADDF @PI.R7 compare flux with 300 BN smalthr Smaller then Three LDF @THREE.@Sflux_s_obs j.u_sps1_obs.2). rotate stator current to flux coordinates . 5.u_from_3_to_2 IUVW_to_s1s2 @i_sa_mes.RS LDF @i_sps1_obs. rotate stator voltage to flux coordinates vr @cos_neg.R7 sin R7 NEGF RO STF RO.i_spS1_obs.01 and < 3.@i_sb_mes.R7 SUBF R6.@u_s_s2.@i_s_s1.R7 MPYF @R_s_est.R6 minus pi STF R6.@Sflux_s_obs B vectrot Flux is correct smalthr CMPF 0.01.LDF @u_spS1_obs. > 0. output of sin function to RO output of cos function to RO vr @cos_neg.i_sps2_obs .0 LDF @Sflux_s_obs.R7 compare flux with 0001 BGE vectrot LDF 0.R6 plus or minus pi for statorflux angle CMPF @PI.R7 STF R7..@Sphi_s_s_obs B posflux minPI SUBF @PI.@cos_neg .@i_s_s2 j.
j.@cos_neg @cos_neg.R6 @i_sys2_obs.R7.MPYF @Slp.1) j. phi_kys_obs @phi_kys_obs.RS RS.LDF sin NEGF STF cos STF VR @phi_k_s_obs.3.RO STF RO.Cageflux of rotorcage . flux_k_acc_obs .LDF @flux_k_acc_obs.@phi_k_s_obs j.i Statorflux with feedback j. R6 for later use integrate Sflux_s_obs.R7 R7 i output of sin function to RO RO RO.@i_s_s2.i Statorflux angle in statorcoordinates with feedback j.R4..ONE j.RS @Sphi_s_s_obs.R7 @Sflux_s_obs.R4 integrate Sphi_s_s_obs.LDF @i_s_b_nr.LDF LDF MPYF MPYF SUBF NEGF NEGF capo LDF ADDF STF @i_sySl_obs.R6 R6 R7 R6. R4 MPYF @R_k_acc_est. Rotation of the stator current to shortcircuit rotorfluxcoordinates j.and doublecage induction machines j.Rl SUBF Rl.i Estimation of the cageflux using the I/phimodel (Fig.R4 LDF @Sflux_k_acc_nr.@i_s_Sl.@sin_neg R7 i output of cos function to RO RO.ONE i output to RO j.ONE j.i Integration and feedback loop = I/phimodel j.R4 integrate Sflux_k_acc_nr.116 Modelling and identification ofsingle.R4.R4.R7 flux_kysl=i_sysl*Lsig_est+flux_s @Lsig_est.i_s_b_nr.RS div RS.Rl MPYF @inv_Lm_est.i_s_w_nr j.R4 i R4 = fluxP_s_obs LDF R4.@sin_neg.RO SUBF @Sflux_k_acc_nr.R6 .R6 ADDF R6.@Sflux_s_obs LDF RO.R6 flux_kyS2=i_syS2*Lsig_est @Lsig_est.MPYF @S2.@delta_flux_k flux difference .
scexp_4$OO export @m_el_obs.scexp_4$OO export @i_s_s2.flux_s_s2 LDF sin Write to analog outputs AIDboard p06 point_to p06_bl export @flux_k_acc_obs.scexp_4$OO export @Sflux_k_acc_nr.end . update_states BR lus .chS. Deter.ch7.ch8.scexp_4$OO export @delta_flux_k. asm" .ch6.@sin""'pos cos R7 output of cos function to RO STF RO.jump back .ch4.@sin""'pos..END OF CODE .ch2.scexp_l$OO Scaling factors scexp_@ are defined in "p06..scexp_4$OO export @i_s_sl.ch3.R7 R7 output of sin function to RO STF RO.chl.update states to new values .@cos""'pos.the cycle is now finished .flux_s_sl..AppendixF 117 i.@cos""'pos poca @Sflux_s_obs.mine stator flux in stator coordinates for visualiation i~ @Sphi_s_s_obs.scexp_4$OO export ®U_s_s2. .scexp_O$20 export ®U_S_Sl.
0 0.asm update : S.118 Modelling and identification ofsingle. define sinrho. flux _kyS1. define _dt.1415927e2 31.0 0.sa.asm) ************************************************************************** * declare all used variables * reserve space and assign to initial value in data section ************************************************************************** . Initial values of the estimated machine parameters [PU] define r s est.3 define inv_lm_est.0 0.*************** machine parameters ***************** .flux k.0 0.0 0. define rho s.0 define i_s_s2. delta . 0. 0. 0.asm: Initialisation of variables and MACROS used in TFM ID. define u . 1/1m_est 0.0 define i_s_s1.0 0. define i sb_mes.0 0.nonstates voltages and currents in 81/82 coordinates define u_s_s1. 0.39 stator resistance define r k accacc est. include mathlib. Schilperoort date : 150794 * * * * .38 Input/Output vaiables .0 0..0 . define i sc_mes. flux_kys2.and doublecage induction machines ************************************************************************** * blocks.0 0.0 0. 0. 3.. Internal variables i. flux s s2.define i sa_mes.**************** simulation step ******************* define dt. flux s sl. define define define define define define d m el _nr. define rho_max. measured signals . define u sc.0 1. define u sb. define cosrho.03 rotor resitance define 1 sig_acc_est .0 0.M.0 0. 0.0 0. * ************************************************************************** .data . defaut don't forget to reassign dt .asm (already included at sinusmod.0 define u_s_s2.0 0. leakage inductance 0.0 current in fase a current in fase b error in torque flux difference between the flux in stator in statorcoordinates used for verification j.830989 == 100 us. 0.mathmacros and precompiled Croutines .
phi_kys_obs.word new states Sflux_s_obs.Used in update_states (new_statesstates) .0 0. 1.0 .0 0. a Sflux_k_acc_nr. define U_SyS1_obs. 0. 1.NUMBER_STATES . anglestates (states are always between 2 PI and 2 PI) anglst define Salpha. space NUMBER_STATES define space for previous value of stateinput (used in integrate macro)bak define define define define Sflux_s_obs_Bak. don't forget to assign good initial values to get a stable start i scalar states .0 1.0 0. define u_syS2_obs.0 define S2. o.0 0. define i_syS1_obs. 0. 0. i. cosyos.0 Astates Anew states states define define . 1. define i_sys2_obs. Sflux_k_acc_nr_Bak.. 0.0 currents in flux coordinates used in the I/phimodel define i_s_b_nr. a 0.0 1.0 0.asg .0 define Sphi_s_s_obs.statevariables .NUMBER_SCALAR reserve space for new calculated states .0 0. i_k_est.0 0.0 0. eps_kys. phi_k_s_obs. a .0 0. define cos_neg.Used in update_states (new_statesanglst) .asg . 0. Salpha_Bak.0 define i_s_w_nr.0 0.Appendix F 119 Variables for the ur model signals define sin_neg. i_kyS1..0 1.0 0. 1. 1.0 feedback variables U/Imodeldefine SIp.0 new states . sinyos.word states . Sphi_s_s_obs_Bak. a fluxes define define define define define define define define flux_k_acc_obs.
Rl Rl RO.*ARl++ .endm copy to states copy from new states load RO with first state loop until all states are copied store st and load next st in RO store last state ********************************************************************** * * * * * macro IUVW to sls2 calling syntax: description: * * IUVW to sls2 transformation of 3 to 2 phase representation In stator coordinates.RO STF RO.5.endloop STF RO.Rl 1/2 i sa i sb 1/2 i sa + i sb  . adress of a variable * ********************************************************************** ********************************************************************** * * macro : update_states * * * * calling syntax: description: update_states Copy new calculated statevalues to current state var.eval x+l. . loop .RO RO O. . . Keeps angle type state between 2PI and 2PI * * * * * inputs: output: uses: cycles: RO.Rl .I_s_s2 RO.ARl LDI @Anew_states.x . ARI 18 ********************************************************************* update_states . ARO.Rl IUVW to sls2 LDF NEGF MPYF LDF NEGF ADDF I .120 Modelling and identification ofsingle.sa.asg O.RO .RO I sb.macro .break (x==NUMBER STATESI) LDF *ARO++.x LDI @Astates.RO .ARO LDF *ARO++. Using 2 measured stator currents * * * * * 8 ********************************************************************** inputs: outputs: uses: updates: cycles: I_sa.Rl .I_ab I_s_sl. A <name> pointer type parameter.and doublecage induction machines ********************************************************************** **************************** MACROS ********************************** ********************************************************************** * * * * * macro parameter name conventions: R <name> register type parameter : ROR7 RD <name> register type parameter : ROR7 or direct type parameter : @.*ARI .
R1 NEGF R1 ADDF @I sa.0.1/sqrt3 usc ********************************************************************** : i from 3 to 2 * macro * * * * * .R1 SUBF @I_sc.U_sb.RO i s s2 i s sl sqr(3) {1/2 i 1 1/2 i_sa sa ********************************************************************** (Use with BRAMAMATIC EM 1567) : U from 3 to 2 * macro * * * * * * calling syntax: description: inputs: outputs: uses: updates: cycles: u . I_s_s2 . U s s2 R1. I_s_s2 R1.from.endm 1/2* (I_sb+I_scl I sa1/2*(I_sb+I_scl=I s sl ********************************************************************** .R1 MPYF @HALFSQR3.R1 SUBF U_sc. I_sc I_s_S1.@I_s_s2 .AppendixF 121 MPYF MPYF STF STF . ********************************************************************** LDF @I_sb.R1 STF R1.R1 NEGF R1 STF R1.R1 ADDF @I_sc.U_s_s1 LDF U_sb.3 to 2 voltage transformation * * * U_sa. ********************************************************************** LDF U_sa.U s s2 .RO RO.3 to 2 current transformation I_sa. I_sb.@I_s_s1 LDF @I_sb.from. I_s_s1 R1.R1 3.U_sc U_S_S1. * * .R1 MPYF @HALF.R1 STF R1.R1 .endm @SQR3. * calling syntax: description: inputs: outputs: uses: updates: cycles: i . * .R1 STF R1.R1 NEGF R1 MPYF @INVSQR3.endm stator voltages sign correction due to measurement u s sl u sa sign correction u_s_s2 = 1/sqr3 usb .
J22
Modelling and identification ofsingle and doublecage induction machines
F2: OE
DATA
The macros used in OE_DATA.asm are also defined in BLOCKS.asm given in Appendix Fl.
************************************************************************** **************************************************************************
, * . ; *
; *
OE_DATA.asm:
Used for creating a dataset to apply to the DEidentification stator voltage and current in the two phase stator coordinates MATLAB.ASM (macro's MATINIT and NAARMAT) storing data in the external memory of the C30 DSPsystem, in the debugger this data can be put on disk. With the Cprogram "STRIPPER" the data can be transformed to matlab format.
* *
* ; *
*
storing:
Using:
* * ; *
*
TI320C30 code
*
*
* *
author: S.M. Schilperoort date : 0608' 94
************************************************************************* *************************************************************************
Main code automatically called after initialisation
************************************************************************* *************************************************************************
Application independent
*************************************************************************
initialisation : reset and interrupt vectors (application independent) .include ", ./c30/pOScinit.asm" macro definitions for global names (application independent) . incl ude " .. / c3 O/globdef . asm" include mathlib for testing purposes (application independent) mathematical library .include n •• /c30/mathlib.asm" include matlab to create a matlab file .include matlabl.asm inputoutput data migration through ADCs (application independent) .include " .. /c30/p06.asm" inputoutput data migration through fully digitised board .include " .. /C30/p09.asm"
*************************************************************************
*
Application dependent
*************************************************************************
block definitions and macros describing the machine .include blocks.asm interrupt services (application dependent) .include " .. /c30/isrl.asm"
Appendix F
123
auxiliary (global) variables for program flow (application dependent) define sample time and pu translation 
.data definei sample, 402 define samplepu, 3.l4lS927e2 define _samplepu, 31.830989
timer period, 402 == 100us (timer period)*lOOpi lpu time == 1/(2pi*SO) sec
************************************************************************
Declare all used variables reserve space and assign to initial value in data section
************************************************************************
Simulation step define dt, define _dt, measured define define define 3.l4l5927e2 31. 830989
== l/lOOpi sec 100 us, default don't forget to reassign
lpu
==
dt
phase voltages u_sa_mes, u_sb_mes, u_sc_mes,
0.0 0.0 0.0
measured phase currents define i_sa_mes, define i_sb_mes,
0.0 0.0
semi four phase voltages define u_s_sl, 0.0 define u_s_s2, 0.0 semi four phase currents define i_s_Sl, 0.0 define i s_s2, 0.0 angles define rho s,
0.0
variables used for "na armat" definei time, 0 definei counter, 0 definei previous, 0 define start, 0 filtered define define define define values u_s_sl f, u_s_s2_f, i_s_sl_f, i_s_s2_f,
counts the number of time steps used for matlab storage used for matlab storage command to save data
o o o o
**************************************************************************
**. text PROGRAM:LOP PROGRAM,OP
Beginning of code segment The program code should be inserted after this point 
**************************************************************************
;start of program code ;label PROGRAM defined at p05boot.asm set sample time ;timer 0 period register ;desired period ;AD and OA conv start at +flanc
i
LOI LOI STI
@TOPER,ARO @sample,RO RO, *ARO
124
Modelling and identification ofsingle and doublecage induction machines
LDF STF LDF STF LDI STI
@sampleyu,RO RO,@dt @_sampleyu,RO RO,@_dt 0, RO RO, @time
;@sampleyu
integration step
initialisation of time and used in naarmatlab
;Initialisation matlab file sample frequency 10kHz , 12000 samples at 5kHz total measuring time = 2.4 sec
;matinit @dt,2,12000, """u_s_sl_f""", """u_s_s2_f""", """i_s_sl_f""" , 1111l1i_s_s2 filII", "lIl1rho_slllln
j Program loop from conv to conv Ius: LDI XOR OR IDLE EINTl,IE IF,IF GIE,ST ;enable ext int 1 only (comes from ADC) ;reset int request occurence bits ;enable execution interrupt ;wait interrupt 1, then execute ISRI ; (almost) nothing happens inside ISRI ;at return IE() == OOH & GIEbit == 0 ;reset int bits, always do that!
XOR IF,IF
;inport values point_to p06_bl import @i_sa_mes,chl,scimp_l00$0 measured currents result in [A] import @i_sb_mes,ch2,scimp_I00$0 measured voltages result in [V] import @u_sa_mes,ch3,scimp_666$0 import @u_sb_mes,ch4,scimp_666$0 import @u_sc_mes,ch5,scimp_666$0 if value of switch is > 2V, import @start,chB,scimp_l0$0 then start storing data point_to p09 get_rotyos @rho_s rotor position [rad]
;3>2 transformation to a 2dimensional frame result: u_s_Sl,u_s_s2,i_s_sl and i_s_s2 i 
u_from_3_to_2 @u_sa_mes,@u_sb_mes,@u_sc_mes,@u_s_sl,@u_s_s2 IUVW_to_sls2 @i sa_mes,@i sb_mes,@i_s_sl,@i_s_s2
j 
write data to matlab file, if write=O the macro naarmat uses the actual time and the start command "counter" if counter is 1 no storage, if counter is 0 , the desired number of mesurements is stored in section matlab. The number of samples is initialised in macro "matinit"
j LDF CMPF BP LDI STI startO naarmat @time,2,@counter,@previous,@u_s_sl_f,@u_s_s2_f, @i s sl_f,i_s_s2_f,@rho_s @start,RO @TWO,RO startO O,Rl Rl,@counter if input value start > 2V then data aquisition is started
scexp_666$0 export @u_s_s2. LD1 ADD I ST1 BR @time.offsets aXF0S (from basic address) for the registers at each board .ch1.set OFFFFH . R1 R1.p09 .ch2. R1 I. Neg dir : FFFFH > FC7BH (in this case add +1 »> 2cmps 1) **. word 00804000H 00804400H 00804800H .scexp_100$0 export @u_sa_mes. reset to OH (+sense) or FFFFH (sense) by input /OH after each revolution.set 3 16 bits. word .set 4000H .. 360 degrees == 900 points.warning: check possible conflict with p06 .scexp_8$00 j. Schilperoort 25894 ********************************************************************** *. increment the timer j.allows only bit 14 .END OF CODE j.ch3.Write variables to D/Aconverter 125 j.p09 p09 . Pos dir : OOOOH > 0384H (= 900).i\ppendixF i. end . ax mask mask mask position (angular position with a 1000 points encoder) 16 . word .set OFFFH msb .addressing the fully digital 10 boards  .switch sw40 (3 2 1) must be: 111 110 101 * * *.M.chS.asm inputoutput signal flow through P09boards ********************************************************************** * by JDuarte * updated by S.ch4.ch8..scexp_100$0 export @i_s_s2. @time Ius jump back to start new calculation j.. the cycle is now finished .scexp_666$0 export @i_s_S1.data . ********************************************************************** * * * * P09.point_to p06_b1 export @u_s_s1.data handle and scaling  *.scexp_666$0 export @rho_s..allows 16 LSBs 12 .
R7 R7 @sc_axJlos.R7 R7 40.M. As a result of the used construction the counter counts for. result 0 .R7 mask_12.macro definitions for general purpose use  i.sets the 17 MSBs of a 32 bits reg 2pi/1000 points 2pi/4000 points **..126 Modelling and identification ofsingle.endm value *+AR7(O).macro for reading rotor position with a 1000 points encoder extended to use with a 12bits 4000 up/down counter. macro for reading rotor position with an encoder i.get_rotJlos .read value from channel .test rotation sense . .R7 mask_ffisb.word OFFFF8000H .R7 1000.m 40 to 4040.R7 fl? 07fffH.570796327e3 .extend to 32bits store input value as float i.float 6.endm value *+AR7(axJlos).R7 R7..R7 posdir? @negJlrefix.macro LDI AND FLOAT SUBI MPYF STF .macro LDI AND TSTB BZ OR ADD I B AND posdir? fl? FLOAT MPYF STF .R7 @sc_rotyos.float 1.283185307e3 .and doublecage induction machines negJlrefix sc_axJlos . (S.2pi store input value as float j. Counter on digital board (EPLD) count up/down dependent on the rotation direction.R7 R7. Schilperoort) i.value Read value from channel use only 12 bits "offset" correction scale integer value.R7 mask_12.value .
The first variable stored is the sample time in [pu].mat") which can directly be used in MATLAB. Using the program Stripper the file is changed to matlabformat. The macro matinit also defines the variable: matlen which is the length of the matlabfile in words. Technical University Eindhoven. Macro: matinit call: malinit dT. Bosga. At that moment counter is set to 1.length. The data is stored if counter equals zero.P8 are the names of the desired variables to store.P1. *matlen.. Matinit uses the macro mateen to reserve and initialize the memoryspace per variable.P1. step.step.P8 This macro is called each timestep. . In this table the starting adresses of the memory space are placed. Variable step is the number timesteps between two data samples.. Counter is incremented evert time data is stored until the defined memory space is full.jilename".. counter.obj". Using Stripper results in a matlabfile (". Step is the numer of time steps between two storage of data. The macros defined in "MATLAB. The variable names must be placed between triple quotes. Store on disc This is done in the Debugger using the instruction "ms matsec. using the Debugger..asm" are used to store data in the C30 DSP system and to make a MATLAB datafile. Length determines the number of samples per variable. Exept the desired data a header is added to the file. Conversion to Matlabformat: Stripper. Pl. Department EMV. Macro: naarmat Call: naarmat time.exe The program Stripper removes the header of the stored datafile. . mateen also defines a table mattab (datasection).. The resulting datafile is given in the COFFformat. P8 The macro matinit creates a section "matsec" in the internal DSP memory.previous. To do this two macros are used: matinit defines and initialises memory space and naarmat stores the desired data in the DSP memory. The stored data can then be written to disc...AppendixF 127 F3: STORE DATA IN MATLABFILE By S. The debugger automaticly add's the extension ".
0. Lengte (variable ore number) # PI tim P8 (names of variables) # Reg's: Rl. global . ) matinit . word 99999999h .global .Rl P2.Rl PS.Lengte. table is a table with the start adresses . . .P7. * MATLAB.mlist Dt.global matend . word .Rl P6. * updates: 11 augustus 1994 ************************************************************************ ######################################################################## # Macro: matinit (initialisation of a Matlab file) # In: Dt..Lengte. 22 maart 94 # n. Continue assemble in .Rl matend .and doublecage induction machines ************************************************************************ * * .endm Sign for end of matlab file Adress of table with adresses mat tab matendmatsec Lengte amattab matlen opslen Length of matlab file Space for 1 variable mattab matlen opslen .sect "matlab" .data . Rl Pl.Rl P4. Names of variables must be placed between # triple quotes (bv.P8 .global matsec . word . Rl Illdeltat" II .Lengte. text LDF TOIEEE mateen mateen mateen mateen mateen mateen mateen mateen 0.Lengte. Tussen. ARI # SGB.b.Rl P8.P2.data .P3.Lengte.Lengte.Pl.Lengte. Rl Rl.Rl Rl=Dt*Tussen=time between measurements Matlabvariable del tat = Rl . of the storage space Create storage space for PI tim P8 Rl = initial value storage space Lengte=number of words in storagespace mat tab . word .P4.128 Modelling and identification ofsingle.I. text LDF MPYF TOIEEE mateen .macro .Rl P7. Rl Tussen.Lengte. * ..PS. #.Tussen.sect "matlab" . start of matlab file matsec Dt.Lengte.global . Rl Rl.Rl P3.asm Macro's for creating a Matlab file with the TMS320C30 * Auteur: Sjoerd Bosga(changes for use with C30 * by Simon Schilperoort} * Creation: 22 maart 1994 . text .''''''u_s_Sl''''''.text .P6.
AppendixF 129 ####################################################################### # Macro: mateen (init.endif STI 10 1 Len o Naml Naam.asg .if Naam.null comming up) (2 for quotes) 111111111111. amdata? @amdata?. word .endif . word . Spaties (Naml=9) 0. columnwise. string .endif . word . 3122 type (PC.asg . word .asg . Only used by macro "matinit" mateen #.if .endm .Len.asg . start adress of space reserved for this var. ARI # SGB. ARI (Len>l) (Lenl). Spaties Len mdata? . Spaties (Naml=13) 0. text LDI . of one varable in a Matlab file) # In: Naam (string between triple quotes) # Len (variable ore number) # Initwaarde (register.if . singleprecision.endif . word .asg . IEEE format) # PI tim P8 (names of variables) # Reg's: Rl.sect "matlab" .if .b. 22 maart 94 # n.Naml . data . *ARl++ . macro .endif . Matlab file format: see Matlab User Guide p. Spaties (Naml=5) 0. no text) mrows (1 row) ncols (Len column) imagf (no imaginar part) namlen (length of variable name) name of variable and zero's storage space mdata? . initialisation of storage space .Initwaarde ($symlen(Naam) >0) . word .if LDI RPTS .Length of a variabele name plus 1 $symlen(Naam)+12. Caution STI ipo STF for C30 use !! . space . RC if more than one word: repeat Initwaarde. Spaties .
P1. *+ARI (IRO) ARO . (variable ore number) # Teller. If (Teller=1) no storage 1.if LDF TOIEEE LDI STI .130 Modelling and identification ofsingle. R1 naarmv? Store ones per (Tussen) time steps If (Teller>=max) than storage space full and make Teller= 1 Detijd.P3. ARI RO.if LDF TOIEEE LDI STI .macro LDI CMPI BEQ Detijd. *+ARI(IRO) Store P4 on adress: *+ (*+mattab (3)) (Teller) ARI := adress of P4 storage space ($symlen (PS) >0) PS. ARI RO. R1 # SGB.endif .endif .P4. Tussen. RI RI. RO *ARO++. RO naaren? 1.. RO Eerder. Eerder @amattab. RO @opslen.PS. RO RO.P7. *+ARI(IRO) Store P3 on adress: *+ (*+mattab (2)) (Teller) ARI := adress of P3 storage space ($symlen(P4) >0) P4. RO Tussen. RO RO. ARI RO.if LDF TOIEEE LDI STI . ARI Opslaan van PS op adres: *+(*+mattab(4)) (Teller) AR1 := adress of PS storage space .adress of PI storage space let op STI ipv STF voor C30!! ($symlen (P2) >0) P2.adress of mattab IRO . RO RO. RO *ARO++. *+ARI(IRO) Store P2 on adress: *+ (*+mattab (I) ) (Teller) ARI := adress of P2 storage space ($symlen(P3) >0) P3.endif . R1 . RO RO.if LDF TOIEEE LDI 0.if LDF TOIEEE LDI STI .endif .P2.Teller.P6. (variables) # P1 tim PB (variables ore numbers) # Reg's: RO.Eerder. Eerder. ARI RO. R1 naartO? Detijd. RO *ARO++.Teller Store PIon adress: *+(*+mattab(O)) (Teller) ARI .PB Teller. RO *ARO++. RO *ARO++. R1 naaren? If (Teller=O) start storage CMPI BEQ LDI SUBI CMPI BLT LDI CMPI BGE naartO? LDI move I LDI LDI .Tussen.. IRO ($symlen(PI) >0) PI. ARO Teller.. 24 maart 94 naarmat #.and doublecage induction machines ######################################################################## # Macro: naarmat (write to Matlab file) # In: Detijd. RO RO.
Appendix F
131
BTl .endif .if LDF TOlEEE LDl BTl .endif .if LDF TOlEEE LDl BTl .endif
RO, *+ARl(lRO)
($symlen(P6) >0) P6, RO RO, RO *ARO++, ARI RO, *+ARl(lRO)
Store P6 on adress: *+ (*+mattab (5) ) (Teller) ARI := adress of P6 storage space
($symlen (P7) >0) P7, RO RO, RO *ARO++, ARI RO, *+ARl(lRO)
Store P7 on adress: *+ (*+mattab(6)) (Teller) ARI := adress of P7 storage space
.if
LDF TOlEEE LDl BTl .endif LDl ADD I move I .endm
($symlen(PB) >0) PB, RO RO, RO *ARO++, ARI RO, *+ARl(lRO)
Store PB on adress: *+ (*+mattab (7)) (Teller) ARI := adres of PB storage space
naarmv? naaren?
Teller, RO 1, RO RO, Teller
######################################################################## initialisation table nessesery for the TOlEEE macro (page 1145 user's guide) .data .word .word . word .word . word aieeetab .word .global ieee tab
;
OFFBOOOOOh OFFOOOOOOh 07FOOOOOOh OBOOOOOOOh OBI000000h ieeetab aieeetab

132
Modelling and identification ofsingle and doublecage induction machines
######################################################################## # macro: TOIEEE (FAST Version page 1146, user's guide) # function: conversion between the 320c30 format and the IEEE # floating point numbers. The number to be converted # is in the upper 32 bits of RD. The result will be # in the lower 32 bits of RO # # RD, AR1 uses: # result: RO # cycles: 14 (worst case) #
TOIEEE
. macro LDI LDF LDFZ BND ABSF LSH PUSHF POP
ADDI
NEG?
LSH BR POP
ADD I
LSH
ADDI
num_in,num_out @aieeetab,AR1 num_in,RO *+AR1(4),RO NEG? RO 1,RO RO RO *+AR1(2),RO l,RO RES? RD *+AR1(2),RO l,RO *+AR1 (3), RO
AR1 points to table (page 1145 user's guide) determine the sign of the number If zero, load appropriate number Branch to NEG if negative (delayed) Take the absulute value of the number Eliminate the sign bit in RO place RO onto the stack (float) Place number in lower 32 bits of RO (int) Add exponent bias (127) Add the positive sign ; Place number in lower 32 bits of RO Add exponent bias (127) Make space for the sign Add the negative sign place result in num_out (INT)
RES?
LDI .endm
i 
AppendixG
133
ApPENDIX
G: MATLAB MFILES
For the OEmethod in Matlab the following mfiles • Pre'proc: reconstruction of stator current and stator flux in rotor coordinates. • Par_est: estimation of the machine parameters using OEmethod. • Specint: Integration in frequency domain.
G 1: PRE PROC.M:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % PRE PROC.m
% %
% % % % %
This Mfile preprocesses the measured dataset. Measured voltage and current in the twophase representation Are used for the reconstruction of the stator flux. The reconstructed stator flux and stator current are transformed to rotor coordinates using the measured rotor position rho_so
% The reconstructed Flux and current will then be applied for % OEidentification method "PAR EST.m".
%
% INPUT: u s sl f,u s s2 f, i s sl f, i_s_s2_f and rho s % OUTPUT: IsR (stator current in rotor coordinats) % FsR (stator flux in rotor coordinats)
%
% S.M. Schilperoort 81994 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% dT=1/S000; USS=(u_s_s1_fj*u_s_s2_f) ; ISS=(i_s_s1_f+j*i_s_s2_f) ; Motpos=rho_s; x=max(size(UsS)) ; t=O : 1: x1; t=t*dT; % % % % % deltat= sample time; Define stator voltage and current as complex values (measured voltage has rotation direction opposit to current!!) Length of data set
% total time
%%%%%%%%%%%%%%%%%%%%% SIGNAL INFORMATION %%%%%%%%%%%%%%%%%%%%%%%%% clc; numsamp=len(UsS); % Number of samples dT=t(2)t(1); % dT = sample time fs=l/dT; % fs = sample frequency fnyq=fs/2; % fnyq= Nyquist frequency maxtime=max(t) ; % total record time disp( ['Record time I ,num2str(maxtime) , , [s] 'J), disp( ['Recorded samples ',int2str(numsamp),' [#] I]), disp(['Record Sample frequentie = ',int2str(fs), I [Hz] ']), disp ( [' ']); disp( ['Machine information']); p=input('Number of pool pairs = ... '); %%%%%%%%%%%%%%%%%%% OPERATION CONDITIONS %%%%%%%%%%%%%%%%%%%%%%%% % Show rotor position 
velocity (mv) % % filter at 700 Hz % 4th order butterworth filter % filter motor velocity % Speed in [rpm] % plot mech. c=floor(Nper/(dT*abs(Ffund))). [B. fbut=700/fnyq. Motpos=Motpos(b:c) . mp=anglecon(mp) . mv=mv*60/p. plot(t(x). % filtering to determine % fundamental frequency mt=max (t) . dPdT=(sAV(2)sAV(1))/dT. % Take last n/2 samples DAV=detrend(AV(W)) .. disp('determine fundamental frequency component of te stator voltage') disp (I Filter UsS.UsS) .A. % Normalized filter frequency [B. xlabel ( 1 time [s] I) .A. % Total time F1=1/mt.velocity %% Remove part of dataset if it has no correct startvalue %%%%% a=input('take data from . mv(2)=0. % Detrend correction. ylabel(lrho_s [deg] I). % Calculate mean mech. % Nper=floor(max(t)*abs(Ffund)). lowpass at 100 [Hz] . mv=diff([mp(l) .134 Modelling and identification ojsingle. % % % % % Shorting the data set from t=a not using data upto t=a c = max time correction data length data from t=b to t=c % % new max time %%%%%%%%%%%%%%%%%%%%%%%%% CALCULATE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % % Fundamental frequency component Number of stator periods in the data set Rotor speed Slip frequency clc.A]=butter(4. start data at t=O .and doublecage induction machines newplot (211) plot (t. % Determine trend in AV. % 4th order lowpass filter UsSf=filter(B. ylabel(lomega_m [rpm] shaftspeed=mean(mv) . pause % % Make continuous angle % Differentiat rotor postition % start values mech.mv) . UsS=UsS(b:c) . title('Rotor position') xlabel(ltime [s] I).fbut) . % filtering stator voltage AV=anglecon(UsSf) . velocity I).Nlp) .A] =butter (4. I).mv(x)) . sAV=AV(W)DAV. % continue angle of UsS n=len (AV). I). sec b=a/dT+1.mp])/(dT*2*pi). x=5000:1:len(t) . % 100 Hz cutoff frequency Nlp=Flp/fnyq.5*n:n] . c=len (t) . % Number of full stator periods. mv(l)=O.Show mechanical rotor speed mp=exp(j*p*Motpos) . % determine sloop of the signal Ffund=dPdT/(2*pi) . mV=filter(B.Motpos) . % new number of samples W=[0.. IsS=IsS(b:c) ... %. % rearange data. % Flp=100. t=[O:l:len(UsS)l]*dT.
' [Hz] '] ) .k)=FsS(IPnts(W))mean(FsS(IPnts(W))) . % disp( ['Fundamental frequency = '. Gorter maart 94 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% disp('Stator flux reconstruction . c=cl. [Hz] ']). % RPnts=[1/6:1/6:fix(Nper)].bd.num2str(Ffund) . % SPECINT= spectrum integration % %%%%%%%%%%%%% INTEGRATION IN TIME DOMAIN %%%%%%%%%%%%%%%% Using a 4th order Addams Moulton routine elseif k==2 bd= [1 1]. % Drift=mean(MPnts')'. % UsS=UsS (1: c) . % i f NPI >1. ad=dT/24*[9 19 5 1]. % Define number new time steps IPnts=len(t)/Nper*RPnts. end.num2str(Nper). Rs=input('two phase stator resistance [ohm]? ') %%%%%%%%%%%%% INTEGRATION IN FREQUENCY DOMAIN %%%%%%%%%%% i f k==1 FsS=specint(t.8*Ffund). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Flux reconstruction % R. MPnts(:. (UsSRs*IsS) . t=row(t) . k=menu('Method '. % AdamsMoulton integration FsS=filter(ad. % %. disp ([' I]). % stator frequency. % MPnts=zeros(NPl.6) . % W=[k:6:6*NPl] .' [rpm] ']).clear variables clear t a fre mag q w Flp Nlp B A Av AV W DAV sAv dPdT UsSf clear Set finput pha sAV testl Fl mt n numsamp filen %t=[O:I: (cl)]. '. 1 ' ] ) .num2str(shaftspeed). % Rotor position up to t=c IsS=IsS(I:c). % Dataset has Nper full periods in t=t*dT. . end.'Freq. % VDrift=mean(diff(Drift))/Tper. disp ( [' ']). num2str (abs (Ffund) abs (shaftspeed*p/60) ) . disp( ['Number of stator periods = '. clear a b c . % Determine the drift per period for k=[1:6].J. domain'. % VDrift=Drift/Tper. % Tper=I/Ffund. % . % Drift=FsS(n/Nper+l) FsS(I). % n=len(t) .). disp( ['Rotor speed = '. % elseif NPl==I.2)==I. disp ( [' Slip frequency = I .UsSRs*IsS). % NPl=fix (Nper) .AppendixG 135 if rem(c. 'Detrend ').O. % Make rowvector Motpos=Motpos(l:c).
end.FsR) .FsS) . title('Current and flux in rotor coordinates') xlabel ( 'time [s]'). 'tustin'). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% . IsS=filter(bd.*IsS. end.and doublecage induction machines end. clear FlxDrift. % FlxDrift=VDrift*row(t). % Drift correction per period FsS=FsSFlxDrift*sign(Ffund). % clear RPnts IPnts MPnts Drift VDrift FlxDrift FlxS Tper n. ylabel ( 'IsR [A] I ) . %.ad.136 Modelling and identification ofsingle.Plot reconstructed flux and current newplot (211). FsS=FsSmean(FsS(1:NP1/Nper*n)). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Rotating stator signals to Rotor coordinats %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% IsR=exp(j*p*Motpos) . plot(t.*FsS.ad. xlabel ( I time [s]'). '. plot(t. FsR=exp(j*p*Motpos) . ylabel ( 'FsR [Vs] I) . FsS=filter(bd.IsS) . %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Filtering and remove DC component %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% [bd ad] =c2dm( [1 0]. [1 10] .IsR) .dT.
.O).Z(:. clc. FMAX=input(['Prefilter (L) cutoff [Hz] < fnyq='. [Uit]=filter(Bf.Z(:. % nyquist freq = 1/2*sample freq. [Ordnb Ordna 0]). pause.num2str(fnyq). % dataset vector % estimated stator flux newplot (211) axis( [0. title('stator flux in rotor coordinat Rl ' ) xlabel (' time [s]') ylabel(' flux [Vs] ') . FsRhat=predict(Z. preerror=(Z(:..zpI). 1.m % % OEmethod. gridxy(0.2) . gridxy(O.flipud(Z(:. Z= [Uit In].I) . [In.Af]=butter(4.5. [Uit.Af.I))) . [In]=filter(Bf. Identification of the asynchronous machine parameters % % INPUT: IsR and FsR (stator current and flux in rotor coordinats) % % OUTPUT: dependent on chosen model order % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% x= 1 : 1 1 en (t) . %%%%%%%%%%%%%%%%%%%%%%%% OE model structure %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TH=oe(Z.I)FsRhat) .flipud(Z(:.Af.zpU).2. 1)] ) .TH) . [FsRhat (x) Z (x.real(IsR(x))) % show stator current in rotor coordinats subplot (212) % plot(t(x) . : ']).t (1) ) . 1.2))) .zpI]=filter(Bf.FMAX/fnyq) . 51 (t (2) .' IsR. °: % PerFiltering the desired frequency region  f nyq= . newplot (211) plot(t(x) .Af.' [Hz] . end. plot (t (x) . pause. %%%%%%%%%%%%%%%%%%%%%%%% SHOW OUTPUT ERROR %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Z=[FsR. i f FMAX<fnyq.5.5]).Appendix G 137 G2: PAR EST.zpU]=filter(Bf.']. clc.3). [Bf. %%%%%%%%%%%%%%%%%%%%%%%% Estimation results %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% present (TH) .real(FsR(x))) % show stator flux in rotor coordinats Z=[row(real(FsR)) row (real (IsR))] . clear Fmax In Uit zpI zpU Bf Af w fvss Mvss.Af.M %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % PAR EST.
range [mag_d. Fc= [FO 1).preerror(x)). % Discrete bode plot %% % Chosen model order = 1 . B1=(bOb2)*dT. title ('prediction error') xlabel (' time [s)') gridxy pause %. A FO=«lf1+f2)*dT 2)/4.pi.Fd)=th2poly(TH) . OS) ) plot(t(x) . F2= (l+f1+f2) .d. B1=Lsig+Lm. OS. B2=(bO+b1+b2).phase_d)=dbode(Bd. F1=(lf2)*dT.fre*2*pi). Bc= [BO B1 B2). 2 . 5. A % % Parameters of the estimated % discrete transfer function . % Denote sample time % discrete polynomials % Define freq. and Rr for continious time %if Ordna==l %***** INVERSE Ztransform => see Section 3.c. [a. % B=Numi= [b1 bO) bO=Numi (2) . % calculate the continuous time % parameters % continuous time polynomial % parameters % Chosen model order=2: calculate the continuous % time physical doublecage parameters %elseif Ordna==2 %******** TUSTIN TRANSFORMATION **************** bO=Bd(l). FO=Lm/Rk.and doublecage induction machines subplot (212) axi s ( [0.2 **** fO=Deni(2) . Bc= [BO B1).138 Modelling and identification ofsingle.2)=dT. fre=logspace(S. fre=fre/pi*fnyq. % discrete transfer function f1=Fd (2) .100) . f2=Fd (3) . . . % Parameters of the estimated b2=Bd (3) .dT. disp('Lsig Lm Rk tr') Lsig=b1 % inverse ztransform Lm=(bOb1*fO)/(l+fO) % calculate singlecage machine Rk=log(fO)*Lm/T1 % parameters tk=log(fO)/T1 % BO=(Lsig*Lm)/Rk. Fc= [FO F1 F2).SHOW BODEDIAGRAM OF ESTIMATED TRANSFER FUNCTION TH(l. % F=Deni=[f1 fO) b1=Numi (1) .Fd.Bd. calculate Lsig. BO=«bOb1+b2)*dT 2)/4. b1=Bd(2).. Lm.
y.=I. % % fband reduces all componetns between fband fband % R. Fc=Fc/Fc (3) . if rem(n. I=t(I:last) . Gorter 14294 %filenaam='specint'. n=max(size(t)) . I=row( (y(I:last))). fre*2*pi) . [f2 f1 fO] vl=Fc(2) . ylabel('Phase [deg] ').phase_d. last=nl. % polynomials in continous wO=Bc (3) .1) . machine parameters: total leakage inductance Lsig main inductance Lm cage resistance Rkl cage resistance Rk2 % cage leakage inductance Lsig2 % % % % % [mag_d. ylabel('Gain [dB]'). % time.fband). end. semilogx(fre.fband) %% function [y]=specint(t. % Integration in freq domain. % Bc and Fc are the estimated wl=Bc(2) . xlabel('frequency [Hz] ').Fc. last=n. pause end. t1=v2/t2. t=I/last* [O:lastl]. xlabel('frequency [Hz] '). 'g'). Lsig=w2/v2 Lm=(wOLsig) t2=(wlLsig*vl)/Lm. 'g').J.phase_d]=dbode(Bd. . else.2)". % Fc".A. Bc=[b2 bl bO] v2=Fc(I).Bc(l) . % Discrete bode plot [mag_c.fre.phase_c.2*pi*fre). Rk1=Lm/tl Rk2=Lm/(vltlt2) Lsig2=Rk2*t2 end. % DC offset is removed. else.y. if nargin==I. 'w'.M %function [y]=specint{t. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% G3: SPECINT.dT. j =sqrt (.phase_c] =bode (Bc. % Continious bode plot semilogx(fre.Appendix G 139 %***** Calculation of the pysical continous parameters **** Bc=Bc/Fc(3) . w2". .fre. t=row(t(I:last)).Fd. phase is correct. 'W' .20*logI0(mag_c).20*logI0(mag_d).
/freqinv.*(cos(Ang)+i*sin(Ang)). end. freq. S=fft (I) . % inverse fourier transformation % .l)=zeros(Nskip. x=len (Mag) . freqdc=freq(2:len(freq)). Mag(xmin:x. % DC component removed.140 Modelling and identification ofsingle. % DC component removed. freqinv=2*pi*dF*row( [(last/2) :1:1]). Magintp=Magp. y=ifft (I) *last. fband=abs(fband) . Anglen=angle(S(last/2+1:last)) . freq=[O freqdc' freqinv']. t=tt(l). %dT=t(2)t(1) .l)=zeros(Nskip. if nargin==3.and doublecage induction machines end. . xmin=xNskip+1. Magp=2*abs(S(2:last/2)) . dF=l/(dT*last) . Mag=[Magintp' Magintn'] '. Mag(l:Nskip. 1) . I=O./freqdc./last. Anglep=angle(S(2:last/2)) . Magintp=[ 0 Magintp']'. %% amplitude integration % pos. Anglep=[ 0 Anglep']'. Anglep=Angleppi/2. % DC component = 0. Magintn=Magn. Anglen=Anglen+pi/2. % DC component removed. freq=2 *pi *dF* [0: last/2 1] . Nskip=fix( (fband)/dF)l. %DC component = 0. Magn=2*abs(S(last/2+1:last)).l).S*Mag. Ang=[Anglep' Anglen']'.
This action might not be possible to undo. Are you sure you want to continue?
433800 will be available on