Simulation Research on Deadbeat Direct Torque and Flux Control of Permanent Magnet Synchronous Motor

: Direct torque control (DTC) is widely used in a permanent-magnet synchronous motor (PMSM), but it has its own shortcomings caused by high torque ripple. Deadbeat-direct torque and ﬂux control (DB-DTFC) is a new torque and ﬂux method compared with DTC. However, the traditional DB-DTFC is often based on rotor-ﬂux-oriented control. The reference voltage of the stator is computed in a rotor-ﬂux-oriented coordinate system, and the solution involves solving quadratic equations, which will increase the burden of computational processing. To improve the computation of the reference voltages and the control performance, this paper proposes a new DB-DTFC algorithm and introduces its basic principles. First, the proposed DB-DTFC algorithm uses the forward Euler equation to solve the reference voltage in a stator-ﬂux-oriented coordinate system. Second, the discrete mathematical model is used to predict the next control current to achieve deadbeat control. Third, the structural model of the proposed DB-DTFC is constructed. Finally, the simulation model of the proposed DB-DTFC algorithm is built with a MATLAB/Simulink platform. The simulation results prove that the proposed DB-DTFC algorithm can achieve better control performance in torque and ﬂux control compared with the DTC algorithm and SVM-based direct torque and ﬂux control (SVM-DTFC) algorithm. In particular, the torque index of DB-DTFC is reduced about 6% in a limited speed range in comparison with the DTC algorithm.


Introduction
The permanent-magnet synchronous motor (PMSM) is widely used in civil, military, and aerospace applications because of its high efficiency, simple structure, and reliable operation [1][2][3][4]. Although the PMSM has these advantages, it is a multivariable, strongly coupled, nonlinear control system, which tends to have a large torque ripple and requires certain control algorithms to obtain better control performance [5,6]. High-performance control of the PMSM can be broadly classified as field-oriented control [7,8], direct torque control (DTC), and predictive control [9][10][11][12]. The deadbeat-direct torque and flux control (DB-DTFC) studied in this paper is based on the extension of direct torque control.
DTC selects the appropriate stator voltage vectors directly in a pre-set switching table based on the differences between the torque and flux linkage, which is often used in the control of a PMSM because of its fast dynamic response [13,14]. However, the existence of the hysteresis loop controllers in the DTC algorithm results in a large output torque and flux linkage pulse [15]. Different solutions have been proposed by experts to solve this disadvantage of the DTC algorithm. In [16], Abassi optimized the sector division of the complex plane in the DTC algorithm and increased the number of basic space voltage vectors, thus reducing the deviation between the reference voltage vector and the selected voltage vector and improving the torque control accuracy. In [17], Ren used a simple but effective method to obtain a duty ratio and reduce the torque ripple of the DTC with a duty-ratio adjustment. In [18,19], the space-vector modulation (SVM) technique was introduced into the conventional DTC system, and the SVM-based direct torque and flux control (SVM-DTFC) strategy was proposed, which applied the SVM technique to obtain the stator reference voltage and used PI controllers to replace the hysteresis loop controllers in the DTC. However, the SVM-DTFC contains two PI controllers, which make the tuning of the control parameters more complex. In [20][21][22][23], the DB-DTFC algorithm was proposed, which solved the problems of the variable inverter switching frequency and low accuracy of torque and flux control in the DTC algorithm, and the DB-DTFC algorithm has a better dynamic performance compared with the SVM-DTFC algorithm because it only contains one PI controller in the inner loop control. In [24], Lee conducted a study to evaluate the stability of the DB-DTFC's machine parameter variations. In [25], Scarcella studied the fault tolerance of the DB-DTFC. In [26], Vafaie used two improved deadbeat methods to improve the steady-state and transient-state performances of the PMSM. In [27], Saur implemented a real-time torque ripple estimation based on a flux observer. In [28], Flieh investigated how to reduce motor losses under voltage limitations using the DB-DTFC algorithm.
The traditional DB-DTFC algorithm is realized in the rotor-flux-orientation coordinate system. In computing the stator reference voltage, the voltage of the stator resistance is ignored. This computation method for the stator reference voltage is not accurate enough, and the computation process involves solving a quadratic equation, which makes the whole computation process very complicated.
In this paper, we propose a new DB-DTFC algorithm to solve the stator reference voltage in a stator-flux-oriented coordinate system that avoids the quadratic equation involved in the process of solving the stator reference voltage in a rotor-flux-oriented coordinate system by the traditional DB-DTFC algorithm and reduces the computational burden. The discrete mathematical model is used to predict the next control current to achieve deadbeat control. This paper first introduces the basic principle of the traditional DB-DTFC algorithm and the proposed DB-DTFC algorithm in Section 2. The design of the system model is given in Section 3. Then the construction of the simulation model and the simulation results are given in Section 4. The comparation of the proposed DB-DTFC algorithm, the SVM-DTFC algorithm, and the DTC algorithm is given in Section 5. Finally, some conclusions are drawn in Section 6.

