Model-Based Predictive Rotor Field-Oriented Angle Compensation for Induction Machine Drives

In this paper, a model-based predictive rotor field-oriented angle compensation approach is proposed for induction machine drives. Indirect rotor field-oriented control is widely used in induction machine drives for its simple implementation and low cost. However, the accuracy of the rotor field-oriented angle is affected by variable parameters such as the rotor resistance and inductance. An inaccurate rotor field-oriented angle leads to a degradation of the torque and dynamic performance, especially in the high-speed flux-weakening region. Therefore, the d-axis and q-axis currents in the rotation reference frame are predicted based on the model and compared with the feedback current to correct the rotor field-oriented angle. To improve the stability and robustness, the proposed predictive algorithm is based on the storage current, voltage, and velocity data. The algorithm can be easily realized in real-time. Finally, the simulated and experimental results verify the algorithm’s effectiveness on a 7.5 kW induction machine setup.


Introduction
Indirect rotor field-oriented control (IRFOC) is widely used in induction machine drives because of its high performance in the base speed and field-weakening region. The control scheme of IRFOC is shown in Figure 1. Currently, the flux level and torque control in IRFOC are the research highlights in the field-weakening region [1][2][3][4][5][6]. The solutions are based on the accuracy of the rotor field-oriented angle. However, the rotor field-oriented method based on the integration of the rotor angular velocity and rotor slip angular velocity in IRFOC is affected by variations in parameters such as the rotor resistance. The rotor resistance varies with temperature and can be more than twice that of the normal resistance at 25 • C. The well-known solution to rotor field-oriented inaccuracy is parameter identification [5][6][7][8][9][10] and observers [11][12][13][14][15]. In [5,6], a magnetizing curve of induction in the field-weakening region and saturated region is proposed. Off-line parameter identification methods are proposed in [7,8]. A simple calculation based on the specification of an induction machine is introduced in [9]. These methods are useful and easy to apply in industry. Online parameter identification schemes are proposed in [10,11]. Solutions to address the parameter sensitivity problem in speed sensorless control of induction machines have been proposed, such as a sliding mode observer [12][13][14][15], a low-pass filter [16], square-wave voltage injection [17], and model reference adaptive control [18]. These algorithms require considerable computational resources and mainly aim to reduce the risk of instability phenomena. However, in the IRFOC of induction machines, the inaccurate field orientation caused by variable parameters is due to not only the instability but also the load capacity and dynamic performance. Model-based predictive control (MPC) for machine drives and power electronics is an alternative control strategy that has gained attention in recent years. This approach can be used to address multivariable system constraints and nonlinearities in a very intuitive way [19]. Therefore, MPC has been successfully used for different applications, such as power converters connected to resistor-inductor (RL) loads [20], power electronics fault tolerance [21][22][23], energy management of electric vehicles [24,25], autonomous vehicle control [26,27], and high-performance drives for AC machines [28][29][30][31][32]. In [28], an MPCbased vector control method named GTV-MPTC for induction machines is proposed to cause the instantaneous torque to reach its reference value at the end of the next control period. The weighting factors in MPC are eliminated by investigating the relationship between the torque and stator flux to avoid tedious tuning work in [29]. However, the impact of variable parameters such as stator and rotor resistors is not given. In [30][31][32], MPC is used to improve the dynamic performance and reduce torque ripples in permanentmagnet synchronous motors (PMSM) drives. Compared to the vector control of induction machines, the control of PMSMs does not require a calculation of the slip velocity. Therefore, the rotor flux orientation for PMSMs is easy and accurate using a speed sensor.
In this paper, a compensation approach based on a model predictive algorithm of the rotor field-oriented angle error is proposed for IRFOC of induction machines. The d-axis and q-axis currents in the rotation reference frame are predicted and compared with the currents by current sensors to correct the rotor flux oriented angle. To improve the stability and robustness, the proposed predictive algorithm is based on the current, voltage, and velocity data stored in the memory. The algorithm can be realized easily in real-time. After compensation of the rotor field-oriented angle error, the output torque and current control performance can be improved. In Section 2, the mathematical model of IRFOC is introduced. Section 3 demonstrates the proposed model-based predictive algorithm and its implementation based on the stored data. The simulated results are shown in Section 4. Finally, the experimental results are presented to verify the proposed method in Section 5.

