Low Complexity Fixed Frequency Model Predictive Control of Three-Level Grid-Connected Inverters

In the context of China’s “dual carbon” strategy, renewable energy generation systems have been widely studied and deployed. The grid-connected inverter serves as the critical interface between distributed energy resources and the main grid, directly influencing power quality. Among various topologies, the neutral-point-clamped (NPC) three-level inverter has gained significant attention in the field of solar photovoltaic systems due to its advantages such as reduced harmonic output at the same switching frequency, lower device voltage stress, and fault tolerance. Our work focuses on addressing two major challenges in finite control set model predictive control (FCS-MPC) for NPC three-level inverters: the variable switching frequency and the heavy computational burden of rolling optimization. We propose a low-complexity fixed-frequency model predictive control strategy that maintains the benefits of FCS-MPC while achieving a constant switching frequency and reduced computational load. The proposed method leverages redundant small vectors for neutral-point potential balancing, establishes a single-objective cost function for current tracking, and employs a two-stage vector selection process using middle-axis vectors and q-axis error projections. The optimal three vectors are then allocated with optimized durations based on their cost function values. Extensive simulations and experiments validate the effectiveness of the proposed approach, demonstrating superior steady-state and dynamic performance compared to traditional methods. The method also exhibits robustness against model parameter mismatches. Throughout this paper, we emphasize the importance of various ‘types of solar inverter’ in modern grid integration scenarios, as the proposed controller is specifically tailored for NPC three-level inverters, which are widely adopted in medium- and high-power solar applications.

1. Introduction

With the rapid expansion of distributed photovoltaic and wind power, the demand for highly efficient and reliable power electronic interfaces has increased. The three-level NPC inverter is one of the most popular topologies for solar inverters because it offers a compromise between cost and performance. Traditional two-level inverters suffer from high harmonic distortion and limited voltage capability, while multilevel inverters like the NPC provide better waveform quality and lower stress on power devices. However, the control of such converters becomes more complex due to the increased number of switching states and the requirement of neutral-point voltage balancing.

Model predictive control (MPC) has emerged as a promising alternative to conventional linear controllers due to its fast dynamic response, flexibility in handling multiple control objectives, and straightforward inclusion of system constraints. The finite control set version (FCS-MPC) evaluates all possible switching states in each sampling period and selects the one that minimizes a predefined cost function. For a three-level inverter, there are 27 voltage vectors, and the exhaustive search consumes significant computational resources. Moreover, when only one vector is applied per control period, the switching frequency becomes variable, which complicates filter design and may lead to uneven power losses.

Numerous studies have attempted to reduce the computational burden by narrowing the candidate set. For example, some authors divide the vector space into sectors and use the reference voltage to locate a reduced subset. Others employ two-step predictions or simplified cost functions. However, most of these approaches still result in variable switching frequency or rely on additional modulation techniques. Fixed switching frequency can be achieved by using multiple vectors per period, such as double-vector or triple-vector schemes. The combination of vectors with optimized duty cycles allows the output voltage to be synthesized with a predetermined switching pattern, effectively fixing the switching frequency. The challenge lies in how to efficiently select these vectors and compute their durations without losing the inherent robustness of FCS-MPC.

In this work, we propose a low-complexity fixed-frequency model predictive control method specifically designed for the NPC three-level grid-connected inverter. Our contributions are threefold: (1) A single-objective cost function based solely on current tracking error is constructed, eliminating the need for weighting factors in neutral-point balancing by exploiting the natural balancing capability of redundant small vectors. (2) A two-stage vector selection process first identifies the optimal middle-axis vector (one of the six medium vectors) by evaluating a small subset, then uses the q-axis component of the predicted current error to determine a core region containing three candidate vectors. The final three vectors are chosen from this region, requiring only nine cost function evaluations per control cycle. (3) The durations of the three vectors are assigned inversely proportional to their cost function values, ensuring a fixed switching frequency. The method is validated through simulations and experiments on a 50 kW NPC three-level inverter platform. The results show that the proposed controller achieves a current THD of 2.64% under rated conditions, outperforming the conventional one-vector MPC (6.71%) and a modulated MPC benchmark (3.11%), while also providing faster dynamic response. The computational time is reduced to 36.2 µs, compared to 63.6 µs for the traditional approach. Additionally, we analyze the impact of model parameter mismatch and demonstrate the inherent robustness of the algorithm.