Definition and Relationship of Each Coordinate System
In the designing process of a PMSM control method, the coupling relationship between the state variables of the PMSM in different coordinate systems is somewhat different. To achieve a simpler mathematical model for the PMSM and simplify the computation of the control process, it is often necessary to analyze the characteristics of the PMSM with the help of different coordinate systems. The distribution of several different coordinate systems used in the paper is shown in Figure 1, where the αβ axes are the static coordinate system, dq axes the rotor-flux-oriented coordinate system, and xy axes the stator-fluxoriented coordinate system. ψ s , ψ r , i s , and u s are stator flux vector, rotor flux vector, stator current vector, and stator voltage vector, respectively. ω r and ω s represent the rotating electrical angular velocity of rotor flux and stator flux, respectively. r and s are, respectively, the angle of rotor flux position and stator flux position. Define δ as the load angle and from the distribution of the angles at each position in Figure 1 we can know that δ = θ s − θ r [29].

The Basic Principle of the Traditional DB-DTFC Algorithm
According to the mathematical model of the PMSM, the stator flux equation and the torque equation in the dq axes can be obtained with the following equations: where ψ d , ψ q , i d , and i q are the d-axis components of the stator flux, q-axis components of the stator flux, d-axis components of the stator current, and q-axis components of the stator current, respectively. L d and L q are, respectively, the d-axis and q-axis inductances. T e is the electromagnetic torque, ψ f is the amplitude of the permanent-magnet flux, and p is the number of pole pairs. The stator reference voltage of the traditional DB-DTFC algorithm is solved based on the rotor-flux-oriented coordinate system. According to the mathematical model of the PMSM, the stator voltage equation in the dq axes can be obtained with the following equation: where u d and u q are the d-axis components of the stator voltage, and the q-axis components of the stator voltage, respectively. R s is the stator resistance. From Equations (1) and (3), the differential equations for the stator flux and stator current in the dq axes can be derived from the following equations: The derivation of Equation (2) can be computed as the following equation: Substituting Equations (4) and (5) into Equation (6), the new derivation of the torque equation in dq axes can be achieved with the following equation: The discrete expression for the torque equation can be computed as the following equation: where k + 1 represents the next control period, k represents the current control period, and T s is the control period. Substituting Equation (7) into Equation (8) and discretizing, the discretized torque equation can be achieved with the following equation: According to Equation (9), the expression for the voltage u q (k) can be rewritten as the following equation: where: Discretizing Equation (4) and disregarding the voltage drop across the stator resistance, the discrete stator flux equation can be obtained with the following equation: In the torque and flux control, it is usually necessary to keep the stator flux amplitude constant and change the torque angle to achieve torque control. To meet the requirement of constant flux amplitude, it is necessary to make the stator flux amplitude in the next control period equal to its given reference value: where |ψ s | represents the absolute value, and ψ * s is the reference value of the stator flux. Substituting Equation (13) into Equation (14): Substituting Equation (10) into Equation (15), a quadratic equation for the stator voltage can be obtained. Since Equation (10) is derived from torque Equation (9), the quadratic equation can be considered as a combination of the torque equation and the flux equation to acquire: According to Equation (16), the solution of u d (k) can be described by the following equation: where: With the above u d (k), u q (k) can be obtained from Equation (10): The computation process of u d (k), u q (k) in Equations (17) and (19) can be referenced in Figure 2. The circle indicates flux Equation (15), the line indicates Equation (10), and the hexagon represents the six nonzero voltage vectors in the SVM module [20]. x 1 and x 2 represent the two possible solutions of the quadratic Equation (16). From Figure 2, it can be seen that x 1 exceeds the action range of the SVM-based space voltage vector. According to the above analysis, there is only one solution x 2 that satisfies Equation (16).
, u * α and u * β can be computed with the following equation: where u * α and u * β are, respectively, the α-axis and β-axis components of the reference stator voltage.
Finally, u * α and u * β are used as the inputs of the SVM module. Then, the DB-DTFC based on rotor-flux-orientated control can be realized.

