Sunteți pe pagina 1din 103

# 1.

## Dynamic Model of AC Machines

1.1 Introduction

state analysis and design of ac machines, it is not appropriate to predict the dynamic
performance of the motor. In order to understand and analyze vector control of ac
motor drives, a dynamic model is necessary. As the application of ac machines has
continued to increase over this century, new techniques have been developed to aid
in their analysis. The significant breakthrough in the analysis of three-phase ac
machines was the development of the reference frame theory. Using these
techniques, it is possible to transform the machine model to another reference frame.
By judicious choice of the reference frame, it proves possible to simplify vastly the
complexity of the mathematical machine model. While these techniques were
initially developed for the analysis and simulation of ac machines, they are now
invaluable tools in the digital control of such machines. As digital control techniques
are extended to control current, torque and flux of ac machines, the need for
compact and accurate machine models is obvious.

Much of the analysis has been carried out for the treatment of the well-known
induction machine. The induction motor, which is the most widely used motor type
in industry, has been favored because of its good self-starting capability, simple and
rugged structure, low cost and reliability, etc. Along with variable frequency ac
inverters, induction motors are used in many adjustable speed applications, which do
not require fast dynamic response. The concept of vector control has opened up a
new possibility that induction motors can be controlled to achieve dynamic
performance at least as good as that of dc motors. In order to understand and analyze
vector control, the dynamic model of the induction motor is necessary. It has been
found that the dynamic model equations developed on a rotating reference frame is
easier to describe the characteristics of induction motors.

## Fortunately, the developed theory of reference frames is equally applicable to

synchronous machines, e.g. the Permanent Magnet Synchronous Machine (PMSM).
The PMSM, sometimes known as sinusoidal brushless machines or brushless ac
machine, is very popular as a high-performance servo drive due to its superior
torque-to weight ratio and its high dynamic capability.
2 Chapter 1

Over the years, many different reference frames have been proposed for the analysis
of ac machines. The most commonly used are the so-called stationary reference
frame, the rotor reference frame for synchronous machines and the synchronously
rotating reference frame for induction machines. Considering synchronous
machines, the rotor reference frame is equal to the synchronous reference frame,
since the supply frequency equals the electrical rotor speed.

The aim of this chapter is to introduce the essential concepts of reference frame
theory and to derive and explain ac machine models in relatively simple terms. It
will be shown that when we choose a synchronous reference frame in which rotor
flux lies on the d-axis, the dynamic equations of both induction and synchronous
machines are simplified and analogous to a dc motor.

## A clear and comprehensive description of the dynamic behavior of ac machines is a

key point for their application in speed or torque controlled drive systems. Steady-
state analysis of induction machines or PMSM are typically presented by means of
the so called per phase equivalent circuit. However, these models are inadequate
when applied to dynamic conditions, as needed in variable frequency drives. The
pertaining methods of dynamic analysis concerning field-oriented control have been
developed decades ago. Today, they form part of the fundamentals in electrical
engineering being documented in numerous publications and books, e.g. [Bose 97],
[Hen 92], [Leo 85], [Vas 92].

In the original three phase reference frame the motor windings (a,b,c) are displaced
at 120 deg (electrical) in space and both current and voltage equations are time-
dependent variables. The idea of simplifying the motor equations by transforming
the stator machine variables to the rotor reference frame was first introduced in 1899
by Blondel [Vas 92]. In the late 1920’s, R.H. Park further developed the idea to
transform the stator machine variables as currents, voltages and flux linkages to
another rotating reference frame [Park 29] described by 2 rotating phase variables,
which are perpendicular. This technique was first applied to a synchronous machine
transforming the stator variables to a fictitious frame rotating with the rotor speed.
The method was extended by [Kron 42] to be applicable to any type of ac machine.
Considering squirrel-cage induction motor or PMSM, the transformations are
usually based on following assumptions:

## • Space harmonics of the flux linkage distribution are neglected.

• Slot harmonics and deep bar effects are not considered.
• Iron losses are not taken into account.
• Saturation is introduced on a macroscopic basis.
• Permanent magnets behave linearly.
• Neutral point is isolated.
Dynamic Model of AC Machines 3

The assumption, that ac machines are linear (no saturation) and MMF-harmonic free
is an oversimplification, which cannot describe the behavior of the machine in all
operation modes. However, in a majority of applications, the machine behavior can
be adequately predicted with this simplified representation. Considering the design
of practical machines, the rotor conductors of squirrel-cage induction machines are
often skewed. The conductors are not placed in the plane parallel to the axis of
rotation, but skewed slightly with the axis of rotation. This arrangement helps to
reduce the magnitude of torque harmonics (ripples) due to the harmonic content of
the MMF-waves. Furthermore, the applied transformations are quite general, since
the flux and MMF-waves may be considered as a sum of a fundamental and higher
harmonics.

The restriction to a magnetic linear system without saturation may be dropped, if the
stator and rotor voltage equations are written in terms of the flux linkages. The
transformation of flux linkages is valid even for asymmetrical or magnetic nonlinear
systems and an extensive amount of work can be avoided by transforming the flux
linkages directly. This is especially true in the analysis of ac machines where the
inductances are function of the rotor position. Only the current-flux relation,
represented by affiliated inductances, must be adapted in the case of asymmetry or
non-linearity.

Also iron losses are more or less considered. Due to the braking effect of iron losses,
they are subsequently treated as an equivalent speed-dependent load torque.

## The applied approach eliminates the redundancy of poly-phase windings substituting

these by their two-axes equivalent. Such a redundancy is given for both line currents
and line voltages of three-phase ac machines. By definition, a three-phase machine
with isolated neutral point (figure 1.1) restricts its phase currents to a plane
constructed by two perpendicular static phasors, since the sum of all phase currents
has to be zero at all times according to Kirchoff’s law.

ia + ib + ic = 0 (1.1)

## u ab + ubc + uca = 0 (1.2)

inverter ia ac motor

ib uab
Udc
ic ubc uca

reference- ua0
potential ϕo Not connected!

4 Chapter 1

## According to (1.1)-(1.2), the input of three-phase ac motors is completely described

by two line voltages and two currents since the third value equals the negative sum
of the two others. Thus, describing the dynamic behavior of ac machines, the poly-
phase motor windings can be reduced to a set of two-phase windings. The most
suitable choice, describing the motor behavior by a two-axes equivalent, is a set of
field coils, having their magnetic axes arranged in quadrature as shown in figure 1.2.
This approach eliminates the mutual magnetic coupling of the three-phase windings,
since the flux of one winding of the two-axes equivalent does not interact with the
perpendicular winding and vice versa.

The simplified diagram of a three-phase ac motor (figure 1.2) shows only the stator
windings for each phase displaced 2π/3 radians in space. Of course, the same
transformation is applied to the rotor. The transformation of rotor and stator
variables to a 2-phase reference frame (indicated by subscripts α, β), where the coils
are perpendicular, guarantees that there is no interaction between perpendicular
windings as long as there is no saturation, referred to as cross saturation.

b β
ib
a
ic α
ia

c' b'

α a

b c
a' iβ

c
α

## Figure 1.2: Three-phase windings and two-axes equivalent (α/β transformation).

Due to the redundancy in (1.1)-(1.2), it is obviously that the voltage and current
equations of any ac machine are reducible to a set of each two appropriate variables
in the α/β-reference frame.

One straightforward way, but unusual option of transferring variables to the α/β-
reference frame, is a simple vector addition (subscript VA) of the three-phase
variables. According to figure 1.2, a geometrical calculation yields:

## [ia + ib cos(120°) + ic cos(240°)] = iα ,VA (1.3)

Dynamic Model of AC Machines 5

Solving the trigonometric functions and replacing ic according to (1.1) results in:

ib (−ia − ib )
⇒ ia − − = iα ,VA (1.4)
2 2
3
⇒ iα ,VA = ia (not used!) (1.5)
2

## [ib cos(30°) + ic cos(150°)] = iβ ,VA (1.6)

3 3
⇒ ib − (−ia − ib ) = iβ ,VA (1.7)
2 2

3
⇒ iβ ,VA = ia + 3 ib (not used!) (1.8)
2

However, above transformation, equally applied on both phase current and voltages,
is not power invariant:

## P (t ) = u a ia + ub ib + u c ic ≠ uα ,VA iα ,VA + u β ,VA iβ ,VA (1.9)

3 3  3  3 
uα ,VA iα ,VA + u β ,VA iβ ,VA = u a ia +  u a + 3 ub   ia + 3 ib 
2 2    
 2  2 
3 3
= 3 u a ia + 3 ub ib + u a ib + ub ia
2 2 (1.10)
3
= [u a ia + ub ib + (−u a − ub ) (−ia − ib )]
2
3 3
= [u a ia + ub ib + u c ic ] = P (t )
2 2

Note, the variables in the α/β-reference frame are no real values, they are fictitious
values, preferably describing the real electrical and dynamic behavior of the
machine. Obviously, the original current phasor can be equally described by two
other perpendicular vector components multiplied by a constant scaling factor.
According to (1.10), the power in the α/β-reference frame reduced by the scaling
factor 2/3 guarantees power invariance. At first sight, this scaling factor can be
distributed on the α/β-current and voltages in different ways, e.g. the α/β-current
remains and the voltages uα, uβ are reduced by the factor 2/3 (⇒ uα = ua ) or vice
versa (⇒ iα = ia ). However, the air-gap flux is proportional to the voltage whereas
the magneto-motive force (MMF) is proportional to the current. Thus, only a
symmetrical distribution, both α/β-current and voltages are reduced by the same
6 Chapter 1

## factor, yields, compared to the original system, identical magnetic characteristics in

the α/β-reference frame. Postulating symmetrical distribution of the scaling factor
2/3, following equations are used when quantities in the three-phase reference frame
are transformed to the α/β-reference frame [Hen 92]. For reasons of simplicity, the
coil axis ia coincides with the coil axis iα, perpendicular to iβ (figure 1.2):

2
[ia + ib cos(120°) + ic cos(240°)] = iα (1.11)
3

2  i (−i − i )  2 3
⇒ ia − b − a b  = ia = iα (1.12)
3  2 2  3 2

3
⇒ iα = ia (1.13)
2

## Similarly for the β-axis:

2
[ib cos(30°) + ic cos(150°)] = iβ (1.14)
3

2  3 3 
⇒  ib − (−ia − ib ) = iβ (1.15)
3  2 2 

1
⇒ iβ = ia + 2 ib (1.16)
2

## In matrix form, the transformation to the α/β-reference frame is:

 3 
iα  ia   0  i 
2
i  = T32 i  =  1
  a (1.17)
β  b  2  b 
i
 2 
 

The inverse transformations, calculating the phase currents by α/β-values, are as:

 2 
ia  iα   0  i 
3  α
i  = 
−1
i  = T32 1 1  iβ 
(1.18)
 b  β  −
 6 2 

Dynamic Model of AC Machines 7

## Equally, the voltage and flux distribution of a three-phase ac machine behaves as

phasors, identically described by two perpendicular vector components. Thus, the
transformation of voltage and flux linkages to the α/β-reference frame is equivalent
to the current transformation.

 3 
uα  u a   0  u 
2
  = T32 u  =  1
  a Condition: (uc = - ua - ub) (1.19)
u β   b  u
2  b 
 2 

 2 
u a   α 
u 0  u 
3  α
u  = 
−1
u  = T32 1 1  u β 
Condition: (uc = - ua - ub) (1.20)
 b  β  −
 6 2 

## Obviously, the relation of the transformation matrices is:

 3  2 
 0  0  1 0
T32 T32−1 =  2  3 = (1.21)
1 1 1  0 1
 2  −
 2   6 2 

Unfortunately, while the sum of the line voltages is zero, the phase voltages or
phase-to-neutral voltages may consist of a homopolar component dependent on the
PWM method used. The origin of the homopolar component is exploited later in the
inverter-analysis presented. However, the effect of the homopolar component on a
machine with isolated neutral point is equal to a change of the reference potential
(e.g.: changing the potential ϕ0 in figure 1.1). In other words, the potential of all
three phases is varied uniformly and simultaneously (third harmonics). Fortunately,
the sum of the line voltages is always zero. Thus, this homopolar component is
unseen by the motor terminals and therefore not reflected in motor behavior.

However, since motor voltages are often calculated by means of the reference
voltages (e.g. ua0 in figure 1.1) containing such a homopolar component, the
transformation according to (1.25) must be used for the α/β-voltage calculation. The
transformation matrix is obtained similarly to (1.11)-(1.16) by geometrical
calculations without replacing the phase voltage uc. For completeness, the zero-
component is also given. According to figure 1.3, the zero-component indicates a
displacement of the reference potential ϕ0 with respect to the center m of the line
voltages. Obviously, the phase voltages (ua, ub, uc) are equal to the affiliated line-to-
neutral voltages (uam, ubm, ucm) plus the zero-component um0. Since the sum of the
line-to-neutral voltages is zero, following relation is valid:
8 Chapter 1

!
u am + u bm + u cm = (u a − u m 0 ) + (u b − u m 0 ) + (u c − u m 0 ) = 0 (1.22)

1
⇒ u m0 = (u a + u b + u c ) (1.23)
3

a a

uam
uab ua uca ua
m m
ubm um0 ucm
ub uc
b c b ub ϕ 0 uc c
ubc

Figure 1.3: Zero-component of the phase voltages. Left: Phase and line voltages without zero component.
Right: Phase voltages and displacement of the neutral point.

## Scaling by the power-invariance factor yields the zero-component in the α/β-

reference frame:

3 1 2 1
u0 = (u a + u b + u c ) = (u a + u b + u c ) (1.24)
2 3 3 2

 1 1 
 1 − − 
 uα  u a   2 2  u a 
  u  = 2  3 3 u 
⇒ u β  = T320 0 − (1.25)
 b 3  2 2   b
 u 0  u c    u c 
 1 1 1 
 2 2 2 

## The inverse transformation is:

 
 1 0 1 
u a  uα    uα 
u  = T − 1 u  = 2  1 3 
− 1  u β  (1.26)
 b  β 3  2
320
2
u c   u 0     u 0 
 −1 −
3
1 
 2 2 
 

However, the zero-component is required neither for motor control nor for
describing the dynamic motor behavior. Usually in ac motor control, only
equation (1.17) is applied for current transformation. Most inverter control strategies
Dynamic Model of AC Machines 9

## and PWM techniques circumvent an additional voltage back transformation, e.g.

space vector modulation directly specifies the switching signals using the α/β-
voltages. Sometimes, the back-transformation (1.20) is applied for the calculation of
the reference voltages, e.g. being the input of a sinusoidal PWM. Special
applications, e.g. phase voltage estimation by means of the reference voltages,
require the transformation (1.25) due to the non-linearity of the inverter and arising
homopolar component. If line voltages are given (e.g. measurement), the α/β-
transformation is:

 2 1
uα   3 
6  u ab 
u  =    (1.27)
 β  0 1  ubc 
 
 2

## According to (1.2), a homopolar component in phase voltages vanishes in the line

voltages of any ac machine with isolated neutral point.

## 1.3.1 Properties of the power invariant α/β-transformation

Note that α/β transformations with different scaling factors are used in literature as
well: e.g. the non power-invariant form [Vas 97], also termed Clark transformation.
Here, all transformations are based on (1.17)-(1.27) guarantying power invariance:

## Pel = u a ia + u b ib + u c ic = u a ia + ub ib + (−u a − ub ) (−ia − ib )

(1.28)
= 2 u a ia + 2 ub ib + u a ib + ub ia

## Replacing the phase quantities by the affiliated α/β-quantities yields:

2 2  −1 1   −1 1 
Pel = 2 uα iα + 2  uα + u β   iα + iβ 
3 3  6 2  6 2 
2  −1 1   −1 1  2
+ uα  iα + iβ  +  uα + u β  iα
3  6 2   6 2  3 (1.29)
4 2 2 2
= uα iα + uα iα + u β i β − uα iβ − u β iα
3 6 6 6
1 1 1 1
− uα iα + uα i β − uα iα + u β iα
3 3 3 3

⇒ Pel = uα iα + u β iβ (1.30)
10 Chapter 1

## The α/β-transformation eliminates the redundancy of poly-phase windings

substituting these by their two-axes equivalent. The current and voltage quantities
are each described by two components in direction of the α-axis and β-axis,
respectively. According to (1.13), the relation of the mean values is:

3
I 2 phase = I 3 phase (1.31)
2

3
U 2 phase = U 3 phase (1.32)
2

## However, describing the electrical behavior of the ac machine by two perpendicular

windings requires an adaptation of the fictitious two-phase winding number
(figure 1.4), since the resulting flux quantities and magneto-motive force (MMF)
must be identical to the original values. According to [Bel 92], [Hen 91], the MMF
(as well as the magnetic induction B) is proportional to the current, the phase
number m and the coil windings w scaled down by the winding factor ξ due to the
spreading of the windings and the shift of a two layer winding. Identical MMF,
generated by three respectively two coils, is given, if following relation is valid:

4 m 3phase (ξ w) 3phase !
Θ 3phase = 2 I 3 phase = Θ 2phase
2π p
(1.33)
4 m 2phase (ξ w) 2phase
= 2 I 2 phase
2π p

## (ξ w) 2phase m 3phase I 3 phase 3 2 3

⇒ = = = (1.34)
(ξ w) 3phase m 2phase I 2 phase 2 3 2

According to [Hen 91], the air-gap flux is proportional to the induced voltage and
power supply frequency ωs. Obviously, applying identical (symmetrical)
transformations on current and voltage quantities yields the same relation between
the coil windings as in (1.34):

2 U 3 phase ! 2 Uˆ 2 phase
Φ 3phase = = Φ 2phase = (1.35)
(ξ w) 3phase ω s (ξ w) 2phase ω s

(ξ w) 2phase U 2 phase 3
⇒ = = (1.36)
(ξ w) 3phase U 3 phase 2

Thus, a transformation with the coil ratio according (1.34) yields identical flux
quantities and identical MMF. Also the current density in the α/β-system is identical
to the original value:
Dynamic Model of AC Machines 11

I
J= (qCu = conductor cross-section) (1.37)
qCu

The conductor cross-section qCu expressed in terms of the total electrically effective
copper cross-section ACu yields:

A Cu
q Cu = (1.38)
2wm

w2m
⇒ J=I (1.39)
A Cu

## J 2 phase I 2 phase w 2phase m 2phase 3 3 2

⇒ = = =1 (1.40)
J 3 phase I 3 phase w 3phase m 3phase 2 2 3

## Accordingly, the magnetic quantities of a three-phase ac machine are identically and

the electrical quantities are equally described by their two-axes equivalent as shown
in figure 1.4.

β
b
ia coil ratio: iα
-ic -ib (w 1 ξ) 2phase 3
=
(w 1 ξ) 3phase 2 iβ -iβ

ib ic a α

-ia -iα
c

## Figure 1.4: Three-phase windings and two-axes equivalent.

Additionally, the resistive losses and the stored magnetic energy in the α/β-reference
frame are equal to the values of the original system:

2
 2 
PR ,losses = 3 Rs I 2
= 3 Rs  I  = 2 Rs I 22 phase (1.41)
3 phase  3 2 phase 
 

To fulfill (1.41), the resistance and inductance values in the two-phase motor model
must remain identical. The stator resistance is proportional to the averaged
conductor length lm, number of windings w and the conductor cross-section qCu:
12 Chapter 1

w lm
Rs = ρ (1.42)
q Cu

## Applying (1.38) yields:

2 m w 2 lm
Rs = ρ (1.43)
A Cu

The inductances are proportional to the phase number m, the number of windings w
scaled down by the winding factor ξ [Hen 91]:

m 4µ 0 τ p l
L= (ξ w) 2 (1.44)
2 δ π2p

Postulating equal resistance and inductance values in the original (m3phase = 3) and in
the α/β-reference frame (m2phase = 2) yields the same coil ratio as in (1.36):

## m 2phase (ξ w) 22phase = m 3phase (ξ w) 3phase

2
(1.45)

(ξ w) 2phase m 3phase 3
⇒ = = (1.46)
(ξ w) 3phase m 2phase 2

## More straightforward it can be argued, that all impedances, proportional to the

affiliated voltage drop divided by the current, remain unchanged, since the
transformation of current and voltage quantities is equivalent. Therefore, the current-
voltage relation stays constant:

U x , 2 phase ! U x ,3 phase
x 2 phase = = = x3 phase (1.47)
I x , 2 phase I x ,3 phase

(w ξ) 2phase 3
Thus, a transformation with the coil ratio = is:
(w ξ) 3phase 2
Symmetrical
Power invariant
Inductance and resistance invariant
Flux, magnetic field and induction, MMF and current density are identical

Note: The flux linkages are coupled to the magnetic induction/field distribution via
the winding number of the three-phase machine, respectively two-phase equivalent.
Dynamic Model of AC Machines 13

Thus, the transformation of the flux linkages contains the coil ration (1.46).
Accordingly, the transformation of flux linkages is equivalent to the transformation
of current and voltage quantities.

## A general three-phase ac machine is completely described by the stator and rotor

voltage equations with Rs and Rr representing the resistance of stator and (stator
related) rotor windings, respectively:

u sa  isa  ψ sa 
u  = R i  + d ψ  (1.48)
 sb  s  sb  dt  sb 
u sc  isc  ψ sc 

u ra  ira  ψ ra 
u  = R i  + d ψ  (1.49)
 rb  r  rb  dt  rb 
u rc  irc  ψ rc 

In the case of synchronous machines, the rotor equation (1.49) vanishes. In the case
of induction machines, the phase voltages of the rotor are equal to zero and the
quantities in (1.49) are related to the real rotor quantities via the winding ratio of
stator and rotor [Hen 91]:

(w ξ) stator
ir = ir ,real (1.50)
(w ξ) rotor

