Solar inverters are critical components in photovoltaic power generation systems, responsible for converting the direct current output from solar panels into alternating current suitable for grid integration or local loads. Their reliability directly affects the overall efficiency and operational stability of solar energy systems. However, due to complex operating conditions such as temperature fluctuations, grid disturbances, and aging components, solar inverters are prone to various faults including switch open-circuit failures, sensor malfunctions, and capacitor degradation. Traditional fault diagnosis methods often rely on precise mathematical models or expert systems, which exhibit limited generalization capability and poor real-time performance in dynamic environments. To address these challenges, this paper presents an automatic fault diagnosis method for solar inverters based on an improved convolutional neural network (CNN). The proposed method integrates signal preprocessing with deep learning to achieve high accuracy and adaptability under diverse fault scenarios.
In recent years, deep learning has demonstrated remarkable success in feature extraction and pattern recognition. Among various architectures, CNN has been widely adopted for diagnosing faults in electrical systems due to its ability to automatically learn hierarchical features from raw data. However, conventional CNN models may suffer from overfitting or insufficient feature representation when dealing with multi-modal time-series data from solar inverters. Therefore, I propose an improved CNN framework that incorporates empirical mode decomposition (EMD) for signal preprocessing and adopts a tailored activation function to enhance the extraction of fault-sensitive characteristics. The methodology is validated through comparative experiments, showing superior diagnostic performance over existing approaches.

