Design and Implementation of Recursive Model Predictive Control for Permanent Magnet Synchronous Motor Drives

In order to control the permanent-magnet synchronous motor system (PMSM) with different disturbances and nonlinearity, an improved current control algorithm for the PMSM systems using recursive model predictive control (RMPC) is developed in this paper. As the conventional MPC has to be computed online, its iterative computational procedure needs long computing time. To enhance computational speed, a recursive method based on recursive Levenberg-Marquardt algorithm (RLMA) and iterative learning control (ILC) is introduced to solve the learning issue in MPC. RMPC is able to significantly decrease the computation cost of traditional MPC in the PMSM system. The effectiveness of the proposed algorithm has been verified by simulation and experimental results.


Introduction
Permanent-magnet synchronous motors (PMSMs) are widely applied in various industries due to their high power density and high efficiency [1], such as servo control system, electric vehicles, and wind power.The conventional controller of the PMSM system is a proportional-integral (PI) controller.
Two inner-loop PI controllers are used to adjust the -axis and -axis current and the outer-loop PI speed controller produces the -axis current command for the inner-loop -axis current controller.This current order must be limited owing to the constraints imposed by the motor feature and the need to protect the drive.However, due to the existence of uncertainties, multivariable, and nonlinearity, the PI control method cannot ensure high performance for the PMSM system [2].
To improve the control performance, in recent decades, a lot of nonlinear control algorithms have been developed for the PMSM system [3], such as finite time control [4], fuzzy control [5], sliding mode control [6], fractional order control [7], and disturbance observer-based control [8].These approaches not only enrich PMSM control theory, but also enhance the performance of the PMSM control system from different aspects.
Model predictive control (MPC) is an optimizationbased approach that computes the next control action by minimizing difference between the predicted output of a system and the specified reference [9].Recent researches have shown the suitability of MPC in the case of control of electrical drives.The MPC is implemented with respect to a mathematical model of the motor.The MPC can ensure a satisfying system performance since it possesses many advantages such as robustness, simplicity of modeling, and excellent capability of handling constraints of system.However, a well-known drawback of MPC algorithm is that the computation of control action needs a heavy calculation load since it demands the solution of a learning issue at each sampling time.The real-time condition restricts the practical applications of the online optimization the MPC method to some extent at the past [1].With the rapid development of computing hardware and the optimization technique, it is possible to realize these controllers for the fast dynamical systems which have a strict real-time demand.
There are some cheering research results on the application of MPC method to the PMSM system.A model predictive control based on current controller is developed in [10]; this method improves the tracking performance of -axis and -axis stator currents to the instruction currents, with simulation and experimental results.Three different predictive control algorithms are introduced in [11] for the current loop of PMSM system and are verified by both simulation and experimental results.An adaptive fuzzy model predictive control scheme is used in [12] for a nonlinear, time-varying process.The results of the fuzzy-MPC show that the algorithm displays outstanding robustness despite the model mismatch and uncontrolled dynamics.Reference [13] has analyzed the system stability by a predictive control reference model with autoregressive average model of PMSM, and the speed loop using MPC has strong robustness and static characteristics.A MPC method was applied to electrical drives in [14]; a single MPC based on the second-order relationship between voltage and speed of PMSM is developed in this paper.
MPC methods for real-time dynamic systems can be divided into two groups.One is to reduce MPC optimization issue to the choose of system action from finite input sequences [15].Since the set of input sequences is needed to be finite, modulation methods, such as SVM, are difficult to be suitable for the method.The other method, MPC optimization problem, is resolved offline, and the input sequence can be acquired by online calculation.In [16], the limitation of the method is that the mismatch between the model and the plant reduces control performance.Therefore, generalized predictive control and other traditional MPC algorithms based on the parameter model are difficult to be practically used in the PMSM speed control system [17].Traditional MPC (model predictive control) can only be adopted in slow dynamics system, and its sample time is measured in seconds or minutes.Paper [18] proposes an improved MPC algorithm which is suitable for real-time dynamic system.In conventional MPC, several steps are made by iterating the datasets to obtain the optimal consequence, which is the main section of the computational burden.In order to use recursive method to replace an iterative method, a Recursive Model Predictive Control (RMPC) for the PMSM systems is developed in the paper [19].
To overcome the problem mentioned above and further advance the industrial application of MPC in PMSM system, iterative learning control (ILC) is introduced in this paper.The objective of ILC is to utilize the finite information to enhance the control capability of the first term.In addition, the first term gained from ILC can offer a satisfied initiate point for recursive methods.Afterward, other inputs are obtained through the recursive Levenberg-Marquardt algorithm (RLMA) [20] in control horizon.In the paper, the uncertainty of motor parameters and the external load disturbance have been discussed after using the RMPC in PMSM drive system.The performance of the speed step response and the dynamic performance of the RMPC controller in the PMSM drive system are investigated under different conditions.The robust-ness of the proposed RMPC has been fully investigated in this paper.The effectiveness of the method is verified by both simulation and experimental results.The computation cost of the ILC is fairly small.RLMA launches input one by one and only requires short calculation time.Hence, RMPC is able to significantly decrease the computation cost of conventional MPC.
This paper is structured as follows.Section 2 introduces the PMSM mathematic model.Section 3 presents the design details of RMPC method in PMSM.The implementation, simulation, and experimental results of these traditional MPC and RMPC based on a discrete model of the PMSM are introduced in Section 4. A conclusion is given in Section 5.

