You are on page 1of 21

1 MECH9223 | Z5080222

Executive summary

Diagnosing the fault, before failure of the component has become one of the key interest
in mechanical field and this project mainly deals with that. This report will shed lights on
the diagnosis of fault in bearing using Vibration method -instruments used to record data,
procedure for acquisition, processing the signal and diagnosing the fault. The experimental
setup consists of hydraulic pump which is driven by electric motor. Power from the motor
is transmitted through shafts and planetary gears which is supported by rolling element
bearings. So, to monitor the condition of the bearing an accelerometer, tachometer,
frequency analyser and a computer for processing the data is needed. First the setup is
switched on made to run until it attained a stable RPM. Then readings from the
accelerometer (vibration level around the bearing), tachometer (RPM) is recorded via 4-
channel frequency analyser and exported to MATLAB data using computer. Then the good
bearing in the setup is changed to fault bearing for diagnosis. Same procedure is followed
to acquire the data. These two data are processed and compared in MATLAB for various
parameters.
Processing of data include the following steps. First calculation of fault frequency (BPFI,
BPFO, BSF, FTF) of the roller element bearing using known kinematic equations and getting
the RPM of the shaft using the tachometer signal (speed of the shaft is 6.1045Hz). Then
comparing the PSD of the good and faulty bearing to the frequency bandwidth that is to be
demodulated for analysis. Later performing amplitude demodulation and forming a squared
envelope spectrum. Finally plotting at least three harmonics of the bearing fault frequencies
on the envelope to find if any peak in vibration matches the fault frequency. By following
the procedure, it is found that there is fault in outer race of the bearing. This is because all
the three harmonics of BPFO match the peaks in the envelope spectrum also it had sidebands
that is spaced at frequency of the cage (2.43Hz). So, it is recommended to replace the outer
race of the bearing at the earliest before catastrophic failure on the bearing or gear or
shaft.
2 MECH9223 | Z5080222

Introduction

Fault diagnosis, which includes fault detection and isolation (FDI), fault tolerant control
and fault classification, plays a major role in automation systems and mechanical equipment
(Liu et al., 2014). This particular area, fault recognition in rolling element bearings has
attracted more attention among researchers. This is because it is one of the critical
mechanical components, that is widely used in applications like rotating machinery (pumps,
compressors, motors and wind power generators, etc.). And, its defects or malfunction may
even lead to catastrophic failure of the rotating machinery if not diagnosed in time. Present
studies have shown that bearing faults account for 30% of all machinery failures (Ai and
Cheng, 2012). Therefore, effective fault monitoring is necessary for avoiding unscheduled
downtime and reducing maintenance costs. This data driven method of detecting the failure
is becoming common in industrial processes among fault diagnosis of rolling element
bearing. It gained popularity because this model is easy in comparison with model driven
method where there is a need for understanding the complex internal interactions between
the components in the system (Li et al., 2012). Constructing an accurate analytic dynamic
model for rolling element bearing to depict the characteristic is hard, because there are so
many sub-parts which include inner race, outer race, elements, etc. (Liu et al., 2014).

Figure 1: Components of roller ball bearing (Lecture notes Week 6)


Therefore, data driven models based on historic data is preferred in real industrial
applications and its robustness mainly depends on effective signal acquisition, pre-
processing, feature extraction and statistical modelling strategies. Same technique is
followed in this experiment in which signals from tachometer and accelerometer is taken
from the experimental setup with good bearing that are then compared with the set of
3 MECH9223 | Z5080222

signals that are extracted with bad bearing. This experiment depicts the real procedure
which is followed in industry for diagnosis of faults.

Experimental setup

Figure 2, shows the over view of the experimental setup excluding the motor and pump
that is found in UNSW laboratory (Gear test rig). This test rig consists of an electric motor,
pump, gear box and two flywheels. 5.5kW 3-Phase electric motor produces power that is
transmitted to the pump through a gear box that consist of planetary gears.

Figure 2: Experimental setup (Smith et al., 2013)

Shafts in the gear box are supported by rolling element bearing on either side. Both the
torque and the loading in the setup can be varied its corresponding arrangements. Figure 3,
shows the schematic diagram of the entire setup and symbols referring to different
components.
4 MECH9223 | Z5080222

Figure 3: Schematic view of experimental setup (Lecture notes Week 11a)

Apart from the mechanical components there were sensors attached to the setup to
record the vibration levels that was used in diagnosis. A tachometer was attached to the
end of the shaft that takes the reading on speed of the shaft and vibration signals were
collected using a Bruel & Kjr accelerometer positioned on the top of the gearbox casing
above the defective bearing. The signals from the sensors where recorded by 4 channel
Bruel & Kjr PULSE frequency analyser that is connected to the computer.

