Utilizing Sequential Action Control Method in GaN-Based High-Speed Drive for BLDC Motor

This paper presents a hybrid model–based control algorithm that combines Model Predictive Control (MPC) and Sequential Action Control (SAC) deployed in a high-speed drive for Brushless DC (BLDC) motor by using a DC-DC converter with Gallium Nitride (GaN) switches. GaN FETs are selected because of their higher speed and lower power loss as compared with traditional Si switches. In the proposed framework, SAC processes the initial values of the control variables as well as their time of application and their duration in MPC loop. After receiving the underlying estimation of future contribution from SAC, MPC consolidates it with current input and predicts future control values by using the system state space model. This hybrid control conserves control effort and reduces sensitivity to initial conditions. In this way, converter’s output voltage is controlled to produce the reference speed at the motor output. National Instrument PXIe-6356 module is utilized as the interface between software and hardware that is a multi-function, LabVIEW-compatible data acquisition device. The viability of the proposed hybrid optimization for the high-speed drive is confirmed numerically by utilizing MATLAB/Simulink and approved experimentally using a Gallium Nitride (GaN) half-bridge DC-DC converter.


Introduction
Advancement in power electronics and control methods have been predominantly guided by engineering applications and powered by the progress attained in technologies like power semiconductors, grid-connected converters, inverters, high-speed drives, and analog and digital electronics.Presently, the control system technology is at an exemplary stage, which requires better control systems that are fast, accommodating, and adaptive to unforeseen conditions, unlike the preceding control systems where the focus was on stabilization and robustness [1][2][3][4].
Model Predictive Control (MPC) is a viable option for the control of a power converter since it has a reliable mathematical model that helps in predicting the performance of variables being controlled in electrical and mechanical systems by conferring the future output using present input values and future input values along with the control action.It also permits the inclusion of system constraints and nonlinearities, if any, in the given model [5,6].
Despite the flexibilities MPC offers, the primary value for each loop is a presumption.Initialization for each loop is significant since the nonlinear dynamics indicate that the variable being controlled is non-convex and will yield poor local minima and hence it would not be able to modify itself with the changing conditions [7].
To resolve these challenges, we combine Sequential Action Control (SAC) to existing MPC.SAC finds the single optimal control value for initialization of each loop and decides when to act Machines 2017, 5, 28 2 of 10 and its duration of action.SAC features feedback control and reiteration at each time step until horizon regresses.SAC offers online closed-loop control that is unaffected by the discontinuities in dynamics and makes the system faster.When measured up against its alternatives, it is observed that SAC computes higher bandwidth (1 KHz) closed-loop trajectories at a lower final cost in lesser time (milliseconds/seconds versus hours).Therefore, it can be concluded that SAC provides a model-based response to state capably even for saturated, underactuated, nonlinear, and high dimensional systems [8,9].
In previous works, it has been demonstrated that SAC has proven successful when used in real time closed-loop applications such as robot control for trajectory synthesis [10].SAC has also been applied in life sciences experiments, where it's crucial to control the unstable equilibria of nonlinear systems, since it conserves control effort, avoids parameter tuning, and reduces sensitivity to initial conditions [11].
The power electronics technology based on silicon and Gallium Nitride (GaN) semiconductors necessitates higher power consumption so that it can dispense higher switching frequency and lower power losses.To accomplish this, we add an LC resonant circuit that provides Zero Voltage Switching (ZVS) and Zero Current Switching (ZCS) as well as filtering the converter's output voltage and output current [2,3].In addition to this, a system based on Digital Signal Processing (DSP) and Field Programmable Gate Array (FPGA) is required.There are several options available, such as dSPACE, Speedgoat, PXIe-6356, etc. Out of them, National Instrument PXIe-6356 offers a cheaper solution, in which the DSP part is compatible with MATLAB/SIMULINK and the FPGA part is programmed in LABVIEW.
Despite the high efficiency and linear torque-speed characteristics of brushed DC motors, they need regular maintenance like replacing the mechanical commutators.Brushless DC motors (BLDCs) that use a permanent magnet rotor and have other advantages like better dynamic response and higher speed range are good options to solve this problem [12].
In this paper, PXIe-6356 is chosen as the control platform to control the BLDC motor speed.The control system is established on DSP-FPGA because the requirement is high power computation accessible by DSP along with accurate interface provided by the FPGA.A PC interface is used for debugging and commanding.
The rest of the paper is organized as follows.Section 2 proposes the system description and modeling, Section 3 details the control synthesis, Section 4 depicts the algorithms and MATLAB simulation, Section 5 features the experimental test results and finally, Section 6 presents the conclusion.

