A New Adaptive Self-Tuning Fourier Coefficients Algorithm for Periodic Torque Ripple Minimization in Permanent Magnet Synchronous Motors (PMSM)

Torque ripple occurs in Permanent Magnet Synchronous Motors (PMSMs) due to the non-sinusoidal flux density distribution around the air-gap and variable magnetic reluctance of the air-gap due to the stator slots distribution. These torque ripples change periodically with rotor position and are apparent as speed variations, which degrade the PMSM drive performance, particularly at low speeds, because of low inertial filtering. In this paper, a new self-tuning algorithm is developed for determining the Fourier Series Controller coefficients with the aim of reducing the torque ripple in a PMSM, thus allowing for a smoother operation. This algorithm adjusts the controller parameters based on the component's harmonic distortion in time domain of the compensation signal. Experimental evaluation is performed on a DSP-controlled PMSM evaluation platform. Test results obtained validate the effectiveness of the proposed self-tuning algorithm, with the Fourier series expansion scheme, in reducing the torque ripple.


Introduction
The Permanent Magnet Synchronous Motor (PMSM) market is growing more rapidly when compared to traditional competitors because of lower cost, as well as higher efficiency and reliability. For the sake of energy savings and environmental performance, PMSMs also feature one of the highest torque to loss ratios. These motors are widely used in fast dynamic positioning systems and machine-tool components [1,2]. The main disadvantage of PMSMs is the non-uniformity in the developed torque, known as "torque ripple" [3]. Torque ripple generates speed oscillations which cause system performance deterioration and in machine-tool applications, it can leave visible patterns on high precision machined surfaces [4]. Under the assumption of pure sinusoidal back electromagnetic force (EMF), the conventional Field Oriented Control (FOC) applies constant current references in the synchronous reference frame to produce a constant torque. However, depending on the magnet shape and how well the windings are manufactured, the back-EMF has in practice very different waveforms, which range from almost sinusoidal to trapezoidal. Torque ripple occurs in PMSMs due to non-sinusoidal flux density distribution around the air-gap and the variable magnetic reluctance of the air-gap due to stator slots distribution. These torque ripples change periodically with rotor position and are apparent as speed variations, which degrades the PMSM drive performance, particularly at low speeds because of low inertial filtering [5].
In order to improve the performance of PMSMs and increase its market share, the suppression of the pulsating torque has received much attention in recent years [6][7][8][9][10][11][12][13][14][15][16][17]. These torque ripple reduction techniques can be divided into two groups: one focusing on the improvement of motor design and the other emphasizing the use of active control of stator current excitation. From the motor design point of view, skewing the stator lamination stacks or rotor magnets, arranging proper winding distributions and incorporating other motor design features reduces cogging torque partially, but does not completely eliminate it. Moreover, special machine design processes add addition complexity to the production process, which results in higher machine cost [18].
The second approach, which is of our interest, concentrates on using an additional control effort to compensate for the periodic torque pulsations. Some methods rely on pre-programed stator current excitation to cancel torque harmonics. However, accurate information about the PMSM parameters is required, and a small error or variation in these parameters can produce higher torque ripple due to the open-loop control. As an alternative, closed-loop control algorithms with online estimation of parameters and adaptive control algorithms have been proposed to reduce torque ripple. One possible approach relies on a closed-loop speed regulator to attenuate indirectly torque pulsations since all possible sources of torque ripple are observable from rotor speed, and hence this method has potential for complete torque ripple minimization. Repetitive Control techniques incorporate a sinusoidal control component to deal with periodic torque pulsations [19][20][21][22][23] while Iterative Learning Control (ILC) is implemented in the frequency domain to reduce torque ripple, by means of Fourier series expansion [24][25][26][27][28][29]. Some recent papers deal with learning control algorithms for Permanent

Magnet
Step Motors [30][31][32], by identifying the Fourier coefficients of any truncated approximation and implementing Iterative Learning techniques, providing an experimental comparison for both methods. Adaptive techniques have been proposed based on the spectrum of the torque perturbation using some theoretical developments.
In this paper, a new self-tuning algorithm is developed for determining the Fourier Series Controller coefficients with the aim of reducing the torque ripple in a PMSM, thus allowing for a smoother operation. This algorithm adjusts the controller parameters based on the component's harmonic distortion in the time domain of the compensation signal. The estimated Fourier coefficients are used by a nonlinear controller which achieves accurate and ripple-reduced torque control. Experimental evaluation was performed on a DSP-controlled PMSM evaluation platform and test results obtained verify the effectiveness of proposed self-tuning algorithm, with the Fourier series expansion scheme, in reducing the torque ripple.
This paper is organized as follows: A model of the Permanent Magnet Synchronous Motor is presented in Section 2. The new self-tuning Fourier Coefficient Algorithm is introduced in Section 3. Section 4 describes the experimental setup, and the experimental results are presented in Section 5. Finally, in Section 6 concluding remarks are provided.