In the following sections, we first describe the mathematical model of the NPC three-level inverter and the conventional MPC formulation. Then, we present the proposed low-complexity fixed-frequency strategy in detail, including vector selection and time allocation. Simulation and experimental results are provided to demonstrate the effectiveness of the method. Finally, conclusions are drawn.

2. System Model and Conventional MPC

2.1 Mathematical Model of the NPC Three-Level Inverter

The main circuit of a diode-clamped three-level NPC inverter is shown in Fig. 1 (not reproduced here due to space). The inverter connects to the grid via an L-filter with inductance L and resistance R. The DC-link consists of two capacitors C1 and C2, with midpoint O. The switching state of each phase is defined as:

$$ S_x = \begin{cases} 1 & \text{if } s_{x1}, s_{x2} \text{ are ON (P state)} \\ 0 & \text{if } s_{x2}, s_{x3} \text{ are ON (O state)} \\ -1 & \text{if } s_{x3}, s_{x4} \text{ are ON (N state)} \end{cases}, \quad x = a,b,c $$

The dynamic equations in the stationary abc frame are:

$$ L \frac{di_{abc}}{dt} = u_{abc} – R i_{abc} – e_{abc} $$

$$ C \left( \frac{du_{C1}}{dt} – \frac{du_{C2}}{dt} \right) = \sum_{x=a,b,c} i_x (S_x == 0) $$

Transforming to the synchronous dq frame oriented with the grid voltage vector gives:

$$ L \frac{di_{dq}}{dt} = u_{dq} – R i_{dq} – j\omega L i_{dq} – e_{dq} $$

$$ C \frac{d\Delta u_C}{dt} = \sum_{x=a,b,c} i_x (S_x == 0) \quad \text{where} \quad \Delta u_C = u_{C1} – u_{C2} $$

2.2 Conventional FCS-MPC

Using forward Euler discretization with sampling period Ts, the predicted currents at time k+1 are:

$$ i_{dq}(k+1) = \frac{T_s}{L} \left[ u_{dq}(k) – e_{dq}(k) – R i_{dq}(k) \right] + i_{dq}(k) (1 – j\omega T_s) $$

The neutral-point voltage difference is predicted as:

$$ \Delta u_C(k+1) = \Delta u_C(k) + \frac{T_s}{C} \sum_{x=a,b,c} i_x(k) (S_x == 0) $$

The conventional cost function combines current tracking and neutral-point balancing:

$$ J(k) = |i_d^* – i_d(k+1)| + |i_q^* – i_q(k+1)| + \sigma |\Delta u_C(k+1)| $$

All 27 voltage vectors are evaluated to find the one minimizing J. This approach demands high computational effort and results in variable switching frequency because only one vector is applied per control period.

3. Proposed Low Complexity Fixed Frequency MPC

3.1 Vector Selection Strategy

Instead of evaluating all 27 vectors, we first consider only the six medium vectors VM = { VM1 [PON], VM2 [OPN], VM3 [NOP], VM4 [NPO], VM5 [ONP], VM6 [PNO] }. For each of these, we compute the predicted currents using the model and evaluate a simplified single-objective cost function that only tracks current:

$$ J_m(k) = |i_d^* – i_d^{m}(k+1)| + |i_q^* – i_q^{m}(k+1)| $$

The medium vector that yields the smallest Jm is selected as the “middle-axis vector” for the current sampling interval. This vector defines the central axis of a sector in the vector space, effectively partitioning the voltage hexagon into six sectors (S1 to S6), as shown in Fig. 2 of the original paper. An example calculation for a typical operating point (I=40 A, ωt=π/7) is given in Table 1.

Table 1: First Rolling Optimization Results
Vector V VM1 VM2 VM3 VM4 VM5 VM6
id* (A) 40 40 40 40 40 40
id(k+1) (A) 34.36 49.11 45.72 86.56 71.82 75.21
iq* (A) 0 0 0 0 0 0
iq(k+1) (A) -1.96 -23.58 21.63 1.95 23.58 -21.62
Cost J 10.11 41.49 20.43 61.39 51.81 51.08

