#### Abstract

In the present study, the current control method of the model predictive control is applied to the field-oriented control induction motor. The augmentation model of the motor is initially established based on the stator current equation, which performs the current predictive control and formulates the new cost function by means of tracking error. Then, the influence of parameter error on the current control stability in the prediction model is analysed, and the current static error is corrected according to the correlation between the input and feedback. Finally, a simple and effective three-vector control strategy is proposed. Moreover, three adjacent basic voltage vectors are utilized, and then six candidate voltage vectors are synthesized in each sector to replace eight basic voltage vectors in the conventional model predictive control (MPC). The obtained results show that synthesized vectors, which have arbitrary amplitude and direction, significantly expand the coverage of the system’s control set, reduce the torque and flux pulsation in the conventional MPC, and improve the steady-state performance of the system. Finally, the dSPACE platform is employed to validate the performed experiment. It is concluded that the proposed method can reduce the torque and flux pulse, perform the induction motor current control, and improve the steady-state performance of the system.

#### 1. Introduction

Induction motors consume low power, while they have reliable performance. Therefore, this type of electrical equipment has been widely applied almost in all industries. With the help of the field-oriented control (FOC) [1], the decoupling speed-governing strategy, also known as the vector control, can be applied to perform the decoupling control on the motor flux and torque. In this strategy, the decoupling control on motor flux and torque is realized through controlling the flux and torque components of stator current. Therefore, defining the rotor flux and current control is of significant importance in the FOC. In order to ensure that the motor current can strictly follow the given changes, while preserving the rapidity and stability in the operation, the motor current component is controlled through the proportional integral (PI) regulator under the synchronous shaft system in the FOC. Therefore, the controlled object can be transformed from an alternating current component to a direct current component, thereby simplifying the control. Reviewing the literature indicates that with the increase of the complexity of the polyphase motor system and the development of microprocessors, the model predictive control (MPC) [2] has attracted increasing attention, where the optimal execution variable is calculated based on the operation of the future system behavior.

The finite control set MPC (FCS-MPC) [3] is a modified member in the MPC, which is an alternative solution in the control of the power converter and driver. The core idea of this scheme is to select the voltage vector based on minimizing a single cost function, which is characterized by the rapid response and easy handling of nonlinear constraints [4]. Compared with the conventional vector current loop PI control, FCS-MPC used in the current loop of vector control has a better dynamic response and it relatively decreases the current harmonic component [5, 6].

The accurate model parameters are required in the model predictive current control (MPCC) of the motor. However, errors always exist in measuring the resistance, inductance, and other parameters. More specifically, the motor inductance changes in the working condition, and the saturation characteristic of the motor inductance leads to error between the model parameter and the actual value for large loads so that the current control oscillates or generates static error [7]. Therefore, Niu et al. [8] proposed the robust control method to solve the system oscillation, caused by too large inductance parameters. However, they ignored the influence of inductance parameter error on the current static error. Wang et al. [9] proposed the model reference adaptive control. They identified the inductance and other parameters online. However, studies show that the proposed model requires a large amount of system resource. Therefore, the correction of current static error is still a problem of current control that should be solved in the MPCC.

Meanwhile, different schemes have been proposed so far to improve the stability of the MPC system. Increasing the number of alternative vectors [10, 11], adjusting the voltage vector magnitude [12], and expanding the voltage vector direction [13, 14] are proposed in this regard. In order to find alternative methods for the vector optimization, Xia et al. [10] combined two adjacent effective voltages into one virtual voltage vector in the eight-vector six-sector region. They applied the six basic voltage vectors, thereby obtaining 12 alternative voltage vectors. Studies showed that despite the increased voltage vector, the system improvement effect is not obvious. Hassine et al. [11] added six virtual voltage vectors and one zero vector and obtained 19 alternative voltage vectors in total. However, the optimization is required for 10 times so that the calculation expanse increases during the sampling period. Zhang et al. [15] proposed the three-vector scheme to reduce the torque and flux pulse. However, the first voltage vector applied in the next control cycle is confined to the last vector voltage applied in the previous cycle.

