Next Article in Journal
Transformer Fault Diagnosis Method Based on TimesNet and Informer
Previous Article in Journal
Prediction of Surface Topography in Robotic Ball-End Milling Considering Tool Vibration
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Combined Fractional Order Repetitive Controller and Dynamic Gain Regulator for Speed Ripple Suppression in PMSM Drives

1
School of Marine Engineering, Dalian Maritime University, Dalian 116026, China
2
School of Navigation and Naval Architecture, Dalian Ocean University, Dalian 116023, China
*
Author to whom correspondence should be addressed.
Actuators 2024, 13(2), 73; https://doi.org/10.3390/act13020073
Submission received: 27 December 2023 / Revised: 5 February 2024 / Accepted: 9 February 2024 / Published: 14 February 2024
(This article belongs to the Section High Torque/Power Density Actuators)

Abstract

:
Repetitive control (RC) has been widely used in many fields due to its excellent ability to suppress periodic disturbances. However, when the permanent magnet synchronous motor (PMSM) operates at variable speeds, the speed loop sampling frequency is usually not equal to an integer multiple of the fundamental frequency of speed ripple, which prevents disturbances from being completely suppressed. In addition, the open-loop gain of the motor control system with RC is too large at certain frequencies, resulting in excessive speed overshoot during startup and loading. To solve these two problems, this paper proposes a fractional order repetitive control (FORC) strategy with dynamically adjustable gain. A fractional order delay link is introduced to make up for the shortcomings of the conventional repetitive controller (CRC) in its ability to suppress periodic speed ripples when the sampling frequency is not an integer multiple of the fundamental frequency of the motor. Then, to weaken the speed overshoot caused by RC, a nonlinear function fal(e,α,δ) is added in the front of the FORC to dynamically adjust the FORC gain. Simulation and experimental results verify the effectiveness of the proposed method.

1. Introduction

In recent decades, permanent magnet synchronous motors (PMSMs) have been widely used in many fields, such as precision machine tools, electric propulsion ships, automobiles, and household appliances [1,2,3]. Compared to induction motors, PMSMs are favored for high-performance servo applications due to their high efficiency, high power density, and large torque-to-inertia ratio. However, the PMSM vector control system has a series of non-ideal factors, such as current measurement error, a dead zone effect, cogging torque, and flux harmonics [4]. These non-ideal factors aggravate steady-state torque/speed fluctuations and increase the harmonic current content in the motor, which is unacceptable in applications requiring a speed-ripple-free performance in the motor [5]. In electric vehicle applications, the cogging torque and flux harmonics cause low-frequency speed fluctuations, which can make passengers uncomfortable [6]. The torsional vibrations in elastic drive systems caused by speed fluctuations can lead to shafting cracking and/or fatigue cycles [7]. Therefore, it is necessary to suppress the speed fluctuations in PMSMs caused by non-ideal factors.
Many effective methods have been proposed in the literature to suppress the adverse impact of these non-ideal factors on the control performance of PMSMs [8,9,10,11,12,13]. In [8], an adaptive linear neuron-based dead time compensation method is proposed for vector-controlled PMSM drives, but with a low response at low speeds and without a design standard for learning rate. Reference [9] proposes a self-calibration strategy for the phase current sensor, but this method needs to change the standard connection of the current sensor, and it can only be used in driving systems using a Hall effect current sensor. In [10], an offset error compensation method that considers the influence of the outer loop controllers is applied to improve the motor’s dynamic performance. However, this method may fail when the current controller is saturated. In references [11,12,13], parallel resonant controllers and PI controllers are used to suppress the periodic speed fluctuations in the PMSM caused by the current measurement errors, dead zone effect, load disturbance, and other factors, but the multi-resonant controllers increase the computational burden. Reference [14] discusses the negative effect of current measurement errors from the perspective of flux linkage estimation and uses the current loop output results to construct error observers. However, this method is limited by the motor speed and load in the practical application. Reference [15] proposes a robust iterative learning control strategy with sliding mode control and iterative learning control to suppress the torque ripple in a PMSM.
The essential reason why current measurement error causes steady-state speed ripples in PMSMs is that the q-axis steady-state current is not a constant. It includes the harmonic components related to the electrical angular frequency, which can be seen as a periodic disturbance in the forward channel of the speed loop [11]. Other non-ideal factors such as the cogging torque, dead time effect, and flux harmonics also bring about periodic torque disturbances. To suppress these periodic disturbances, repetitive controllers are widely used for specific harmonic suppression because they can increase the gains of the control system at the disturbance frequencies [16,17,18,19]. In [16,17], a modified repetitive controller is inserted into the current inner loop to reduce the sixth-order current harmonics caused by the non-sinusoidal back EMF and dead time. However, this type of method cannot suppress the influence of non-ideal factors such as speed loop forward channel disturbances and current measurement errors. Reference [18] proposes a torque ripple reduction strategy for PMSMs that combines angle-based RC and deadbeat current control. However, the principle of parameter selection to ensure the stability of the system is not given. Reference [19] combines angle-based RC and a disturbance observer into a new type of angle-based repetitive observer for the first time to reduce the torque ripple in PMSMs. Reference [20] reviews the robust control strategies widely used for PMSM speed regulation and advises that future research should prioritize controllers suitable for practical applications and with lower costs, such as SMC, PI, and ESO controllers. In our previous work, a plug-in RC strategy was proposed to suppress the speed ripple caused by current measurement errors [21]. However, this strategy still has the following problems: (1) When the motor speed needs to change continuously, the period of the speed ripple is often not an integer multiple of the speed loop sampling period, which makes the fundamental frequency of the RC deviate from that of the speed ripple, resulting in an incomplete suppression of the speed ripple. (2) The high open-loop gain of the RC results in a large overshoot of the motor speed during the periods of startup and loading, which is unacceptable in many industrial applications.
In this paper, an improved fal-FORC strategy is proposed to solve these two problems. Firstly, a fractional order delay link is introduced to make up for the deficiency of the CRC in suppressing the periodic speed ripples at the frequencies of non-integer multiples of the fundamental frequency. Secondly, for the purpose of suppressing the speed overshoot, the nonlinear function fal(e,α,δ) is added in front of the FORC to adjust the FORC gain dynamically. The paper is organized in the following way. Section 2 analyzes the impact of current measurement error and the shortcomings of the CRC, including poor ripple suppression under variable speeds and excessive overshoot. Section 3 elaborates on the proposed fal-FORC strategy and the selection criteria for the related parameters and gives the simulation results. The experimental results are shown in Section 4 to verify the effectiveness of the proposed strategy. Section 5 concludes the paper.

2. Current Measurement Error and CRC Defect Analysis

2.1. Current Measurement Error

