This study employed a cerebellar model articulation controller (CMAC) neural network to conduct fault diagnoses on photovoltaic power generation systems. We composed a module array using 9 series and 2 parallel connections of SHARP NT-R5E3E 175 W photovoltaic modules. In addition, we used data that were outputted under various fault conditions as the training samples for the CMAC and used this model to conduct the module array fault diagnosis after completing the training. The results of the training process and simulations indicate that the method proposed in this study requires fewer number of training times compared to other methods. In addition to significantly increasing the accuracy rate of the fault diagnosis, this model features a short training duration because the training process only tunes the weights of the exited memory addresses. Therefore, the fault diagnosis is rapid, and the detection tolerance of the diagnosis system is enhanced.

1. Introduction

Photovoltaic power generation system is one of the renewable energy sources, which produces less pollution. To enhance their power generation efficiency, the proposed system was installed in vast and boundless spaces without a shadow. However, when the system operation time increased, the power could be reduced because of module aging. In addition, prolonged outdoor use of the system can result in module faults from natural disasters. Faults in one of the modules in photovoltaic power generation systems significantly decrease the output power of the system [14]. Furthermore, photovoltaic power module faults are difficult to determine and detect by sight, and manual, individual inspection of the modules is time consuming.

Therefore, fault diagnosis techniques for photovoltaic systems not only increase maintenance efficiency and enhance system power generation reliability, but also effectively decrease operation costs. Currently, photovoltaic science applications and technology (PVSAT) projects for fault diagnosis are being explored in Germany, The Netherlands, and Switzerland [5, 6]. These projects primarily focus on establishing a self-fault detection system for grid-connected systems to detect system errors and analyze their causes. However, the development of grid-connected photovoltaic systems relies on meteorological satellites to transmit atmospheric data, and the reference data are measured by ground weather stations as the atmospheric parameters for simulation analyses, further enhancing the overall recognition rate. Regarding the stand-alone systems, adopting this fault detection system is costly, resulting in limited application range and reduced practicality. In addition, experts have proposed employing high frequency reaction measurement [7] and time domain reflectometry (TDR) methods [8] to conduct fault diagnoses. By identifying the reflected feedback signal, the diagnosis method discriminates whether a fault has occurred in the reported area. However, this diagnosis technique relies on additional measurement equipments, such as a network analyzer. Furthermore, the techniques applied in both methods require detailed calculations of the conducting wire length within the photovoltaic power module. Therefore, system maintenance personnel must possess sufficient knowledge related to photovoltaic power generation systems. To apply fault diagnosis to large-scale versions of these systems, the accuracy of the wire length calculation must be ensured; otherwise, module fault areas can be misjudged. Therefore, applying this fault diagnosis technique does not significantly enhance system maintenance convenience. Chouder and Silvestre [9] used the fact that whether the calculated system power loss is a fixed value or a value occurring in a short period as a criterion to determine possible fault types. However, the cause of the fault and whether the fault point occurred on the side of the direct or alternating current cannot be accurately determined. Researchers have previously proposed a simple system performance model [10] to perform fault diagnoses for photovoltaic systems; however, this model was based on statistics of the power output of the power conditioner and categorized system faults into only three types: (1) ideal operating conditions, (2) normal operating conditions, and (3) actual operating conditions where possible faults and additional power loss may occur. Therefore, this simplified method does not significantly save maintenance labor. Vergura et al. [11] employed statistical methods to determine the number of power conditioner faults by referencing the power generation amount of the power conditioner’s alternating current side. However, the most prevalent object in the photovoltaic power generation system with faults that cannot be determined visually is the photovoltaic module, rather than the power conditioner. Therefore, the effects of this method regarding the reduction of maintenance labor are limited.

Based on these mentioned facts, we used the CMAC to conduct fault diagnoses for the module arrays of photovoltaic power generation systems to increase the efficiency and accuracy of fault diagnosis and reduce system maintenance labor. In fault diagnoses, the CMAC application exhibits an excellent accuracy rate, high detection tolerance, and a multi-fault diagnosis function. The framework and diagnosis steps of the CMAC-based fault diagnosis proposed in this study sampled data from existing photovoltaic systems as the information for conducting training. After the training was complete, the system was equipped with a suitable memory weight to conduct fault diagnoses on the test data.

