Sensorless Control of
PMSM for Low-speed
Applications
Supervisor:
Project Group:
Title:
Group code:
PED3-934
Members:
Theme:
Project period:
Publications:
Pages:
125
CHAPTER 1: INTRODUCTION
CHAPTER 1: INTRODUCTION
The chapter starts with discussing the suitability of Permanent Magnet Synchronous Motor
(PMSM) for modern low speed applications through a background information on this
specific motor type, general characteristics of PMSM and a comparison among some existing
motor technologies.
Then project objectives along with limitations are listed. A brief explanation of Sensorless
Control is given as well as this methods advantages over a traditional control system in
which a position sensor is employed.
In the following sections, commonly used possible sensorless control techniques are
introduced and described as well as their suitability for the application specific demands.
The chapter is concluded by stating the selection of a sensorless control technique and scope
of the project.
CHAPTER 1: INTRODUCTION
1.1 INTRODUCTION
Despite the fact that the principle of the Permanent Magnet Synchronous Motor (PMSM)
was introduced already before the Induction Motor (IM) was invented, the first commercially
fabricated permanent magnet DC machines date back into 1932 [2], after the first
commercially manufactured permanent magnet material AlNiCo was found.
As a result of low energy product of AlNiCos and subsequent materials, it was not possible to
manufature effective permanent magnet motors until the 1970s when new high-energy
product permanent magnet materials, namely rare earth magnets such as NdFeB, was
commercially developed. For this reason, it can be stated that the effective design of
permanent magnet motors has been developed only during the last 3 decades.
In recent years, the need for new motor types has grown with the industry demand for high
efficiency and accurate dynamic performance, and the development of new effective control
systems such as Direct Torque Control (DTC).
Permanent magnet synchronous motors (PMSMs) are well suitable for new adjustable speed
AC inverter drives, because their efficiency and power factor do not depend on the pole pair
number and speed to the same extent as they do in induction motors [2]. Hence, an induction
motor with gearbox can often be replaced by a direct PM motor system. Space in addition to
costs will be saved, because the efficiency increases and the cost of maintenance decreases as
well.
The increase in efficiency and decrease in cost are due to the elimination of brushes, sliprings, and rotor copper losses, factors which also make PMSM maintanance costs lower than
those of induction machine. Moreover, the higher efficiency of PMSM allows a reduction in
the machine frame size which translates into lower cost as well. Furthermore, the power
density of the PMSM may be increased remarkably from the level of the IM.
CHAPTER 1: INTRODUCTION
High torque capability (quick acceleration and deceleration for short time)
High efficiency and high cos (low expense for the power supply)
Compact design
A permanent magnet motor and a frequency converter form together a simple, yet effective
choice in variable speed drives, since the total efficiency remains high even at lower speeds
and the control of the whole system is very accurate.
The standard induction motor operates at its best in the speed range between 1000 and 3000
rpm [2]. It is neither technically nor economically reasonable to manufacture medium and low
power induction motors. The induction motor may need to be equipped with a gearbox to
drive medium and low power applications while the permanent magnet motor offers the
possibility to drive these applications directly.
PMSM has speed/torque characteristics ideally suited for direct drive of large-horsepower,
low-rpm loads.
PMSMs can be divided into two major groups: Brushless DC PM (BLDC) motors and PM
Synchronous (PMS) motors.
Brushless DC PM motors have rectangular current waveformes and rectangular or trapezoidal
back EMFs. Even though their inverter control scheme is relatively simple than that of PM
synchronous motors, it leads to the torque ripple production and small commutation errors
cause great pulsating torque [2]. Moreover, it has a lower torque-to-volume ratio compared to
PMSM. Therefore, they do not match the requirements of high performance drives.
In synchronous AC PM motors, on the other hand, both machine back-EMF and current
excitation waveforms are in sinusoidal form. A short comparision of IM, BLDC and PMSM is
given in Table 1.1. Synchronous AC PM motors can be divided into two sub-groups as well:
Interior Mounted Permanent Magnet Synchronous Motors (IMPMSM) and Surface Mounted
Permanent Magnet Synchronous Motors (SMPMSM). Lower cost and relatively simple
mechanical structure of SMPMSM makes it a reasonable chioce for low-speed applications
[2].
CHAPTER 1: INTRODUCTION
Advantages
Disadvantages
Induction Motor
BLDC Motor
PMS Motor
Smooth torque
High efficiency
High torque/volume
Good heat dissipation
Expensive
Torque ripple
Danger of demagnetisation
Expensive
Danger of
demagnetisation
Table 1.1. Arguments for and against IM, BLDC and PMSM motors [3]
The main drawback of PMSM is the need for an accurate position sensor to provide desirable
motor control. A position sensor used requires extra space, reduces the reliability, while
increasing the cost of the overall system. However, employing a sensorless control algorithm
translates into an improved reliability and decreased cost.
Sensorless control methods are roughly catagorised into two main groups. One group is
composed of methods based on EMF observation in which position of the rotor is obtained
using the EMF information. The algorithms that fall into this first group perfom well at
medium and high speeds but when it comes to very low and near zero speed applications it is
almost impossible to detect rotor position due to low magnitude of EMF, which is
proportional to speed. It is also noteworthy that noise effects become dominant at very low
speeds and lead to estimation errors.
The second group is based on high frequency injection scheme. This method which has been
succesfully applied to reluctance and interior permanent magnet motor (IPMSM) [4,5] can
also be applied to surface permanent magnet synchronous motor (SPMSM), even though it is
a more difficult task to accomplish accurate sensorless control of this motor type, especially in
near zero speed region because of the fact that the saliency between d and q axes inductances
is very small. Yet, it is in all probability to achieve desirable results under high frequency
injection based methods.
CHAPTER 1: INTRODUCTION
1.3 METHODOLOGY
In this section a brief information on different currently available sensorless methods to
control SPMSM is presented in order to give the reader a clear understanding about reasons to
select a technique, which is suitable for the application specific needs, to be employed in the
project.
CHAPTER 1: INTRODUCTION
The main techniques to obtain the rotor position information of PMSM are listed below.
A. Open-loop estimators using monitored stator voltages/currents [1].
B. Stator phase third harmonic voltage-based position estimators [1].
C. BEMF (Back Electromotive Force) based position estimators [1].
D. Observer based (e.g. Kalman, Luenberger) speed and position estimators [1].
E. Estimators based on inductance variation due to geometrical or saturation effects [1].
F. High frequency signal injection [6,7,8].
G. Estimators using artificial intelligence (e.g. neural network, fuzzy-logic-based systems,
fuzzy-neural networks) [1]
Techniques listed under this group utilise stator flux calculated by integrating voltage across
the stator inductance. It is important to note that the performance of a PMSM drive with these
methods used depends greatly on the accuracy of the monitored voltages and currents, and on
an accurate integration tecnique as well. Errors may be encountered in the monitored voltages
and currents resulting from: phase shift in the measured values because of the sensors used,
magnitude errors because of conversion factors and gain, offset in the measurement system,
quantisation errors in the digital system, and so forth.
Furthermore, an accurate value has to be used for the stator resistance. For accurate fluxlinkage estimation, the stator variance in resistance by temperature changes should be taken
into consideration. The integration can become problematic at low frequencies, where the
stator voltages become very small and are dominated by the ohmic voltage drops. At low
frequencies the voltage drop of the inverter must also be considered.
Drift compensation is another important factor in a practical implementation of the integration
since drift can cause large errors of the position of the stator flux-linkage space vector. A
CHAPTER 1: INTRODUCTION
transient offset also arises from the d.c components which result after a transient change. An
incorrect calculation of flux angle and when the expression for torque is considered it will
obviously cause an unwanted fundamental oscillation in the electromagnetic torque of the
machine. Moreover, as in the open-loop speed estimator which utilises the stator flux-linkage
components, the rotor speed is determined from the position of the stator flux-linkage space
vector [1], a drift in the stator flux-linkage vector will cause incorrect and oscillatory speed
values. In a speed control loop, this drift error will cause an undesirable fundamental
frequency modulation of the modulus of the reference stator-current space vector.
When measured currents are used, voltage errors caused by dead-time effects, especially at
low speeds, the pulse widths become very small and the dead-time of the inverter switches
must be considered, the voltage drop in the power electronic devices, the fluctuation of the d.c
link voltage should also be taken into account.
Last but not least, in this method estimation of the initial position is impossible because initial
values of flux integrators depend on the rotor position caused by permanent magnets flux
linkage.
The main principle of this method is that, in a star-connected machine where zero-sequence
stator currents cannot flow, the third harmonic voltage is an air-gap voltage component, and
hence it is equal to the rate of change of the rotor flux.
In this technique, the measurement of the back e.m.f is needed. However, all back e.m.f-based
techniques, by nature, contain high frequency modulation noise. This can be eliminated by
using a low-pass filter which, on the other hand, translates into phase delay. This delay is a
function of the speed, and hence achievement of optimum control, that is to say stator current
is in space quadrature to the rotor flux-linkage, is very difficult, which largely affects the
torque/ampere capability and efficiency of the motor as the speed changes. Although this
problem can be reduced by applying a filter phase-delay compensator (lead-lag network),
maximum performance can still not be achieved at low speeds.
CHAPTER 1: INTRODUCTION
In general, the method is practically free of inverter modulation noise, and a small amount of
filtering is required to eliminate the switching frequency and its side bands. The main
disadvantage of this technique is third hamonic voltages having a relatively low value at low
speed as it is normally the case with all back-EMF based methods.
In this technique voltage induced at the stator terminals measured by voltage sensors is used
to estimate the rotor position. The induced terminal voltage depends on rotor position, and
thus contains information from which rotor position can be obtained.
Due to the fact that magnitude of induced terminal voltages depend on rotor speed, this
method is not handy for low speed range in which signal containig information about position
is very small and is easy disturbed by noise.
Furthermore, in order to calculate BEMF, the resistance and inductances of the stator have to
be known. Hence, parameter value changes should also be considered and calculated.
When this technique is used, in a first stage of calculations, the states are predicted by usning
a mathematical model (which contains previous estimates) and in the second stage, the
predicted states are continuously corrected by using a feedback correction scheme. This
scheme makes use of actual measured states, by adding a term to the predicted states (which is
obtained in the first stage). The additional term contains the weighted difference of the
measured and estimated output signals. Based on the deviation from the estimated value, the
system gives an optimum output value at the next input instant. In a PMSM drive the
Extended Kalman Filter can be used for the real-time estimation of the rotor position and
speed.
Observers are sensitive to and affected by measurement noise. The stability analysis of the
observer is daunting and initial position could not be obtained. Furthermore, Kalman based
observers need powerful processors for fast computation of algoritms. Also tuning of the
CHAPTER 1: INTRODUCTION
Kalman filter based observers require highly-skilled operators and takes a long time. Another
disadvantage of this method is the discontinous nature of the control action.
This method depends on the fact that instantenous inductances contain information about
rotor position, and utilises rotor inductance variation resulting from magnetic saturation or
geometrical effects. Inductances are calculated online and compared with pre-defined values
by a lookup table which contains given rotor position for a given inductance. But the method
is suitable only for IPMSM where, thanks to saliency effects, the variation in inductance
values can be monitored to detect rotor position.
In SPMSM, on the other hand, the saliency between d and q axes inductances is rather small
which makes, this method difficult to be employed. In addition, it is not possible to obtain
zero positon information using this technique.
The main advantage of employing these methods is the fact that a mathematical model of the
machine is not required and they provide simulation of non-linearity effects and are resistant
to noise. Yet, the technique requires training of a neural network which is a complex and time
consuming process when the time limitation for the project is taken into account.
In order to obtain rotor position at standstill, this relatively new technique is based on high
frequency injection is used. Estimation of the rotor position is made by injecting high
frequency stator voltage component and demodulating the corresponding stator current taking
advantage of motor anisotropies. However, SPMSM, as stated before, has a very low level of
CHAPTER 1: INTRODUCTION
inductance anisotropy so using the method for SPMSM is more difficult than employing it for
IMSMPM, but still possible.
Initial position at zero speed can be estimated because a high frequency signal is continuously
injected to the machine. The technique is not sensitive to parameter variations, but injected
signal causes extra loss and torque ripple.
10
CHAPTER 1: INTRODUCTION
1.5 SUMMARY
In Chapter 1, a brief history of PMSM is given first. This is followed by a comparison of IM,
BLDC and PMSM, and differences between interior mounted PMSM and surface mounted
PMSM as well as the need for sensorless control. Project objective and limitations are also
included in this chapter. The concept of sensorless control is explained, and fundamentals of
commonly used sensorless methodologies are given next. The chapter is concluded by stating
the scope of the project.
11
CHAPTER 1: INTRODUCTION
REFERENCES
1. Sensorless Vector and Direct Torque Control
Peter VAS
OXFORD UNIVERSITY PRESS, 1998
ISBN: 978-0-19-856465-2
2. Permanent Magnet Synchronous Motor for Industrial Inverter Applications - Analysis and Design
Tanja HEIKKILA
ISBN: 951-764-699-2
3. Induction Motor versus Permanent Magnet Synchronous Motor in Motion Control Applications: A
Comparative Study
Jussi PURANEN
ISBN: 952-214-296-4
4. Position Sensorless Control of Synchronous Reluctance Motor Using High Frequency Current
Injection
Seog-Joo KANG, Jang-Mok KIM, Seung-Ki SUL
IEEE TRANSACTONS ON ENERGY CONVERSON, VOL. 14, NO. 4, DECEMBER 1999
5. Two Signal Injection Methods for Sensorless Control of PMSM at Very Low Speeds
Shanshan WU, Yongdong LI, Xuejin MIAO
IEEE XPLORE.
6. Analysis of Permanent-Magnet Machine for Sensorless Control Based on High Frequecny Signal
Injection
Ji-Hoon JANG, Jung-Ik HA, Motomichi OHTO, Kozo IDE, Seung-Ki SUL
IEEE TRANSACTIONS ON INDUSTRY APPLICATIONS, VOL. 40, NO. 6, NOVEMBER/DECEMBER 2004
8. Sensorless Operation of PMSM by High Frequency Signal Injection Using the Field-Circuit
Coupled Solution
Dong CHEN, Heng NIAN, Yikang HE, Lei HUANG
PROCEEDING OF INTERNATIONAL CONFERENCE ON ELECTRICAL MACHINES AND SYSTEMS 2007, OCT. 8~11, SEOUL, KOREA
12
CHAPTER 1: INTRODUCTION
9. Mechanical Sensorless Robust Control of Wind Turbine Driven Permanent Magnet Synchronous
Generator for Maximum Power Operation
Kelvin TAN, Syed ISLAM
AUSTRALIAN COOPERATIVE RESEARCH CENTRE FOR RENEWABLE ENERGY LTD
13
14
2.1 INTRODUCTION
The fundamentals of the Permanent Magnet Synchronous Motor (PMSM) and Field
Oriented Control (FOC) are introduced in this chapter. First, the equations of the motor are
described, one buy one, in stationary abc and reference frames and rotating dq frame.
Second, the dq frame field oriented control (FOC) is given and the related control techniques
are explained.
The control system has two loops, namely speed and current loops, which are modelled and
simulated in Simulink. The employed control method to design these controllers is PI, since it
is a simple, efficient technique. At the first stage, the current loop parameters are calculated
based on the electrical parameters, while the speed controller parameters are set in order to
ensure the desired speed response. They are, then, modified in order to be matched with
simulation results under real-world conditions.
15
Figure 2.1. One pole-pair PMSM rotor (left). Two pole-pair PMSM rotor (right)
This machine operates in a fixed speed depending on the frequency of the voltage applied to
the stator coils as well as the number of pole pairs.
m =
e
p
(2.1)
Firstly, the motor is modelled from the point of view of its three real coils and a 3 phase
stationary model is created. Then, using the Clarke transformation [Appendix A], this model
is transformed into a biphasic stationary model in order to have a simpler representation. This
transformation from abc to is shown in Figure 2.2. Lastly, the biphasic model in frame
is, using the Park transformation, transformed into a rotating reference frame which is the
reference to the rotating magnetic field of motor.
16
a
b
c
(2.2)
e : electrical position
voltages
Lab
Lbb
Lcb
Lac ia
d
Lbc ib +
dt
Lcc ic
PMa
PMb
PMc
(2.3)
The elements of the first matrix are known constants, related to the inductances. The terms on
the right hand side of the equation depend on the permanent magnet flux, which is also
known.
Laa = Lbb = Lcc = Los const.
Lab = Lac = Lba = Lbc = Lca = Lcb = Lom const.
The combination of the two previous equations yields to the expressions (2.4), (2.5) and (2.6).
17
PMa
=
PM
PMb
PMc
cos ( )
2
cos
3
2
cos +
3
PMa
d
PMb = PM
dt
PMc
a Los
d
b = Lom
dt
c Lom
sin ( )
2
sin
3
2
sin +
3
Lom
Los
Lom
(2.4)
d
dt
Lom
d
Lom
dt
Los
(2.5)
ia
i
PM
b
ic
sin ( )
2
sin
3
2
+
3
(2.6)
The substitution of (2.6) into (2.2) gives the complete and final equation for the PMSM in
stationary abc reference frame which is shown in (2.7).
0 ia Los
va Rs 0
v = 0 Rs 0 i + L
b om
b
vc 0
0 Rs ic Lom
Lom
Los
Lom
Lom
ia
d
Lom ib PM
dt
ic
Los
sin ( )
sin
2
+
3
(2.7)
18
A]. Thanks to this transformation, both expressing the model and applying the control
algorithm is much easier.
Equation (2.8) shows the general transition matrixes for 3 to 2 phase (axes) transformation
[Appendix A]. The homopolar component is not calculated, as it is zero in a balanced 3 phase
system.
x 1
x = 0
0
1
3
0
1
x
a
xb
3 x
c
(2.8)
Applying this general 3 to 2 axes transformation to the original set of three-phase equations,
abc to transformation is done. The resulting equation is shown in (2.9).
v
i
d i
d
v = Rs i + L i + PM
dt
dt
(2.9)
L + Lom
L = os
0
(2.10)
Los + Lom
cos ( )
PM = PM
PM sin ( )
(2.11)
Once the stationary 2 phase model is created, due to the fact that a Cartesian reference
frame is sufficient to represent the machine, the behaviour of PMSM is expressed by using 2
components instead of 3 and in a simpler way.
19
There is another way to represent the same equations, using the general nomenclature
described in (2.12). The resultant equations are shown in (2.13), (2.14) and (2.15).
r
x = x + j x
(2.12)
uur
ur
ur d s
vs = Rs is +
dt
(2.13)
uur
ur
s = Ls is + PM e j
(2.14)
Finally, the stationary biphasic model for the PMSM motor is described in (2.15).
vs
= Rs is
di
+ Ls s + j PM e j
dt
(2.15)
q
d
e
a
20
The d axis is aligned to the rotor magnetic flux, which means that they rotate together, as
can be seen in Figure 2.4.
In this way, it is even much easier to control the machine, because the variables that to be
controlled are constant signals in steady state instead of being sinusoids. The equations from
(2.16) to (2.20) show the relation between the stationary and rotating dq reference frames,
as well as voltage and flux expressions.
r r dq j
r
r dq
x = x e x e j = x
(2.16)
uur
ur dq
ur dq d s dq
uur dq
vs = Rs is +
+ j e s
dt
(2.17)
uur dq
ur dq
s = Ls is + PM
(2.18)
ds = Ls ids + PM
(2.19)
qs = Ls iqs
(2.20)
The general biphasic rotating reference frame equation for the PMSM is then given by
equation (2.21).
ur dq
ur dq
ur dq
ur dq
dis
vs = Rs is + Ls
+ j e Ls is + PM
dt
(2.21)
It is possible to split the equation (2.21) into two parts so as to d-component and q-component
are described separately, as shown in (2.22) and (2.23).
vds = Rs ids + Ls
dids
e Ls iqs
dt
vqs = Rs iqs + Ls
diqs
dt
+ e ( PM + Ls ids )
(2.22)
(2.23)
The previous expressions can be reduced for the steady state, as can be seen in (2.24) and
(2.25).
21
(2.24)
(2.25)
Rs
vds
iqs
vqs
Lds
Rs
Rs
e Lqs iqs
+
Lqs
+
-
e ( PM + Lds ids )
Thanks to Clarke and Park transformations, stator voltages and currents of a PMSM, in a
balanced 3-phase system, may be represented solely in 2 axes and by DC quantities in steadystate. This is of prime importance as it simplifies the controller design and lowers the
computational burden. Thus, the equations of PMSM, which will be employed in the project
and whose parameters are as follows, shall be given in dq rotating reference frame. For more
specific information on the motor please refer to [Appendix C].
Mechanical Parameters
o Rated speed [Nn] = 6000 rpm
o Number of pole pairs [np] = 2
o Rotating inertia [J] = 94 10-6 Kgm2
o Viscous friction [Bm] = 0 Kgm
o Rated torque [Tn] = 1.3 Nm
22
Electrical Parameters
o Rated Power [Pn] = 400 W
o Rated phase voltage RMS [Un] = 300 V
o Rated current RMS [In] = 16 A
o Mutual inductance [Lm] = 21.5 10-3 H
o d axis inductance [Ld] = 10 10-3 H
o q axis inductance [Lq] = 12.5 10-3 H
o Stator resistor [Rs] = 2.3
o Torque constant [Kt] = 0.75
o Rotor permanent magnet flux [m] = 0.1652 Wb
23
torque
Tr
isa
isb
vs _abc
wr
PMSM MODEL
When the PMSM block is examined, it may be seen that the motor itself is modelled in the dq
rotating reference frame. Therefore, there are two transformation blocks included within the
block: abc to dq transformation block on the input side, and dq to abc transformation
block on the output side. This is shown in Figure 2.7.
isd
2
isa
vsd
2
vs_abc
abc -dq
isq
dq -abc
3
isb
vsq
wr
abc >> dq
isc
1
Tr
dq >>abc
Tr
torque
Sign 1
1
torque
Product
dq model
wr_real
4
wr
1
s
theta _real
As regards the controllers, firstly, the current control loop is designed and simulated, since it
is the fastest control loop in the system. Then, the same is done for the speed loop. Finally,
some practical results are obtained through laboratory experiments in which an encoder is
used.
24
Design
dids
{r Lqs iqs }
dt
diqs
dt
(2.26)
+ {r ( PM + Lds ids )}
(2.27)
As (2.26) and (2.27) show, there is a coupling between d axis voltage and q axis current and
vice versa.
Ids
Vds
Vds
regulator
d-q coupling
Iqs
Vqs
compensator
Vqs
regulator
In order to avoid these coupling terms, a compensator can be introduced for the dq couplings
in the model, so the resulting system after applying the coupling compensator would be given
as follows. The Back ElectroMotive Force (BEMF) can be defined for both d and q
components.
vds = Rs ids + Lds
dids
+ BEMFd
dt
(2.28)
diqs
dt
+ BEMFq
(2.29)
25
As can be seen from the last equations, the two axes voltage expressions are not independent
from each other, because of the BEMF terms. The d-q coupling compensator is nothing
more than a BEMF builder, using the measured currents and rotor speed.
Finally, the equivalent model for the current loop is described by (2.30) and (2.31) for the
compensated stator voltage.
v 'ds = Rs ids + Lds
dids
dt
diqs
dt
(2.30)
(2.31)
Applying the Laplace transform to (2.30) and (2.31) results in (2.32) and (2.33) respectively:
V 'ds ( s ) = ( Rs + Lds s ) I ds ( s )
V 'qs ( s ) = Rs + Lqs s I qs ( s )
(2.32)
(2.33)
V 'qs ( s )
1
( Rs + Lqs s )
(2.34)
(2.35)
Once the equations for the model are obtained, the controller should be designed accordingly.
There are different possible controller topologies and different methods of tuning them as
well. In this case, a PI controller is used and two possible ways to find the parameters leading
to desired controller response are described.
Figure 2.9 shows the model of the chosen controller topologies.
26
ids*
ed
PI
regulator
vds
Gd ( s )
ids
vds
Gq ( s )
iqs
ids
iqs *
eq
PI
regulator
iqs
e_isd
1/Tid
1
s
vsd
1
vsd
vsd
2
vsq
Kp
isd
3
isq*
2
e_isq
1/Tiq
1
s
Kp
isq
4
V 'ds ( s )
K=
1
1
=
Rs + s Lds Rs
1
K
=
L 1 + s d
1 + s ds
Rs
(2.36)
L
1
; d = ds ;
Rs
Rs
27
I qs ( s )
V 'qs ( s )
K=
1
1
=
Rs + s Lqs Rs
1
K
=
L 1 + s q
1 + s qs
Rs
(2.37)
L
1
; q = qs ;
Rs
Rs
The closed loop transfer function using a PI controller is shown in (2.38). Please note that
only the analysis of d-axis transfer function is given in detail, but same result holds for the qaxis as well.
1 + Tid s
K
Kpd
I ds ( s )
Tid s 1 + d s
=
I ds * ( s )
1 + Tid s
K
1 + Kpd
Tid s 1 + d s
(2.38)
The integral value is set so that the system pole is cancelled, choosing Tid = d =
Lds
.
Rs
(2.39)
Tid
Kpd K
(2.40)
The equations define a 1st order system, thus only time constant value should be set according
to design constrains.
The results would be the same for q-axis, taking Tiq = q =
Lqs
Rs
28
Kpq K
I qs ( s )
I qs * ( s )
2 =
=
1+
Tiq s
=
Kpq K
Tiq s
1+
1
Tiq
Kpq K
1
1+ 2 s
(2.41)
Tiq
(2.42)
Kpq K
1
2 s ( s + 1)
CL
Gom
( s) =
1
2 s + 2 s + 1
2
(2.43)
1
1
j
2
2
29
It is possible to sum all the small time constants, because TC and tf have relatively small
values compared to tq; and for this reason their dynamics are negligible as regards the electric
time constant dynamic. Thus, the relative transfer functions may be replaced by a unique first
order transfer function, having a time constant equal to their sum which is given by t.
t = 2TC + tf = 5,6* 10-4 sec
(2.44)
ti s + 1
Kf
1
1
ti s t s + 1 Rs tq s + 1
(2.45)
kp Kf
1
tq Rs s (t s + 1)
(2.46)
The closed-loop transfer function is of second order, and now it is possible to choose the
proportional constant kp of the controller with the aim of rend the system transfer function the
same of the OM one.
It can be imposed for similarity:
t =
kp Kf
1
=
tq Rs 2
(2.47)
30
ti = tq = 0.0054 sec
Rs tq
Lsq
kp = Kf 2t = 2t = 11.16
(2.48)
Simulation
The first step in designing the controllers of the system is to set the parameters for the current
controller. As the parameters that are involved in the evaluation of the d and q currents (Rs,
Ld, Lq ) are known, it is possible to calculate these controller parameters by using
mathematical equations.
Once they are calculated, simulations can be started.
torque
Tr
is_ref
isq command
is_ref
is_ref
isq_ref
isa
isd_ref
isb
isd
vs _abc_ref
vs _abc
wr
isq
PMSM MODEL
wr
butter
isd
wr
isa
d current // q current
butter
isq
ts
isb
MEASUREMENT BLOCK
Clock
In this case, the rotor is externally (manually) blocked which translates into zero speed.
31
ref
isq
(inverter OFF)
isq
(inverter ON)
meas
meas
-1
-2
0.002
0.004
0.006
0.008
0.01
0.012
0.014
0.016
0.018
0.02
ref
isd
(inverter OFF)
isd
(inverter ON)
meas
meas
-1
-2
0.002
0.004
0.006
0.008
0.01
0.012
0.014
0.016
0.018
0.02
As can be seen in Figure 2.12, the reference values for both d and q currents are double steps,
signals rising from 0 to 2A at 0s immediately and falling back to 0A within 0.1s time.
There are different possibilities when designing a current controller, depending on the
response that is required for a step input reference.
On one hand, it is possible to get a very fast evaluation of the current, which is thought to be a
good characteristic. The problem is that there is an overshoot as well as some oscillations in
the current; and taking into account that in a PMSM motor the torque is directly proportional
to the iq current, the rotor would suffer from these drawbacks.
On the other hand, the closed loop system can be modelled as a first order system, so that the
response for a step could be represented solely by a delay. Using this second method, the
overshoot of the current disappears, hence the response is softer.
The effect that the inverter has on the controller response is analysed, too. As seen in the
figure, the only effect of the inverter is a relatively very short delay and small ripple, which
can be omitted as well.
32
Ids*
ed
w*
+
w
eq
speed
controller
Vds
Gd
Ids
controller
Iqs*
ew
d-current
q-current
Vqs
Gq
Iqs
controller
Design
As given in (2.39) and (2.41), in the closed-loop model the current loop can be modelled as a
delay only, what is shown in Figure 2.14.
w*
+
w
ew
-
speed
controller
Ids*
1
1 + 1 s
Ids
Iqs*
1
1+ 2 s
Iqs
Figure 2.14. Simulink model: speed loop for simplified current loop
33
This case the parameters are also calculated from the mathematical equations. In the speed
loop that is shown below, as explained in the previously, the q-current closed loop is reduced
into a first order system with a delay of 2 , as described in (2.42).
Te =
3
p PM iqs = KT iqs
2
where KT =
Te TL =
r =
(2.49)
3
p PM
2
J d
B
r + r
p dt
p
(2.50)
p
(Te TL )
J s+ B
w* +
ew
w
(2.51)
speed
controller
Iqs*
1
1+ 2 s
Iqs
KT
Te
p
J s + B
The selected topology for the speed controller is a PI, as shown in (2.52).
iq* ( s ) = Kp
1 + Ti s
e ( s )
Ti s
(2.52)
(2.53)
As the viscous friction coefficient is very small, it is possible to omit it when designing the
speed PI controller. Therefore, the open loop transfer function for the speed will be:
34
G OL ( s ) =
p KT Kp (1 + Ti s )
J Ti s 2 (1 + 2 s )
(2.54)
Analysing the open loop transfer function, can be stated some conclusions. Firstly, the two
poles in the origin give a contribution of -180 in the phase of the transfer function. Then, the
term
(1 + Ti s )
would increase or decrease the phase; depending on the values of Ti and
(1 + 2 s )
2 . If Ti 2 the phase of transfer function would always remain under -180, that is the
Phase Margin Limit (PM=0). To ensure a positive phase margin, what would translate into the
stability of the system and a good rejection for disturbances, the values should be set as
Ti > 2 , as shown below.
The load torque is a disturbance from the point of view of the controller. The optimal
response to the disturbance is obtained tuning the regulator according to the optimum
symmetric method [1] that imposes the following statement.
As a first step, the open loop mode of the speed loop (2.55) is modelled so as to be similar to
the standard open-loop model of the optimum symmetric method (2.56).
35
p KT Kp (1 + Ti s )
G OL ( s ) =
=
J Ti s 2 (1 + 2 s )
p KT
p KT
Kp Ti s +
Kp
J
J
s 2 ( 2 Ti s + Ti )
K K T s + K1 K P
G OL ( s ) = = 1 2 P I
s ( T1 TI s + TI )
14444
24444
3
(2.57)
(2.58)
stndr . form
K1 =
p KT
; K P = Kp ; TI = Ti ; T1 = 2
J
Then, directly applying the method, the proportional gain (2.59) and integral time constant
(2.60) for the speed controller are obtained.
Kp =
1
1
=
2 K1 T1 2 p KT
2
J
(2.59)
Ti = 4 T1 = 4 2
(2.60)
The resultant open loop (2.61) and closed loop (2.62) standard transfer functions once the
optimum symmetric method is applied are shown below.
G OL ( s ) =
4 2 s + 1
8 2 s 2 ( 2 s + 1)
G CL (s ) =
4 2 s + 1
4 2 s + 1
=
(2.62)
3
3
2
2
( 2 2 s + 1) 4 2 s + 2 2 s + 1 4 2 s + 8 22 s 2 + 4 2 s + 1
(2.61)
The features of the dynamic response for a step input and for a system that has been designed
using this method are shown below:
Rising time: Tr = 3.1 2
Settling time: Ts = 16.6 2
Overshoot: os = 43.5%
36
Simulation
Once design of the speed controller is made, the mathematically calculated parameters are
tested in the simulation, as done with the current loop previously. The response is modelled in
order to have an acceptable overshoot, because it is required this loop not to be so slow and to
be stable when there is a torque load. This response is shown on Figure 2.17.
Continuously, a step is introduced as a torque reference (Figure 2.18). The system is expected
to be stable regardless of the torque value applied in a real application.
37
In Figure 2.18, it can be seen that the even when the rated torque is applied the speed loop is
stable. When the torque is applied, the speed goes down for a while, but within 0.1s of time it
is stabilised again.
It can be stated these parameters for the speed loop would match precisely with the real
setting if an encoder-based vector oriented control was used. The problem is that if a
sensorless control is introduced, some delay and oscillations appear in the estimated angle and
speed values, hence some changes must be done in the speed controller.
Then, the evolution of the d and q currents has been shown in Figure 2.20.
38
In Figure 2.20, it is seen that d-axis current oscillates at 550 Hz, the frequency of the injected
high frequency voltage signal, over its set point zero (0). Yet it has an avarage value of zero
(0) over one period. It may also be noted that q-axis current has a higher value in the
beginning of the control, but settles into and holds a lower value after a certain time.
2.4 SUMMARY
In Chapter 2, PMSM representations in stationary abc and reference frames as well as dq
rotating reference frame are given first. This is followed by theoretical background on PI
parameter tuning for current and speed loops of field-oriented control in addition to their
calculated values aided with simulation results. The chapter is concluded by some
experimental results and their evaluation.
39
REFERENCES
1. Modification of Symmetric Optimum Method
Roman MIZERA
2. Machine Design Considerations for Sensorless Control of PM Motors
Mats LEKSELL, Lennart HARNEFORS, Hans-Peter NEE
Electrical Machines and Drives
KTH / ROYAL INSTITUTE OF TECHNOLOGY
40
41
3.1 INTRODUCTION
As explained in the introduction chapter, the PM motor has emerged as a new alternative to
the induction motor, because of its high efficiency and high torque-to-volume ratio. The most
popular technique to achieve desirable operation of a PM motor is to build a field oriented
controller, which is based on the information of rotor position and angular speed. The usual
way to obtain the required information for the control scheme is to install sensors in the rotor,
such as encoders or resolvers, although the presence of such sensors results in some
drawbacks related to cost, size and reliability of the drive system. However, during the last
decades efforts have been focused on investigating new alternatives to avoid this kind of
sensors, in order to find new sensorless control methods for PMSM.
Sensorless control is not new for some other type of motors. For instance, the back emf
estimators are not handy for PM synchronous motor, because the estimation in the low speed
conditions is not reliable enough due to disturbance and noise effects. The high frequency
signal injection has been the most efficient technique to control a PMSM (for low speed
applications) as yet. There are different alternatives within the high frequency injection
category that are going to be analysed later on in this chapter.
The high frequency injection method is based on obtaining the speed and the position of the
rotor using the mathematical model of the motor under high frequency conditions. A high
frequency voltage/voltages is/are superimposed to the reference voltage/voltages in the dq or
axes (depending on the method chosen). Measuring the high frequency response of the
current through the motor and transforming it, using the high frequency mathematical model,
the speed and position data may be estimated. It should be noted that in order to achieve most
desirable operation of the sensorless control under HF injection technique it is necessary to
have a high frequency saliency in terms of d and q axis inductances.
42
i _ pos I1sin (2 r )
(3.1)
These two signals given in (3.1) can be considered a sine and a cosine of the twice of the rotor
angular position, hence by applying the arctangent of the division of the two components, it is
possible to obtain the value of the actual rotor angular speed and position.
43
Figure 3.2. Rotor position salience tracking observer using heterodyning processing [2]
It is seen in the simulations that the algorithm does not give satisfactory results in terms of
dynamic performance; and kd/J in the feed-forward causes some problems as well.
44
Phase synchroniser is basically a PI controller and SVE-HFVC is the block by which the
injected voltages are created.
This method has a higher level of complexity when the whole system is concerned compared
to the other techniques studied. Yet, the scheme is thought to be a promising one to be
investigated further in future projects.
45
voltage, on one of the two rotating axes (dq), to the control voltage, and measuring the HF
response of the currents through the motor, in order to find the actual position of the rotor.
During the estimation, if an error is being introduced, a high frequency coupling impedance
appears between the voltages and the currents, which means that if the HF voltage is injected
on the d axis, a direct response will appear on the q axis current, and vice versa. If the HF
current response of the motor is measured and demodulated, it is possible to obtain a signal
almost directly proportional to the estimation error. This error signal can, then, be controlled
by using an appropriate controller.
To sum it up, with this simple method, it is possible to estimate the instantaneous value of the
rotors rotation speed and position without using an encoder, only by measuring and
demodulating the high frequency currents through the rotor and controlling them by a PI
regulator.
For this project, Alternating High Frequency Injection [4] method has been chosen, because
of its simplicity and efficiency. This technique will be studied in detail below.
The HF injection method is based on injecting a HF voltage to the reference voltage/voltages on one
of the two rotating axis (d or q), and measuring the HF current response of the motor. Firstly, it is
necessary to consider the general electric model of the motor, where p represents differential
operation. It is assumed in the PMSM model shown below that the d axis aligned exactly with
the rotor magnetic flux.
v dsr Rs + pLs
r =
v qs r Ls
r Ls idsr 0
+
Rs + pLs iqsr r pm
(3.2)
Thus, the motor electric model for high frequencies would take the form given in (3.3).
r
r
v dsh
Rdh
+ pLrdh
r =
r
v qsh r Ldh
r
0
r Lrqh idsh
+
r
r r
Rqh + pLqh iqsh r pm
(3.3)
46
Considering the injected signals frequency is sufficiently higher than the rotating frequency
( r << h ), the terms associated with r may be omitted, hence, based on this simplification,
the motor model is expressed as (3.4).
r
r
vdsh
Rdh
+ pLrdh
r =
r
vqsh r Ldh 0
r
r
0
r Lrqh 0 i dsh
+ pLrdh
Rdh
r +
r
Rqh
0
+ pLrqh i qsh
r pm 0
r
idsh
r
r r
Rqh + pLqh iqsh
(3.4)
As (3.4) shows, the equations for axis d and q can be considered decoupled in high
frequencies, if the frequency value of the injected HF sinusoidal signal is much greater than
the rotating pulsation. When the differentiation is applied, the electrical motor model under
HF injection conditions will be:
r
r
vdsh
Rdh
+ j h Lrdh
r =
0
vqsh
r
idsh
r
r
Rqh
+ j h Lrqh iqsh
(3.5)
0 i dsh
r r
Z qh i qsh
(3.6)
Equations (3.5) and (3.6) show the HF electrical model of the motor considering an ideal
position of the d axis with the rotor position, in other words, the direct axis is aligned with the
rotor position. In practice, when a position estimator is used, it should be taken into account
that an error is produced, at least in the transient state. Therefore, the real model in this case
~
will not be the same as the one in the ideal case. The angle error produced ( (t ) ) is the
difference between the real ( (t ) ) and the estimated position of the rotor ( (t ) ), where the
direct axis is positioned.
~
(t ) = (t ) (t )
(3.7)
The explanation given in the previous paragraph translates into the fact that the estimated
reference frame, in which control algorithm is applied, differs from the actual reference
frame. As a consequence of this, it is necessary to derive motor equations for the estimated
reference frame starting from the ideal motor model.
47
[ ( )]
r
v dsh
~
r = R
v qsh
r
Z dh
[ ( )]
0 ~
R
r
Z qh
[ ( )]
r
idsh
r
iqsh
(3.8)
[ ( )]
~
~
where the R rotation matrix and the R
f dq = fdq e j r
(3.9)
cos ~ sin ~
~
R =
~
~
sin cos
(3.10)
[ ( )]
fdq = f dq e j r
[ ( )]
~
R
(3.11)
cos ~ sin ~
=
~
~
cos
sin
(3.12)
The result of (3.8) after matrix multiplications is, in a simplified mode, shown below.
r
r
v dsh
Z dh
=
r r
v qsh Z ch
Z chr idsh
r r
Z qh iqsh
(3.13)
Where the new impedances viewed from the rotating reference frame aligned to the estimated
rotor position are [4]:
48
r
r
Z dh
Z qh
( )
( )
( )
( )
Z
~
~
cos 2 r = Z avg + diff cos 2 r
2
2
2
r
r
r
r
Z dh + Z qh Z dh Z qh
Z diff
~
~
r
cos 2 r
Z qh
cos 2 r = Z avg
=
2
2
2
r
r
Z dh Z qh
Z diff
~
~
Z chr =
sin 2 r =
sin 2 r
2
2
r
dh
( )
(3.14)
( )
with:
Z avg =
r
Z dhr + Z qh
(3.15)
r
Z diff = Z dhr Z qh
(3.16)
It is necessary to obtain the response of the current in the dq rotating reference frame with
regard to the input voltage in the same reference frame. Calculating the inverse of the matrix
of impedances, gives the result in (3.17).
r
r
Z dh
idsh
=
r r
iqsh Z ch
Z chr
Z qhr
v r
1
= r r
dsh
r
vqsh Z dh Z qh
r
Z qh
r
Z ch
Z chr vdsh
r r
Z dh vqsh
(3.17)
Please note that in the equation given above the term, -Zrch2 in the denominator is omitted due
to it is small value as well.
For the HF injection in the rotating reference frame there are two main possibilities.
The first is to inject a HF voltage on the q axis. In this case, a response will appear in the q
axis current and a small amplitude response in the d axis current. The main drawback of this
selection is that: because the rotor position is aligned with the d axis, the motor torque is
aligned with the q axis, so the torque, as in a DC motor, will be proportional to the current
through axis q. Ripple in the amplitude of the q current, in other words the torque producing
current will be a considerable amount if the voltage injection is made on the q axis. Hence,
this will result in a substantial torque ripple which lowers the performance of drive system
and, consequently the motor. d and q axes currents when high frequency voltage signal is
applied on q axis are given in (3.18) and (3.19).
49
r
r
idsh
Z dh
r = r
iqsh Z ch
Z chr 0
1
r = r r
r
Z qh vqsh Z dh Z qh
( ) v
Z diff
~
r
iqsh
cos 2 r
= Z avg
2
r
Z chr vqsh
r r
Z dh vqsh
(3.18)
r
qsh
(3.19)
The second option is to inject a high frequency voltage on the d axis and measure the high
frequency current response through the PMSM. A response will appear in the d axis current as
well as generating a small response on the q axis, since the two electric equations are coupled.
This effect will be analysed deeply later on. d and q axes currents when high frequency
voltage signal is applied to the q axis are given in (3.20) and (3.21)
r
r
idsh
Z dh
=
r r
iqsh Z ch
r
qsh
Z diff
2
Z chr
Z qhr
v r
1
dsh = r r
0 Z dh Z qh
( )
~
sin 2 r
Z avg ( Z diff
2
( )
~
/ 4). cos 2 r
2
r
r
Z qh
vdsh
r r
Z ch vdsh
(3.20)
r
vdsh
(3.21)
r
r
When (3.19) is compared to (3.21), assuming that vdsh
= vqsh
holds, it is seen that the q axis
current has a higher value if the high frequency voltage is injected into q axis. Therefore, in
order to ensure minimum possible oscillation in torque, it would be more precise to choose d
axis for high frequency voltage signal injection instead of q axis.
To sum up, considering the handicaps of HF signal injection on the q axis, it has been decided
to inject high frequency voltage into the d axis voltage.
r
v dsh
vinj cos( h t )
r =
0
v qsh
(3.22)
1
r = r r
iqsh Z dh Z qh
r
Z qh
r
Z ch
Z dhr
0
(3.23)
50
Now the effect of the d axis injected voltage on the current iq . As discussed earlier, due to
estimation error, coupling impedance appears between the currents and the voltages attached
to each axis, what is shown below:
r
qsh
Z chr
Z chr
r
r
= r r vdsh + 0vqsh = r r Vinj cos( h t )
Z dh Z qh
Z dhZ qh
(3.24)
r
when (3.14) and (3.22) are put into (3.24), iqsh
can be expressed as (3.25)
r
qsh
( )
( )
~
Z diff .Vinj . cos(h t ). sin 2 r
=
~
2
2
4Z avg Z diff . cos 2 2 r
(3.25)
Seeing that Z diff is rather small and may be omitted, we get (3.26)
r
qsh
( )
~
Z diff .Vinj . cos( h t ). sin 2 r
4 Z avg
(3.26)
When the output HF current term is obtained depending on the estimation error, a
mathematical multiplication (i.e. a demodulation) is applied in order to get a term that can be
considered proportional to the estimation error. If the HF current response is multiplied by a
cosinus of the same frequency, it is possible to separate the resulting current into an AC part
of double frequency (i.e., 2nd harmonic) of the HF and a DC part, as shown in (3.30) and
(3.31).
r
qsh
cos(h t ) =
( )
~
Z diff .Vinj . cos( h t ). sin 2 r . cos( ht )
4 Z avg
(3.27)
where:
Z diff =
(r ) + ( L )
r
diff
h Lrdiff
= arctan
r
rdiff
r
diff
(3.28)
(3.29)
51
When the sinusoidal signal is multiplied by a sinus signal of the same frequency, its spectrum
changes. After the demodulation, the spectrum is composed of two signals: an offset or a DC
component and a sinusoidal term, whose frequency is the twice of the HF. In conclusion,
these are the two terms that appear after the demodulation of the high frequency current.
DC term:
( )
~
X DC = Z diff Vinj sin . 2 r
8 Z avg
(3.30)
AC term:
X AC =
( )
~
Vinj sin 2 r
Z diff cos (2 h t )
8 Z avg 2
(3.31)
If the modulated signal is inputted to a LPF, in case of an ideal filter, the HF term will
disappear; therefore, the output signal will only be composed of a DC term containing the
estimation error information. Applying the mathematical approximations, it will be concluded
that theoretically, for small values of the estimation error, the DC term can be considered
proportional to this error. This is based on the assumption that a sinus can be approximated in
the way explained in (3.32) when the angle is very small (close to 0).
( )
~
~
lim
sin 2 r = 2 r
~
(3.32)
Assuming that in the steady state the value of the error resulted from the estimation will
converge to 0, it is possible to say that the DC value will be almost directly proportional to
estimation error. So the output signal of the LPF will be the next:
( )
( ) (3.33)
~
~
r
X LPF = f r = LPF [ iqsh
. cos( h t )] = Z diff .Vinj . r .
4 Z avg
~
where the value of the coefficient that multiplies r ,obviously, is:
K est = Z diff .Vinj
4 Z avg
(3.34)
52
3.3 CONTROLLER
In order to complete the design of a reliable estimator for the PMSM motor, a controller that
will provide the required specifications with regard to speed and accuracy for the sensorless
control should be designed as well. Some different controller topologies could be used for this
aim, but in this project, a PI controller has been chosen for its relatively simple structure. As it
has been proved in the previous section, the signal that comes from the LPF is proportional to
the estimation error, thus the input of the PI controller will be a function of this error.
In addition, the output signal of the PI regulator is the estimated speed.
PI (s ) =
K p s + K i
K
r (s )
(s )
= r~
= K p + i =
s
s
X LPF (s ) f (s )
( )
(3.35)
It must be borne in mind that the angular position of the rotor is the integral of rotors
mechanical rotating speed. Hence, the estimated position is expressed as the integral of the
estimated angular speed as well. The expression for the estimated angle (position) in the
Laplace domain is:
(s )
r (s ) = r
s
(3.36)
Combining the last two equations, a transfer function relating the estimation position with
estimation error can be obtained as follows:
r (s )
r (s )
r (s ) 1
1 K p s + K i
= ~ s = ~
= PI ( s ) =
X LPF (s ) f (s )
s
s2
f (s ) s
( )
( )
(3.37)
If the equation shown above is developed, the transfer function of the system in closed loop
(considering only the loop of the estimation) can be achieved, which relates the estimated
rotor position with the actual position.
r (s ) =
K p s + K i
s2
X LPF (s )=
K p s + K i
s2
K p s + K i
~
K est r (s ) =
K est r (s ) r (s )
s2
(3.38)
Therefore, the closed loop transfer function of the system is the one shown in (3.39)
53
K est K p s + K est K i
r (s )
= 2
r (s ) s + K est K p s + K est K i
(3.39)
If the stability of the system is analysed, applying the limit of the transfer function, it can be
demonstrated that the error of the system will converge to 0 in steady state. As shown in the
equation, the static gain of the transfer function in closed loop is 1.
K est K p s + K est K i
K K
r (s )
= lim 2
= est i = 1
s 0 (s )
s 0 s + K K
K est K i
r
est
p s + K est K i
G static = TF (t ) = lim
(3.40)
The whole system is of second order, thus it is possible to choose controller parameters so as
to achieve the specified conditions. The steps that have been followed to complete the tuning
of the estimator will be explained in dedicated sections of the chapter.
54
Figure 3.5. High frequency impedances under various injection conditions [4]
It can be interpreted from the figure that when the frequency of the injected signal is between
400 and 800 Hz the d axis impedance is higher than that of the q axis. Moreover, the
difference in impedance between the axes increases both when the frequency of the injected
signal is increased and the voltage of the injected signal is decreased as well. It is also a rule
of thumb to keep the voltage of the injected signal at 1/10th of the mains voltage.
Figure 3.6. Physical location of windings and flux paths in two-pole SMPM Machine
Because the high-frequency flux passes through the stator leakage path, resultant flux from
high-frequency voltage injected on the d axis passes as flux B in the figure above, and
resultant flux from high-frequency voltage injected on the q axis passes as flux A in the figure.
Hence, d-axis inductance is larger than q-axis inductance since flux A passes through the
highly saturated part of the stator. This is the reason for the inductance characteristics in the
fundamental component and in the high-frequency component. Yet, it should be noted that in
the low frequency region the relation between the inductances of is reversed and d axis
impedance becomes lower than that of q axis.
55
wr_ref
PI speed regulator
Tr
Scope
e_w
w_ref
isq_ref
is a
is q_ref
Torque command
is b
W command
is d_ref
isd command
wr
vs _abc_ref
is d
vs _abc
theta_real
is q
PMSM MODEL
wr
wr
isa
butter
is q
isb
MEASUREMENT BLOCK
wr_est
theta _est
iq_s^
w_es tim
tita^
theta_real
t
error^
ts
Estimator
Clock
As shown in Figure 3.9, the estimator block has different parts inside. At the first stage, the iq
current is filtered through a band-pass filter, so as to obtain only the high frequency current
component induced by the injected voltage. It is worth trying to use an ideal filter with a
narrow pass band, in order just to take the frequency that is of interest, which would result in
a higher order filter. But the problem is that a high order filter introduces a long delay to the
system, which is not a desired action for control. Thats why a first order filter has been
implemented, having a central frequency of 550 Hz and pass band limited to 900Hz.
56
Bode diagrams showing the magnitude and phase responses of the band-pass filter are given
in Figure 3.8. Thanks to bode diagrams, it is possible to see the attenuation of the filter at
frequencies higher and lower then the central frequency which is 550Hz.
Figure 3.8. Magnitude and phase Bode diagram of the Band-Pass Filter
As shown in the magnitude diagram above, at 987Hz, which is very close to the upper band
limit of 1000Hz, the band pass filter has an attenuation of approximately 3dB that
corresponds to 50% magnitude reduction compared to the central frequency magnitude. Only
the high frequency component at 550Hz passes through the filter without attenuation.
error
butter
tita ^
2
tita ^
wr^1
1
w_estim
butter
1
iq _s^
u(1)*sin(wh*u(2))
2
t
Fcn
-5
error_theta
Gain
f(u)
CONTROLLER
Fcn1
Scope 4
3
error ^
The filtered signal, which theoretically solely is the 550Hz component of the q current, is then
demodulated, by being multiplied by a sine of the same frequency. As it has been explained in
57
the previous section 3.2.4 Alternating High Frequency Injection, the resulted signal from the
demodulation has a dc component, which is proportional to the angle error. Then a low-pass
filter is employed in order to remove the second harmonic component from the signal at the
output of the multiplication block and obtain solely the DC signal containing the position
information. The filter is of 1st order, for the very same reason as the band pass filter.
In Figure 3.10 below, the magnitude and phase responses of the low-pass filter used after the
demodulator are shown. The chosen cut-off frequency is 30Hz and by taking some snapshots
from the curves it is possible to interpret how the filter operates. The first graph shows that
the filter produces an attenuation of 3dB (50%), already at the cut-off frequency. The phase
curve snapshot evidently shows that the filter has a delay of 0.165 radians at 5Hz, i.e. in short
distance to the DC component.
Figure 3.10. Magnitude and phase Bode diagram of the Low-Pass Filter
Finally, the error signal, multiplied by a gain, is inputted to the estimator PI controller. The
aim of this controller is to calculate the estimated speed, and therefore, minimize the error
signal.
58
1
theta _real
tita ^
2
tita ^
wr^1
1
w_estim
error_theta
CONTROLLER
3
error ^
In this first step the estimator is not connected in the feedback. The actual speed and angle are
used instead, and it is logical to set the estimator controller parameters which would enable
the estimated speed follow the actual speed.
The first approach is to use the parameters obtained from the previous step for the speed
controller, and the result is a close estimation of the actual speed. The controller response is
shown in Figure 3.12.
59
But there is a relatively big difference between this model and the real estimator, which
makes the simulation unreliable. This difference results from the fact that the estimated error
which is the output of the demodulation block has a delay with respect to the actual error.
Consequently, it has a very important influence on the speed response previously plotted. The
simulation and experimental values for the estimator controller are listed in Table 3.1.
Simulation
Experimental
Proportional
400
150
Integral
50
10
tita ^
2
tita ^
wr^1
1
w_estim
1
1
theta _real
error_theta
tau .s+1
CONTROLLER
3
error ^
As a result, using the same parameters for the controller, it is now, seen that the response is
very different compared to the previously plotted one. The parameters used before for the
estimator controller make the speed response completely unstable, hence it is necessary to
reduce them if a more stable response is required.
60
After a trial-and-error process to set the controller parameters, it has been concluded that it is
not possible to get a very smooth speed response from the estimator under highly dynamic
speed conditions, and the resulting response of the controller is shown in Figure 3.14.
Figure 3.14. Speed step simulation with virtual error and delay
The estimator cannot perfectly follow the actual speed due to the estimation error delay. It is
concluded that reducing the speed response bandwidth would solve the problem, as the delay
in the error signal is not avoidable. Decreasing the controller bandwidth lowers the dynamics
and in this way the estimator response is improved. It is possible to compare the bandwidths
before and after the bandwidth change by graphics. In Figure 3.14 the speed response
bandwidth is in the neighbourhood of 20Hz.
The response for the same estimator controller parameters, reducing the bandwidth of the
speed controller can be seen in Figure 3.15 where the bandwidth is approximately calculated
to be 10Hz.
61
Figure 3.15. Speed step simulation with virtual error and delay (modified parameters)
In this case, the speed response converges to the reference value in about 0.4 sec, thus the
speed controller parameters given below are the ones that will be used later on in the project.
The experimental values of speed controller parameters are listed in Table 3.2.
kpw = 0.01, kiw = 0.10;
Proportional
0.05
Integral
0.15
62
Figure 3.17 shows both the actual and estimated thetas. There is a constant steady-state error
between these two angles, which does not affect the control by a considerable extent, as will
be shown later. The same thing also applies to the actual and estimated errors shown.
63
Then, in order to see if the response of the controller is correct under a load torque,
appropriate conditions are set and the system is simulated. First, the system is started without
any load and with a certain speed reference. Once that the reference speed is reached, the load
torque is applied, and the speed goes down in order to obtain the requested torque. However,
the speed controller is able to make the speed to go to the reference value again in
approximately 0.2 sec, as seen in Figure 3.18.
The same can be stated about the angle estimation (Figure 3.19). A constant steady-state error
is seen between actual and estimated values as described before.
64
3.6 SUMMARY
In the 3rd chapter, drawbacks of sensor field-oriented control and reasons to study and apply
sensorless control are explained in detail first. Second, fundamentals of different high
frequency signal injection methods are given, and the chosen technique, namely Alternating
High Frequency Injection is thoroughly discussed. Third, how to obtain rotor position
information using a PI controller is given; and this is followed by some practical information
on high frequency signal voltage and frequency selection. Last but not least, adjusting
methodology of the controller and estimator components parameters are detailed.
65
REFERENCES
1. Sensorless Control of Surface Mounted Permanent Magnet Synchronous Motor Using Matrix
Converters
David SALTIVERI, Antoni ARIAS, Greg ASHER, Mark SUMNER, Pat WHEELER, Lee
EMPRINGHAM, Cesar SILVA
ELECTRICAL POWER QUALITY AND UTILISATION, JOURNAL VOL. X, NO.1, 2006
2. Sensorless Operation of PMSM by High Frequency Signal Injection Using the Field-Circuit
Coupled Solution
Dong CHEN, Heng NIAN, Yikang HE, Lei HUANG
PROCEEDING OF INTERNATIONAL CONFERENCE ON ELECTRICAL MACHINES AND SYSTEMS 2007, OCT. 8~11, SEOUL, KOREA
4. Analysis of Permanent-Magnet Machine for Sensorless Control Based on High Frequecny Signal
Injection
Ji-Hoon Jang, Jung-Ik Ha, Motomichi Ohto, Kozo Ide, Seung-Ki Sul
IEEE TRANSACTIONS ON INDUSTRY APPLICATIONS, VOL. 40, NO. 6, NOVEMBER/DECEMBER 2004
66
67
68
In the d-axis, where the current reference remains at zero value, a 550 Hz, which is the
frequency of the injected high frequency voltage signal, sinusoidal current is observed. This is
caused by the high frequency voltage injected in the d axis, but it should be noted that the
average value remains at zero. In the d axis, the measured current follows the reference value.
In this case, the value of the sinusoidal component in the current very small, but it is
sufficiently large to be used in the estimator. Details of the currents of Figure 4.2 are shown in
Figure 4.3.
Figure 4.4 shows the evolution of the actual and estimated motor angles. A nearly constant
error of 0.2 rad for steady state appears between measured and estimated angles.
Comparing the obtained results of the estimated position and speed, it is stated that the second
variable, i.e. the estimated speed, is the one that introduces more problems into the control
system. The oscillations of the estimated speed over the measured value are transmitted to the
q current controller, which forces a ripple in the torque, too.
69
Figure 4.5 shows a detailed evolution of the angle given in Figure 4.4.
70
Figure 4.6. Laboratory results. Speed step with initial torque: speed
The evolution of the current also is different, owing to the fact that the iq current must be
higher due to increased electromagnetic torque requirement. d-axis current oscillates around
its reference value, with an average value of zero. The current control loop performance is the
same as the previous case.
71
Figure 4.7. Laboratory results. Speed step with initial torque: dq currents
Finally, the motor angle is shown in Figure 4.8 below. As the speed response is softer, it is
even relatively easier for the estimator to follow the actual speed.
Figure 4.8. Laboratory results. Speed step with initial torque: angle
72
Figure 4.9. Laboratory results. Speed step with torque step: speed
At 1.1s time the iq current starts increasing, because the motor needs to create torque. It has
an increasing evolution and then reaches a certain value, which is enough to endure the
required load torque. d-axis current oscillates around its reference value, with an average
value of zero.
73
Figure 4.10. Laboratory results. Speed step with torque step: dq currents
The same result can also be seen in Figure 4.11, where the evolutions of the three phase
currents are given. The sinusoidal current values increase until a steady state value is reached,
just as occurs with the iq current. Looking at Figure 4.10 and Figure 4.11, it can be verified
that the value of the dq current is correct. Since the d current is zero, the peak value of the
sinusoidal current is the same as the q current value.
Figure 4.11. Laboratory results. Speed step with torque step: abc currents
The evolution of the real and estimated angles is shown in Figure 4.12.
74
Figure 4.12. Laboratory results. Speed step with torque step: angle
75
SPEED REFERENCE
10 rad/s
0.40 s
20 rad/s
0.25 s
30 rad/s
0.20 s
40 rad/s
0.15 s
50 rad/s
0.15 s
60 rad/s
0.15 s
76
77
78
Although there is a transient period when the rotor is moved because of the torque input, the
control system is able to control it, so that the speed remains at zero in steady state.
4.7 SUMMARY
In Chapter 4, designed and implemented sensorless field-oriented controller is put into test
under several different conditions. Systems speed response to a certain speed reference
along with d and q axes currents as well as measured and estimated angles and measured and
estimated angle errors is given in this chapter. The same parameters are also examined when
rated torque is applied both initially and at an arbitrary time. The chapter is concluded by
systems response to different speed references.
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
79
80
5.1 CONCLUSIONS
It is verified through simulations and laboratory experiments that the designed and
implemented sensorless control system serves its aimed purpose by allowing full control on
the PMSM over low speed range.
The system operates properly between +/-250 rpm angular speed range. The injected voltage
has minor effects on d and q axes currents, yet is sufficient for estimator operation. This
confirms that the applied control technique does not increase iron core losses to a
considerable extent. The d axis current shows oscillations at injected signals frequency, i.e.
550 Hz, but its average value is zero, as it is in theory.
Upon a trial-and-error process over simulations and experiments, the optimum voltage and
frequency values for the injection signal are found to be 20V, i.e. slightly less than one tenth
of the mains voltage as given in Section 3.4 of Chapter 3, and 550 Hz. Lowering the voltage
value of the injected signal is thought to be a solution to loss and efficiency problems, but
decreasing the voltage below the selected value risks proper operation of the system.
System dynamics are bounded by estimator speed. Therefore, some possible solutions to
overcome this problem and to improve estimator and system performance are given in the
next section.
Consequently, the proposed system could be an alternative to drive systems in which lowresolution sensors are employed.
81
5.3 SUMMARY
In this fifth and last chapter, general conclusions of the project work and system operation
limitations are given. The chapter is, then, concluded by a list of suggestions along with their
reasons in order to improve system performance, efficiency and reliability.
82
REFERENCES
1. Decoupled Double Synchronous Reference Frame PLL for Power Converters Control
Pedro Rodrguez, Member, IEEE, Josep Pou, Member, IEEE, Joan Bergas, Member, IEEE,J. Ignacio
Candela, Member, IEEE, Rolando P. Burgos, Member, IEEE, and Dushan Boroyevich, Fellow, IEEE
IEEE TRANSACTIONS ON POWER ELECTRONICS, VOL. 22, NO. 2, MARCH 2007
2. Comparison of Field-Oriented Control and Direct Torque Control for Permanent Magnet
Synchronous Motor (PMSM)
M. S. Merzoug, and F. Naceri
PROCEEDINGS OF WORLD ACADEMY OF SCIENCE, ENGINEERING AND TECHNOLOGY VOLUME 35 NOVEMBER 2008 ISSN 2070-3740
83
84
where = e
2
j
3
(A.1)
is a complex operator.
This three phase system can be transformed into a two-axis time-invariant co-ordinate system.
This transformation can be split into two steps:
The Clark transformation (a,b,c) -> (,) which outputs a two co-ordinate time-variant
system
The Park transformation (,) -> (d,q) which results in a two co-ordinate time invariant
system
85
The transformation matrix from abc frame to frame, namely the Clarke matrix, is given in
(A.2).
1
2
2
TC =
3
3
0
1
2 (A.2)
iS
ia
iS
= = TC ib (A.3)
iS
ic
In symmetric sinusoidal regime, the three phase currents and voltages can be written as
follows:
v = 2V cos( )
S
Sa
(A.4)
i = 2 I cos( )
S
a
Sa
iSc = 2 I S cos a +
3
where is the phase of the voltage with respect to its corresponding phase axis (taken as
reference axis), and a is the phase between voltage and current vectors, and the expression of
the voltages and currents in frame are written follows.
vs = vs + jvs =
is = is + jis =
2
4
j
j
2v + v
v
2
(vs ,1N + vs , 2 N e 3 + vs ,3 N e 3 ) = s,12 s , 23 + j s , 23 = vs e j = 2Vs e j (A.6)
3
3
3
j
2
(is ,1 + is , 2e
3
2
3
+ is ,3 e
4
3
) = is ,1 + j
is ,1 + 2is , 2
3
= is e j ( 1 ) = 2 I s e j ( 1 )
(A.7)
86
d axis is chosen to be aligned with rotor flux space vector, R , and is the rotor flux position.
The transformation matrix is given in (A.8) and stator currents in the dq reference frame can
be expressed as (A.9) by the Park matrix starting from the frame coordinates.
cos
TP =
sin
sin
(A.8)
cos
iSd
iS
i = TP i (A.9)
Sq
S
sin
(A.10)
cos
iS
iSd
1
i = TP i (A.11)
S
Sq
87
The mesured phase currents are transformed into the reference frame and then into the dq
reference frame via Clarke transformation blocks respectively. d and q axes currents are
compared to their reference signals, and current error signals are inputted to PI current
regulators.
Outputs of PI blocks are reference voltages which are applied to the Space Vector Modulation
block after being transformed into reference frame. SV-PWM block then generates the
inverter driving signals.
88
REFERENCES
1. Sensor field oriented control (IFOC) of three-phase AC induction motors using ST10F276
ST SEMCONDUCTOR
89
90
The three legs of the three phase inverter can connect the phases of the motor to either
positive or negative terminal of DC bus voltage. Assuming that the upper and the lower
switches of the same leg are driven with two complementary pulsed signals and can not be in
the same state (i.e., ON and OFF) at the same time, 8 different states are possible.
At this point, it should be notices that some dead time must be inserted between the time one
transistor of the half-bridge is turned off and its complementary device is turned on. This is
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
91
due to the fact that switching devices turn-off time is longer than its turn-on time and short
circuiting should be avoided.
In order to generate a rotating field, the inverter has to be switched in six of the eight possible
states. This operation mode is called six-step mode. The remaining two states are called zero
vectors since in these states the voltage applied in the motor windings is null due to the
middle point of each leg is connected either to GND or to the DC bus voltage.
The phase voltages A, B and C can be represented as a space vector model. A graphical
representation of all combinations is the hexagon shown in Figure B. where the zero vectors
are located in the middle. The angle between any two vectors is 60.
Each of the vectors U0, U60, and so forth, in Figure B. represents the six voltage steps
developed by the inverter where the zero voltages 0000 and 0111 are located at the origin of the
hexagon. At each of these states the inverter transistors are in steady state. In order to develop
a sine wave at the motor then we must devise a switching pattern that produces a voltage at
not only the six vectors states but one which transitions in between these states as well. This
effectively means producing a continuously rotating vector Uout that transition smoothly from
state to state.
SVPWM seeks to average out the adjacent vectors for each sector. Using the appropriate
PWM signals a vector is produced that transitions smoothly between sectors, and thus provide
sinusoidal line to line voltages to the motor.
92
The representations of two adjacent basic vectors differ in only one sign (or bit), so that only
one of the upper transistors switches when the switching pattern moves from one vector to the
adjacent one [3]. For instance, the state when transistors T1, T4 and T6 are on (and of
course T2, T3, and T5 are off) can be represented with the notation (+,-,-), whereas the state
where transistors T2, T3, T6 are on is denoted by (-, +, -).
Thanks to this notation, it is possible to determine the following states related to the power
switches of the inverter.
(+, -, -), (+, +, -), (-, +, -), (-, +, +), (-, -, +), (+, -, +)
Running the inverter through this switching sequence will produce the line-to-neutral voltages
shown in Figure B. and on devices and corresponding space vectors along with line-to-neutral
voltages are given in Table B..
Table B.1. On devices, line-to-neutral voltages and corresponding space voltage vectors
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
93
SVM is a technique used as a direct bridge between vector control (voltage space vector) and
PWM[1].
The SVM technique consists of several steps:
1. Sector identification
2. Space voltage vector decomposition into directions of sector base vectors Ux, Ux60
3. PWM duty cycle calculation
Space vector modulation uses six-step mode, but smoothes out the steps through some
sophisticated averaging techniques. When a voltage between two space voltage vectors is
required, the corresponding inverter states can be activated in a fashion that ensures the
average of the step voltages gives the desired output.
In order to develop the equations needed to achieve this averaging algorithm, the problem is
transformed into an equivalent geometrical problem. The first step in this re-definition would
be to transform the inverter voltages of six-step mode into a space vector.
Space vectors are similar to phasors and they are denoted by a magnitude and an angle. It
should be noted that space vectors are not phasors. Phasors are used to represent a single time
varying sinusoidal signal, while space vectors are used to represent three spatially separated
time variant quantities. If there are three time varying quantities, which sum to zero and are
spatially separated by 120, then these quantities can be expressed as a single space vector.
Since the three line-to-neutral voltages sum to zero, they can easily be converted into a space
vector (us) using the following transformation:
u = Van (t )e j 0 + Vbn (t )e j ( 2 / 3 ) + Vcn (t )e j ( 2 / 3) (B.1)
Since the components of space vectors are projected along constant angles (0,-2/3, and 2/3),
it is easy to graphically represent a space vector as shown in Figure B..
94
Usually, when creating space vectors, the three time-varying quantities are sinusoids of the
same amplitude and frequency having 120 phase shifts. When this is the case, the space
vector at any given time maintains its magnitude. As time increases, the angle of the space
vector increases as well, causing the vector to rotate with a frequency equal to the frequency
of the sinusoidal signal.
Figure B.5. Approximation for any vector in the sector bounded by u0 and u60
The purpose of space vector modulation is to generate the appropriate PWM signals so that
any vector (us) can be produced. Consider a space vector voltage uout located in the sector
defined by u1 and u2. us can be approximated by applying u1 for a percentage of time (t1) and
u2 for a percentage of time (t2) such that:
t1 * u 0 + t 2 * u 60 = u s
(B.2)
(B.3)
t1 = U [cos( ) (1 / 3 ) sin( )]
(B.4)
95
where
U = u out (Modulation index)
(B.5)
= u s
(B.6)
Thus, given a space vector of angle , bounded by u0, u60 and modulation index U, the
approximation can be constructed by applying vectors u0 and u60 for percentage of times t1 and
t2 respectively. If the vector is in another sector it then can be rotated by a multiple of /3
radians until it is within the first sector.
To approximate us the inverter state that corresponds to u0 should be active for t1*TS seconds,
and the inverter state that corresponds to u60 should be active for t2*TS seconds.
When the modulation index is sufficiently small (less than 0.866), the sum of t1 and t2 will be
less than one. This means that (t1*TS+t2*TS) is less than TS.
TS is the sampling time, typically the PWM frequency. That is why TS will be indicated as
Tpwm. Hence, for the left over time no voltage should be applied to the motor. The remaining
time will be referred to as t0.
t0 = TPWM (1 t1 t 2 )
(B.7)
There are two ways to apply no voltage to the motor. The first way is to simply connect all
three phases to the negative rail of the inverter. This will be called inverter state 0 and the
corresponding switching pattern is (-, -, -). The second way to apply no voltage to the motor is
to connect all three phases to the positive rail of the inverter. This will be called inverter state
7 and the corresponding switching pattern is (+, +, +).
To approximate the voltage us during the PWM carrier period, the pulses and timing shown in
Figure B. should be used.
96
If the modulation index exceeds (0.866), the value of t0 can become negative (depending on
the angle) because it is not possible to apply one of the zero vectors for any negative time, the
maximum modulation index for space vector modulation is approximately 0.866.
Graphically, this means that for space vector modulation to work properly, the magnitude of
the reference space vector, us, must be totally contained inside the hexagon shown in Figure
B..
97
Therefore, the maximum output voltage based on the Space Vector Modulation theory is
(2/sqrt(3))*(OM/ON) times as large as that of the conventional sinusoidal modulation. This
explains why, with SVPWM, we have a more efficient use of the supply voltage than with the
sinusoidal PWM method.
98
REFERENCES
2. Sensor field oriented control (IFOC) of three-phase AC induction motors using ST10F276
ST SEMICONDUCTOR
4. An Introduction to Space Vector Modulation using NECs 8-bit Motor Control Microcontrollers
NEC
99
Brief explanation of the experimental setup components including their main objectives and
features are given in Appendix C.
100
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
C.1 INTRODUCTION
The presented project is developed using the setup installed in the Flexible Drive Systems
Laboratory (FDSL) in the Institute of Energy Technology, Aalborg University and will be
explained in detail. The main components of the experimental setup listed as: a Permanent
Magnet Synchronous Motor (PMSM) for motoring, an inverter to supply the motor, a rectifier
gives the DC Bus voltage, a DC motor for loading, a main control unit consisting of a PC and
a DSP for the acquisitions and control, and a Signal Control Unit (SCU) providing galvanic
insulation between the control and power parts of the setup.
The features of each component as well as dedicated dSPACE blocks and sensor calibration
will be explained in the following sections of Appendix C. Figure C.1 below shows a general
layout of the setup.
Mechanical Parameters
o Rated speed [Nn] = 6000 rpm
o Number of pole pairs [np] = 2
o Rotating inertia [J] = 94 10-6 Kgm2
o Viscous friction [Bm] = 0 Kgm
o Rated torque [Tn] = 1.3 Nm
Electrical Parameters
o Rated Power [Pn] = 400 W
o Rated phase voltage RMS [Un] = 300 V
o Rated current RMS [In] = 16 A
o Mutual inductance [Lm] = 21.5 10-3 H
o d axis inductance [Ld] = 10 10-3 H
o q axis inductance [Lq] = 12.5 10-3 H
o Stator resistor [Rs] = 2.3
o Torque constant [Kt] = 0.75
o Rotor permanent magnet flux [m] = 0.1652 Wb
102
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
103
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
DEMUX Eurocard: it selects 60 signals from the 300 that DS1103 is providing
OPTI-VLT: it contains 8 optical fiber drivers for controlling the IGBTs of the inverter
The rest of the system elements that can be seen in the layout of the Figure C.1 are the three
sensors (current, voltage and rotor position) needed for the control, and the PC with the
Control Desk software, connected directly to the DSP. The characteristics of these elements
are explained in the following sections of Appendix C, where how to manage the signals in
order to get accurate information in the DSP is described.
C.8.1 SENSORS
Three different type of sensors are utilised within the project. Two of them are to measure
electrical variables, the current through the motor and the DC Bus voltage. The third is an
incremental encoder to measure the angular position of the rotor, i.e. a mechanical variable.
GLEMV =
I out [V ]
I [ A]
= sec
Rsec [ ] = I Ratio Rsec [ ]
I in [ A] I primary [ A]
105
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
The DC bus voltage is also measured using a LEM-Box, which creates an output proportional
to the input voltage. Similar to the previous case, that is the current measurement process, the
voltage is dropped on a resistance, which is connected to the output of the LEM-Box.
Therefore, the relation between output and input voltages is as follows.
GLEMV =
VDC out [V ]
V [V ]
= sec
Rsec [ ] = VRatioRsec
VDCin [V ] Vprimary [V ]
control unit, the DS1103 board based on a DSP provided by dSPACE, whose main features
are explained in C.6. The algorithm created in MATLAB-Simulink using the block diagram
method is directly loaded into this board.
2
ENABLE
enable
Ud_IN
Control
Constt
ia,b,c
Software Interrupt
enc
TRIP_OUT
5
Data _ready
Software Interrupt
Ud_in
SC Protection
s peed, theta _m
1
enc
ENCODER INTERFACE
ia,b,c
4
ia ,b,c
Currents A/D
Ud_vol
3
Ud
Ud A /D
The acquisition block is divided into five sub-blocks. The first block manages the
authorisation of the whole system, after receiving the orders and information sent from the
second block.
107
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
FAULT
== 0
From
Compare
To Zero
ENABLE
ON
1
TRIP _IN
boolean
NOT
1
enable
Product
double
boolean
NOT
double
The second block is the protection controller, that is to say it keeps the system working within
the boundaries of the safe operation area; and it sends a FAULT signal to the enable
controlling block in the cases of over-current, under-voltage, over-voltage and short circuit.
Overcurrent , overspeed , overvoltage /undervoltage protection
1
ia ,b ,c
1
M ux
i _ m ax
CLK
i _ m ax
SC
Q
!Q
OS
J-K
Flip -Flop
FAULT
2
enc
FAU LT
OV
M ux
(abs(u (1 ))>u (5 ))
n_ m ax
CLK
n_ m ax
G oto
4
!Q
UV
J-K
Flip -Flop 1
3
U d_ in
Ud _ m ax
M ux
(u (1 )> u(2 ))
UD _m ax
CLK
Ud _ m in
UD_ m in
!Q
J-K
Flip -Flop 2
(u (1 )< u(3 ))
CLK
K
!Q
J-K
Flip -Flop 3
double
0
reset_trip
NO T
double
SLA VE BIT O UT
DS 1103 S L_ DS P _ BIT _ O UT _C 10
SLAVE B IT IN
TRIP_HW
1
TR IP _ O UT
The third block is the one that receives signals coming from the encoder. As explained
previously, the encoder only outputs square pulses, hence by an integral action they are the
108
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
sin(u(1))
DS1103 ENC_SETUP
cos(u(1))
cos
Enc position
2*pi /INC_LINES
30 /pi
1/TM
tic2rad 2
rads 2rpm
th_m
theta_m
th_rm
delta_th_m
th_el
theta_el
1
speed ,
theta _m
th_re
Ground
by ret
The fourth block manages the current signals. The original signals that come from the output
of the inverter have been modified by the sensors and SCU. Therefore, original values of
these signals must be recovered in the DSP. In order to do this, the received signals are
divided by the gain of the sensors, achieving the actual values (the numerical value, not real
current) of the variables. Assuming that the values are reduced 10 times when they are
introduced to the DSP, the gain that the DSP should apply to the input signals to recover the
information correctly is given below:
I abcSCALE =
1
1
1 1
=
= 10
I Ratio Rsec
GLEM I 1
I RatioRsec 1
10
10
Finally an offset is added to each instantaneous current value for balancing, because when
some different electronic components are connected in series, offsets, noises and other
unexpected disturbances can appear. The value of the offset that must be added has been
obtained experimentally, as explained in C.10.1.
109
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
ADC
DS 1103 ADC_C17
iA _scale
ia_direct_meas ur
ia_direct_meas ur
iA _offset
iA _scale
ia
0
ADC
DS 1103 ADC_C18
ib_direct_measur
iB_scale
iB _offset
iB _scale
ib
0
ADC
DS 1103 ADC_C19
Mux
1
ia ,b,c
ic_direct_measur
iC_scale
iC _offset
iC _scale
ic
1/3
1/3
In order to complete the Measurements and Safety block, the DC Bus voltage measurement
block will be explained. In the same way that the previous block adapts the currents, this one
also divides the received signal by the gains by which the initial measurement values are
multiplied. The gain applied to the input signal is given as:
Ud SCALE =
1
1
1
1
=
= 10
VRatio Rsec
GLEMV 1
VRatio Rsec 1
10
10
An offset to the output is also added, in order to balance the possible disturbances in the
transmission of the signal. For obtaining the value of the offset, another experiment has been
done, whose settings and results can be seen in C.10.2.
BUS DC voltage signal A /D
MUX ADC
Ud_scale
1
Ud_vol
Ud _scale
0
Ud _offset
110
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
In brief, all the received signals are adapted by the Measurement and Safety block. Some of
them are utilised to keep the operation of the motor and the inverter in a safe operation area,
and the others are sent to the control block in order to feedback the FOC.
111
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
500mA
Power
Supply
500mA
Control
Desk Ia
507mA
Control Desk
Ib
-
Control
Desk Ic
-
500mA
500mA
502mA
500mA
500mA
503mA
Current
Injection
a
Multimeter
compensated in the acquisition block within the Simulink model for proper operation.
However, the values are considerably small, and thus can be omitted.
112
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
Experiment
Power Supply
Multimeter
Control Desk
16V
16V
14.3V
8V
8V
6.3V
25V
25V
23.4V
0V
0V
-1.65V
The results of the table above show that there is an offset in the voltage acquisition of -1.65
volts. This offset needs to be compensated in the acquisition block of the Simulink
application, but as with the currents, the offset value may be omitted, seeing that the values
expected to be measured by this sensor are in the neighbourhood of 550 volts.
113
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
REFERENCES
1. Getting Started With dSPACE System (GettingStarted.pdf) Version 1.0 (May 2000)
Remus TEODORESCU
AALBORG UNIVERSITY, INSTITUTE OF ENERGY TECHNOLOGY
http://www.ece.osu.edu/~passino/dSPACEtutorial.doc.pdf
114
SENSORLESS CONTROL OF PMSM FOR LOW SPEED APPLICATIONS
115
torque
isqref
Te
Tr
isa
isd command
wr_ ref
Torque command
0
W command
isb
isd_ref
z
w_ref
0
z1
e_w
isq_ref
isc
isq_ref
PI speed regulator 1
vs _abc_ref
isd
vs _abc
wr
isq
theta
wr
PMSM MODEL
wr_real
butter
w_error
wr
isd
ids_filt
isa
butter
isq
isb
iqs_filt 1
MEASUREMENT BLOCK
tita ^
theta _real
iq_s^
w_estim
theta_real
error^
theta _est
Estimator
ts
Clock
error theta
In Figure D.1, there are four main parts: the motor model in the abc stationary reference
frame, the field oriented controller (FOC) for the current control, the current measurement
block, and the position and speed estimator. All of them are included in the speed loop,
controlled by the PI controller shown on the left hand side. The content of each block is
analysed in the following sections.
116
stationary reference frame. In the real setup, the inverter feeds the motor with a three phase
system, and the current measurements are also made in the (abc) stationary reference frame.
Hence, both in the input and the output sides of the motor model in dq, there are
transformation blocks from abc to dq reference frames and vice versa, as shown in Figure
D.2.
dq currents 1
dq currents
abc voltages
isd
isa
isd
vs d
isa
isq
2
vs_abc
isb
abc -dq
isq
dq -abc
3
isb
vs q
isc
wr
4
isc
abc >> dq
1
Tr
dq >>abc
Tr
torq ue
Sign 1
1
torque
Product
dq model
wr
5
wr
1
s
6
theta
The actual motor model is built using the dq reference frame equations. Figure D.3 shows
how to build the equations in a Simulink application.
isd
1/Ld *(-Rs*u(1)+Lq *u(2)*u(3)+u(4))
disd /dt
1
s
isd
1
isd
isq
wr
1/Lq *(-Ld *u(1)*u(3)-Rs*u(2)-u(3)*lambda _m+u(5))
disq/dt
1
s
speed 2
isq
2
isq
4
1
vsd
torque
electrical speed
3/2*np *(lambda _m*u(2)+(Ld -Lq )*u(1)*u(2))
2
vsq
electromagnetic torque
=Te
1
s
1/J
Te
3
wr
3
Tr
Bm/1
speed
Te 1
117
Sine Wave
Vs_abc
vsd
vs d '
e_ is d
1
isd_ref
vd
va
PI isd regulator
Vs_abc chopped
vsq
isq_ref
vs q '
e_is q
2
isq_ref
vq
vb
wr
vc
vs _a bc_re f
vs _a bc
1
vs_abc _ref
PI isq regulator
speed 2
SPACE VECTOR MODULATED
INVERTER
Decoupling network
dq >>abc
wr
isq
isd
speed 1
isd
3
isq
4
wr
5
Figure D.4- Field Oriented Controller for the Current Loop with the SVM Inverter and HF injection
On the right side of the Figure D. the voltage references are transformed from the dq rotating
reference frame to the abc stationary reference frame in order to feed the motor can be seen.
In the simulation, to obtain more realistic simulations, the Space Vector Modulation (SVM)
inverter whose model is shown in the Figure D.5 can also be connected to the system.
Udc
Constant
vab
Vdc
Vdc
vbc
DaDbDc
1
vs_abc _ref
vabc
DaDbDc
vca
6-Bri Inverter
K*u
1
vs_abc
L-to-L 2 L-to-N
bypass inverter
DutyCycleGeneration
118
1
s
Integrator
1
isd
cos
sqrt(u(1)^2+u(2)^2)
is_rms
Fcn
2/3*[ 1 -.5 -.5; 0 sqrt(3)/2 -sqrt(3)/2; .5 .5 .5]
vsalfa
1
isa
2
isb
K*u
2
isq
Demux
vsbeta
Matrix
Gain
Terminator
D.1.4 ESTIMATOR
This block, as explained step by step in the Chapter 3, takes the measured q axis current and
after demodulating it, inputs the position error signal to a PI controller which finally gives the
estimated angular speed and position required for the controller operation and the co-ordinate
transformations respectively. The block diagram given in Figure D.7 illustrates the estimator.
error
Scope 2
Scope 1
Scope 3
2
tita ^
Scope 11
Scope 10
butter
tita ^
butter
1
u(1)*sin(wh*u(2))
iq _s^
Analog
Filter Design 1
Fcn
error_theta
-5
Analog
Filter Design 2
wr^1
Gain
1
w_estim
PI ESTIMATOR
3
t
1
2
theta _real
3
tau .s+1
error ^
Figure D.7- Block Diagram of the Estimator with the Demodulator, Filter and PI controller
119
RTI Data
DS 1103SLAVE Board
PWM-Interrupt
DS 1103 SL _DSP _PWMINT
Trigger()
Trigger()
Task Transition
(no buffer )
enc
ENABLE
Task Transition
(no buffer )
ENABLE
Ud
Task Transition
(no buffer )
Ud
ia,b,c
Task Transition
(no buffer )
ia,b,c
enc
enc_in
enc_fil
encoder filter
CONTROL
Data _ready
Figure D.8- Main Page of the Block Diagram for the Real Setup
The control block includes some of the blocks shown previously in the simulation file in
addition to some new blocks in order to be able to connect with the other equipment of the
experimental setup. It can be divided into three main components: one that controls the
authorisation, the reset and the initialisation of the PI controllers, another associated with the
120
control (the block analysed in the simulation file, such as the estimator and the controller),
and a third component that manages the SVM of the inverter.
VECTOR CONTROL OF A PMSM MOTOR WITH
with SVM modulation and deadtime compensation
Initialization
f()
Trigger
2
ENABLE
delay
enable
EN
(u>0)
EN
RUN
el _theta _meas
input signals
1
enc
enc_in
el_theta _m eas
el_theta _meas
th_m eas_real
reset
el_w_meas
el _w_meas
vs _x
is_abc
4
ia ,b,c
reset_controller
Duty cycle a
Da
vs _y
modula
Mux
Demux
delay
Duty cycle b
Db
SVM
Controller
Duty cycle c
Dc
dc-max
3
Ud
Ud_out
Ud_in
DS1103 SL_DSP_PWM 3
Ud proc
dta
iabc dtb
dtc
Deadtime -comp
D.2.1 CONTROLLER
The controller block includes almost all the blocks shown previously in the simulation file:
the speed and current loop controllers, the high frequency injection block, and the position
and speed estimator block, as seen in the Figure D.10.
isa
vsd
2
is_ abc
vs d
vs _alfa
isb
el_w
Terminator
vsq
reset
Reset integrators
isq
reset
iq_to_filter
el_th eta
w_ ref
vs _beta
vs beta
2
vs_ y
dq >>alfa _ beta
high_freq
init
delay
1
vs_ x
vs q
el_theta
enable
vs alfa
Co ntroller P I
4
0
speed c ommand
P roduct
el_theta
A dd 1
1
t h _ m eas _ re al
error_theta
Terminat or 1
is q
iqhf _am plitude
high_freq
Kest
angle_error
sensorless_ adjust
E ST _ ON
el _ theta _ meas
0
iq _ hf _ a mplitude
res et_es tim
wr_es tim
E stimator
el _ w _ meas
121
The block at the upper side of Figure D.10 should be analysed more extensively, where there
are the two controller loops and the high frequency injection block mentioned previously
besides the decoupling network for the d and q axes.
high _ freq
4
Vh _command
Vinj
Vh
Vhf (t)
fh
fh
fh _command
vsd +hf
vsd _ref
v _hf
1
vsd
e_isd
isd_ref
vsd
reset
isd command
vsd
PI isd
e_w
w_ref
error
w_ref
reset
isq_ref
isq_ref
e_isq
error_isq
vsq
init
reset
vsq
vsq _ref
PI speed
reset
7
init
2
vsq
PI isq
abc >>dq
1
isa
isa
2
isb
isb
Decoupling network
isd
theta
4
el _ theta
isq
isd_no_filt
isd
isd_no_filt
d axis dec
isq_no_filt
isq
isq_no_filt
q axis dec
3
el _w
wr
3
isq
Figure D.11- Controller PI Block Included in the Control Block of the Real Setup Simulink File
K Ts
U < U/z
Detect
Decrease
>2
z-1
Discrete-Time
Integrator
1
delay
Compare
To Constant
uint 8
init _state
Terminator 2
122
Figure D.13- Duty Cycle Reference Management Blocks for the Inverter
123
124
INDEX
CHAPTER 1: INTRODUCTION ...........................................................................................1
1.1 INTRODUCTION ........................................................................................................2
1.2 OBJECTIVE AND LIMITATIONS .............................................................................5
1.3 METHODOLOGY .......................................................................................................5
1.4 SCOPE OF THE PROJECT........................................................................................10
1.5 SUMMARY ...............................................................................................................11
REFERENCES.................................................................................................................12
CHAPTER 2: VECTOR ORIENTED CONTROL FOR A PMSM MOTOR ........................14
2.1 INTRODUCTION ......................................................................................................15
2.2 PMSM MODEL .........................................................................................................16
2.3 FOC CONTROLLER DESIGN WITH ENCODER....................................................23
2.4 SUMMARY ...............................................................................................................39
REFERENCES.................................................................................................................40
CHAPTER 3: SENSORLESS CONTROL of PMSM ..........................................................41
3.1 INTRODUCTION ......................................................................................................42
3.2 DIFFERENT SIGNAL INJECTION METHODS .......................................................43
3.3 CONTROLLER..........................................................................................................53
3.4 VOLTAGE AND FREQUENCY SELECTION OF HF SIGNAL...............................54
3.5 ESTIMATOR DESIGN..............................................................................................56
3.6 SUMMARY ...............................................................................................................65
REFERENCES.................................................................................................................66
CHAPTER 4: LABORATORY RESULTS ..........................................................................67
4.1 SPEED RESPONSE TO A STEP REFERENCE ........................................................68
4.2 SPEED STEP RESPONSE WITH INITIAL TORQUE...............................................71
4.3 SPEED STEP RESPONSE WITH TORQUE STEP....................................................73
4.4 STEP RESPONSE FOR DIFFERENT SPEEDS.........................................................75
4.5 TORQUE STEP AT ZERO SPEED............................................................................78
4.6 RESPONSE FOR DIFFERENT (ARBITRARY) START POSITIONS ......................79
4.7 SUMMARY ...............................................................................................................79
CHAPTER 5: CONCLUSIONS AND FUTURE WORK .....................................................80
5.1 CONCLUSIONS ........................................................................................................81
5.1 CONCLUSIONS ........................................................................................................81
SPACE
VECTOR
MODULATION
AND
INVERTER
IMPLEMENTATION ..........................................................................................................90
B.1 SPACE VECTOR MODULATION THEORY ..........................................................91
B.2 SV-PWM OVER-MODULATION ............................................................................97
B.3 COMPARISON BETWEEN SPACE VECTOR MODULATION and SINUSOIDAL
PWM................................................................................................................................98
B.4 INVERTER IMPLEMENTATION ............................................................................98
REFERENCES.................................................................................................................99
APPENDIX C - EXPERIMENTAL SETUP and SENSOR CALIBRATION ..................... 100
C.1 INTRODUCTION ................................................................................................... 101
C.2 DANFOSS HRS92C4-44S MOTOR........................................................................ 101
C.3 DANFOSS VLT5004 INVERTER........................................................................... 102
C.5 LOAD DC MOTOR: GP115.30 ............................................................................... 103
C.6 dSPACE DS1103 PPC DIGITAL CONTROLLER .................................................. 103
C.7 SCU (SIGNAL CONDITIONING UNIT) ................................................................ 104
C.8 SENSORS and ACQUIRED SIGNAL ROUTING................................................... 104
C.9 ACQUISITION BLOCK in SIMULINK APPLICATION........................................ 107
C.10 CALIBRATION and COMPENSATION of the SENSORS ................................... 111
REFERENCES............................................................................................................... 114
APPENDIX D - SIMULINK BLOCKS.............................................................................. 115
D.1 SIMULATION FILE ............................................................................................... 116
D.2 REAL SETUP FILE with dSPACE SYSTEM.......................................................... 120