Mathematic Model of PMSM
This paper assumes that PMSM is driven by a three-phase voltage-source inverter as shown in Figure 1.
It is assumed that the model of the surface mounted PMSM without considering the motor core saturation, ignoring hysteresis, eddy current and other losses, and the rotor without windings, permanent magnets without damping effect, the induced electromotive force waveform of the phase winding is sinusoidal waveform.The model of the surface mounted PMSM can be described as [21] where variables   ,   ,   ,   ,   , and   are the -axis voltage, -axis voltage, -axis current, -axis current, -axis inductance, and -axis inductance, respectively; variables   ,   , and   are the angular velocity, stator resistance, and flux created by the permanent magnet, respectively.The rotor speed and magnetic flux are assumed to be a constant, in the sampling period .Deducing discrete formulas (1) obtains the discrete dynamic equations of PMSM [22]: where ℎ is the sampling period and  is th sampling point.
In order to suppress external interferences and modeling errors, their effects on the output is considered using additional items   and   , as shown in the following formula: (5)

Recursive Model Predictive Control Strategy
MPC is a discrete control algorithm, and the significant idea of MPC controller chooses the next input array based on the prediction of this future system state action.Simply speaking, the arrays that optimize a designated cost function are chosen.The controller in RMPC also uses the above idea [23].

Problem Statement.
Given the discrete linear state space model as an example: In the above formula, () ∈   and () ∈   are the system state and the control variable at time , respectively.
Assume the system constraint is where  is th sampling point. is the value of the system state. is a control variable.The state prediction equation is expressed as [4] where  ≥ 0, (/) = ().
The reference trajectory of  is designed as where  is the reference point and  is an adjustable parameter.
From formulas (8) and ( 9), the performance index function of the sampling point  can be deduced as The MPC optimization problem is simplified as where ( + /) = ( + )  − ( + /), ( + /) ∈ .The  is a weighting matrix of the error and a positive semidefinite matrix and  is a length of the time domain optimization.

The First Part of Calculation Operating Variable.
As the information is rare in the first step of the recursive algorithm, and the distance between extreme value and the first item of manipulated variable (MV) obtained by the recursive algorithm is far, the MPC recursive algorithm cannot be used directly [24].Therefore, this paper adopts ILC to get the first item of MV.Learning controllers perform the same operation repeatedly under the same operating conditions.The objective of ILC is to improve performance by incorporating error value into the control for subsequent iterations.In doing so, high capability can be obtained with low transient tracking error despite large model uncertainty and repeating disturbances.
In order to minimize the computation amount of the method to the greatest extent based on ensuring the control effect, employing a -type ILC is expressed as where  is the iterations number of ILC and  is an adjustable parameter matrix.While calculating the control value using formula (12), the optimization process is expressed as unconstrained form.