Considering the aforementioned problems, it is intended to propose a new cost function for error tracking based on the predictive control model. Meanwhile, the influence of parameter error on the current control stability will be analysed, and the quantitative relation between the static error of current command and actual feedback and the model parameter error will be derived [16]. It is expected to effectively reduce the current static error. Finally, an intuitive and effective three-vector strategy will be proposed. In each control cycle, three voltage vectors, including two active voltage vectors and one zero voltage vector, are applied. All vectors are adjacent so that the control strategy can be intuitively and simply realized. Based on the predictive control principle, it is expected that duration of the voltage vector can be determined so that the complexity, computation amount of the algorithm, and corresponding torque and flux pulses decrease.

#### 2. Mathematical Model of Induction Motor

The mathematical model of induction motor can be described as follows [17]:where and are the stator voltage and current vector, and are the flux vectors of stator and rotor, is the inductance between the stator and rotor, is the rotor/stator self-inductance, is the rotor/stator resistance, is the rotor electrical angular velocity, is the number of motor pole pairs, is the electromagnetic torque, and is the Kronecker product.

According to the above formula, the stator current can be described as follows:where , , , , , and the subscripts correspond to the components on the stationary coordinate axis. According to the forward Euler formula , formulas (1) and (6) can be discretized as follows:where is the sampling time and is the voltage vector.

With and , the rotor flux at instant can be calculated.

#### 3. Three-Vector MPCC with Current Static Error Correction

##### 3.1. MPCC System Structure

The predictive current is controlled within a fixed sampling period. Moreover, the current error vector trend is simulated through finite switch states produced by the converter and the system model at different switch states. In the actual control, the sampling current obtained in the outer loop is compared with the predicted value in the next sampling time, and the optimal control voltage and the output voltage space vector are selected accordingly. Figure 1 illustrates the flowchart of the proposed system.

The space vector can be expressed in the form below:where , , and are input voltages. The switch state of converter depends on the gate-level signals , , and . More specifically, indicates that upper and lower gates are open and closed, respectively. Moreover, indicates that the upper and lower gates are closed and open, respectively. There are 8 switch states in total. Subsequently, a total of 8 voltage vectors are considered in the combination of gate-level signals.

##### 3.2. Optimization of Cost Function

and are defined as the real part and imaginary part of current vector , and and are defined as the real part and imaginary part of the given current vector. In order to minimize the tracking error of current vector, two components of current in coordinate system are used as the reference of new cost function in this paper.where and are the given current values at instant in the coordinate system.

A large number of calculations are needed in the digital implementation process based on MPC, leading to time delay in the drive [18, 19]. As a result, the system performance will be deteriorated. To eliminate the delay in digital control, the cost function should be minimized, so a new cost function was introduced:where and are the given current values at instant in the coordinate system.

Firstly, and at instant should be determined. Since the sampling frequency is much higher than the frequencies of the reference signals, it can be considered and at instant are approximately equal to the present values, i.e., and .

Secondly, estimate the predicted stator current according to (8) based on the voltage vector determined in the previous control period. Then, and can be simply predicted as

The mechanical constant of rotor is much larger than the sampling time, so can be approximately obtained.

##### 3.3. Correction of Current Static Error

In order to correct the current static error, equation (8) can be transformed as follows:

Equation (14) indicates that the current static error may be originated from three components , , and . Therefore, these components are analysed.

###### 3.3.1. Investigating the Influence of Parameter Error on Static Error

Assuming that there is an error in the current predictive control, and are defined as the motor inductance parameter in the controller and the actual motor inductance parameter, respectively. Then, the parameter error is defined as the difference between actual parameter and parameter in the controller. Substituting for into equation (14) yields the following expression:

Since the expression for and axes is similar, parameters on one axis are analysed. For example, the superscript on axis is a given value. Since , equation (16) can be simplified based on equations (14) and (15):