2. Retrieval of Fault Data from the Photovoltaic Power Generation System

Solar Pro packaged software is a photovoltaic power system analysis simulation software developed by Laplace System Co., Ltd. [12]. Solar Pro can establish the module types, model numbers, and installation angles of photovoltaic power generation systems and can simulate the P-V and I-V curves of shaded or faulted photovoltaic power generation systems. Furthermore, this software can simulate system power generation situations ranging from one day, one month to one year. Figure 1 shows the P-V and I-V curves of a 3.15 kW photovoltaic power generation system simulated by Solar Pro under 1,000 W/m2 sunlight irradiation and a module temperature of 25°C. Figure 1 shows that, in addition to indicating the maximum power point voltage, maximum power point current, and maximum power under a particular irradiation and module temperature, Solar Pro can indicate the open-circuit voltage () and the short-circuit current () of a system.

Figure 2 shows the I-V and P-V curves of the SHARP NT-R5E3E photovoltaic module datasheet under irradiation between 200 and 1,000 W/m2 with a PV module surface temperature of 25°C. Figure 3 shows the simulated I-V and P-V curves of the SHARP NT-R5E3E photovoltaic power module using the Solar Pro photovoltaic power system analysis and simulation software under an irradiation between 200 and 1,000 W/m2 and a PV module surface temperature at 25°C. By comparing Figures 2 and 3, we observed that the simulation results of Solar Pro are identical to those of the datasheet, confirming that the characteristic curve simulated by Solar Pro was identical to the performance curve of the actual module and the power generation data.

Figure 4 shows the P-V and I-V simulation curve of the 3.15 kW photovoltaic power generation system composed using NT-R5E3E photovoltaic power modules featuring 9 series and 2 parallel connections under 900 W/m2 irradiation and a PV module surface temperature at 51.6°C. Figure 5 shows the simulated I-V and P-V curves of a series of photovoltaic power module arrays when two modules were shaded, and the irradiation and PV module surface temperature were identical to those shown in Figure 4. From the information shown in Figure 5, we observed that when the photovoltaic power modules were shaded, the I-V curve was not smooth, and multiple peaks occurred in the P-V curve. Figure 6 shows the measurement results obtained under 945 W/m2 and a PV module surface temperature of 51.6°C, when two modules in a photovoltaic power module array were shaded. We observed that, when the photovoltaic power generation system was shaded, the actually measured I-V curve altered, and multiple peaks occurred in the P-V curve. Figures 5 and 6 show that the simulation and measurement results exhibited an excellent match, verifying that the I-V and P-V curves of a photovoltaic power generation system change, when a photovoltaic power module is shaded or faulted. In addition, the voltage, current, and power of the maximum power point can be altered. Therefore, we selected the voltage, current, and power of the maximum power point and open-circuit voltage as the characteristics for the fault diagnosis to examine the photovoltaic power generation system’s fault conditions and types.

3. The Theory Regarding Cerebellar Model Articulation Controllers (CMACs)

The CMAC theory was proposed by Albus in the 1970s [13] to imitate the neurological structure of the human cerebellum for achieving rapid learning and reactions. The CMAC stimulates related memory based on the varying sizes and levels of received input signals. Therefore, memory that is stimulated by relative input signals is approximated. There is no multilayer memory algorithmic framework for articulating controller frameworks. Conversely, memory cells are directly used to store mapping relationships between the input and output signals. The CMAC possesses substantial memory capacity, but the memory stimulated by each input signal can only be a minimal unit. Therefore, not all of the memory is used. This characteristic is identical to the structure of the human cerebellum. Although the human cerebellum has a large memory capacity, it uses a minimal portion of the memory that regards specific input signals. During the CMAC mapping process, each memory address stores a weight. When a set of input signals is inputted, a set of memory addresses is excited through a combination of quantification, coding, and segmentation addresses. Thereafter, the output for this set of input signals can be mapped by summing the weights within a set of excited memory addresses. By comparing the obtained output value to an ideal output value and averagely distributing the output values based on the size of the error value into a set of segmentation memory addresses for tuning, the training process for the data set is completed. The CMAC, similar to other neural networks, is divided into a training stage and a diagnosis stage [14]. A detailed description of the learning and training stage is provided below. The flowchart of the CMAC training process is shown in Figure 7.