In this example, VM1 gives the smallest cost. After determining the sector, we need to refine the vector selection. The q-axis component of the predicted current error Δiq = iq* – iq(k+1) indicates whether the optimal voltage lies on the right or left half of the sector (relative to the middle-axis vector). The rationale is based on the current change equation in vector form:

$$ \mathbf{I}(k+1) – \mathbf{I}(k) = \frac{T_s}{L} \left[ \mathbf{V}(k) – \mathbf{E}(k) \right] $$

The projection of this change onto the q-axis determines the sign of Δiq. For example, in sector S1, if Δiq > 0, the optimal region is on the right side; otherwise, on the left. The three vectors forming the boundary of that region (including the middle-axis vector itself and two adjacent vectors) are then selected as candidates for the second optimization. Specifically, we pick V (the middle-axis vector), V (the vector at the opposite corner of the quadrilateral), and the better between V and V by comparing their individual costs. This process requires only three additional cost evaluations, totaling nine evaluations per control cycle (six for medium vectors and three for the candidates).

3.2 Neutral-Point Balancing Using Redundant Small Vectors

In the proposed method, we do not include a neutral-point term in the cost function. Instead, we rely on the fact that each of the three selected vectors is either a small vector, a medium vector, or a large vector. Among them, there is always at least one pair of redundant small vectors (positive and negative). By adjusting the duty cycles of these redundant small vectors within the control period, we can effectively control the neutral-point voltage. Since the vector selection already identifies which vectors to use, we can proportionally redistribute the total duration of the positive and negative small vectors to balance the capacitor voltages. This eliminates the need for a weighting factor and reduces computational complexity.

3.3 Duty Cycle Calculation for Fixed Switching Frequency

Let the three selected vectors be V, V, and Vmin(②,④) with corresponding cost values J, J, and Jmin. The principle is to allocate more time to vectors that have smaller current tracking errors (i.e., smaller cost). A simple inverse-proportional method is used:

$$ t_1 = T_s \frac{1/J_{①}}{1/J_{①} + 1/J_{③} + 1/J_{\text{min}}} $$

$$ t_2 = T_s \frac{1/J_{③}}{1/J_{①} + 1/J_{③} + 1/J_{\text{min}}} $$

$$ t_3 = T_s – t_1 – t_2 $$

Here t1, t2, t3 are the durations for V, V, and Vmin, respectively. Since three vectors are always used in the same order and their total time equals Ts, the switching frequency is fixed at 1/Ts (e.g., 10 kHz when Ts = 100 μs). This scheme ensures that the inverter switches exactly six times per control period (one switching sequence for each phase), resulting in a constant average switching frequency regardless of the operating point.

The overall control flow is summarized as follows:

  1. Measure currents, voltages, and grid voltages at time k.
  2. For each of the six medium vectors VMi (i=1..6): compute predicted currents and cost Jm. Select the medium vector with minimum Jm as the middle-axis vector.
  3. Determine the sector and the sign of Δiq to identify the candidate region. Evaluate the costs for the two adjacent vectors (V and V) and keep the one with lower cost as Vmin.
  4. The three final vectors are V (middle-axis), V (opposite corner), and Vmin.
  5. Compute duty cycles t1, t2, t3 using inverse cost weighting.
  6. Apply the switching sequence to realize the three vectors with the computed durations, ensuring neutral-point balancing via redundant small vector adjustment.

4. Analysis of Model Parameter Mismatch

The performance of MPC relies on the accuracy of the system model. In practice, the filter inductance L may vary due to temperature or magnetic saturation. Let the actual inductance be Lr = L + ΔL, where L is the nominal value used in the predictor. The predicted current with mismatched parameter becomes:

$$ \hat{i}_{dq}(k+1) = \frac{T_s}{L+\Delta L} [u_{dq}(k) – e_{dq}(k)] + i_{dq}(k)(1-j\omega T_s) $$

The prediction error is:

$$ \Delta i_{dq}(k+1) = \hat{i}_{dq}(k+1) – i_{dq}(k+1) = – \frac{\Delta L \cdot T_s}{L(L+\Delta L)} [u_{dq}(k) – e_{dq}(k)] $$