Convert equation (16) to *Z*-discrete domain transfer function:

The characteristic root of the system obtained from equation (17) can be expressed as . The sufficient and necessary condition for the stability of a discrete-time control system is that the poles of the system should be in the unit circle of the -plane.

Equation (18) indicates that the stability condition of the system is . Generally, the error of parameters is within 2 times, so the system stability is ensured.

If the deviation of leads to the static error between the actual current and the current command , it is assumed that

Substituting equation (19) into (16) yields the following:

This expression indicates that the parameter has low impact on the static error. Moreover, as the sampling period reduces or as the expression approaches 0, static error decreases further.

###### 3.3.2. Investigating the Influence of Parameter Error on Static Error

Assuming that there is an error in the current predictive control, and are defined as the parameter in the controller and the actual parameter, respectively. When , the following expression can be obtained:

Convert (21) to *Z*-discrete domain transfer function:

According to the stability criterion of the discrete domain system, the system is stable when the poles of the system are in the unit circle of the -plane. It is found that the system is stable when the condition is satisfied.

Substituting equation (19) into (21), the following expression can be obtained:

This expression indicates that is in direct proportion to the deviation . When approaches 0, the motor is in no-load operation so that is close to 0. In other words, when the motor runs in no-load condition, even if there is a deviation in the current , it is not caused by .

On the one hand, when , for positive parameter error (i.e., ), , while for negative parameter error (i.e., ), .

On the other hand, when , the parameter error and current static error are opposite to those when . These are summarized in Table 1.

###### 3.3.3. Investigating the Influence of Parameter Error on Static Error

To this end, and are defined as the parameter in the controller and the actual parameter, respectively. These parameters can be mathematically expressed as follows:

It can be seen from the above equation that parameters are defined on the coordinate axes so that the parameter error leads to the static error . On the axis, the current static error is in direct proportion to the parameter error , while it is inversely proportional to the parameter error on axis. It is observed that as the motor speed increases, the rotor angular speed increases so that the same size deviation leads to current static error.

Based on the foregoing analysis, the parameter errors of and result in the static error between the given value and the actual value of the current. When the motor runs in the no-load condition, the current static error is caused by the deviation , which is independent of . Since static error increases with the increase of , the motor runs at the rated speed in the no-load condition and parameter of the predictive controller is adjusted by the static error of . When parameter converges to the true value of the motor and the motor runs at a constant load, will have current static error, which originates from the deviation of parameter . The most direct way to eliminate the static error in the feedback control system is to add the error integral. In the present study, the static error of is applied to adjust the control parameters. This can be mathematically expressed as follows:where and are the revised parameter values of the motor, while and are the integral coefficients. Moreover, and terms of and expressions are identical, so the method based on the -axis adjustment is also applicable to the -axis.

##### 3.4. Principle of the Three-Vector Optimization

In order to obtain better steady-state performance, the three-vector control strategy was proposed. This strategy virtualizes six alternative voltage vectors online, while conventional schemes utilize eight basic voltage vectors. Therefore, the effective range system control is remarkably expanded in the three-vector control strategy. Figure 2 indicates that the alternative voltage vector is synthesized by three adjacent voltage vectors.

In Figure 2, denote eight basic voltage vectors, while are six virtual voltage vectors, where is synthesized by two components and . It should be indicated that and denote the optimal duration of the first and second voltage vectors and , respectively. Assuming that is the optimal time for the zero voltage vector, the output selected vector is

According to the sine rule of the included angle between and , the state retention time of each vector can be obtained as follows:

Figure 2 indicates that the single-vector MPC provides the majority of limited voltage vectors. Meanwhile, only one of eight basic voltage vectors with fixed direction and amplitude can be selected. In the duty ratio method, the zero vector and effective vector are adopted to adjust the magnitude of the expected voltage vector. However, directions of these vectors are still fixed. The extended double-vector method can not only adjust the direction of the expected voltage vector but also change the magnitude of the expected voltage vector. The proposed three-vector method constructs six groups of candidate voltage vectors with adjustable amplitude and direction. These vectors cover the entire vector selection area and expand the feasible range of the MPC. Based on the aforementioned analysis, the diagram of the three-vector optimization induction motor MPCC for the current static error correction can be obtained. Figure 3 illustrates the obtained results.

##### 3.5. Vector Time Optimization

In order to perform the persistent time optimization, the voltage vector is divided into the real part and imaginary part in accordance with the components under the stationary coordinates. Assuming that denotes the first effective voltage vector output, the coordinate slope of real and imaginary axes is defined as and , respectively. Similarly, coordinate slope of the second effective voltage vector and the zero vector is defined as and and and , respectively. According to equation (13), the current can be predicted at time step. When only one vector is applied, slopes of factors can be obtained through substituting equation (13) into (28).

When the first voltage vector is applied, the current parameters at time step can be presented by and . Moreover, when the first voltage vector is applied, the current parameters at time step can be expressed by and . Finally, when the zero vector is applied, current parameters at time step can be presented by and .

When three basic voltage vectors are applied for a certain period of time during one control cycle, the coordinate coefficients in the next control cycle can be predicted as follows:

In order to perform the dead-beat tracking, the tracking error of coordinate coefficient at must be 0, so the following assumption can be made in this regard:

Equations (27)–(30) can be combined to derive durations of voltage vectors as the following:where and are the sampling time error at under the change at variable coordinate. Since , , and , the early and the late vectors can be defined as and , respectively, where . When the condition is not met, the duration should be revised as follows:

The process of the proposed current prediction-based three-vector voltage optimization system for the induction motor with current static error correction can be summarized as follows:(i)Measure rotor speed , stator current , and dc-link voltage in current sampling period.(ii)Estimate and according to (7) and (8) based on the voltage vector determined in the previous control period and then calculate and .(iii)Correction of static current error based on equation (25).(iv)Predict and by (13), calculate the durations , , and by (31), and correct them by (32).(v)Substitute and into (12); the corresponding combination vector is obtained by minimizing the cost function.

#### 4. Experimental Results

To verify the feasibility of the three-vector voltage optimization current predictive control proposed in this paper in induction motor, a dSPACE DS1104-based controller unit is used to constitute an integrated back-to-back controller platform for induction motor drives. The photographic view shown in Figure 4 depicts the universal experimental platform.

The motor parameters are shown in Table 2. To distinguish the control strategy, the traditional single-vector MPCC method is MPCC-I, without current static error correction, and the three-vector MPCC strategy of current static error correction proposed in this paper is MPCC-II. The sampling frequency of MPCC-I is set to 10 kHz, while the sampling frequency of MPCC-II is 8 kHz to show its superiority.

In order to better analyse the effect of the integral coefficient on eliminating the static error, the stator current response on the dq shaft is investigated through the experiment. As shown in the MPCC-II strategy in Figure 5, the rotating speed of the motor is 150 rpm, while the rated speed is 400 rpm at 1 s and it declines to 150 rpm at 2 s. From top to bottom, the correction without static error, static error coefficient , and the current response diagram on dq-axis when = 0.5, 1, and 5 are presented in Figure 5.

**(a)**

**(b)**

**(c)**

**(d)**

Figure 5 indicates that the static error between the current command and the actual current is very small, and variations of the integral coefficient have low impact on the static error correction. When given speed suddenly changes, as increases, the pulse of actual current and increases too. Moreover, the convergence deteriorates as the integral coefficient increases. In the case of no current static error correction, static error between the current command and the actual current is remarkable. When , the corrective effect on static error between the current command and the actual current is the most satisfying effect and it is approximately zero.

The same set of experiments is based on , and the current response diagram on the dq-axis is almost the same as that for the previous group with , 1, and 5. It is assumed that the best static error correction is obtained when .

