# Diagnosis of Short-Circuit Fault in Large-Scale Permanent-Magnet Wind Power Generator Based on CMAC

Authors: Chin-Tsung Hsieh; Her-Terng Yau; Jen Shiu
Journal: Mathematical Problems in Engineering
 (2013)

---

## Abstract

This study proposes a method based on the cerebellar model arithmetic controller (CMAC) for fault diagnosis of large-scale permanent-magnet wind power generators and compares the results with Error Back Propagation (EBP). The diagnosis is based on the short-circuit faults in permanent-magnet wind power generators, magnetic field change, and temperature change. Since CMAC is characterized by inductive ability, associative ability, quick response, and similar input signals exciting similar memories, it has an excellent effect as an intelligent fault diagnosis implement. The experimental results suggest that faults can be diagnosed effectively after only training CMAC 10 times. In comparison to training 151 times for EBP, CMAC is better than EBP in terms of training speed.


---

## Body

## 1. Introduction

Due to high demands on energy, green energy has been developing vigorously as it is both inexhaustible and pollution-free. Many types of green energy power generation have been proposed; the three main forms of which are solar power, wind power, and hydraulic power generation. However, the installed capacity and quantity of generators are constantly increasing as required according to the load; consequently, there will be detection of faults in the generators. The traditional fault detection for generators depends on manpower; however, when there are over one hundred generator devices, manual detection is time consuming, requires high cost, and results in errors. In order to address the above problems, this study attempts to use CMAC for intelligent diagnosis of large-scale permanent-magnet wind power generators. The fault categories of generators can be identified only if the short-circuit current, electromagnetic field density, temperature, and vibration of permanent-magnet generators are collected.The common faults in permanent-magnet wind power generators include rotor faults, stator faults, and cooling system faults. Stator faults include single-phase, two-phase and three-phase short-circuit faults. At present, general fault-warning mechanisms adopt the current machine temperature and machine vibration signals individually. An abnormal signal is sent when a signal is lower or higher than the preset value, and the operation is stopped. As the generators are at high altitudes, exposed to long-term vibration and ambient interference, the fault rate is increased greatly. The magnetic steel performance of permanent-magnet generators varies with the temperature, and the variation influences the voltage [1], current, and energy output of the generator. The large-scale permanent-magnet generator adopts an external rotor. The permanent-magnet rotates outside, the winding is inside the motor, double-slot winding is used, and the radial dimension is larger, as shown in Figure 1 [2]. The magnetic field and temperature field distributions are complex, so the fault identification should be studied in depth, and many CMAC-based fault diagnosis methods have been proposed. The CMAC neural network (CMACNN) is suitable to apply to fault diagnosis systems, because it has  fast-learning and convergence properties, good regional class capabilities and is easy to implement. The most important characteristic of CMACNN is its learning speed, which ensures convergence and minimizes the root of mean square error. Therefore, a class of the CMACNN diagnostic method is used in this study. Although the BPNN is able to recognize complex samples, the learning is slow. In order to achieve convergence, it usually requires up to hundreds of iterations. Due to the advantages of  CMACNN, this study refers to the wind generator fault samples in the literature [3]. Compared with BPNN in [3], it can be seen that the method of CMACNN has better results.Figure 1
Permanent-magnet generator structure [2].In 2004, Hung and Wang proposed the CMAC fault diagnosis as a diagnostic method for power transformers. The cerebellar learning ability was like that of a human brain, in that it had self-learning ability, and it was experimentally proved that the diagnosis rate of CMAC was very high [4]. In 2004, Wang and Jiang used the cerebellar network to detect faults in air valves and to learn the normal characteristics of valves. When the valve performance degraded, the cerebellar network identified the characteristic variables through learning and analysis, so as to identify the type of degradation and to predict its severity. The test effect had good robustness in this experiment [5]. In 2005, Feng et al. proposed fault diagnosis for a water circulation system based on a neural network. The features of inlet pressure, outlet pressure, water flow, bearing temperature, and motor current were extracted. The data samples were imported before neural network learning. The test samples were substituted in, and the recognition effect was perfect [6]. In 2007, Liu and Jiang proposed the fault detection mode of the CMAC neural network and multimodels to identify faults in mobile robots. The sensor module executed different tasks, and the cerebellar network was used to detect whether it had any faults. The simulation result proved that the technology was effective [7]. In 2008, Shao implemented fault diagnosis for hydraulic pumps based on CMAC and used the fault cases of hydraulic pumps as the basis of an experiment, as learned and identified by the cerebellar network. The fault categories of the hydraulic pump could be diagnosed effectively, and the frequency of training was much lower than that for BP neural networks [8]. In 2009, Bucak and Karlık  proposed the identification of harmful gases based on a CMAC neural network and the application of an electronic nose flu measuring volatile substances and identifying odors. The results showed that the recognition effect was up to at least 85% using this method [9]. In 2010, Bucak and Karlık used CMAC to help doctors identify liver diseases. The cerebellar application program could shorten the medical diagnosis process and increase the accuracy rate of diagnosis of pathological changes of the liver [10].As mentioned above, the CMAC-based diagnostic methods proposed by the aforesaid experts and scholars can effectively identify the faults in complicated systems with at a high accuracy rate. This study also attempts to use CMAC to diagnose the faults in permanent-magnet generators with a complex structure. Considering that the large-scale permanent-magnet wind power generator has a complex structure, this study discusses its short-circuit fault characteristics, examines the electromagnetic and temperature fields of the generator, and analyzes their relation when a fault occurs. It then replaces manual diagnosis by CMAC to calculate, classify, and identify multiple fault signature data and finally analyzes the fault category to obtain diagnoses.


