Fault Detection of Grid-Connected Inverters Based on Sliding Mode Observer

In the field of modern renewable energy systems, grid-connected inverters serve as the critical interface between distributed generation sources and the utility grid. Among various types of solar inverter, the two-level three-phase voltage source inverter is widely adopted due to its simple topology and mature control technology. However, the reliability of these inverters is constantly challenged by harsh operating environments and variable load conditions. Two of the most common failure modes in power electronic converters are open-circuit faults of power switching devices and disconnection faults of current sensors. These faults can lead to distorted output currents, reduced power quality, and even system shutdown if not detected promptly. Therefore, developing robust fault detection and diagnosis methods is essential to enhance the operational reliability of grid-connected inverters. In this work, I propose a comprehensive fault diagnosis strategy based on a sliding mode observer that can simultaneously detect and distinguish between power device open-circuit faults and current sensor disconnection faults in a two-level grid-connected inverter. The method utilizes residuals between measured currents and reference currents, along with estimated currents from the observer, to achieve preliminary fault detection, fault type identification, and precise fault localization.

I first establish the mathematical model of the two-level three-phase grid-connected inverter. The topology consists of six power switches (S1 to S6) forming three legs, with an inductor L and resistor R representing the output filter and parasitic resistance, respectively. The grid voltages are denoted as ea, eb, ec, and the inverter output currents as ia, ib, ic. The switching states are defined by Sx = 1 when the upper switch is on and 0 when the lower switch is on. In the three-phase stationary coordinate system, the voltage equations are given by:

$$
\begin{cases}
u_{aN} = L \frac{di_a}{dt} + R i_a + e_a \\
u_{bN} = L \frac{di_b}{dt} + R i_b + e_b \\
u_{cN} = L \frac{di_c}{dt} + R i_c + e_c
\end{cases}
$$

Transforming to the two-phase stationary αβ coordinate system yields:

$$
\begin{bmatrix} u_\alpha \\ u_\beta \end{bmatrix} = L \frac{d}{dt} \begin{bmatrix} i_\alpha \\ i_\beta \end{bmatrix} + R \begin{bmatrix} i_\alpha \\ i_\beta \end{bmatrix} + \begin{bmatrix} e_\alpha \\ e_\beta \end{bmatrix}
$$

This model forms the basis for the observer design and fault analysis. The parameter values used in my experimental validation are summarized in Table 1.

Table 1: System Parameters for Fault Diagnosis Experiments
Parameter Symbol Value
DC-link voltage Udc 400 V
Filter inductance L 20 mH
Resistance R 0.01 Ω
Grid frequency f 50 Hz
Sampling frequency fs 10 kHz
Threshold k, ζ 0.5
Threshold m1, m2 0.3

For preliminary fault detection, I compute the average absolute residual between the measured current and the reference current. The residual for phase x is defined as:

$$
e_x = \frac{1}{T} \int_{t-T}^{t} |i_x – i_x^*| dt
$$

Under normal operation, this residual is close to zero. When a fault occurs—either a current sensor disconnection or a power device open-circuit—the residual increases significantly. I define a fault flag FlagA such that FlagA = 1 when ex < k (normal), and FlagA = 0 when ex > k (fault). This simple threshold comparison provides a fast preliminary detection. However, it cannot discriminate between sensor faults and switch faults because both cause current waveform anomalies. To solve this problem, I design a sliding mode observer that provides an estimate of the phase currents independent of sensor measurements.

The sliding mode observer is built using the αβ model. The observer equations are:

$$
\begin{cases}
\frac{d\hat{i}_\alpha}{dt} = -\frac{R_s}{L} \hat{i}_\alpha – \frac{1}{L} e_\alpha + \frac{1}{L} u_\alpha – \frac{1}{L} m \text{Sat}(\tilde{i}_\alpha) \\
\frac{d\hat{i}_\beta}{dt} = -\frac{R_s}{L} \hat{i}_\beta – \frac{1}{L} e_\beta + \frac{1}{L} u_\beta – \frac{1}{L} m \text{Sat}(\tilde{\hat{i}}_\beta)
\end{cases}
$$

Here, \(\tilde{i}_\alpha = i_\alpha – \hat{i}_\alpha\) is the current error in the α-axis, \(\tilde{\hat{i}}_\beta\) is the reconstructed β-axis error, m is the observer gain, and Sat(·) is a saturation function to reduce chattering. A key challenge arises when one current sensor fails: the β-axis current error cannot be directly measured. To reconstruct the missing information, I utilize the concept of current space vector error. The actual space vector is \(\mathbf{i}_s = i_\alpha + j i_\beta\), and the estimated one is \(\hat{\mathbf{i}}_s\). The projection of the error vector onto the α and β axes provides the necessary correction terms. As illustrated in the conceptual diagram, the relationship between the error vector magnitude and its projections is:

$$
\begin{cases}
\tilde{i}_\alpha = |\tilde{\mathbf{i}}_s| \cos(\theta_e) \\
\tilde{i}_\beta = |\tilde{\mathbf{i}}_s| \sin(\theta_e)
\end{cases}
$$

By applying a heterodyne method, I extract the magnitude error \(\sigma = |\tilde{\mathbf{i}}_s| – |\tilde{\hat{\mathbf{i}}}_s|\). A PI regulator forces σ to zero, allowing the reconstruction of \(\tilde{\hat{i}}_\beta\). This reconstructed error is then used in the observer to produce accurate current estimates even when one sensor fails. The block diagram of the β-axis error reconstruction is implemented with a low-pass filter to attenuate high-frequency ripples. The same principle applies when the a-phase sensor fails: an offset coordinate system is used where the α′ axis is aligned with the b-phase.