System Description and Modeling
Figure 1 shows the system configuration used in this paper.A Hardware In the Loop (HIL) speed controller scheme by using GaN DC-DC converter and PXIe-6356 data acquisition device as an interface between LabVIEW processing unit and hardware setup is implemented.regresses.SAC offers online closed-loop control that is unaffected by the discontinuities in dynamics and makes the system faster.When measured up against its alternatives, it is observed that SAC computes higher bandwidth (1 KHz) closed-loop trajectories at a lower final cost in lesser time (milliseconds/seconds versus hours).Therefore, it can be concluded that SAC provides a model-based response to state capably even for saturated, underactuated, nonlinear, and high dimensional systems [8,9].
In previous works, it has been demonstrated that SAC has proven successful when used in real time closed-loop applications such as robot control for trajectory synthesis [10].SAC has also been applied in life sciences experiments, where it's crucial to control the unstable equilibria of nonlinear systems, since it conserves control effort, avoids parameter tuning, and reduces sensitivity to initial conditions [11].
The power electronics technology based on silicon and Gallium Nitride (GaN) semiconductors necessitates higher power consumption so that it can dispense higher switching frequency and lower power losses.To accomplish this, we add an LC resonant circuit that provides Zero Voltage Switching (ZVS) and Zero Current Switching (ZCS) as well as filtering the converter's output voltage and output current [2,3].In addition to this, a system based on Digital Signal Processing (DSP) and Field Programmable Gate Array (FPGA) is required.There are several options available, such as dSPACE, Speedgoat, PXIe-6356, etc. Out of them, National Instrument PXIe-6356 offers a cheaper solution, in which the DSP part is compatible with MATLAB/SIMULINK and the FPGA part is programmed in LABVIEW.
Despite the high efficiency and linear torque-speed characteristics of brushed DC motors, they need regular maintenance like replacing the mechanical commutators.Brushless DC motors (BLDCs) that use a permanent magnet rotor and have other advantages like better dynamic response and higher speed range are good options to solve this problem [12].
In this paper, PXIe-6356 is chosen as the control platform to control the BLDC motor speed.The control system is established on DSP-FPGA because the requirement is high power computation accessible by DSP along with accurate interface provided by the FPGA.A PC interface is used for debugging and commanding.
The rest of the paper is organized as follows.Section 2 proposes the system description and modeling, Section 3 details the control synthesis, Section 4 depicts the algorithms and MATLAB simulation, Section 5 features the experimental test results and finally, Section 6 presents the conclusion.

System Description and Modeling
Figure 1 shows the system configuration used in this paper.A Hardware In the Loop (HIL) speed controller scheme by using GaN DC-DC converter and PXIe-6356 data acquisition device as an interface between LabVIEW processing unit and hardware setup is implemented.The electrical equivalent circuit of the proposed system is represented in Figure 2. The half-bridge GaN-based DC-DC converter is used as an intermediate level between the power source and BLDC motor to control the armature terminal voltage and consequently the speed of the BLDC motor.Q 1 and Q 2 are GaN switches that are switched complementarily.An LC resonant circuit is used at the converter output to filter the BLDC input current and voltage to assure the zero voltage and zero current switching to decrease the switching power loss [1,4].
Machines 2017, 5, 28 3 of 11 The electrical equivalent circuit of the proposed system is represented in Figure 2. The halfbridge GaN-based DC-DC converter is used as an intermediate level between the power source and BLDC motor to control the armature terminal voltage and consequently the speed of the BLDC motor.To model the system, some assumptions are considered.Since the drain-source resistance and internal capacitance of GaN switches are in the order of milliohm and picofarad respectively, they have been neglected and switches are considered as ideal.A small resistant is considered at the converter output which reflects the resistive impedance of the path between the power source and LC filter. is the digital switching pulse of the switch 1 ( 1) 2 To model the BLDC motor, the simple equivalent circuit of Figure 3   To model the system, some assumptions are considered.Since the drain-source resistance and internal capacitance of GaN switches are in the order of milliohm and picofarad respectively, they have been neglected and switches are considered as ideal.A small resistant is considered at the converter output which reflects the resistive impedance of the path between the power source and LC filter.If C 1 = C 2 , the voltage across each of them is V dc 2 and (1)-( 3) are obtained in which S is the digital switching pulse of the switch Q 1 .When S = 1, Q 1 is ON and Q 2 is OFF, and when S = 0, Q 1 is OFF and Q 2 is ON.
V o = (S − 1) To model the BLDC motor, the simple equivalent circuit of Figure 3 is used in which R a , L a , and E a are the armature resistance, armature inductance, and back-emf voltage, respectively.Equations ( 4)-( 7) describe the electromechanical relations in BLDC motor.T e , T l , J, and B are electrical torque, load torque, rotor inertia, and friction constant, respectively.ω m represents the mechanical speed of the motor and K e and K t are voltage and torque constants, respectively.
Hence, the overall state space model of the system can be driven as ( 8)- (11).By substituting (2), (6), and (7) in these equations, the final model is obtained whose matrix representation is shown by (12).V a = r a I a + L dI a dt + E a (4) ) Hence, the overall state space model of the system can be driven as ( 8)- (11).By substituting ( 2), ( 6), and ( 7) in these equations, the final model is obtained whose matrix representation is shown by (12).

