The decoupled vector-control of PMSM based on nonlinear multi-input multi-output decoupling ADRC

The Permanent Magnet Synchronous Motor (PMSM) is widely used in many fields. Aiming at nonlinearity, strong coupling and uncertainty of the PMSM, this paper proposes a nonlinear multi-input multi-output (MIMO) decoupling PMSM algorithm based on Active Disturbance Rejection Control (ADRC). A Lower-Upper matrix factorization approach is introduced to solve a general inverse of the measured time-varying matrix in real-time decoupling ADRC. This PMSM is based on the vector control. First, the PMSM model and vector control are simulated. Then, a first-order ADRC is introduced and used to replace the PID controller in the d and q axis of PMSM respectively. The simulation shows that the replaced system has a smaller fluctuation, faster response and better stability. Finally, the nonlinear MIMO decoupling ADRC and its inverse matrix method are deduced. Then, the decoupling PMSM control based on ADRC is verified. The simulation shows that this system has a better static and dynamic performance, and it conforms to the PMSM characteristics better. All this shows that the nonlinear MIMO decoupling ADRC is a better strategy for the PMSM. The presented algorithm also has advantage in method compared with some recent results of decoupling PMSM control.


Introduction
The nonlinear multiple-input multiple-output (MIMO) system exists widely in control engineering practice, including the vector control of Permanent Magnet Synchronous Motor (PMSM). The state variables and control signals of these systems are often complicatedly coupled, which can cause a great difficulty in practical control. Thus, the decoupling control of the PMSM is an important task in both control theory and control engineering. One strategy is to disentangle the interaction among the input-output pairs, and transform the coupled multiple-variable system into a number of independent single-input single-output (SISO) systems. This strategy is called decoupling. 1,2 At present, there are several kinds of control methods presented for the PMSM, such as Direct Torque Control (DTC), neural-network, some novel methods and other methods.
As for the DTC, in 2011, Liu et al. achieved a PMSM DTC based on SVM. 3 The simulation shows that the static system performance is dramatically improved. In 2012, Xu et al. presented a highperformance sensorless PMSM DTC, 4 and a fourthorder Extended Kalman Filter was used to observe its load torque. In 2018, Yuan et al. 5 proposed a novel PMSM DTC scheme based on the discrete duty-ratio modulation. The effectiveness is verified through an experiment on a 100W driving -PMSM system. In 2020, Bao et al. 6 realized a predictive strategy DTC with a modified finite set model. Compared with conventional methods, its system robustness is obviously improved.
The neural-network method was also used in the PMSM control. In 2013, Sun et al. 7 used a neuralnetwork inverse speed observer to achieve a sensorless vector control of an induction motor. In 2017, Erdogˇan and Ö zdemir 8 applied a neural-network based minimum-loss control to the PMSM. A comprehensive loss model with a dynamic core resistor estimator was developed with the neural-network. However, the neural-network is mainly used as an auxiliary manner.
The novel methods often have some advantage in contrast to the conventional methods. In 2016, Han et al. 9 presented a backlash identification method for the PMSM based on the relay feedback. This method is developed by analyzing the time-domain velocity signal under the assumption that it can be viewed as piecewise segments. In 2019, Dieterle et al. 10 proposed a PMSM control approach for a quadruple three-phase star-connected winding during a short-circuit fault in one voltage source inverter. The benefits are validated through experimental tests. In 2020, Sun et al. 11 presented an optimal strategy for a driving hub PMSM, which using the state feedback control plus gray wolf optimization algorithm. In 2020, Sun et al. 12 found an iterative search strategy based on dichotomy for a sensorless PMSM control, which can provide a finite number of rotor position angles with good accuracy.
The other control approaches were also researched in recent years. In 2014, Hosooka et al. 13 proposed an efficient PMSM-driving method based on the optimal control theory. This method can determine the optimal voltage command directly. In 2015, Chi et al. 14 presented a hybrid algorithm utilizing both signal and energy control modes, which can be adaptive to the parameter variety and load disturbance. This scheme has a good steady-state performance. In 2016, Sun et al. 15 combined an inverse system method and internal model control to achieve a decoupling pseudo-linear PMSM control. In 2019, Sun et al. 16 presented a model predictive torque control for high-speed and inwheel motor drives. The controller performance was improved. Moreover, in 2020, Wang et al. 17 proposed a Newton-Raphson algorithm to deal with a high accurate current set-point solution for the interior PMSM. This method can converge to an accurate solution in only few iteration numbers.
However, throughout the above methods, few works adopted a direct nonlinear MIMO decupling control for the PMSM. Among the decoupling strategies, the Active Disturbance Rejection Control (ADRC) can effectively deduce a nonlinear MIMO decoupling control framework of robust performance and little calculation. This is because the ADRC has an inherent stability and is simple as a PID. Most important, the ADRC can easily deduce a nonlinear MIMO decoupling control framework, which is very suitable for the multivariable, nonlinear, strong coupling PMSM system. Nevertheless, this framework still faces solving the inverse matrix of measured real-time variables. 18,19 Therefore, this paper proposes a nonlinear MIMO decoupling PMSM algorithm based on the ADRC, which is aiming to overcome the nonlinearity, strong coupling and uncertainty of the PMSM. Meanwhile, a Lower-Upper (LU) matrix factorization approach is introduced, which is based on the Gaussian elimination procedure. This approach can solve the inverse of the general real-time variable matrix effectively during the nonlinear MIMO decoupling ADCR control. First, the PMSM and vector control model are built. This decoupling ADRC method is based on the vector control. Then, the PID controller in the d and q axis of the PMSM is replaced with a first-order ADRC respectively. The simulation shows that the replaced system has a smaller fluctuation, faster response and better stability. Finally, both the PID controllers in the d and q axis of the PMSM are replaced with the decoupling ADRC, and the decoupling PMSM control is verified. The simulation shows that this system has a better static and dynamic performance, and it conforms to the PMSM characteristics better. Compared with some recent results of decoupling PMSM control, the presented algorithm also has advantage in method. All this shows that the nonlinear MIMO decoupling ADRC is a better strategy for the PMSM.
The other parts of this paper are organized as follows. In Section 2, the PMSM model and its vector control are simulated. In Section 3, a first-order ADRC method is introduced, and the PMSM control based on the first-order ADRC replacement in its d-q axis are shown and compared with the PID. In Section 4, the nonlinear MIMO decoupling ADRC is deduced, and the dq-decoupling PMSM control based on ADRC is shown and compared with the PID and first-order ADRC replacement method. In Section 5, this paper is concluded with a few remarks.