The Other Items of Calculation Operation
Variables.The output of the first item of MV obtained by the ILC in the vicinity of the reference point meets the sufficient condition of the convergence recursive algorithm, so the other MV items can be obtained by the recursive algorithm.Formula ( 11) is converted to an unconstrained form by employing the Levenberg-Marquardt algorithm (LMA) type method, the LMA recursive form, as follows: where ( + /) =  * MPC /( + /), where  * MPC is the unconstrained form performance index converted by formula (11).

The Correction Compensation of RMPC Algorithm.
Modeling error, parameter variation, external interference, noise, and other factors will cause the prediction error of the system and affect the convergence rate of the RMPC method, while these effects are not considered in the above derivation.
In order to achieve high performance in industrial application, an error correction section is added in the model.We use the linear extended state observer (LESO) compensation method [25].The following expression is designed by formulas (2) and (3): The LESO changes the required observation section of formulas (3) and (4) to the new state of  2 and  4 .In this way, only the original input and output information is needed to be observed, regardless of the structure and parameters of the original system. 2 and  4 are the observed values of the   ,   , respectively.The model error can be compensated by using their feedforward compensation to formulas (3) and (4).

The Flowchart of RMPC.
The flowchart of RMPC in each predictive horizon is shown in Figure 2. Step 1. Get the values of the initial states.
Step 2. Calculate the first item of MV by the -type ILC.
Step 3. Calculate the remaining items of MV that are obtained using RLMA.
Step 4. The whole MV sequence is obtained.If  MPC of formula (11) meets requirements, go to Step 5; otherwise go to Step 2.
Step 5. Output the first item of the MV, which is the actual input of the plant.According to formulas (4), (5), and (15) and Figure 2, scroll optimization can be achieved for the objective in formula ( 16) by the recursive method, and the errors can be compensated.Thus, RMPC is realized.The structure of the proposed control system for PMSM using RMPC scheme is shown in Figure 3.

PMSM Control
The overall system includes a PMSM, a space vector pulse width modulation (SVM), a voltage-source inverter, a current loop, and a speed loop controller.The current controller employs a RMPC method.A simplified block diagram of RMPC method is introduced in Figure 4.

Simulation and Experimental
The RMPC algorithm depicted above is applied to the PMSM current control to confirm its effectiveness.Table 1 shows the main parameters of the PMSM.

