Abstract
This paper develops a precise proportional–integral (PI) type control system for repeatable tracking control of a permanent magnet synchronous motor (PMSM) under motor parameter and load torque variations. By adding a very simple learning feedforward term, a conventional PI control system can be enforced to have a perfect tracking performance under model parameter and load torque variations. The convergence and stability of the closed-loop control system response are analytically shown. Finally, the simulation and experimental results are given to verify the effectiveness of the proposed PI-type learning control law under the uncertainties such as motor parameter and load torque variations using a prototype PMSM drive system.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
1 Introduction
A permanent magnet synchronous motor (PMSM) is popular for some advantages over others such as low noise, low inertia, high efficiency, robustness, and low maintenance cost. Conventional proportional–integral (PI) and proportional–integral–derivative (PID) control methods usually work well under some operation point [1]. However, due to motor parameter variations and external disturbances, the conventional control methods cannot achieve the fast and precise speed response, quick recovery of speed from disturbances, parameter insensitivity, and robustness in the variable speed domain. To overcome these problems, many researchers have proposed various advanced control design methods, e.g., model predictive control [2–4], sliding mode control [5, 6], internal model control [7], adaptive control [8, 9], nonlinear feedback linearization control [10], nonlinear optimal control [11, 12], fuzzy control [13–16], and neural network control [17]. Recently, several researchers have introduced disturbance observers to compute load torque compensating terms. These terms have been incorporated into conventional PI/PID controllers to perform rejection of load torque disturbances [18, 19]. However, all the PI/PID methods and most of the previous advanced controllers can assure perfect tracking performance only under the restrictive assumption that the PMSM parameters are accurately available.
This paper shows that by including an additional simple learning feedforward term, a conventional PI control system can be enforced to have perfect tracking performance in the presence of repeating load torque and model parameter variations. Because PMSMs are used for repetitive tasks in many industrial applications such as robots and hard disk drives, this paper focuses on developing a simple PI-type controller for a PMSM with a repetitive desired trajectory. The proposed controller can be divided into the stabilizing part and the intelligent part. A conventional PI feedback control input term is used as the stabilizing part, and a feedforward term to compensate for repeating load torque and model parameter uncertainties is incorporated as the intelligent part. Since the proposed method constructs the feedforward compensating term using a simple learning rule, it does not require any load torque disturbance observer unlike the previous disturbance-observer-based PMSM control methods of [18, 19]. The additional learning feedforward term requires no information on motor parameter and load torque values and, thus, the proposed PI-type controller is insensitive to model parameter and load torque uncertainties. Additionally, stability and convergence of the proposed control system response are analytically proven. It should be noted that unlike the previous learning-type control methods given in [7–9, 16, 17], our controller does not require any identification procedure. Simulation and experimental results are shown to demonstrate the effectiveness of the proposed learning controller under the uncertainties such as motor parameter and load torque variations using a prototype PMSM drive system.
2 Problem formulation
A field-oriented vector-controlled PMSM can be represented by the following dynamic equation:
where \(\omega ={\dot{\theta }}\) is the electrical rotor angular speed, \(\theta \) is the electrical rotor angle, \(T_{L}\) represents the load torque disturbance input, and \(k_{i} > 0\), \(i = 1,\ldots ,3\) are the parameter values given by
and p is the number of poles, and J, B, \(\lambda _{m}\) are the rotor inertia, the viscous friction coefficient, the magnetic flux. The uncertainties on the parameters \(k_{i}\) as well as the load torque disturbance can severely deteriorate the control performance.
The following assumptions will be used:
- A1 :
-
\(\omega \), \(i_{\mathrm{qs}}\), \(i_{\mathrm{d}s}\) are available.
- A2 :
-
The desired trajectory and the load torque are T-periodic, i.e., \(\theta _{d}(t+T)=\theta _{d}(t), \omega _{d} (t+T)=\omega _{d} (t), {{\dot{\omega }}}_d ({t+T})={{\dot{\omega }}}_d (t), T_L \left( {t+T} \right) =T_L \left( t \right) .\)
It should be noted that most of the previous methods use the restrictive assumption that the parameters \(k_{i}\) are exactly known. The assumption A2 is not so restrictive because PMSMs are usually called upon to execute repetitive operations in many industrial applications such as robots and hard disk drives. Figure 1 illustrates a block diagram of a general field-oriented vector control system for a PMSM. In a field-oriented PMSM control system as shown in Fig. 1, the three-phase current commands are computed by converting the controller current commands \(i_{\mathrm{qsd}}\), \(i_{\mathrm{dsd}}\). The d axis reference current \(i_{\mathrm{dsd}}\) is usually set as \(i_{\mathrm{dsd}} = 0\). Thus, our problem can be formulated as proposing a simple learning control algorithm to generate the q axis reference current command \(i_{\mathrm{qsd}}\) for the system model (1) under the assumptions A1-2.
The following background results will be used to derive main results:
Definition 2.1
A vector \(f\left( t \right) \in R^{n}\) is said to be \(f\left( t \right) \in L_2\) if and only if \(\left\| {f\left( t \right) } \right\| _2 \cong \sqrt{\int _0^\infty {\sum _{i=1}^n {f_i^2 \left( t \right) \mathrm{d}t}} }<\infty \) And \(f\left( t \right) \in R^{n}\) is said to be \(f\left( t \right) \in L_\infty \) if and only if \(\max _{1_{\le i\le n }} \left| {f_i \left( t \right) } \right| <\infty \).
Lemma 2.2
If \(y\left( t \right) \in L_2 \cap L_\infty \), and \({\dot{y}}\left( t \right) \) is bounded, then \(y\left( t \right) \) converges to zero [20].
3 Controller design and stability analysis
Let \(i_{\mathrm{qs}}\) consist of a PI feedback input term \(u_{\mathrm{fb}}\) as the stabilizing part and a feedforward compensating input term \(u_{\mathrm{ff}}\) as the intelligent part:
where
and \(\beta > 0\), \(\gamma > 0\), \(e_1 =\int _0^t {e_2 \mathrm{d}\tau =\theta -\theta _d, e_2 =\omega -\omega _d}\), and \(u_{\mathrm{ff}}\) will be specified later. It should be noted that the positive constants \(\beta \) and \(\gamma \beta \) correspond to the P and I gains, respectively.
Using the error vector \(e = [e_{1}, e_{2}]^{T}\), we can obtain the following error dynamics:
where \(u_e =u_{\mathrm{ff}} -u_{\mathrm{ff}}^*\) and \(u_{\mathrm{ff}}^*\) is given by
Let us define the Lyapunov function \(V_{0}(t)\) as:
where \(\zeta = \gamma (\gamma -k_{2})\). It should be noted that if \(\gamma \) is sufficiently large, then \(\zeta > 0\) and \(V_{0}(t) \ge 0\). The time derivative of \(V_{0}(t)\) along the error dynamics (5) is given by
where \(q_{r} = \hbox {min}(\zeta \gamma \), \(k_{1}\) \(\beta - k_{2})\), \(e_{r} = [e_{1}, \sigma ]^{T}\), and the following equation is used
If the feedforward compensating input term is zero, then \(u_e =-u_{\mathrm{ff}}^*\) and the inequality (8) can be reduced to
where \(\eta = \max _{0_{\le t\le T }} \left| {u_{\mathrm{ff}}^*\left( t \right) } \right| \). On the other hand, for the case of accurate feedforward compensation, the inequality (8) can be reduced to
which implies that the perfect tracking response of the conventional PI control system can be guaranteed under the restrictive assumption of availability of accurate information on motor parameter and/or load torque values. This demands incorporating an effective compensation algorithm into the conventional PI control system to get good performance in the presence of motor parameter and load torque variations.
Now, let the feedforward control input \(u_{\mathrm{ff}}\) be updated by the following simple repetitive learning rule:
where \(\delta > 0\) is the learning gain. Figure 2 shows the overall block diagram of the proposed learning control algorithm.
Theorem 3.1
Let \(i_{\mathrm{qs}}\) be given by (2) with (3) and (9). Assume that \(\gamma \) is sufficiently large enough to guarantee \(\gamma > k_{2}\). Then, the tracking error \(e_{1}\) converges to zero.
Proof
Let us define the Lyapunov functional as:
Its time derivative along the error dynamics (5) is given by
which implies that \(e_{r} \in L_{2} \cap L_{\infty }\) (i.e., \(e_{1} \in L_{2} \cap L_{\infty }\), \(\sigma \in L_{2} \cap L_{\infty }\), \(e_{2} \in L_{2} \cap L_{\infty })\). After all, by Lemma 1 it can be concluded that the tracking error \(e_{1}\) converges to zero. \(\square \)
Instead of (9), the following repetitive learning rule can be used without losing the stability property
where \(2 \beta> \delta > 0\).
Corollary 3.2
Let \(i_{\mathrm{qs}}\) be given by (2) with (3) and (9). Assume that the control parameters \(\beta \), \(\delta \), and \(\gamma \) satisfy the following inequalities:
Then, the tracking error \(e_{1}\) converges to zero.
Proof
Define a Lyapunov functional as:
Then, the time derivative of \(V_{c}\) along the error dynamics (5) is given by
By referring to the inequality (8), the above Eq. (12) can be reduced to
The learning rule (9) implies \(u_{e}(t+T)=u_{e}(t)-\delta \sigma (t)\) and, thus, (12) can be rewritten as:
which implies that \(e_{1} \in L_{2} \cap L_{\infty }\), \(\sigma \in L_{2} \cap L_{\infty }\), \(e_{2} \in L_{2} \cap L_{\infty }\) as long as the inequalities (11) hold. After all, by Lemma 1 it can be concluded that the tracking error \(e_{1}\) converges to zero. \(\square \)
Remark 3.3
If the control law (2) and learning rule (9) are replaced with
where
where \(u^{*}\) is a sufficiently large constant satisfying \(u^{*} \ge \hbox { max }0 \le \hbox { t }\le T \left| {u_{\mathrm{ff}}^*\left( t \right) } \right| \), then using Lemma 1 and the fact that
It can be shown that \(e_{r} \in \quad L_{2} \cap L_{\infty }\), \(u_{\mathrm{ff}}(t) \in L_{\infty }\), \({\dot{e}}_2 \left( t \right) \in L_{\infty }\), thus \(\hbox {lim}_{t\rightarrow \infty } e_{2}(t) = 0\), and therefore \(e_{1}\) as well as \(e_{2}\) converges to zero.
Remark 3.4
Because the positive constants \(\beta \) and \(\gamma \beta \) correspond to the P and I gains, we can easily design the constants \(\beta \) and \(\gamma \) using the PI tuning rule given in the previous PI control methods such as [1]. The tuning rule of [1] implies \(\gamma =\omega _{s}/1.4\) where \(\omega _{s}\) is the bandwidth of the speed loop PI controller. Usually, \(\omega _{s}\) is much larger than 1 and, thus, we may assume that \(\gamma =\omega _{s}/1.4{>>}1\). On the other hand, the viscous friction coefficient B is very small and, thus, we can regard \(k_{2}\) as a small constant. This implies that the stability condition \(\gamma =\omega _{s}/1.4 > k_{2}\) of Theorem 3.1 can be trivially satisfied when the PI feedback control term \(u_{fb}(t)\) is designed by the existing tuning method.
4 Simulation and experiment
From the PMSM parameters given in Table 1 for simulation and experiment, we can derive the following dynamic equation:
Referring to the result given in the previous section, we can obtain the following current control law
where \(\sigma (t)\) is given by
and \(u_{\mathrm{ff}}(t)\) are updated by the following adaptation law:
where \(T = 1\) and \(u_{\mathrm{ff}}(t) = 0\) for \(t \in [-T, 0]\). Figure 3 shows the overall block diagram of the proposed PMSM learning control system. All blocks in the dotted line are implemented on a Texas Instruments TMS320F28335 floating-point DSP. Two stator currents \((i_{a}, i_{b})\) as well as a dc-link voltage \((V_{\mathrm{dc}})\) are measured for control and their analog signals are precisely converted to digital values by a 12-bit ADC module with a built-in sample-and-hold circuit. The rotor position \((\theta )\) as well as the motor speed \((\omega )\) is obtained. In this figure, the control system uses the cascade control structure including two control loops : a proposed learning controller in an outer loop and a conventional PI current controller in an inner loop. As shown in Fig. 3, a conventional PI current controller is used to evaluate the performance of the proposed learning controller, so the output of the proposed learning controller becomes the q axis current command \((i_{\mathrm{qsd}})\) of the PI current controller. In this paper, the switching frequency is chosen as 5 (kHz), and a space vector pulse-width modulation (SVPWM) technique is used. In simulations and experiments, the motor speed command \((\omega _{d})\) is changed from 125.7 to 251.3 (rad/s). Figure 4 shows the simulation results \((\omega _{d}, \omega , e_{2}, i_{\mathrm{qsd}}, i_{\mathrm{qs}}, i_{\mathrm{d}s})\) of the first trial using MATLAB/Simulink under +200 % variations of some parameters \((J, B, \lambda _{m}\), and \(T_{L})\). It should be noted that the results of the first trial are equivalent to those by the following PI speed control law:
Figure 5 shows the simulation results of the fifth trial under +200 % variations of some parameters \((J, B, \lambda _{m}\), and \(T_{L})\). Figure 6 shows the simulation results about the speed tracking error \((e_{2})\) under +200 % variations of some parameters \((J, B, \lambda _{m}\), and \(T_{L})\). As shown in Figs. 4, 5 and 6, the proposed learning controller is very insensitive to model parameter and load torque variations. Table 2 summarizes the maximum speed tracking errors of each simulation trial. Figure 7 shows the experimental results under the same condition as Fig. 4. Figure 7a illustrates the desired speed \((\omega _{d})\), measured speed \((\omega )\), and speed error \((e_{2})\). Figure 7b shows the desired q axis current \((i_{\mathrm{qsd}})\), measured q axis current \((i_{\mathrm{qs}})\), and measured d axis current \((i_{\mathrm{d}s})\). Also, Fig. 8 shows the experimental results under the same condition as Fig. 5.
The simulation and experimental results verify that the proposed PI-type controller gives a remarkable control performance, in that it can accurately control the speed of a PMSM without precise information about motor parameter and load torque values. And our simple controller guarantees a fast convergence in the presence of repeating load torque and model parameter uncertainties. Table 3 summarizes the speed tracking errors of the first trial and the fifth trial during steady state based on the simulation and experimental results.
5 Conclusion
This paper showed that by adding a very simple learning feedforward term a conventional PI control system can be enforced to have perfect tracking performance in the presence of model parameter and load torque variations. Convergence and stability of the proposed control system were proven by showing that the tracking error of the closed-loop system asymptotically goes to zero. To validate the practicality and feasibility of the proposed PI-type learning controller, simulations and experiments were carried out under no information on motor parameter and load torque values using a conventional PI current controller with the proposed speed controller. From simulation and experimental results, it was verified that even though the proposed PI-type control algorithm is simple and easy to be implemented it yields good control performance.
References
Kshirsagar P, Burgos RP, Jang J, Lidozzit A, Wang F, Boroyevich D, Sul SK (2012) Implementation and sensorless vector-control design and tuning strategy for SMPM machines in fan-type applications. IEEE Trans Ind Appl 48(6):2402–2413
Preindl M, Bolognani S (2013) Model predictive direct torque control with finite control set for PMSM drive systems, Part 1: maximum torque per ampere operation. IEEE Trans Ind Inf 9(4):1912–1921
Preindl M, Bolognani S (2013) Model predictive direct torque control with finite control set for PMSM drive systems, Part 2: field weakening operation. IEEE Trans Ind Inf 9(2):648–657
Preindl M, Bolognani S (2013) Model predictive direct torque control with finite control set for PMSM drive systems. IEEE Trans Power Electr 28(2):1007–1015
Li S, Zhou M, Yu X (2013) Design and implementation of terminal sliding mode control method for PMSM speed regulation system. IEEE Trans Ind Inf 9(4):1879–1891
Jezernik K, Horvat R, Curkovic M (2013) A switching control strategy for the reduction of torque ripple for PMSM. IEEE Trans Ind Inf 9(3):1272–1279
Liu G, Chen L, Zhao W, Jiang Y, Qu L (2013) Internal model control of permanent magnet synchronous motor using support vector machine generalized inverse. IEEE Trans Ind Inf 9(2):890–898
Dang DQ, Rafaq MS, Choi HH, Jung JW (2016) Online parameter estimation technique for adaptive control applications of interior PM synchronous motor drives. IEEE Trans Ind Electr 63(3):1438–1449
Jung JW, Leu VQ, Do TD, Kim EK, Choi HH (2015) Adaptive PID speed control design for permanent magnet synchronous motor drives. IEEE Trans Power Electr 30(2):900–908
Choi YS, Choi HH, Jung JW (2016) Feedback linearization direct torque control with reduced torque and flux ripples for IPMSM drives. IEEE Trans Power Electr 31(5):3728–3737
Do TD, Choi HH, Jung JW (2015) Nonlinear optimal DTC design and stability analysis for interior permanent magnet synchronous motor drives. IEEE Trans Mechatron 20(6):2716–2725
Do TD, Kwak S, Choi HH, Jung JW (2014) Suboptimal control scheme design for interior permanent-magnet synchronous motors: An SDRE-based approach. IEEE Trans Power Electr 29(6):3020–3031
Jung JW, Choi YS, Leu VQ, Choi HH (2011) Fuzzy PI-type current controllers for permanent magnet synchronous motors. IET Electr Power Appl 5(1):143–152
Choi HH, Vu NTT, Jung JW (2012) Design and implementation of a Takagi-Sugeno fuzzy speed regulator for a permanent magnet synchronous motor. IEEE Trans Ind Electr 59(8):3069–3077
Kung YS, Huang CC, Tsai MH (2009) FPGA realization of an adaptive fuzzy controller for PMLSM drive. IEEE Trans Ind Electr 56(8):2923–2932
Li S, Gu H (2012) Fuzzy adaptive internal model control schemes for PMSM speed-regulation system. IEEE Trans Ind Inf 8(4):767–779
El-Sousy FFM (2013) Intelligent optimal recurrent wavelet Elman neural network control system for permanent magnet synchronous motor servo drive. IEEE Trans Ind Inf 9(4):1986–2003
Morawiec M (2013) The adaptive backstepping control of permanent magnet synchronous motor supplied by current source inverter. IEEE Trans Ind Inf 9(2):1047–1055
Liu TH, Pu HT, Lin CK (2010) Implementation of an adaptive position control system of a permanent magnet synchronous motor and its application. IET Electr Power Appl 4(2):121–130
Slotine JJE, Li W (1991) Applied nonlinear control. Prentice-Hall Inc., New Jersey
Acknowledgments
This work was supported by the National Research Foundation of Korea (NRF) Grant funded by the Korea government (MSIP) (No. 2014R1A2A1A11049543).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Choi, H.H., Kim, E.K., Yu, D.Y. et al. Precise PI speed control of permanent magnet synchronous motor with a simple learning feedforward compensation. Electr Eng 99, 133–139 (2017). https://doi.org/10.1007/s00202-016-0407-0
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00202-016-0407-0