The PMSM model and its vector control
The PMSM model In order to establish the mathematical model in dÀq coordinate, the following assumptions are made: (1) The iron-core loss, magnetic saturation effect and magnetic hysteresis loss are ignored; (2) The air-gap magnetic field is sinusoidal; (3) The damping action of the rotor and permanent magnet is ignored; (4) The stator resistance is not affected by frequency and temperature.
The mathematical model of the PMSM mainly consists of the voltage equation, Clark transformation, Park transformation, magnetic chain equation, torque equation and motion equation etc. 20 The following are the mathematical equations: 1). Assuming the voltage equation in the threephase A-B-C static coordinate system is: 2). The Clark transformation According to the coordinate transformation theory, the essence of the Clarke transformation is to transform the three-phase A-B-C stator currents into the currents in the equivalent static two-phase aÀb coordinate system, which is specifically expressed as: 3). The Park transformation The stator currents can be expressed from the static two-phase aÀb coordinate system to rotating twophase dÀq coordinate system with matrix form: 4). The magnetic chain equation. 21 According to the field-orientation of the rotor, the magnetic chain equation in dÀq coordinate system is:

5). The voltage equation
The voltage vector equation is as follow:

6). The torque equation
According to the mathematical PMSM model, the electromagnetic torque formula can be obtained as: It can be seen that the electromagnetic torque consists of two parts. One is the permanent magnet torque caused by the permanent magnet field of the rotor and winding current of the stator, the other is the reluctance torque caused by the inductance.

