In modern photovoltaic (PV) power generation, solar inverters play a critical role in converting DC power generated by PV arrays into AC power compatible with the grid. However, due to the complexity of their circuitry and operational environments, solar inverters are prone to various abnormal conditions that can lead to performance degradation or failure. Traditional diagnostic methods often rely on manual inspection or simple threshold-based alerts, which may not detect incipient faults in time. To address this, we propose a deep learning-based pre-automated diagnosis method for identifying abnormal conditions in solar inverters integrated with Supervisory Control and Data Acquisition (SCADA) systems. This approach leverages real-time data collection, advanced signal processing, and convolutional neural networks (CNNs) to enable early detection and diagnosis, ensuring the reliable operation of solar inverters.
The core of our method focuses on a dual-mode five-level solar inverter, which is representative of advanced SCADA-enabled systems. The topology of this solar inverter includes key components such as switching capacitors, diodes, and multiple switches, arranged to facilitate both boost and buck operational modes. The output voltage levels in these modes are critical indicators of the inverter’s health. For instance, in boost mode, the output voltage \( V_{PN} \) can reach levels of \( \pm 2V_{dc} \), while in buck mode, it is limited to \( \pm V_{dc} \). These voltage variations serve as primary signals for detecting anomalies. The SCADA system continuously monitors and collects output voltage data under various operating conditions, providing a rich dataset for analysis. By applying variational mode decomposition (VMD) to these voltage signals, we decompose them into intrinsic mode functions (IMFs), which capture distinct frequency components associated with different abnormal conditions. Subsequently, wavelet transform is employed to extract feature vectors from these IMFs, and a CNN model processes these features to classify and diagnose abnormalities automatically. This integrated approach enhances the robustness and accuracy of fault prediction in solar inverters, contributing to the stability of PV power systems.
The topological structure of the solar inverter is fundamental to understanding its operation and potential failure modes. As illustrated in the circuit diagram, the inverter comprises two switching capacitors (\( C_1 \) and \( C_2 \)), a diode (\( D \)), and eight switches (\( S_1 \) to \( S_8 \)), along with filtering components like inductors (\( L_f \)) and capacitors (\( C_f \)). The DC bus voltage \( V_{dc} \) and output voltage \( V_g \) are key parameters monitored by the SCADA system. In boost mode, the capacitors are configured to support higher output voltages, whereas in buck mode, they operate at reduced voltage levels. The output voltage \( V_{PN} \) can be expressed mathematically as:
$$ V_{PN} = \begin{cases}
\left[0, V_{dc}, \pm V_{dc}, \pm 2V_{dc}\right] & \text{for boost mode} \\
\left[0, V_{dc}, \pm \frac{1}{2}V_{dc}, \pm V_{dc}\right] & \text{for buck mode}
\end{cases} $$
This equation highlights the discrete voltage levels that the solar inverter can produce, which are instrumental in identifying deviations caused by abnormalities such as capacitor degradation. For example, if capacitor \( C_1 \) or \( C_2 \) degrades by 8% to 50%, the output voltage profiles shift, creating unique signatures for different fault scenarios. The maximum output voltage in each mode is given by:
$$ \max V_{PN} = \begin{cases}
2V_{dc} & \text{for boost mode} \\
V_{dc} & \text{for buck mode}
\end{cases} $$
By analyzing these voltage signals in real-time, the SCADA system can capture early signs of inverter malfunctions. In our approach, we collect output voltage data under 31 distinct abnormal conditions, including cases where one or both capacitors are degraded. These conditions are labeled for reference, such as \( a_0 \) for normal operation, \( a’_{11} \) to \( a’_{15} \) for boost mode with \( C_1 \) degradation, and \( a^*_{21} \) to \( a^*_{25} \) for buck mode with \( C_2 \) degradation. This comprehensive dataset forms the basis for training and testing our diagnostic model.