(w ξ) stator
u r = u r ,real (1.51)
(w ξ) rotor
2
 (w ξ) stator 
Rr = Rr ,real   (1.52)
 (w ξ) rotor 

## A majority of induction machines is not equipped with coil-wound rotor windings.

Instead, the current flows in copper or aluminum bars, uniformly distributed and
embedded in a ferromagnetic material, with all bars terminated in a common ring at
each end of the rotor. This type of rotor is referred to as a squirrel-cage rotor.
However, the uniformly distributed rotor winding is adequately described by its
fundamental sinusoidal component and is represented by an equivalent 3-phase
winding [Hen 91].
14 Chapter 1

## According to the introduced α/β-transformation, the electrical behavior of a three-

phase ac machine is equally described by their two-phase equivalent (figure 1.5).
Applying the transformation matrix T32 on (1.48)-(1.49) yields:

usα  isα  d ψ sα 
u  = Rs i  + ψ  (1.53)
 sβ   sβ  dt  sβ 

u rα  irα  d ψ rα 
u  = Rr i  +   (1.54)
 rβ   rβ  dt ψ rβ 

a αs

Stator
usa, isa usα, isα
jβs

usβ, isβ
b c coil ratio:
usb, isb usc, isc
(w 1 ξ) 2phase 3
=
(w 1 ξ) 3phase 2
θ = ∫ωr dt θ = ∫ωr dt
αr

Rotor
urb, irb
urβ, irβ
jβr

## Figure 1.5: Three-phase windings and two-axes equivalent.

The α/β representation eliminates the mutual magnetic coupling and the redundancy
of the poly-phase windings, but the time-dependence of both current and voltage
equations still remains. Furthermore, the equation set (1.53)-(1.54) is based on two
different reference frames, one stationary for the stator and another for the rotor
rotating at electrical motor speed ωr. In steady state, the stator current/voltage
frequency equals the supply frequency, the frequency of the rotor windings equals
the supply frequency minus electrical rotor speed ωr.

According to figure 1.6, the mutual magnetic coupling of rotor and stator depends
on the current position of the rotor reference frame. The rotating flux phasor,
generated by the rotor currents, can be divided in a flux vector parallel and
perpendicular to the α-axis of the stator. Obviously, only the parallel flux is
magnetically linked to the affiliated stator winding and vice versa. For reasons of
simplicity, the main inductance L1h is assumed to be constant, i.e. there is no rotor or
stator asymmetry. This restriction will be dropped in a subsequent paragraph.
Applying the mentioned simplification, the stator and rotor flux linkages in the α/β-
reference frame are obtained by simple vector addition according to figure 1.6:
Dynamic Model of AC Machines 15

## ψ rβ = Lr i rβ + L1h (−i sα sin θ + i sβ cos θ ) (1.58)

jβs
jβr αr

isβ
L1h(θ) θ = ∫ωr dt
i rα
irβ
αs
isα
L1h(θ)

## -irβ sinθ isβ sinθ

isα cosθ
irα sinθ

isβ

i rα
irβ cosθ

-isα sinθ
irβ
θ isβ cosθ θ
irα cosθ i sα

Figure 1.6: General two-axes ac machine model and mutual magnetic coupling between stator and rotor.
Top: Stator and rotor windings. Bottom: Geometrical calculations.

cosθ − sin θ 
T−θ =  (1.59)
 sin θ cosθ 

 cosθ sin θ 
T−−θ1 =  (1.60)
− sin θ cosθ 

## yields the flux linkages in matrix form:

ψ sα  isα   irα  
ψ  = Ls i  + L1h  T−θ i   (1.61)

 sβ   sβ    rβ  
16 Chapter 1

ψ rα  irα   −1 isα  
ψ  = Lr i  + L1h  T−θ i   (1.62)
 rβ   rβ    sβ  

Annotation: The negative sign in T-θ is introduced to guarantee symbol analogy with
following transfer matrixes. Furthermore, the rotor reference frame rotates at first
sight away from the stator reference frame, whereas the matrix T-θ transfers the rotor
currents contrary to the direction of rotation, i.e. back to the stationary stator
reference frame.

## Traditionally in analysis and design of ac motor drives, a "per-phase equivalent

circuit" has been widely used. Note that in this equivalent circuit, all motor
parameters and variables are not actual quantities but are quantities referred to the
stator. Although the per-phase equivalent circuit is useful in analyzing and
predicting steady-state performance, it is not appropriate to predict the dynamic
performance of ac motors. In order to understand and analyze vector control, the
dynamic model of the motor is necessary.

## As already mentioned, the equation set (1.53)-(1.54) is based on two different

reference frames, one stationary for the stator and another for the rotor rotating at
electrical motor speed ωr. At the transformation to the α/β-reference frame, the α-
axis of the stator reference frame was aligned to the first motor phase. Just as well,
the α-axis aligned to the second or third phase would have been a suitable choice.
Generally, the electrical behavior of the ac machine can be equally described by two
other perpendicular windings, being, with respect to the original α/β-system,
spatially rotated by the arbitrary angle γ. Naturally, the arbitrary angle γ may be also
time-dependent, e.g. itself rotating at the electrical speed ωr.

Similarly to the "per-phase equivalent circuit", the theory of the rotating reference
frames is applied to transfer the stator and rotor variables and equations to one
common reference frame. It has been found that the dynamic model equations
developed on one common reference frame is easier to describe the dynamic
behavior of ac motors. The choice of the common reference frame is the key element
that distinguishes the various vector control approaches from each other.

## It is instructive to take a preliminary look at the reference frames commonly used in

analysis of electrical machines and power system components. Information
regarding each of these reference frames, namely the stationary, rotor, synchronous
and arbitrary reference frame, is summarized in table 1.1.
Dynamic Model of AC Machines 17

## Table 1.1: Commonly used reference frames.

Reference
Interpretation Notation Application
frame speed
Variables referred to the d/q subscripts DTC and steady-state
0
stationary reference frame and 's' superscript analysis
Variables referred to a reference d/q subscripts Vector control of
ωr frame fixed to the rotor and 'r' superscript synchronous machines
Variables referred to an arbitrary d/q subscripts
ωγ rotating reference frame and , superscript
General reference frame
Synchronously rotating reference d/q subscripts Vector control of
ωµ frame no superscripts induction machines

Although the transformation to the arbitrary reference frame involves all other
transformations as a special case, it is didactically preferable to consider at a first
step only the transformation to the stationary reference frame and then modify this
analysis to other reference frames.

## 1.4.1 Stator fixed reference frame

In principal, the transformation to the stationary reference frame has already been
introduced. In (1.61), the rotor currents are transformed via matrix T-θ to current
components in α/β-direction of the stationary stator reference frame. Expressing the
rotor current phasor ir in terms of the stationary α/β-components is based on the
transformation shown in figure 1.7. The axes of the stationary α/β-components are
subsequently denoted as d-and q-axis to indicate a common reference frame of stator
and rotor. The superscript 's' indicates the stator-fixed reference frame. The rotor
currents expressed in components of the stator-fixed reference frame are:

## With the transformation matrix T-θ and its inverse T--1θ

cosθ − sin θ 
T−θ =  (1.65)
 sin θ cosθ 

 cosθ sin θ 
T−−θ1 =  (hint : T−−θ1 = Tθ ) (1.66)
− sin θ cosθ 

## equations (1.63)-(1.64) can be rewritten in matrix form. Back-transformation with

the inverse matrix yields the rotor current in α/β-components:
18 Chapter 1

irds  irα 
 s  = T− θ i  (1.67)
irq   rβ 

irα  −1
irds 
i  = T− θ s (1.68)
 rβ  irq 

## isrq= irα sinθ + irβ cosθ

irβ
ir
-irβ sinθ
q
irα
irα sinθ

irα
irβ cosθ

irβ
θ θ
d
irα cosθ isrd= irα cos θ - irβ sinθ

Figure 1.7: Transformation of the rotor currents to the stationary reference frame.

Equally, the rotor voltage phasor and the rotor flux phasor are expressed as a vector
sum of components in the stationary stator reference frame:

u rds  u rα 
 s  = T− θ u  (1.69)
u rq   rβ 

ψ rds  ψ rα 
 s  = T−θ ψ  (1.70)
ψ rq   rβ 

The rotor voltage equation is obtained by multiplying the voltage equation (1.54)
with T-θ:

## urα   irα  d ψ rα   irα  d ψ rα 

T− θ   = T− θ  Rr   +    = T− θ Rr   + T−θ   (1.71)
 
 u rβ   irβ  dt ψ rβ   irβ  dt ψ rβ 

##  cosθ sin θ  cosθ − sin θ 

T−−θ1 T−θ =   
− sin θ cosθ   sin θ cosθ 
(1.72)
cos2 θ + sin 2 θ 0  1 0
= 2 
= 
 0 cos θ + sin θ  0 1
2
Dynamic Model of AC Machines 19

the rotor flux vector multiplied with T-θ-1 T-θ remains unchanged. Using (1.72) in
(1.71) and applying the partial derivative yields:

urds  irds  d  −1 ψ rα  
 s  = Rr  s  + T− θ  T− θ T− θ ψ  
urq  irq  dt   rβ  
i s  d ψ s  
= Rr  rds  + T− θ  T−−θ1  rds   (1.73)
irq  dt  ψ rq  
i s  d ψ rd 
s
 d −1  ψ rd 
s
= Rr  rds  + T− θ T−−θ1  s  + T− θ  T− θ   s 
irq  dt ψ rq   dt  ψ rq 

## With applying the partial derivative of the transfer matrix T-θ,

d   d −1  dθ  − sinθ cosθ  dθ
T−θ  T−−θ1  = T−θ  T−θ  = T−θ − cosθ − sinθ 
 dt   dθ  dt   dt
cosθ − sinθ   − sinθ cosθ  dθ
= (1.74)
 sinθ cosθ  − cosθ − sinθ  dt
 0 cos 2 θ + sin 2 θ  dθ  0 1
=  =  ωr
− cos θ − sin θ  dt − 1 0
2 2
0

the transformed rotor voltage equation consists of three parts, namely the resistive
voltage drop, the time-dependent flux variation and the induced voltage due to the
rotation with the electrical motor speed ωr.

## urds  irds  1 0 d ψ rds   0 1 ψ rd 

s

 s  = Rr  s +   s  + ωr − 1 0 ψ s  (1.75)
urq  irq  0 1 dt ψ rq     rq 

Since the used reference frame is equal to the original α/β-reference frame of the
stator, all stator variables and quantities remain unchanged. Only the notation is
adapted to guarantee symbol analogy. Summarizing, following voltage equations are
valid in the common stationary reference frame:

## u sds  isds  d ψ sds 

 s  = Rs  s  +  s  (1.76)
u sq  isq  dt ψ sq 

## u rds  irds  d ψ rds   ψ rqs 

 s  = Rr  s +  s  + ωr  s 
(1.77)
u rq  irq  dt ψ rq  − ψ rd 
20 Chapter 1

## ψ sds  ψ sα  isα   irα   isds  irds 

 s =  = Ls i  + L1h  T−θ i   = Ls  s  + L1h s (1.78)
ψ sq  ψ sβ   isq  irq 
 sβ    rβ  

## ψ rds  ψ rα   irα   −1 isα   

L
 s  = T−θ ψ  = T−θ  r i  + L1h  T−θ i   
ψ rq   rβ    rβ    sβ   
irα  isα 
= Lr T−θ   + L1h T−θ T−−θ1 i  (1.79)
 i rβ   sβ 
i s  i s 
= Lr  rds  + L1h  sds 
irq  isq 

With respect to (1.78)-(1.79), the stator and rotor currents in the d-axis are only
active in the affiliated windings of the d-axis. The same applies for the q-axis. Thus,
the mutual magnetic coupling between d- and q-axes is eliminated.

The voltage equations in the stationary reference frame are easily adapted to the well
known "per-phase equivalent circuit", especially useful in analyzing and predicting

## 1.4.2 Rotor fixed reference frame

In the late 1920s, R.H. Park [Park 29] introduced a new approach to ac motor
analysis. The variables (voltages, currents and flux linkages) associated with the
stator windings are replaced with variables associated with fictitious windings
rotating with the rotor. In other words, the stator variables are transformed to a
reference frame fixed to the rotor. As will be shown, Park's transformation, which
revolutionized electrical motor control, has the unique property of eliminating all
time-varying inductances from the voltage equations of the synchronous machine
occurring due to both electric circuits in relative motion and electric circuits with
varying magnetic reluctance.

In this subsection, the common reference frame is attached to the rotor rotating at
the electrical speed ωr. For some reasons, it may be more instructive to imagine the
whole motor rotating at the electrical speed ωr contrary to the direction of motion.
Then, the α/β-rotor reference frame stands still and a similar condition as in the
previous paragraph is given. Only the transfer direction is opposite, i.e. all stator
variables are transformed in direction of original rotor rotation and all rotor variables
remain unchanged.
Dynamic Model of AC Machines 21

## Expressing the stator current phasor is in terms of rotating α/β-components,

corresponding to the axes used for the rotor quantities (figure 1.6), is based on the
transformation shown in figure 1.8. The axes of the rotating α/β-components are
subsequently denoted as d-and q-axis to indicate a common reference frame of stator
and rotor. The superscript 'r' indicates the rotor-fixed reference frame. In this
paragraph, the electrical rotor angle θ is replaced by the more general angle γ to
guarantee symbol analogy with the subsequent transformation to the arbitrary
reference frame. According to figure 1.8, the stator currents expressed in
components of a rotor-fixed reference frame are:

## With the transformation matrix Tγ and its inverse T-1

γ

 cos γ sin γ 
Tγ =  (1.82)
− sin γ cos γ 

cos γ − sin γ 
Tγ−1 =  (1.83)
 sin γ cos γ 

## equations (1.80)-(1.81) can be rewritten in matrix form. Back-transformation with

the inverse matrix yields the stator current in α/β-components:

isdr  isα 
 r  = Tγ i  (1.84)
isq   sβ 

isα  −1
isdr 
i  = Tγ r  (1.85)
 
s β isq 

isα

isβ sinγ is
isα cosγ
d
isβ

isβ

## q irsd = isα cosγ + isβ sinγ

-isα sinγ
isβ cosγ γ γ
isα
irsq = -isα sinγ + isβ cosγ

Figure 1.8: Transformation of the stator currents to the rotor-fixed reference frame.
22 Chapter 1

Equally, the stator voltage phasor and the stator flux phasor are expressed as a
vector sum of components in the rotor reference frame:

u sdr  u sα 
 r  = Tγ u  (1.86)
u sq   sβ 

ψ sdr  ψ sα 
 r  = Tγ ψ  (1.87)
ψ sq   sβ 

## usα   isα  d ψ sα   isα  d ψ sα 

Tγ   = Tγ  Rs i  + ψ   = Tγ Rs i  + Tγ   (1.88)
 dt ψ sβ 
 u sβ    sβ  dt  sβ    sβ 

## cos γ − sin γ   cos γ sin γ 

Tγ−1 Tγ = 
 sin γ cos γ  − sin γ cos γ 
(1.89)
cos 2 γ + sin 2 γ 0  1 0
= 2 
= 
 0 cos γ + sin γ  0 1
2

## Using (1.89) in (1.88) and applying the partial derivative yields:

u sdr  isdr  d  −1 ψ sα  
 r  = Rs  r  + Tγ Tγ Tγ   
u sq  isq  dt  ψ sβ  
i r  d  −1 ψ sd  
r
= Rs  sdr  + Tγ Tγ  r  (1.90)
isq  dt  
ψ sq  
i r  d ψ sd 
r
 d −1  ψ sd 
r
= Rs  sdr  + Tγ Tγ−1  r  + Tγ  Tγ   r 
isq  dt ψ sq   dt  ψ sq 

## With applying the partial derivative of the transfer matrix Tγ,

Dynamic Model of AC Machines 23

d   d −1  dγ − sin γ − cos γ  dγ
Tγ  Tγ−1  = Tγ  Tγ  = Tγ  
 dt   dγ  dt  cos γ − sin γ  dt
 cos γ sin γ  − sin γ − cos γ  dγ
=   (1.91)
− sin γ cos γ   cos γ − sin γ  dt
 0 − cos 2 γ − sin 2 γ  dγ 0 − 1
= 2  =  ωγ
cos γ + sin γ
2
0  dt 1 0 

the transformed stator voltage equation consists of three parts, namely the resistive
voltage drop, the time-dependent flux variation and the induced voltage due to the
rotation with the electrical speed ωγ:

## u sdr  isdr  1 0 d ψ sdr  0 − 1 ψ sd 

r

 r  = Rs  r +   r  + ωγ 1 0  ψ r  (1.92)
u sq  isq  0 1 dt ψ sq     sq 

Since the used reference frame is equal to the original α/β-reference frame of the
rotor, all rotor variables and quantities remain unchanged. Only the notation is
adapted to guarantee symbol analogy. Summarizing, following voltage equations are
valid in the common rotor-fixed reference frame:

## u sdr  isdr  d ψ sdr  − ψ sqr 

 r  = Rs  r  +  r  + ωγ  r  (1.93)
u sq  isq  dt ψ sq   ψ sd 

## u rdr  irdr  d ψ rdr 

 r  = Rr  r +  r  (1.94)
u rq  irq  dt ψ rq 

According to (1.61)-(1.62) and considering T-θ = Tγ-1 and T-θ-1 = Tγ (valid only for
the rotor-fixed reference frame with θ = γ), the flux linkage can be also expressed as:

## ψ sdr  ψ sα   isα   −1 irα   

L  Tγ
 r  = Tγ ψ  = Tγ  s i  + L1h  i   
ψ sq   sβ    sβ    rβ   
isα  irα 
= Ls Tγ   + L1h Tγ Tγ−1 i  (1.95)
 i sβ   rβ 
i r  i r 
= Ls  sdr  + L1h  rdr 
isq  irq 
24 Chapter 1

## ψ rdr  ψ rα  irα   isα  

 r =  = Lr i  + L1h  Tγ i  
ψ rq  ψ rβ  
 rβ    sβ  
(1.96)
i r  isdr 
= Lr  rdr  + L1h r 
irq  isq 

## With respect to (1.95)-(1.96), the flux generation is caused only by current

components parallel to the flux direction. Thus, d- and q-axis are completely
decoupled.

## 1.4.3 Arbitrary rotating reference frame

In the last two paragraphs, each stator and rotor quantities and equations are
transformed to another reference frame. Just as well, a transformation to any
arbitrary reference frame is possible. However regarding drive control, there is no
practical application applying the transformation to two different reference frames
for stator and rotor, respectively. Only a common reference frame contains all
advantages as e.g.: constant main inductance, no mutual magnetic coupling between
d- and q-axes and eliminating time-dependence of current/voltage equations.

In this subsection, the common reference frame may rotate at any constant or
varying angular velocity or it may remain stationary. The angular velocity ωγ
associated with the change of variables is unspecified. Only the angular
displacement γ of the rotating reference frame must be continuous. Usually, this
constriction is automatically fulfilled, since the angle is the time-integral of the
speed.

t
γ = ∫ ω γ dt + γ (0) (1.97)
0

Again, it may be easier to imagine the whole motor rotating at a speed ωγ contrary to
the direction of rotation (figure 1.9). Then, the imaginary reference frame stands still
and the stator windings are rotating with -ωγ and the rotor windings with -(ωγ - ωr).
A comparison with figure 1.8 shows, the stator quantities and equations are
transformed using the same transformation matrix as in equation (1.82). Only the
transformation angle γ is no longer fixed to the rotor position. Obviously, applying
the same transformation matrix and geometrical calculations on the stator variables
and equations yields the same stator equations in any rotating reference frame. Thus,
the results of the previous paragraph are directly used.

As seen from the new reference frame, the rotor rotates at the electrical speed -(ωγ -
ωr) (figure 1.9). Contrary to the stator-fixed reference frame, the applied
Dynamic Model of AC Machines 25

## transformation is not contrary to the direction of rotation but in direction of the

rotating reference frame. Thus, the transformation of the rotor variables and
affiliated rotor equations is obtained by simply replacing the angle -θ of the
transformation matrix T-θ in (1.65) by the angle γ - θ. Strictly replacing the angle in
all rotor equations representing the stationary reference frame yields the rotor
equations in the arbitrary rotating reference frame.

q
βs
βS d stator:
βr γ - θ= ∫(ωγ - ωr) dt
q d
a
αr
γ = ∫ωγ dt
γ = ∫ωγ dt
c' b' αs

αS βr
θ = ∫ωr dt q
rotor:
b c
a' d
γ - θ= ∫(ωγ - ωr) dt
αr

## Summarizing, following transformations and equations are valid in any arbitrary

rotating reference frame:

 cos γ sin γ 
Tγ =  (1.98)
− sin γ cos γ 

isd,  isα 
 ,  = Tγ   (1.99)
isq  isβ 

 cos(γ − θ ) sin(γ − θ ) 
Tγ −θ =   (1.100)
− sin(γ − θ ) cos(γ − θ )

ird,  irα 
 ,  = Tγ −θ   (1.101)
irq  irβ 

## The transformation of voltages and flux linkages is equivalent. The inverse

transformations, calculating the α/β-currents by the d/q-values, are as:
26 Chapter 1

cos γ − sin γ 
Tγ−1 =  (1.102)
 sin γ cos γ 

isα  −1
isd, 
  = Tγ ,  (1.103)
i
 sβ isq 

cos(γ − θ ) − sin(γ − θ )
Tγ−−1θ =   (1.104)
 sin(γ − θ ) cos(γ − θ ) 

irα  −1
ird, 
  = Tγ −θ ,  (1.105)
i
 rβ  irq 

Considering the speed of the rotating reference frame in (1.77) and (1.93), the
voltage equations in the arbitrary reference frame are:

u sd
,
 isd,  d ψ sd,  − ψ sq, 
 ,  = Rs  ,  +  ,  + ωγ  ,  (1.106)
u sq  isq  dt ψ sq   ψ sd 

## u rd,  i rd,  d ψ rd,  − ψ rq, 

 ,  = Rr  , +  ,  + (ω γ − ω r )  ,  (1.107)
u rq  i rq  dt ψ rq   ψ rd 

As mentioned previously, the voltage equations for all reference frames may be
obtained from those in the arbitrary reference frame. A comparison of the different
reference frames shows, the stator and rotor reference frames are just special cases
of the arbitrary reference frame: Setting the speed ωγ in (1.106)-(1.107) to zero
yields the stationary equations (1.76)-(1.77). If the speed of the reference frame
equals the rotor speed ωr, the equations of the rotor reference frame (1.97)-(1.30) are
obtained. Generally, the transformation for a specific reference frame is obtained by
substituting the appropriate reference-frame speed for ωγ into (1.97) to obtain the
angular displacement. In most cases, the initial or time-zero displacement γ(0) is
selected equal to zero.

Equally to the stator and rotor reference frames, the flux linkages of d- and q-axis
are completely decoupled: The flux generation is caused only by current
components parallel to the flux direction. According to (1.61)-(1.62) and
considering
Dynamic Model of AC Machines 27

## cosθ − sin θ  cos(γ − θ ) − sin(γ − θ )

T−θ Tγ−−1θ =  
 sin θ cosθ   sin(γ − θ ) cos(γ − θ ) 
cosθ cos(γ − θ ) − sin θ sin(γ − θ ) − cosθ sin(γ − θ ) − sin θ cos(γ − θ ) 
=
sin θ cos(γ − θ ) + cos γ sin(γ − θ ) − sin θ sin(γ − θ ) + cosθ cos(γ − θ )
cos γ − sin γ  −1
=  = Tγ
 sin γ cos γ 

( )
⇒ Tγ T−θ Tγ−−1θ = Tγ T−θ Tγ−−1θ = Tγ Tγ−1 = 1 (1.108)

( ) (
⇒ Tγ −θ T−−θ1 Tγ−1 = Tγ −θ T−−θ1 T−θ Tγ−−1θ = Tγ −θ T−−θ1 T−θ Tγ−−1θ = 1 ) (1.109)

## ψ sd,  ψ sα   isα   irα   

L  T−θ
 ,  = Tγ ψ  = Tγ  s i  + L1h  i   
ψ sq   sβ    sβ    rβ   
isα   irα  
= Ls Tγ   + L1h Tγ T−θ  Tγ−−1θ Tγ −θ i   (1.110)

isβ    rβ  
i ,  ird, 
= Ls  sd,  + L1h Tγ T−θ Tγ−−1θ , 
isq  irq 

ψ ,  isd,  ird, 
⇒  sd,  = Ls  ,  + L1h ,  (1.111)
ψ sq  isq  irq 

## ψ rd,  ψ rα   irα   −1 isα   

L
 ,  = Tγ −θ ψ  = Tγ −θ  r i  + L1h  T−θ i   
ψ rq   rβ    rβ    sβ   
irα   −1 i  
= Lr Tγ −θ   + L1h Tγ −θ T−−θ1  Tγ Tγ  sα   (1.112)
 
irβ    i sβ  
i ,  isd, 
= Lr  rd,  + L1h Tγ −θ T−−θ1 Tγ−1 , 
irq  isq 

ψ ,  i ,  isd, 
⇒  rd,  = Lr  rd,  + L1h ,  (1.113)
ψ rq  irq  isq 

The most practical applied arbitrary rotating reference frames are rotating with
synchronous electrical speed. In steady state, the real stator voltage, current and flux
quantities are equally represented by phasors, rotating with the supply frequency.
28 Chapter 1

The frequency of the real existing rotor quantities equals the supply frequency minus
electrical rotor speed. As seen from a reference frame rotating with synchronous
speed, all stator and rotor phasors stand still (figure 1.10). Thus, dc values, very
practical regarding drive control strategies, are obtained in steady state.

d iβ (t)
iβ (t) t

q is
id
ωµ

projection on β-axis
γ = ωµ t
iq

t id
iα (t) α

projection on d-axis
projection on α-axis

iα (t)

q

projection on q-axis
iq
is
iq

t t id d

Figure 1.10: Current phasor, α/β- and d/q-representation and affiliated time charts.

## Considering reference frames synchronously rotating with the supply frequency,

several ways of aligning the zero angular position of the d-axis and perpendicular q-
axis are practically used: rotor-flux-oriented, stator-flux-oriented and magnetizing-
flux-oriented [Vas 97]. In steady state, the speed of the affiliated reference frames is
equal, only a load-dependent angle characterizes the different systems.

As seen in figure 1.11, the angular displacement of stator, rotor and main flux is
marginal. However, aligning the zero angular position of the d-axis to the rotor flux
yields considerable advantages regarding control strategies. The final objective of
the vector control philosophy is to be able to control the electromagnetic torque in a
way equivalent to that of a separately excited dc machine. As shown in the next
chapter, field-oriented control enables control over both the excitation flux-linkage
and the torque-producing current in a decoupled way. Furthermore, the practical
method determining the transformation angle γ will be shown. However, only the
rotor-flux-oriented control yields complete decoupling of torque and flux. Choosing
a different flux orientation may outweigh the lack of complete decoupling for some
special applications [Xu 92].
Dynamic Model of AC Machines 29

1.4 1.5
ψssα
ψs,d 1 ψrsα
1.2 0.5
ψr,d
[V s]

[V s]
0
d

α
1 -0.5
ψh,d
Ψ

Ψ
-1

0.8 -1.5
ψhsα
0 0.02 0.04 0.06 0.08 0.1 0 0.02 0.04 0.06 0.08 0.1
t [s] t [s]
0.6 1.5
ψssβ ψrsβ
ψs,q 1

0.4 0.5
[V s]

[V s]
ψh,q 0
q

β
0.2 -0.5

Ψ
Ψ

ψr,q -1
ψhsβ
0 -1.5
0 0.02 0.04 0.06 0.08 0.1 0 0.02 0.04 0.06 0.08 0.1
t [s] t [s]

Figure 1.11: Rotor-, stator- and main flux of an induction machine (1,5 kW; n = 1500 rpm; p = 2) using
FOC. Left: Flux quantities in a rotor-flux-oriented reference frame. Right: Flux quantities in the
stationary stator reference frame.

## 1.4.4 Power and electromagnetic torque in the arbitrary

reference frame

Since any ac machine with isolated neutral point contains no homopolar current
component, the total power expressed in the αβ variables equals, according to
(1.30), the total power expressed in abc variables. Applying the transformation to a
rotating reference frame on the αβ variables and solving the trigonometric functions
yields:

## Pel (t ) = u a ia + ub ib + u c ic = u sα isα + u sβ isβ

= (u sd
,
cos γ − u sq
,
sin γ ) (isd, cos γ − isq, sin γ )
+ (u sd
,
sin γ + u sq
,
cos γ ) (isd, sin γ + isq, cos γ ) (1.114)
= u i cos γ + u i sin γ + u i sin γ + u i cos γ
,
sd
,
sd
2 ,
sq
,
sq
2 ,
sd
,
sd
2 ,
sq
,
sq
2

= u sd
,
isd, + u sq
,
isq,

Although the waveforms of the d/q-voltages, currents and flux linkages are
dependent upon the angular velocity of the reference frame, the waveform of the
total power is the same and independent of the reference frame in which it is
evaluated.

In literature (e.g. [Hen 92]), the torque equation is usually obtained by the derivation
of the magnetic system energy as a function of the mechanical angular displacement.
Here, a different approach is introduced, showing the energy flow and motor losses
30 Chapter 1

considered in the dynamic equations. Considering a doubly fed ac motor, i.e. power
is supplied at both stator and rotor terminals, the total electrical power input is:

Pel ,total (t ) = u sd
,
i sd, + u sq
,
i sq, + u rd, i rd, + u rq, i rq, (1.115)

Usually, the rotor voltages are zero (e.g. squirrel-cage induction motor and PMSM).
Then, the universal-valid equation (1.115) equals (1.114). Replacing the voltages by
applying (1.106)-(1.107), the total input power can be rewritten:

dψ sd, dψ sq,
Pel ,total (t ) = R s (i sd, 2 + i sq, 2 ) + i sd, + i sq, + ω γ (i sq, ψ sd, − i sd, ψ sq, )
dt dt
dψ rd, dψ rq,
+ Rr (i rd, 2 + i rq, 2 ) + i rd, + i rq, + ω γ (i rq, ψ rd, − i rd, ψ rq, ) (1.116)
dt dt
+ ω r (i rd, ψ rq, − i rq, ψ rd, )

## Using the flux representation (1.111)-(1.113), following correlation is valid:

i sq, ψ sd, − i sd, ψ sq, = i sq, L s i sd, + i sq, Lh i rd, − i sd, L s i sq, − i sd, Lh i rq,
= i rq, Lr i rd, + i rd, Lh i sq, − i rd, Lr i rq, − i rq, Lh i sd, (1.117)
=i ψ ,
rd
,
rq −i ψ
,
rq
,
sd

## Applying (1.117), the power equation (1.116) can be simplified:

dψ sd, dψ sq,
Pel ,total (t ) = Rs (isd, 2 + isq, 2 ) + Rr (ird, 2 + irq, 2 ) + isd, + isq,
dt dt
(1.118)
dψ rd, dψ rq,
+i ,
rd + irq, + ω r (ird, ψ rq, − irq, ψ rd, )
dt dt

Obviously, the first two terms in (1.118) are resistive losses. According to
figure 1.12, the current multiplied by the time-derivation of the flux linkages is the
power used for the magnetic field generation:

dψ v  n  v 
t n t ψ
E field (t ) = ∫ Pfield dt = ∑  ∫ iv dt  = ∑ ∫ iv dψ v  (1.119)
v =1  0 dt  
0  v =1  0 
Dynamic Model of AC Machines 31

ψ
E
*
E

i
Figure 1.12: Magnetic field energy E and co-energy E*.

## As illustrated in figure 1.13, the interaction of flux linkages and perpendicular

current generates electromagnetic torque. Thus, the total electrical input power
(1.118) consists of resistive losses PR,loss, power Pfield stored as magnetic field energy
in the windings and mechanical output power Pmech. Truly, (1.118) contains not all
losses of the motor drive. Among the resistive losses, also friction and iron losses
are active. However, considering the braking effect of iron and friction losses, they
are acting like an equivalent load: e.g., a PMSM with open terminals driven in
generator mode behaves as a load with no electrical output power but with friction
and iron losses. Thus, the iron and friction losses are handled as a part of the
mechanical output power Pmech.

with:

## dψ sd, dψ sq, dψ rd, dψ rq,

Pfield = i sd, + i sq, + i rd, + i rq, (1.122)
dt dt dt dt

## Pmech = ω r (ird, ψ rq, − i rq, ψ rd, ) (1.123)

The mechanical output power of any ac machine with p pole-pairs can be also
written as a function of the electromagnetic torque Tel and mechanical rotor speed ω:

ωr
Pmech = Tel ω = Tel (1.124)
p

## Comparison of (1.123) and (1.124) yields the electromagnetic torque as a function of

electrical quantities. Thus, the electromagnetic torque is produced by the interaction
of rotor flux linkages and rotor currents:

32 Chapter 1

## According to the natural counter-action of forces, the electromagnetic torque is

produced as well by the interaction of stator flux linkages and stator current. As
illustrated in figure 1.13, this interaction can be pictorially represented by
electromagnetic forces Fel on current-carrying conductors in a magnetic field.
Applying (1.117) on (1.125), the electromagnetic torque expressed in stator
quantities is:

Fel,2

## Position of the isd

reference frame:
Fel,1
q ψsq
ψsd -isq
isq Tel ~ (Fel,1 - Fel,2)
d isq Tel ~ (isq ψsd - isd ψsq)
Fel,1
isd
-isd
Fel,2

Figure 1.13: Interaction of stator flux linkages and stator current in an arbitrary reference frame.

The electromagnetic torque and the rotor speed are related by the dynamic equation

dω J dω r
Tel − Tload = J = (1.127)
dt p dt

## The electrical circuit of ac machines is completely described by stator and rotor

voltage equations with Rs and Rr representing the resistance of stator and (stator
related) rotor windings, respectively. A linear set of rotor and stator inductances
represents the relation of current and flux linkages.

For reasons of simplicity, all motor parameters have been assumed to be constant,
i.e. the rotor and stator geometry as well as all windings are completely symmetrical.
From now on, this restriction will be dropped. It is convenient to treat resistive and
inductive circuit elements separately.
Dynamic Model of AC Machines 33

If the phase resistances are unequal, the representation by a scalar is incorrect and
the voltage equation (1.106) in the arbitrary reference frame is adapted by the
correct transformation of the resistive voltage drop
=1
 Rα 0 i sα   Rα 0  −1 isα 
Tγ 
Rβ  i  = Tγ  0 R  Tγ Tγ i 
0  sβ   β  sβ 
(1.128)
  Rα 0  −1   i sα   i sd, 
=  Tγ  T  T  = R dq , 
 0 Rβ  γ   γ isβ   i sq 
   

## with the resistance matrix in dq variables containing sinusoidal functions of γ:

R dq = Tγ R s Tγ−1 (1.129)

However, all stator phase windings of either synchronous or induction machines are
designed to have the same resistance. Similarly, transformers, transmission lines and
usually all power-system components are designed so that all phases have equal
resistances. Even power-system loads are distributed between phases so that all
phases are loaded nearly equal. If the nonzero elements of the diagonal resistance
matrix are equal

R 0
Rs =  s (1.130)
0 R s 

## following relation is valid:

 cos γ sin γ   Rs 0  −1
R dq = Tγ R s Tγ−1 =    Tγ
− sin γ cos γ   0 Rs 
 R cos γ Rs sin γ  −1  cos γ sin γ  −1
= s  Tγ = Rs   Tγ (1.131)

 sR sin γ R s cos γ  − sin γ cos γ 
= Rs Tγ Tγ−1 = R s

Thus, the resistance matrix associated with the arbitrary reference variables is equal
to the resistance matrix associated with the actual variables if each phase of the
actual circuit has the same resistance. Obviously, the same applies for the rotor
resistance.

Equally, the rotor and stator inductances of symmetrical machines, e.g. induction
machines or cylindrical synchronous machines, are not dependent on the rotor
position and thus independent on the reference frame used. In contrast, the
34 Chapter 1

## inductances of most PMSM and synchronous machines with salient poles

(figure 1.14) depend on the actual rotor position, since the magnetic path in direction
of the rotor poles is different to the magnetic path in perpendicular direction, i.e. the
air-gap between rotor and stator is not constant.

## PMSM: Ld < Lq Salient-pole SM: Ld > Lq

β β
d d
q a q a
θ = ∫ωr dt θ = ∫ωr dt
c' ωr b' c' b'

α α

b c b c
a' a'

Permanent Magnets

Figure 1.14: PMSM with inset magnets and salient-pole synchronous machine.

In the case of a magnetic linear system, it is customary to express the flux linkages
as a product of inductances and current matrices before performing the
transformation. However, the transformation of flux linkages is valid even for
asymmetrical or magnetic nonlinear systems and an extensive amount of work can
be avoided by transforming the flux linkages directly. This is especially true in the
analysis of ac machines where the inductances are function of the rotor position.
Thus, the stator and rotor voltage equations introduced are universal. Only the
current-flux relation must be adapted in the case of asymmetry or non-linearity.

## The electrical behavior of PMSM and salient-poles synchronous motors is

comparable, only the method of rotor field generation is different. The set of voltage
and flux equations introduced simplifies, since the rotor of synchronous machines
contains no three-phase windings and the rotor flux linkage, generated by permanent
magnets or dc current in a separately exited winding, is not affected by the stator
flux linkage. Due to the high permeability of air, the rotor flux linkage ψr is
completely active only in direction of the poles. Considering the power-invariant
transformation factor, the distribution of the rotor flux linkage in α/β-components of
the stator reference frame yields:

ψ rsα  3 ψ r cos θ 
 s = ψ sin θ  (1.132)
ψ rβ  2  r 

Since the voltage equations expressed in terms of flux linkages are still valid, only
the current-flux relation is adapted. If the zero angular displacement θ(t=0) is chosen
Dynamic Model of AC Machines 35

in direction of the poles (according to figure 1.14), the stator flux linkage of the
original three-phase synchronous motor is:

## ψ sa   Laa Lba Lca  isa   ψ r cosθ 

ψ  =  L Lbb Lcb  i  + ψ cos(θ − 2π 3)  (1.133)
 sb   ab  sb   r 
ψ sc   Lac Lbc Lcc  isc  ψ r cos(θ + 2π 3)

Due to the magnetic anisotropy of the rotor, the self-inductances of the original
three-phase windings are not constant but rotor position dependent (figure 1.15).
Assuming uniformly and sinusoidal distributed stator windings, the self-inductances
are:

## Lcc = L0 − L2 cos (2 θ − 2π / 3) (1.136)

Laa Laa

L2 L2
L0 L0

0 π 2π θ 0 π 2π θ

## Figure 1.15: Self-inductance Laa as a function of the electrical rotor angle θ.

Left: PMSM with inset magnets. Right: Salient-pole synchronous motor.

Figure 1.16 illustrates the ideal field distribution as a function of the electrical rotor
angle of a non-excited salient-pole synchronous motor in the α/β-reference frame.
To guarantee a clear illustration, the rotor field as well as the leakage field is not
drawn. As seen by the field distribution, the α- and β-axis are not decoupled.
Dependent on the rotor position, the field generated by the current iα is also active in
the β-axis and the current iβ induces in the windings of the α-axis.
36 Chapter 1

## θ=0 θ = π/2 θ = π/2

iα ψsα
ψsα
iβ iβ
ψsα
iβ -iβ
ψsβ

ψsβ ψsβ
-iα

-iα

Figure 1.16: Schematic main field distribution (no leakage) as a function of the electrical rotor angle of a
non-excited (ψr = 0) salient-pole synchronous motor in the α/β reference frame.

Thus, the stator flux linkage in the α/β-reference frame contains inductances
describing the magnetic coupling:

ψ sα   Lα Lβα  isα  ψ rα 
ψ  =  L Lβ  i  + ψ  (1.137)
 sβ   αβ  sβ   rβ 
with:
ψ rα  3 ψ r cosθ 
ψ  = ψ sin θ  (1.138)
 rβ  2  r 
Lα = L1 + ∆L cos 2θ (1.139)

Lβ = L1 − ∆L cos 2θ (1.140)

## Transformation of (1.137) to the arbitrary reference frame yields:

ψ sd,  ψ sα   i  ψ  
 ,  = Tγ ψ  = Tγ  L αβ  sα  +  rα  
 
ψ sq   sβ   isβ  ψ rβ  
isα  ψ rα 
= Tγ L αβ Tγ−1 Tγ   + Tγ   (1.142)
 i sβ  ψ rβ 
i ,  ψ , 
= Tγ L αβ Tγ−1  sd,  +  rd, 
isq  ψ rq 

## Obviously, the time-varying inductances, i.e. rotor-position dependent inductances

of a synchronous machine are eliminated only if the reference frame is fixed to the
Dynamic Model of AC Machines 37

rotor. Consequently, the arbitrary reference frame does not offer the advantages in
the analysis of synchronous machines that it does in the case of induction machines.
Naturally, the rotor-fixed reference frame is equal to the synchronously rotating
reference frame for synchronous motor drives. According to (1.142), the
transformation of the stator quantities to the rotor-fixed reference frame with the
zero angular displacement θ(t=0) chosen in direction of the poles yields:

ψ sdr  ψ sα  −1
isdr  ψ rdr 
 r  = Tθ ψ  = Tθ L αβ Tθ  r + r  (1.143)
ψ sq   sβ  isq  ψ rq 

The rotor flux linkage in terms of the original rotor field ψr is active only in the d-
axis:

## ψ rdr  ψ rα   cos θ sin θ  3 ψ r cos θ 

 r  = Tθ ψ  =  ψ sin θ 
ψ rq   rβ  − sin θ cos θ  2  r 
(1.144)
3  cos 2 θ + sin 2 θ 
= ψr  
2 − sin θ cos θ + sin θ cos θ 

ψ r  3 ψ r 
⇒  rdr  =   (1.145)
ψ rq  2 0 

## Reformulation of the inductance matrix in (1.143) exhibits the complete magnetic

decoupling and the elimination of time-varying inductances in the rotor fixed
reference frame:

 L + ∆L cos 2θ ∆L sin 2θ  −1
Tθ L αβ Tθ−1 = Tθ  1  Tθ
 ∆L sin 2θ L1 − ∆L cos 2θ 
(1.146)
 L + ∆L 0 
= 1
 0 L1 − ∆L 

 Ld 0
⇒ L dq = Tθ L αβ Tθ−1 =  (1.147)
0 Lq 

## Summarizing, the stator flux linkage of synchronous machines in the rotor-fixed

reference frame is:

3
ψ sdr = Ld isdr + ψr (1.148)
2
38 Chapter 1

## with constant inductances:

Ld = L1 + ∆L (1.150)

Lq = L1 − ∆L (1.151)

Again, the sign in (1.150)-(1.151) depends on the reluctance in pole direction. For
common PMSM with inset magnets, the d-axis inductance is smaller than the q-axis
inductance (Ld < Lq.). Unfortunately, the original inductances (1.134)-(1.136) are not
suitable to calculate directly the α/β-inductances (1.139)-(1.141), respectively d/q-
inductances (1.150)-(1.151), since a practical measurement does not enable a
splitting of the leakage inductances in parts regarding different causes, e.g. leakage
due to the end winding and slot-leakage, respectively. However, the d/q-inductances
(1.150)-(1.151), required for motor control, are directly measured using the motor
model in the rotating reference frame.