The current measurement channel includes Hall effect current sensors, signal matching circuits, noise filter circuits, AD converters, etc. The equipment tolerance, temperature drift, imbalance of the positive and negative supply voltages of the sensor, aging, noise, etc., of these units may cause bias. The current measurement error includes offset error and scaling error, which cause the steady-state torque and speed of the motor to generate first- and second-order ripples (relative to the motor’s fundamental frequency) [3,10], affecting the ride comfort of ships, electric vehicles, and other transportation vehicles.
The research object of this article is a surface-mounted permanent magnet synchronous motor drive system using the id* = 0 control strategy. A structural block diagram of the permanent magnet synchronous motor vector control system considering the current measurement error is shown in Figure 1, where ksp, ksi, kcp, and kci are the proportional integral coefficients of the speed loop and current loop, respectively; Ks and Td are the proportional coefficient and delay/time constant of the inverter, respectively; Ld, Lq, and R are the dq-axis inductance and coil resistance, respectively; E(s) and Ke are the back electromotive force and its coefficient, respectively; J and B are the moment of inertia and the damping coefficient of the motor, respectively; p is the number of motor pole pairs; ψi is the permanent magnet flux linkage; TL is the load torque; Δid_err and Δiq_err are the disturbances introduced by the current measurement error on the dq-axis, respectively; and Δud and Δuq are the dq-axis voltage harmonics caused by the dead zone effect.
Ignore the effects of back electromotive force and inverter delay and select the PI parameters of the current inner loop to offset the electrical time constant of the motor. The current loop transfer function is equivalent to Gc(s) = ωcu/(s + ωcu), where ωcu is the bandwidth of the current loop. The transfer function between the q-axis current measurement error Δiq_err(s) and the rotational speed error Δnm(s) can be obtained as
G error ( s ) = Δ n m ( s ) Δ i q _ err ( s ) = 1.5 p ψ i G c ( s ) / ( J s + B ) 1 + 1.5 ( k sp s + k si ) p ψ i G c ( s ) / s ( J s + B ) ,
Offset error refers to a certain amount of dc component superimposed on the actual sinusoidal current of the motor, which is mainly caused by zero drift, the residual current in the current sensor, operational amplifier deviation, AD converter deviation, etc. [3]. The q-axis current error [10] caused by the offset error is
Δ i q _ offset = a cos ( ω e t + α )   Δ I A _ offset 2 + Δ I A _ offset Δ I B _ offset + Δ I B _ offset 2 ,
α = tan 1 ( 3 Δ I A _ offset / ( Δ I A _ offset + 2 Δ I B _ offset ) ) ,
where a = 2 / 3 ; ΔIA_offset and ΔIB_offset are the offset errors of phases A and B, respectively; and ωe is the electrical angular frequency of the motor.
(1)
Effect of offset error on motor steady-state speed
Substituting Equation (2) into Equation (1), it can be seen that the steady-state speed deviation Δ n r _ s s o f f s e t (t) caused by the offset error can be given by
Δ n r _ ss offset ( t ) = a M 1 cos ( ω e t + α + θ 1 )     Δ I a _ offset 2 + Δ I a _ offset Δ I b _ offset + Δ I b _ offset 2 ,
where M1 = |Gerror(e)|; θ1 = ∠Gerror(e). That is, the offset error will cause the first-order ripple in the motor’s steady-state speed.
Since the current loop bandwidth is generally much larger than the electrical angular frequency of the motor, the current loop transfer function Gc(s) is approximately 1 at this time, and Equation (1) can be simplified into
G error ( s ) = 1.5 p ψ i / ( J s + B ) 1 + 1.5 ( k sp s + k si ) p ψ i / s ( J s + B ) = 1.5 p ψ i J s + 1.5 p ψ i k si / s + ( 1.5 p ψ i k sp + B ) ,
The following conclusions can be drawn from the above equations:
When ω e = 1.5 p ψ i k si / J , the maximum steady-state speed ripple value M1max caused by the offset error is
M 1 max = 1.5 p ψ i 2 1.5 p ψ i k si J + ( 1.5 p ψ i k sp + B ) ,
The larger the PI parameter of the speed loop, the smaller the speed ripple caused by the offset error. The PI parameter selection of the speed outer loop is generally proportional to the motor’s rotational inertia. Therefore, the smaller the rotational inertia, the larger the speed ripple caused by the offset error.
Current sampling includes sensors, operational amplifier conditioning circuits, AD converters, and other units. These processes may cause scaling errors, and the q-axis current error [3] caused by them can be expressed as
Δ i q _ s c a l i n g = k b k a 3 I c o s ( 2 ω e t π 6 ) ,
where ka and kb are scaling error coefficients. If they are not equal to 1, that means that there is a scaling error in the current measurement value. Due to the difference between the two sampling conditioning circuits, kakb. I is the magnitude of the phase current. Substituting Equation (7) into Equation (1), it can be seen that the steady-state speed deviation Δ n r _ s s s c a l i n g (t) caused by the scaling error is
Δ n r _ ss scaling ( t ) = ( k b k a ) I M 2 / 3 cos ( 2 ω e t + π 3 + θ 2 ) ,
where M2 = |Gerror(j2ωe)|; θ2 = ∠Gerror(j2ωe), that is, the scaling error will cause the second-order ripple in the motor’s steady-state speed. The influence of the scaling error is similar to that of the offset error on the steady-state rotation speed at different frequencies and will not be described again.

2.2. Unsatisfactory Ripple Suppression under Variable Speeds

The current measurement error and other non-ideal factors can cause 1st-, 2nd-, 3rd-, 4th-… nth-order speed fluctuating components, which can be well suppressed using a strategy with a plug-in repetitive controller [21]. The structure of the CRC is shown in Figure 2, where krc is the gain in the RC, zN is the delay link, and N is the ratio of the fundamental period of the disturbance signal to the sampling period of the speed loop. Q(z) is a low-pass filter, and C(z) is a phase compensator. The parameter determination criteria of the CRC are given in detail in [21]. The transfer function of the CRC can be expressed as
G RC ( z ) = k rc C ( z ) Q ( z ) z N 1 Q ( z ) z N ,
With the PMSM parameters given in Table 1, when the motor speed nm is 300 [rpm], the fundamental frequency of the disturbance signal f0 is 20 Hz. And the speed loop sampling frequency fs is 1000 Hz. The open-loop amplitude–frequency characteristic of the CRC is shown in Figure 3, where N = fs/f0 = 50.
To effectively suppress the speed ripple at a certain frequency, the open-loop gain in the speed loop controller at that frequency needs to be as large as possible [21]. Figure 3 shows that the CRC can provide a large enough gain at integer multiples of 20 Hz. Therefore, the CRC can perfectly track and suppress a given disturbing signal at specific frequencies.
However, in actual engineering applications, it is difficult to keep the fundamental frequency of the disturbance signal f0 unchanged. When the motor speed changes suddenly, N may be a non-integer value, which means that the fundamental frequency of the signal (speed ripple) that needs to be tracked or suppressed deviates from the fundamental frequency of the CRC, resulting in poor control performance. For example, if the speed reference of the motor changes from 300 [rpm] to 307 [rpm], f0 changes from 20 Hz to 20.47 Hz. With N = round (fs/f0) = 48, the open-loop amplitude–frequency characteristic of the CRC is shown in Figure 4, where the maximum gain (36.7 dB) appears at a frequency of 20.83 Hz, but the open-loop gain is only 12.5 dB at a frequency of f0 = 20.47 Hz. Although the frequency deviation is only 0.36 Hz, the gain decreases by 65.9%, which greatly lowers the ability of the CRC to track or suppress periodic signals at specific frequencies.
From the above analysis, it can be seen that when the motor speed changes continuously, the CRC has an insufficient disturbance suppression capability under the condition pf N not being equal to an integer. The essential reason for this phenomenon is the error introduced when N is rounded. The smaller the N value (at a higher motor speed), the greater the negative effect.

2.3. Excessive Speed Overshoot Caused by the CRC