3.1. Quantification

To successfully perform coding on the inputted analog signal, the inputted signal should be quantified. The concept of quantification is similar to that of the function implemented by general analog-to-digital integrated circuits (IC). The implemented conversion is represented by

In (1), represents the quantified input, denotes the maximum quantization level, ceil(·) is the maximum integer instruction, and [, ] indicates the minimum and maximum values of the training sample. Numerous quantification levels are delineated by the equidistance between the maximum and minimum values of all of the input data. Quantification levels with a high resolution produce comparatively precise quantification codes, although they require additional memory spaces [15].

3.2. Excited Address Coding

Performing coding on the quantified values involves the hypotheses of, the following quantification: a set of input signals exhibits quantification levels of 5, 10, 8, and 12; the quantization levels are converted to a binary code of , , , and ; and (3) a series of binary codes are combined for coding. Therefore, a 16-bit coding of 110010001010010 is acquired.

By grouping the obtained coding 3 bits per group, 6 groups are established. By sequentially coding the least significant bit to the most significant bit, 6 segmentation addresses are obtained: , , , , , and . Based on the correspondence of these decimal values to the relative memory addresses and from hypothesizing that the preliminary weight of all memory is 0, the summed memory weight of the first stimulation is 0.

3.3. Weight Tuning

Hypothesizing that the summed output weight value of a specific fault type is 1, showing that a specific datum is categorized as a fault type. Therefore, when the sum of the memory is not 1, weight tuning is required. The process of weight tuning is shown by [16, 17]

In (2), represents the strobe memory address and denotes the learning constant (with a value between 0 and 1). Assuming that all fault types only have one set of training samples, can be directly established as 1. The value of more than one sample of data is typically slightly less than 1. represents the target value (set as 1 in this study), indicates the actual output value, and is the number of segmentation memory addresses. This formula evenly distributes weight values that require learning to separate memory addresses.

3.4. Detection Tolerance

The CMAC proposed in this study exhibited excellent anti-interference. For example, if a 16-bit original code (1100100010100101b) coded in Section 3.2 is interfered and converted into (110110001010-0101b), the excited addresses, that is, (, , , , , ), convert from (1, 4, 4, 2, 4, 5) to (1, 5, 4, 2, 4, 5). Except for , which exhibited an error, the other parts possessed normal outputs, thereby exhibiting tolerance. If expanded, the number of groups can be distributed and stored in additional addresses, resulting in a low error detection influential level on the adjacent bits, further enhancing accuracy.

4. Diagnosis Framework Establishment

To perform a fault diagnosis of the photovoltaic power generation system proposed in this study, the present irradiation and PV module temperature of the photovoltaic power generation system are required. Inputting this data, combined with the retrieved characteristic data of the photovoltaic power generation system (e.g., the maximum power, (), maximum power point voltage (), maximum power point current (), and open-circuit voltage () during operation) into the CMAC, determines whether the photovoltaic power generation system is operating normally or is faulted. Figure 8 shows the framework of the CMAC fault diagnosis method proposed in this study. The input signals of this framework were the four detection signals mentioned. The CMAC fault diagnosis framework contained 10 weighted output values, representing the 10 fault types. Therefore, a total of 10 trained memory layers exist. The memory address number of each layer consisted of 2-bit groups. In this study, we used 4 bits per group for a total of four groups. Therefore, each layer had 64 memory addresses. Following input value quantification, grouping, excited address coding, and summing all of the weight values of the excited addresses, a weighted output value was obtained. The diagnosed system used photovoltaic power modules featuring 9 series and 2 parallel connections. The connections are shown in Figure 9.

4.1. Fault Type

This study divided the faults of the photovoltaic power generation system into 10 types (under identical irradiation and PV module temperatures), as listed in Table 1. Figure 10 shows the I-V and P-V characteristic curves of the photovoltaic power generation system that were simulated based on the various fault types in Table 1 and under a PV module temperature of 31°C and 1,000 W/m2 irradiation.

4.2. Diagnosis Process

The CMAC fault diagnosis process of the photovoltaic power generation system proposed in this study is given below.