## Without restriction respecting the electrical behavior of torque controlled

synchronous machines (i.e. the slip frequency is zero) a damper cage has not yet
been considered. Only in open-loop control mode, e.g., the synchronous motor is
directly connected to the electrical grid, the damper cage must be considered to
calculate the transient behavior [Hen 92].

1.5 Conclusions

## This chapter introduces and explains a general dynamic model of ac machines as

required for high-performance motion control. The developed theory of reference
frames is equally applicable to various forms of synchronous machines and
induction machines, respectively. From all proposed transformations, it can be
deduced that the mutual magnetic coupling between d- and q-axes is eliminated. The
stator and rotor currents in the d-axis are only active in the affiliated windings of the
d-axis. The same applies for the q-axis. The only difference in the equations is the
variable indicating the speed of the rotating reference frame.

The transformed stator and rotor voltage equations consist of three parts, namely the
resistive voltage drop, the time-dependent flux variation and the induced voltage due
to the relative rotation with respect to the rotating reference frame. The stator and
rotor voltage equations introduced are universal. Only the current-flux relation must
be adapted in the case of asymmetry or non-linearity.

The most commonly used reference frames are rotating with synchronous electrical
speed. As seen from a reference frame rotating with synchronous speed, all stator
Dynamic Model of AC Machines 39

and rotor phasors stand still and all time varying variables become constant (in
steady state). Thus, dc values, very practical regarding drive control strategies, are
obtained.

## Another nice effect of applying the transformation to a synchronous reference frame

is, that the rotor-position dependence of inductances due to magnetic asymmetries,
e.g. in salient-pole synchronous machines or in PMSM, is eliminated from the
voltage equations. Considering synchronous machines, the synchronous reference
frame is equal to the rotor reference frame, since the supply frequency equals the
electrical rotor speed.

## As shown in the next chapter, choosing a synchronous reference frame in which

rotor flux lies entirely in the d-axis, the dynamic equations of both induction and
synchronous machines are simplified and analogous to a dc motor. The Field-
oriented control, using the motor model in a synchronous reference frame, enables
control over both the excitation flux-linkage and the torque-producing current in a
decoupled way.
2. Field Oriented Control

2.1 Introduction

Adjustable speed drives with torque control are required in many applications, e.g.
manufacturing and transportation. Using ac motors and high performance ac drives
that are capable of controlling torque and flux independently offer several
advantages over dc motors and drives such as lower maintenance, smaller size and
higher speeds. Compared to dc drives, the higher cost of ac drives is in part
compensated by a lower ac machine cost. Compared to uncontrolled ac motors,
supplied by a regular grid, the efficiency of inverter-controlled drives can be vastly
increased by, e.g. flux optimization. The resulting energy saving, which depends on
the respective application, may be crucial. It might be expected that in the medium
term future, as ac drives become a mature product state, cost of the additional power
electronics will no longer be an issue.

## This chapter provides the fundamentals of high-performance motion control

employing the FOC technique. Suitable motor models are derived and different
control approaches discussed. Motor models are rewritten in a slightly different form
providing an increased performance of the entire control system. The basic speed
control scheme is refined systematically in subsequent paragraphs by, e.g. advanced
speed control and flux optimization.

## As shown, the electrical and mechanical behavior of squirrel-cage induction motor

and synchronous machines, e.g. the PMSM, are very similar. Thus, apart from
modeling, they are handled simultaneously within this text. Considering FOC, a
comprehensive and clear description of the controller design is given in this chapter.
Special care has been taken for the viability of the real-time implementation. The
design concepts differ slightly from literature, e.g. [Leo 85], but they are proven to
result in a very robust and high-performance drive control. This chapter is rather
suitable for engineers implementing FOC in real-time than just simulating the drive
with simplifying assumptions. Differences to common presentations described in
literature are special flux control schemes, current anti-windup with automatic flux
42 Chapter 2

## 2.2 Entire Control System using FOC

In this chapter, only the rotor-flux-oriented type of vector control, also termed
“Field-Oriented Control” (FOC), is considered. Diagram 2.1 shows the basic speed
control scheme for ac motor drives with FOC [Bla 72]. In this figure, interactions
between the different modules are neglected. However, they are considered by
decoupling within subsequent paragraphs. The control of induction motors and
synchronous machines is handled simultaneously. As will be shown, their electrical
and mechanical behavior is very similar.

The goal of FOC is to maintain the amplitude of the rotor flux linkage Ψr at a fixed
value, except for field-weakening operation or flux optimization, and only modify a
torque-producing current component in order to control the torque of the ac
machine. Considering a complete decoupling of torque and flux, a linear relation
between torque Tel and torque producing current iq is achieved and the torque in the
ac machine can be expressed as [Vas 97]:

Tel = c Ψr iq (2.1)

## Thus, the electromagnetic torque generated by the motor can be controlled by

controlling the q-axis current. In speed control mode, the torque reference Tel* is
calculated by a speed controller. As shown later, the rotor flux can be controlled
directly by controlling the d-axis current.
Power
supply
Udc

ω * Tel* iq* *
uq
Park-1 T.
iq* = f(Tel*) *
uα u*a
PWM
d,q Inverter
ω Speed Current iq - control
*
ub
* * SVM
control mapping ud uβ u*c
Ψ*r id* α,β PWM
id* = f(Ψ*r) generation
γ
Flux Current id - control
reference mapping
iq iα ia
d,q α,β

id iβ ib
α,β a,b,c
Digital control
system Park T. 3⇒2
ac
motor

## Figure 2.1: Basic speed control scheme for ac motor drives.

Motor currents are measured in two phases. These measurements feed the ‘3 ⇒ 2-
transformation’ module. The outputs of this projection are designated iα and iβ.
These two current components are the inputs of the Park transformation giving the
current in the d/q rotating reference frame. The current components id, iq are
compared to the reference currents id* and iq* controlling flux and torque generation,
respectively.
Field Oriented Control 43

At this point, this control structure shows an interesting advantage: it can be used to
control either synchronous or induction machines by simply changing the flux
reference and the method of obtaining rotor flux position. As the rotor flux, fixed to
the absolute rotor position due to characterizing poles, of synchronous permanent
magnet motors is generated by the magnets or by separately exited windings in the
case of synchronous machines, there is no need to create one via the stator current.
Hence, when controlling synchronous machines, id* can be set to zero. Advanced
control schemes may exploit additionally the reluctance torque, if available.

As induction motors need a rotor flux creation in order to operate, the flux reference
Ψ*r must not be zero. The FOC conveniently solves one of the major drawbacks of
the “classic” control structures: the portability from induction to synchronous motor
drives. In speed control mode, the torque command T*e l is the output of the speed
controller mapped into a current reference iq*. The current controllers calculates the
voltages ud* and uq* in the d/q reference frame; they are applied to the inverse Park
transformation. The outputs of this projection are uα* and uβ*, being the components
of the stator voltage in the α/β stationary orthogonal reference frame and used as
inputs of the space vector PWM. The outputs of this block are the signals driving the
inverter. Note that both Park and inverse Park transformations need the rotor flux
position γ. Obtaining the rotor flux position depends on the ac machine type used
(synchronous or induction machine).

The different control loops as shown in figure 2.1 are described in detail in
subsequent paragraphs. The basic speed control scheme is further refined in
and flux control/estimation approaches.

## 2.3 Park Transformation (α/β ⇒ d/q)

The α/β representation eliminates the mutual magnetic coupling of the phase-
windings, but the time-dependence of both current and voltage equations still
remains. Observing the current in a reference frame rotating with the same speed as
the current state phasor, pictorially expressed “sitting on the current space state
phasor”, dc values are obtained in steady state. The so-called Park transformation is
the most important transformation in the FOC. Figure 2.2 presents the relation
between two reference frames for the stator current state phasor. In this chapter, the
d-axis of the rotating frame is aligned with the rotor flux. The real axis is further
denoted as the direct axis (d-axis), and the imaginary axis as the quadrature axis (q-
axis). According to the introduced transformation to the arbitrary rotating reference
frame, the stator current is:

## id   cos γ sin γ  iα 

 =   (2.2)
iq  − sin γ cos γ  iβ 
44 Chapter 2

Of course, voltages and flux linkages are transformed in the same way. The inverse
Park transformation (2.3) is usually used for the calculation of the reference voltages
(figure 2.1) being the input of the PWM module.

## uα*  cos γ − sin γ  u d* 

 *=  * (2.3)
u β   sin γ cos γ  u q 

β

d d
q a iβ
γ Ψr
q
c' ωµ b' id
is
α
γ = ∫ ωµ dt
b c iq
a'
Permanent Magnets for PMSM iα α
Ψr ⇔ Rotor flux linkage for induction and
synchronous machines

## Figure 2.2: Park transformation of the α/β current (d/q transformation).

Here, only the transformations to a rotor flux reference frame are considered
[Bla 72], [Hen 92]. The angle of the transformation from stator to rotor reference
frame coincides with the rotor flux angle γ rotating at synchronous speed ωµ. Thus,
the rotor flux lies entirely on the d-axis (figure 2.2). In steady state, the frequency of
the rotating reference frame equals the frequency of both flux and stator
voltage/current. In the case of an induction machine, the speed ωµ may differ from
the rotor speed ωr depending on the slip due to load.

ω µ = ω r + ω slip (2.4)

## In the case of synchronous machines, the transformation angle is fixed to the

position of the permanent magnets or to the pole direction of separately exited
windings. Thus, the speed ωµ equals the electrical rotor speed ωr. Then, under linear
magnetic conditions, all time-varying (rotor-position dependent) inductances are
eliminated from the voltage equations of the salient-pole machine. This aspect is
especially important when control strategies are to be employed from the
corresponding differential equations. When this reference frame is used, the physical
picture is such that the transformed quantities rotate with the rotor and thus see
invariable magnet paths. Consequently, the inductances Ld and Lq, corresponding to
d-axis and q-axis respectively, are constant.
Field Oriented Control 45

The introduced transformations are first applied to the squirrel cage induction motor
to obtain a clear and comprehensive description of the dynamic behavior. The
results are then easily transformed to the PMSM by neglecting the rotor equations
and considering a possible asymmetry of the rotor geometry. Regarding FOC, the
dynamic and electrical behavior of cylindrical and salient-pole synchronous
machines is similar to the PMSM. Differences due to the excitation and damper
cage, if existing, are treated separately.

## A general three-phase ac machine is completely described by the stator and rotor

voltage equations with Rs and Rr representing the resistance of stator and (stator
related) rotor windings, respectively:

u sa  isa  ψ sa 
u  = R i  + d ψ  (2.5)
 sb  s  sb  dt  sb 
u sc  isc  ψ sc 

u ra  ira  ψ ra 
u  = R i  + d ψ  (2.6)
 rb  r  rb  dt  rb 
u rc  irc  ψ rc 

In the case of squirrel-cage induction motor, the phase voltages of the rotor are equal
to zero. According to (1.106)-(1.107), the transformation to a reference frame
rotating at the arbitrary angular velocity ωµ results in voltage equations consisting of
resistive voltage drops and induced voltages due to both time variation and rotation
of the flux [Kron 42], [Hen 92]. The angular velocity of the rotor is ωr. As seen from
the rotor, the reference frame rotates at (ωµ - ωr) and hence the voltage equations
are:

u sd  i sd  d ψ sd  − ψ sq 
u  = R s i  + ψ  + ω µ   (2.7)
 sq   sq  dt  sq   ψ sd 

0 ird  d ψ rd  − ψ rq 
0 = Rr i  + (
ψ  + ω µ − ω r  )  (2.8)
   rq  dt  rq   ψ rd 

The flux linkages are proportional to the currents linked via stator, rotor and main
inductances Ls, Lr and L1h:
46 Chapter 2

ψ sd  i sd  i rd 
ψ  = Ls i  + L1h i  (2.9)
 sq   sq   rq 

ψ rd  i sd  ird 
ψ  = L1h i  + Lr i  (2.10)
 rq   sq   rq 

From now on, the applied transformation is fixed to the rotor flux linkage aligned to
the d-axis rotating at synchronous speed ωµ. Thus, the rotor flux lies entirely in the
d-axis and the transformation angle γ coincides with the rotor flux angle.
Subsequently, this is indicated by disregarding the indices ‘s’ of stator variables. As
seen from the rotating d-axis, representing the rotor flux direction, the perpendicular
flux linkage ψrq equals zero by definition.

!
ψ rq = 0 (Rotor flux lies entirely in the d-axis) (2.11)

Defining a (fictitious) magnetizing current iµ, representing the rotor flux linkage,

ψ rd = L1h iµ (2.12)

## and using (2.10), the rotor current can be written as:

ird  L1h i µ − id 
i  =   (2.13)
 rq  Lr  − iq 

Substituting (2.10) and applying (2.11)-(2.13) to (2.8), the rotor equations in the
field-oriented reference frame are obtained:

## 0 L1h i µ − id  d  L1h i µ   0 

0 = R r
Lr 
 −i  +
dt 
(
 0  + ω µ − ω r L i ) (2.14)
  q    1h µ 
L1h d
⇒ 0 = Rr (i µ − id ) + ( L1h i µ ) (2.15)
Lr dt

⇒ 0 = − Rr
L1h
Lr
( )
iq + ω µ − ω r L1h i µ (2.16)

According to (2.15), the relation between the magnetizing current iµ and flux
producing current id is a first-order linear transfer function with the rotor time
constant τ2 as motor parameter:
Field Oriented Control 47

diµ
τ2 + i µ = id (2.17)
dt
Lr
τ2 = (2.18)
Rr

Comparison of (2.4) and (2.16) yields the relation of the slip frequency ωslip and the
torque producing current iq:

iq
ωµ = ωr + (2.19)
τ 2 iµ

Substituting (2.13) and (2.9) to (2.7), the stator voltage equations in the field-
oriented reference frame are:

d
u d = Rs id + ψ sd − ω µψ sq
dt
d
( )
= Rs id + (Ls id + L1h ird ) − ω µ Ls iq + L1h irq
dt
d     (2.20)
L
( ) L
= Rs id +  Ls id + L1h 1h i µ − id  − ω µ  Ls iq − L1h 1h iq 
dt  Lr L
  r 
 L  di
2
L di µ 
2
L 
2
= Rs id +  Ls − 1h  d + 1h −  Ls − 1h  ω µ iq
 Lr  dt Lr dt  Lr 

d
u q = Rs iq + ψ sq + ω µψ sd
dt
= Rs iq +
d
dt
( )
Ls iq + L1h irq + ω µ (Ls id + L1h ird )

d    (2.21)
L L
(
= Rs iq +  Ls iq − L1h 1h iq  + ω µ  Ls id + L1h 1h i µ − id
dt  Lr  Lr
)
 
 L  diq 
2
L  2
L 2
= Rs iq +  Ls − 

1h
+  Ls − ω µ id +

1h
ω µ iµ
1h

 Lr  dt  Lr  Lr

With the leakage coefficient σ (Blondel-coefficient) and the stator time constant τ1
as motor parameter, the stator voltage equations (2.20)-(2.21) rewritten in state form
are:

did u diµ
στ 1 + id = d + στ 1ω µ iq − (1 − σ )τ 1 (2.22)
dt Rs dt
48 Chapter 2

diq uq
στ 1 + iq = − στ 1ω µ id − (1 − σ )τ 1ω µ iµ (2.23)
dt Rs

Ls
τ1 = (2.24)
Rs

L2h
σ =1− (2.25)
Ls Lr

## The electrical behavior of the induction motor in continues time is completely

described by two voltage equations of the stator (2.22)-(2.23), two rotor equations
(2.17)-(2.19) and a torque equation. The electromagnetic torque is produced by the
interaction of rotor flux linkages and rotor currents (or stator flux and stator current)
[Bose 97]. Considering ψrq = 0 and applying (2.12)-(2.13) to (1.125) yields:

(
Tel = p ψ rq ird − ψ rd irq = p ) L1h
Lr
L2
ψ rd iq = p 1h iµ iq
Lr
(2.26)

The torque equation (2.26) clearly shows the desired torque control property of
providing a torque proportional to the torque command current iq. A block diagram
of the induction motor model used is shown in figure 2.3. The mechanical behavior
of the drive is:

dω J dω r
Tel − Tload = J = (2.27)
dt p dt

(1-σ)τ1

1
id iµ
1/Rs στ1 1/τ2

ωslip
ua uq στ1 1/τ2
a,b
ωr
p
ub uq ωµ
d,q
στ1 ψrd
L1h

γ = ∫ωµ
1
iq pL1h
Tel ω
1/Rs στ1 1/J
Lr

(1-σ)τ1

## Figure 2.3: Block diagram of the induction motor.

Field Oriented Control 49

Figure 2.4 shows typical transients of an induction motor supplied by a stiff grid
calculated by a motor model according to figure 2.3. Obviously, the high torque and
current transients can overheat the motor and are not suitable considering high-
performance motion control. Subsequently, a system is required controlling the
current and electromagnetic torque. Since the current is directly associated with the
applied voltage, variable ac voltages, e.g. generated by an inverter, are required.

2000
500
[V]

1500
0

n [rpm]
ab
u

-500 1000
0 0.2 0.4 0.6 0.8 1 500
t [s]
100
0
50 0 0.2 0.4 0.6 0.8 1
i [A]

t [s]
a

0
60
-50
0 0.2 0.4 0.6 0.8 1 40
t [s]
50
T [Nm]

20
T [Nm]

0
el

0
el

-20

-50 -40
0 0.2 0.4 0.6 0.8 1 0 500 1000 1500 2000
t [s]
n [rpm]

Figure 2.4: Transients of a 1,5 kW induction motor (IN = 3,7A) supplied by a stiff grid (U = 400V).
Left: Line voltage uab, current ia and electromagnetic torque Tel.
Right: Motor speed n and torque-speed characteristic.

## The transformation of the voltage equations to the field-oriented reference frame

requires the information of the rotor flux position γ. Furthermore, the magnitude of
the rotor flux, represented by the magnetizing current iµ, is needed for control
purposes. As mentioned earlier, the flux identification can be implemented as
indirect or direct (measurement) method. In this chapter, as also in both industry and
all recent research, only the indirect method is used. In the case of sensorless control
schemes, the flux identification is based on estimation approaches employing
terminal quantities such as voltages and currents in a motor model to calculate the
rotor flux. Employing speed measurement, the indirect method uses the slip relation
to estimate flux position relative to the rotor. Figure 2.5 illustrates this concept and
shows how the rotor flux position can be obtained by adding the slip frequency ωslip
to the sensed rotor speed ωr. Slip frequency and magnetizing current are calculated
according to the rotor equations in the field-oriented reference frame:
50 Chapter 2

iq
ω slip = = ωµ − ωr (2.28)
τ 2 iµ

diµ
τ2 + i µ = id (2.29)
dt

Special care has to be taken at the division of the q-axis current iq by the
magnetizing current iµ: the output of the division block is set to zero if iµ is smaller
than a predetermined value (e.g. 1% of the rated value). Of course, this is only
critical at the initial start-up of the drive.

ia iα id iµ iµ
a,b,c α,β 1/τ2
id

ib iβ iq iq
α,β d,q

ωµ ωslip
1/τ2
ωr ωr

## 2.4.2 Flux Weakening and Flux Optimization

Except in the case of the minimum loss control, the basic control strategy is to
operate the induction machine with constant (rated) flux, represented by the
magnetizing current iµ,R, up to the base speed ωb and at a nearly fixed terminal
voltage above the base speed. The variation of the magnetizing current reference
required to implement this strategy is shown in figure 2.6.

Tel,max = const
i*µ iµ,R
iµ,R Pel,max = const
Tel,max ~ 1/ω
ωr 1 for : ω r ≤ ω b i*µ

ω b for : ω r ≥ ω b
ω
 r
-ωmax -ωb ωb ωmax ω

## At constant flux, the maximum electromagnetic torque is limited by the q-axis

current and thus constant. The operation at constant terminal voltage beyond the
base speed is carried out by reducing the flux reference inversely proportional to the
Field Oriented Control 51

motor speed. In literature, the flux reference value is sometimes fixed to the
reference speed. This is an unsuitable choice since the reference speed may change
directly while the real speed changes much slower: Braking down the motor from a
high speed range to zero may result in a return of the rated flux while the motor
speed is still in the flux weakening range. The inverse applies at acceleration into the
flux weakening range. Thus, the flux reference should be linked to the real motor
speed.

## A major advantage of induction motors compared to PMSM is the ability to adjust

the flux to meet different operating requirements. Flux weakening in the high-speed
range, providing constant power mode as in figure 2.6, is widely known [Bose 97].
Less appreciated is the ability to operate above the rated flux at low speed to
enhance the torque per amp and thus better use the available power supply current
[Lor 90]. This is feasible since the iron losses are negligible at low motor speed.
Thus, operating at a higher saturated level is acceptable and desirable if the torque
per amp relation, accounting for the major portion of losses in low speed operation,
is improved.

In steady state, the d-axis current id equals the magnetizing current iµ and the rms
stator current irms is:

id2 + iq2
irms = (2.30)
3

## According to (2.26) and postulating a maximum allowed current Imax, maximum

electromagnetic torque is achieved when the current limit is distributed equally
among magnetizing current iµ and maximum allowed torque producing current iq.