To extract meaningful features from the raw voltage signals, we employ variational mode decomposition (VMD), a robust signal processing technique that decomposes a signal into a set of IMFs with specific bandwidths and center frequencies. Given a signal \( f(t) \) representing the output voltage of a solar inverter at time \( t \), VMD aims to minimize the sum of the bandwidths of all IMFs while ensuring their reconstruction matches the original signal. The constrained variational problem is formulated as:
$$ \min_{\{\delta_m\}, \{A_m\}} \left\{ \sum_{m=1}^{M} \left\| \partial_t \left[ \left( \frac{j}{\pi t} + \phi(t) \right) * \delta_m(t) \right] e^{-j A_m t} \right\|_2^2 \right\} \quad \text{subject to} \quad \sum_{m=1}^{M} \delta_m(t) = f(t) $$
where \( \delta_m(t) \) denotes the \( m \)-th IMF, \( A_m \) is its center frequency, \( \partial_t \) is the partial derivative with respect to time, \( * \) represents convolution, and \( \phi(t) \) is the Dirac delta function. To solve this, we introduce a Lagrangian multiplier \( \gamma \) and a quadratic penalty parameter \( \sigma \), transforming it into an unconstrained problem:
$$ L(\gamma, A_m, \delta_m) = \left\| f(t) – \sum_{m=1}^{M} \delta_m(t) \right\|_2^2 + \left\| \gamma(t) + \frac{j}{\pi t} * \left( f(t) – \sum_{m=1}^{M} \delta_m(t) \right) \right\|_2^2 + \sigma \sum_{m=1}^{M} \left\| \partial_t \left[ \left( \frac{j}{\pi t} + \phi(t) \right) * \delta_m(t) \right] e^{-j A_m t} \right\|_2^2 $$
Using the alternating direction method of multipliers (ADMM), we iteratively update the IMFs and center frequencies in the frequency domain. The update for the \( m \)-th IMF in the Fourier domain is:
$$ \hat{\delta}_m^{k+1}(A) = \frac{\hat{f}(A) – \sum_{i \neq m} \hat{\delta}_i(A) + \frac{\hat{\gamma}(A)}{2}}{1 + 2\sigma (A – A_m)^2} $$
and the center frequency is updated as:
$$ A_m^{k+1} = \frac{\int_0^\infty A |\hat{\delta}_m(A)|^2 dA}{\int_0^\infty |\hat{\delta}_m(A)|^2 dA} $$
The iteration continues until the convergence criterion is met:
$$ \frac{\sum_{m=1}^{M} \|\hat{\delta}_m^{k+1} – \hat{\delta}_m^k\|_2^2}{\|\hat{\delta}_m^k\|_2^2} < \varepsilon $$
where \( \varepsilon \) is a small tolerance value. This decomposition process effectively separates the voltage signal into IMFs that highlight distinct frequency components associated with different abnormal conditions in solar inverters. For instance, in a scenario like \( a^*_{22} \) (buck mode with \( C_2 \) degradation), VMD produces six IMFs, each capturing specific oscillatory modes of the signal. These IMFs serve as the foundation for feature extraction.
Following VMD, we apply wavelet transform to the IMFs to extract discriminative feature vectors. Wavelet transform provides a multi-resolution analysis by decomposing signals into approximate and detailed coefficients. For each IMF component, we compute the wavelet energy distribution across different frequency bands. The process involves recursively decomposing the signal into low-frequency and high-frequency parts, discarding the low-frequency components, and further decomposing the high-frequency parts. After several levels of decomposition, we obtain a set of wavelet coefficients that represent the signal’s energy distribution. These coefficients are then normalized and combined into feature vectors. Mathematically, for a signal \( x(t) \), the continuous wavelet transform is defined as:
$$ \text{CWT}(a, b) = \frac{1}{\sqrt{|a|}} \int_{-\infty}^{\infty} x(t) \psi^* \left( \frac{t – b}{a} \right) dt $$
where \( \psi(t) \) is the mother wavelet, \( a \) is the scale parameter, and \( b \) is the translation parameter. In our case, we use discrete wavelet transform (DWT) for computational efficiency, implemented as a filter bank with high-pass and low-pass filters. The feature vector for each abnormal condition is constructed by concatenating the statistical moments (e.g., mean, variance) of the wavelet coefficients from all IMFs. This results in a high-dimensional feature set that encapsulates the unique characteristics of each fault type in solar inverters.
The extracted feature vectors are fed into a convolutional neural network (CNN) for automated diagnosis of abnormal conditions in solar inverters. The CNN architecture consists of multiple layers, including input, convolutional, pooling, fully connected, and output layers. The input layer receives the feature vectors derived from the wavelet-transformed IMFs. The convolutional layers apply filters to detect local patterns, followed by activation functions (e.g., ReLU) to introduce non-linearity. Pooling layers (e.g., max-pooling) reduce dimensionality and enhance translation invariance. The fully connected layers integrate the features for final classification, and the output layer uses a softmax function to assign probabilities to each abnormal condition. The overall structure can be summarized as:
| Layer Type | Description | Parameters |
|---|---|---|
| Input | Feature vectors from wavelet-transformed IMFs | Dimension: 256 |
| Convolutional | 32 filters of size 3×3, ReLU activation | Stride: 1, Padding: same |
| Pooling | Max-pooling with 2×2 window | Stride: 2 |
| Convolutional | 64 filters of size 3×3, ReLU activation | Stride: 1, Padding: same |
| Pooling | Max-pooling with 2×2 window | Stride: 2 |
| Fully Connected | 128 neurons, ReLU activation | Dropout: 0.5 |
| Output | Softmax for 31 classes | Activation: softmax |
The training process involves minimizing the cross-entropy loss function using an optimizer like Adam. The loss function is defined as:
$$ L = -\frac{1}{N} \sum_{i=1}^{N} \sum_{c=1}^{C} y_{i,c} \log(\hat{y}_{i,c}) $$
where \( N \) is the number of samples, \( C \) is the number of classes (31 abnormal conditions), \( y_{i,c} \) is the true label, and \( \hat{y}_{i,c} \) is the predicted probability. The CNN learns to map the input features to the correct fault categories, enabling real-time diagnosis of solar inverter abnormalities through the SCADA system.
To validate our method, we conducted experiments using a dual-mode five-level solar inverter with parameters detailed in the following table:
| Parameter | Value |
|---|---|
| Number of IMFs (\( M \)) | 6 |
| Quadratic Penalty Parameter (\( \sigma \)) | 2000 |
| Convergence Tolerance (\( \varepsilon \)) | 10^{-6} |
| Rated Power | 1 kW |
| Line Frequency | 50 Hz |
| DC Bus Voltage (\( V_{dc} \)) | 200-400 V |
| Output Voltage (\( V_{PN} \)) | 230 V |
| Filter Capacitance (\( C_f \)) | 4 μF |
| Filter Inductance (\( L_f \)) | 0.552 mH |
| Capacitor \( C_1 \) | 100 μF |
| Capacitor \( C_2 \) | 100 μF |
We simulated 31 abnormal conditions by introducing capacitor degradations ranging from 8% to 50% in both boost and buck modes. For each condition, we collected 50 samples of output voltage data, resulting in a total of 1550 datasets. These were split equally into training and testing sets. The VMD and wavelet transform processes were applied to the training data to extract feature vectors, which were then used to train the CNN model. The testing set evaluated the model’s diagnostic accuracy.
The decomposition performance of VMD is exemplified for abnormal condition \( a^*_{22} \) (buck mode with \( C_2 \) degradation). The original voltage signal exhibits irregular oscillations due to the fault, and after VMD, six distinct IMFs are obtained, each representing a specific frequency band. This decomposition allows for precise feature extraction, as each IMF captures unique aspects of the anomaly. The CNN model achieved high diagnostic accuracy across all 31 conditions, as summarized in the following table:
| Abnormal Condition | Diagnosis Result |
|---|---|
| \( a_0 \) (Normal) | Successfully Diagnosed |
| \( a’_{21} \) to \( a’_{25} \) (Boost, \( C_2 \) degradation) | Successfully Diagnosed |
| \( a’_{11} \) to \( a’_{15} \) (Boost, \( C_1 \) degradation) | Successfully Diagnosed |
| \( a^*_{21} \) to \( a^*_{25} \) (Buck, \( C_2 \) degradation) | Successfully Diagnosed |
| \( a^*_{11} \) to \( a^*_{15} \) (Buck, \( C_1 \) degradation) | Successfully Diagnosed |
| \( a’_{1} \) to \( a’_{5} \) (Boost, both capacitors degraded) | Successfully Diagnosed |
| \( a^*_{1} \) to \( a^*_{5} \) (Buck, both capacitors degraded) | Successfully Diagnosed |
The results demonstrate that our method effectively diagnoses all simulated abnormal conditions in solar inverters. The integration of VMD, wavelet transform, and CNN provides a robust framework for pre-automated diagnosis, enabling early detection of faults such as capacitor degradation. This proactive approach minimizes downtime and enhances the reliability of PV systems. Additionally, the use of SCADA systems ensures real-time monitoring and data acquisition, making this method practical for industrial applications.
In conclusion, the proposed deep learning-based method offers a comprehensive solution for pre-automated diagnosis of abnormal conditions in solar inverters within SCADA systems. By leveraging variational mode decomposition and wavelet transform for feature extraction, and convolutional neural networks for classification, we achieve high accuracy in identifying various fault scenarios. This approach not only improves the maintenance and operational efficiency of solar inverters but also contributes to the overall stability of photovoltaic power generation. Future work could explore the integration of this method with cloud-based SCADA platforms for large-scale deployment and real-time adaptive learning.