Model of PMSM
In this section, a standard PMSM model [33] is revised and additional considerations are explained so torque ripple sources are clarified. For a three-phase PMSM, the flux linkages Ψ related to the mutual and self-inductances and currents i are given as: In matrix form: The stator windings voltages depend on the winding resistance and flux linkages : Rewriting this expression in matrix form: The stator windings are displaced by 120°, and the flux linkages Ψ , Ψ , Ψ established by the permanent magnet, which are periodic functions of , are assumed to be sinusoidal with magnitude Ψ : From Equation (3), assuming is constant: Defining , we have: Ψ cos cos cos (7) Hence, in Cauchy form, by using : Incorporating the transient behavior of the mechanical system, where electric torque , load torque , viscous friction coefficient and inertia moment are used: where mechanical position and velocity are related by .
To find the electromagnetic torque developed , where is the permanent magnet energy, the co-energy is used: Therefore, we have the following formula to calculate the electromagnetic torque for the three-phase -pole permanent-magnet synchronous motors: Hence: Using the electrical angular velocity and displacement " ", related to mechanical angular velocity and displacement as and , results in the following equation: Regarding the implicit time reparameterization to express the time functions acceleration and the speed in Equation (14) as functions of the rotor position, the relation rotor position-time is guaranteed to be invertible for the total rotor position (not only for one revolution range), if rotor position is a monotonic function of time like happen for a non-cero angular speed of constant sign.
To control the angular velocity, one regulates the currents fed or voltages applied to the stator windings. To maximize the electromagnetic torque developed, the motor should be fed by a balanced three-phase current set: Generating an electromagnetic torque: To produce the specified current, the balanced three-phase voltages are given as: To simplify the control of PMSM, it is a common practice to transform the equations from three-phase voltages to the 0 variables for the rotor reference frame [34].
In matrix form, the mathematical model of the PMSM in the rotor reference frame is given as: The required currents to regulate the angular velocity of PMSM and guarantee balanced operating conditions are given as: And assuming that inductances are negligible, the applied voltages should be:

Additional Considerations
In order to understand torque ripple in PMSM we have to reconsider some assumptions from the previous model.

Non-Sinusoidal Flux Linkages
Flux linkages are not perfectly sinusoidal so the electromotive force differs from cosine function and applying cosine currents to the stator windings produces torque ripples. The induced non-cosine electromotive forces are all assumed to be periodic functions with a peak value [35]: where the functions , , and have the same shape as , , and with a maximum magnitude of ±1.
Since electromagnetic torque is given by: Using Equation (21), we finally have: where is still independent of frequency, but in this case current waveforms should be calculated to produce constant torque.

Non-Constant Inductances
From Equation (1), electromotive force can be calculated by: Without assuming constant : The second term from Equation (25) produces torque ripple due to inductance angular variations, and it is associated to differences in winding inductances of the stator.

Stator Yoke Reluctance Variations
From a macroscopic viewpoint, the torque produced in a PMSM is given by [35]: As mentioned before, the first term appears when motor construction causes the winding inductance to vary as a function of position, and third term describes the mutual torque that is used to make the motor shaft turn. Additionally the second term describes cogging torque that appears whenever rotor magnetic flux travels through the varying reluctance of stator yokes, attempting to align with the stator teeth or poles independent of any current. When motor shaft is rotated by hand, the pulsations felt are caused by cogging torque.