## 2. Generalization of CMAC

The CMAC is a cerebellar mode controller, proposed by Albus in 1975 [11], mainly for the controller (design) of real-time control systems. As the CMAC has characteristics similar to the cerebellum in that it simulates the operation mode of the human cerebellum, it is very applicable for system classification and fault diagnosis [12]. Taking personal identification by the cerebellum as an example, a person can be identified easily according to his/her features. The same person can be identified even if wearing eyeshades because of eye disease or a mask. A person can even be identified only according to the eyes. The architecture of human brain operation is to store the characteristics of a person in a specific group of cerebellar cells. When a person is seen, as long as a sufficient number of this specific group of cerebellar cells are  compared (excited), he/she can be identified. Although the eyeshades and mask obstruct the comparison of some of the characteristics, as long as enough of the brain cells of this specific group are excited by the rest of the characteristics, explicit identification can still be made. After identification, the eyeshades and mask can be further converted into the characteristics of this specific person, which is helpful for future identification. In addition, the cerebellar characteristics can improve the system fault tolerance (antinoise ability), and only the specific group of brain cells (excited memory address) is tuned in for correction learning. The learning speed is much higher than the tuning architecture of EBP mode or fuzzy logic.The CMAC model mainly imitates the learning memory structure of the human cerebellum, in that it excites the associated memory (brain cells of a specific group) according to the intensity level of the received input signals, and adjacent (similar) input signals excite similar memories (brain cells). Like the structure of the human cerebellum, although its memory capacity is very large, only a small part of memory is used for the specific input signal. In the memory structure of CMAC, each memory address (a brain cell) memorizes a weighting; when a set of input signals is imported, the quantization encoding will excite a set of memory addresses (a specific group of brain cells), and the output (characteristic) corresponding to this set of input signals can be mapped by totaling the weightings in the excited set of memory addresses. This output value is compared with an ideal output value. The error values are equally allocated to this set of excited memory addresses for tuning to complete the training. Therefore, when the same signal is imported again, the same memory address is excited, so the ideal output signal can be obtained by totaling the weightings of the excited memories. When an input signal with noise is imported, (the larger the noise is, the lower the similarity to the original input signal is), only a part of the originally excited memories may be excited again, so totaling the excited memory output still maintains some of the characteristics of the original output signal (depending on similarity). The degree of distortion of the input signal can be identified correctly within certain limits by setting a threshold. The weighting of the excited memory address can be further tuned according to the error between the distorted output signal and ideal output signal, so as to convert this distortion into characteristics of the original input signal. A relatively true output value can be obtained when the same distorted signal is imported again.The operation architecture of the CMAC network is shown in Figure2 [13]. The corresponding relationships between input space and output signal include quantizing input signal, encoding various quantized values in binary, connecting them in series into code values of a binary combination, grouping the code values according to the number of excited addresses (number of addresses for storing signal characteristics), and coding each group to obtain an excited memory address. The output signal can be obtained by totaling the weightings of the excited memory addresses of various groups. The error between this output signal and the ideal output signal can be used to tune the weighting of the excited memory. As shown in Figure 2, if the number of binary code digits after the quantized value of coded combination of input vector 1× is 20, where every five digits are one group, the weightings of four memory addresses can be excited, such as w10, w21, w36, w43 (wij represents the jth address of the ith group). A set of output vectors can be obtained by totaling the weightings of the four addresses. The training of data can be completed by equally allocating the error values between the output vector and the ideal output value to the four addresses for tuning. Therefore, the correct output can be diagnosed when importing the same signal again. All the data are imported in turn, and the training of each data is completed according to the output error values. An evaluation criterion is set, whereby reaching the evaluation index means completing the training (training times represent times of repeated importation of all data). The CMAC distributes a signal characteristic to several memory locations. If all these locations are excited, this specific signal can be determined. However, if the locations are partially excited, meaning they are similar to the signal, and the similarity is determined by the ratio of excited numbers, it can be identified by setting the threshold. If the measurement of signal 1× results in error under interference, changing the connected binary code values so that the excited memory addresses are w10, w21, w36, w43 means that only the address of the first group is changed, so at least 75% of the output characteristics are determined. If the number of subgroups is increased properly, the number of memory locations for storing signal characteristics is increased, and the influence of a single signal error on the output signal will be reduced. In other words, a high percentage of correct characteristics can still be exported even though there is noise, so that the fault tolerance of the fault diagnosis classification will be improved. The actions of the trained CMAC network are only quantization, quantized value coded combination, grouping, excited address code, and final totaling. It executes diagnosis as quickly as the cerebellum adopts a similar reflex action, while receiving a similar command input. The learning and diagnosis are much faster than other intelligent diagnostic systems.Figure 2
Schematic diagram of CMAC cerebellar model network.