In order to evaluate the performance of the current static error correction when , the dynamic response of the motor from 800 rpm to 1000 rpm and from 1000 rpm to 800 rpm is investigated in Figures 6 and 7, respectively. Former results prove that the integral factor has a remarkable impact on the current static error. Figure 8 shows dynamic responses for both methods. From top to bottom, distributions of the rotor speed, rotor flux, electromagnetic torque, and the stator current are presented. It is observed that when the motor speed increases, the integral coefficient still has an effect on the current static error correction. The current static difference reduces the efficiency. Therefore, the static error correction can effectively improve the dynamic response of the system in the same control strategy.

**(a)**

**(b)**

**(a)**

**(b)**

**(a)**

**(b)**

Considering the load effect on the control method, sudden load and sudden load-reduction experiments are performed. The motor speed is set to 800 rpm, and the load torque increases from 0 to 2 N·m and then it drops to 0 N·m. Figure 8 illustrates the experimental results. From top to bottom, the distributions of the response of the current on the dq-axis, stator current, speed, and torque are presented. In the case of added and removed load, the static error correction is superior in the MPCC-II with the integral coefficient to that without the integral coefficient. Moreover, its static error is approximately zero. The experiment demonstrates that adjusting the static error coefficient has a significant effect on the current static error correction. When the integral coefficient is selected in MPCC-II, the current static error should be reduced as far as possible. The previous analysis is complemented with the experimental tests to study the influence of the parameter error on the variation of the motor speed and load. For the induction motor in this study, and are selected as the most appropriate integral coefficients after multiple experiments.

Figure 9 shows the dynamic response from 150 rpm to 400 rpm in both methods. From top to bottom, the distribution of the rotor speed, rotor flux, electromagnetic torque, and stator current is presented. Figure 10 shows the magnification effect. Moreover, Figure 11 shows the current response diagram on dq-axis. In both methods, the speed rapidly increases from 150 rpm to 400 rpm, and the rotor flux is almost constant during the process, indicating that the proposed MPCC-II strategy can perform the decoupling control on the rotor flux and torque, and the current static error is also relatively small and remains stable in case of no large starting current. The experimental results shown in Figure 10 suggest that the MPCC- II has lower torque and flux ripple.

**(a)**

**(b)**

**(a)**

**(b)**

**(a)**

**(b)**

Based on the influences of the coaxiality and internal coefficient of friction in the manufacturing process of two motors, no load is equivalent to a certain load. Therefore, the electromagnetic torque in the steady state in the experimental waveform is always not zero.

The number of voltage vectors, the number of objective functions, and the width of prediction affect the complexity of the algorithm. In the present study, the objective function has 2 subfunctions. Moreover, the prediction width and the conventional prediction width are 2 step and 1 step, respectively. The conventional method requires 8 times to select the target function corresponding to 8 switch vectors and only 6 times to select the proposed synthesized three vectors. It is observed that the selection times can be effectively reduced by using the synthesized three vectors for the optimization. Moreover, Table 3 shows that despite the low frequency, the dynamic performance of MPCC-II is more reasonable in comparison with the MPCC-I.

#### 5. Conclusion

In the implementation of the conventional MPCC, applying only one voltage vector in each control cycle leads to great torque and flux pulse in the speed changes, thereby limiting the practicality of the conventional MPCC. In the present study, the current static error correction method is proposed, which is based on the parameter error analysis of the predictive model. Moreover, the modified three-vector algorithm is introduced to improve the steady-state performance, which extends the effective range of the system control set significantly. Furthermore, the three-vector current predictive control scheme proposed for the current static error correction is verified through experiments, which performs the decoupling control on torque and rotor flux, has the advantage of high dynamic response of the current predictive control, and eliminates the current static error due to the inconsistent model parameter of the controller motor.

#### Data Availability

The data used to support the findings of this study are available from the corresponding author upon request.

#### Conflicts of Interest

The authors declare that they have no conflicts of interest.