Professional Documents
Culture Documents
+
+
=
m q
d
q s d
q d s
q
d
i
i
pL r L
L pL r
u
u
0
, (1)
where
p -differential operator,
-electrical angular velocity,
r
s
-stator resistance,
L
d
, L
q
-d-axis and q-axis inductances respectively,
i
d
, i
q
-d-axis and q-axis currents components respectively,
u
d
, u
q
-d-axis and q-axis voltage components respectively,
m
-permanent magnet flux linkage.
Electromagnetic torque of the motor can be expressed as:
( ) ( )
m d q d q
i L L Pi T + =
2
3
, (2)
where
P -number of pole pairs.
It is evident that motor torque contains two components:
excitation torque, which is caused by the magnet flux linkage
and reluctance torque, which is caused by the by the rotor
magnetic asymmetry along d and q axes.
B. Non-MTPA control
Conventional vector control systems, which do not utilize
MTPA control, use only excitation torque, setting i
d
command to zero (for non-field weakening modes). Speed
and current controllers in such systems are connected as
shown in Fig. 4. The speed controller uses speed error signal
as input and produces i
q
command. At the same time i
d
command is set to zero. Such control scheme is simple since
the torque is controlled only by one variable, however it does
not use the whole potentiality of the motor.
C. MTPA equations
To utilize the reluctance torque of the motor, d-axis current
should be controlled as well. The relationship between i
d
and
i
q
for the archiving minimum of the stator current
2 2
q d s
i i I + = (3)
at the given torque can be obtained by differentiating (2) with
respect to (3) and equating result to zero. The result is:
( ) ( )
2
2
2
4 2
q
q d
m
q d
m
d
i
L L L L
i +
=
. (4)
MTPA trajectory for the rated motor parameters is shown
in the Fig. 2. Fig. 3. shows dependences of the motor torques
on the stator current for MTPA and non-MTPA controls for
the rated motor parameters.
Control algorithm built according to (4) has the structure,
which is shown in Fig. 5. It is similar to the scheme shown in
Fig. 4, but commanded value for the d-axis current is not set
to zero. It is calculated by the MTPA block according to (4)
Fig. 1. IPM motor
Speed
Controller
i
q
Controller
i
q
i
d
Controller
i
d
i
d c
= 0
u
q c
u
d c
i
q c
i
q
i
d
Fig. 4. Non-MTPA vector control scheme
i
d
[A]
i
q
[A]
4
8
12
-4 -8
Fig. 2. MTPA trajectory
Fig. 5. MTPA vector control scheme
I [A]
5 10
40
80
T [Nm]
i
d
= 0
MTPA
Fig. 3. Motor torques under MTPA and non-MTPA
controls for rated parameters
1356 978-1-4244-1766-7/08/$25.00 2008
using commanded value for the q-axis current.
However, main disadvantage of such control is calculation
of (4), which is processor intensive. Many authors suggest to
approximate (4) with polynomial, however low-order
polynomial sometimes are not applicable.
The way out is to change control scheme a little. Equation
(2) can be rewritten in the terms of current vector I
s
and its
phase:
( ) ( )
m s q d s
I L L pI T + = cos sin
2
3
, (5)
where is the angle between i
d
and I
s
. Calculation of the
torque derivative with respect to the full current phase and
equalization it to zero results MTPA curve in the terms of the
stator current and its phase:
( ) 0 2 cos cos
2
2
3
2
3
= + =
s q d s m
I L L p I p
T
(6)
The solution of (6) is:
( )
( )
+ +
=
s q d
s q d m m
I L L
I L L
4
8
arccos
2 2 2
, (7)
This function is also difficult for calculation, however it
can be easily approximated by the second order polynomial.
Fig. 6 shows such function for the motor which was used for
the experiments.
Control algorithm built according to (6) has structure,
which is shown in Fig. 7. The speed controller produces
stator current commanded value, which is fed to the MTPA
block. MTPA block calculates phase of the stator current
using polynomial approximation of (7) and then outputs i
d
and i
q
commanded values for the current controllers.
As it was mentioned earlier, all analytical approaches
toward MTPA condition use rated motor parameters, whish
are considered to be constant in every operating point. It
means that effects of saturation, cross-saturation and
dependence of the permanent magnet flux linkage on the
temperature are not taken into account.
However variation of the motor inductances L
d
and L
q
with
the change of operating point (i
d
and i
q
) is significant. Such
dependence for the prototype motor is shown in Fig. 8. These
inductances are functions of the d-q axes currents. In this
figure effect of the cross saturation is not taken into account.
Since motor inductances are functions of its currents i
d
and
i
q
, MTPA equations deduced earlier are not valid, because
they were obtained on the assumption that motor parameters
are unchangeable. Next paragraph proposes new algorithm
which can overcome described problem and perform MTPA
control of the motor.
III. PROPOSED MTPA ALGORITHM
In order to overcome previously described problem and
perform MTPA control of the motor, new algorithm has been
developed. It does not use motor parameters and can adjust to
every operating point of the motor.
The block diagram of the control system, which utilizes
MTPA algorithm, is the same as in Fig. 7. The speed
controller uses speed error as input and produces stator
current command I
s
. This command is fed to the MTPA block,
which calculates phase of the stator current and outputs i
d
and i
q
. The difference from the conventional control schemes
is that angle is not calculated according to (7) or its
polynomial approximation. This angle is defined by the
special adjusting algorithm, which works in quasi real time
mode.
Proposed adjusting algorithm defines current phase angle ,
which minimizes motor current I
s
at the demanded torque.
For this purpose MTPA tuning algorithm seeks the best angle
for the current load conditions, which are considered to be
constant during execution of the corresponding procedure.
Tuning algorithm continuously changes current phase angle
by the small value , i.e. disturbs the system, and compares
results after end of the transients. After changing it waits till
the speed controller adjusts stator current I
s
. Since the
disturbance is small the transients are short, so after short
delay the new value of the motor current can be obtained and
currents before and after disturbance can be compared. If the
current obtained at the current step is less than the current at
previous iteration, it means that current vector has been
Fig. 6. MTPA trajectory in terms of stator current and its phase
Fig. 7. MTPA vector control scheme
Fig. 8. Motor inductances vs. current
1357 978-1-4244-1766-7/08/$25.00 2008
rotated to the right direction, otherwise to the wrong. In that
case the sign of the disturbance angle must be changed and
at the next step tuning algorithm will rotate current to the
opposite direction. Fig. 9 illustrates current vector rotation
under constant load torque.
Such approach has a significant advantage to tune to the
different operational condition of the motor, because it can
find the minimum of the stator current even when the motor
parameters change with the current variation. It means that
inductance variation due to the saturation and cross-saturation
and flux variation due to the temperature change do not affect
the performance of the method.
However proposed tuning algorithm has weak points,
inherent to all searching algorithms. It can fail in transients
because changes of the minimizing variable are caused by the
impact of external factors. For example, if the load torque
increases quickly the stator current is also increasing
regardless of its phase variation. In that case is not changing
significantly, it swings by near the value, which was
before the load transient. The worst case for the tuning
algorithm is rapid decrease of the load torque. In that case
motor current at the next step is always less than at the
previous one and tuning algorithm continuously changes
into direction, which depends on the sign of before the
transient. This problem can be solved by setting limits for the
. These limits can be defined by simulation or measured
during motor test. Another solution is to define the transient
and switch the tuning algorithm off during that time. Usually
there are two external factors, which can cause the transient:
commanded speed and load torque. So control system has to
analyze commanded speed and commanded stator current and
if they are changing the control system has to stop tuning.
Since tuning algorithm uses current magnitude only for
comparison, it is better to use squared value of this parameter,
which skips square root calculation and saves processor time.
The flowchart of the described algorithm is shown in Fig. 10.
It should be taken into account that current minimum at the
constant torque usually is not strongly pronounced, so
typically current vector is oscillating near its minimum. It
should be also noted that current vectors which phases differ
by small angle have almost the same magnitudes, so
measurement error can affect the algorithm. To avoid it the
current filtering should be used or variation value should
be increased.
1 + k
s
I
k
s
I
Fig. 9. Motor current phase variation
Start of MTPA
tuning
Define new current phase
k+1
=
k
+
Set new value of the for
MTPA block
k
=
k+1
min
k+1
max
Correct
k+1
Wait till speed controller
commands new current vector
and it is set
Calculate average squared
amplitude of the current vector
End of MTPA
tuning
( ) ( )
2 2
1 k
s
k
s
I I <
+
Fig. 10. Flowchart of MTPA tuning algorithm
TABLE I
MOTOR PARAMETERS
Parameter Value
Number of poles 2P = 16
Rated power, W 1000
Rated current, A 6
Rated speed, rpm 400
Phase resistance, 8.3
d-axis inductance, mH 144
q-axis inductance, mH 168
Back-EMF constant, Vs/rad 0.53
1358 978-1-4244-1766-7/08/$25.00 2008
IV. EXPERIMENTAL RESULTS
A. Experimental system
Experiments have been performed on the 1 kW IPMSM
coupled with the DC load machine. Rated motor parameters
are given in the Table 1. The load machine is controlled from
the PC and is used as a programmable load for the tested
motor. The motor is driven by the three-phase voltage source
PWM inverter, which is based on the Fairchild
FSBB20CH60F (20 A/600 V) smart power module. Motor
position is measured by means of 4096 pulse per revolution
quadrature encoder. Control system is built on the base of 60
MIPS Matsushita microcontroller MN103SFA7K, which
controls inverter with 10 kHz PWM. There are 3 sensors in
the developed system: two current hall-sensors in the motor
phases and DC-link voltage sensor. All the analog signals are
converted by the 10-bit ADC of microcontroller with
sampling time of 100 s. Test installation was designed to be
supplied from the standard 220 V (50 60) Hz source.
Experimental board also contains RS-232 interface, which is
used for connection with PC for monitoring of the algorithm
variables. For the experiments there was used conventional
MTPA control scheme with additional block of the MTPA
tuning algorithm. Fig. 14 shows a schematic of the
experimental system.
B. Motor characteristics
To verify validity of the proposed MTPA control algorithm
real motor characteristics have been obtained. They were
measured by manual changing of the stator current phase
with the step of 1 for several values of the load torque. Then
the points with the lowest current have been selected and
motor MTPA characteristics have been plotted. Fig. 11 shows
dependence of the motor torque on its current under MTPA
control. Fig. 12 shows motor MTPA trajectory in the terms of
stator current and its phase and Fig. 13 shows the MTPA
trajectory in the terms of stator current components i
d
and i
q
.
I [A]
5 10
20
40
T [Nm]
Experimental
Calculated using rated
parameters
Fig. 11. Motor torque vs. current
under MTPA control
I
s
[A]
[]
5 10
100
110
120
90
Experimental
Calculated using rated
parameters
Fig. 12. MTPA trajectory in terms of
stator current and its phase
Fig. 13. MTPA trajectory in terms of
i
d
and i
q
Speed
Controller
i
q
Controller
i
q
i
d
Controller
i
d
u
q c
u
d c
I
s c
i
q
i
d
i
d c
MTPA
i
q c
SVPWM
I
n
v
e
r
t
e
r
ref
u
DC
VT 220 V
Tuning
algorithm
IPMSM
Encoder
d
s
,q
s
d
e
,q
e
Speed and
position
calculation
a,b
d
e
,q
e
Fig. 14. Schematic of the experimental system
1359 978-1-4244-1766-7/08/$25.00 2008
Dashed lines show dependences, which were calculated using
rated parameters of the motor. It is seen that saturation
strongly impact motor characteristics and conventional
MTPA algorithms based on (3) and (7) are not applicable.
C. Performance of the proposed algorithm
Proposed MTPA algorithm has been implemented in C and
tested with the system, which was described earlier. Fig. 15
shows commanded load torque and current phase, selected by
the tuning algorithm. At this experiment the tuning algorithm
ran with the frequency of 20 Hz and phase variation of 2 .
Fig. 15 shows commanded load torque (a), current phase,
which was selected by the tuning algorithm, when it operated
during transients (b) and when it was disabled (c).
It is clear that tuning algorithm fails at the rapid change of
the load torque. At that, when load torque increases the
current phase oscillates near the value before rising, but when
the load torque decreases, the current phase changes until it
reaches maximum or minimum limit.
Fig. 16 shows commanded load torque and corresponding
current phase . For the load torque there were selected the
same points as for motor testing, which allow to compare
output of the algorithm with the motor MTPA trajectory.
Fig. 16 shows that proposed algorithm successfully detects
motor MTPA trajectory, especially at the load torque over
20 Nm.
V. CONCLUSION
In this paper, robust self-tuning MTPA algorithm for
IPMSM drives has been presented. The proposed method
does not use computed motor parameters, which vary
depending on motor operational point. The control structure
is similar to the conventional one, but uses additional MTPA
tuning block, which sets phase for the stator current. This
block continuously varies current phase and selects the angle,
which corresponds to the lowest current at the given load
torque.
Experimental results have been presented to demonstrate
validity of the developed algorithm. They showed that
proposed algorithm works well even with motors, which have
small difference between L
d
and L
q
.
REFERENCES
[1] Y.A.-R.I. Mohamed, T.K. Lee, Adaptive self-tuning MTPA vector
controller for IPMSM drive system, IEEE Transactions on Energy
Conversion, vol. 21, pp. 529-551, September 2006.
[2] T.M. Jahns, G.B. Kliman, T.W. Neumann, Interior Permanent-Magnet
Synchronous Motors for Adjustable-Speed drives, IEEE Trans. On Ind.
Appl., Vol IA-22, pp. 738-747, July/Aug. 1986.
[3] H.B. Kim, J. Hartwig, R.D. Lorenz, Using on-line parameter
estimation to improve efficiency of IPM machine drives, IEEE 33
rd
Power Electronics Specialists Conference, vol. 2, pp. 815-820, June
2002.
[4] H. Hajime, T. Yoshio, K. Keiji, Novel sensorless control for pm
synchronous motors based on maximum torque control frame,
European Conference on Power Electronics and Applications, pp. 1-10,
September 2007.
[5] S. Bolognani, L. Sgarbossa, M. Zordan, Self-tuning of MTPA current
vector generation scheme in IPM synchronous motor drives, European
Conference on Power Electronics and Applications, pp. 1-10,
September 2007.
[6] P. Niazi, H.A. Toliyat, A. Goodarzi, Robust Maximum Torque per
Ampere (MTPA) Control of PM-Assisted SynRM for Traction
Applications, IEEE Transactions on Vehicular Technology, vol. 56, pp.
1538-1545, July 2007.
[7] P. Niazi, H.A. Toliyat, Robust maximum torque per amp (MTPA)
control of PM-assisted synchronous reluctance motor, Twenty-First
Annual IEEE Applied Power Electronics Conference and Exposition,
pp. 1-8, March 2006.
Fig. 15. Commanded load torque (a) and current phase (b), (c)
Fig. 16. Commanded load torque (a) and current phase (b)
1360 978-1-4244-1766-7/08/$25.00 2008