7). The motion equation
The motion equation is as follow: The vector control The vector control is to control the electromagnetic torque of the PMSM quickly and accurately through the decomposed current (d and q axis current), and then control the PMSM speed. 22 Thus, the speed control of the PMSM is realized by its torque. The vector control is to control the stator magnetomotive force essentially. That is, the stator current vector rotates synchronously with the rotor, and keeping the torque angle constant. The strategy is also adopted in this paper. The common strategy for the vector control is i d = 0, and then control of the electromagnetic torque ultimately. 23,24 That is, the control of d axis current. The i d = 0 control is essentially to ensure that the d axis current in the stator remains unchanged at 0, and there is only q axis current i q . At this condition, if the d axis voltage is ignored, the PMSM is equivalent to a separately excited Direct-Current motor. In fact, the i d = 0 strategy is the most commonly used in the PMSM. 19 This paper is also the i d = 0 strategy. Under this strategy, the current vector changes with the load state. When i d is zero, i d is orthogonal to c f , and the torque produced by per unit stator current is the largest.

The PMSM and control system parameters
The stator winding of the PMSM consists of four inputs: the AÀBÀC phase voltage u A , u B , u C and load torque T L , which are connected roughly with a star form. The output parameters include: the three-phase stator current i A , i B , i C ; the mechanical position angle u of the rotor; the electromagnetic torque T e and angular speed v of the rotor. In it, the PMSM model is realized with the MATLAB / Simulink, and the whole vector control module is shown in Figure 1.
First, according to the vector control based on the PID in Figure 1, the simulation experiment is carried out. The parameters of this simulation experiment are set as Table 1.
For a convenient comparing, all the simulations are carried out according to the same procedure. That is, the reference speed is 1100r Á min À1 ; when t = 0, starting the PMSM, the initial load is 3N Á m; when t = 0:04s, the load changes suddenly from 3N Á m to 5N Á m; the running time is 0:16s.
The PMSM control based on first-order ADRC

The first-order ADRC controller
The ADRC is a nonlinear feedback controller. 18,19 The influence rejecting and robustness is an inherent property of the ADRC. The internal dynamic and external disturbance, including the sensor noises, are estimated and compensated in real time with a Tracking Differentiator (TD), Extended State Observer (ESO), nonlinear feedback and disturbance compensation etc. This is shown in the following (1)-(4). For a more detailed method and the symbol meanings, which can refer to Refs. 18,19 1) Arranging a transient process for the control reference with the TD: 2) Estimating the system states and total disturbance of the controlled object with the ESO: 3) The nonlinear state error feedback: 4) The disturbance compensation with a compensator: The control and simulation for d-axis ADRC replacement According to Figure 1, a first-order ADRC is used to replace the PID in the d-axis. Then, the hybrid control design is carried out. Finally, the simulation results are compared according to the unified simulation process in Section 2.3. As shown in Figure 2(a), the maximum current amplitude is 50A and À30A, which reaches the stable amplitude 3A at approximately 0:012s. When the load changes from 3N Á m to 5N Á m at t = 0:04s, the current amplitude increases rapidly to the stable value 5A. Compared with the PID control in Figure 2(b), it can be seen that after the d-axis controller is replaced by the first-order ADRC, the simulation current has litter fluctuation, smaller overshoot and better stability.
As shown in Figure 3, the maximum torque amplitude is 52N Á m and À23N Á m, which reaches the rated torque 3N Á m at approximately 0:012s. When the load changes from 3N Á m to 5N Á m at t = 0:04s, the torque increases rapidly to 5N Á m and becomes stable. Compared with the PID control in Figure 3, it can be seen that after the d-axis controller is replaced by the first-order ADRC, the simulation torque has smaller fluctuation amplitude, shorter fluctuation time and better stability.
As shown in Figure 4, the speed rises in a straight line and reaches the maximum amplitude 1100r Á min À1 after the PMSM is started. Then, the speed reaches the rated value 1000r Á min À1 at approximately 0:012s. When the load changes from 3N Á m to 5N Á m at t = 0:04s, the speed fluctuation is negligible. Compared with the PID control in Figure 4, it can be seen that after the d-axis controller is replaced by the first-order ADRC, the simulation speed has smaller fluctuation amplitude, shorter fluctuation time and faster response speed.