Self-Tuning Fourier Coefficient Algorithm
As stated in the previous section, torque ripples arise from non-sinusoidal flux density distribution around the air-gap and variable magnetic reluctance due to stator slots distribution. These torque ripples change periodically with rotor position and are apparent as speed variations particularly at low speeds.
These periodic torque ripples θ , with period 2π can be represented in the form of a Fourier series: where , , and are unknown constant vectors. Since cogging torque and harmonic components of the non-sinusoidal electromotive force depend on the slot distribution, torque ripple is a periodic function of the position and can be considered anti-symmetric and modeled by the sinusoidal components.
θ sin θ Considering the inertia moment of the system , the acceleration , angular velocity , in relation to θ , are given by: To compensate for the velocity ripple a control voltage should be introduced where is the voltage constant: Introducing , the control voltage can be written, as function of the position θ , as: For each term cos θ the angular position ripple θ can be approximated by a sinusoidal function, and because of speed variations its temporal representation of cos θ is distorted, thus we can use a measure of its distortion S to iteratively adjust its coefficients until distortion is reduced by regulating θ . Let 2π be the spatial period for a complete mechanical revolution: This algorithm permits adjusting the control voltage parameters, adapting for changes in the torque ripple, and the parameter δ allows for controlling the adjusting speed. Demonstration: While the shape of the cogging torque is a complex function of motor geometry and material properties, here it is approximated by a sinusoidal function and consequently the angular position ripple is also approximated by a sinusoidal function.
Assuming that angular position is given by θ , were nominal angular position " " comes from the nominal constant speed of the rotor " ", and the angular position ripple " " corresponds to the angular lag or advance (from nominal angular position), produced by periodic perturbation such as cogging torque. Then the angular velocity , and angular position ripple θ are given by: For each term cos θ , according to Fourier series methodology, its value is in theory determined by: were T represent the temporal period for a complete mechanical revolution. In practice, is not necessarily a periodic function of time and synchronization of the controller to the torque perturbation could be difficult to achieve.
Using Equations (35) and (36) in Equation (37): Recognizing that the second term is equal to zero, because can be rewritten as cos : Finally: when the rotor speed is not constant or periodic of unknown period it is preferable to replace T by τ to allow for a fix parameter. Furthermore instead of computing , because the angular velocity is changing, the integral term can be used to iteratively adjust the coefficient , through the gain factor δ as proposed in Equations (33) and (34).  When steady state is reached, the Fourier Series Controller is applied and it provides the additional compensation so as to minimize torque ripple. Conventional PI current controllers that generate the control voltages in accordance with the field oriented control are used in the inner loop. The current controllers work with a sample time of 500 μs and gains are set as: K p = 1, K i = 80, all variables are considered in per unit values and the δ parameter is set to 0.02. Figure 2 shows the configuration of the experiments. A TMDSHVMTRPF development system with a F28035 DSP control card is connected to the EMJ-04APB22 four pole pairs Permanent Magnet Synchronous Motor with the following parameters: 200 V, 2.7 A, 400 W maximum power, 300 rpm rated speed, 4.7 Ω, 0.014 H stator resistance and inductance, and 2500 PPR incremental encoder attached. Measurements of the variables were taken at the PWMDAC ports of the TMDSHVMTRPF  The performance evaluation of the controller with the proposed self-tuning algorithm is presented in the following section.

Experimental Results
To verify the performance of the proposed self-tuning algorithm with the Fourier series expansion scheme, experiments were performed using the setup described in the preceding section. The experiments were conducted for speeds lower than 10% of the motor´s nominal speed. The performance criterion used to evaluate the performance of the proposed scheme for torque ripple minimization is the variation of the angular speed determined from the angular position measurements from the encoder.
The Standard Field Oriented Control Figure 3 shows the angular position of the motor versus time, the slope of the triangular waveform change reflecting speed variations. In Figure 4 a cosine function of the angular position, with the same frequency as the perturbation fundamental frequency, is plotted against time, showing a distortion shape caused by speed variation that can be used to adjust the Fourier coefficients. Figure 5 presents the speed ripple, although it is only 1.6% of the reference speed (4.4 rpm of 273 rpm), it is responsible for distorting the previous two waveforms.   The proposed self-tuning algorithm with the Fourier series expansion scheme (for the first two terms) Figure 6 shows a reduction in angular position waveform distortion. Figure 7 verifies that the fundamental cosine function shape also improved. Figure 8 presents a 2 rpm peak to peak speed ripple which is half of the original variation as shown in Figure 5. The waveform in Figure 9 corresponds to the control signal u(θ) in per unit values.    Figure 13 presents the control signal u(θ), although the wave forms in Figures 9 and 13 are substantially different, for this experiment the results are similar and perhaps it is because torque ripple is almost sinusoidal. Figures 14-17 shows that the second and fourth harmonic cosine function shape also improved. Finally Figure 18 shows that speed can be reduced to 2.7% of nominal speed while the motor starts to malfunction at 5.7% of nominal speed with only FOC control.

Conclusions
In this paper has been presented an adaptive self-tuning algorithm for determining the Fourier coefficients of the controller with the aim of reducing the torque ripple in a PMSM. Its implementation is simple and represents a good alternative for minimizing torque ripple, cogging torque and nonsinusoidal electromotive torque variations due to its periodic nature. The proposed scheme does not require previous knowledge of the motor parameters. The performance of the proposed scheme has been evaluated through experimentation and test results confirm 50% speed ripple reduction (from 4.4 rpm to 2 rpm peak to peak speed ripple). Further research should be conducted to extend these results to applications where load torque varies as periodic function, which is not considered in this work.