Experiment Results of Simulation.
For comparison RMPC and MPC rolling optimization distinction, the prediction performance of the system is shown in the simulation experiment.
The initial value of the order is  0 () = [3, 0]  , and the reference is   () = [10,5]  .If  MPC < 2 reaches the control objectives, set the weighting matrices  in formula (14) which is diag [1 1], and formula ( 12) is the learning filter The initial value of  in ( 13) is set to 1, and the  is adjusted at each step to ensure recursive convergence  MPC .
In Figure 5, two predictions have no excellent performance.
MPC of the RMPC tends to diverge. MPC of the RMPC is fluctuant in the vicinity of 3. The reason is that the RMPC only uses information of the first 5 steps, while the MPC uses all information of 20 steps in all time domain.
When  = 20 and  = 20, the prediction results of RMPC in a time domain are shown in Figure 6.Hence,  MPC is convergent.
Computation times of the RMPC and the MPC method are given in Table 2.With the increase of  and , the computing time of RMPC shows little change while the computing time of MPC has increased significantly.As observed from Figure 5 and Table 2, in the motion control system where the period of sampling is short, RMPC algorithm is better than MPC.MPC cannot meet requirements of the period for sampling.
The acceleration and deceleration operation simulation results are shown.Current responses of -axis and -axis are shown in Figures 7 and 8.These results indicate that the -   and -axes currents follow each reference with stability at deceleration and acceleration.
In order to evaluate the control behavior, different speed reference steps have been applied to the system.The reference and measured speed are shown in Figures 9-12   Moreover, the electrical torque is shown.A better behaviour of the speed obtained with RMPC can be seen: a better settling time, without overshoot.
In Figure 9, the speed control of the PMSM by means of the proposed RMPC is shown.It is under no load conditions.The starting speed is given as 0 rpm and then jumps to 500 rpm.
Figure 10 shows the speed regulator response waveform startup with load.Startup speed is given as 0 rpm in simulation; the load is full load in 0.5 s.As shown in Figure 10, it can be seen responses of the motor speed shown a small fluctuating in 0.5 s.
Figure 11 shows the speed response when torque is varying under acceleration.The speed command is changed from 500 to 700 A at  = 0.5 s.The torque command is changed from 0 to 12 Nm at  = 0.7 s.
Figure 12 shows the speed response when torque is varying under deceleration.The speed command is changed from 500 to 100 A at  = 0.7 s.The torque command is changed from 12 to 0 Nm at  = 0.5 s.

Real-Time Experiment of PMSM Control System Based MPC and RMPC.
To assess the performance of the proposed control scheme, a three-phase PMSM control system is set up, as reported in Figure 13.The experimental platform configuration is shown in Figure 14.The main chip of the inverter adopts the TMS320F28335 digital signal processor (DSP), and experiment situations are the same as the simulation.As these pictures show, the processing demand of proposed RMPC control scheme is relatively modest for a DSP system, making it able to achieve fairly high switching frequencies.
Figure 15 shows the current response of the conventional MPC controller.The -phase current command is changed from −4 to 4 A at  = 0.032 s, that is, a rising step current command and a rising time of around 280 s.The phase delay in the current response is obvious.
Figure 16 shows -phase current response of the proposed controller.It can be seen that the actual -phase current  component tracks its reference trajectory precisely with zero steady-state error, zero overshoot.Precise current tracking is obvious in this case as well.
Figure 17 shows the estimated back EMF (ac line voltage).The estimate converges to its real value within 1 ms.The convergence time of the back EMF estimator is adjusted.
In Figure 18, the -axis current responses of the PMSM by means of the proposed RMPC are shown.The starting current is given as 0 A and then jumps to 4 A, given the value of 1 A when current is stable.
Figure 19 shows the -axis current responses of the PMSM system.Figure 20 shows the speed response when torque is 0 Nm.   Figure 21 shows the speed response when torque is varying.The torque command is changed from 0 to 12 Nm at  = 0.5 s.
Figure 22 shows the speed response waveform startup with load, and the load is full load in 0.5 s.As shown in Figure 22, it can be seen speed of response shown an small fluctuating in 0.5 s.

Conclusions
In this paper, the RMPC algorithm application for PMSM current-regulation system has been proposed.The proposed RMPC for the general structure of a traditional MPC, the proposed method, significantly decreases the computational time.Simulation and experimental results have verified the  effectiveness of the RMPC with a contrast with the traditional MPC.

Figure 7 :
Figure 7: Simulation result: and -axes current responses by PMSM system in acceleration. .

Figure 8 :
Figure 8: Simulation result: and -axes current responses by PMSM system in deceleration.

Figure 11 :
Figure 11: Simulation result: speed response when torque is varying under acceleration.

Figure 12 :
Figure 12: Simulation result: speed response when torque is varying under different speed.

Figure 22 :
Figure 22: Experimental result: speed response when torque is varying at full load condition.
System Based RMPC.Discrete dynamic equations of PMSM formula (2), (3), the RMPC algorithm as the PMSM current controller by controlling   ,   , so   ,   achieve the given reference value.Consider performance index function as  MPC ( ()) =