The approach can be further refined by flux optimization. At partial load, the flux
can be reduced in order to increase efficiency of the drive. Of course, the dynamic
performance is reduced simultaneously since the field must return to its rated value,
which is governed by the d-axis current via the relative large rotor time constant,
before maximum electromagnetic torque again can be generated by the motor. This
special control approach is implemented in real-time by using the output of the
speed controller, determining the torque reference, as reference for both q- and d-
axis current. Note that the flux reference must be positive, which can be achieved by
neglecting the sign of the reference. The experimental results of such an approach
are presented in figure 2.7 showing the response of an induction motor drive with
flux optimization (FL-O) and constant flux control at steps of speed and load torque,
respectively.

Figure 2.7 clearly exhibits the reduced dynamic performance during speed or load
steps. However, the enhanced torque per amp relation leads to a higher possible
acceleration of the induction motor. In any case, the efficiency is vastly increased
during partial load. Contrary to the assertions in literature, e.g. [Bose 97], [Van 98],
[Vas 92], this feature makes the induction motor superior compared to the PMSM in
52 Chapter 2

a wide operation range when efficiency is considered. This is especially true in the
range where iron losses are dominant. However, the choice of a suitable flux control
strategy depends on the respective application. In recent drive systems, it can be
switched over easily and in real-time to different flux control strategies.

800

|U| [V]
n [rpm]

600
FL-O 100

400
50
200
0 0
0 0.5 1 0 0.5 1
t [s] t [s]

FL-O iµ = const
ua, ub, uc [V]

## ua, ub, uc [V]

100 100

0 0

-100 -100

0 0.5 1 0 0.5 1
t [s] t [s]

Figure 2.7: Response of FOC with flux optimization and constant flux control at steps of speed and load
torque, respectively. Top: Speed and applied voltage. Bottom: Applied (fundamental) phase voltages.

## 2.4.3 Flux Control Loop

According to (2.29), the magnetizing current follows the d-axis current id via the
rotor time constant τ2. Thus, the rotor flux can be adjusted by simply setting the d-
axis current equal to the reference of the flux-proportional magnetizing current.
However, a control loop is required to achieve high-dynamic flux control as required
for advanced flux optimization schemes. The realization of the discrete flux
controller for real-time applications, considering the delay of the d-axis current
control loop, is shown in figure 2.8.

Induction
motor

iµ* id* 1 id
*
Ψr 1/L1h Kµ Ts /τµ
1 + sτ eq
Flux iµ |i*d| < Imax |i*d| < Imax
reference
-1
z iµ 1
τ2 s +1
Digital flux control Integrator with anti-windup

Figure 2.8: Digital flux control with equivalent current control loop and current anti-windup.
Field Oriented Control 53

Simplifying the current control loop by a first order system with an equivalent time
constant τeq,
id 1
= (2.31)
id* 1 + s τ eq

## and employing a PI controller, the open-loop transfer function is defined by:

τµ s +1 1 1
G0 = K µ (2.32)
τ µ s τ 2 s + 1 τ eq s + 1

Within such systems, the time constant τµ of the PI controller is usually chosen equal
to the largest time constant in the loop [Mayr 91]:

τµ = τ2 (2.33)

## This yields following closed-loop transfer function of the magnetizing current:

iµ 1
= (2.34)
*
iµ τ µ τ eq τµ
s2 + s +1
Kµ Kµ

The damping factor ζ of the closed-loop transfer function can be adjusted by the
controller gain Kµ. Considering second order systems as given by (2.34), the
optimum value of the damping factor [Mayr 91] and resulting closed-loop gain are:

1
ς= (2.35)
2
τµ
⇒ Kµ = (2.36)
2τ eq

iµ 1
⇒ = (2.37)
iµ* 2τ eq2 s 2 + 2τ eq s + 1

Figure 2.9 presents an exemplary start-up and the response of the flux control loop
of a 1,5 kW induction motor drive using FOC. At start-up, the d-axis current id
generates a magnetic field in the rotor windings, represented by the magnetizing
current iµ. According to figure 2.8, the d-axis current is limited to the maximum
allowed motor current and the magnetizing current follows the d-axis current with
the time constant τ2. After reaching the flux reference, the applied stator currents are
dc values. Obviously, they induce no rotor current, but the generated field linked to
54 Chapter 2

the rotor windings is not zero. At time t = 0,4s, a load step is applied. In spite of a
reference speed n* = 0, the frequency of the applied stator current is not zero, but
equal to the slip frequency. Since the stator current frequency is not zero, they
induce current in the still-standing rotor windings compensating the load torque.

6 6

4
id 4
i [A]

i [A]
2

q
µ

2
0

0 -2
0 0.25 0.5 0.75 1 0 0.25 0.5 0.75 1
t [s] t [s]
6 20
ia ib ic
3 0
n [rpm]
i [A]

0 -20
s

-3 -40

-6 -60
0 0.25 0.5 0.75 1 0 0.25 0.5 0.75 1
t [s] t [s]

Figure 2.9: Flux control loop, start-up of a 1,5 kW induction motor drive using FOC and response to a
load step (80% rated toque) with reference speed n* = 0. Top: Magnetizing current iµ, flux producing
current id, and torque producing current iq. Bottom: Applied stator current and motor speed.
Field Oriented Control 55

## 2.5 Model of the PMSM

The stator windings of permanent magnet synchronous motors are almost equally
arranged as the stator windings of induction machines. However, similar to the
skewed rotor bars of squirrel cage induction machines, the stator slots are often
skewed to avoid (very high) torque ripples due to slot-reluctance torque. Figure 2.10
shows the stator and rotor layout of a 3 kW prototype-PMSM with nearly sinusoidal
back-EMF [Hen 98]. This motor type, referred to as a surface-inset PMSM [Seb 87],
combines some advantages of both surface mounted and interior permanent magnet
motors. From the rotor geometry, it can be seen that the direct axis inductance Ld is
smaller than the quadrature axis inductance Lq. As will be shown, this results in an
additional reluctance torque and allows for maximum torque-per-amp control and an
extended flux weakening range [Jah 86].

d-axis
B [T]
1.95
q-axis 1.83
1.71
c b 1.59
c b
-a a 1.46
b b 1.34
c a
c a 1.22
1.10
0.98
0.86
0.73
0.61
magnets 0.49
0.37
0.24
0.12
0.00

Figure 2.10: Stator and rotor geometry (flux plot) of a 6-pole prototype inset PMSM with the d-axis
aligned with the field direction of the permanent magnets.

Permanent magnet synchronous motors are usually modeled in the rotor reference
frame, i.e. Park’s d-q model. The angle of the transformation from the stator to rotor
reference frame coincides with the center position of the surface magnet as the
permanent magnet flux linkage lies entirely in the d-axis (figure 2.10). As seen from
the rotating rotor, the magnetic path is constant and not longer rotor-geometry
dependent. Thus, modeling the machine in a synchronously rotating reference frame,
the inductances are no longer functions of rotor position. Mathematical models
describing the PMSM motor dynamics in a rotor flux reference frame are well
known [Jah 86], [Hen 92]. The model of the PMSM can also be easily derived from
the equations of the squirrel-cage induction motor (2.22)-(2.23) by neglecting the
rotor equations and considering the flux rotating at the synchronous motor speed ωr.
A possible asymmetry of the rotor geometry is described by Ld and Ld representing
constant inductances of respective directions. Applying the expression of the stator
56 Chapter 2

flux linkages (1.148)-(1.149) to stator voltage equation in the rotor fixed reference
frame (1.93), the voltage equations of the PMSM are:

d  3 
u sdr = Rs isdr +  Ld isdr + ψ r  − ω r Lq isqr (2.38)
dt  2
 

d  
u sqr = Rs isqr + ( Lq isqr ) + ω r  Ld isdr + 3 ψ r  (2.39)
dt  2 
 

The rotor flux linkage in terms of the original rotor field ψr is active only in the d-
axis. Due to the power invariant transformation to the α/β system, the factor
3 / 2 has to be introduced in the calculation of the flux. The flux generated by the
permanent magnets is assumed to be constant. Thus, the time-derivation is zero.

In the case of synchronous machines, the rotor reference frame is equal to the
synchronous reference frame and the rotor voltage equation vanishes. Subsequently,
the superscripts and the subscripts representing stator values are dropped. Defining
the magnet flux linkage ΨMd in the reference frame used proportional to the original
flux linkage of the permanent magnets ψr = ΨM,

3
ΨMd = ΨM , (2.40)
2

the PMSM without rotor damper cage is generally described by following equations:

did
u d = R s i d + Ld − ω r Lq i q (2.41)
dt
diq
u q = Rs iq + Lq + ω r Ld id + ω r ΨMd (2.42)
dt

With the time constants τd and τq, equations (2.41)-(2.42) can be rewritten in a state
form as required by the current control:

Ld
τd = (2.43)
Rs

Lq
τq = (2.44)
Rs
Field Oriented Control 57

did u
τd + id = d + ω r τ q iq (2.45)
dt Rs

diq uq ΨMd
τq + iq = − ω r τ d id − ω r (2.46)
dt Rs Rs

## The electrical behavior of PMSM is completely described by two voltage equations

of the stator (2.41)-(2.42) and a torque equation. The electromagnetic torque is
produced by the interaction of stator flux linkages and stator currents (or rotor flux
and rotor current). Applying the expression of the stator flux linkages (1.148)-
(1.149) to the torque equation (1.126) yields:

   
Tel = p (isq, ψ sd, − isd, ψ sq, ) = p  iq  Ld id + 3 ψ r  − id Lq iq 
  2  
   
(2.47)
 3 
= p iq  ψ − ( Lq − Ld ) id 
 2 r
 

[
⇒ Tel = p iq ΨMd − Lq − Ld id ( ) ] (2.48)

The model of the PMSM used (figure 2.11) neglects rotor damping and iron losses.
However, it can be adapted taking stator iron losses into account [Hon80],
[Mel 91b].

1
id
1/Rs τd Lq-Ld ΨMd

ua uq τq
a,b
ωr
p
ub uq
d,q
τd

γ = ∫ ωr
1
iq Tel ω
1/Rs τq p 1/J

1/Rs

## Figure 2.11: Block diagram of the permanent magnet synchronous motor.

In a PMSM with surface-mounted magnets (Ld = Lq), torque control can be achieved
very simply, since the instantaneous electromagnetic torque can be expressed
similarly to that of the dc machine as product of the q-axis current iq and magnet
58 Chapter 2

flux ΨMd. In the case of interior permanent magnets (Ld ≠ Lq), an additional
reluctance torque can be exploited. Of course, the mechanical behavior of the
PMSM is identical to the mechanical behavior of the induction machine:

dω J dω r
Tel − Tload = J = (2.49)
dt p dt

In contrast to the induction motor control, the rotor flux reference frame (with
transformation angle γ) is fixed to the mechanical rotor position. Employing an
incremental encoder for speed/position measurement, the magnet position is
indicated by an index pulse resetting all registers and guarantying the correct
transformation to the d/q plane. However, the rotor must first rotate (up to one
revolution) to find this index pulse. Therefore, a special start-up strategy is required
[Ter 02]. As implemented by recent sensorless control approaches, the magnet
direction can be detected also by an observer exploiting a possible rotor asymmetry.

## As the rotor flux is fixed in synchronous permanent magnet motors (determined by

the magnets), there is no need to create one. Hence, when controlling a PMSM, id*
can be set zero. However, advanced control schemes may additionally exploit the
reluctance torque, if available (Ld ≠ Lq). Furthermore, high-speed operation of the
PMSM is constrained by the back-EMF due to a maximum inverter output voltage.
However, the possible speed range can be expanded by flux weakening adding a
negative d-axis current to counteract the positive magnet flux. The calculation of
suitable d-axis current command values id* is described in the next two paragraphs.

## 2.5.1 Optimum Torque Control

The electromagnetic torque of the PMSM is controlled by the amplitudes and phase
angles of the stator currents with respect to the rotor magnet orientation.
Instantaneous torque control is conveniently achieved by controlling the q-axis
current iq and setting the d-axis current id to zero [Jah 86]. Both current components
are dc quantities under steady-state conditions. However, the optimal control of a
PMSM with Ld ≠ Lq takes advantage of the reluctance torque by introducing a
suitable direct axis current component id. This results in a maximum torque-per-amp
trajectory. According to the torque equation,

[ ( ) ]
Tel = p iq ΨMd − Lq − Ld id (2.50)

the d-axis current id must be positive if Ld > Lq. However, a positive current
increases the field, responsible for the iron losses, and it is therefore not obvious,
that the efficiency increases simultaneously. Here, only Ld ≤ Lq, typical for PMSM
with magnet placing of the inset-type (Ld < Lq) or surface-mounted type (Ld = Lq), is
considered. With Ld < Lq, a positive contribution of the reluctance torque is achieved
Field Oriented Control 59

## by introducing a negative d-axis current component id. Considering both torque

components, (2.54) yields a maximum torque-per-amp trajectory in the id - iq plane
(figure 2.12), almost equivalent to the maximum drive efficiency [Jah 87], [Mor 90],
[Van 98]. The optimum operation points, corresponding to maximum
electromagnetic torque Tel for a given stator current value is, are obtained by
substituting (2.51) in (2.50) and setting the derivative dTel/did zero:

## iq = is2 − id2 (2.51)

d d 
(Ψ ( ) )
!
Tel =  p is2 − id2 − Lq − Ld id  = 0 (2.52)
did  
Md
did

ΨMd − ΨMd
2
+ 8 ( Lq − Ld ) 2 is2
⇒ id = (2.53)
4 ( Lq − Ld )

ΨMd
⇒ iq2 = id2 − id (2.54)
Lq − Ld

Figure 2.12 highlights the differences of the torque producing mechanism. At one
design extreme, the reluctance term naturally disappears in a non-salient surface
mounted PMSM (Ld = Lq). Torque-per-amp in the non-salient PMSM is maximized
by setting id zero in all operation points.

Tel3
max T/A trajectory iq max T/A trajectory iq
Tel3
i3 Tel2
Tel2 i3
i2 i2
Tel1 Tel1
i1 i1
ΨMd ΨMd
id id
-i1 -T el1 -i1
-T el1
-i2 -T el2 -i2
-i3
-i3 -Tel3 -T el2

-T el3
Figure 2.12: Trajectories of stator current phasors in the d/q reference frame for maximum torque-per-
amp control. Left: Non-salient pole with Ld = Lq. Right: Salient pole with Ld < Lq.

The implementation of the optimum torque control is shown in figure (1.139). Note
that the torque is no longer proportional to the stator current amplitude in the
presence of reluctance torque. Due to lack of a closed algebraic expression, the
torque command Tel* is mapped into a current command i*s via a look-up table,
predetermined from the known motor parameters. In speed control mode, the current
value i*s is usually approximated by:
60 Chapter 2

Tel*
is* ≈ (2.55)
pΨMd

Look-up
Eq. (2.49)
table
i*q
2 2
iS* − id*

sign(Tel*)

## The error of the incorrect torque-current mapping is automatically corrected by the

integral-acting part of the speed controller. A modification of the torque-current
mapping, avoiding the look-up table, is presented in figure 2.14. The introduced
approach uses the instantaneous d-axis current quantity and motor parameter
variations are compensated by real-time flux adaptation.

Tel*

i*q
ΨMd p
x1
Motor parameter i*d
x2 x12 + x22
id

Lq-Ld 2
Motor parameter
Torque-current mapping

## Figure 2.14: Modified torque-current mapping (Ld ≤ Lq).

Figure (3.31) presents the optimum torque control at a step of the speed reference
from standstill to 1000 rpm using a 3 kW PMSM. The torque command T*el,
calculated by an overlaid speed controller, is mapped into current references
according to figure 2.14. As illustrated, the optimal control of the motor takes
advantage of the reluctance torque by introducing a negative (Ld < Lq) direct axis
current component. The corresponding speed signal is shown in same figure below,
marked optimum torque control. In the same figure, a comparison is given of motor
control with optimum d-axis current and no d-axis current, respectively. In spite of
identical maximum current amplitude, the maximum torque using optimum torque
control is higher, yielding a faster acceleration of the motor.
Field Oriented Control 61

20 5

15
0

i [A]
i [A]

10

d
q

-5
5

0
-10
0 0.2 0.4 0.6 0.8 1 1.2 0 0.2 0.4 0.6 0.8 1 1.2
t [s] t [s]
1200
1000
800
n [rpm]

600
nref id = 0
400
Optimum torque
200
control
0
0 0.2 0.4 0.6 0.8 1 1.2 1.4
t [s]

Figure 2.15: Comparison of torque control with optimum d-axis current and no d-axis current at a step of
the speed reference using a 3 kW PMSM with Ld ≤ Lq. Top: Optimal distribution of d- and q-axis current.
Bottom: Speed response with and without optimum torque control.

## 2.5.2 Flux Weakening

Since the maximum inverter output voltage is limited, a speed controlled ac motor
cannot operate in speed-regions where the back-EMF, almost proportional to the
field and the motor speed, is higher than the maximum output voltage of the
inverter. Thus, the field must be decreased to enable higher motor speed. However,
flux weakening for PMSM is not as straightforward as in the case of induction motor
drives.

The maximum fundamental motor voltage is limited by the power electronic inverter
due to the limited dc bus voltage Udc. Furthermore, the maximum fundamental
motor voltage depends on the PWM method used. Using space vector modulation,
the maximum fundamental output voltage without over-modulation is, according to
the later described relation (2.87)-(2.88), defined by:

2 2 3 ˆ* 1
u d* + u q* = U phase ≤ U dc (2.56)
2 2

This implies that for a given rotor speed, the current state phasor must lie within a
corresponding boundary. When stator resistance is neglected, these limiting curves
are ellipses decreasing in size when rotor speed increases [Jah 86].

2 2 2
1  U dc   
 ≥ iq2 +  Ld 
 Ψ 
 id + Md  (2.57)
2  ω r Lq 

 Lq 
   Ld 
62 Chapter 2

Consequently, rated torque cannot be maintained above the speed at which the
voltage limit ellipse intersects with the maximum torque-per-amp trajectory. This
speed is usually the base speed of the PMSM.

1 U dc (2.58)
ω rb =
2 2 2
L   Ψ 
2
Lq iqN + d   i dN + Md

 Lq  Ld
   

Reducing the current along with the maximum torque-per-ampere trajectory above
base speed, results in a fast decrease of output torque. Alternatively, the operating
point can be forced to leave the maximum torque-per-amp trajectory resulting in
further flux weakening at maximum current (figure 2.16). The high-speed operating
region is considerably extended using the flux-weakening algorithm. The maximum
speed is reached when all stator current is in the direct axis and is:

1 U dc
ωr3 = (2.59)
2 ΨMd
Ld − 3 I N +
Ld

Note that the presentation (2.57)-(2.59) differs from the equations in [Jah 86] and
[Van 98]. They assume sinusoidal PWM and allow strong over-modulation. In fact,
pure six-step block modulation is applied over the whole flux weakening range. In
real-time implementations, this results in high current harmonics, significant motor
losses and acoustic noise and may lead to instabilities.

## The maximum speed becomes theoretically infinite when:

ΨMd
= 3I N (2.60)
Ld

Introducing the voltage limited maximum power curve, without regarding the
current limit [Mor 90], the current can be reduced at very high speeds when:

ΨMd
< 3I N (2.61)
Ld

In this case, the control trajectory yielding maximum output at all speeds is indicated
in figure 2.16 on the right.
Field Oriented Control 63

iq Tel3
max. T/A trajectory
Pmax-trajectory T/Amax-trajectory iq
ωr1=ωrb Tel2

ωr2
Tel1 ωrb
ωr3 imax imax
ωr2
id ωr3 id
−ΨMd/Ld −ΨMd/Ld

Figure 2.16: Constant torque hyperbolas, maximum torque-per-amp trajectory, current limit circle,
voltage limit ellipses and optimum current trajectory. Left: ΨMd/Ld > imax. Right: ΨMd/Ld < imax.

Suitable algorithms calculating reference values for the d-axis current in the flux
weakening range are described in literature, e.g. [Bose 97], [Jah 87], [Mor 90],
[Van 98]. However, the algorithms presented, are based on pre-calculations
postulating a constant dc bus voltage Udc.

Frequently, the dc bus voltage is not constant but variable over a wide range. Then,
an alternative approach is required to allow flux weakening. An automatic flux
adaptation scheme may be based on following approach: The flux is automatically
reduced by the d-axis current, whenever the dc bus voltage is too low to reach the
reference speed. A stop criterion of the flux reduction, i.e. the reduction of the d-axis
current, is given, when the q-axis current reaches its maximum allowed value. The
proposed algorithm can be easily implemented using the anti-windup system of the
current controller described in paragraph 2.6.3.
64 Chapter 2

## 2.6 Torque and Current Control

Torque control, constituting the most important motor basic control function, maps
very directly into current control because of the close association between current
and torque generation in any PMSM and induction motor drive. According to the
basic FOC-scheme (figure 2.1), the current controller calculates the reference
voltages used as input of a voltage source inverter. As will be shown, current control
of PMSM and induction motor drives is very similar. The presented controller
design is based on the voltage equations in the rotor flux reference frame.

## Considering FOC of induction motor drives, current control as described in

literature, e.g. [Bose 97], [Hen 92], [Leo 85], is usually based on the stator voltage
equation (2.22)-(2.23) neglecting a change of the magnetizing current. In many
applications, e.g. using flux weakening and flux optimization, the rotor flux is varied
very quickly and over a wide range. Therefore, the stator voltage equations are
rewritten in a slightly different form. Substitutions are made by applying (2.17) to
(2.22) and (2.19) to (2.23), respectively. As will be shown, this approach eliminates
the flux derivative, increases the performance of the decoupling network and
decreases the dominant time constant in the stator voltage equations:

στ 1 did ud στ (1 − σ )τ 1
+ id = + 1 ω µ iq + iµ (2.62)
K r dt K r Rs K r Kr τ 2

στ 1 diq uq στ 1 (1 − σ )τ 1
+ iq = − ω µ id − ω r iµ (2.63)
K r dt K r Rs Kr Kr

