APP下载

基于小波分析的电机轴承诊断Matlab程序设计

2015-08-19上海久创建设管理有限公司上海

设备管理与维修 2015年7期
关键词:特征频率内圈小波

李 民(上海久创建设管理有限公司 上海)

基于小波分析的电机轴承诊断Matlab程序设计

李民
(上海久创建设管理有限公司上海)

采用Matlab编程快速地在计算机上实现基于小波分析的电机滚动轴承故障诊断。利用Daubechies小波对外圈或内圈故障轴承的振动信号进行小波分解。基于小波分解系数对含有故障特征频率的第一层细节信号进行小波重构并提取其Hilbert包络谱,从中检测出故障特征频率,据此判断故障类型。设计了该算法的Matlab程序。基于美国凯斯西储大学提供的电机轴承振动加速度信号采用上述算法进行实验的结果表明,该方法可准确地分辨出轴承故障的类型,非常适用于轴承的早期故障诊断。

轴承故障诊断小波分析Hilbert包络谱Matlab

滚动轴承是支承旋转轴的关键部件,容易发生损坏,是电动机中常见故障之一[1]。轴承故障诊断方法很多,其中振动分析法是一种较实用的方法,其优点在于振动发自轴承本身,无需另加信号源;测试方便;可发现轴承的早期故障。当轴承表面出现局部损伤时,在受载运转过程中轴承的其他零件会周期地撞击损伤点,产生的冲击力激励轴承座及其支撑结构,形成一系列由冲击激励产生的减幅振荡,减幅振荡发生的频率即故障特征频率[2],根据该频率可判断发生故障的部位。然而故障信号在轴和轴上多种零部件振动的干扰下往往被淹没,无法直接利用频谱分析检测其特征频率。小波变换是一种时频分析方法,可进行多分辨率分析,即,将信号分解成若干层次的细节信号及概貌信号。对轴承振动信号进行小波变换,提取其中具有故障特征的细节信号进行重构;对重构信号做Hilbert包络谱分析,从中检测出轴承的故障特征频率,据此判断故障类型。

利用Matlab软件编程快速地实现了基于小波分析的电机滚动轴承外圈和内圈故障诊断,并采用美国凯斯西储大学提供的电机轴承振动加速度信号进行实验,实验结果验证了该方法的有效性。

一、基于小波分析的电机轴承故障诊断

1.电机滚动轴承故障的特征频率

滚动轴承由外圈、内圈、滚动体和保持架组成,工作时外圈与轴承座或机壳相联接,固定或相对固定,内圈与机械传动轴相联接,随轴一起转动。当滚动轴承表面发生损伤故障,如内圈、滚动体或外圈出现点蚀、裂纹或剥落等,根据不同的损伤部位,按以下公式分别计算轴承故障的特征频率[3](以外圈和内圈剥落一点为例),见式(1)和式(2)。

2.基于小波分析的轴承故障诊断算法

一般采用加速度传感器在轴承座上检测滚动轴承的振动信号。若轴承表面出现局部损伤,在受载运转时轴承其他零件会周期地撞击损伤点产生低频的冲击信号,其频率即故障特征频率,但检测该频率主要会遇到2个问题:(a)冲击信号的宽频带性质会激起轴承结构及传感器本身在各自固有频率上发生谐振,故轴承振动信号中还含有故障特征频率的高次谐波分量。(b)由于轴向间隙的存在,冲击信号还要对轴承的高频固有振动信号进行调制[4]。导致故障信号被其他振动所干扰而无法直接通过频谱分析检测出故障特征频率。本文分别采用小波分析与Hilbert包络谱分析解决上述两个问题。

(1)小波分析提取含故障特征频率的细节信号。小波是一种均值为零,很快衰减的瞬时振荡函数,小波分析是一种时频分析方法,它利用一系列伸缩和平移的小波函数对信号进行展开,该过程等效于用一系列不同频带的高通和低通滤波器将信号分解成若干层次的高频细节信号及低频概貌信号(即信号的主体轮廓),可对信号进行多分辨率分解,被誉为“数学显微镜”。

小波分析算法的步骤包括分解与重构,为在计算机上实现小波分析,根据二进离散小波变换的快速算法Mallat算法进行计算[5],小波变换公式为式(3)。

式中cj,k——第j级小波分解所得低频系数,设c0,k为原信号x(k)

n——小波分解的级数

dj,k——第j级小波分解所得高频系数

h0(k)——离散尺度序列,是一低通滤波器

h1(k)——离散小波序列,是一高通滤波器

不同类型的小波,如Daubechies小波、Haar小波、墨西哥草帽小波等,滤波系数h0(k)与h1(k)均不相同。序列{dn,k,dn-1,k,…,d1,k,c1,k}是x(k)的二进离散小波变换。利用小波分解系数重构原信号的公式为式(4)。

根据公式(3)(4)对轴承振动信号进行小波分解与重构可获得其各层概貌信号Cj,k及细节信号Dj,k,其中幅度最大的细节信号中包含轴承故障的特征频率。

(2)Hilbert变换包络谱检测轴承的故障特征频率。含有轴承故障特征频率的细节信号是一种调幅信号,它是故障信号对轴承的高频固有振动进行幅度调制形成的,设其为式(5)。

式中A(t)——故障信号

fm——轴承固有振动频率

故f(t)的Hilbert变换可看成是f(t)通过一个幅度为1的全通滤波器输出,其正频率成分做-90°相移,负频率成分做+90°相移。则调幅信号f(t)的Hilbert变换为式(8)。

设f(t)的解析信号为:s(t)=f(t)+jfˆ(t),则有式(9)。

因此可利用Hilbert变换提取f(t)的包络,即故障信号A(t),再用傅里叶变换对其进行功率谱分析,功率谱中幅度最大处的频率即故障特征频率。