With the addition of the resonant controller, the gain amplitude around the resonant frequency changes sharply, which easily causes the Nyquist curve to approach the critical point (−1,0). Thus, the sensitivity function of the system is increased, which can aggravate the oscillation of the dynamic regulation process of the system and increase the overshoot [22,23]. The repetitive controller can be considered a combination of a negative proportional gain term, an integral term, and a series of resonant controllers [24]. Therefore, systems with an additional repetitive controller can also lead to a poor dynamic performance and a large overshoot. However, this has rarely been analyzed in the existing literature.
In this paper, the phase compensator adopts the mode of linear phase lead compensation with C(z) = zm, where m is the phase lead compensation value, and zm provides a phase lead angle θ = 180°mω/ωN to compensate for the phase lag in the system [25]. ωN is the Nyquist frequency. Assuming that Q(z) is 1, the differential form of the CRC can be deduced from Equation (9), which is given by
u k = u k N + k rc e k N + m ,
where k = 1,2,3,4 …; u(k) is the output signal sequence of RC; and e(k) is the speed deviation sequence.
Assuming that the fundamental period of the disturbance signal to be suppressed is T0 and the sampling period of the controller is Ts, it can be seen from Equation (10) that the output signal of the CRC at the tk moment is not only related to the output signal of the CRC at the tk-T0 moment but also related to the speed deviation at tkT0 + mTs, which is a certain moment near tk-T0. It is assumed that the system is about to reach a steady state at tk, which means that the difference between the speed reference and the actual speed of the system is small. At this point, the output of the CRC should not be too large. Otherwise, it will produce a large overshoot. However, at tkT0 and tkT0 + mTs, the system is still in a transient process (such as starting or experiencing a sudden load), that is, the speed deviation at tkT0 + mTs is large. So, the output signal u(k) of the CRC at tk is large, which leads to an abnormal overshoot in the motor speed. Moreover, as the CRC is a kind of periodic controller, the speed overshoot at tk will continue to affect the controller output at tk + nT0 (n = 1, 2, 3, …), affecting the actual motor speed at these moments until the speed converges to the speed reference. With a view to reducing the system overshoot, the gain in the repetitive controller should be as small as possible.
A control block diagram of the system with the CRC is presented in Figure 5, where nm*(z) and nm(z) are the speed reference and the feedback speed, respectively; iq*(z) is the q-axis current reference; P(z) is the discrete form of the transfer function 1/(Js + B); PI(z) is the transfer function of the speed loop PI controller; ierr(z) is the equivalent disturbance caused by the non-ideal factors; G(z) = kT·Gc(zP(z) where Gc(z) is the current loop transfer function; and kT is the torque coefficient with kT = 1.5 i.
Defining M(z) as the transfer function of the system without the repetitive controller, it is given by
M ( z ) = P I ( z ) G ( z ) 1 + P I ( z ) G ( z ) ,
Then, the speed deviation e(z) can be given by
e ( z ) = e ( z ) z N Q ( z ) [ 1 k rc C ( z ) M ( z ) ] + [ 1 Q ( z ) z N ] [ n rn * ( z ) + G ( z ) i err ( z ) + T L P ( z ) ] 1 + P I ( z ) G ( z ) ,
When the system is stable, the second term of Equation (12) equals zero. Therefore, in this case, the convergence rate of the speed deviation mainly depends on the first term of Equation (12).
Define H(z) as
H ( z ) = Q ( z ) [ 1 k rc C ( z ) M ( z ) ] ,
It can be seen from Equations (12) and (13) that the speed deviation can converge to zero after one period of the fundamental wave of the disturbance signal if the design of the gain krc and the phase compensator C(z) of the repetitive controller satisfies the condition of krc·C(z) = M(z)−1. However, it is impossible to obtain an accurate mathematical model of the transfer function M(z) in practical engineering. In most practical applications, a linear phase compensator is used because it is simple and feasible. If the speed deviation e(z) requires a fast enough convergence rate, krc should be as large as possible (but no more than 1/|M(z)|) under the condition that the system is stable.
According to the above analysis, the overshoot and the convergence speed have opposite requirements of krc. Therefore, it is not advisable to solve the problem of speed overshoot simply by reducing the value of krc. A saturation-limiting link is generally added to the output of the repetitive controller to suppress the overshoot problem [16,17,20]. However, this makes a windup phenomenon appear in the system, which ultimately leads to performance degradation [26].
In general, it would be better to formulate such a repetitive controller that in a transient process, when the deviation is large, the gain in the repetitive controller should be appropriately reduced to avoid an overshoot. While in the steady-state convergence stage, that is, when the deviation is small, the gain should be as large as possible (under the condition of system stability) to accelerate the convergence speed.

3. The Proposed fal-FORC Strategy

3.1. Principle of FORC

Many actual systems exhibit fractional order dynamic behavior due to their special physical characteristics. They are fractional order systems. When using a fractional order model to describe an object with fractional order characteristics, it can better reveal the essential characteristics and behavior of the object. Correspondingly, for a fractional order model, a corresponding fractional order controller needs to be designed to improve the control effect [27,28]. In [27], a resonant controller with fractional order calculus is proposed to suppress the periodic current harmonics caused by non-ideal factors in the inverter and current measurement errors. Reference [28] applies fractional order PID to an automatic power generation control system and uses a Crow algorithm to optimize the controller parameters, which improves the dynamic performance and robustness of the system.
A structure diagram of FORC is shown in Figure 6, where N can be calculated by
N = 60 p n m T s ,
When N is a non-integer value, it includes an integer part Ni and a decimal part F, that is, N = Ni + F. z F can be fitted as follows:
z F k = 0 n A k z k ,
where k = 0, 1, …, n, and n represents that z-F is fitted using the n-order Lagrange interpolation method [29]. The coefficient Ak can be calculated as follows:
A k = i = 0 i k n F i k i ,   k , i = 0 , 1 ,   , n ,
Then, the Lagrange interpolation remainder is
R n = z F k = 0 n A k z k = ξ F n i = 0 n 1 ( F i ) ( n + 1 ) ! i = 0 n ( F i ) ,
where ξ∈ [Tk, Tk+1]. Tk and Tk+1 are the kth and k + 1th sampling instants. It can be seen from Equation (17) that the Lagrange interpolation remainder Rn decreases as n increases. Accordingly, z F fitted using Equations (15) and (16) is more accurate with a larger n.
Figure 7 shows the amplitude–frequency characteristic curve of z F fitted using the first-order, second-order, and third-order Lagrange interpolation methods. It can be seen from the curve that with an increase in the fitting order, the magnitude of z F is closer to 1 in a wider frequency range, but the corresponding controller structure is more complex. Therefore, considering the trade-off between accuracy and complexity, this paper chooses to use the second-order Lagrange interpolation method to fit z F .
Figure 8 shows the phase–frequency characteristics of z F fitted using the second-order Lagrange interpolation method. It can be seen that z F has the characteristics of a linear phase, and its slope gradually approaches the unit delay link z−1 when F gradually approaches 1. Such amplitude and phase characteristics are very convenient for the design of other parameters and stability analysis of the repetitive controller.
The structure of the FORC used in this paper is shown in Figure 9. Therefore, the transfer function of the FORC is derived as follows:
G FORC ( z ) = k rc C ( z ) Q ( z ) z N i k = 0 n A k z k 1 Q ( z ) z N i k = 0 n A k z k ,
Similarly, if the speed reference of the motor is 307 [rpm] (f0 = 20.47 Hz), it can be deduced that N = fs/f0 = 48.85 = Ni + F with Ni = 48 and F = 0.85. According to Equation (10), the open-loop amplitude–frequency characteristic of the FORC is shown in Figure 10. It can be seen from Figure 10 that the maximum gain point for the FORC appears right at the frequency of 20.47 Hz. As analyzed, the FORC can effectively suppress speed ripples when the pulsation period is not an integral multiple of the speed loop sampling period.

3.2. The Proposed fal-FORC and Parameter Determination

To give the repetitive controller the output characteristic analyzed at the end of Section 2, the nonlinear function fal(e,α,δ) is introduced as the correction factor to adjust the gain in the FORC dynamically. The structure of the proposed fal-FORC is shown in Figure 11, where fal stands for the function fal(e,α,δ), and its expression is
f a l   ( e , α , δ ) = e δ 1 - α | e | δ | e | α sgn   e | e | > δ ,
where e is the input error and δ is the interval length of the linear segment to avoid the high-frequency oscillation caused by large gain when the error is too small [30].
The nonlinear function fal was first proposed by Han and was well applied to his active disturbance rejection control (ADRC) theory to improve the dynamic performance of a system [31]. In reference [32], the PI parameters are automatically adjusted using the fal function to maintain the adaptive ability of the system, improve the dynamic response speed, and enhance the disturbance rejection performance. Reference [33] modifies the sign function in the fal function to eliminate the discontinuity of the nonlinear extended state observer and obtains a novel nonlinear observer to measure and estimate the disturbances, uncertainties, and states of the system. However, when the input deviation of the fal function is too big, the function gain will be small, which may affect the transient response and anti-interference performance of the controller. Therefore, references [34,35] designed linear/nonlinear switching controllers to avoid this problem. Fortunately, the fal function in this article is located in the plug-in repetitive controller, and the system’s anti-interference performance still depends on the speed loop PI controller. Therefore, the transient response and anti-interference performance of the system is almost unaffected by the fal function. The nonlinearity of fal(e,α,δ) is determined by α, a constant between 0 and 1. The smaller the value of α, the larger the nonlinearity. With δ = 0.4, α = 0.6. A comparison between the output characteristics of y = fal(e,α,δ) and the linear function y = e is shown in Figure 12, which shows that when 0 < | e | 0 . 4 , the output of the fal function is linearly related to the input error and larger than the input error value. When 0 . 4 < | e | 1 , the relationship between the output and the input of y = fal(e,α,δ) is nonlinear, and the output of y = fal(e,α,δ) is larger than the input error value. When | e | > 1 , the output of y = fal(e,α,δ) is smaller than the input error value, and the larger the input error, the more obvious the attenuation of the output of the fal function. Therefore, the fal function is considered to have the characteristics of “big error, small gain, small error, big gain” [35]. This means that when the error is large, a slightly smaller gain is used to avoid overshooting. When the error is small, the gain is increased to avoid a slow approach toward the target value due to too low an error and low gain.
To further study the effect of δ and α on the fal function, we define
λ = f a l   ( e , α , δ ) e ,
The influence of different δ values on the performance of the fal function when α = 0.6 is shown in Figure 13, which reveals that a larger δ can result in a wider linearity range (where λ is a constant greater than 1) of the output of the fal function. Moreover, as the value of δ increases, the linear amplifying effect of the fal function on small errors becomes weaker. The purpose of introducing the fal function in this paper is to use its nonlinearity to reduce the overshoot of the system, and its nonlinearity is not affected by δ, so the change in δ has little influence on the ability of the fal function to suppress overshoots. In this paper, δ = 0.4 is selected in Section 4.
Figure 14 shows the influence of different α values on the performance of the fal function when δ = 0.4. It can be seen that the smaller the value of α is, the higher the output nonlinearity of the fal function is. In other words, the smaller the value of α is, the stronger the function of fal in amplifying small errors, and the stronger its function in reducing large errors. Therefore, too small a value of α will lead to too large a gain in the small error interval, which may cause high-frequency oscillations in the system, while too large a value of α (close to 1) means that the fal function loses its ability to reduce the overshoot of the system. In this paper, α is set to 0.6.
The structure of the vector control system of the PMSM drive with the proposed fal-FORC strategy in this paper is shown in Figure 15, where the symbols are described in Table 2. This plug-in structure combines the high dynamics of the PI controller with the good steady-state harmonic suppression capabilities of the repetitive controller and minimizes the mutual interference between the two controllers [36]. It is worth noting that when the traditional vector control method is used, the input signal of the speed outer loop PI controller is the deviation value of the speed, and its expression is shown in Equation (21). When the CRC is inserted into the vector control structure, the input signal of the speed outer loop PI controller is shown in Equation (22). When FORC and fal-FORC are inserted into the vector control structure, respectively, the input signal expressions of the speed outer loop PI controller are as shown in Equations (23) and (24), respectively.
e 1 = n m * n m ,
e 2 = ( 1 + k rc C ( z ) Q ( z ) z N 1 Q ( z ) z N ) ( n m * n m )
e 3 = ( 1 + k rc C ( z ) Q ( z ) z N i k = 0 n A k z - k 1 Q ( z ) z N i k = 0 n A k z - k ) ( n m * n m )
e 4 = ( 1 + λ k rc C ( z ) Q ( z ) z N i k = 0 n A k z - k 1 Q ( z ) z N i k = 0 n A k z - k ) ( n m * n m )

3.3. Stability Analysis

As shown in Figure 5 and Figure 11, the speed deviation e(z) can be expressed as follows:
e ( z ) = n m * ( z ) + G ( z ) i err ( z ) + T L P ( z ) 1 + [ 1 + G fal - FORC ( z ) ] P I ( z ) G ( z ) = 1 1 + P I ( z ) G ( z ) [ z N i + F Q ( z ) ] [ n m * ( z ) + G ( z ) i err ( z ) + T L P ( z ) ] z N i + F Q ( z ) [ 1 f a l k rc C ( z ) M ( z ) ] ,
The PI parameters are designed according to the method in [11]. The speed loop PI parameters are ksp = 0.0368 and ksi = 0.92, and the current-loop PI parameters are kcp = 0.6 and kci = 1080. This parameter setting can ensure the stability of the traditional PI control system without additional repetitive controllers. All the characteristic roots of 1 + PI(z)G(z) = 0 are located within the unit circle. Therefore, as long as the characteristic roots of the denominator of the right half of the above equations are located within the unit circle, the stability of the system with a plug-in repetitive controller can be guaranteed. The stability condition can be derived as follows:
Q ( z ) [ 1 f a l k rc C ( z ) M ( z ) ] = z N i + F < 1 ,

3.3.1. Design of Q(z)

There are normally three forms of Q(z): a constant close to 1 but less than 1, a Butterworth low-pass filter with phase compensation, and a FIR filter with phase compensation. Compared with a constant close to 1, a repetitive control system with a low-pass filter can effectively suppress the ripples within the cut-off frequency of the filter while guaranteeing stability above the cut-off frequency. The advantage of a Butterworth low-pass filter is that there is no steady-state error, and it has sufficient attenuation in the high-frequency band. However, this kind of filter often produces a large phase lag, which has a negative impact on the design of subsequent parameters. Therefore, it is often necessary to design a phase compensator separately for it, which has a complicated structure.
A linear-phase FIR filter is convenient in design and can be precisely compensated for using a non-causal phase lead term to achieve zero phase delay. Its expression can be given as follows:
Q ( z ) = i = 0 m a i z i + i = 1 m a i z i ,
where a 0 + 2 i = 1 m a i = 1 . The larger the value of a 0 is, the lower the cutoff frequency of the filter is. The filter designed in this article is
Q ( z ) = 0.45 z 1 + 0.1 + 0.45 z ,

3.3.2. Design of C(z)

Since Q(z) is close to 1 at low frequencies, the stability condition in Equation (26) can be simplified as follows:
[ 1 f a l k rc C ( z ) M ( z ) ] < 1 ,
where M(z) can be expressed as M ( e j ω ) = N M ( e j ω ) exp ( j θ M ( e j ω ) ) and C(z) can be expressed as C ( e j ω ) = N C ( e j ω ) exp ( j θ C ( e j ω ) ) [25]. N M ( e j ω ) and N C ( e j ω ) are magnitude characteristics. θ M ( e j ω ) and θ C ( e j ω ) are phase characteristics. Substitute M ( e j ω ) and C ( e j ω ) into Equation (29), and the following expression is obtained:
1 f a l k rc N M ( e j ω ) N C ( e j ω ) exp ( j θ M ( e j ω ) + j θ C ( e j ω ) < 1 ,
where krc, N M ( e j ω ) , and N C ( e j ω ) are all positive values. Hence, the plug-in repetitive control system will be stable when the following two conditions are satisfied.
0 < f a l k rc < 2 min ( cos ( θ M ( e j ω ) + θ C ( e j ω ) ) ) max ( N M ( e j ω ) N C ( e j ω ) ) ,
θ M ( e j ω ) + θ C ( e j ω ) < 90 ,
Thus, it can be seen that the phase compensation is significant for the stability of the plug-in repetitive control system. In this paper, the phase compensator adopts the mode of linear phase lead compensation with C(z) = zm, where m is the phase lead compensation value and zm provides a phase lead angle to compensate for the phase lag in the system [25].
Figure 16 is a Bode diagram of zmM(z) under different m values. It can be seen that when m is selected between 2 and 6, the stability requirement of Equation (32) can be satisfied. In order to enable zm to compensate for the phase angle to about 0 degrees in the low-frequency band, m = 5 is selected.

3.3.3. Design of krc

The RC gain krc should satisfy the condition in Equation (31). According to Figure 16, it can be seen that when m = 5, the following expression can be obtained:
max ( N M ( e j ω ) ) = 1.31 ,
min ( cos ( θ M ( e j ω ) + θ C ( e j ω ) ) ) = cos ( 27.4 ) = 0.888 ,
Substituting Equations (33) and (34) into Equation (31), the following expression can be obtained:
0 < f a l k rc < 1.355 ,
As shown in Figure 13, when α = 0.6 and δ = 0.4, the maximum value of the fal function is 1.4. Thus, when the stability condition is satisfied, the value range of krc is
0 < k rc < 0.968

3.4. Simulation Results

To verify the correctness of the above analysis, the Simulink software is used to build the motor control simulation model of the four methods PI, CRC, FORC, and fal-FORC mentioned above, and the effectiveness of the proposed method is verified using a simulation comparison. The parameters of the PMSMs are listed in Table 1. The artificial current measurement errors are added to the motor drive system with ka = 1.1, kb = 0.9, ΔIA_offset = 0.2 A, and ΔIB_offset = 0.05 A. The sampling frequency of the speed loop is 1 kHz. The current loop PI parameters are adjusted by the current loop bandwidth ωcu: kcp = ωcuLdq, kci = ωcuR. In this paper, the current loop bandwidth ωcu is selected as 2100 [rad/s].
The simulation results are as follows: Figure 17 shows the curves of the speed response with the CRC, with FORC, and without RC under changing speed references, which are 150 [rpm], 203 [rpm], 255 [rpm], and 295 [rpm], respectively. Figure 18 shows the corresponding q-axis current curves. Figure 19 shows the speed responses with fal-FORC and FORC at different speed references.
As can be seen from Figure 17, when the speed reference is 150 [rpm], N = 100, in this case, the CRC can well reduce the motor’s steady-state speed ripples, and it has the same effect as the FORC. However, in the other three cases, the values of N are non-integers, and it is apparent that FORC presents better results than the CRC in suppressing the speed ripples. Similarly, as shown in Figure 18, when N is not an integer, the q-axis current ripple suppression effect of FORC is better than that of the CRC.
Figure 19 shows a comparison of the speed response when applying the proposed fal-FORC strategy and the FORC strategy. It can be seen that when the speed reference is 150 [rpm], the overshoots in the motor speed can be effectively reduced using fal-FORC. In addition, the simulation results indicate that the speed drop in the motor when loading is almost the same when using these four methods. This is because the proposed method aims to reduce the speed ripples, and the motor’s anti-interference performance still relies on the PI controller.

4. Experimental Results

The experiments are implemented for two purposes. One is to verify that compared with the CRC, the FORC has a better suppression ability for speed ripples for which the period is not an integral multiple of the speed loop sampling period. The other is to verify that the vector control system using the proposed fal-FORC has a smaller overshoot than that using the FORC only during the stages of starting and sudden loading. The experimental platform is shown in Figure 20, which adopts the form of a pair of PMSMs hauling each other. The parameters of the PMSMs are listed in Table 1. The model of the motor control system is established using Simulink and then transformed into C code using the code automatic generation tool. The generated C code is downloaded to the F28379D chip of the TI company. After adding fal-FORC, the algorithm execution time of the speed outer loop is 2335 clock cycles longer than the traditional PI algorithm, requiring approximately 11.68 μs of execution time. The sampling period of the speed outer loop is 1 ms, and the sampling period of the current inner loop is 0.1 ms, which means that there is enough time to implement the improved method proposed in this article. The motor position and speed information is provided using a 1000-line incremental encoder mounted onto the non-drive end of the PMSM. The experimental results are collected on the monitoring computer using the developed communication program.

4.1. Verification of the Effectiveness of the FORC Strategy

The experimental results under different values of m at a speed of 300 [rpm] are shown in Figure 21. The artificial current measurement errors are added to the motor drive system with ka = 1.1, kb = 0.9, ΔIA_offset = 0.2 A, and ΔIB_offset = 0.05 A. ka and ΔIA_offset and kb and ΔIB_offset are the A- and B-phase current scaling and offset errors, respectively. It can be seen from Figure 21 that the system has a relatively fast response when m = 5. Thus, C(z) = z5 is adopted in this paper.
Figure 22 shows the experimental results under different values of krc at 300 [rpm]. It can be seen that the convergence speed of the system response becomes fast with an increase in krc. But the consequent overlarge speed overshoot is another consideration. Hence, the value of krc is finally selected as 0.6 for a compromise.
In fact, the method proposed in this article reduces the speed ripple by suppressing the motor q-axis current ripple (electromagnetic torque ripple). To verify this, Figure 23 shows the curves of the speed and q-axis current response with the CRC, with FORC, and without RC under changing speed references, which are 150 [rpm], 203 [rpm], 255 [rpm], and 295 [rpm], respectively. The sampling frequency of the speed loop is 1 kHz, and the corresponding values of N in the four cases are 100, 73.89, 58.82, and 50.84, respectively. In Figure 23 and Figure 28, the motor is started with loading (the current is about 1 A at this time, corresponding to 15% of the motor’s rated torque). The first loading is 21% of the rated torque, and the current changes by about 1.5 A. The remaining three cases are all loaded at 15%. The rated torque and current are each increased by 1 A, and the final load is approximately 81% of the rated torque. As can be seen from Figure 23, when the speed reference is 150 [rpm], N = 100, in this case, the CRC can well reduce the motor steady-state speed and q-axis current ripples, and it has the same effect as the FORC. However, in the other three cases, the values of N are non-integers, and it is apparent that FORC presents better results than the CRC in suppressing the speed and q-axis current ripples.
The FFT analysis results on the steady-state speed with four different speed references are shown in Figure 24, Figure 25, Figure 26, and Figure 27, respectively. It can be seen that when the speed reference is 150 [rpm], the CRC and FORC can both reduce the first-order and second-order pulsation components in the steady-state speed from 11.8% and 5.8% to both less than 0.5%. However, as shown in Figure 25, when the speed reference increases to 203 [rpm], N is no longer an integer, and there are still small amounts of the first-order and second-order pulsation components (1.12% and 0.74%) remaining in the steady-state speed of the motor when applying the CRC strategy. In contrast, with the strategy of FORC, the first-order and second-order pulsation components are only 0.17% and 0.16%. The FFT analysis results in Figure 26 and Figure 27 can also prove that FORC performs better than the CRC when the speed pulsation period is not an integer multiple of the speed loop sampling period.
To further prove the performance of the FORC at higher speeds when N is a non-integer, the speed references are continuously increased from 0 to 300 [rpm], 367 [rpm], 430 [rpm], and 488 [rpm], and the corresponding values of N are 50, 40.87, 34.88, and 30.74, respectively. It can be seen from Figure 28 that when the speed reference is 300 [rpm], the FORC and CRC have the same effect on the speed and q-axis current ripple suppression. In contrast, when the speed increases and N is no longer an integer, FORC’s ability to suppress speed and q-axis current ripples is significantly stronger. By comparing Figure 23 and Figure 28, it can be seen that the higher the motor speed, the more significant the ripple suppression effect of FORC when compared with the CRC. This is because the higher the motor speed, the smaller the value of N. N is rounded to the nearest integer for the strategy with the CRC, and the smaller the value of N, the larger the relative deviation caused by rounding. In this case, the suppression effect of the CRC is in sharp contrast to that of FORC.
Due to the filtering effect of the motor shaft inertia, high-frequency harmonics are difficult to reflect in the motor speed. To illustrate this issue, a set of higher-speed experiments are conducted. The reference speeds are set to 900 [rpm] and 1200 [rpm], respectively, and then the load of 21% rated torque is increased at 2.3 s and 6.3 s, respectively. The experimental results are shown in Figure 29. It can be seen that the motor speed ripple is very small. At this time, the current measurement error is mainly reflected in the q-axis current ripple. When the rotational speed is 1200 [rpm], the proposed method can effectively suppress the q-axis current ripple, but the rotational speed pulsation at this time is almost the same as before the improvement.

4.2. Effectiveness of the fal-FORC Strategy

Figure 30 and Figure 31 show a comparison of the speed response when applying the proposed fal-FORC strategy and the FORC strategy. It can be seen that when the speed reference is 150 [rpm], the overshoots in the motor speed with FORC during startup and loading are 95 [rpm] (63.3%) and 46 [rpm] (30.7%), respectively, which are obviously unacceptable. In contrast, the speed overshoots of the motor with the fal-FORC strategy are 29 [rpm] (19.3%) and 26 [rpm] (17.3%), respectively. Obviously, the speed overshoots can be effectively reduced using fal-FORC. Similarly, it can be seen from Figure 31 that when the speed reference is 300 [rpm], the speed overshoots of the motor with the fal-FORC strategy during motor starting and loading are 65 [rpm] (21.7%) and 41 [rpm] (13.7%) respectively, which are smaller than the overshoots of 119 [rpm] (39.7%) and 46 [rpm] (15.3%) when using FORC. Therefore, the proposed fal-FORC strategy is an effective control strategy for reducing overlarge speed overshoots. In addition, the experimental results in Section 4 demonstrate that the anti-interference performance of the motors using the four methods is almost the same, and the speed drop during loading is basically the same. The anti-interference performance of the motor still relies on the PI controller, which is consistent with the simulation analysis.
To analyze the difference in the characteristics between the simulation and experimental results, Table 3 records the FFT analysis results and speed overshoot values of the simulation and experimental results. The FFT analysis data are all simulation or experimental results from when the motor speed is 255 [rpm]. The results show that after adopting the compensation method, the speed harmonics in both the simulation and experiment are significantly reduced, and the q-axis current harmonics in the simulation are also significantly reduced. In the experiment, the q-axis current harmonics can be reduced by about 80%. This is because in the actual motor system, in addition to the current measurement error, which is the main source of the first and second harmonics, there will also be a pulsating component in the load torque. The proposed method will generate the opposite current pulsating component to offset its influence and suppress the speed ripple. But the current ripple still exists. The simulation results on the speed overshoot are basically consistent with the experimental results. The fal function can effectively reduce the speed overshoot caused by repetitive controllers.

5. Conclusions

The fal-FORC strategy proposed in this paper can well solve the two problems generated by the CRC strategy in the suppression of the periodic speed fluctuations caused by non-ideal factors in a PMSM drive system. The contributions of this paper are presented as follows:
(1)
A theoretical analysis of the two problems, the unsatisfactory ripple suppression of the CRC under variable speeds and the overlarge speed overshoot caused by the CRC, are elaborated on before the design of fal-FORC.
(2)
A fractional order delay link is introduced to solve the first problem that the CRC strategy has a worse performance in suppressing the periodic speed ripples at frequencies of non-integer multiples of the fundamental frequency. The Lagrange interpolation method is used to fit the fractional delay term. The simulation and experimental results can verify the effectiveness of the FORC strategy.
(3)
The nonlinear function fal(e,α,δ) is designed before FORC, and the basis for the parameter selection of the controller is given to ensure the stability of the system. This method can dynamically adjust the gain in the repetitive controller, effectively reduce the speed overshoot caused by excessive open-loop gain, thereby improving the transient process of motor starting and loading.
The repetitive controller attached to the outer speed loop can effectively suppress the motor speed ripple, but it cannot suppress the periodic disturbance in the d-axis and has a limited improvement effect on the phase current distortion. How to suppress the periodic disturbance introduced by the current measurement error in the d-axis feedback channel is one of our future research directions.

Author Contributions

Conceptualization, H.G. and F.Z.; methodology, H.G., F.Z. and Q.Z.; software, H.G. and F.Z.; validation, H.G., F.Z. and Q.Z.; formal analysis, H.G. and F.Z.; investigation, H.G., F.Z. and Y.L.; resources, H.G.; data curation, H.G. and F.Z.; writing—original draft preparation, H.G., F.Z. and J.X.; writing—review and editing, H.G., F.Z. and T.X.; visualization, H.G., F.Z. and T.X.; supervision, H.G., F.Z. and Y.L.; project administration, H.G., F.Z. and Y.L.; funding acquisition, H.G., F.Z., Y.L. and Q.Z.; All authors have read and agreed to the published version of the manuscript.

Funding

This research is funded by: (a) The National Key R&D Program of PR China (Grant No. 2023YFB4301704); (b) National Natural Science Foundation of China (Grant No. 52201354, 51979021); (c) Fundamental Research Funds for the Central Universities (Grant No. 3132023621).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data is contained within the article.

Conflicts of Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

References

  1. Zhu, X.; Shu, Z.; Quan, L.; Xiang, Z.; Pan, X. Design and Multicondition Comparison of Two Outer-Rotor Flux-Switching Permanent-Magnet Motors for In-Wheel Traction Applications. IEEE Trans. Ind. Electron. 2017, 64, 6137–6148. [Google Scholar] [CrossRef]
  2. Ren, J.-J.; Liu, Y.-C.; Wang, N.; Liu, S.-Y. Sensorless control of ship propulsion interior permanent magnet synchronous motor based on a new sliding mode observer. ISA Trans. 2015, 54, 15–26. [Google Scholar] [CrossRef] [PubMed]
  3. Zhang, Q.; Guo, H.; Liu, Y.; Guo, C.; Zhang, F.; Zhang, Z.; Li, G. A Novel Error-Injected Solution for Compensation of Current Measurement Errors in PMSM Drive. IEEE Trans. Ind. Electron. 2023, 70, 4608–4619. [Google Scholar] [CrossRef]
  4. Houari, A.; Bouabdallah, A.; Djerioui, A.; Machmoum, M.; Auger, F.; Darkawi, A.; Olivier, J.-C.; Benkhoris, M.F. An Effective Compensation Technique for Speed Smoothness at Low-Speed Operation of PMSM Drives. IEEE Trans. Ind. Appl. 2018, 54, 647–655. [Google Scholar] [CrossRef]
  5. Hu, M.; Hua, W.; Wu, Z.; Dai, N.; Xiao, H.; Wang, W. Compensation of Current Measurement Offset Error for Permanent Magnet Synchronous Machines. IEEE Trans. Power Electron. 2020, 35, 11119–11128. [Google Scholar] [CrossRef]
  6. Chuan, H.; Fazeli, S.M.; Wu, Z.; Burke, R. Mitigating the Torque Ripple in Electric Traction Using Proportional Integral Resonant Controller. IEEE Trans. Veh. Technol. 2020, 69, 10820–10831. [Google Scholar] [CrossRef]
  7. Mauri, M.; Rossi, M.; Bruha, M. Generation of Torsional Excitation in a Variable-Speed-Drive System. In Proceedings of the 2016 International Symposium on Power Electronics, Electrical Drives, Automation and Motion (SPEEDAM), Capri, Italy, 22–24 June 2016; pp. 510–515. [Google Scholar]
  8. Qiu, T.; Wen, X.; Zhao, F. Adaptive-Linear-Neuron-Based Dead-Time Effects Compensation Scheme for PMSM Drives. IEEE Trans. Power Electron. 2016, 31, 2530–2538. [Google Scholar] [CrossRef]
  9. Lu, J.; Hu, Y.; Liu, J.; Wen, H. Self-Calibration of Phase Current Sensors with Sampling Errors by Multipoint Sampling of Current Values in a Single PWM Cycle. IEEE Trans. Ind. Electron. 2021, 68, 2942–2951. [Google Scholar] [CrossRef]
  10. Lee, K.-W.; Kim, S.-I. Dynamic Performance Improvement of a Current Offset Error Compensator in Current Vector-Controlled SPMSM Drives. IEEE Trans. Ind. Electron. 2019, 66, 6727–6736. [Google Scholar] [CrossRef]
  11. Zhang, Q.; Guo, H.; Guo, C.; Liu, Y.; Wang, D.; Lu, K.; Zhang, Z.; Zhuang, X.; Chen, D. An adaptive proportional-integral-resonant controller for speed ripple suppression of PMSM drive due to current measurement error. Int. J. Elect. Power Energy Syst. 2021, 129, 106866. [Google Scholar] [CrossRef]
  12. Xia, C.; Ji, B.; Yan, Y. Smooth Speed Control for Low-Speed High-Torque Permanent-Magnet Synchronous Motor Using Proportional-Integral-Resonant Controller. IEEE Trans. Ind. Electron. 2015, 62, 2123–2134. [Google Scholar] [CrossRef]
  13. Gao, J.; Wu, X.; Huang, S.; Zhang, W.; Xiao, L. Torque ripple minimisation of permanent magnet synchronous motor using a new proportional resonant controller. IET Power Electron. 2017, 10, 208–214. [Google Scholar] [CrossRef]
  14. Cho, K.-R.; Seok, J.-K. Pure-Integration-Based Flux Acquisition With Drift and Residual Error Compensation at a Low Stator Frequency. IEEE Trans. Ind. Appl. 2009, 45, 1276–1285. [Google Scholar] [CrossRef]
  15. Liu, J.; Li, H.; Deng, Y. Torque Ripple Minimization of PMSM Based on Robust ILC Via Adaptive Sliding Mode Control. IEEE Trans. Power Electron. 2018, 33, 3655–3671. [Google Scholar] [CrossRef]
  16. Mattavelli, P.; Tubiana, L.; Zigliotto, M. Torque-ripple reduction in PM synchronous motor drives using repetitive current control. IEEE Trans. Power Electron. 2005, 20, 1423–1431. [Google Scholar] [CrossRef]
  17. Tang, Z.; Akin, B. Suppression of Dead-Time Distortion Through Revised Repetitive Controller in PMSM Drives. IEEE Trans. Energy Convers. 2017, 32, 918–930. [Google Scholar] [CrossRef]
  18. Tang, M.; Gaeta, A.; Formentini, A.; Zanchetta, P. A Fractional Delay Variable Frequency Repetitive Control for Torque Ripple Reduction in PMSMs. IEEE Trans. Ind. Appl. 2017, 53, 5553–5562. [Google Scholar] [CrossRef]
  19. Tang, M.; Formentini, A.; Odhano, S.A.; Zanchetta, P. Torque Ripple Reduction of PMSMs Using a Novel Angle-Based Repetitive Observer. IEEE Trans. Ind. Electron. 2020, 67, 2689–2699. [Google Scholar] [CrossRef]
  20. Ullah, K.; Guzinski, J.; Mirza, A.F. Critical Review on Robust Speed Control Techniques for Permanent Magnet Synchronous Motor (PMSM) Speed Regulation. Energies 2022, 15, 1235. [Google Scholar] [CrossRef]
  21. Zhang, Q.; Guo, H.; Liu, Y.; Guo, C.; Lu, K.; Wang, D.; Zhang, Z.; Sun, J. Robust plug-in repetitive control for speed smoothness of cascaded-PI PMSM drive. Mech. Syst. Signal Process. 2022, 163, 108090. [Google Scholar] [CrossRef]
  22. Yepes, A.G.; Freijedo, F.D.; Lopez, O.; Doval-Gandoy, J. Analysis and Design of Resonant Current Controllers for Voltage-Source Converters by Means of Nyquist Diagrams and Sensitivity Function. IEEE Trans. Ind. Electron. 2011, 58, 5231–5250. [Google Scholar] [CrossRef]
  23. Yi, H.; Zhuo, F.; Wang, F. Analysis about Overshoot Peaks Appearing in the Current Loop with Resonant Controller. IEEE J. Emerg. Sel. Top. Power Electron. 2016, 4, 26–36. [Google Scholar] [CrossRef]
  24. Zhao, Q.; Ye, Y. A PIMR-Type Repetitive Control for a Grid-Tied Inverter: Structure, Analysis, and Design. IEEE Trans. Power Electron. 2018, 33, 2730–2739. [Google Scholar] [CrossRef]
  25. Zhang, B.; Wang, D.; Zhou, K.; Wang, Y. Linear phase lead compensation repetitive control of a CVCF PWM inverter. IEEE Trans. Ind. Electron. 2008, 55, 1595–1602. [Google Scholar] [CrossRef]
  26. Shin, H.-B.; Park, J.-G. Anti-Windup PID Controller with Integral State Predictor for Variable-Speed Motor Drives. IEEE Trans. Ind. Electron. 2012, 59, 1509–1516. [Google Scholar] [CrossRef]
  27. Huang, M.; Deng, Y.; Li, H.; Liu, J.; Shao, M.; Fei, Q. Torque Ripple Suppression of PMSM Based on Robust Two Degrees-of-Freedom Resonant Controller. Energies 2021, 14, 1015. [Google Scholar] [CrossRef]
  28. Babu, N.R.; Chiranjeevi, T.; Devarapalli, R.; Knypinvski, L.; Garcia Marquez, F.P. Real-time validation of an automatic generation control system considering HPA-ISE with crow search algorithm optimized cascade FOPDN-FOPIDN controller. Arch. Control Sci. 2023, 33, 371–390. [Google Scholar] [CrossRef]
  29. Zou, Z.-X.; Zhou, K.; Wang, Z.; Cheng, M. Frequency-Adaptive Fractional-Order Repetitive Control of Shunt Active Power Filters. IEEE Trans. Ind. Electron. 2015, 62, 1659–1668. [Google Scholar] [CrossRef]
  30. Hao, Z.; Yang, Y.; Gong, Y.; Hao, Z.; Zhang, C.; Song, H.; Zhang, J. Linear/Nonlinear Active Disturbance Rejection Switching Control for Permanent Magnet Synchronous Motors. IEEE Trans. Power Electron. 2021, 36, 9334–9347. [Google Scholar] [CrossRef]
  31. Han, J. From PID to Active Disturbance Rejection Control. IEEE Trans. Ind. Electron. 2009, 56, 900–906. [Google Scholar] [CrossRef]
  32. Wu, T.; Zheng, Y.; Liu, Q.; Sun, G.; Wang, X.; Li, X. Continuous Commutation Failure Suppression Method Based on Self-adaptive Auto-disturbance Rejection Proportional-integral Controller for HVDC Transmission System. J. Mod. Power Syst. Clean Energy 2020, 8, 1178–1187. [Google Scholar] [CrossRef]
  33. Yue, F.; Li, X.; Zhang, S. Robust Adaptive Integral Sliding Mode Control for Two-Axis Optoelectronic Tracking and Measuring System Based on Novel Nonlinear Extended State Observer. IEEE Trans. Instrum. Meas. 2023, 72, 1–11. [Google Scholar] [CrossRef]
  34. Liu, X.; Li, Y.; Xia, L.; Tan, X.; Cao, X. Research on permanent magnet synchronous motor algorithm based on linear nonlinear switching self-disturbance rejection control. Sci. Rep. 2023, 13, 20133. [Google Scholar] [CrossRef] [PubMed]
  35. Li, J.; Xia, Y.; Qi, X.; Gao, Z. On the Necessity, Scheme, and Basis of the Linear-Nonlinear Switching in Active Disturbance Rejection Control. IEEE Trans. Ind. Electron. 2017, 64, 1425–1435. [Google Scholar] [CrossRef]
  36. He, L.; Zhang, K.; Xiong, J.; Fan, S. A Repetitive Control Scheme for Harmonic Suppression of Circulating Current in Modular Multilevel Converters. IEEE Trans. Power Electron. 2015, 30, 471–481. [Google Scholar] [CrossRef]
Figure 1. Block diagram of PMSM vector control system with current measurement error.
Figure 1. Block diagram of PMSM vector control system with current measurement error.
Actuators 13 00073 g001
Figure 2. The structure of CRC.
Figure 2. The structure of CRC.
Actuators 13 00073 g002
Figure 3. The open-loop amplitude–frequency characteristic of the CRC (N = 50).
Figure 3. The open-loop amplitude–frequency characteristic of the CRC (N = 50).
Actuators 13 00073 g003
Figure 4. The open-loop amplitude–frequency characteristic of the CRC (N = 48).
Figure 4. The open-loop amplitude–frequency characteristic of the CRC (N = 48).
Actuators 13 00073 g004
Figure 5. Idealized control block diagram of the system with CRC.
Figure 5. Idealized control block diagram of the system with CRC.
Actuators 13 00073 g005
Figure 6. A structure diagram of FORC.
Figure 6. A structure diagram of FORC.
Actuators 13 00073 g006
Figure 7. The amplitude–frequency characteristics of z F fitted using Equation (15): (a) n = 1; (b) n = 2; (c) n = 3.
Figure 7. The amplitude–frequency characteristics of z F fitted using Equation (15): (a) n = 1; (b) n = 2; (c) n = 3.
Actuators 13 00073 g007
Figure 8. The phase–frequency characteristics of z F fitted using Equation (15) when n = 2.
Figure 8. The phase–frequency characteristics of z F fitted using Equation (15) when n = 2.
Actuators 13 00073 g008
Figure 9. The structure of the FORC.
Figure 9. The structure of the FORC.
Actuators 13 00073 g009
Figure 10. The open-loop amplitude–frequency characteristic of the FORC (N = 48.85).
Figure 10. The open-loop amplitude–frequency characteristic of the FORC (N = 48.85).
Actuators 13 00073 g010
Figure 11. The structure of the fal-FORC.
Figure 11. The structure of the fal-FORC.
Actuators 13 00073 g011
Figure 12. The output characteristics of fal(e,α,δ) and y = e.
Figure 12. The output characteristics of fal(e,α,δ) and y = e.
Actuators 13 00073 g012
Figure 13. Influence of different δ values on the performance of the fal function with α = 0.6.
Figure 13. Influence of different δ values on the performance of the fal function with α = 0.6.
Actuators 13 00073 g013
Figure 14. δ = 0.4, the effect of different α values on λ.
Figure 14. δ = 0.4, the effect of different α values on λ.
Actuators 13 00073 g014
Figure 15. Structure of the vector control system of PMSM drive with the proposed fal-FORC strategy.
Figure 15. Structure of the vector control system of PMSM drive with the proposed fal-FORC strategy.
Actuators 13 00073 g015
Figure 16. Bode diagram of zmM(z) with different m.
Figure 16. Bode diagram of zmM(z) with different m.
Actuators 13 00073 g016
Figure 17. Curves of the speed response with CRC, with FORC, and without RC under changing speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s).
Figure 17. Curves of the speed response with CRC, with FORC, and without RC under changing speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s).
Actuators 13 00073 g017
Figure 18. Curves in the q-axis current response with CRC, FORC, and without RC under changing speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s).
Figure 18. Curves in the q-axis current response with CRC, FORC, and without RC under changing speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s).
Actuators 13 00073 g018
Figure 19. Speed responses with fal-FORC and FORC at different speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s).
Figure 19. Speed responses with fal-FORC and FORC at different speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s).
Actuators 13 00073 g019
Figure 20. The experimental platform.
Figure 20. The experimental platform.
Actuators 13 00073 g020
Figure 21. Experimental results under different values of m at 300 [rpm].
Figure 21. Experimental results under different values of m at 300 [rpm].
Actuators 13 00073 g021
Figure 22. Experimental results under different values of krc at 300 [rpm].
Figure 22. Experimental results under different values of krc at 300 [rpm].
Actuators 13 00073 g022
Figure 23. Curves of the response with CRC, with FORC, and without RC under changing speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s). (a) Speed. (b) Q-axis current.
Figure 23. Curves of the response with CRC, with FORC, and without RC under changing speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s). (a) Speed. (b) Q-axis current.
Actuators 13 00073 g023
Figure 24. FFT analysis of the steady-state speed when the speed reference is 150 [rpm].
Figure 24. FFT analysis of the steady-state speed when the speed reference is 150 [rpm].
Actuators 13 00073 g024
Figure 25. FFT analysis of the steady-state speed when the speed reference is 203 [rpm].
Figure 25. FFT analysis of the steady-state speed when the speed reference is 203 [rpm].
Actuators 13 00073 g025
Figure 26. FFT analysis of the steady-state speed when the speed reference is 255 [rpm].
Figure 26. FFT analysis of the steady-state speed when the speed reference is 255 [rpm].
Actuators 13 00073 g026
Figure 27. FFT analysis of the steady-state speed when the speed reference is 295 [rpm].
Figure 27. FFT analysis of the steady-state speed when the speed reference is 295 [rpm].
Actuators 13 00073 g027
Figure 28. Curves of the response with CRC, with FORC, and without RC under higher speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s). (a) Speed. (b) Q-axis current.
Figure 28. Curves of the response with CRC, with FORC, and without RC under higher speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s). (a) Speed. (b) Q-axis current.
Actuators 13 00073 g028
Figure 29. Responses with PI and FORC at two higher speed references (with sudden loading at t = 2.3 s, 6.3 s). (a) Speed. (b) Q-axis current.
Figure 29. Responses with PI and FORC at two higher speed references (with sudden loading at t = 2.3 s, 6.3 s). (a) Speed. (b) Q-axis current.
Actuators 13 00073 g029
Figure 30. Speed responses with fal-FORC and FORC at different speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s).
Figure 30. Speed responses with fal-FORC and FORC at different speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s).
Actuators 13 00073 g030
Figure 31. Speed responses with fal-FORC and FORC at four higher speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s).
Figure 31. Speed responses with fal-FORC and FORC at four higher speed references (with sudden loading at t = 4 s, 12 s, 20 s, 28 s).
Actuators 13 00073 g031
Table 1. Parameters of PMSM.
Table 1. Parameters of PMSM.
ParametersValue
Rated power PN/W88
Rated torque TN/[N·m]0.23
Stator resistance R0.36
d- and q-axis inductance Ld, Lq/mH0.201
Permanent magnet flux linkage ψi/Wb0.00655
Number of pole pairs p4
Rotational inertia J/[Kg·m2]0.0000071
Table 2. Description of symbols in Figure 15.
Table 2. Description of symbols in Figure 15.
SignDescription
id*/idReference/feedback of d-axis current
iq*/iqReference/feedback of q-axis current
iA_mea/iB_meaFeedback of A-phase/B-phase current
iα/iβFeedback of α-axis/β-axis current
ud*/uq*Reference of d-axis/q-axis voltage
uα*/uβ*Reference of α-axis/β-axis voltage
θeMotor electrical angle
Table 3. Comparison results of Figure 17, Figure 18 and Figure 19, Figure 23 and Figure 30.
Table 3. Comparison results of Figure 17, Figure 18 and Figure 19, Figure 23 and Figure 30.
MethodHarmonic ContentSpeedq-Axis CurrentSpeed Overshoot [rpm]
SimulationPI1st4.89%3.26%15
2nd3.10%4.12%
CRC1st0.51%0.34%70
2nd0.71%0.95%
FORC1st0.03%0.02%71
2nd0.09%0.13%
fal-FORC1st0.03%0.03%35
2nd0.09%0.12%
ExperimentPI1st4.34%4.77%25
2nd2.92%3.21%
CRC1st0.87%1.73%90
2nd0.48%0.86%
FORC1st0.20%1.12%95
2nd0.33%0.50%
fal-FORC1st0.19%1.08%29
2nd0.31%0.46%
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Guo, H.; Zhang, F.; Zhang, Q.; Liu, Y.; Xiang, T.; Xing, J. A Combined Fractional Order Repetitive Controller and Dynamic Gain Regulator for Speed Ripple Suppression in PMSM Drives. Actuators 2024, 13, 73. https://doi.org/10.3390/act13020073

AMA Style

Guo H, Zhang F, Zhang Q, Liu Y, Xiang T, Xing J. A Combined Fractional Order Repetitive Controller and Dynamic Gain Regulator for Speed Ripple Suppression in PMSM Drives. Actuators. 2024; 13(2):73. https://doi.org/10.3390/act13020073

Chicago/Turabian Style

Guo, Haohao, Fengkui Zhang, Qiaofen Zhang, Yancheng Liu, Tianxiang Xiang, and Jintong Xing. 2024. "A Combined Fractional Order Repetitive Controller and Dynamic Gain Regulator for Speed Ripple Suppression in PMSM Drives" Actuators 13, no. 2: 73. https://doi.org/10.3390/act13020073

APA Style

Guo, H., Zhang, F., Zhang, Q., Liu, Y., Xiang, T., & Xing, J. (2024). A Combined Fractional Order Repetitive Controller and Dynamic Gain Regulator for Speed Ripple Suppression in PMSM Drives. Actuators, 13(2), 73. https://doi.org/10.3390/act13020073

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop