|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
本帖最后由 Cappuccinochou 于 2015-12-25 09:47 编辑
- %1.西储大学滚动轴承数据的“外圈故障小波包络分析”
- %2.用wavedec进行一维小波分解,再由wrcoef重构细节信号,再由细节信号的包络谱得到故障频谱
- % 外环故障特征频率 3.5848*1797/60=107.36476HZ
- clear all
- close all
- load OR007@12_0_drive; %ball fault(drive)
- data=X156_DE_time;
- N=4096; %采样点数
- fs=12000; %采样频率
- t=1:N;
- t=t/fs;
- xdata=data(1:4096);
- xdata_outer=(xdata-mean(xdata)/std(xdata,1));
- s = xdata_outer;
- % % 时域波形
- figure(1)
- subplot(211)
- plot(t,s)
- title('采集数据波形')
- xlabel('时间 t/s');
- %%一维小波分解
- [c,l] = wavedec(s,4,'db1'); %db1小波进行4层分解
- subplot(212);
- plot(t,c);
- title('小波分解结构')
- xlabel('低频系数和第4、3、2、1层的高频系数');
- % 提取小波系数
- ca4=appcoef(c,l,'db1',4); %提取第4层低频系数
- [cd1,cd2,cd3,cd4] = detcoef(c,l,[1 2 3 4]); %提取第3、2、1的高频系数
- figure(2) %显示小波分解后的信号
- subplot(511); plot(ca4); ylabel('ca4');title('第4层的低频系数');
- subplot(512); plot(cd4); ylabel('cd4');title('第4层的高频系数');
- subplot(513); plot(cd3); ylabel('cd3');title('第3层的高频系数');
- subplot(514); plot(cd2); ylabel('cd2');title('第2层的高频系数');
- subplot(515); plot(cd1); ylabel('cd1');title('第1层的高频系数');
- %系数重构
- a4=wrcoef('a',c,l,'db1',4)
- d4=wrcoef('d',c,l,'db1',4);
- d3=wrcoef('d',c,l,'db1',3);
- d2=wrcoef('d',c,l,'db1',2);
- d1=wrcoef('d',c,l,'db1',1);
- figure(3) %显示细节信号
- subplot(5,1,1);plot(t,a4,'LineWidth',2);ylabel('a4');
- subplot(5,1,2);plot(t,d4,'LineWidth',2);ylabel('d4');
- subplot(5,1,3);plot(t,d3,'LineWidth',2);ylabel('d3');
- subplot(5,1,4);plot(t,d2,'LineWidth',2);ylabel('d2');
- subplot(5,1,5);plot(t,d1,'LineWidth',2);ylabel('d1');
- xlabel('时间 t/s');
- %信号的包络谱
- nfft = 2^nextpow2(N);
- %第4层低频信号a4包络
- y4=hilbert(a4);
- ydata4=abs(y4);
- y4=y4-mean(y4);
- y=fft(ydata4,nfft)/nfft;
- f=fs/2*linspace(0,1,nfft/2+1);
- figure(4)
- subplot(511)
- plot(f,2*abs(y(1:nfft/2+1))); axis([0,1000,0,0.015]);
- title('第4层低频系数a4的包络谱')
- %第4层高频信号d4包络
- y3=hilbert(d4);
- ydata3=abs(y3);
- y3=y3-mean(y3);
- y=fft(ydata3,nfft)/N;
- f=fs/2*linspace(0,1,nfft/2+1);
- subplot(512)
- plot(f,2*abs(y(1:nfft/2+1))); axis([0,1000,0,0.015]);
- title('第4层高频系数d4的包络谱')
- %第3层细节信号的包络谱
- y2=hilbert(d3); ydata2=abs(y2); y2=y2-mean(y2); y=fft(ydata2,nfft)/N; f=fs/2*linspace(0,1,nfft/2+1);
- subplot(513)
- plot(f,2*abs(y(1:nfft/2+1))); axis([0,1000,0,0.015]);
- title('第3层高频系数d3的包络谱')
- %第2层细节信号的包络谱
- y1=hilbert(d2); ydata1=abs(y1); y1=y1-mean(y1); y=fft(ydata1,nfft)/N; f=fs/2*linspace(0,1,nfft/2+1);
- subplot(514)
- plot(f,2*abs(y(1:nfft/2+1))); axis([0,1000,0,0.1]);
- title('第2层高频系数d2的包络谱')
- %第1层细节信号的包络谱
- y=hilbert(d1); ydata=abs(y); y=y-mean(y); y=fft(ydata,nfft)/N; f=fs/2*linspace(0,1,nfft/2+1);
- subplot(515)
- plot(f,2*abs(y(1:nfft/2+1))); axis([0,1000,0,0.1]);
- title('第1层高频系数d1的包络谱')
- xlabel('频率')
复制代码
说明:上述代码是利用西储大学的轴承振动检测数据,利用小波分解然后对低频信号、高频信号包络来检测外环故障。
问题:采样频率为12000,进行4层小波分解,那么重构后各低频、高频系数对应的频段应该为 a4 0-375 d4 375-750 d3 750-1500 d2 1500-3000 d1 3000-6000,仿真图显示d1的包络谱中出现了很明显的特征频率,a4的包络谱却看不到,结果如图:
[
重构系数的包络谱
初学小波,还请各位了解的帮忙解答,多谢各位。
所用数据:
OR007@12_0_drive.zip
(996.33 KB, 下载次数: 1)
|
|