When ΔL < 0 (actual inductance smaller than model), the magnitude of the prediction error increases, leading to larger current ripple and higher THD. However, due to the closed-loop nature, the error does not accumulate indefinitely; instead, the actual current oscillates around the reference with increased amplitude. Interestingly, our proposed method tends to select vectors that alternately drive the prediction error in opposite directions (since the optimal three vectors include both voltage vectors that are on different sides of the grid voltage vector). This alternating behavior helps to mitigate the impact of parameter mismatch. Moreover, since the duty cycle calculation uses normalized cost values, the effect of uniform model mismatch is partially compensated. Simulation results show that even under -50% inductance error, the THD remains around 6.85%, which is only slightly higher than the conventional MPC under matched conditions (6.71%). Under +50% error, the THD is 3.38%, still acceptable. This demonstrates the robustness of the proposed controller to parameter variations.

5. Simulation and Experimental Results

5.1 Simulation Setup

A 50 kW NPC three-level grid-connected inverter system was simulated in Matlab/Simulink. The parameters are listed in Table 2.

Table 2: Simulation Parameters
Parameter Value
Grid voltage (rms) E = 380 V
Grid frequency f = 50 Hz
DC-link voltage Udc = 680 V
Filter inductance L = 1.5 mH
DC-link capacitors C1=C2=C=2400 μF
Sampling frequency fs = 10 kHz

Three controllers were compared: (a) conventional single-vector FCS-MPC, (b) modulated MPC (M-MPC) from literature, and (c) the proposed improved FCS-MPC.

5.2 Steady-State Performance

Figures 7-9 in the original paper show the steady-state waveforms for each method. Here we summarize the key metrics in Table 3.

Table 3: Steady-State Performance Comparison (I* = 40 A)
Method THD (%) Neutral-point ripple (V) Computational time (μs)
Conventional single-vector FCS-MPC 6.71 5.6 63.6
M-MPC (modulated MPC) 3.11 8.0 49.3
Proposed improved FCS-MPC 2.64 5.8 36.2

The proposed method achieves the lowest THD due to its fixed switching frequency, which concentrates harmonic energy around 10 kHz and its multiples, making filtering easier. It also has the smallest computational burden. The neutral-point voltage ripple is comparable to the conventional method and better than M-MPC.

5.3 Dynamic Performance

The reference current was stepped from 40 A to 80 A. The settling times (defined as the time for d-axis current to reach within 5% of the final value) are given in Table 4.

Table 4: Dynamic Response Comparison
Method Settling time (ms)
Conventional single-vector FCS-MPC 0.88
M-MPC 0.89
Proposed improved FCS-MPC 0.56

The proposed method responds faster because it applies three vectors per period, effectively achieving a higher effective voltage output during transients.

5.4 Experimental Validation

An experimental platform based on TMS320F28335 DSP and CPLD was built. The same parameters were used. Steady-state and transient waveforms for the three methods were captured. The results match the simulation trends. The computational time measured on the DSP confirmed the reductions shown in Table 3. The proposed method’s execution time of 36.2 μs is a significant improvement, allowing higher sampling frequencies or more complex algorithms in the future.

6. Conclusion

We have presented a low-complexity fixed-frequency model predictive control strategy for the NPC three-level grid-connected inverter. By using a two-stage vector selection process that requires only nine cost function evaluations per control cycle, the computational burden is reduced by over 40% compared to conventional FCS-MPC. The use of a single-objective cost function eliminates the need for weighting factors in neutral-point balancing, yet the voltage balance is maintained via redundant small vector duty cycle adjustment. The fixed switching frequency is achieved by employing three vectors per period with inversely proportional duty cycles, resulting in a constant average switching frequency. Simulation and experimental results confirm that the proposed method outperforms both the conventional and the modulated MPC in terms of current THD (2.64% vs. 6.71% and 3.11%) and dynamic response (0.56 ms settling time vs. 0.88 ms and 0.89 ms), while also reducing computational time to 36.2 μs. The method is robust to parameter mismatches within ±50%. The proposed controller is well-suited for various ‘types of solar inverter’ including central inverters and string inverters where NPC topology is employed. Future work will extend the approach to handle high DC-AC voltage ratio conditions and incorporate model-free techniques for even greater robustness.

Scroll to Top