Induction Machine Model
The dynamic model of the induction machine is important for the study of transient analysis on computers. If the currents in the rotating reference frame are selected as the where v qs , v ds , i qs , and i ds are the stator q-axis and d-axis voltages and currents, respectively; i qr and i dr are the rotor q-axis and d-axis currents, respectively; R s and L s the stator resistance and inductance, respectively; L m is the magnetizing inductance; ω e is the synchronous rotating angular velocity; and p is the differential factor.
The rotor flux linkage expressions in terms of the currents can be written as where ψ qr and ψ dr are the rotor q-axis and d-axis flux linkages, respectively. L r is the inductance of the rotor.
The d-axis is located on the rotor flux linkage in the IRFOC. Therefore, ψ qr = 0 and ψ r = ψ dr . By Equation (2), the rotor current in Equation (1) can be substituted as where δ = 1 − L 2 m L s L r . The rotor flux in the IRFOC can be expressed as Then, Equation (5)

Discrete-Time Model
The first-order approximation, as shown in Equation (8), is usually used to transfer the continuous-time model to the discrete-time model.
where T s is the sample period. By substituting Equation (8) into Equations (6) and (7), the discrete-time model of the induction machine control system can be obtained as v qs (k) = (R s + δL s T s )i qs (k) + ω e L s i ds (k)− δL s Energies 2021, 14, 2049 The rotor flux varies slowly compared to the variation in the current and voltage. Therefore, Equations (9) and (10) can be simplified as