## 3. Fault Diagnosis for Cerebellar Model Permanent-Magnet Wind Power Generators

Table1 shows the fault samples of permanent-magnet generators used in the literature [3], for fault diagnosis of permanent-magnet wind power generators. The diagnostic method proposed in this paper aims at this system. According to Table 1, there are 4 types of fault in this system, as shown in Table 2, and there are 6 types of detected signals, as shown in Table 1.Table 1
Fault sample data [3].
State
Ia
Ib
Ic
Magnetic flux density
Temperature
Vibration
Normal
0.012
0.012
0.013
0.011
0.015
0.017
Single-phase short circuit
0.582
0.233
0.241
0.217
0.201
0.242
Two-phase short circuit
0.683
0.663
0.334
0.165
0.604
0.688
Three-phase short circuit
0.992
0.983
0.991
0.981
0.997
0.983Table 2
Fault mode classification.
Fault mode
Diagnosis rate (1 = 100%)
Normal
1
0
0
0
Single-phase short circuit
0
1
0
0
Two-phase short circuit
0
0
1
0
Three-phase short circuit
0
0
0
1


### 3.1. Quantization Mapping

In order to encode the imported analog signal smoothly, the input signal must be quantized first. The concept of this quantization is equivalent to the function executed by general analog-to-digital IC. The executed conversion relation can be expressed as the following equation [14]
(1)qi=Q(xi,ximin,ximax,qimax),i=1,…,n,
where n is the number of input signals. The signal resolution is determined by the maximum value ximax  and minimum value ximin of input signals and the maximum quantization level  qimax. As shown in Figure 3, the horizontal axis represents the input signal. If the maximum quantization level qimax is 10, the corresponding quantized value to of the input signal can be determined.Figure 3
Quantization mapping.


### 3.2. Segment Address Mapping

A set of segment addresses can be mapped from the quantized value of each input signal according to the relation in Figure4. The horizontal axis in Figure 4 is the quantization level. If the number of excited addresses A*=4, each quantization level will map four segment addresses, that is, v1, v2, v3, v4, and the value of each segment address can be obtained from the vertical axis. If the number of excited addresses changes, the mapped segment address changes accordingly. According to the figure, adjacent quantization levels only have the quantization level of one segment address, and similar quantization levels have similar segment addresses. Therefore, the excited addresses resulting from the combination of segment addresses may be similar. The figure shows if the quantization level of the first signal is 3, the mapped segment address  [v11,v12,v13,v14]=[5,6,3,4].Figure 4
Segment address mapping.


### 3.3. Concatenation