Control Synthesis
MPC has attracted increasing attention in the last decade, especially for power electronic applications because of their discrete nonlinear nature.This method determines the future input of the system by predicting the behavior of the system in a receding horizon based on the system model.State Space (SS) model, Transfer Function (TF) model, Impulse Response (IR) model, and Step Response (SR) model are some types of modeling methods that can be used in MPC [12][13][14][15].The State Space model is used in this paper and is represented by ( 13) and ( 14).
Machines 2017, 5, 28 5 of 10 where x, y, and u are controlled variables, output variables, and inputs, respectively and A, B, C, and D are matrices defining the SS model.Subscript k shows a value at k th sampling time [12].
To enhance the performance of the MPC technique, Sequential Action Control (SAC) is added to the existing MPC.The complete control system synthesis of the so-called MPCSAC method, following the cyclic process, is depicted in Figure 4. SAC helps MPC to find the optimal control value by comparing the desired output with the present one using the predefined decision factors as a look-up table (LUT).After the parameter is estimated, the optimal amplitude, time, and duration of the controlled variable are found using a set of algorithms.In this way, SAC calculates the optimal value for MPC implementation.
Space model is used in this paper and is represented by ( 13) and (14).
where x , y , and u are controlled variables, output variables, and inputs, respectively and A , B , C , and D are matrices defining the SS model.Subscript k shows a value at th k sampling time [12].
To enhance the performance of the MPC technique, Sequential Action Control (SAC) is added to the existing MPC.The complete control system synthesis of the so-called MPCSAC method, following the cyclic process, is depicted in Figure 4. SAC helps MPC to find the optimal control value by comparing the desired output with the present one using the predefined decision factors as a lookup table (LUT).After the parameter is estimated, the optimal amplitude, time, and duration of the controlled variable are found using a set of algorithms.In this way, SAC calculates the optimal value for MPC implementation.SAC is a four-step in a loop process that continuously iterates until an optimal minimum is attained that yields fi x .The first step is predicting the initial value init x which begins at 0 t and extends till f t with a horizon length of f s T t t = − when this is performed repeatedly a piecewise continuous response is obtained.The main concept of SAC is shown by (15) where ( ) v t is the given control variable, The SS model of the proposed system of this paper is derived from ( 12)-( 16).Since the system is nonlinear, and the model changes when switching status changes, two sub-models are considered.At fixed sampling times of every t s seconds, SAC generates the optimized future input x f i .SAC is a four-step in a loop process that continuously iterates until an optimal minimum is attained that yields x f i .The first step is predicting the initial value x init which begins at t 0 and extends till t f with a horizon length of T = t f − t s when this is performed repeatedly a piecewise continuous response is obtained.The main concept of SAC is shown by (15) where v(t) is the given control variable, v ∈ R m , a short application duration, λ ∈ R + .
The SS model of the proposed system of this paper is derived from ( 12)-( 16).Since the system is nonlinear, and the model changes when switching status changes, two sub-models are considered.In sub model I, the upper switch (Q 1 ) is ON, S = 1 and the b 11 parameter of the matrix B is equal to 0.5 and in sub model II, the lower switch (Q 2 ) is ON, S = 0 and the b 11 = −0.5.Sub-models I and II are shown in ( 16) and (17), respectively.The output variables calculation and prediction are performed by using (16), which is represented by (18) for this system.
Model-based prediction is done with both sub-models, and the absolute value of the error between future predicted outputs and desired output are sent to SAC optimization block to find the value, time to apply, and duration of the controlled variable, which is the S.