Using the sliding mode observer, I obtain the estimated currents \(\hat{i}_a, \hat{i}_b, \hat{i}_c\). I then compute another residual between the estimated current and the reference current:

$$
k_x = \frac{1}{T} \int_{t-T}^{t} |\hat{i}_x – i_x^*| dt
$$

This residual is crucial for fault classification. When a current sensor fails, the measured current ix becomes zero or stuck, but the observer still outputs a correct estimate based on the healthy phases and the system model. Therefore, kx remains small (below threshold ζ). Conversely, when a power switch fails (e.g., an open circuit), the actual inverter output voltage changes, affecting the system dynamics. The observer, which relies on the correct model, will produce an estimated current that deviates from the reference, causing kx to exceed ζ. Thus, the fault type is identified:

  • Current sensor fault: kx < ζ (and FlagA = 0).
  • Power switch fault: kx > ζ (and FlagA = 0).

The fault identification logic is summarized in Table 2.

Table 2: Fault Identification Logic
Condition FlagA kx Diagnosis
Normal operation 1 ≈ 0 No fault
ex > k, kx < ζ 0 Low Current sensor fault in phase x
ex > k, kx > ζ 0 High Power switch fault in phase x

Once the fault type is identified, I proceed to localization. For current sensor faults, I use an axis transformation technique. Two current sensors are assumed to measure phases a and b. In the standard αβ coordinate system where the α-axis aligns with phase a, the Clarke transformation is:

$$
\begin{bmatrix} i_\alpha \\ i_\beta \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ \frac{1}{\sqrt{3}} & \frac{2}{\sqrt{3}} \end{bmatrix} \begin{bmatrix} i_a \\ i_b \end{bmatrix}
$$

Here, iα depends only on ia. Therefore, the residual between measured iα and estimated \(\hat{i}_\alpha\) (computed from the observer) directly indicates the health of the a-phase sensor. Similarly, by rotating the coordinate system so that the α′-axis aligns with phase b, I obtain:

$$
\begin{bmatrix} i_{\alpha’} \\ i_{\beta’} \end{bmatrix} = \begin{bmatrix} 0 & 1 \\ -\frac{2}{\sqrt{3}} & -\frac{1}{\sqrt{3}} \end{bmatrix} \begin{bmatrix} i_a \\ i_b \end{bmatrix}
$$

In this rotated frame, iα′ depends only on ib. I define the fault localization residual Gx as:

$$
G_x = \frac{1}{T} \int_{t-T}^{t} |i_{x} – \hat{i}_x| dt
$$

For the a-phase, Ga uses the standard α-axis; for the b-phase, Gb uses the rotated α′-axis. If Ga > m1, the a-phase sensor is faulty; if Gb > m1, the b-phase sensor is faulty. Under normal operation, both Ga and Gb are near zero.

For power device fault localization, I use the average value of the faulty phase current over one fundamental period:

$$
i_{sk.av} = \frac{1}{T} \int_{t-T}^{t} i_k dt
$$

When the upper switch of a phase (e.g., S1 for phase a) fails open, the positive half-cycle of the phase current is lost, resulting in a negative average value that exceeds the negative threshold –m2. Conversely, a lower switch failure (e.g., S4) causes loss of the negative half‑cycle, giving a positive average greater than m2. The localization rules are summarized in Table 3.

Table 3: Power Device Fault Localization
Condition Faulty Switch
kx > ζ and isk.av < -m2 Upper switch of phase x
kx > ζ and isk.av > m2 Lower switch of phase x

In my experimental validation, I use a hardware‑in‑the‑loop platform consisting of a StarSim RCP controller and a real‑time HIL simulator. The system parameters are as per Table 1. I first verify the observer performance under normal conditions: the estimated αβ currents perfectly track the actual ones, confirming that the sliding mode observer provides accurate estimates. Then, I inject faults artificially.

The experimental results are presented in the following. When a b‑phase current sensor disconnection fault is introduced, the measured b‑phase current drops to zero. FlagA becomes 0 immediately. The residual kb between the estimated current and the reference remains near zero (well below ζ = 0.5), confirming a sensor fault. The localization residual Gb rises to 5.2, clearly exceeding the threshold m1 = 0.3, while Ga remains small. This correctly identifies the b‑phase sensor as faulty. For a power device open‑circuit fault on the upper switch S1 (phase a), the a‑phase current loses its positive half‑cycle. FlagA triggers, ka exceeds ζ, and the average isk.av becomes negative (–2.1, below –m2), pinpointing the fault to the upper switch of phase a. Similarly, when the lower switch S4 fails, the negative half‑cycle disappears, isk.av becomes positive (3.4, above m2), and the fault is correctly located.

I also note that the proposed method is applicable to various types of solar inverter, including single‑phase, two‑level, three‑level NPC, and multilevel configurations, as long as the mathematical model can be derived. The sliding mode observer approach does not rely on specific modulation strategies, making it versatile for different types of solar inverter used in residential, commercial, and utility‑scale photovoltaic systems. In addition, the method can be extended to handle multiple simultaneous faults by cascading the detection and localization procedures.

In conclusion, I have developed a sliding‑mode‑observer‑based fault detection scheme for grid‑connected inverters that effectively distinguishes and locates power device open‑circuit faults and current sensor disconnection faults. The method uses only the measured currents and the known system model, without requiring additional hardware. Experimental results on a hardware‑in‑the‑loop platform validate the efficacy of the approach. The proposed technique enhances the reliability of types of solar inverter and can be integrated into advanced fault‑tolerant control systems for next‑generation renewable energy converters.

Scroll to Top