with:

 (1 − σ )τ 1 
K r = 1 +  >1 (2.64)
 τ 2 

## Equations (2.62)-(2.63) describe a nonlinear-coupled system. Postulating the current

control loop much faster than a change of the rotor speed and rotor field, decoupling
of the two current controllers can be achieved by adding voltages ∆ud and ∆uq at the
output of the current controller compensating the cross coupling within the motor:

στ 1 did ud ∆u d
+ id = − (2.65)
K r dt K r Rs K r Rs
Field Oriented Control 65

στ 1 diq uq ∆u q
+ iq = − (2.66)
K r dt K r Rs K r Rs

with:

L12h
∆u d = −σLs ω µ iq − i (2.67)
τ 2 Lr µ

L12h
∆u q = σLs ω µ id + ω r iµ (2.68)
Lr

The structure of the decoupled current control loop is shown in figure 2.17. The
realization of the discrete current controller for real-time applications considering
voltage limitation is shown in figure 2.22.

id* ud* 1 ud 1 1 id
K r Rs στ 1 +
τσ s + 1 s 1
id Kr
PI-controller
∆ud
L2h
Lrτ 2

iµ ωµ Inverter Induction
σLs model motor model
ωr
L2h
iq Lr
∆uq
iq* uq* 1 uq 1 1 iq
K r Rs στ 1 +
τσ s + 1 s 1
Kr
PI-controller

Figure 2.17: Current control and decoupling for the FOC of induction motor drives.

The decoupled current control loop contains a dominant time constant and a time
constant τσ. The latter is the sum of equivalent time constants representing
measurement filter τfilt and time required for the conversion of the reference voltage
to the inverter output voltage, which is mainly depending on sample time Ts and
PWM frequency fPWM = 1/TPWM:

## Considering the proposed decoupling and employing a PI controller (figure 2.18),

the open-loop current transfer function of both d-axis and q-axis is:
66 Chapter 2

τ i s +1 1 1 1
G0 = K i (2.70)
τ i s K r Rs στ 1 s + 1 τ σ s + 1
Kr

id* ud* 1 ud 1 1 id
K r Rs στ 1 +
τσ s + 1 s 1
Kr
id PI-controller
∆ud ∆ud

Inverter Induction
model motor model

∆uq ∆uq
iq
iq* uq* 1 uq 1 1 iq
K r Rs στ 1 +
τσ s + 1 s 1
Kr
PI-controller

## Figure 2.18: Current control loop for of induction motor drives.

The time constant τi of the PI controller within such systems is optimally chosen to
neutralize the largest time constant in the loop:

στ 1
τi = (2.71)
Kr

## This yields following closed-loop transfer function:

id ,q Ki 1
= (2.72)
id* ,q K r Rsτ iτ σ Ki
s
s +2
+
τ σ K r Rsτ iτ σ

Equation (2.72) describes a second order system. The damping factor ζ of the
transfer function can be adjusted by the controller gain Ki. Optimum value of
damping factor and resulting closed-loop gain are [Mayr 91]:

1
ς= (2.73)
2
K r Rsτ i
⇒ Ki = (2.74)
2τ σ
Field Oriented Control 67

For control purpose of overlaid control loops, e.g. the speed or flux control loop, the
closed-loop transfer function (2.72), employing the calculated controller gain Ki
given in (2.74), is often simplified by a first order system with an equivalent time
constant τeq:

id ,q 1 1
= ≈ (2.75)
id* ,q 2τ σ2 s 2 + 2τ σ s + 1 τ eq s + 1

with:

τ eq = 2 τ σ (2.76)

Figure 2.19 shows a typical step response of both d-and q-axis current using a
1,5 kW induction motor. Additionally, the current control loop simplified by a first
order system with the equivalent time constant (τeq ≈ 1ms) according to (2.76) is
drawn in the same figure. As indicated by the current signals marked every sample
time-step (Ts = 200µs), only a few samples are required to reach the current
reference.

i*q
4 iq
i [A]

iq,eq
q

0
0 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.01
t [s]
4
i*d
3
id
i [A]

2
id,eq
d

0
0 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.01
t [s]

Figure 2.19: Step response of the current control loop and equivalent time constant (τeq ≈ 1ms).

## 2.6.2 Current Control of the PMSM

The current control of the PMSM is based on the stator equations (2.45)-(2.46) in a
rotor flux reference frame employing PI-controllers and a decoupling network
according to figure (1.71):
68 Chapter 2

did u ∆u
τd + id = d − d (2.77)
dt Rs Rs

diq uq ∆u q
τq + iq = − (2.78)
dt Rs Rs

with:

∆u d = −ω r Lq iq (2.79)

∆u q = ω r Ld id + ω r ΨMd (2.80)

## Due to the similarity of the voltage equations (2.77)-(2.78) compared to the

equations valid for the induction motor (2.65)-(2.66), the current control loop and
the parameters of the PI controllers are obtained in the same way. The calculation
method is explained in detail in the previous paragraph. Considering a possible rotor
asymmetry, the different parameters of d-axis and q-axis current controller are:

τ i ,d = τ d (2.81)

Rsτ d
K i ,d = (2.82)
2τ σ

τ i ,q = τ q (2.83)

Rsτ q
K i ,q = (2.84)
2τ σ

id* ud* 1 ud 1 1 id
τσ s + 1 Rs τ d s + 1
id
PI-controller
∆ud
Ld
ωr Inverter PMSM
model model
-Lq
ΨMd
iq ∆uq
iq* uq* 1 uq 1 1 iq
τσ s + 1 Rs τ q s + 1
PI-controller

Figure 2.20: Current control and decoupling for the FOC of PMSM.
Field Oriented Control 69

The resulting closed-loop transfer function and its first order equivalent are equal to
the transfer functions of the induction motor:

id ,q 1 1
= ≈ (2.85)
id* ,q 2τ σ2 s 2 + 2τ σ s + 1 τ eq s + 1

with:

τ eq = 2 τ σ (2.86)

This property reflects the ambivalence of the FOC and the large influence of delays
within the current control loop as e.g.: measurement filter, sample time, PWM
frequency and signal lag in data transmission.

## 2.6.3 Discrete current controller with anti-windup

Anti-windup systems for the speed control loop, providing current and torque
limitation of the inner control loops without overrun of the integrator within the
overlaid speed controller, are widely known in literature [Bose 97], [Van 98]. Less
appreciated is an anti-windup system within the current controller since the
maximum voltage is limited by the power inverter itself. Furthermore, the maximum
output voltage can be controlled by the earlier mentioned flux weakening and flux
optimization techniques. However, a variable dc bus voltage or (involuntary) voltage
drops of the power supply may result in instabilities without such a system.
Especially the integrator of the q-axis current control loop will overrun when the
system experiences voltage limitation by the inverter. Then, the supplied voltage is
insufficient to maintain the q-axis current and the motor will accelerate uncontrolled
if the load decreases or the dc bus voltage returns to higher values. This is obviously
since the over-saturated integrator value must be decreased first before a suitable
voltage, maintaining the q-axis current, can be applied.

Compared to the speed control loop, the anti-windup of the current control loop is
more complicated due to the interaction of the two current controllers. Furthermore,
the voltage limitation is physically located outside of the digital motion control.

## Considering space vector modulation, the controllable range of linear modulation

terminates when the reference voltage phasor Uref in the α/β reference frame touches
the hexagon (figure 2.21), opened up by the six active switching state vectors.
Control in the intermediate range, limited by the outer circle around the hexagon,
can be achieved by over-modulation.
70 Chapter 2

Outer
u3 u2
circle

Uref

u4 u1

Inner
circle
Over-
modulation
u5 u6

Figure 2.21: Hexagon formed by the basic space phasors and over-modulation range.

Since the maximum output voltage is limited by the inverter, also the reference
voltages should be limited to achieve anti-windup of the current controller. This
limit depends on the dc bus voltage Udc and the acceptable range of over-modulation
indicated by the factor Kc:

2 2 3 ˆ*
u d* + u q* = U phase ≤ K c U dc (2.87)
2

Suitable values for Kc are given by the inner and outer circle around the hexagon
shown in figure 2.21. A geometrical calculation yields:

1 2
≤ Kc ≤ (2.88)
2 3

## For sinusoidal PWM techniques, the factor Kc must be multiplied by 1 2 resulting

in a much lower maximum fundamental output voltage of the inverter.

## However, the maximum voltage should not be exploited since over-modulation

results in a firmly increased spectrum of lower current harmonics especially of the
5th, 7th and 11th harmonics. A limitation to the inner circle rejects over-modulation
but the maximum fundamental output voltage is then 15% lower. Usually, a
compromise between current harmonics and voltage exploitation is made (e.g.:
Kc = 0,75) and a limiting factor is chosen according to the given application,
respectively.

The entire current control loop with anti-windup of the reference voltage can be
considered as a master-slave system. The controller is always forced to maintain the
flux at the reference value. The d-axis voltage, controlling the flux of the motor, is
not limited, since the back-EMF of the motor is predominantly active in the q-axis.
Thus, an anti-windup system is only necessary in the q-axis of the current control
Field Oriented Control 71

loop. In contrast to the speed control loop, the maximum allowed value of the q-axis
voltage is not constant but depends on the momentary d-axis voltage as well as on
the dc bus voltage level. Figure 2.22 presents the real-time implementation of the
entire current control loop with a variable limit of the q-axis voltage. The proposed
control scheme is valid for both PMSM and induction motor drives.

Reaching the voltage limit yields a forced reduction of the q-axis current.
Consequently, the speed cannot reach the reference value. In order to return to a
regular operating mode, an adaptation of the flux must be applied. Suitable
(predetermined) adaptation schemes are flux weakening and flux optimization.
Figure 2.23 illustrates the different operating conditions of an induction motor drive
during voltage limitation, flux weakening and flux optimization.

In the beginning of the experiment shown in figure 2.23, flux weakening is disabled
and the speed cannot reach the reference value due to the limited maximum output
voltage. However, the implemented anti-windup system guarantees stable operation.
Flux weakening at t = 0,55 s reduces the required motor voltage and the drive
returns to a regular operation mode. Finally at t = 1,2 s, the system switches in flux
optimization mode, increasing the efficiency of the drive. Among these
predetermined approaches, an automatic flux adaptation scheme is possible. The
flux may be automatically reduced by the d-axis current, whenever the dc bus
voltage is too low to reach the reference speed. However, if the load exceeds the
maximum possible electromagnetic torque, which can be generated at the reduced
flux, the reference speed cannot be reached. Thus, a stop criterion of the flux
reduction is given, when the q-axis current reaches its maximum allowed value.
Then, an expert must decide either to increase the dc bus voltage or to reduce the
load in order to reach the speed reference.

∆ud

id* u*d
Kd Ts / τ d
-1
id z

u*d

Udc uc u c2 − u d*
2
Kc
∆uq
u1 sign(u2)
u*q
u1 > |u2|

iq* u2
Kq Ts / τ q
-1
iq z

Figure 2.22: Current control loop with voltage limitation (variable anti-windup system).
72 Chapter 2

2000
n [rpm]

1000

0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
t [s]

i [A]

2
µ

## 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

t [s]
300
| [V ]

200
Voltage limit
ref

100
|U

0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
t [s]

Figure 2.23: Experimental results during current control with voltage limit, flux weakening and flux
optimization of an induction motor (Udc ≈ 400 V). Top: Speed reference and motor speed. Middle:
Magnetizing current. Bottom: Amplitude of the reference voltage in the α/β reference frame.
Field Oriented Control 73

## 2.7 Speed Control

The motion control algorithms are based on the assumption of nearly ideal
electromagnetic torque control. This assumes ideal field orientation and a current
controller with bandwidth considerably beyond required motion control bandwidth.
The speed control output feeds a cascaded current regulated field oriented drive,
creating electromagnetic torque of the motor. In speed control mode, the torque
reference is calculated by the speed controller. This reference can be easily mapped
into a current command by (2.26) and (2.48) for induction motor and PMSM (see
also figure 2.14), respectively.

The easiest controller type is a proportional gain Kn converting the speed error in a
torque reference value Tel*. This structure is shown in figure 2.24. Keeping torque
and current within predetermined boundaries is achieved by limiting the output of
the speed controller.

* e Tel* 1 Tel
ω Kn
1 + sτ eq
Speed ω |Tel|<Tmax
reference
ω 1
Js
Digital motion control ac motor

## Figure 2.24: Speed control loop with proportional gain.

The mechanical property of both PMSM and induction motor drive is:

dω J dω r
Tel − Tload = J = (2.89)
dt p dt

Due to the linear relation between torque and q-axis current, the time constant τeq of
the torque and current control loop are identical. According to (2.85), the transfer
function of the electromagnetic torque is:

Tel iq 1
= * = (2.90)
Tel iq 1 + s τ eq
*

## Neglecting load torque and the current/torque-limiter, the closed-loop transfer

function of the speed is easily obtained by multiplying the open-loop transfer
functions in figure 2.24 with the speed error e:
74 Chapter 2

ω = e Kn
1 1
1 + s τ eq Js
( )
= ω* − ω Kn
1 1
1 + s τ eq Js
(2.91)

1 1
Kn
ω 1 + s τ eq Js 1
⇒ * = = (2.92)
ω 1 1 J τ eq 2 J
1 + Kn s + s +1
1 + s τ eq Js Kn Kn

ω Kn 1 ω 02
⇒ = = (2.93)
ω * J τ eq s 2 + s + K n s 2 + 2 ς ω 0 s + ω 02
τ eq J τ eq

Equation (2.93) describes a simple second order system. The damping ζ of the
transfer function can be adjusted by the controller gain Kn. Optimal values of
damping and resulting closed-loop gain are [Mayr 91]:

1
ς= (2.94)
2
1 J
⇒ Kn = (2.95)
2 τ eq

Note: If the control loop (figure 2.24) is based on speed signals in rpm-unit, the
controller Kn gain (2.95) has to be multiplied by the factor 2π/60.

Assuming a reference speed higher than the measured speed, the speed error is
positive (e > 0) and the (very fast) current/torque control loop generates a positive
electromagnetic torque Tel = Kn e > 0. Without load applied to the motor, also the
input of the integral acting part 1/(J s) in figure 2.24 is positive and the
electromagnetic torque accelerates the drive until the motor speed equals the
reference signal, i.e. the speed error disappears. The same applies for a negative
speed error. Thus, a speed controller consisting of a simple proportional is gain
sufficient if no load is applied.

However, in the presence of load Tload ≠ 0, this simple control approach yields a

and the input of the integral acting part 1/(J s) in figure 2.24 is zero, i.e. the motor
speed stays constant (no acceleration). According to (2.96), this simple control
Field Oriented Control 75

approach yields a steady state error proportional to the load torque and the inverse of
the loop gain:

⇒ e = ω* −ω ( ) t →∞
=
Kn
(2.97)

## However, this problem can be overcome by load torque rejection. As shown in

output of the speed controller. This very robust control approach, requiring the exact
information on the load torque but vastly enlarging the dynamic stiffness of the
drive, is explained in detail in a subsequent chapter.

## ω* Tel* iq* Induction motor:

Kn iq* = f(Tel*)
L12h
ω Proportional |Tel|<Tmax Current Tel = p i µ iq
gain mapping
Lr

rejection
Tel = p iq [Ψ Md (
− Lq − Ld id ) ]

Figure 2.25: Speed control with proportional gain, load torque rejection and torque-current mapping.

Accurate information of the load torque is not always available. Then, an integrator
must be added to the speed control loop compensating for the error due to the load.
As long as the speed error is not zero, the integrator adds up the error and varies the
electromagnetic torque. Consequently, the speed error vanishes in steady state. The
discrete structure of the PI controller is shown in figure 2.26.

ω* Tel*
Kn Ts /τn

ω |Tel|<Tmax |Tel|<Tmax
-1
z

## Integrator with anti-windup

Figure 2.26: Discrete structure of the PI speed controller with a simple anti-windup system.

The PI velocity loop is the “de facto” industry standard. Suitable values concerning
controller gain Kn and time constant τn are obtained according to symmetrical
optimization [May 91]. Due to the current/torque limitation, the integrator within the
speed controller must be equipped with an anti-windup system avoiding
uncontrolled overrun of the integrator. A simple system is shown in figure 2.26
limiting the integrator value to the maximum predetermined electromagnetic torque.
More advanced anti-windup systems restrict the value of the integrator to the load
76 Chapter 2

torque, e.g. estimated by an observer, whenever the limit of the torque command is
reached. This results in a very smooth step response with almost no speed overshoot.

To improve the dynamic performance, the speed controller can be equipped with a
derivative part. However, pure PID controllers are rarely used because calculating
acceleration from a speed/position signal suffers from resolution limitations so
severe as to make it impractical: Measurement and quantization errors are vastly
amplified which may result in a strong increased spectrum of current/torque
harmonics. Thus, a PID-speed control requires a very accurate measurement device.
Alternatively, the acceleration signal calculated by an observer can be used as input
of a modified PID controller (figure 2.27). Note that PID-position control is quite
different from PID-speed control. The D term of a PID speed controller is
proportional to acceleration whereas the D term of a PID position controller is
proportional to speed. Other controller types frequently used are PDF and PI+, also
termed PDFF controller [Ell 99]. Their structures, similar to the PI controller, are
shown in figure 2.27. PI+ is a general controller including PDF and PI control (when
KF is 0 and 1, respectively). A PI controlled system is more responsive to speed
commands. However, the change in structure allows PDF to have higher integral
gains while avoiding overshoot. While KF can be set to these extremes, it can also be
set anywhere in between. A comparative study and optimizing KF are treated in
[Ell 99].

KF
αe derivative part

1 − z −1 ω* Tel*
Kd Ts / τ n Kn
Ts

## ω* Tel* |Tel|<Tmax |Tel|<Tmax

z-1
ω |Tel|<Tmax ω
PI with
anti windup PDF-controller

Figure 2.27: Different speed controller types. Left: Modified PID controller.
Right: PI+ controller (PDF controller indicated by the gray box).

Fuzzy logic applications in power electronics and drives are relatively new. A
comparison of the fuzzy-controlled system performance with that of a PID control is
given in [Li 89] demonstrating the superiority of the former.

The different speed controller types (PI, PID, PI+ and PDF) have been implemented
and tested in [Ter 02]. Experimental results have shown a clear inferior performance
compared to that, which has been achieved with a simple proportional gain together
with the load torque rejection approach. Usually, speed controllers are optimized
regarding an optimum speed response. To the contrary, the proportional gain (2.95)
is optimized still regarding optimum speed response while the observer calculating
the load of the load rejection approach is optimized with respect to an optimum
disturbance rejection.

The proportional gain (2.95) clearly exhibits the only drive parameter possibly taken
into account for adaptation of Kn: a variation of the inertia J; With varying inertia,
Field Oriented Control 77

e.g. rolling mills, conveyors, winding machines, Kn can be tuned in real-time, e.g. if
the inertia is estimated by an observer. However, only an underrated inertia is
critical regarding drive stability. An overrated inertia yields no instabilities, but the
speed control loop is not optimally tuned, i.e. resulting in a slow response to change
of the speed reference.

Figure 2.28 presents a typical speed response to a step of both speed reference and
load torque using a common PI-controller and a simple proportional gain with load
torque rejection, respectively. Avoiding an integral-acting part within the speed
controller, the overshoot at steps of both speed reference and load torque vastly
decreases or even vanishes.

1500
n [rpm]

1000
Reference
500

0
0 0.2 0.4 0.6 0.8 1
t [s]
1550
n [rpm]

1500

1450
PI-controller
1400
0 0.2 0.4 0.6 0.8 1
t [s]

## Figure 2.28: PI-controller versus load torque rejection at a speed and

load step (90% rated torque) using a 1,5 kW induction motor drive

2.8 Conclusions

## Fundamentals of high-performance motion control employing FOC are explained.

Suitable motor models are derived and different control approaches discussed within
this chapter. Squirrel-cage induction motor and PMSM are handled simultaneously
due to the similarity of the electrical and mechanical behavior. Compared to
literature, the model of the induction motor is rewritten in a slightly different form
with major consequences. This approach eliminates the flux derivative, increases the
performance of the decoupling network and decreases the dominant time constant in
the stator voltage equations. This chapter provides a clear description of the
controller design, taking care for the viability of the real-time implementation.

The basic control scheme is refined systematically adding additional features step by
step. Different flux weakening and flux optimization schemes are described. Flux-
weakening in the high-speed range, providing constant power mode is widely known
in literature. Less appreciated is the ability to operate above rated flux at low speed
to enhance the torque per amp and thus better use the available power supply
78 Chapter 2

current. The approach is further refined by flux optimization and optimum torque
control.

## Widely neglected in literature is an anti-windup system within the current controller

since the maximum voltage is limited by the power inverter itself. However, the
presented approach is essential considering the dc bus voltage variable over a wide
range. Furthermore, the proposed system is refined by an automatic flux adaptation
scheme. Different speed controller types have been implemented and tested and an
introduction in advanced speed control is given within this chapter. Experimental
results have shown a clear superior performance of a speed controller with load
torque rejection.
3. Advanced Speed Control & Speed
Measurement

3.1 Introduction

The de facto industry standard for motion control is to use a PI velocity loop and a
proportional position loop. One input of the motion controller is usually an optical
position feedback device. The optical incremental encoder together with a digital
counter interface is preferred over the less accurate resolver feedback. The encoder
produces a certain number of sine or square wave pulses for each shaft revolution.
The higher the number of pulses, the better the resolution becomes. Subsequently,
the cost of the unit increases.

## Incremental encoders as position sensors are not able to generate simultaneously a