The New DB-DTFC Algorithm
The proposed DB-DTFC algorithm applies the stator flux position angle θ s for coordinate transformation and transforms the stator current in the αβ axes to the xy axes to obtain i x and i y , which can be described by the following equation: where i x and i y are, respectively, the x-axis and y-axis components of the stator current and i α and i β are the α-axis and β-axis components of the stator current, respectively.
According to the mathematical model of the PMSM, the stator voltage equation in the xy axes is obtained as the following equation: where u x and u y are, respectively, the x-axis and y-axis components of the stator voltage and ψ x and ψ y are the x-axis and y-axis components of the stator flux, respectively. In the xy axes, ψ x , ψ y , and ω s satisfy the following equations: where |ψ s | is the stator flux amplitude. Substituting Equations (23) and (24) into Equation (22), the new stator voltage equation in the xy axes can be achieved as the following equation: Equation (25) is discretized using the forward Euler equation to obtain a new discrete expression as the following equation: From the above computation process, it can be seen that the proposed DB-DTFC stator voltage solution process is simpler than the traditional DB-DTFC stator voltage solution process. At the same time, the voltage drop across the stator resistance is also considered in the expression of the stator voltage. Therefore, the stator voltage value solved by the proposed DB-DTFC algorithm is more accurate.
To realize deadbeat control, the stator flux amplitude |ψ s (k + 1)| and the load angle |δ(k + 1)| of the next control cycle in Equation (26) are set as the reference values of the stator flux amplitude and the load angle. Then the xy axes components of the stator voltage reference values are acquired as the following equation: where u * x and u * y are, respectively, the x-axis and y-axis components of the reference stator voltage.
According to the above analysis, the stator flux amplitude and the load angle in the (k + 1)th control cycle are used as the reference values in the kth control cycle. The acquired reference voltages u * x and u * y in the kth control cycle are given as the inputs to the SVM module. However, due to the time delay of one control cycle in the control system, the reference voltage is not really delivered to the SVM module until the next control period. If the above modulated voltages are applied to the stator winding of the motor, this will cause a large deviation between the motor control state and the reference value.
To compensate for the time delay, it is often necessary to predict the state quantities at the next moment in the deadbeat control. In this paper, we use the discrete mathematical model to realize the prediction of the next control currents. The discrete current equation, stator flux equation, and torque equation in dq axes are shown in the following Equations (28)-(30) [30]: According to Equation (28), the amplitude of the stator flux in the (k + 1)th control cycle is obtained as the following equation: With i d (k + 1) and i q (k + 1) in Equation (28), i α (k + 1) and i β (k + 1) can be acquired through the inverse Park transformation. With the help of Equation (21), i x (k + 1) and i y (k + 1) can be acquired based on i α (k + 1) and i β (k + 1). Finally, the stator voltages u x (k + 1) and u y (k + 1) can be acquire with Equation (26) in the (k + 1)th control cycle. The acquired u x (k + 1) and u y (k + 1) can be used as the reference values: where |ψ s (k + 1)| * is the reference value of the stator flux amplitude of the next control period. The derivation of the electromagnetic torque can be computed as the following equation: Discretizing Equation (33) and using the electromagnetic torque and load angle in the (k + 1)th control cycle as the reference value in the kth control cycle, the following equation can be acquired: where T * e and δ * are, respectively, the reference value of electromagnetic torque and load angle. From the above current-prediction process, it can be seen that based on the currents i d (k) and i q (k) collected in the kth control cycle, with the help of the discrete mathematical model of the motor, the currents i d (k + 1) and i q (k + 1) in the (k + 1)th control cycle can be predicted, and then the electromagnetic torque T e (k + 1) and the stator flux ψ s (k + 1) in the (k + 1)th control cycle can be obtained. When substituting them into Equation (14), the following equation can be achieved: where: Defining the intermediate variable M, the relationship between the electromagnetic torque and the load angle is simplified as the following equation: where: Because the control period of the control system is much smaller than the electrical time constant of the stator and the mechanical time constant of the rotor, the rotating electrical angular velocity of rotor flux ω r is considered to remain constant during the control period. Then θ r (k + 1) and δ(k + 1) can be acquired as the following equations: where θ r (k) is the angle of rotor flux position of current control period, and θ r (k + 1) and θ s (k + 1) are, respectively, the angle of the rotor flux position and the stator flux position of the next control period. Substituting the electromagnetic torque and the load angle into Equation (32), the reference stator voltages in the xy axes can be acquired with the following equation: With the acquired u * x and u * y in Equation (41), u * α and u * β can be computed with the following equation: Finally, u * α and u * β are used as the inputs of the SVM module. Then, the DB-DTFC based on the stator-flux-orientated control can be realized.