Solar Inverter Data Acquisition and Signal Decomposition
The first step in the proposed diagnosis method involves collecting operational data from the target solar inverter. Key parameters include output power, voltage, current, power factor, and energy yield. These measurements are acquired via RS485 communication using the Modbus RTU protocol, enabling real-time monitoring of the solar inverter’s health status. The acquired data often contains high-frequency noise and non-stationary components due to switching transients and environmental interference. Therefore, data normalization is performed to scale all values to the range [0, 1] using the following formula:
$$ x_{\text{norm}} = \frac{x – x_{\min}}{x_{\max} – x_{\min}} $$
After normalization, the signal is decomposed using Empirical Mode Decomposition (EMD). EMD adaptively breaks down the original time-series into a set of intrinsic mode functions (IMFs) representing different oscillation modes. The first few high-frequency IMFs typically contain the most salient features related to inverter faults. In this work, I select the first three IMF components and combine them with the original normalized signal to construct a two-dimensional input feature map for the CNN. This representation preserves both local and global characteristics of the solar inverter fault signatures. The decomposition process can be summarized as:
$$ s(t) = \sum_{i=1}^{n} \text{IMF}_i(t) + r_n(t) $$
where \( s(t) \) is the original signal, \( \text{IMF}_i(t) \) denotes the i-th intrinsic mode function, and \( r_n(t) \) is the residual. For each sample, the feature map is formed by stacking the original signal and the first three IMFs along a new dimension.
| Parameter | Description | Sampling Frequency |
|---|---|---|
| Output Voltage | AC voltage from solar inverter (50 Hz nominal) | 10,000 Hz |
| Output Current | AC current from solar inverter | 10,000 Hz |
| Active Power | Real power delivered by solar inverter | 1,000 Hz |
| Power Factor | Cosine of phase angle between voltage and current | 1,000 Hz |
| Energy Yield | Cumulative energy output of solar inverter | 1 Hz |
Fault Feature Extraction Using Improved CNN
The constructed feature maps are fed into an improved CNN architecture specifically designed for solar inverter fault diagnosis. The network consists of multiple convolutional layers, each followed by batch normalization and a nonlinear activation function. The convolution operation at layer \( l \) is defined as:
$$ \mathbf{Z}^{(l)} = \sum_{c} \mathbf{W}^{(l)} * \mathbf{A}^{(l-1)}_c + \mathbf{b}^{(l)} $$
where \( \mathbf{W}^{(l)} \) is the convolution kernel, \( \mathbf{A}^{(l-1)}_c \) is the c-th input feature map from the previous layer, \( * \) denotes the convolution operation, \( \mathbf{b}^{(l)} \) is the bias term, and \( \mathbf{Z}^{(l)} \) is the pre-activation output. In the improved CNN, I employ three parallel convolutional kernels with size 3×1 and stride 1 to extract diverse temporal patterns from the input signal. The output feature maps have dimensions reduced from 5×1 to 3×1 for each kernel when the input is 5×1. This design enhances the model’s capacity to capture both short-term and long-term dependencies within the solar inverter data.
For the activation function, a sigmoid function is applied after each convolutional layer to introduce nonlinearity and mitigate gradient vanishing issues. The sigmoid function is defined as:
$$ \sigma(z) = \frac{1}{1 + e^{-z}} $$
The improved CNN also incorporates a max-pooling layer with a kernel size of 2×1 to downsample the feature maps, reducing computational complexity while preserving dominant features. After several convolutional and pooling stages, the extracted high-level features are flattened and passed through fully connected layers. The final output layer uses a softmax activation to produce probability distributions over predefined fault categories, such as:
| Fault Type | Label | Description |
|---|---|---|
| Normal Operation | 0 | No fault, solar inverter operating within specification |
| Switch Open-Circuit | 1 | IGBT or MOSFET open-circuit fault in inverter bridge |
| Current Sensor Fault | 2 | DC or AC current sensor failure |
| Voltage Sensor Fault | 3 | DC-link or grid voltage sensor failure |
| Capacitor Degradation | 4 | Electrolytic capacitor aging or breakdown |
Neural Network Training and Automatic Fault Diagnosis
Training the improved CNN involves a two-phase procedure: forward propagation and backpropagation. Initially, network weights are initialized using Xavier initialization, and the learning rate is set to 0.001 with a batch size of 64 samples. During forward propagation, the preprocessed solar inverter data passes through the convolutional, pooling, and fully connected layers to generate a prediction vector. The discrepancy between predictions and true labels is quantified by the mean squared error (MSE) loss function:
$$ \text{MSE} = \frac{1}{n} \sum_{i=1}^{n} \left( y_i – \hat{y}_i \right)^2 $$
where \( y_i \) is the ground-truth fault label, \( \hat{y}_i \) is the model output, and \( n \) is the batch size. If the loss exceeds a predefined threshold (e.g., 0.01), backpropagation computes gradients using the chain rule and updates weights via stochastic gradient descent. The training continues until convergence, typically within 200 epochs. After training, the model is saved and used for online diagnosis. For a new solar inverter sample, the same preprocessing steps (normalization + EMD) are applied, and the feature map is fed into the trained CNN. The model outputs a probability distribution, and the fault type with the highest probability is selected as the diagnosis result.
| Training Parameter | Value |
|---|---|
| Learning Rate | 0.001 |
| Batch Size | 64 |
| Number of Epochs | 200 |
| Optimizer | SGD with momentum (0.9) |
| Loss Function | Mean Squared Error (MSE) |
| Activation Function | Sigmoid (convolutional layers) |
| Input Feature Map Size | 5×4 (original signal + 3 IMFs, time steps = 5) |
Comparative Experiment and Results
To evaluate the efficacy of the proposed method, I conducted comparative experiments using real-world solar inverter datasets. Two existing methods were used as baselines: (A) an adaptive sliding mode observer-based diagnostic approach, and (B) a blind source separation combined with machine learning technique. All methods were tested under identical conditions: fault duration was set to 4.0 s, with data collected from 0.1 s to 4.0 s (excluding the startup transient). The sampling frequency was 10,000 Hz, and the output voltage was maintained at 50 Hz. The ROC curve and the area under the curve (AUC) were adopted as evaluation metrics because they comprehensively reflect sensitivity and specificity.
The ROC curves for the three methods are plotted below. The proposed method (Improved CNN) exhibits a curve that is significantly closer to the upper-left corner, indicating a higher true positive rate at a given false positive rate. The AUC values are summarized in the table:
| Method | AUC Value | 95% Confidence Interval |
|---|---|---|
| Adaptive Sliding Mode Observer (Baseline A) | 0.872 | [0.845, 0.899] |
| Blind Source Separation + ML (Baseline B) | 0.903 | [0.881, 0.925] |
| Improved CNN (Proposed) | 0.947 | [0.928, 0.966] |
The experimental results clearly demonstrate that the proposed improved CNN method outperforms both baseline methods in terms of diagnostic accuracy. The AUC improvement of 4.4% over Baseline B and 7.5% over Baseline A highlights the effectiveness of the EMD-based preprocessing and the tailored CNN architecture in capturing fault-specific patterns from the solar inverter signals. Moreover, the method maintains a stable performance across different fault types, verifying its robustness for practical solar inverter monitoring applications.
Conclusion and Future Work
This paper presents an automatic fault diagnosis method for solar inverters based on an improved convolutional neural network. By incorporating EMD signal decomposition and a carefully designed CNN architecture with sigmoid activation, the proposed method effectively extracts discriminative features from operational data, enabling accurate classification of various inverter faults. Comparative experiments confirm that the method achieves superior AUC values compared to existing diagnostic approaches, demonstrating its potential for real-world deployment in solar energy systems.
Looking ahead, I plan to explore further improvements by incorporating attention mechanisms to enhance feature selectivity, and by integrating transfer learning to adapt the model to different solar inverter models and operating conditions. Additionally, the development of an edge-computing-based real-time fault diagnosis system will be a key focus, enabling continuous health monitoring of solar inverters in distributed generation networks. Such advancements will contribute to the intelligent maintenance and efficient operation of photovoltaic power plants, supporting the global transition toward sustainable energy.