Initially the readings of the vibration level were recorded once the motor reached the
constant speed and loading provided by pump for the particular period of time. Then the
faulty bearing was introduced to the setup. Same procedure is followed and the readings
were recorded. The sampling frequency of the signals is 48 kHz, and the record length is
100,000 samples for each record. The recorded readings in the computer is exported to a
MATLAB data file for pre-processing and diagnosis of fault.

Data processing

Preliminary calculations

In-order to find the fault frequency of the roller ball bearing certain basic parameters
of the bearing are needed which are mentioned below.
Ball diameter d=7.12mm
Pitch diameter D=38.5mm
No. of rolling elements n=12
Contact angle f= 00
5 MECH9223 | Z5080222

When these parameters plugged into the below well-known kinematic equations the fault
frequency were found.
(
= 1
2
(
= 1 +
2
(
= 1
2
6
(
= 1
2
where n= number of rolling elements
fr= shaft rotational speed
d= rolling element diameter
D= pitch diameter
It is found,
BPFO= 29.412 Hz
BPFI= 42.7607 Hz
FTF= 2.4511 Hz
BSF= 15.7049 Hz

Speed of the shaft in the test rig is got by analysing the tachometer signal. Data from the
signal was stored in the second column of the data file. When those data are plotted it will
look like Figure 4. Tachometer generally produces signal every time the shaft takes one
revolution. After plotting it was found that there was small variation in time period between
the signals. In-order to nullify the variation mean time between the pulse were taken and
the reciprocal of it gave the frequency of rotating shaft.
6 MECH9223 | Z5080222

Figure 4: Tachometer signal

Signal from the good bearing were plotted and after following the above-mentioned
procedure the speed of the shaft was found to be 6.0145 Hz.

Comparison of PSD and selection of demodulation band

To select bandwidth for demodulation, power spectral density of good bearing and bad
bearing should be compared. This comparison con be done by using a command PWELCH in
MATLAB. This comparison is basically done by keeping the good signal as reference and
selecting the bandwidth which are deviating.

PSD of both signals are done in a particular way with 1024-point transform, with
hamming window length that overlaps 50%. Also, the comparison was made in logarithmic
amplitude (dB Scale) with zero dB reference. Figure 5, shows the comparison of power
spectral density between good and bad signal from the bearing. It is clearly seen that after
a certain frequency there is huge difference in amplitude between the signals.
7 MECH9223 | Z5080222

Figure 5: PSD of good and bad signal


So, from Figure 5, bandwidth suitable for demodulation is selected. This is basically
done by subtracting the amplitude of bad signal with the good signal (which is the
reference).

Figure 6: Selection of bandwidth for demodulation


8 MECH9223 | Z5080222

Figure 6, shows the difference between the signals. It is seen that from 8620Hz frequency
the difference keeps on increasing steeply which will turn out to be the starting point for
the bandwidth that is to be demodulated.

It is also known the experimental setup also had anti-aliasing filter. Generally, when
anti-aliasing filter is used then the useful frequency range will fall within, f=0.4fs. Since the
sampling frequency is 48kHz, then the useful frequency range will be 19kHz. So, the
bandwidth that is selected for demodulation will be 8620 Hz to 19200 Hz. Figure 7, shows
the PSD plot of both bad and good signal of selected bandwidth.

Figure 7: PSD for selected bandwidth

Amplitude modulation and formation of envelope spectrum

Initially FFT for the whole time-period is performed for good and bad signal to form a
complex spectrum which is then limited to the selected bandwidth like it was done in PSD.
Now this bandwidth is shifted to new zero frequency point where it will be padded with
trailing zeroes that is twice the length of the original signal to increase the resolution that
help in visualizing the fault frequency easily.
9 MECH9223 | Z5080222

This Signal is then inversed transformed using the command IFFT in MATLAB which results
in complex time signal for which amplitude is the envelope. This is then squared to remove
the imaginary part in the envelope. FFT is again performed in the squared envelope signal
and is plotted in a liner plot between frequency and amplitude. This plot can be limited to
useful frequency range i.e. >3.5 times of the highest expected fault frequency.

Figure 8: Demodulated squared envelope

Figure 8, shows the demodulated squared envelope within the useful frequency range
of 3.5 times the highest fault frequency in this case BPFI (42.7607 Hz). It is clear from the
Figure 8, that bad signal has lot of peaks and side bands that are altered by the speed of
the shaft. It is also seen that the peaks are evenly spaced between them which proves that
they are harmonics of the fault frequency.
10 MECH9223 | Z5080222

Analysis of envelope spectrum

Now that envelope spectrum is got, plotting of the fault frequency on to the spectrum
will display the fault in the bearing. To do that 3 harmonics of all fault frequencies (BPFI,
BPFO, BSF, FTF) are calculated and plotted on the envelope. Also, another important step
is the selection of useful frequency band is necessary to visualize the fault clearly.

Figure 9: 3.5 times the fault frequency

Figure 9, Figure 10 & Figure 11 shows the envelope of three different frequency bands
and 3 harmonics of all fault frequency. It is seen that all the fault frequencies are seen in
all 3 bandwidths, but Figure 10 & Figure 11 shows lot of peaks and it is very much cluttered
because of amplitude modulation. So, it is better to choose bandwidth with 3.5 times the
fault frequency.
11 MECH9223 | Z5080222

Figure 10: 5 times the fault frequency

Figure 11: 7 times the fault frequency


12 MECH9223 | Z5080222

Diagnosis

Figure 12, Figure 13, Figure 14 & Figure 15 depicts the different fault frequencies in
the envelope spectrum.

Figure 12: Inner race fault frequency


From Figure 12, BPFI cannot be termed as fault in the bearing because only one
harmonics coincides with the peak which might be a coincidence.

Figure 13: Outer race fault frequency


13 MECH9223 | Z5080222

From Figure 13, it is clear that there is a fault in outer race of the bearing because all
the three harmonics of this frequency coincides with the peak in vibration level with its
side bands spaced at almost the frequency of the shaft or cage speed.

Figure 14: Rolling element fault frequency


Figure 14, depicts that there is no fault in rolling element as the frequency doesnt
match any peak vibration.

Figure 15: Cage fault frequency


14 MECH9223 | Z5080222

Figure 15, shows that there is a fault in cage that matches the peaks that is adjacent to
peak created by outer race fault. But this is not conclusive because these might be caused
due to sidebands of the fault frequency also. Side band cursors should be used for more
analysis.

Figure 16: Side bands of modulated signal

Figure 16, shows the sidebands that formed due to demodulation and are spaced by
2.43Hz which is equal to the cage frequency. So, it is conclusive that there is not fault on
the cage but the peak is formed due to sidebands for outer race fault. Since the second
harmonics of the BPFO is used, carrier frequency is 59.03Hz which is double of the BPFO
fault.

Conclusion

After processing the acquired signals from the experiment, it is diagnosed that there is
fault on Outer race of the roller bearing. This is concluded because the fault frequency that
was calculated by kinematic equations match the vibration peak level at that particular
frequency.
Suggestion would be to change the particular component (outer race) at the earliest
because this unusual displacement would wear other components like ball bearing and
eventually inner race. This will lead to failure of the whole bearing and if not replaced in
right time would even damage the gears and the shaft that transmit power. Replacing outer
15 MECH9223 | Z5080222

race of the bearing would be cheaper than replacing the damaged shaft or gear if not acted
upon the diagnosis of the fault.

References

1. Lecture notes Machine conditioning and monitoring- Week 6 (pg 7) & 11a (pg 11),
Phil Howlin, UNSW.
2. AI, L. & CHENG, J.-T. 2012. Fault diagnosis of rolling bearing based on multi sensor
information fusion.
3. LI, R., HE, D. & ZHU, J. Investigation on full ceramic bearing fault diagnostics using
vibration and AE sensors. Prognostics and Health Management (PHM), 2012 IEEE
Conference on, 2012. IEEE, 1-12.
4. LIU, C., WANG, G., XIE, Q. & ZHANG, Y. 2014. Vibration sensor-based bearing fault
diagnosis using ellipsoid-ARTMAP and differential evolution algorithms. Sensors, 14,
10598-10618.
5. SMITH, W., DESHPANDE, L., RANDALL, R. & LI, H. 2013. Gear diagnostics in a
planetary gearbox: a study using internal and external vibration signals.
International Journal of Condition Monitoring, 3, 36-41.

Appendix

clear all;
load('/Users/mohammedmeeran/Downloads/Assignment 2 data/bf.mat');
load('/Users/mohammedmeeran/Downloads/Assignment 2 data/bg.mat');
fr=bg(:,2);
fs=48000;
[pks, locs]=findpeaks(fr, fs,'MinPeakHeight',1);
for i=1:length(locs)-1
diff(i)=locs(i+1)-locs(i);
end
avgt=mean(diff);
sh_sp=1/avgt;

d=7.12;
D=38.5;
16 MECH9223 | Z5080222

n=12;
phase_angle=0;

BPFO=(n*sh_sp/2)*(1-(d/D));
BPFI=(n*sh_sp/2)*(1+(d/D));
FTF=(sh_sp/2)*(1-(d/D));
BSF=(sh_sp*D/(2*d))*(1-(d/D)^2);

good_signal=bg(:,1);
fault_signal=bf(:,1);
[PSD_good, f1]=pwelch(good_signal,2^10,2^9,2^10,fs);
[PSD_fault, f2]=pwelch(fault_signal,2^10,2^9,2^10,fs);
plot(f1,10*log10(PSD_good/(10^-12)));
hold on;
plot(f2,10*log10(PSD_fault/(10^-12)));
legend('Good','Fault');
grid on;
grid minor;
title('Power spectral density of Good and Fault signal')
xlabel('Frequency (Hz)');
ylabel('Amplitude (dB)');

z=(10*log10(PSD_fault/(10^-12)))-(10*log10(PSD_good/(10^-12)));
figure(2);
plot(f1,z);
grid on;
grid minor;
ylim([0 25]);
title('Difference between Good and Bad signal (PSD)')
xlabel('Frequency (Hz)');
ylabel('Amplitude (dB)');

[x,~]=ginput(1);
x(2)=9.62*10^3;
plot(f1,10*log10(PSD_good/(10^-12)));
hold on;
plot(f2,10*log10(PSD_fault/(10^-12)));
legend('Good','Fault');
17 MECH9223 | Z5080222

grid on;
grid minor;
xlim([x(1) x(2)]);
title('Power spectral density of selected bandwidth')
xlabel('Frequency (Hz)');
ylabel('Amplitude (dB)');

fgood=(fft(good_signal));
ffault=(fft(fault_signal));
L=length(bf(:,1));
f=fs*(0:L)/L;
for i=1:length(f)
if f(i)>x(1) && f(i)<x(2)
fgood_band(i,:)=fgood(i);
ffault_band(i,:)=ffault(i);
else
fgood_band(i,:)=0;
ffault_band(i,:)=0;
end
end

k=1;
m=1;
for i=1:length(fgood_band)
if fgood_band(i,:)~=0
fgood_shift(k,:)=fgood_band(1,:);
k=k+1;
end
if ffault_band(i)~=0
ffault_shift(m,:)=ffault_band(i,:);
m=m+1;
end
end
ffault_shift=2.*ffault_shift;
fgood_shift=2.*fgood_shift;

padlen1=(100001-length(ffault_shift));
padlen2=(100001-length(fgood_shift));
18 MECH9223 | Z5080222

fgood_shift(end+1:end+padlen2)=0;
ffault_shift(end+1:end+padlen1)=0;

ifgood=abs(ifft(fgood_shift));
iffault=abs(ifft(ffault_shift));

sq_en_good=ifgood.^2;
sq_en_fault=iffault.^2;

ft_sq_en_good=abs(fft(sq_en_good));
ft_sq_en_fault=abs(fft(sq_en_fault));
figure;
plot(f,ft_sq_en_good);
hold on;
plot(f,ft_sq_en_fault);
hold on;
xlim([0 150]);
ylim([0 700]);

y=linspace(0,3500,10000);
for i=1:3
x=ones(10000,1)*BPFI*i;
plot(x,y,'r');
end

legend('Good','Fault','BPFI')
xlabel('Frequency (Hz)');
ylabel('Amplitude (dB)');
title('BPFI')
grid on;
grid minor;
hold off;

ft_sq_en_good=abs(fft(sq_en_good));
ft_sq_en_fault=abs(fft(sq_en_fault));
figure;
plot(f,ft_sq_en_good);
hold on;
19 MECH9223 | Z5080222

plot(f,ft_sq_en_fault);
hold on;
xlim([0 150]);
ylim([0 700]);

y=linspace(0,3500,10000);
for i=1:3
x=ones(10000,1)*BPFO*i;
plot(x,y,'g');
end

legend('Good','Fault','BPFO')
xlabel('Frequency (Hz)');
ylabel('Amplitude (dB)');
title('BPFO')
grid on;
grid minor;
hold off;

ft_sq_en_good=abs(fft(sq_en_good));
ft_sq_en_fault=abs(fft(sq_en_fault));
figure;
plot(f,ft_sq_en_good);
hold on;
plot(f,ft_sq_en_fault);
hold on;
xlim([0 150]);
ylim([0 700]);

y=linspace(0,3500,10000);
for i=1:3
x=ones(10000,1)*BSF*i;
plot(x,y,'b');

end

legend('Good','Fault','BSF')
20 MECH9223 | Z5080222

xlabel('Frequency (Hz)');
ylabel('Amplitude (dB)');
title('BSF')
grid on;
grid minor;
hold off;

ft_sq_en_good=abs(fft(sq_en_good));
ft_sq_en_fault=abs(fft(sq_en_fault));
figure;
plot(f,ft_sq_en_good);
hold on;
plot(f,ft_sq_en_fault);
hold on;
xlim([0 150]);
ylim([0 700]);

for i=1:3
if i~=2
x=(2*BPFO-2*FTF)+ones(10000,1)*FTF*i;
end
plot(x,y,'m');
end

legend('Good','Fault','FTF');
xlabel('Frequency (Hz)');
ylabel('Amplitude (dB)');
title('FTF')
grid on;
grid minor;
hold off;

You might also like