The control and simulation for q-axis ADRC replacement
According to Figure 1, a first-order ADRC is used to replace the PID in the q-axis. Then, the hybrid control design is carried out. Finally, the simulation results are  compared according to the unified simulation process in Section 2.3. As shown in Figure 5, the maximum current amplitude is 59A and À38A, the second fluctuation is very few, which reaches the stable amplitude 3A at approximately 0:012s. When the load changes from 3N Á m to 5N Á m at t = 0:04s, the current amplitude increases rapidly to the stable value 5A. Compared with the PID control in Figure 2(b), it can be seen that after the qaxis controller is replaced by the first-order ADRC, the simulation current has shorter fluctuation time, litter second fluctuation and better stability.
As shown in Figure 6, the maximum torque amplitude is 62N Á m and À9N Á m, which reaches the rated torque 3N Á m at approximately 0:012s. When the load changes from 3N Á m to 5N Á m at t = 0:04s, the torque increases rapidly to 5N Á m and becomes stable. Compared with the PID control in Figure 6, it can be seen that after the q-axis controller is replaced by the first-order ADRC, the simulation torque has smaller fluctuation amplitude, shorter fluctuation time and better stability.
As shown in Figure 7, the speed rises in a straight line and reaches the maximum amplitude 1150r Á min À1 after the PMSM is started. Then, the speed reaches the rated value 1000r Á min À1 at approximately 0:012s. When the load changes from 3N Á m to 5N Á m at t = 0:04s, the speed fluctuation is negligible. Compared with the PID control in Figure 7, it can be seen that after the q-axis controller is replaced by the first-order ADRC, the simulation speed has smaller fluctuation amplitude, shorter fluctuation time and faster response speed.   The dq-decoupling PMSM control based on nonlinear MIMO ADRC

The deducing of nonlinear MIMO decoupling ADRC
The so-called decoupling control 25,26 is to design a device, which changes the MIMO form of the original system into a SISO form. Then, one output is and only controlled with one input. The nonlinear MIMO ADRC can be extended into a decoupling control system. Giving a dynamic system of the following equation: This is an n-input n-output nonlinear system. We set the coefficient matrix as: In equations (12) and (13), the amplification coefficient b ij of the control input u i is a function of the state variable x and time t, that is b ij (x, _ x, t); the f i (x 1 , _ x 1 , Á Á Á , x n , _ x n ) is the coupled dynamics; y i is the system output.
Introducing a virtual control input variable: and setting the system state X , disturbance W and system output Y as: In it, each element of X is the controlled variable. Then, the dynamic system equation (12) can be rewritten as: In the first case, if B = ∂F ∂U is close to an unit matrix I, n number of ADRC controllers can be paralleled between X and U to realize the decoupling control. In the second case, if the difference between B = ∂F ∂U and unit matrix I is large, it is necessary to find an invertible matrix B 0 which is close to B before paralleling ADRC controller between X and U to realize the decoupling control. Then, the system becomes: Let Then, parallel ADRC controllers can be designed, which completes the decoupled control according to the nonlinear MIMO decoupling ADRC system. The structure and principle diagram for the PMSM can be shown in Figure 8: At the same time, the actual control variable u = ½u 1 , u 2 , Á Á Á , u n T can be determined by the virtual control variable U = ½U 1 , U 2 , Á Á Á , U n T with an inverse matrix transform: 1,27,28 Thus, A LU matrix factorization approach is presented to solve the general inverse of the measured time-varying matrix B(x, _ x, t) in the real-time decoupling ADRC control. This method has two steps: (1) The L and U matrix decomposition; (2) Finding the inverse matrix L À1 and U À1 . For a detailed transform, please see Refs. [29][30][31] Through this method, the inverse matrix can be solved only with a polynomial calculation as long as the matrix variables can be measured or estimated.
Then, according to Figure 1, the first-order ADRC, nonlinear MIMO decoupling ADRC, and LU matrix inversion, the two first-order ADRC are used to replace the PID in the d and q-axis simultaneously. Then, the decoupling ADRC is designed for the PMSM. Finally, the simulation results are compared according to the unified simulation process in Section 2.3.

The current comparison
As shown in Figure 9, the maximum current amplitude is 50A and À30A, the second fluctuation is very very few, which reaches the stable amplitude 3A at approximately 0:012s. When the load changes from 3N Á m to 5N Á m at t = 0:04s, the current amplitude increases rapidly to the stable value 5A.
Compared with the simulated currents in Figures  2(a) and (b) and 5, it can be seen that the dq-decoupling PMSM control not only has smaller fluctuation amplitude, shorter fluctuation time, but also has smaller secondary fluctuation and better stability over the ADRC replacement control of the d and q-axis, as well as the PID control.