System Design
Compared with the traditional DTC control system, the proposed DB-DTFC control system does not contain hysteresis loop controllers and a switching table, but it needs the SVM module to modulate the voltage vector. The application of SVM in the DB-DTFC can improve voltage-control performance.
The basic structure of the proposed DB-DTFC control system is shown in Figure 3. The basic process of the control system can be divided into the following six steps. In the first step, the three-phase currents are sampled in the control period and they are converted to the dq axes to obtain i d (k) and i q (k). In the second step, the stator currents i d (k + 1) and i q (k + 1) at the next control period are predicted according to i d (k) and i q (k). In the third step, i d (k + 1) and i q (k + 1) are passed to the torque and flux estimation module to estimate the torque T e (k + 1) and flux |ψ s (k + 1)| in the next control period. In the fourth step, the torque T e (k + 1) and flux |ψ s (k + 1)| are passed to the proposed DB-DTFC controller and then the stator reference voltages u * x and u * y in the (k + 1)th control cycle are computed according to the basic principle of the DB-DTFC algorithm. In the fifth step, u * x and u * y are transformed to u * α and u * β , which are used as the inputs of the SVM module for voltage modulation. In the sixth step, the modulated voltage is applied to the stator winding of the PMSM in the (k + 1)th control cycle.  As shown in Figure 4, u * x and u * y are divided into two separate calculation modules. u * x produced from module 1 and u * y produced from module 2 are computed according to Equation (41).

Construction of System Simulation Platform
According to the detailed introduction of the proposed DB-DTFC control for the PMSM, the simulation model can be built with MATLAB/Simulink, which is shown in Figure 5. The proposed DB-DTFC control-system model mainly consists of the Subsystem1 module, Subsystem2 module, SVM module, PWM inverter, and PMSM model. The Subsystem1 module is the prediction module of the control system and the structure inside this module is shown in Figure 6. As shown in Figure 6, the detected stator three-phase currents i a , i b , and i c , and the voltages u d , u q , ω m , and θ r in the kth control cycle are used in current prediction. The MATLAB function module is the realization of Equation (28). The flux and torque in the (k + 1)th control cycle can be obtained according to Equations (29) and (30).
The Subsystem2 module is a deadbeat controller module, and the internal structure of this module is shown in Figure 7.  Figure 7, |ψ s |, T e , δ, ω r , i x , and i y predicted by the Subsystem1 module in the (k + 1)th control cycle are the inputs of the deadbeat controller. Then u *

