Locating Faulty Rolling Element Bearing Signal by Simulated Annealing Project Proposal Jing Tian Course Advisor: Professor Radu Balan, Professor Kayo Ide Research Advisor: Dr. Carlos Morillo University of Maryland, College Park Abstract Vibration acceleration signal is widely used in the health monitoring of rolling element bearing, Locating the optimum frequency band that contains faulty bearing signal is a critical work in the monitoring. This project implements simulated annealing to locate the optimum frequency band. Fault feature frequency component will be extracted from the located frequency band by envelope analysis. The algorithm will be validated by a combination of analytic work, simulated work and an open database of both normal and faulty bearing vibration signals. I. Background Bearing provides relative rotational freedom and transmits a load between two structures. It is widely used in electromechanical systems. Rolling element bearing is a major source of failure in electromechanical systems. For example, bearing faults account for more than 40% of the induction motor’s failure [1], and gearbox bearing failure is the top contributor of the wind turbines downtime [2, 3]. Bearings are inexpensive devices, but the failure of bearing is costly. A $5,000 wind turbine bearing replacement can easily turn into a $250,000 project, not to mention the cost of downtime [4]. In 1987, LOT Polish Airlines Flight 5055 Il-62M crashed because of failed bearings in one engine, killing all the183 people on the plane [5]. In-situ health monitoring is used to improve the condition-based maintenance, which reduces the frequency and the loss of the bearing failure. In the bearing health monitoring, early detection of the bearing fault is a major concern for the industry. Vibration acceleration signal is widely used in this purpose because it is sensitive to the bearing fault and it can be monitored in-situ. The objective of the vibration signal bearing fault detection is to test if the vibration signal x(t) contains the faulty bearing signal s(t) Faulty bearing: Normal bearing: x(t) = s(t) + ν(t) x(t) = ν(t) where x(t) is the monitored vibration signal; s(t) is the faulty bearing signal; v(t) is the noise, which is unknown. An industrial practice to test the existence of s(t) is to test if a unique frequency component of s(t)- the fault feature frequency component can be extracted from x(t) or not. If the fault feature frequency component is extracted, the hypothesis that the bearing is faulty is true, otherwise the hypothesis is false. According to the research in [6], faulty bearing signal s(t) is a modulated signal s(t) = d(t)c(t) where d(t) is the modulating signal. It is a result of the periodic impact between the bearing’s rolling elements and the fault on the bearing’s contact surface. Its frequency component is the fault feature frequency, which is illustrated in a simulated faulty bearing signal in Fig.1. The frequency is provided by the bearing manufacturer; c(t) is the carrier signal, which is a result of the loading and vibration transfer function. This signal is usually unknown. Amplitude 1 1/fFault 0.5 0 -0.5 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 Time(s) Fig. 1, Faulty bearing signal s(t) fFault is the fault feature frequency -4 Amplitude 4 x 10 2 Methods like envelope analysis have been developed to extract the fault feature frequency. The problem is that in the presence of noise the extraction may fail. The solution is to band-pass 0 2000 4000 6000 10000 14000 filter the vibration signal in the0 frequency domain, as 8000 shown in a 12000 simulated vibration signal in Frequency (Hz) Fig. 2. Amplitude 0.01 Faulty bearing signal 0.005 0 0 500 1000 1500 2000 2500 Frequency(Hz) Fig. 2, Vibration signal in the frequency domain The challenge to design the filter is that the optimum frequency band to band-pass filter the faulty bearing signal is usually unknown. This project provides a solution to find the optimum frequency band. II. Approach This project finds the optimum frequency band by optimizing the band-pass filter with simulated annealing (SA). The idea is, the frequency band for the faulty bearing signal is non-Gaussian, and therefore it has larger spectral kurtosis value [7]. By maximizing the SK, the optimum frequency band for the faulty bearing signal is found. The optimization problem is to maximize SK in terms of the central frequency, bandwidth, and the order of the finite impulse response (FIR) band-pass filter. Maximize SK ( f c , f , M ) Subject to f Fault f f s f f f ; fc s 2 2 2 where fc is the frequency band’s central frequency; Δf is the width of the band; M is the order of FIR filter; fFaul is the fault feature frequency; fs is the sampling rate. When the optimum frequency band is obtained, envelope analysis is applied to the filtered signal to extract the bearing faulty feature frequency. Fig. 3 shows the flow chart of the algorithm. SA Maximize SK by fc, Δf, M x(n) FIR filter hi (fci, Δfi, Mi) x(n) yi(n) SK Optimized yo(n) FIR filter h(fco, Δfo, Mo) Maximized SK SKo SKi a(n) EA A(f) FFT Magnitude |A(f)| x(n) is the sampled vibration signal; yi(n) is filtered output of the ith FIR filter hi; SKi is the SK of the yi(n); yo(n) is the output of the optimized FIR filter; a(n) is the envelope of yo(n) ; A(f) is the FFT of a(n) The bearing is normal No f=fFault? Yes The bearing is faulty Fig. 3, Flow chart of the algorithm (1) FIR filter x(n) is the sampled version of the vibration signal x(t). It has N points. At first, the vibration signal x(n) is band-pass filtered by a FIR filter h to produce the filtered signal y(n): y ( n) x ( n) h h hd (n) w(n) hd(n) is the impulse response of the filter sin[( n M / 2) hd (n) f c f / 2 f f / 2 ] sin[( n M / 2) c ] fs / 2 fs / 2 (n M / 2) w(n) is the window function. In this project, Hamming window will be used: w(n) 0.54 0.46 cos( 2 n ),0 n M M (2) SK Then the spectral kurtosis of the filtered signal y(n) is calculated. Spectral kurtosis is defined as follows: SK 4 {Y (m), Y * (m), Y (m), Y * (m)} [ 2 {Y (m), Y * (m)}] 2 where κr is the rth order cumulant. Y(m) is the DFT of the signal y(n): N 1 Y (m) y(n)e i 2m n N , m 0,1,..., N 1 n 0 Both y(n) and Y(m) are N points sequences. SK is a real number. To estimate SK, the formula for joint cumulant is used: SK E[Y (m)Y * (m)Y (m)Y * (m)] E[Y (m)Y (m)] E[Y * (m)Y * (m)] 2 E[Y (m)Y * (m)] According to [8], DFT of a stationary signal is a circular complex random variable, and E[Y(m)2]=0, E[Y* (m)2]=0. Therefore, we have E{| Y (m) |4 } 2[ E{| Y (m) |2 }]2 E{| Y (m) |4 } SK 2 [ E{| Y (m) |2 }]2 [ E{| Y (m) |2 }]2 Put together, the fc, Δf, M become variables of SK in the following route as illustrated in Fig 4: E{| Y (m) |4 } SK 2 [ E{| Y (m) |2 }]2 N 1 Y (m) y(n)e SK i 2m n N DFT , m 0,1,..., N 1 n 0 y ( n) x ( n) h h hd (n) w(n) Filter w(n) 0.54 0.46 cos( 2 sin[( n M / 2) hd (n) n ),0 n M M f c f / 2 f f / 2 ] sin[( n M / 2) c ] fs / 2 fs / 2 (n M / 2) Fig. 4, Transmission of the variables (3) Initial input for optimization Before optimizing the filter, initial input is obtained by calculating SK for the signal filtered by an FIR filter-bank. The filter-bank has a structure of binary tree as shown in Fig. 5. At each level of the structure, the signal Sk,j is low pass filtered and high pass filtered to generate Sk+1,2j-1 and Sk+1,2j. Frequency bands are ranked according to their SK value from large to small. Top h frequency bands are selected as the initial input. S0,1 Level 0 S1,1 Level 1 S2,1 Level 2 Level 3 S3,1 S1,2 S2,2 S3,2 S3,3 S2,3 S3,4 S2,4 S3,5 S3,6 S3,7 S3,8 … … … Level k … Sk,j … … 0 Frequency f s /2 Fig. 5 Structure of the FIR filter-bank (4) Simulated annealing The process of estimating SK as a function of the FIR filter is optimized by simulated annealing (SA) [9], which is a metaheuristic global optimization tool. The flowchart of implementing is illustrated in Fig. 6. In reach iteration, there is a chance that a worse case would be accepted and thus simulated annealing can avoid the searching being trapped in a local extremum. h rounds of SA will be operated. Each round gets the initial input from the result of the FIR filter-bank analysis. Initialize the temperature T Use the initial input vector W Compute function value SK(W) Generate a random step S Keep x unchanged, reduce T Compute function value SK(W+S) No No SK(W+S) > SK(W) Yes exp[(SK(W) < SK(W+S) )/T] > rand ? Yes Replace W with W+S, reduce T Termination criteria reached? Yes End a round of searching Fig. 6, Flow chart of simulated annealing (5) Envelope analysis When the optimized frequency band is found, envelope analysis is applied to the filtered signal. The enveloped signal is obtained from the magnitude of the analytic signal which is constructed via Hilbert transform: yˆ o (t ) y o ( )h(t )d h(t ) 1 t Analytic signal ya (t ) yo (t ) jyˆ o (t ) The envelope is the magnitude of the analytic signal a(t ) | ya (t ) | Amplitude Fig. 7 shows the effect of envelope analysis on a modulated signal Enveloped signal 0.5 Original signal 0 -0.5 0.032 0.033 0.034 0.035 0.036 0.037 Hilbert transform of the original signal 0.038 Time(s) Fig. 7, Effect of envelope analysis III. Implementation Hardware: personal computer. Software: Matlab 2012a Parallel computing: - Simulated annealing has independent loops. Parallel computing will be implemented on this module. - Parallel computing version programs will be developed with Matlab parallel computing tool box. Result in the final report will be generated by a personal computer with either of the following configurations. Table 1: Hardware Processor Memory AMD Athlon II X4 631 with 4 cores at 2.6GHz DDR3 PC3 1333MHz 8GB GPU OS NVIDIA GeForce GTX 260 with 192 CUDA cores 64-bit Windows 7 IV. Database Database of this project was published by the Bearing Data Center of Case Western Reserve University [10] It has four groups of data: one group of normal baseline data, and three groups of bearing fault data. Each group of data has vectors corresponding to different motor loads and bearing fault conditions. Two kinds of artificial noise will be added to the data: additive Gaussian white noise, and discrete frequency noise. V. Validation Validation includes module validation and the overall validation. To validate the program of SK, a periodic signal will be used as the input, and analytical solution will be derived as the reference. Then the numerical solution will be compared. To validate the FIR filter-band, a signal with pre-determined multiple frequency components will be used as the input. Numerical solution will be compared with the pre-determined frequency components. To validate SA program, a 3-parameter function with pre-determined maximum is constructed as the input. The numerical solution will be compared with the pre-determined maximum. To validate EA, a modulated signal with pre-determined modulating and carrier signals will be used as the input. Numerical solution will be compared with the pre-determined modulating frequency. Finally, the overall program is validated. Real bearing signals from the data base are used as the input. Numerical solutions will be compared with the fault feature frequencies provided by the database document. Validation SK Input A simplified signal Filter-bank SA A signal with multiple frequency components A 3-parameter function EA A modulated signal Overall Real bearing signals Table 2: Validation Control Result Analytic solution Pre-determined frequency components Pre-determined maximum Pre-determined modulating frequency Pre-determined fault feature frequency Test Result Numerical solution Numerical solution Numerical solution Numerical solution Numerical solutions VI. Schedule 2012 • October - Literature review; exact validation methods; code writing • November - Middle: code writing - End: Validation for envelope analysis and spectral kurtosis • December - Semester project report and presentation 2013 • February - Complete validation • March - Adapt the code for parallel computing • April - Validate the parallel version • May - Final report and presentation VII. Deliverables Matlab code, test result, final report, final presentation References [1] L. M. Popa, B.-B. Jensen, E. Ritchie, and I. Boldea, “Condition monitoring of wind generators,” in Proc. IAS Annu. Meeting, vol. 3, 2003, pp. 1839-1846. [2] Wind Stats Newsletter, 2003–2009, vol. 16, no. 1 to vol. 22, no. 4, Haymarket Business Media, London, UK [3] H. Link; W. LaCava, J. van Dam, B. McNiff, S. Sheng, R. Wallen, M. McDade, S. Lambert, S. Butterfield, and F. Oyague,“Gearbox Reliability Collaborative Project Report: Findings from Phase 1 and Phase 2 Testing", NREL Report No. TP-5000-51885, 2011 [4] C. Hatch, “Improved wind turbine condition monitoring using acceleration enveloping,” Orbit, pp. 58-61, 2004. [5] Plane crash information http://www.planecrashinfo.com/1987/1987-26.htm [6] P. D. Mcfadden, and J. D. Smith, “Model for the vibration produced by a single point defect in a rolling element bearing,” Journal of Sound and Vibration, vol. 96, pp. 69-82, 1984. [7] J. Antoni, “The spectral kurtosis: a useful tool for characterising non-stationary signals”, Mechanical Systems and Signal Processing, 20, pp.282-307, 2006 [8] P. O. Amblard, M. Gaeta, J. L. Lacoume, “Statistics for complex variables and signals - Part I: Variables”, Signal Processing 53, pp. 1-13, 1996 [9] S. Kirkpatrick, C. D. Gelatt, and M. P. Vecchi, "Optimization by Simulated Annealing". Science 220 (4598), pp. 671–680, 1983 [10] Case Western Reserve University Bearing Data Center http://csegroups.case.edu/bearingdatacenter/home