Model-Based Predictive Algorithm
In the discrete model, based on Equations (11) and (12), the d-axis and q-axis currents at the k + 1 instant are predicted by Then, where A = R s + δL s T s , C = δL s T s i qs (k) + v qs (k + 1), D = δL s T s i ds (k) + v ds (k + 1), E = ω e (k)L s , and F = ω e (k)δL s . The voltages v ds (k + 1) and v qs (k + 1) are the d-axis and q-axis voltages at k + 1 instant, respectively. When the IRFOC is realized in a digital signal processor (DSP) or microcontroller unit (MCU), v ds (k + 1) and v qs (k + 1) can be obtained by the pulse width modulation (PWM) duty cycle at the k instant because the PWM duty cycle calculated at the k instant will be active at the k + 1 instant. Therefore, v ds (k + 1) and v qs (k + 1) do not need to be predicted.
Based on (14), the predicted currents, i qs (k + 1) and i ds (k + 1), at the k + 1 instant can be obtained without the rotor field-oriented angle. According to Equations (13) and (14), the stator resistance R s is needed and varies with temperature. However, the variation in the stator resistance can be neglected because it is very small compared with the other parts of Equation (14). Therefore, the stator resistance on the motor plate can be used. The predictive model control diagram is shown in Figure 2. θ com in Figure 2 is the compensated angle of the rotor field-oriented error; θ we is the rotor field-oriented angle with compensation; i an (k), i bn (k), and i cn (k) are the three-phase currents at the k instant; v an (k + 1), v bn (k + 1), and v cn (k + 1) are the phase voltages at the k + 1 instant; i ds f ed (k + 1) and i qs f ed (k + 1) are the d-axis and q-axis currents based on the feedback current at the k + 1 instant.  The cost function is g(k + 1). g(k + 1) = p 1 g 1 (k + 1) + p 2 g 2 (k + 1) + . . . + p n g n (k + 1) (15) where p 1 , p 2 . . . p n are the weighting coefficients and p 1 + p 2 + . . . + p n = 1. The functions g 1 (k + 1), g 2 (k + 1) . . . g n (k + 1) are the different optimization objective cost functions. Here, If the rotor field-oriented angle is accurate, then g 1 (k + 1) = 0 and g 2 (k + 1) = 0. Therefore, g(k + 1) = 0. If the g(k + 1) = 0, then the angle θ we will be compensated by θ com . The proportional integral (PI) regulator shown in Figure 3 is used to linearly tune the θ com . Zero is used as the input of the PI regulator. It means that the rotor field-oriented angle error is none. The cost function is ( 1) gk+ .
If the rotor field-oriented angle is accurate, then 1 ( 1) 0 g k + = and 2 ( g k Therefore, ( 1) 0 gk+ = . If the ( 1) 0 gk+  , then the angle we  will be compens com  . The proportional integral (PI) regulator shown in Figure 3 is used to linea the com  . Zero is used as the input of the PI regulator. It means that the rotor fieldangle error is none.

Implemented Algorithm
The currents in the IRFOC are always in a dynamic state. The current at the k + 1 instant cannot be sensed at present. Therefore, an approach algorithm that takes advantage of the historic current and voltage is proposed.
The historic data of the current, voltage, and field-oriented angle, e.g., i(k − n), i(k − n + 1) . . . i(k − 1), i(k), as shown in Figure 4, can be recorded in the random-access memory (RAM) of the DSP or MCU. According to (14), the current at the instant k − n + 1 can be predicted with the current i(k − n) and v(k − n + 1). That is The currents in the IRFOC are always in a dynamic state. The current at the k + 1 instant cannot be sensed at present. Therefore, an approach algorithm that takes advantage of the historic current and voltage is proposed.
The historic data of the current, voltage, and field-oriented angle, e.g., () ik , as shown in Figure 4, can be recorded in the random-access memory (RAM) of the DSP or MCU. According to (14), the current at the instant The accuracy of the predicted current at the next instant can be improved with the data at the previous instants. The current and voltage are always in a dynamic state because the period of the current and voltage sample is very short and the closed-loop control period is usually the same as the sample period. Therefore, the predicted current is not stable enough to tune com  . By using the saved data, a filter for the predicted current can be used to improve the stability of the predicted and feedback current as are the predicted current and the actual feedback current, respectively. Then, according to Equations (16) and (17), the cost function can be calculated. Finally, com  can be tuned using the PI regulator in Figure 3.

System Description
Simulations were performed in the below-based speed region and the field-weakening region based on the IRFOC with a speed sensor. The rotor field angle is usually calculated by (21) and (22)   The accuracy of the predicted current at the next instant can be improved with the data at the previous instants. The current and voltage are always in a dynamic state because the period of the current and voltage sample is very short and the closed-loop control period is usually the same as the sample period. Therefore, the predicted current is not stable enough to tune θ com . By using the saved data, a filter for the predicted current can be used to improve the stability of the predicted and feedback current as where i * qds = i * qs − ji * ds and i qds = i qs − ji ds are the predicted current and the actual feedback current, respectively. Then, according to Equations (16) and (17), the cost function can be calculated. Finally, θ com can be tuned using the PI regulator in Figure 3.

System Description
Simulations were performed in the below-based speed region and the field-weakening region based on the IRFOC with a speed sensor. The rotor field angle is usually calculated by (21) and (22) in IRFOC.
where θ r is the rotor field angle, ω r is the actual electric angular velocity of the rotor, which can usually be obtained with a photoelectric encoder or rotating transformer, ω sl is the slip angular velocity, t r is the rotor time constant and t r = L r /R r . R r is the resistance of the rotor, i * qs is the torque current command, and i * ds is the magnetic current command. To reflect the inaccuracy of the rotor field orientation, the slip angular velocity is calculated with different rotor resistances, namely,0.5R r , 0.8R r , and 1.5R r . The specifications of the simulated and experimental induction machines are shown in Table 1.

Simulated Results
Simulations were performed with the Saber simulator. Figure 5 shows the simulated results at 1200 rpm. In the IRFOC, the d-axis current, referred to as the magnetic current, is kept constant in the below-based speed region. According to Equation (5), the rotor flux should be kept constant. A step load is set at 2.0 s with 30 Nm and at 4.0 s with 60 Nm. Figure 5a-c depicts the simulated results when the rotor resistance R * r is used in the slip angular velocity calculation is set as 0.5R r , 0.8R r and 1.5R r , respectively. The rotor field-oriented angle is compensated from 1.0 s. The rated flux level is set to 0.73 Wb based on the motor parameters. The flux level varies because of the inaccurate rotor field-oriented angle without compensation. This effect can lead to the degradation of dynamic and stable performance. After compensation, we observe that the flux intensity under the three  According to Equation (18), the predictive model needs stator resistance and inductance. Inductance is almost constant. The variation in the stator resistance is neglected in the proposed algorithm. To verify that the neglect is accepted, a simulation was performed. In the simulation, the stator resistance was changed from 0.374 Ω to 0.748 Ω linearly, and the rotor resistance was set to 0.5 r R . A step load is also set at 2.0 s with 30 Nm and at 4.0 s with 60 Nm. Compared with the simulated results in Figure 5a, the rotor flux and compensated angle indicate little difference, as shown in Figure 6. The flux level with angle error compensation, regardless of whether the stator resistance is changed, is much better than that without compensation. Although the maximum deviation of the compensated angle is almost 2.5 rad when the stator resistance changed to twice the nominal resistance, the deviation of the rotor flux level is only 0.03 Wb. In the application, this small difference of the rotor flux level could be neglected, and the algorithm proposed here is almost not affected by the variation in the stator resistance.
According to Equation (18), the predictive model needs stator resistance and inductance. Inductance is almost constant. The variation in the stator resistance is neglected in the proposed algorithm. To verify that the neglect is accepted, a simulation was performed. In the simulation, the stator resistance was changed from 0.374 Ω to 0.748 Ω linearly, and the rotor resistance was set to 0.5R r . A step load is also set at 2.0 s with 30 Nm and at 4.0 s with 60 Nm. Compared with the simulated results in Figure 5a, the rotor flux and compensated angle indicate little difference, as shown in Figure 6. The flux level with angle error compensation, regardless of whether the stator resistance is changed, is much better than that without compensation. Although the maximum deviation of the compensated angle is almost 2.5 rad when the stator resistance changed to twice the nominal resistance, the deviation of the rotor flux level is only 0.03 Wb. In the application, this small difference of the rotor flux level could be neglected, and the algorithm proposed here is almost not affected by the variation in the stator resistance. angle error compensation, regardless of whether the stator resistance is changed, is much better than that without compensation. Although the maximum deviation of the compensated angle is almost 2.5 rad when the stator resistance changed to twice the nominal resistance, the deviation of the rotor flux level is only 0.03 Wb. In the application, this small difference of the rotor flux level could be neglected, and the algorithm proposed here is almost not affected by the variation in the stator resistance. In the IRFOC, the q-axis current reflects the developed torque when the motor runs at a constant speed. Therefore, the q-axis current should be proportional to the torque. That is, the q-axis current with a 60 Nm load should be twice the value with a 30 Nm load at 1200 rpm. The q-axis current with different loads is presented in Figure 7. After compensation, the q-axis current is changed from approximately 15 A to 30 A when the load In the IRFOC, the q-axis current reflects the developed torque when the motor runs at a constant speed. Therefore, the q-axis current should be proportional to the torque. That is, the q-axis current with a 60 Nm load should be twice the value with a 30 Nm load at 1200 rpm. The q-axis current with different loads is presented in Figure 7. After compensation, the q-axis current is changed from approximately 15 A to 30 A when the load rises from 30 Nm to 60 Nm regardless of the R * r set. However, with no compensation, the q-axis current is different from the same load and is not proportional to the torque. The simulated current is compared in Table 2.  In Table 2, * r R is the rotor resistance, which is used to calculate the slip angular velocity in the program; r R is the actual resistance of the induction machine; seen that the q-axis current is not proportional to the load when the rotor resistance is not the actual value. After compensation, the q-axis current is almost proportional to the load. Figure 8 shows the simulation results at 3000 rpm. A step load at 20 Nm was set at  In Table 2, R * r is the rotor resistance, which is used to calculate the slip angular velocity in the program; R r is the actual resistance of the induction machine; i qs1 and i qs2 are the values of the q-axis current when the loads are 30 Nm and 60 Nm, respectively. If the rotor field orientation is accurate, then the ratio of i qs2 and i qs1 should be 2. It can be seen that the q-axis current is not proportional to the load when the rotor resistance is not the actual value. After compensation, the q-axis current is almost proportional to the load. Figure 8 shows the simulation results at 3000 rpm. A step load at 20 Nm was set at 2.0 s. When R * r = 0.5R r , the speed could no longer be kept at 3000 rpm without compensation. This is different from the simulation result at 1200 rpm shown in Figure 7 because the voltage is limited to the supply torque current in the field-weakening region if the rotor flux level is not sufficiently reduced, as shown in Figure 8b. The actual flux without compensation when R * r = 0.5R r was much higher than the normal level. Therefore, the voltage could not supply enough q-axis current when the speed was 3000 rpm, and then the speed was decreased. This finding means that an inaccurate field-oriented angle can affect the maximum output torque of induction machines. This results of q-axis current can also be seen in the following experimental results at 1200 rpm. Although the flux levels with compensation are not constant, the variable in Figure 8a is much smaller than that without compensation, as shown in Figure 8b.  Figure 9 compares the waveform with and without the proposed compensation. In the simulation, the rotor resistance began to change from 0.268 Ω to 0.536 Ω linearly at the instant of 2.0 s during the following 2 s interval. Then, the rotor resistance was changed back to 0.268 Ω linearly at the instant of 4.0 s during the next 2 s interval. After compensation, the torque, rotor flux, and q-axis current are almost the same. There are some fluctuations in the flux, especially when the resistance was changed instantly. This change is mainly because the compensation of the proposed algorithm requires some time to realize. In practice, the rotor resistance cannot be changed so fast. The proposed algorithm has enough time to regulate the slip coefficient. The simulation at 3000 rpm yielded similar results, as shown in Figure 10.  Figure 9 compares the waveform with and without the proposed compensation. In the simulation, the rotor resistance began to change from 0.268 Ω to 0.536 Ω linearly at the instant of 2.0 s during the following 2 s interval. Then, the rotor resistance was changed back to 0.268 Ω linearly at the instant of 4.0 s during the next 2 s interval. After compensation, the torque, rotor flux, and q-axis current are almost the same. There are some fluctuations in the flux, especially when the resistance was changed instantly. This change is mainly because the compensation of the proposed algorithm requires some time to realize. In practice, the rotor resistance cannot be changed so fast. The proposed algorithm has enough time to regulate the slip coefficient. The simulation at 3000 rpm yielded similar results, as shown in Figure 10. compensation, the torque, rotor flux, and q-axis current are almost the same. There are some fluctuations in the flux, especially when the resistance was changed instantly. This change is mainly because the compensation of the proposed algorithm requires some time to realize. In practice, the rotor resistance cannot be changed so fast. The proposed algorithm has enough time to regulate the slip coefficient. The simulation at 3000 rpm yielded similar results, as shown in Figure 10.

Experimental Results
Experiments were performed on the setup, as shown in Figure 11. A 7.5 kW spindle motor was used, and its parameters are shown in Table 1. The DC generator was used as a load in the high-speed region. The output torque can be obtained by the torque transducer, which was equipped between the spindle motor and the DC generator. A DSP TMS320F28377D (Texas Instruments, Texas, USA), which is a two core MCU was used to realize the proposed algorithm and IRFOC algorithm. A CPLD EPM240T100C5N (Altera, California, USA) was used to realize PWM. In the experiment, the PWM frequency was 10 kHz. The current sample and control frequency was 20 kHz. The phase currents were obtained by the two current sensors on the power converter board. In the experiment, the maximum q-axis current was set to 3 2 rated i . As the simulation shows, the q-axis current was not proportional to the load at the same flux level when the field-oriented angle is inaccurate. The q-axis current comparative experiment results are given in Figure 12 at 1200 rpm with different loads. The torque was applied by a DC generator. The q-axis current was calculated by the DSP and stored in RAM. Therefore, the q-axis current of the experiment was read by the DSP and transferred to a computer.

Experimental Results
Experiments were performed on the setup, as shown in Figure 11. A 7.5 kW spindle motor was used, and its parameters are shown in Table 1. The DC generator was used as a load in the high-speed region. The output torque can be obtained by the torque transducer, which was equipped between the spindle motor and the DC generator. A DSP TMS320F28377D (Texas Instruments, Texas, USA), which is a two core MCU was used to realize the proposed algorithm and IRFOC algorithm. A CPLD EPM240T100C5N (Altera, California, USA) was used to realize PWM. In the experiment, the PWM frequency was 10 kHz. The current sample and control frequency was 20 kHz. The phase currents were obtained by the two current sensors on the power converter board.

Experimental Results
Experiments were performed on the setup, as shown in Figure 11. A 7.5 kW spindle motor was used, and its parameters are shown in Table 1. The DC generator was used as a load in the high-speed region. The output torque can be obtained by the torque transducer, which was equipped between the spindle motor and the DC generator. A DSP TMS320F28377D (Texas Instruments, Texas, USA), which is a two core MCU was used to realize the proposed algorithm and IRFOC algorithm. A CPLD EPM240T100C5N (Altera, California, USA) was used to realize PWM. In the experiment, the PWM frequency was 10 kHz. The current sample and control frequency was 20 kHz. The phase currents were obtained by the two current sensors on the power converter board. In the experiment, the maximum q-axis current was set to 3 2 rated i . As the simulation shows, the q-axis current was not proportional to the load at the same flux level when the field-oriented angle is inaccurate. The q-axis current comparative experiment results are given in Figure 12 at 1200 rpm with different loads. The torque was applied by a DC generator. The q-axis current was calculated by the DSP and stored in RAM. Therefore, the q-axis current of the experiment was read by the DSP and transferred to a computer. The experimental results are similar to the simulated results shown in Table 2. After In the experiment, the maximum q-axis current was set to 3 √ 2i rated . As the simulation shows, the q-axis current was not proportional to the load at the same flux level when the field-oriented angle is inaccurate. The q-axis current comparative experiment results are given in Figure 12 at 1200 rpm with different loads. The torque was applied by a DC generator. The q-axis current was calculated by the DSP and stored in RAM. Therefore, the q-axis current of the experiment was read by the DSP and transferred to a computer.
The experimental results are similar to the simulated results shown in Table 2. After compensating for the rotor flux oriented angle error, the q-axis current is proportional to the load torque and is almost the same regardless of which rotor resistance was used to calculate the slip angular velocity.  If the field-oriented angle is not accurate, the maximum torque will decrease, especially in the flux weakening region. The maximum output torque at different speeds was recorded, as shown in Figure 13. The maximum torque decreased with increasing speed when the rotor resistance used in the slip angular velocity calculation was not accurate. After compensation, the output torque was increased. If the field-oriented angle is not accurate, the maximum torque will decrease, especially in the flux weakening region. The maximum output torque at different speeds was recorded, as shown in Figure 13. The maximum torque decreased with increasing speed when the rotor resistance used in the slip angular velocity calculation was not accurate. After compensation, the output torque was increased.

Conclusions
This paper focuses on the correction of the field-oriented inaccuracy by a model predictive method in induction machine drives, including the base speed region and fieldweakening region. The inaccuracy of the field-oriented control will lead to the actual flux variation, which could be larger or smaller than the reference value. Furthermore, the flux level variation will decrease the output torque and degrade the dynamic performance and current control regulator, especially in the field-weakening region. Therefore, a q-axis and d-axis current predictive method-based correction method for the field-oriented angle is proposed in this paper. To easily realize the proposed method in real-time, the data, such as the current, voltage and velocity used in MPC, are stored in the RAM of the DSP. The effectiveness of this approach is verified by simulations and experiments on a 7.5 kW induction machine setup.

Conclusions
This paper focuses on the correction of the field-oriented inaccuracy by a model predictive method in induction machine drives, including the base speed region and fieldweakening region. The inaccuracy of the field-oriented control will lead to the actual flux variation, which could be larger or smaller than the reference value. Furthermore, the flux level variation will decrease the output torque and degrade the dynamic performance and current control regulator, especially in the field-weakening region. Therefore, a q-axis and d-axis current predictive method-based correction method for the field-oriented angle is proposed in this paper. To easily realize the proposed method in real-time, the data, such as the current, voltage and velocity used in MPC, are stored in the RAM of the DSP. The effectiveness of this approach is verified by simulations and experiments on a 7.5 kW induction machine setup.