Each signal sent into the CMAC neural network will mapA* segment addresses. The coded excited memory address can be obtained by concatenating the segment addresses of each signal. The concatenation is expressed as the following equation [15]:
(2)Vj=concat(v1j,v2j,…,vnj),j=1,…,A*,
where Vj is the excited memory address and vij is the ith segment address of the jth signal. For example, the quantization levels of input signals (x1,x2,x3) are (3,6,8), respectively; the x1 mapping segment address is  [v11,v12,v13,v14]=[5,6,3,4], the x2  mapping segment address is [v21,v22,v23,v24]=[9,6,7,8], and the x3  mapping segment address is     [v31,v32,v33,v34]=[9,10,11,8].  According to the mode of the concatenation equation, the concatenation modes of the excited addresses are expressed as follows:
(3)V1=concat[v11,v21,v31]=concat[5,9,9]=010110011001B,V2=concat[v12,v22,v32]=concat[6,6,10]=011001101010B,V3=concat[v13,v23,v33]=concat[3,7,11]=001101111011B,V4=concat[v14,v24,v34]=concat[4,8,8]=010010001000B.If (bitn) is the required minimum digit for coding the segment address; the computing equation:(4)bitn=ceil(log2(qjmax+A*)).ceil(x) searches for the integer closest to x towards infinitely great, so Vj  can be calculated by the following equation for combination:
(5)Vj=∑i=1nvij2bitn(n-1),j=1,…,A*.
The output of CMAC can be obtained by totalling the weightings in the excited addresses.


### 3.4. Output Mapping

The output of the CMAC neural network can be obtained by totaling the memory weightings in the excited addresses. The computing mode can be expressed as the following equation [16]:
(6)y=∑j=1A*wvj.In this paper, (6) can be expressed as the following vector form
(7)y=uTw,
where w is the vector of the used memory, u is the vector containing only 0 and 1 elements, and the number 1 equals the number of excited memories A*.


### 3.5. Update the Weighting

The training of the CMAC neural network is adjusted according to the actual output and the expected output. If it is supervisory training, as there is a specific training target, the weighting can be updated using the following steepest-descent update rule:(8)wvinew=wviold+βyd-yA*,
where 0<β≤1 is the learning gain. As for non-supervisory training mode, as there is no specific training target, the training can be implemented in indirect mode only by observing the output behavior of the system.


### 3.6. Performance Index of the CMAC NN

It is assumed that the output value of the sum of thei-layer inspired memory address is 1, which represents that the number of ith type fault samples is d (the number of the samples in this paper is 4). Therefore, this study uses the following equation as the objective function. 								(9)E=∑i=1d(yi-1)2,
where the parameter E describes the learning effectiveness. If E<ε (ε is a positive constant) does exist, the training work will be stopped. The CMAC training process is shown in Figure 5.Figure 5
CMAC training process.


## 3.1. Quantization Mapping

In order to encode the imported analog signal smoothly, the input signal must be quantized first. The concept of this quantization is equivalent to the function executed by general analog-to-digital IC. The executed conversion relation can be expressed as the following equation [14]
(1)qi=Q(xi,ximin,ximax,qimax),i=1,…,n,
where n is the number of input signals. The signal resolution is determined by the maximum value ximax  and minimum value ximin of input signals and the maximum quantization level  qimax. As shown in Figure 3, the horizontal axis represents the input signal. If the maximum quantization level qimax is 10, the corresponding quantized value to of the input signal can be determined.Figure 3
Quantization mapping.


## 3.2. Segment Address Mapping

A set of segment addresses can be mapped from the quantized value of each input signal according to the relation in Figure4. The horizontal axis in Figure 4 is the quantization level. If the number of excited addresses A*=4, each quantization level will map four segment addresses, that is, v1, v2, v3, v4, and the value of each segment address can be obtained from the vertical axis. If the number of excited addresses changes, the mapped segment address changes accordingly. According to the figure, adjacent quantization levels only have the quantization level of one segment address, and similar quantization levels have similar segment addresses. Therefore, the excited addresses resulting from the combination of segment addresses may be similar. The figure shows if the quantization level of the first signal is 3, the mapped segment address  [v11,v12,v13,v14]=[5,6,3,4].Figure 4
Segment address mapping.


## 3.3. Concatenation

