机械故障大作业.docx
《机械故障大作业.docx》由会员分享,可在线阅读,更多相关《机械故障大作业.docx(13页珍藏版)》请在冰点文库上搜索。
机械故障大作业
机械故障诊断课程设计
设计题目:
基于小波分析的轴承故障诊断
学院:
机械工程系
专业:
机械制造设计及其自动化
班级:
学号:
姓名:
指导老师:
李奕璠
完成日期:
摘要
利用Daubechies小波对轴承的振动信号进行小波分解,采用Matlab编程快速地在计算机上实现基于小波分析的电机滚动轴承故障诊断,通过基于小波分解系数对含有故障特征频率的第一层细节信号进行小波重构并提取其Hilbert包络谱,从中检测出故障特征频率,据此判断故障类型。
关键词:
滚动轴承故障诊断小波分析Hilbert包络谱Matlab
第一章绪论
滚动轴承在机械设备中使用非常广泛,其工作状态直接影响整个设备的运行品质,对滚动轴承进行状态监测与故障诊断,能够避免重大事故的发生,获得较大的经济和社会效益。
随着生产的需要,对轴承故障的检测方法也越来越多,其中,运用比较广发的集中方法是FFT、功率谱、倒谱、小波分析、人工神经网络、希尔伯特-黄变换、双谱。
小波变换是一种时频分析方法,进行多分辨率分析,即,将信号分解成若干层次的细节信号及概貌信号。
对轴承振动信号进行小波变换,提取其中具有故障特征的细节信号进行重构;对重构信号做Hilbert包络谱分析,从中检测出轴承的故障特征频率,据此判断故障类型。
利用Matlab软件编程快速地实现了基于小波变换分析的滚动轴承故障判断。
第二章基于小波变换的滚动轴承故障诊断
2.1滚动轴承故障的特征频率
滚动轴承由外圈、内圈、滚动体和保持架组成,工作时外圈与轴承座或机壳相连接、固定或相对固定,内圈与机械传动轴相连接,随轴一起转动。
当滚动轴承表面发生损伤故障,如内圈、滚动体或外圈出现点蚀、裂纹或剥落等,根据不同的损伤部位,按以下公式分别计算轴承故障的特征频率,如下所示:
外圈故障频率:
内圈故障频率:
滚动体故障频率:
其中,r为转速,n为滚珠个数;d为滚动体直径,D为轴承节径,α为滚动体接触角。
2.2基于小波分析的轴承故障诊断算法
一般采用加速度传感器在轴承座上检测滚动轴承的振动信号。
若周成表面出现局部损伤,在受载运转时轴承其他零件会周期地撞击损伤点产生低频的冲击信号,其频率即故障频率,但检测该频率主要会遇到2个问题:
(a)冲击信号的宽频带性质会激起轴承结构及传感器本身在各自固有频率上发生谐振,故轴承振动信号中还含有故障特征频率的高次谐波分量。
(b)由于轴承间隙的存在,冲击信号还要对轴承的高频固有振动信号进行调制。
导致固有频率被其它振动所干扰而无法直接通过频谱分析检测出故障特征频率。
本文分别采用小波分析与Hilbert包络谱分析解决上述两个问题。
(1)小波分析提取含故障特征频率的细节信号。
小波是一种均值为零,很快衰减的瞬间振荡函数,小波分析是一种时频分析方法,他利用一系列伸缩和平移的小波函数对信号进行展开,该过程等效于用一系列不同频带的高通和低频滤波器将信号分解成若干层次的高频细节信号及低频概貌信号(即信号的主体轮廓),可对信号进行多分辨率分屏,被誉为“数学显微镜”。
小波分析算法的步骤包括分解与重构,为在计算机上实现小波分析,根据二进离散小波变换的快速算法Mallat算法进行计算,小波变换公式如下:
(3)
式中
不同类型的小波,如Daubechies小波、lisar小波、墨西哥草帽小波等,滤波系数
与
均不相同。
序列
是
的二进离散小波变换。
利用小波分解系数重构原信号的公式为:
(4)
根据公式(3)(4)对轴承振动信号进行小波分解与重构可获得其各层概貌信号
及细节信号
,其中幅度最大的细节信号中包含轴承故障的特征频率。
(2)Hilbert变换包络谱检测轴承的故障特征频率。
含有轴承故障特征频率的细节信号是种调幅信号,它是故障信号对轴承的高频固有振动进行幅度调制形成,设其为式(5)。
(5)
式中
Hilbert变换可对调幅信号进行包络解调,就是从
中提取
。
信号
的Hilbert变换
是
与
的卷积(符号为“*”),公式见式(6)。
(6)
对
做傅里叶变换得式(7)
(7)
故
的Hilbert变换可看成是
通过一个幅度为1的全通滤波器输出,其频率成分做
相移,负频率成分做
相移。
则调幅信号
的Hilbert变换为式(8)。
(8)
设
的解析信号为:
则有式(9)。
(9)
因此可利用Hilbert变换提取
的包络,即故障信号
,再用傅里叶变换对其进行功率分析,功率谱中幅度最大处的频率即故障特征频率。
第三章轴承故障诊断的Matlab程序分析
3.1确定轴承各项参数并计算各部件的故障特征频率
由轴承型号为SKF6205-2RSJEM,转速1750rpm可知:
滚珠个数n=9;滚动体直径d=7.938mm;
轴承节径D=39mm;滚动体接触角α=0;
;
由以上数据计算滚动轴承不同部件故障的特征频率为:
外圈故障频率:
内圈故障频率:
滚动体故障频率:
3.2故障诊断的结果分析和结论
3.2.1第一组数据分析
首先对轴承振动信号data.mat文件中数组y第一列运行Matlab程序,结果如下图所示:
图1振动加速度图和功率谱
图2小波分解与重构图
图3Hilbert包络谱
图1为该信号的功率谱,显然从功率谱中难以检测故障频率,图2为对振动信号做3级小波分解与重构所得第1-3层细节信号d1-d3和第三层概貌信号c3,对整体幅度较大的细节信号d1做Hilbert包络谱(见图3),其幅度最大处的频率f=27.83Hz为轴承内外圈相对旋转频率,第二大处频率为80.37Hz同滚动体故障特征频率相接近,因此轴承故障类型为滚动体故障;
3.2.2第二组数据分析
再用同样的方法对振动信号data.mat文件中数组y第二列进行处理,得Hilbert的包络谱如图6所示:
图4振动加速度图和功率谱
图5小波分解与重构图
图6Hilbert包络谱
图4为该信号的功率谱,图5为对振动信号做3级小波分解与重构所得第1-3层细节信号d1-d3和第三层概貌信号c3,对整体幅度较大的细节信号d1做Hilbert包络谱(见图6),没有和轴承故障特征频率相同的频率,其幅度最大处的频率f=1796Hz,第二大处频率为1036Hz,第三大频率为29.3Hz,同内外圈相对特征频率相接近,因此该列轴承数据正常。
3.2.3第三组数据分析
对振动信号data.mat文件中数组y第三列进行处理,得Hilbert的包络谱如图9所示:
图7振动加速度图和功率谱
图8小波分解与重构图
图9Hilbert包络谱
图7为该信号的功率谱,图8为对振动信号做3级小波分解与重构所得第1-3层细节信号d1-d3和第三层概貌信号c3,对整体幅度较大的细节信号d1做Hilbert包络谱(见图9),其幅度最大处的频率f=104.7Hz,同轴承外圈理论故障特征频率相接近,因此该列轴承数据表示外圈故障。
3.2.4第四组数据分析
对振动信号data.mat文件中数组y第四列进行处理,得Hilbert的包络谱如图12所示:
图10振动加速度图和功率谱
图11小波分解与重构图
图12Hilbert包络谱
图10为该信号的功率谱,图11为对振动信号做3级小波分解与重构所得第1-3层细节信号d1-d3和第三层概貌信号c3,对整体幅度较大的细节信号d1做Hilbert包络谱(见图12),其幅度最大处的频率f=157.5Hz,同内圈理论故障特征频率相接近,说明此轴承的故障发生在轴承的内圈。
参考文献
[1]褚福磊,彭志科,冯志鹏,李志农.机械故障诊断中的现代信号处理方法[M].北京:
科学出版社.2009:
159-160
[2]葛哲学,陈仲生.MATLAB时频分析技术及其应用[M].北京:
人民邮电出版社.2006:
164
[3]杨国安.机械设备故障诊断实用技术[M].北京:
中国石化出版社.2007
附录
Matlab程序:
以第一列数据为例
clear%清除内存
loaddata.mat%调入故障轴承振动信号的数据文件,存入sig
sig=y;
fs=12000;%设置取样频率fs,取样点数N
N=65536;
Ts=1/fs;
sig=sig(1:
N,1);
t=0:
Ts:
(N-1)*Ts;%时间轴
sig=(sig-mean(sig))/std(sig,1);%对sig归一化
subplot(211);%绘制sig波形
plot(t,sig);
xlabel('时间t/s');
ylabel('振动加速度A/v');
nfft=16384;
S=psd(sig,nfft);%对sig做功率谱
subplot(212);%绘制功率谱
plot((0:
nfft/2-1)/nfft*fs,S(1:
nfft/2));
xlabel('频率f/Hz');
ylabel('功率谱P/W');
[c,l]=wavedec(sig,4,'db2');%利用db2对sig进行3级小波分解
c3=wrcoef('a',c,l,'db2',3);%重构第1-3层细节d1-d3和第3层盖帽c3
d3=wrcoef('d',c,l,'db2',3);
d2=wrcoef('d',c,l,'db2',2);
d1=wrcoef('d',c,l,'db2',1);
figure;
subplot(414);plot(t,c3);ylabel('c3');%绘制c3
subplot(413);plot(t,d3);ylabel('d3');%绘制d3
subplot(412);plot(t,d2);ylabel('d2');%绘制d2
subplot(411);plot(t,d1);ylabel('d1');%绘制d1
y=hilbert(d1);%对d1进行Hilbert变换,得y
ydata=abs(y);%ydata=|y|
ydata=ydata-mean(ydata);对ydata去均值(目的是去除幅度较大的直流分量)
P=psd(ydata,nfft);%ydata的功率谱为P
figure;
plot((0:
nfft/2-1)/nfft*fs,P(1:
nfft/2));%绘出d1的Hilbert包络谱
xlabel('频率f/Hz');
P=P(1:
nfft/2);%故障频率f1为包络谱中幅度最大处的频率
[M,f1]=max(P);
f1=f1*fs/nfft-1;