二、轴承故障诊断的Matlab程序设计

Matlab(Matrix Laboratory矩阵实验室)是一款由美国MathWorks公司出品的数学软件,包含许多专业领域的算法工具箱,编程十分方便。轴承故障诊断的实验数据来源于美国凯斯西储大学(Case Western Reserve University)的轴承试验台测试数据[6],试验轴承支承电机主轴,试验轴承为6205-2RS JEM SKF,在其内圈、外圈和滚动体上应用电火花技术分别加工了直径0.18778 mm,深0.2794 mm的凹坑,模拟单点损伤。在电机主轴驱动端轴承座上对应轴承的正下方(即轴承负荷区)设置加速度传感器测试轴承振动信号,采样频率fs=12 000 Hz,试验中电机负荷为0,转速n=1797 r/min,转动频率f=n/60=29.95 Hz,滚动体个数Z=9,接触角α=0°,滚动体直径d=0.3126 mm,轴承的节径E=1.537 mm,根据公式(1)和(2)计算得:外圈和内圈故障特征频率的理论值分别为f0=107.36 Hz,f1=162.19 Hz。设振动信号采样点数N= 12 000,由于使用快速傅里叶变换对信号做功率谱,其点数nfft应>N,且是2的指数次方,故取nfft=214=16 384;采用Daubechies小波“db2”对轴承振动信号进行3级小波分解与重构,滤波系数为h0(k)={-0.1294,0.2241,0.8365,0.4830},h1(k)={-0.4830,0.8365,-0.2241,-0.1294},对第1层细节信号d1进行Hilbert包络谱分析。轴承故障诊断matlab程序及注释(百分号后)如下:

clear%清除内存

load 156.mat%调入故障轴承振动信号的数据文件,存入sig

sig=X156_DE_time;

fs=12000;N=12000;Ts=1/fs;sig=sig(1:N);%设置取样频率fs,取样点数N

t=0:Ts:(N-1)*Ts;%时间轴t

sig=(sig-mean(sig))/std(sig,1);%对sig进行归一化

subplot(211);plot(t,sig);%绘制sig波形

xlabel('时间t/s');ylabel('振动加速度/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);d3=wrcoef('d',c,l,'db2',3);%重构第1-3层细节d1~d3和第3层概貌c3

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));xlabel('频率f/Hz');%绘出d1的Hilbert包络谱

P=P(1:nfft/2);[M,f1]=max(P);f1=f1*fs/nfft-1%故障频率f1为包络谱中幅度最大处的频率

三、实验结果分析

首先对轴承振动信号156.mat运行上述Matlab程序,结果如图1~图3所示。图1为该信号的归一化时域波形及功率谱,显然从功率谱中难以检测故障频率,图2为对振动信号做3级小波分解与重构所得第1~3层细节信号d1~d3和第3层概貌信号c3,对整体幅度较大的细节信号d1做Hlibert包络谱(见图3(a)),其幅度最大处的频率f1=107.3984 Hz,因此轴承故障类型为外圈故障;再用同样方法对振动信号105.mat进行处理,得d1的包络谱如图3(b)所示,f1=161.5977 Hz,该轴承故障类型为内圈故障。与理论值相比,利用db2小波检测外圈和内圈故障特征频率的绝对误差分别为:e0=0.0384 Hz和e1=0.5923 Hz,误差较小,不影响对故障类型的识别;Matlab编程语句短小精悍,可快速地在计算机上实现故障诊断算法。

图1 轴承振动信号的时域波形及功率谱

图2 轴承振动信号的db2小波分析图

图3 第1层细节信号d1的包络谱图

四、结论

基于Matlab软件编程,通过对电机滚动轴承的振动加速度信号进行小波分解与重构,提取其第1层细节信号做Hilbert包络谱分析,快速地实现了对轴承外圈和内圈(剥落1点)的故障特征频率检测,从而准确地判别出故障类型。由于在表面损伤故障的初期,轴承元件的损伤点往往只有1点,故小波分析是一种有效的电机轴承早期故障诊断方法。

1 褚福磊,彭志科,冯志鹏,李志农.机械故障诊断中的现代信号处理方法[M].北京:科学出版社.2009:159-160

2 葛哲学,陈仲生.MATLAB时频分析技术及其应用[M].北京:人民邮电出版社.2006:164

3 沈玉娣,刘雄.机械故障诊断FORTRAN源程序汇编[M].西安:西安交通大学出版社1990:170-171

4 刘圆,张永建,李元宝.改进小波能量分析法在轴承故障诊断中的应用[J].煤矿机械.2012,33(5):254-255

5 戴虹,钱晋武,张震,章亚男,沈林勇.GRNN在肌电预测踝关节运动中的应用[J].仪器仪表学报.2013,34(4):845-852

6 邱阿端.电机滚动轴承故障诊断的新方法.中小型电机[J].1996,23 (5):47-50

7 美国凯斯西储大学电机滚动轴承振动信号数据集[EB/OL].http:// csegroups.case.edu/bearing data center/pages/12k-drive-end-bearingfault-data

〔编辑利文〕

TH113.1

B

猜你喜欢

特征频率内圈小波
构造Daubechies小波的一些注记
特种复合轴承内圈推力滚道磨削用工装设计
瓷砖检测机器人的声音信号处理
基于MATLAB的小波降噪研究
主轴轴承内圈锁紧用台阶套的装配
光学波前参数的分析评价方法研究
基于振动信号特征频率的数控车床故障辨识方法
基于改进的G-SVS LMS 与冗余提升小波的滚动轴承故障诊断
基于小波去噪和EMD算法在齿轮故障检测中的应用
内圈带缺陷中介轴承的动力学建模与振动响应分析