velocity signal. The speed of the drive is obtained by signal processing in hardware
or software. The speed can be determined by numerical differentiation of the
position information, counting the inner clock pulse time between encoder pulses or
by applying observer based estimation approaches. However, the first approaches
are used in combination with a filter to smooth the speed signal resulting in phase
lags, while the latter method described in literature [Bose 97], [Lor 99] is motor
parameter depending and clearly sensitive to the accuracy and dynamic of the torque
estimation.

This chapter reviews former methods that have become commonplace and explains
a new approach of speed estimation. Along with the speed, also rotor position and
acceleration are estimated. The implemented algorithm is based on a linear Kalman
Filter. This approach is shown to offer a significant improvement of the drive
performance. The noise reduction is especially relevant for servo drives due to the
high current/torque loop bandwidths required for highly dynamic operation. The
proposed observer is vastly insensitive to parameter variations and avoids numerical
differentiation as well as signal lags. Furthermore, the proposed algorithm can be
implemented easily in software with a negligible requirement of computation time.
As will be shown, the entire drive performance is improved by adding acceleration
feedback. Then, the speed controller, consisting of a simple proportional gain
mapping the speed error into a torque command, is optimized with respect to an
optimum speed response. The feedback of the estimated load torque yields an
optimized system regarding disturbance sensitivity.
80 Chapter 3

The discussion extends to the design and implementation of a linear Kalman filter
for position, speed and acceleration estimation using an incremental encoder, the
implementation of an advanced speed control loop and ends by presenting
representative results simplifying a interpretation of the observer function. This
chapter can be also regarded as a smart introduction into observer theory.

## 3.2 Speed Measurement Devices

Continuous and precise control of speed with long-term stability and good transient
performance is an important feature of machine control. The speed resolution of
feedback devices is the most important property, since erroneous speed-signals are
directly reflected in torque ripples through the speed controller mapping the speed
error into a torque command.

## The most popular speed measurement device is the mechanical dc tachogenerator,

which has the advantages of small size, simple connections and good linearity. In
fact, the tachogenerator is usually a dc motor separately exited by permanent
magnets. Since the resistive voltage drop is negligible when connected to a highly
resistive measurement device, the output voltage is equal to the back-EMF and
proportional to the rotor speed. The common analog tachometer is the only feedback
device providing directly a speed signal. All other devices are in fact position
measurement devices indirectly providing velocity information. The analog
tachometer has no specific limit of speed resolution and owns still a superior
performance in ultra-low-speed applications. However, its mechanical commutator
is often undesired because of the regular maintenance required. Mechanical
tachogenerator normally use silver-graphite brushes for commutation.
Approximately, they have quoted life time of 109 revolutions in industrial
conditions, equivalent to 347 days long-term function with a motor running on
average at n = 2000rpm. When interruptions of the operating cannot be tolerated or
when the transducer is used in inaccessible locations, constant maintenance is
difficult.

## Contrary to the analog tachogenerator, brushless resolvers have a robust rotor

construction providing reliable maintenance-free operation at a wide speed range.
Because the resolver is an absolute position device, it intrinsically provides velocity
information. A resolver is, in principle, a rotating transformer fed with a high
frequency voltage ue (figure 3.1).

The resolver is an absolute position feedback device, even able to determine directly
the position after a power supply interruption. Within each electrical cycle, the
voltages ua1 and ua2 maintain a constant (fixed) relationship determining the absolute
rotor position Θ. The excitation voltage ue may be coupled to the rotating winding
by slip rings and brushes, though this arrangement is a drawback. In maintenance-
Advanced Speed Control & Speed Measurement 81

free applications, a brushless resolver may be used so that the excitation voltage is
inductively coupled to the rotor windings.

Rotor:
ue Θ = ∫ω dt u e = u 0 sin( 2πf e )

u a 2 ~ u e sin Θ u a1 ~ u e cos Θ
Stator:

ua2

 sin Θ  u 
Θ = arctan  = arctan a1 
 cos Θ   ua 2 
ua1

## In former times, resolvers were the dominant high-accurate position feedback

devices (resolution: 1,5-5mrad). Presently, resolvers are largely replaced by less
expensive incremental encoders providing equal or even better accuracy. For highly
accurate applications, sine encoders, similar to incremental encoders with sine-wave
interpolation (e.g. interpolation factor 256), are used.

## 3.3 Incremental Rotary Encoders

The basic operation principle of incremental optical encoder has changed little over
the past 50 years. Conventional incremental encoders consist of a light source, a
stationary mask with a spoke pattern of clear slots that shutters the light through an
identical pattern on a rotating disc, a photoelectric diode on the side of the disc
opposite to the light source and a signal processor. As the disc rotates, light either
passes through one of the slots or it falls between two slots and is blocked. The
flashes of light passing through are detected by the photo detector and interpreted by
the signal processor. The simplest type of incremental encoder is a single-channel
tachometer encoder that produces a certain number of sine or square wave pulses for
each shaft revolution. The pulses are fed into an up/down counter to produce a
digital word for the rotor position. These relatively inexpensive devices are well
suited as velocity feedback sensors in medium to high-speed control systems, but
run into noise and stability problems at extremely slow velocities due to quantization
errors. In addition to low speed instabilities, single-channel tachometer encoders are
also incapable of determining the rotation direction and thus cannot be used as
position sensors. Phase-quadrature incremental encoders overcome these problems
by adding a second channel with a displaced arrangement of the detectors. The
resulting pulse trains are 90° out of phase (figure 3.2).
82 Chapter 3

1 cycle
Channel A

source

## This technique allows the decoding electronics to determine which channel is

leading the other and hence ascertain the direction of rotation, with the added benefit
of increased resolution. Since each full cycle contains four transitions, or edges, an
encoder provides four edges or counts per encoder line. The resolution of the
incremental encoder depends on the number of encoder lines:

Θ res = (3.1)
4 × number of encoder lines

The typical incremental position resolution used for industrial servo drives is
Θres = 1,5 mrad (1024 lines). Lower and higher resolutions are chosen for special
applications.

## 3.4 Velocity Estimation via Numerical Differentiation

The least complicated and often applied technique of speed calculation using an
incremental encoder interface is obtained by numerical differentiation of the position
information

dΘ Θ k − Θ k −1
ω (k ) = ≈ (3.2)
dt Ts

where Ts is the sample time and k is the sample number index. Problems related to
this approach are its lagging nature (small for high sample rates) of the velocity
estimation and the limited velocity resolution:

## digital position resolution Θ res

speed resolution = = (3.3)
sample period Ts

The typical incremental position resolution used for industrial servo drives is 1024
lines. For this encoder type and a sample time Ts = 200 µs, the resolution of the
speed signal is:
Advanced Speed Control & Speed Measurement 83

1rev 1 60 sec
speed resolution = = 73.24 min −1 (3.4)
4 ⋅ 1024 0.0002 sec 1min

## A representative shape of the speed signal calculated by numerical differentiation for

a real motor speed of 50 rpm and 100 rpm respectively is shown in figure 3.3. The
resolution deteriorates even at higher sample rates, whereas a high sample rate
would be advantageous to get high bandwidth current/torque control loops.

150

real speed
measurement

100
n [rpm]

50

0
0 0.002 0.004 0.006 0.008 0.01 0.012

t [s]

## Figure 3.3: Quantization effect by numerical differentiation (Ts = 200 µs).

A speed reference together with such a noisy speed signal forms the input of a speed
controller calculating the torque commands. Therefore, this quantization error
results in faulty torque commands, increased torque ripple, acoustic noise and motor
heating by current harmonics. Especially a speed controller with a derivative part,
e.g. a PID controller, should be avoided. Then, mainly the higher harmonics of this
quantization noise are amplified.

The speed estimation is often improved by digitally filtering the past values to
smooth the signal. Both finite impulse response (FIR) and infinite impulse response
(IIR) digital filters may be used. Such filtering can produce a very accurate, high-
resolution speed signal at steady state, but the instantaneous accuracy and phase
fidelity is compromised. The gain of the speed controller has to be reduced directly
or indirectly due to stability considerations when applying an additional digital filter
in the speed control loop. Thus, the transient performance during acceleration and
the dynamic stiffness of the drive are reduced. It must be noted, that filtering of a
signal generally is an unacceptable ripple reduction solution for servo drives, where
the dynamic performance cannot be compromised.
84 Chapter 3

Time

## Especially for low motor-speed operation, an estimation technique based on clock

pulse counting time is often preferred and implemented. This approach uses the
relatively high temporal resolution of the microprocessor clock Tclk to measure the
time between two encoder pulses [Bose 97]. The speed estimation is obtained by
counting the number ∆N of clock pulses between the most recent pulses from the
digital encoder interface:

dΘ ∆Θ Θ res
ω= ≈ = (3.5)
dt ∆t ∆N Tclk

This clock time measurement improves the resolution especially for low-speed
operation. The incremental velocity resolution is:

## Θ res Θ res Tclk ω 2 T ω2

speed resolution = − = ≈ clk (3.6)
∆N Tclk (∆N + 1) Tclk Θ res + Tclk ω Θ res

## In contrast to numerical differentiation, this estimation technique does not depend on

the sample period Ts. The number of clock pulses appearing between two encoder
pulses is almost proportional to the square of the motor speed. Considering (3.6), the
resolution is vastly improved at low velocities.

Problems related to this approach are inherently large word lengths including
possible register overflow at zero speed and problems caused by the manufacturing
process inaccuracy. The individual line spacing directly affects the performance of
this method and any lack of uniformity shows up as a speed jitter on the drive. The
jitter can be softened by implementing an additional digital filter with the same
consequences as mentioned in the previous subsection. Furthermore, the used
development platform does not support this approach.

## 3.6 Observer based Velocity Estimation

In many servo drives, the dynamic performance of the velocity loop cannot be
compromised. The problems due to quantization errors and estimation lag of
formerly described approaches to obtain velocity feedback can be greatly reduced by
applying an observer-based velocity estimation method. Steps in that direction have
been taken, though, e.g. [Bose 97], [Lor 91] and [Lor 99]. However, they are motor
parameter depending and clearly sensitive to torque estimation accuracy and torque
dynamics. Torque errors will lead to velocity estimation errors since the observer
Advanced Speed Control & Speed Measurement 85

model is being fed the torque command whereas the real motor experiences the
actual torque.

## Subsequently, a new method of speed estimation is proposed. Simultaneously, rotor

position and the acceleration of the drive are estimated. This approach is shown to
offer a significant improvement of the drive performance. The observer is hardly
sensitive to parameter variations and avoids numerical differentiation as well as
signal lags. The calculation of the observer parameter is based on the linear Kalman
Filter algorithm considering both measurement error and model inaccuracy. These
disturbances are explicitly evaluated. The discussion starts with the selection of a
system model and the design of the affiliated linear Kalman filter using an
incremental encoder interface as input and ends with the implementation of the
proposed observer, influence of motor parameters and presentation of representative
results.

## The mechanical motor speed ω is equal to the time-derivative of the mechanical

rotor position Θ, whereas the acceleration α is obtained by the time-derivative of the
speed. The following mechanical equations are valid in any case and without any
inaccuracy:

ω= (3.7)
dt

α= (3.8)
dt

In addition, the acceleration equals the difference between the electromagnetic Tel
and load torque Tload related to the moment of drive inertia J.

Tel − Tload = J =Jα (3.9)
dt

## The load torque is generally an unknown variable, by definition constant at steady

state. It creates a disturbance of the speed control loop, compensated by the affiliated
controller. Therefore, a variation of the load torque (not the load torque itself) is
handled as model inaccuracy. This inaccuracy is neglected at the moment, but is
taken into account afterwards at the calculation of the observer feedback matrix. The
acceleration (3.9) rewritten in state form as required by the system model yields the
time-derivative of the acceleration:

## dα d  Tel − Tload  d  Tel 

⇒ =   =   + model noise (3.10)
dt dt  J  dt  J 
86 Chapter 3

## Contrary to many other observer designs, the differential equation of the

acceleration (3.10) requires not the absolute torque value as input, but the time-
derivative of the electromagnetic torque. Therefore, the influence of both an
incorrect estimation of the electromagnetic torque due to electrical parameter
variations and an incorrect identification of the drive inertia vanishes in steady state.
Furthermore, the influence of incorrect parameter estimation is small compared to a
potential load variation. Thus, the erroneous electromagnetic torque calculation and
inertia identification are handled as model noise.

Postulating a very small sample time (Ts ≈ 100-200 µs), the following
transformation from continuous time (3.7)-(3.10) to the discrete time state space
causes a negligible error. Nevertheless, the discretization error can be considered at
the calculation of the feedback matrix through the noise covariance matrix of the
system model as well as the influence of the load variations neglected in (3.10).

ˆ ˆ
Θ k +1 = Θ k + Ts ω̂ k (3.11)

ωˆ k +1 = ωˆ k + Ts αˆ k (3.12)

αˆ k +1 = αˆ k +
1
(Tel ,k − Tel ,k −1 ) (3.13)
J

## In (3.7)-(3.13), a stiff mechanical coupling between incremental encoder and the

rotor of the drive is assumed. If this is not the case, the mechanical differential
equations of motion have to be considered in more detail.

The selection of the system model is completed by choosing the mechanical rotor
position, motor speed and acceleration as state variable xk and the inertia related
electromagnetic torque variation as input uk. The output vector yk consists of the
encoder position. The structure of the system model, implemented in discrete form,
is presented in figure 3.4.

Θ ˆ
Tel ,k − Tel ,k −1  
x k +1 = A x k + B u k ; u k = ; x k =  ωˆ  (3.14)
J  
 αˆ 
 k

 1 Ts 0  0
   
with: A =  0 1 Ts  ; B =  0  (3.15)
0 0 1  1
  

ˆ =C x ;
yk = Θ k k with: C = (1 0 0) (3.16)
Advanced Speed Control & Speed Measurement 87

-1
|Θ|<π z
overflow Θk+1→Θk
protection
Ts ^
Θ
(1,0,0)
z -1 Output
Electromagnetic ωk+1→ ωk Matrix C
torque Tel
Ts

1/J z-1
z-1 αk+1→αk
Input matrix B Model matrix A

## Figure 3.4: Structure of the system model for velocity estimation.

The rotor position is limited in speed control mode to |Θk| < π avoiding an overflow
of a register occurring due to a potential rotation of the rotor in one direction over a
long period of time. This non-linearity reflects no negative influence on the
proposed observer. The overflow protection has to be dropped in position control
mode, requiring the absolute position.

## As shown in (3.17), the determinant of the observable matrix QB is unequal to zero.

Therefore, the system is observable and it is possible to identify the system state
unambiguously by the output of the system [Mayr 92].

 C  1 0 0
   
det (Q B ) =  CA  = 1 Ts 0  = Ts3 (3.17)
 CA 2  1 2T Ts2 
   s

## It should be noted, that the observation (3.17) is independent of any parameter

variations. The sample time is pre-determined depending on the required
computation time and should be as small as possible.

Unfortunately, Figure 3.4 clarifies, that without feedback of a measured signal, the
open-loop observer fails at any system disturbance. Such disturbances are caused by
applying a load torque or an erroneous electromagnetic torque calculation. For
instance setting the input Tel to zero, all estimated values never change and remain at
the initial values. Therefore, the output vector has to be compared to all available
measured signals and the difference must be used to correct the state vector of the
system model. This results in a closed loop observer as shown in the next
subsection.
88 Chapter 3

The closed loop observer proposed is based on the feedback of the measured
encoder position. If additionally speed information is available from a sensor, the
error between estimation and measurement of both speed and position are used by
the observer to get information on the drive acceleration. This can improve vastly
the drive performance and dynamic stiffness. However, a digital incremental
encoder does not inherently produce an instantaneous velocity signal.

## The closed loop observer is obtained by feedback of the unaccompanied position

information given by the incremental encoder. This information is compared with
the estimation of the encoder position. As illustrated in the signal flow graph of the
closed loop observer (figure 3.5), the difference is used by the feedback matrix
(K1, K2, K3) to correct the state vector xk of the system model.

Measured Θ overflow
|Θ|<π protection
encoder position
index
reset |∆|<π

-1
|Θ|<π z K1
overflow Θk+1→Θk
protection
Ts

-1
z K2
ωk+1→ωk
Electromagnetic
torque Tel Ts Θ̂, ωˆ , αˆ
Output
-1
1/J z K3
z-1 αk+1→αk
Kalman
Input matrix B Model matrix A gains

Figure 3.5: Structure of the closed loop acceleration, velocity and position observer.

Generally, the feedback matrix can be time- or state-dependent and adaptive. As will
be shown, the matrix elements are constant. They can be pre-determined reducing
precious computation time. Calculating the elements can be done by different
approaches, e.g., by pole placement. Pole placement guarantees a stable system, but
results usually in an inferior observer performance, as additional information on the
system is dropped. Due to the noisy characteristic of the position measurement, the
elements are calculated by a linear Kalman filter algorithm considering both
measurement error and model inaccuracy.
Advanced Speed Control & Speed Measurement 89

## As mentioned above, the overflow protections of both estimation and measurement

of the position are only required in speed control mode. The overflow protection at
the input of the Kalman filter rejects erroneous calculations at phase jumps of the
angle. The index reset is only used in position control mode, where the absolute
rotor position is required, e.g. rotor position of a synchronous motor drive. The
estimation and measurement registers are set to zero if the index line is found.

The Kalman filter is sometimes referred to as being slowly and having a lagging
characteristic due to the error driven nature of the observer. This might be true, if
only position and speed are chosen as states. Here, the involuntary lag of the speed
signal is avoided by the additional estimation of the acceleration. In fact, the
acceleration is insignificantly lagging at continuous load torque variation.
Nevertheless, apart an initial change, the acceleration is nearly constant during both
changing the speed reference and applying a load torque. This special drive property
is caused by current/torque limitation in the speed control loop. Thus, the
acceleration is almost constant and can be estimated accurately. The performance of
acceleration estimation might be increased by estimating additionally the derivative
of the acceleration. This has been disregarded due to mentioned remarks and the
difficulty of calculating the model inaccuracy of such an approach.

If the measurement and model inaccuracy are known, the Kalman filter algorithm
yields an optimum feedback matrix, minimizing automatically the RMS-error
between measured quantities and estimated states. A more complete introduction to
the general idea of the Kalman filter can be found in literature [Bram 94], [May 79].
Table 3.1 briefly repeats the algorithm of the linear Kalman filter calculating the
gains of the feedback matrix [May 79].

Table 3.1: Calculation of the feedback matrix according to the linear discrete Kalman filter algorithm.

(
K k = Pk|k −1 C T C Pk|k −1 C T + R )−1

=
[P ]
( 1,1 ); Pk |k −1( 2 ,1 ); Pk |k −1( 3,1 )
k |k −1
(3.18)
P( 1,1 ) + R( 1,1 )

## Pk +1|k = A Pk|k A + Q (3.20)

All model matrices (A, B and C), initial matrix P0|0 and noise covariance matrices
(Q and R) of the algorithm given are constant. Thus, also the Kalman matrix Kk
with the elements (K1, K2, K3) settles to a constant after a number of iterations
indicated by the arrows in table 3.1. Practically, almost 100 iterations are sufficient
to reach the settle point (figure 3.6).
90 Chapter 3

0.246

K []
0.244
1

0.242
0 10 20 30 40 50 60 70 80 90 100
k[]
176
K [1/s]

174
2

172

170
0 10 20 30 40 50 60 70 80 90 100
k[]
3.5
K [10 /s ]
2

3.4
4

3.3
3

3.2
0 10 20 30 40 50 60 70 80 90 100
k[]

Figure 3.6: Exemplary iterative calculation of the Kalman gains with respect to the algorithm given in
table 3.1 with iteration number k and subsequently described noise covariance matrices (Q33 = 0,1 Q33,max).

In table 3.1, the state update and state projection are dropped, because they do not
affect the calculation of the Kalman gains. The presented equations are used for the
pre-determination of the feedback matrix, saving computing time with respect to the
subsequent real-time implementation. As illustrated in figure 3.5, the final observer
with the pre-determined and constant feedback matrix is very computing-time
friendly. Only state xk and system model (A, B, C) updates with the pre-determined
constant Kalman-gains remain in real-time. A is the model matrix, B the input
matrix and C the output matrix of the system model.

Still remaining variables of the algorithm calculating the feedback matrix are the
noise covariance matrices Q and R and the initial matrix P0|0 representing the
covariance in knowledge of the initial conditions. They consist only of diagonal
elements due to the lack of sufficient statistical information to evaluate their off-
diagonal terms. Varying P0|0 does not affect the settle point of the Kalman gains and
can be chosen at random.

## The covariance matrices Q and R have to be set-up based on the stochastic

properties of the corresponding noise. The variance of a variable x with the mean
value µ and the distribution p(x) is defined by:

σ2 = ∫ (x − µ )
2
p( x) dx (3.21)
−∞

In literature, the initial entries of the covariance matrices are often set to the unity
matrix. In order to achieve the optimal filter performance, the filter parameters R
and Q can be obtained by tuning based on experimental investigations. This
describes an iterative process of searching the best values. Increasing R reflects a
stronger disturbance of the measurement. The noise is weighted less by the filter,
causing a more filtered position signal but also a slower transient performance of the
Advanced Speed Control & Speed Measurement 91

system. The noise covariance Q describes the system model inaccuracy. Q has to be
increased at stronger noise levels driving the system, entailing a more heavily
weighting of the measured signal and a faster transient performance. Thus, changing
the covariance matrices R and Q affects both the transient duration and the steady
state operation of the observer. Without any previous knowledge of the matrices,
tuning is very arduously or can even lead to an unstable behavior of the observer.

## Obviously, it is preferable to have a rational basis for choosing the required

parameters. The following approach reduces the set of unknown parameters to the
only parameter Q33 = Q(3,3), adjusted depending on the given application.