Simulation
Simulation of the proposed high-speed drive is completed using MATLAB/Simulink along with NI LabVIEW.The model is made in MATLAB/Simulink and then imported in LabVIEW since PXIe-6356 is LabVIEW compatible.
A 60 V DC source paralleled with two series 240 µF capacitors are used as the DC input to the converter.A half-bridge Converter with GaN switches driven by MPCSAC control unit is built which regulates the DC input voltage into a series of pulses with desired average value.This output is then fed to an LC resonant circuit consisting of a 1 mH pot-core inductor and a 470 µF bipolar capacitor through a 0.2 Ω resistance to make the current and voltage smoother and help zero voltage and zero current switching in high switching frequencies.To model the GaN FETs, the internal characteristics of existing MOSFETs in the Simulink library such as drain-source ON resistance R ON , internal diode resistance R D , internal diode forward voltage V F , and Drain current I DS are modified.The values of these parameters are listed in Table 1.

Parameter Value
The DC Machine block of the MATLAB/Simulink with modified parameters is used to model the desired BLDC motor.Table 2 shows the parameters used for the BLDC modeling.

Parameter Value
Armature Resistance r a 3.9 The speed waveform of the BLDC Motor along with electrical torque at 100 kHz sampling time for MPCSAC is shown in Figure 5. Initially, the reference speed is 200 rpm for 2 s, then it decreases to −100 rpm (in opposite direction) from t = 2 s to t = 4 s, and finally goes back to 300 rpm from t = 4 s to t = 6 s.To evaluate the drive system performance in variable torque condition, a step change of load torque from zero to 2 Nm is applied at t = 1 s.It is shown that by using MPCSAC control, the motor real speed follows the reference speed with an acceptable accuracy, and load torque changes do not affect the drive system performance.
The speed waveform of the BLDC Motor along with electrical torque at 100 kHz sampling time for MPCSAC is shown in Figure 5. Initially, the reference speed is 200 rpm for 2 s, then it decreases to −100 rpm (in opposite direction) from t = 2 s to t = 4 s, and finally goes back to 300 rpm from t = 4 s to t = 6 s.To evaluate the drive system performance in variable torque condition, a step change of load torque from zero to 2 Nm is applied at t = 1 s.It is shown that by using MPCSAC control, the motor real speed follows the reference speed with an acceptable accuracy, and load torque changes do not affect the drive system performance.The armature voltage ( a V ) and armature current ( a I ) of the BLDC are illustrated in Figure 6.
Since the basic speed control method is the armature voltage control, variation of the BLDC terminal voltage is very close to the speed variation, while armature current changes are based on load torque, which justifies the torque step change at t = 1 s.The average voltage ripple is 3.46% ± (compared to the half bridge voltage of 30 V), which is an acceptable value for BLDC motors.Figure 7 shows the GaN converter output voltage during simulation time that is including a series of high-speed pulses at 100 kHz switching frequency.A closer look at the pulse width shows that when the desired speed is higher, the pulse width in each switching period is larger, which helps BLDC to increase its speed.The armature voltage (V a ) and armature current (I a ) of the BLDC are illustrated in Figure 6.Since the basic speed control method is the armature voltage control, variation of the BLDC terminal voltage is very close to the speed variation, while armature current changes are based on load torque, which justifies the torque step change at t = 1 s.The average voltage ripple is ±3.46% (compared to the half bridge voltage of 30 V), which is an acceptable value for BLDC motors.The armature voltage ( a V ) and armature current ( a I ) of the BLDC are illustrated in Figure 6.
Since the basic speed control method is the armature voltage control, variation of the BLDC terminal voltage is very close to the speed variation, while armature current changes are based on load torque, which justifies the torque step change at t = 1 s.The average voltage ripple is 3.46% ± (compared to the half bridge voltage of 30 V), which is an acceptable value for BLDC motors.Figure 7 shows the GaN converter output voltage during simulation time that is including a series of high-speed pulses at 100 kHz switching frequency.A closer look at the pulse width shows that when the desired speed is higher, the pulse width in each switching period is larger, which helps BLDC to increase its speed.Figure 7 shows the GaN converter output voltage during simulation time that is including a series of high-speed pulses at 100 kHz switching frequency.A closer look at the pulse width shows that when the desired speed is higher, the pulse width in each switching period is larger, which helps BLDC to increase its speed.

