1. Introduction
Model predictive control (MPC) was initially employed in the process industry with slow dynamic in the 1970s [
1,
2,
3]. The main concept centers around solving an optimization problem online by predicting the future behavior of the control plant [
4,
5]. With the tremendous development of digital processors, the computational capability of the controllers has been significantly increased in the recent decade, which enables MPC to be applied in power electronics applications, e.g., railway transportation and wind turbines [
6,
7]. Due to its merits of simple concept, flexible inclusion of constraints and the ability to handle optimization problems with multiple control targets, MPC has become an alternative control strategy for power converters [
8,
9].
Categorized by the type of control inputs, MPC can be divided into two mainstream categories, continuous control set MPC (CCS-MPC) and finite control set MPC (FCS-MPC) [
10]. In CCS-MPC, the reference voltage vector is obtained by tracking the predicted control variable along with its reference value [
11]. The optimal vectors and their duty cycles are calculated in the modulation stage. On the contrary, FCS-MPC directly searches all the voltage vectors to evaluate the tracking error between the predicted value and the reference value. The optimal vector is selected by minimizing the tracking error in the formulated cost function [
12]. Considering the discrete nature of the switching sequences, FCS-MPC becomes one of the predominant control strategies for the power converters. Compared with direct torque control (DTC), FCS-MPC overcomes the drawback of high torque ripples at steady state. Moreover, FCS-MPC achieves the merit of fast dynamic response when compared with field-oriented control (FOC) [
13].
Regarding the diversity of control targets, FCS-MPC is classified by predictive current control (PCC), predictive torque control (PTC) and predictive speed control (PSC) and so on [
14]. To obtain better current quality for the electrical drive systems, the stator current is selected as the control target in PCC. However, only one single voltage vector is applied in each sampling period of the PCC strategy. Therefore, PCC is still penalized by the large steady-state ripples because the reference vector can not be exactly tracked by the discrete voltage vector [
15]. Although the steady-state errors can be reduced by employing multiple vectors, the number of applied vectors in each sampling period is increased, which results in higher switching frequency [
16].
To improve the current quality while retaining low switching frequency, the PCC strategy can be implemented with a longer prediction horizon. However, the number of searched control inputs grows exponentially with the increased number of prediction horizons. In [
17], a multistep FCS-MPC algorithm for a three-level inverter is proposed. The proposed algorithm achieves lower current distortion for a longer prediction horizon and low switching frequency. However, the issue of high computational burden has not been fully investigated. In [
18], a computationally efficient FCS-MPC for the wind turbine system is proposed, in which the hexagon and triangle candidate regions are applied to reduce the algorithm complexity. However, the proposed algorithm is conducted with a short prediction horizon of 1. The high computational burden as a result of a longer horizon has not been addressed. In [
19], a multistep MPC strategy is proposed for the H-bridge converter. The optimization problem is converted to an integer least-squares (ILS) problem, to be solved by a fast sphere decoding algorithm (SDA). However, the control variables in the proposed strategy are projected on the voltage vector, in which the additional constraint is included by the finite set. Moreover, the common-mode voltage is penalized in the objective function of the proposed method. In [
20], a long-horizon FCS-MPC with non-recursive SDA is implemented on an FPGA. The effectiveness of the proposed method with a horizon of 5 steps is experimentally validated. Although the previous literature has proposed several solutions to reduce the computational burden of multistep FCS-MPC strategies, how to effectively reduce the algorithm complexity is still an open issue for further investigation.
To tackle the aforementioned issue, a fast quadratic programming (QP) solution for the multistep MPC strategy of electrical drive systems is proposed in this paper. First, the PCC optimization problem is regarded as a quadratic programming problem via a geometric perspective. Based on the above, the objective function is reformulated as the quadratic Euclidean norm of the predicted and reference current derivative. Instead of an exhaustive search, two current derivative vectors close to the reference are selected for optimization. Finally, the proposed algorithm is experimentally verified on the 2.2 kW induction machine testbench. It is validated that the proposed algorithm with a prediction horizon of 5 can significantly reduce the computational burden and achieve an excellent steady-state and transient-state performance.
The rest of this article is organized as follows. In
Section 2, the description of the control plant is presented. The principle of multistep PCC algorithm is proposed in
Section 3. In
Section 4, a fast QP solution for multistep PCC algorithm is proposed. The proposed algorithm is experimentally validated and compared with the conventional PCC method in
Section 5.
Section 6 presents the conclusion and discussion of future work.
2. Control Plant Description
In this work, the squirrel-cage induction machine (IM) and the two-level voltage source inverter (2-L VSI) are considered as the control plant. The mathematical model of IM in the stationary frame is expressed in (1) to (4) [
14].
where
usα,β denotes the applied voltage vector for the 2-L VSI,
isα,β and
irα,β are the stator and rotor current,
ψsα,β and
ψrα,β are the stator and rotor flux,
Rs and
Rr are the stator and rotor resistances,
Ls and
Lr are the stator and rotor inductances,
Lm is the magnetizing inductance and
ω represents the angular rotor speed.
The topology of 2-L VSI and its applied voltage vectors are shown in
Figure 1.
u0–
u7 are the applied switching events.
Si = 0 denotes that the upper power device turns off,
Si = 1 means that the upper power device turns on and
i =
a,
b,
c. The applied voltage vector
us can be expressed as [
21]:
where
uDC is the dc-link voltage.
3. Multistep PCC Algorithm
In the PCC algorithm, the tracking error between the predicted stator current and its reference value is considered as the predominant control target. The additional constraints, i.e., the limitations of switching frequency and current magnitude, are included in the cost function of the PCC algorithm. According to the IM model, the stator current is rewritten as:
where the rotor coupling factor
kr =
Lm/
Lr, rotor time constant
τr =
Lr/
Rr, effective resistance of both windings
Rσ =
Rs +
kr2 ·
Rr, leakage coefficient
σ = 1 − (
Lm2/
LsLr) and transient stator inductance
Lσ =
σ·
Ls. The predicted value of stator current can be obtained by forward Euler discretization.
where
Ts is the sampling period. Therefore, the predicted stator current is described in Equation (9).
where
τσ =
σLs/
Rσ. To compensate for the time delay in the PCC algorithm, the predicted stator current at
k + 2 interval is expressed as [
22]:
As the number of prediction horizons is
N, the cost function of the multistep PCC algorithm is expressed as:
in which the stator current error, the constraints of switching frequency and current magnitude are included.
nsw is the number of switching events in a sampling period. The reference value of the stator current in the stationary
αβ frame can be expressed as
where the flux angle
θ = arctan(
ψrα/
ψrβ) and |
ψr*| represents the reference of rotor flux. The current magnitude limitation is described in Equation (13). As shown in Equation (13), the current limitation term Im(
k +
h) is infinity when the stator current magnitude|
is(
k +
h)| is larger than the limitation |
ismax|. The close-loop block diagram of the multistep PCC algorithm is shown in
Figure 2. The reference is denoted by the superscript *,
T represents the electromagnetic torque.
In regards to the predominant control target of the PCC optimization problem minimizing the error between the predicted stator current and its reference value, the geometric description of the PCC optimization problem is shown in
Figure 3. As can be seen,
isα,β(
k +
h) is the predicted stator current at
h − 1 interval,
isα,β* is the reference value and
d(
k +
h) denotes the tracking error between the predicted and reference value. Therefore, the tracking error term of the stator current can be regarded as the quadratic Euclidean norm of
d(
k +
h), which is formulated as:
We can obtain
Figure 3b as
Figure 3a is projected on the current derivative plane. As shown in
Figure 3b, the distance between the predicted and reference derivative value is
d’(
k +
h). The quadratic Euclidean norm of
d’(
k +
h) is expressed as:
Based on the above, the multistep PCC optimization problem is considered as a quadratic programming (QP) problem. The cost function of multistep PCC is rearranged as:
4. Fast Quadratic Programming Solution
To tackle the issue that the number of searched control inputs grows exponentially with the increased number of prediction horizons, a fast quadratic solution is proposed in this paper for algorithm complexity reduction instead of the exhaustive search.
The preselection principle of the fast quadratic programming solver is shown in
Figure 4. First, the current derivatives d
is(
k +
h − 1)/dt
j using the different voltage vectors (
j = 0,1,…,6) as well as the reference derivative d
is*/dt are calculated. The error of the angle (|
θj −
θ*|) between the applied current derivative and the reference derivative is evaluated. Two derivative vectors that minimize the error |
θj −
θ*| are selected as the preselection vectors. In each prediction horizon, the cost function (16) is optimized for the two preselection vectors.
As shown in
Figure 5, the preselection-principle-based search method for the multistep PCC algorithm is proposed. As can be seen, the red nodes are the preselection vectors to be optimized. The black nodes are the unvisited vectors that will not participate in the optimization procedure. Assuming that the number of prediction horizon
h − 1 =
N, the number of searched nodes is
η1 = 7
N. The number of preselection vectors for optimization is
η2 = 2
N when the proposed fast quadratic programming solver is applied. The comparisons of optimization number between exhaustive search and fast QP solution are summarized in
Table 1.
5. Experimental Verification
The proposed fast QP solution for the multistep PCC algorithm is experimentally implemented on the 2.2 kW IM drive testbench, as shown in
Figure 6. The components of the testbench are listed in
Table 2. The parameters of IM are illustrated in
Table 3. A 1.4 GHz self-made Linux-based real-time control system is applied to conduct the proposed algorithm. The applied sampling period
Ts is 62.5 μs. The applied control system has competitive computational capability with the commercial processors, e.g., DSP, FPGA and Ultrazphm.
Figure 7 shows the comparisons between the steady-state performance of multistep PCC with a fast QP solution and the conventional PCC method at 200 rpm with a 2 Nm load torque. The switching frequency is 800 Hz.
Figure 7a shows the measured waveforms of conventional PCC. It can be observed that conventional PCC suffers from the high torque and current ripples, which are 2.0 Nm and 0.56 A, respectively. The measured waveforms of the proposed multistep PCC with a fast QP solution are shown in
Figure 8b. The torque and current ripples are 1.6 Nm and 0.33 A, respectively. Experimental results confirm that the proposed multistep PCC with a fast QP solution achieves a smaller torque and current error when compared with conventional PCC at a similar switching frequency.
Figure 8 shows the steady state performance of the two PCC methods at the nominal rotor speed and load torque (
ω = 2772 rpm,
T = 7.5 Nm). Due to the optimal solution in a longer prediction horizon, the proposed algorithm obtains a 29 % and 24 % reduction on torque and current tracking errors. As shown in
Figure 8b, the current error of the proposed algorithm is 0.62 A. Both the switching frequencies of the two PCC algorithms in the nominal steady-state scenario are 1.8 kHz. It is validated that the proposed algorithm has better current quality in both the steady-state scenarios. The comparisons of performae metric between the conventonal PCC and the proposed algorithm are summarized in
Table 4.
Figure 9 shows the load disturbance performance of the proposed multistep PCC algorithm with a fast QP solution. The IM operates at a 50% nominal rotor speed (1386 rpm). At
t = 170 ms, a 4 Nm load torque is applied by the control panel. As can be seen in
Figure 9, the proposed algorithm has a fast dynamic response in which the load torque rises from 0 Nm to 4 Nm in 28 ms. Meanwhile, the rotor speed decreases from 1386 rpm to 1280 rpm, and then recovers to the original value in 190 ms. After the load disturbance transience, the proposed algorithm achieves an excellent steady-state performance in which the torque and current errors are 1.8 Nm and 0.44 Nm, respectively.
In
Figure 10, the load step performance of the proposed algorithm is presented. The speed control mode is employed in which an 800 rpm rotor speed is given by the control panel. A 2 Nm load torque is applied by the algorithm, which changes to 4 Nm at
t = 187 ms. It can be observed in
Figure 10 that the rotor speed increases from 800 rpm to 980 rpm (a 22.5% increase). The rotor speed returns to the original value at
t = 540 ms while the recovery time is 353 ms. More specifically, the load step is completed in 300 μs while the torque error is 1.3 Nm. The current error of the proposed algorithm in this test scenario is 0.40 A. The transient-state performance verifies that the proposed multistep PCC with a fast QP solution achieves a fast dynamic response and a small steady-state tracking error.
The comparisons between the number of optimized nodes and algorithm time for the proposed algorithm and conventional PCC are illustrated in
Table 5. As shown in
Table 5, the number of optimized nodes in the conventional PCC is 7. The algorithm time of the conventional PCC is 19 μs. On the contrary, the proposed algorithm with a prediction horizon of 5 has 32 optimized nodes, which requires a 27 μs algorithm time. Compared with the exhaustive search in
Table 1, the number of nodes in the proposed algorithm is significantly reduced by 99.81 %. The proposed algorithm can be implemented at the same sampling period (
Ts = 62.5 μs) as that of conventional PCC.