Step 1. Conducting the initialization of the relevant parameters, as shown in Table 2 the maximum power , maximum power point voltage , maximum power point current , and open-circuit voltage were used as input signals to conduct quantification procedure.

Step 2. Following quantification, the quantified values were converted into binary codes and combined. Thereafter, the combined codes were grouped. This study distributed 4 bits per group, and there were 4 groups.

Step 3. The grouped codes were used to search for corresponding memory addresses, and the weighted value within the memory was summed. This study used a 10-layer memory space. Therefore, memory that had identical addresses in the 10 layers is excited, resulting in 10 outputs.

Step 4. The weight values of the 10 outputs are determined. The greater a weight value or the closer a weight value approximates to 1, the greater fault probability rate it exhibits.

5. Test Results

Irradiation and temperature can change over time. Therefore, the potential PV module temperatures and irradiation ranges within one day were divided into 21 types. Irradiations between 300 and 1,000 W/m2 were divided every 100 W/m2, and PV module surface temperature between 31 and 60°C was further separated every 10°C into three subintervals. These categorizations are listed in Table 3. We obtained 200 data sets for each interval as the training data for photovoltaic power generation system fault diagnosis. A total of 4,200 sets of training data were retrieved from 21 intervals. We used 20 data sets as the test data based on the data obtained from the categorizations in Table 3 (300–1000 W/m2 irradiation and temperature intervals of 31–40, 41–50, and 51–60°C). Tables 4 and 6 contain detailed lists of the test data. The test data comprised the operating maximum power , maximum power point voltage , maximum power point current , and open-circuit voltage of the photovoltaic power array module, which were acquired by inputting the parameters (i.e., irradiation, PV module temperature, and a number of selected fault modules) into Solar Pro for simulation. In addition, operating voltage, current, power, and open-circuit voltage are four critical characteristics in photovoltaic power generation system fault diagnosis. Tables 5 and 7 show the diagnosis results of the fault diagnosis method proposed in this study. The tables show observations of the fault types that can be accurately diagnosed using the method proposed in this study. In addition, the proposed fault diagnosis method does not only diagnose the main fault type of the PV system, but also can diagnose that the possibilities of other fault types have been revealed by the output weights. For example, in Table 5, the output weight index of PF4 is 1.0 in tested number 7, which means that the PV system has a 100% possibility on fault type PF4. And the tested number 7 has the lowest possibility for PF7, because its output weight index is 0.14 (or minimum). This information will be useful to find the hidden fault of the tested object for a maintenance engineer.

Furthermore, to verify the anti-interference ability of the proposed fault diagnosis framework, we altered the test samples, situating a 5% maximum power reduction, a 10% maximum power point voltage increase, a 20% maximum power point current decrease, and a 10% open-circuit voltage increase, and the data that contained additional errors are, respectively, listed in Tables 8 and 10. Based on the detection results in Tables 9 and 11, after adding the errors, the proposed fault diagnosis system still can correctly detect the fault types all of the data sets. Although the output weight values of various fault types for each test data have been changed in Tables 9 and 11 due to error interference, the most possibility occurrence on fault type is unaltered. Furthermore, the order of possibility occurrence on fault type for each test data is almost one and all as shown in Tables 5 and 7 (without error addition). Therefore, whether an error or error interference was added did not influence the proposed method’s ability to correctly detect the fault types of the test data.

6. Conclusion

This study proposed a photovoltaic power generation system fault diagnosis method based on the CMAC. Following training, the CMAC diagnosis framework conducts fault diagnoses on the data of operating photovoltaic power module arrays. The CMAC can associate, summarize, and possesses the characteristic of similar input signals exciting similar memory. Therefore, it exhibits an excellent classification accuracy rate. Furthermore, the CMAC can automatically associate and output the most probable fault type based on the similarity of the test data and specific fault patterns. Despite the presence of additional noise interference in the test data, the diagnosis results verified the accuracy and robustness of the diagnosis framework. In addition, the reduced amount of used memory, increased learning speed, and enhanced tolerance further verifies the CMAC’s superior performance.

Conflict of Interests

The authors of the paper declare that there is no conflict of interests with any of the commercial identities mentioned in the paper.


This work was supported by the National Science Council, Taiwan, under Grant NSC 101–2221-E-167-030.