The torque comparison
As shown in Figure 10, the maximum torque amplitude is 52N Á m and À4N Á m, the second fluctuation is very very small, which reaches the rated torque 3N Á m at approximately 0:012s. When the load changes from 3N Á m to 5N Á m at t = 0:04s, the torque increases rapidly to 5N Á m and becomes stable.
Compared with the simulated torques in Figures 3  and 6, it can be seen that the dq-decoupling PMSM control not only has smaller fluctuation amplitude and secondary fluctuation, but also has better stability and antiinterference performance over the ADRC replacement control of the d and q-axis, as well as the PID control.

The speed comparison
As shown in Figure 11, the speed rises in a straight line and reaches the maximum amplitude 1150r Á min À1 after the PMSM is started. Then, the speed reaches the rated value 1000r Á min À1 at approximately 0:012s, À4N Á m, and the second fluctuation is 0. When the load changes from 3N Á m to 5N Á m at t = 0:04s, the speed fluctuation is negligible.
Compared with the simulated speeds in Figures 4  and 7, it can be seen that the dq-decoupling PMSM control has smaller fluctuation and better stability over the ADRC replacement control of the d and q-axis, as well as the PID control.

The comparing with other methods
Compared with some recent results on decoupling control, such as the linear decoupling of Refs. 7,15 etc., the proposed method is still characterized by its features. For example, the Refs. 7,15 completed the decoupling control after constituting a pseudo-linear PMSM system by cascading its inverse model with the original PMSM system. Then, a novel speed observation scheme using neural-network inverse method or an internal model control scheme is employed. These schemes can achieve a whole system robustness and reject the influence of un-modeled dynamics and system noise.
However, the proposed nonlinear MIMO decoupling ADRC can directly deal with a nonlinear decoupling PMSM system, and has a better stability. Thus, the proposed nonlinear MIMO decoupled ADRC has advantage in its method as well as some static and dynamic parameters. The comparing is shown in Table 2.

Discussion and conclusion
With the rapid development of the PMSM industry, the PMSM is widely used in many fields. Aiming at the nonlinearity, strong coupling and uncertainty of the PMSM, this paper proposes a nonlinear MIMO decoupling PMSM control algorithm based on the ADRC. A LU matrix factorization approach is introduced to solve the general inverse of the measured time-varying matrix in the real-time decoupling ADRC.
First, the PMSM model and vector control are simulated. Then, a first-order ADRC is introduced and used to replace the PID controller in the d and q axis of the PMSM respectively. Finally, the nonlinear MIMO decoupling ADRC and its inverse matrix method are deduced, and the decoupling PMSM control based on two first-order ADRC is verified.
According to the simulation results, it can be concluded that after the d or q-axis controller is replaced by the first-order ADRC, the simulation current, torque and speed have smaller fluctuation amplitude, shorter fluctuation time, litter second fluctuation, better stability or faster response.
It can also be concluded that the dq-decoupling PMSM control has smaller fluctuation amplitude, shorter fluctuation time, smaller secondary fluctuation or better stability over the PID, the ADRC replacement of d and q-axis in the simulated current, speed, or torque.
Thus, the simulation demonstrates that this system has a better static and dynamic performance, and it conforms to the PMSM characteristics better. All this shows that the nonlinear MIMO decoupling ADRC is a better strategy for the PMSM. In addition, the proposed nonlinear MIMO decoupled ADRC has advantage in its method as well as some static and dynamic parameters compared with some recent results of the decoupling PMSM control.

Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.

Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the NSFC Projects of

Data availability
The code and data used to support the findings of this study have been deposited in The Decoupled Vector-Control of PMSM Based on Nonlinear Multi-input Multi-output Decoupling ADRC repository or from the corresponding author upon request.

ORCID iD
Zhijian Huang https://orcid.org/0000-0003-4574-345X Figure 11. The speed comparing of the PMSM vector control: the blue line is for the dq-decoupling ADRC; the green and red line is for the ADRC replacement control of the d and q-axis respectively.