Each signal sent into the CMAC neural network will mapA* segment addresses. The coded excited memory address can be obtained by concatenating the segment addresses of each signal. The concatenation is expressed as the following equation [15]:
(2)Vj=concat(v1j,v2j,…,vnj),j=1,…,A*,
where Vj is the excited memory address and vij is the ith segment address of the jth signal. For example, the quantization levels of input signals (x1,x2,x3) are (3,6,8), respectively; the x1 mapping segment address is  [v11,v12,v13,v14]=[5,6,3,4], the x2  mapping segment address is [v21,v22,v23,v24]=[9,6,7,8], and the x3  mapping segment address is     [v31,v32,v33,v34]=[9,10,11,8].  According to the mode of the concatenation equation, the concatenation modes of the excited addresses are expressed as follows:
(3)V1=concat[v11,v21,v31]=concat[5,9,9]=010110011001B,V2=concat[v12,v22,v32]=concat[6,6,10]=011001101010B,V3=concat[v13,v23,v33]=concat[3,7,11]=001101111011B,V4=concat[v14,v24,v34]=concat[4,8,8]=010010001000B.If (bitn) is the required minimum digit for coding the segment address; the computing equation:(4)bitn=ceil(log2(qjmax+A*)).ceil(x) searches for the integer closest to x towards infinitely great, so Vj  can be calculated by the following equation for combination:
(5)Vj=∑i=1nvij2bitn(n-1),j=1,…,A*.
The output of CMAC can be obtained by totalling the weightings in the excited addresses.


## 3.4. Output Mapping

The output of the CMAC neural network can be obtained by totaling the memory weightings in the excited addresses. The computing mode can be expressed as the following equation [16]:
(6)y=∑j=1A*wvj.In this paper, (6) can be expressed as the following vector form
(7)y=uTw,
where w is the vector of the used memory, u is the vector containing only 0 and 1 elements, and the number 1 equals the number of excited memories A*.


## 3.5. Update the Weighting

The training of the CMAC neural network is adjusted according to the actual output and the expected output. If it is supervisory training, as there is a specific training target, the weighting can be updated using the following steepest-descent update rule:(8)wvinew=wviold+βyd-yA*,
where 0<β≤1 is the learning gain. As for non-supervisory training mode, as there is no specific training target, the training can be implemented in indirect mode only by observing the output behavior of the system.


## 3.6. Performance Index of the CMAC NN

It is assumed that the output value of the sum of thei-layer inspired memory address is 1, which represents that the number of ith type fault samples is d (the number of the samples in this paper is 4). Therefore, this study uses the following equation as the objective function. 								(9)E=∑i=1d(yi-1)2,
where the parameter E describes the learning effectiveness. If E<ε (ε is a positive constant) does exist, the training work will be stopped. The CMAC training process is shown in Figure 5.Figure 5
CMAC training process.


## 4. Experimental Results

Finally, the samples in the literature [3] are substituted in the CMAC training, and the first data and the fourth data have plus and minus 10% noise, respectively. For EBP, proposed by the previous study, the training number is 151, the input dimension is 6, the number of input neurons is 6, the output vector dimension is 4, the number of output neurons is 4, and the number of hidden layer neurons is 15.The CMAC training corrects the weighting continuously, minimizing the network output error by continuous updating to satisfy practical application. The fault sample data are shown in Table1, the export targets are shown in Table 2, and the test samples are shown in Table 3. Finally, the test samples are substituted in the cerebellar network for fault diagnosis, and the number of training times of CMACNN is 10. The quantization level is 4, the segment address encoded as 7 bit, the learning rate is 0.9, and the fault type is 4. MATLAB is used to simulate faults in the permanent-magnet wind power generator. Table 4 shows the fault output, and Figure 6 shows the output results. The experimental results suggest that CMAC only needs training 10 times to diagnose faults effectively. In comparison to EBP, which needs training 150 times before diagnosing faults, the training speed of CMAC is better than that of EBP.Table 3
Test samples.
State
Ia
Ib
Ic
Magnetic flux density
Temperature
Vibration
Normal
0.0132
0.0132
0.0143
0.0121
0.0165
0.0187
Single-phase short circuit
0.582
0.233
0.241
0.217
0.201
0.242
Two-phase short circuit
0.683
0.663
0.334
0.165
0.604
0.688
Three-phase short circuit
0.892
0.884
0.891
0.882
0.897
0.884Table 4
Fault output.
Fault mode
Diagnosis rate (1 = 100%)
Normal
0.733
0.068
0.000
0.097
Single-phase short circuit
0.064
0.727
0.000
0.039
Two-phase short circuit
0.000
0.000
0.8571
0.000
Three-phase short circuit
0.000
0.000
0.000
1.000Figure 6
Output results.


## 5. Conclusion

This experiment diagnosed the faults in a large-scale permanent-magnet wind power generator, and captured the short-circuit fault current, electromagnetic field and temperature characteristics as the base of the fault sample test. MATLAB was used for simulation. According to the experimental result, the recognition rate of CMAC can be higher than 72.7% after only training 10 times, which is faster than EBP, and it is rapid and effective as an intelligent fault diagnosis implement.



---

*Source: 935048-2013-01-30.xml*