As shown in
x and u * y in the (k + 1)th control cycle can be calculated by the Subsystem 2 module.

System Simulation and Results
To confirm the correctness and the effectiveness of the PMSM control system with the proposed DB-DTFC algorithm, the parameters of the PMSM are given in Table 1. The speed of the PMSM controlled by the proposed DB-DTFC algorithm is set to 1300 r/min and the initial load is set to 5 N·m. The corresponding simulation results are shown in Figure 8. From the simulation results, it can be seen that the PMSM can quickly and accurately track the reference speed. The output electromagnetic torque ripple is small and the flux trajectory is an ideal circle. To test the transient state performance of the PMSM control system based on the proposed DB-DTFC algorithm, the speed of the PMSM is set to 1300 r/min and the initial load is set to 5 N·m. The load torque is set to 6 N·m at 0.2 s and 5 N·m at 0.3 s. During the testing process, the speed is always kept constant at 1300 r/min. The simulation results are shown in Figure 9, where Figure 9a,b show the speed change waveform and the torque change waveform, respectively. According to the simulation results, it can be seen that the proposed DB-DTFC algorithm can realize fast speed and torque response.

Comparison on Torque Control
To compare the proposed DB-DTFC algorithm with the DTC algorithm and the SVM-DTFC algorithm, the PMSM load torque is set to 12 N·m and the speeds are set to 500 r/min and 1500 r/min, respectively. The corresponding simulation results are shown in Figure 10. From Figure 10, it can be seen that the torque ripple of the proposed DB-DTFC algorithm is reduced significantly compared to the DTC algorithm and the SVM-DTFC algorithm. The proposed DB-DTFC algorithm has the lowest torque ripple.

Comparison of Torque Ripple Reduction
To compare the torque-ripple-reduction effect of the DTC algorithm, the SVM-DTFC algorithm, and the proposed DB-DTFC algorithm, the variable TRP is defined to represent the torque ripple magnitude. Its expression is shown as the following equation: where T max is the maximum torque when the motor is running in a steady state and T l is the load torque. According to the TRP value, the torque ripple reduction of the DTC algorithm, the SVM-DTFC algorithm, and the proposed DB-DTFC algorithm can be compared under different speed or load conditions. The specific comparison results are shown in Figure 11, where Figure 11a shows the variation curve of the torque ripple with a speed under the rated load condition and Figure 11b shows the variation curve of the torque ripple with a load under the rated speed. From Figure 11, it can be seen that among the three control algorithms, the proposed DB-DTFC algorithm has the most robust control performance and the lowest torque ripple. In particular, the torque ripple of the proposed DB-DTFC algorithm is reduced about 6% in a limited speed range in comparison with the DTC algorithm.

Conclusions
In this paper, we propose a new DB-DTFC algorithm. This algorithm uses the forward Euler equation to acquire the reference voltage in a stator coordinate system, which is simpler than the traditional DB-DTFC algorithm for the process of computing the reference voltage. At the same time, the acquired stator reference voltage is more accurate because the voltage drop across the stator resistance is also taken into account in the solution process. Besides, compared with the DTC algorithm, the proposed DB-DTFC algorithm does not contain hysteresis loop controllers and a switching table, while it applies the SVM module to modulate the voltage vector. The application of SVM in the DB-DTFC can improve the voltage control performance. Simulation results show that the PMSM has good static and dynamic performance with the proposed DB-DTFC algorithm, and is better than the DTC algorithm and the SVM-DTFC algorithm for torque and flux control.
In the future, the proposed DB-DTFC algorithm will be tested in a real experimental platform. In addition, there are many current prediction methods available today and in the next work we will also try to use different current prediction methods to achieve a better deadbeat control.