Experimental
The experimental setup for the implementation of the proposed drive with MPCSAC control and the corresponding parameters are shown in Figure 8 and Table 3, respectively.This was an attempt to build a circuit as similar as possible to the simulated system in MATLAB/Simulink.DC input voltage is supplied by Magna-Power XR Series III power supply at 60 V , which supplies the two 240 μF series capacitors as the input source of GaN converter.The GS66508T GaN Module is a 650 V top side cooled board with 30 A, 55 mΩ switches, and a 9-12 V built-in driver circuit is used as the half-bridge DC-DC converter.The output of the GaN converter is connected to an LC filter with  2. The speed of the motor is sensed by the sensor and fed to PXIe-6356 simultaneoussampling, multifunction data acquisition device that offers analog I/O, digital I/O, four 32-bit counters, and analog and digital triggering.LabVIEW software is used as the real-time processor of the system which includes the designed MATLAB/Simulink model and NI-DAQmx software to manage the PXIe-6356.To apply the step change of load torque, a similar BLDC motor is coupled to the motor's shaft and a predetermined reverse voltage is applied to it at t = 2 s to resemble the 2 Nm load torque.

Experimental
The experimental setup for the implementation of the proposed drive with MPCSAC control and the corresponding parameters are shown in Figure 8 and Table 3, respectively.This was an attempt to build a circuit as similar as possible to the simulated system in MATLAB/Simulink.DC input voltage is supplied by Magna-Power XR Series III power supply at 60 V, which supplies the two 240 µF series capacitors as the input source of GaN converter.The GS66508T GaN Module is a 650 V top side cooled board with 30 A, 55 mΩ switches, and a 9-12 V built-in driver circuit is used as the half-bridge DC-DC converter.The output of the GaN converter is connected to an LC filter with L = 1 mH and C = 470 µF which is further connected to a BLDC motor with parameters listed in Table 2.The speed of the motor is sensed by the sensor and fed to PXIe-6356 simultaneous-sampling, multifunction data acquisition device that offers analog I/O, digital I/O, four 32-bit counters, and analog and digital triggering.LabVIEW software is used as the real-time processor of the system which includes the designed MATLAB/Simulink model and NI-DAQmx software to manage the PXIe-6356.To apply the step change of load torque, a similar BLDC motor is coupled to the motor's shaft and a predetermined reverse voltage is applied to it at t = 2 s to resemble the 2 Nm load torque.

Experimental
The experimental setup for the implementation of the proposed drive with MPCSAC control and the corresponding parameters are shown in Figure 8 and Table 3, respectively.This was an attempt to build a circuit as similar as possible to the simulated system in MATLAB/Simulink.DC input voltage is supplied by Magna-Power XR Series III power supply at 60 V , which supplies the two 240 μF series capacitors as the input source of GaN converter.The GS66508T GaN Module is a 650 V top side cooled board with 30 A, 55 mΩ switches, and a 9-12 V built-in driver circuit is used as the half-bridge DC-DC converter.The output of the GaN converter is connected to an LC filter with 1 mH L = and 470 μF C = which is further connected to a BLDC motor with parameters listed in Table 2.The speed of the motor is sensed by the sensor and fed to PXIe-6356 simultaneoussampling, multifunction data acquisition device that offers analog I/O, digital I/O, four 32-bit counters, and analog and digital triggering.LabVIEW software is used as the real-time processor of the system which includes the designed MATLAB/Simulink model and NI-DAQmx software to manage the PXIe-6356.To apply the step change of load torque, a similar BLDC motor is coupled to the motor's shaft and a predetermined reverse voltage is applied to it at t = 2 s to resemble the 2 Nm load torque.compatible with novel technologies with high sampling and switching frequencies.Therefore, it is a viable option for high-speed motor drive application in which real-time and accurate speed control is important.

1 Q and 2 Q
are GaN switches that are switched complementarily.An LC resonant circuit is used at the converter output to filter the BLDC input current and voltage to assure the zero voltage and zero current switching to decrease the switching power loss[1,4].

If 1 2 C
C = , the voltage across each of them is 2 dc V and (1)-(3) are obtained in which S

Figure 6 .
Figure 6.Armature voltage and current of BLDC motor in the simulation.

Figure 6 .
Figure 6.Armature voltage and current of BLDC motor in the simulation.

Figure 6 .
Figure 6.Armature voltage and current of BLDC motor in the simulation.
connected to a BLDC motor with parameters listed in Table

Figure 8 .
Figure 8. Experimental setup of the proposed system.

Figure 8 .
Figure 8. Experimental setup of the proposed system.Figure 8. Experimental setup of the proposed system.

Figure 8 .
Figure 8. Experimental setup of the proposed system.Figure 8. Experimental setup of the proposed system.
is used in which a (7) are the armature resistance, armature inductance, and back-emf voltage, respectively.Equations (4)-(7)describe the electromechanical relations in BLDC motor.e T , l T , J , and B are electrical torque, load torque, rotor inertia, and friction constant, respectively.m ω represents the mechanical speed of the motor and e K and t K are voltage and torque constants, respectively.