Robust SelfTuning MTPA Algorithm for IPMSM Drives
Dianov Anton, Kim YoungKwan, Lee SangJoon, Lee SangTaek Digital Appliance Division, Samsung Electronics 416, Maetan3Dong, YeongtongGu, SuwonCity, GyeonggiDo, 443742, Korea Email: anton.dianov@samsung.com
Abstract This paper presents robust selftuning maximum torque per ampere (MTPA) control algorithm for an interior permanent magnet synchronous motor (IPMSM) drives. Proposed algorithm utilizes conventional control scheme, where speed controller produces stator current command signal for the MTPA block. That block decomposes commanded current I _{s} into its components along direct and quadrature axes i _{d} and i _{q} respectively, which are used as a current commands for the current control loops. MTPA angle γ, which is used for the decomposition is defined by the MTPA tuning algorithm, which continually varies that angle trying to find the one which provides the minimum of stator current at the given load torque.
I.
INTRODUCTION
Permanent magnet synchronous motors (PMSM) are widely used for lowpower drive applications due to high efficiency, high torque to current ratio, low noise and robustness [1]. They can be divided into surfacemounted (SMPMSM) and IPMSM. The first ones have permanent magnets (PM) mounted on the surface of rotor, which means that motor parameters along direct and quadrature axes are almost similar. It simplifies motor equations and allows to utilize simple control schemes. However the main disadvantage of the SMPMSM is limited speed range. At the high speed the magnets can detach from the surface of the rotor and cause drive failure. Unlike the surfacemounted PMSM the IPMSM have magnets buried inside the rotor. It improves motor reliability and increases speed range. However such rotor design causes motor asymmetry along its electrical axes d and q, which complicates motor models and its control schemes. Furthermore, the difference in motor inductances L _{d} and L _{q} causes reluctance torque of the motor, which highefficient control system has to utilize. During last years many researchers paid their attention to the MTPA algorithms and many papers with different solutions have been proposed. The conventional approach to this problem is to calculate maximum torque per ampere trajectory. It can be obtained by differentiating motor torque equation with respect to the stator current. These formulas are well known [2] and are widely used in simple control systems. However such approach does not take into account motor parameters variations, which significantly affect motor performance. In the IPM motors the permanent magnet flux varies with the temperature and motor inductances L _{d} and L _{q} depend on the stator current. Furthermore, such variation can be significant, e.g. the values of the inductances can decrease
more than two times. So highefficient control system must take into account such variations and adapt to them. Many papers, dedicated to the MTPA control, suggest several methods which can be divided into two groups. First group includes methods, which utilize conventional MTPA scheme, but use motor parameters estimators, which monitor parameters variation and correct MTPA trajectory. One of such methods is described in [3]. Authors propose simple online adaptive estimation algorithm for the motor inductances identification. However practical results showed that L _{q} estimation is sensitive to the stator resistance r _{s} variation at higher torque and accuracy of L _{d} estimation is affected by the variation of PM flux linkage Ψ _{m} . Improved method is proposed in [1]. It uses adaptive parameter estimator with iterative gradient algorithm, which is applied to the qaxis current. For unbiased parameter estimation proposed estimator is combined with a robust activestate decoupling scheme. This method shows better results than the previous one, however it is much more calculation intensive. One more interesting method, developed for the sensorless control of the IPMSM including MTPA, is described in [4]. Authors propose to perform motor position and speed estimation in the maximum torque control (MTC) reference frame, where one axis is aligned with the current vector at the MTPA condition. They proved that motor inductances in the MTC reference frame are not significantly affected by the current magnitude and their variations can be neglected. Second group consists of the methods which do not use motor parameters. Such methods are based on seeking of the minimum of the current magnitude at the given torque. A selftuning MTPA algorithm based on the highfrequency signal injecting is described in [5]. However highfrequency signal causes additional noises and stresses for the drive and sometimes is not applicable. One more interesting method, which is based on the current vector phase variation, is introduced in [6, 7]. This method adds and subtracts small angle to the current phase. After that motor torque at three operational points is calculated and the best point is selected. To increase robustness of the algorithm, authors added online motor parameter estimator to the proposed scheme. The purpose of this paper is to present robust selftuning algorithm, which belongs to the second group and does not use motor parameters for its work. The algorithm continuously varies phase of the stator current and analyzes
changes of its amplitude. After that the control algorithm selects the best angle and utilizes MTPA control. The validity of the proposed method has been verified by simulation and experimentation.
_{I}_{I}_{.} _{C}_{O}_{N}_{V}_{E}_{N}_{T}_{I}_{O}_{N}_{A}_{L} MAXIMUM TORQUE PER AMPERE CONTROL
A. Motor Equations
Fig. 1 shows a sixteen pole IPM motor, which was used for the experiments. Voltage equations for such motor in the synchronous reference frame dq on the assumption that motor parameters are constant and do not depend on the other variables are expressed by (1):
where
p
ω
r _{s}
⎡ u ⎤
⎥
⎣
⎦
⎢
d
u
q
=
⎡ r
⎢
⎣
s
+
pL
L
ω
d
d
−
L
ω
q
r
s
+
pL
q
i
⎤ ⎡ ⎤
⎥
⎦ ⎣ ⎦
i
d
⎥ ⎢
q
+
⎡
⎢
⎣
0
Ψ
ω
m
⎤
⎥
⎦
,
differential operator,
electrical angular velocity, stator resistance,
(1)
L _{d} , L _{q} daxis and qaxis inductances respectively,
i _{d} , i _{q}
u _{d} , u _{q} daxis and qaxis voltage components respectively,
Ψ _{m}
daxis and qaxis currents components respectively,
permanent magnet flux linkage.
Electromagnetic torque of the motor can be expressed as:
where
T =
3
2
Pi
q
((
L
d
− L
q
)
i
d
+Ψ
m
)
,
P number of pole pairs.
(2)
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. NonMTPA control
Conventional vector control systems, which do not utilize MTPA control, use only excitation torque, setting i _{d} command to zero (for nonfield 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, daxis current
should be controlled as well. The relationship between i _{d} and
i _{q} for the archiving minimum of the stator current
I
s
=
(3)
at the given torque can be obtained by differentiating (2) with respect to (3) and equating result to zero. The result is:
i
d
= −
Ψ
m
(
2 L
d
− L
q
)
+
(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 nonMTPA 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 daxis current is not set to zero. It is calculated by the MTPA block according to (4)
Fig. 1. IPM motor
Fig. 2. MTPA trajectory
Fig. 3. Motor torques under MTPA and nonMTPA controls for rated parameters
Fig. 4. NonMTPA vector control scheme
using commanded value for the qaxis current. However, main disadvantage of such control is calculation of (4), which is processor intensive. Many authors suggest to approximate (4) with polynomial, however loworder 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:
T
=
3
2
pI sin γ
s
((
L
d
− L
q
)
I
s
cos γ + Ψ
m
)
,
(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:
∂ T = 3 I 
+ 
3 
( 
− L 
) I 
2 
cos 2 

pΨ γ 2 m s 
cos 
γ 
2 
p L 
d 
q 
s 

⎛ ⎜ 
− Ψ 
m 
+ 

Ψ 2 m 
+ 
8 ( L 
d 
− 
L 
q 
) 2 
2 s I 

γ = arccos ⎜ ⎜ 
( 4 L d 
− 
L q ) 
I 
s 
⎝
γ
⎞
⎟
⎟ ⎟
⎠
The solution of (6) is:
= 0
,
(6)
(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, crosssaturation 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
Fig. 6. MTPA trajectory in terms of stator current and its phase
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 dq 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.
_{I}_{I}_{I}_{.} _{P}_{R}_{O}_{P}_{O}_{S}_{E}_{D} 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
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 crosssaturation 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
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 
daxis inductance, mH 
144 
qaxis inductance, mH 
168 
BackEMF constant, V·s/rad 
0.53 
γ. 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.
Fig. 10. Flowchart of MTPA tuning algorithm
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 threephase 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 hallsensors in the motor phases and DClink voltage sensor. All the analog signals are converted by the 10bit 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 RS232 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} .
120
110
100
90
Experimental 

Experimental 
Calculated using rated parameters 
Calculated using rated parameters 
Fig. 11. Motor torque vs. current under MTPA control
Fig. 12. MTPA trajectory in terms of stator current and its phase
Fig. 13. MTPA trajectory in terms of i _{d} and i _{q}
Fig. 14. Schematic of the experimental system
Fig. 15. Commanded load torque (a) and current phase (b), (c)
In this paper, robust selftuning 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 selftuning MTPA vector
[2]
[3]
controller for IPMSM drive system”, IEEE Transactions on Energy Conversion, vol. 21, pp. 529551, September 2006. T.M. Jahns, G.B. Kliman, T.W. Neumann, “Interior PermanentMagnet Synchronous Motors for AdjustableSpeed drives”, IEEE Trans. On Ind. Appl., Vol IA22, pp. 738747, July/Aug. 1986. H.B. Kim, J. Hartwig, R.D. Lorenz, “Using online parameter estimation to improve efficiency of IPM machine drives”, IEEE 33 ^{r}^{d}
Power Electronics Specialists Conference, vol. 2, pp. 815820, June
2002.
[4] H. Hajime, T. Yoshio, K. Keiji, “Novel sensorless control for pm
[5] 
synchronous motors based on maximum torque control frame”, European Conference on Power Electronics and Applications, pp. 110, September 2007. S. Bolognani, L. Sgarbossa, M. Zordan, “Selftuning of MTPA current 
[6] 
vector generation scheme in IPM synchronous motor drives”, European Conference on Power Electronics and Applications, pp. 110, September 2007. P. Niazi, H.A. Toliyat, A. Goodarzi, “Robust Maximum Torque per 
Ampere (MTPA) Control of PMAssisted SynRM for Traction Applications”, IEEE Transactions on Vehicular Technology, vol. 56, pp. 15381545, July 2007. [7] P. Niazi, H.A. Toliyat, “Robust maximum torque per amp (MTPA) control of PMassisted synchronous reluctance motor”, TwentyFirst Annual IEEE Applied Power Electronics Conference and Exposition, pp. 18, March 2006.
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.
Viel mehr als nur Dokumente.
Entdecken, was Scribd alles zu bieten hat, inklusive Bücher und Hörbücher von großen Verlagen.
Jederzeit kündbar.