The noise covariance R accounts for the measurement noise introduced by the
incremental encoder and can be easily pre-determined. Assuming a near-normal
distribution p(∆Θ) and a zero mean value µ of the position error, the approximate
distribution of the position error depends only on the digital encoder resolution Θres:

p(∆Θ)
1/Θres

∆Θ
Θres/2 Θres/2

## Figure 3.7: Approximate distribution of the position error.

According to (3.21), the variance of a signal with a zero mean value µ and equally
distributed as in figure 3.7 is:

Θ res 2 3
1 1 Θ  1 Θ2
σ = ∫x
2
dx = 2  res 
2
= res (3.22)
−Θ 2
Θ res
res
3  2  Θ res 12

Thus, the noise covariance R, describing the measurement error of the position,
depends only on the digital encoder resolution Θres:

Θ 2res
R= (3.23)
12

Since the position is the only measured signal, R is a 1×1 matrix being constant for a
given installation. In simulations, the measurement noise variance is speed
dependent, e.g. the variance at constant speed, being a multiple of the speed
resolution, equals zero. However, the real motor speed is never absolute constant
due to torque ripple, the encoder pulse counting is mostly asynchronous to the fixed
sample time and the encoder lines are individually spaced due to manufacturing
process inaccuracy. Thus, the assumption of a near-normal distribution of the
position error is reasonable. Furthermore, the given assumption of a near-normal
distribution of the position measurement error is backed-up by experiments [Ter 02].
92 Chapter 3

## The covariance matrices Q is a 3×3 matrix consisting only of diagonal elements.

Q11 = Q(1,1) Q22 = Q(2,2) and Q33 = Q(3,3) describe the model inaccuracy of the
position, speed and acceleration estimation, respectively. The model inaccuracy of
speed and position estimation is only caused by the discretization of the continuous
equations. Considering a very small sample time, the error is negligible and may
usually be disregarded. Nevertheless, the worst of all approximations is to set the
model inaccuracy to zero. White noise is a much better approximation than zero
[May 79]. Thus, this discretization error is considered by a very small value in the
noise covariance matrix Q.

## The maximum discretization error is appraised by the maximum possible

acceleration of a drive. An estimation of the acceleration top-limit can be obtained
by assuming a maximum torque-inertia relation of the drive. According to
catalogues of motor manufacturers, this relation is approximately proportional to the
inverse rotor diameter of the motor and varies between αmax ≈ 500 s-2 for large
machines (~500 kW) and αmax ≈ 2000 s-2 for small motor drives (~500 W). Here, a
constant relation of αmax = Tmax/J = 1000 s-2 is assumed.

According to (3.11), the next position value is estimated by the current position plus
the current speed multiplied by the sample time Ts. Since the real rotor position is
the time-integral of the speed, the discretization error of the position within one
computing cycle is the difference between (3.11) and the total area below the speed
signal as illustrated in figure 3.8.
maximum discretization error: no discretization error at
0,5 ∆ωmax Ts = 0,5 αmax Ts2 constant speed: ∆ω = 0

ω ω(t) ωk ω
ωk = ω(t)

∆ωmax
Ts
Ts

## kTs (k+2)Ts t kTs (k+2)Ts t

(k+1)Ts (k+3)Ts (k+1)Ts (k+3)Ts

## Figure 3.8: Maximum position error due to discretization.

The estimated position is indicated by the area of the shadowed rectangle, while the
real position equals the total area below the real speed signal. Thus, the
discretization error is approximately equal to the area of the textured triangle:

( k +1)Ts

∆Θ = Ts ω k − ∫ ω (t ) dt
kTs
(3.24)

1 1
⇒ ∆Θ max ≈ ∆ω maxTs = α maxTs2 (3.25)
2 2
Advanced Speed Control & Speed Measurement 93

According to (3.22) and assuming a maximum drive acceleration of α = 1000 s-2 and
a sample time Ts = 200 µs, the maximum variance of the estimated position due to
the discretization error is:

 ( k +1)Ts  1 1 
2

## Q(1,1) = var Ts ω k − ∫ ω (t ) dt  <<  α maxTs2  ≈ 3,3 ⋅ 10 −11 (3.26)

  12  2 
 kTs 

Similarly, the variance of the estimated speed due to the discretization error is
appraised. According to (3.12), the discretization error is at its maximum in the case
of a maximally changing acceleration within one computing cycle

( k +1)Ts

∆ω = Ts α k − ∫α (t ) dt
kTs
(3.27)

## ⇒ ∆ω max ≈ α maxTs (3.28)

as illustrated in figure 3.9 by the area of the textured rectangle. The variation of the
acceleration can be caused by applying electromagnetic torque as well as by
applying a load torque to the motor.
maximum discretization error: no discretization error at
∆ωmax = αmax Ts constant acceleration: ∆α = 0

α α(t) α
αk = α(t)
αmax

Ts αk Ts

## kTs (k+2)Ts t kTs (k+2)Ts t

(k+1)Ts (k+3)Ts (k+1)Ts (k+3)Ts

## According to (3.22) and assuming again a maximum drive acceleration of

α = 1000 s-2 and a sample time Ts = 200 µs, the maximum variance of the estimated
speed due to the discretization error is approximately:

 ( k +1)Ts  (α T )2 1
Q(2,2) = var Ts α k − ∫ α (t ) dt  << max s ≈ 3,3 ⋅ 10 −3 2 (3.29)
  12 s
 kTs 

The trickiest part of the proposed observer gain calculation is the variance
determination of the acceleration. The load torque is generally unknown. It creates a
disturbance of the speed control loop compensated by the affiliated controller.
electromagnetic torque calculation and inertia identification are handled as (a small)
94 Chapter 3

part of the model noise. However, the influence of both an incorrect estimation of
the electromagnetic torque due to electrical parameter variations and an incorrect
identification of the drive inertia is small compared to a potential load variation and
subsequently dropped.

An estimation of the variance top-limit can be obtained considering the inner current
control loop. Since the electromagnetic torque is varied with the equivalent time
constant of the earlier derived current control loop (figure 3.10), faster load
variations are not compensated anyway and consequently disregarded.

## Tel τeq T*el

Tel
Ts
∆Tmax = Tmax Ts / τeq

t
Figure 3.10: Approximate step function response and maximum variation
of the electromagnetic torque within one computing cycle.

Taking an equivalent time constant τeq = 1ms, the maximum process variance of the
acceleration can be estimated by:

T − Tload ,k −1  T
model inaccuracy <  load ,k  ≈ max Ts (3.30)
 J  max J τ torque
2
1 T T 
 ≈ 3,33 ⋅ 10 3 1
⇒ Q33 = Q(3,3) <  s max (3.31)
12  J τ torque 
 s4

Equation (3.31) delivers a maximum value for the calculation of the Kalman gains.
All other parameters, only slightly affecting the resulting Kalman gains, are fixed
and, considering very small discretization errors due to the short sample time, set to
the maximum values given in (3.26) and (3.29). Thus, only the acceleration
inaccuracy has to be chosen and adapted depending on the given application. It
should be noted, that the calculation of all process covariance matrices is
proportional to the square of the sample time. The given constants should be adapted
accordingly, if a different sample time is chosen.

Table 3.2 gives a general idea of the observer performance as a function of the
variance Q33. The spread of position, speed and acceleration are indicated by ∆Θ, ∆n
and ∆α. The acceleration at an abrupt load torque variation can be estimated
according to the given time constant τα. Compared to the encoder resolution
Θres = 0,0015 rad, the estimation of the position is for all pre-determined parameters
even more accurate than the measurement. The speed signal is vastly improved
Advanced Speed Control & Speed Measurement 95

considering the numerical differentiation approach (∆n = 73,34 rpm). For almost all
applications where the load torque variation is totally unknown, even a ratio
Q33/Q33,max = 10% is fast enough. Of course, this ratio should be chosen much
smaller, if the load torque is known very well or a smooth speed signal is more
important than the dynamic behavior of the loop.

Table 3.2: Kalman gains and observer performance as a function of Q33 (Ts = 200 ms).

Q33/Q33,max K1 K2 K3 ∆Θ ∆n ∆α τα
[%] [] [1/s] [104/s2] [10-4 rad] [1/min] [1/s2] [ms]
10 0,245 175 3,4 ~4 ~2 ~150 ~5
50 0,284 244 7,7 ~5,5 ~5 ~250 ~0,4
100 0,307 290 10,8 ~8 ~7 ~400 ~2,5

## A linear time-invariant system is asymptotically stable, if all eigenvalues are placed

inside the unity-circle. Thus, the stability of the observer is proven by calculating the
observer eigenvalues λ1, λ2, ..., λn, being solutions of the characteristic polynomial:

## χ A− AKC (λ ) = det[λ I − (A − A K C)] = (λ − λ1 )...(λ − λn ) (3.32)

The stability boundary and the eigenvalues with the variance of the acceleration as
parameter are given in figure 3.11 proving the stability of the system. Q33 is varied
in steps of 1% of the maximum variance.

0.2

0.15

0.1 boundary
0.05
Imaginary [ ]

## -0.05 Increasing Q33 = 0

Q33
-0.1

-0.15

-0.2
0.8 0.82 0.84 0.86 0.88 0.9 0.92 0.94 0.96 0.98 1
R eal [ ]

Figure 3.11: Eigenvalues of the observer as a function of Q33 (Ts = 200 µs).

## Increasing Q33 results in smaller eigenvalues and a faster observer response.

However, the noise suppression is simultaneously reduced. The variance Q33 = 0 can
be disregarded, since a zero variance is equivalent to the unrealistic assumption of a
96 Chapter 3

never changing load torque resulting in an estimator observing only position and
speed with a phase lag during transients.

## The presented observer achieves the objectives of avoiding numerical differentiation

as well as eliminating lag of the estimated motor speed. Since the model matrices of
the observer are independent on motor parameters, the closed-loop observer is vastly
insensitive to both electrical and mechanical parameter variations. Furthermore, the
proposed algorithm can be easily implemented in software with a negligible
requirement of computation time. Figure 3.12 shows the closed-loop observer
integrated into the speed/position control loop of a highly dynamic torque controlled
ac motor drive.

## Digital Speed Udc

reference
ω*
motion
control ω* Tel* a u* SVM
mode Torque
Control u * Inverter
ω & b
1 − z −1 ω* Speed
Torque
Ts / K pn controller uc*
Estimation

Θ* Kpp ib ia
Position Θ Position α Acceleration Tel
reference controller ω Velocity
Θ AC
Observer motor
Incremental
encoder

Figure 3.12: Velocity observer integrated into the speed/position control loop.

It should be noted, that the velocity estimation described here can be extended easily
to allow further improvement of the entire drive performance especially at load
acceleration can be used either as derivative input part of a modified PID speed
controller (figure 3.13) or directly by compensating the load torque (figure 3.14).

1 − z −1
Tdn
Ts / K pn

Tel*
ω*

anti windup

## Figure 3.13: Modified PID speed controller.

Advanced Speed Control & Speed Measurement 97

ω* Tel* ω* Tel*
Kn
ω PI with |Tel| < Tmax ω Proportional |Tel|<Tmax
anti-windup gain

rejection rejection

## Both approaches reject immediately load disturbances improving the dynamic

stiffness of the drive. Using this extra information is in any case superior when
compared to applying again a numerical differentiation of the (now smoothed)
velocity signal. Figure 3.15 presents the simulation results of a response to a load
step using a common PI controller and the same controller with additional load
torque rejection according to figure 3.14. The applied load amounts to 90% of the
rated torque. Thus, this feedback causes the disturbance to perceive a more robust
system less sensitive to disturbances.

1550
n [rpm]

1500

PI-controller
1450

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
t [s]
15

10
[Nm]

## 90% of the rated torque

5
T

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
t [s]

Figure 3.15: PI-controller versus load torque rejection at a load step (Simulation).
Top: Motor speed. Bottom: Load torque

## The proposed observer-based speed estimation is even applicable using a high-

resolution encoder or a resolver. If additional speed information is directly available
from a sensor, the algorithm has to be changed slightly. Then, the error between
estimation and measurement of both speed and position are used by the Kalman
filter to get information on the drive acceleration, additionally improving the drive
performance and dynamic stiffness.
98 Chapter 3

## 3.8 Experimental Results

A drive set-up with a 1,5 kW induction motor has been used to clarify the practical
operation and performance of the introduced observer. The inertia of the drive is
about J = 0,008 kgm2. Generally, such a small inertia causes more problems for an
estimator to track the real speed than a larger one, as the acceleration is much faster.
All presented experimental results are obtained, if not explicitly stated differently,
using the proposed observer with a sample time Ts = 200 µs and 10% of the
maximum acceleration variance as defined in (3.31).

Figure 3.16-3.18 shows experimental results during a step of both speed reference
and load torque. The given speed, acceleration and position estimations are
measurements corresponding to the same time span. The speed and acceleration
estimation are used as feedback to control the motor. The speed reference changes
from zero to 2000 rpm at t =0.1 s. According to common flux weakening algorithms,
the flux is decreased inversely proportionally to the speed above n = 1500 rpm. A
step of the load torque is applied after t =0,7 s. The applied load amounts to 65 % of
the rated torque. Due to the flux weakening, a maximum load of 75 % of the rated
torque can be generated by the motor in the given speed range. Figure 3.16 shows
the vast improvement of the speed estimation during transients compared to a
simultaneously offline measurement with the numerical differentiation approach
using an additional filter to smooth the signal. The implemented filter is chosen to
match the same speed smoothness in steady state. Nevertheless, the speed oscillates
if, instead of using the observer, this filtered speed signal is used as feedback in the
same control loop. The filter causes an extra large time delay in the speed loop. Due
to lagging during transients, the decoupling of the current control loop is extremely
deteriorated. With the filtered speed signal in the loop, the gain of the speed
controller has to be decreased. To the contrary, the speed signal estimated by the
observer requires no supplementary filter.
2500

2000
Flux
n [rpm]

1500
weakening
1000
step
500

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

Ka lma n Filte r
t [s] Num. Diffe re ntia tion + Filte r
10 75
[rpm]

[rpm]

5 50
est

filt

0 25
-n
-n

real
real

-5 0
n
n

-10 -25
0 0.25 0.5 0.75 1 0 0.25 0.5 0.75 1
t [s] t [s]

Figure 3.16: Estimation of the speed during start-up and at a step of the load torque. Top: Motor speed.
Bottom: Speed error of the observer (nest) and speed error of a filtered signal (nfilt).
Advanced Speed Control & Speed Measurement 99

Figure 3.17 shows the ability of the observer to track the real motor acceleration
during the same step of the speed reference and at variable load torque. Without load
torque, the estimation of the acceleration matches the acceleration due to the
electromagnetic torque. Of course, the total acceleration is zero in steady state and
the electromagnetic torque equals the load. The load can be calculated by the
difference between the total acceleration and the acceleration due to the
electromagnetic torque. The information on the load acceleration is used as part of
the speed controller directly compensating the load torque (figure 3.14). If the
speed-load torque relation of a given installation is known, this information can be
added to the electromagnetic torque input of the observer. Consequently, the pre-
determined variance of the acceleration can be reduced. This results in a further
improvement of the drive performance with a very smooth speed and torque signal.

1600

electromagnetic
1200
torque
1000

800
α [1/s ]
2

600
step
400

200

## -200 Total acceleration

(estimation)
-400
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t [s]

Figure 3.17: Estimation of the acceleration during start-up and at a step of the load torque.

-3
x 10
1.5

1
0.5
meas

0

-0.5
real

-1
Θ

-1.5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
-3 t [s]
x 10
1.5

1
0.5
est

0

-0.5
real

-1
Θ

-1.5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t [s]

Figure 3.18:Position error during start-up and at a step of the load torque.
Top: Error between real and measured position. Bottom: Error between real and estimated position.

The variance of the estimated position is even lower than the variance of the
measured position (figure 3.18). Therefore, the estimated signal is preferred in
100 Chapter 3

position control mode or when using a synchronous motor requiring the information
on the absolute rotor position. As mentioned earlier, the observer is not motor type
dependent. Only the maximum torque-inertia ratio of the given machine can be used
to pre-determine the observer parameters.

## 3.9 Optimal Speed Controller & Parameter Variation

In speed control loops using a common PI controller, the load torque is compensated
by the integral-acting part, also if the output of the integrator does not match the real
load torque. However, an additional integral-acting part of the speed controller is not
required, if the estimation of the load torque is used as feedback (figure 3.19). In any
case, neglecting the integral-acting part of the speed controller and applying load
torque rejection is superior regarding speed response as well as disturbance
sensitivity. The overshoot at steps of both speed reference and load torque vastly
decreases or even vanishes. In common speed control loops the parameter of the
controller, e.g. a PI-controller, are calculated regarding either optimum speed
response or optimum disturbance rejection. To the contrary, the proportional gain Kn
is optimized with respect to an optimum speed response while the feedback of the
estimated load torque yields an optimized system regarding disturbance sensitivity.
Furthermore, the determination of the speed controller parameter Kn is less
complicated (2.95).

## ω* Tel* iq* Induction motor:

Kn iq* = f(Tel*)
L12h
ω Proportional |Tel|<Tmax Current Tel = p i µ iq
gain mapping
Lr

rejection
[ (
Tel = p iq ΨMd − Lq − Ld id ) ]

## Figure 3.19: P-controller with load torque rejection.

In steady state, both real motor acceleration and its estimation is zero. Otherwise, the
acceleration of either the real state or its estimation would not be zero and the
observer obtains an error. This error is equalized by the observer independent on the
inertia or motor parameter estimation. Thus, following equations are valid in steady
state:

αˆ = α real = 0 ; (3.33)
!
⇒ Tel − Tload = Jα = 0 (3.34)

Advanced Speed Control & Speed Measurement 101

Since the estimated and real motor acceleration is zero in steady state, the generated
electromagnetic torque equalizes the load. In fact, the torque calculation might be
incorrect, but the real load is compensated by the real torque. Consequently, the
steady state speed error remains zero, even if the torque estimation is incorrect due
to a parameter mismatch.

Another validation of motor parameter independence is the fact, that the estimated
electromagnetic torque in figure 3.19 is calculated by (possibly incorrect) motor
parameters, whereas the current mapping is calculated by the inverse motor
parameters. Thus, a parameter mismatch is directly compensated. Consequently, the
implemented algorithm together with the speed control loop in figure 3.19 yields no
steady state speed error, is insensitive to a correct calculation of motor parameters
and parameter variations are negligible considering the proposed method.

Figure 3.20 presents the estimated and real speed using this controller type with a
mismatch of motor parameters. The electromagnetic torque is 20%, the motor inertia
50% over calculated. The speed reference changes from zero to 1500 rpm at t =0.1 s.
A step of the load torque is applied after t =0,7 s. The applied load amounts to 80 %
of the rated torque.

2000

1500
n [rpm]

1000
Box 1
500
nest and nm

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t [s]
1550

nref
n [rpm]

1500

step
1450
0.2 0.3 0.4 0.5 0.6 0.7 0.8
t [s]

Figure 3.20: Speed control using a P-controller with load torque rejection and mismatch of motor
parameters. Top: Real, estimated and reference speed. Bottom: Details indicated by “Box 1”.

3.10 Conclusions

The quality of the measured speed signal has a dramatic impact on the drive
performance. A noisy speed signal results in erroneous torque commands, increased
torque ripple, acoustic noise and motor heating by current harmonics. Filtering of
the signal is not a generally acceptable solution to reduce the ripple of the speed
measurement. The lag associated with the filter can substantially degrade the closed-
loop drive performance.
102 Chapter 3

## Alternative methods for velocity estimation described in literature are motor

parameter depending and clearly sensitive to torque accuracy. This chapter presents
the design and the implementation of a novel observer for position and speed
estimation using an incremental encoder as input offering a significant improvement
of the drive performance.

## The presented observer achieves the objectives of avoiding numerical differentiation

as well as eliminating lag of the estimated motor speed. The lagging characteristic of
the speed signal due to the error driven nature of the observer is avoided by the
additional estimation of the motor acceleration.

The observer is motor type independent. The variance of the estimated position is
even lower than the variance of the measured position. Therefore, the estimated
signal should be preferred in position control mode or when using a synchronous
motor requiring information on the absolute rotor position.

## The entire drive performance is improved by adding acceleration feedback. The

information on load acceleration is used as input of a speed controller rejecting
directly load variations. Independent of motor parameters, a speed controller with
load. This topology provides a system with extremely high stiffness to disturbance
inputs as well as an improved dynamic performance.

This closed loop observer is very much insensitive to both electrical and mechanical
parameter variations. Furthermore, the proposed algorithm can be easily
implemented in software with a negligible requirement of computing time.
4. Control

4.1 Discretization

## As the drive is controlled by a DSP, it is to be considered as a sampled data system.

There are different approaches to model these systems [Fra 90]. One possibility is to
use a discrete model [Lab 96], using the z-transform and to carry out the controller
design in the z-domain. To enable the use of frequency response methods, a second
transformation is necessary (bilinear transformation). Alternatively, carrying out the
initial design using continuous methods can serve as a guide for a direct discrete
design. The performance of a system when it could be realized with continuous
hardware is a target for how well the digital system should perform and assists in
selecting the sample rate. As shown in [Büh 97], under certain conditions a sampled
data or discrete system can be treated as a pseudo-continuous system. This has the
advantages with respect to the applicability of optimal control formulations. The
effect of A/D and D/A converters, as well as the execution time of the control
algorithm itself are taken into account by using equivalent continuous transfer
functions. The designed optimal controllers can directly be converted to their
discrete equivalents. However, the control algorithms implemented here contain no
fixed discrete transfer functions. They are rather constructed manually (user-defined
library) by unit delays, sums and gains. This has the advantage of all variables being
accessible and avoiding involuntary signal delays. Only where it is necessary to