声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1489|回复: 0

[小波] 小波分解后,故障特征没有出现在相应的低频段

[复制链接]
发表于 2015-12-25 09:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
本帖最后由 Cappuccinochou 于 2015-12-25 09:47 编辑

  1. %1.西储大学滚动轴承数据的“外圈故障小波包络分析”
  2. %2.用wavedec进行一维小波分解,再由wrcoef重构细节信号,再由细节信号的包络谱得到故障频谱
  3. % 外环故障特征频率  3.5848*1797/60=107.36476HZ
  4. clear all
  5. close all
  6. load OR007@12_0_drive;   %ball fault(drive)
  7. data=X156_DE_time;
  8. N=4096;                %采样点数
  9. fs=12000;              %采样频率
  10. t=1:N;
  11. t=t/fs;
  12. xdata=data(1:4096);
  13. xdata_outer=(xdata-mean(xdata)/std(xdata,1));
  14. s = xdata_outer;

  15. % % 时域波形
  16. figure(1)
  17. subplot(211)
  18. plot(t,s)
  19. title('采集数据波形')
  20. xlabel('时间 t/s');

  21. %%一维小波分解
  22. [c,l] = wavedec(s,4,'db1');    %db1小波进行4层分解
  23. subplot(212);
  24. plot(t,c);
  25. title('小波分解结构')
  26. xlabel('低频系数和第4、3、2、1层的高频系数');

  27. % 提取小波系数
  28. ca4=appcoef(c,l,'db1',4);    %提取第4层低频系数
  29. [cd1,cd2,cd3,cd4] = detcoef(c,l,[1 2 3 4]);  %提取第3、2、1的高频系数
  30. figure(2)      %显示小波分解后的信号
  31. subplot(511); plot(ca4); ylabel('ca4');title('第4层的低频系数');
  32. subplot(512); plot(cd4); ylabel('cd4');title('第4层的高频系数');
  33. subplot(513); plot(cd3); ylabel('cd3');title('第3层的高频系数');
  34. subplot(514); plot(cd2); ylabel('cd2');title('第2层的高频系数');
  35. subplot(515); plot(cd1); ylabel('cd1');title('第1层的高频系数');

  36. %系数重构
  37. a4=wrcoef('a',c,l,'db1',4)
  38. d4=wrcoef('d',c,l,'db1',4);
  39. d3=wrcoef('d',c,l,'db1',3);
  40. d2=wrcoef('d',c,l,'db1',2);
  41. d1=wrcoef('d',c,l,'db1',1);
  42. figure(3)     %显示细节信号
  43. subplot(5,1,1);plot(t,a4,'LineWidth',2);ylabel('a4');
  44. subplot(5,1,2);plot(t,d4,'LineWidth',2);ylabel('d4');
  45. subplot(5,1,3);plot(t,d3,'LineWidth',2);ylabel('d3');
  46. subplot(5,1,4);plot(t,d2,'LineWidth',2);ylabel('d2');
  47. subplot(5,1,5);plot(t,d1,'LineWidth',2);ylabel('d1');
  48. xlabel('时间 t/s');

  49. %信号的包络谱
  50. nfft = 2^nextpow2(N);

  51. %第4层低频信号a4包络
  52. y4=hilbert(a4);
  53. ydata4=abs(y4);
  54. y4=y4-mean(y4);
  55. y=fft(ydata4,nfft)/nfft;
  56. f=fs/2*linspace(0,1,nfft/2+1);
  57. figure(4)
  58. subplot(511)
  59. plot(f,2*abs(y(1:nfft/2+1)));  axis([0,1000,0,0.015]);
  60. title('第4层低频系数a4的包络谱')

  61. %第4层高频信号d4包络
  62. y3=hilbert(d4);
  63. ydata3=abs(y3);
  64. y3=y3-mean(y3);
  65. y=fft(ydata3,nfft)/N;
  66. f=fs/2*linspace(0,1,nfft/2+1);
  67. subplot(512)
  68. plot(f,2*abs(y(1:nfft/2+1)));  axis([0,1000,0,0.015]);
  69. title('第4层高频系数d4的包络谱')

  70. %第3层细节信号的包络谱
  71. y2=hilbert(d3);  ydata2=abs(y2);  y2=y2-mean(y2);  y=fft(ydata2,nfft)/N; f=fs/2*linspace(0,1,nfft/2+1);
  72. subplot(513)
  73. plot(f,2*abs(y(1:nfft/2+1)));  axis([0,1000,0,0.015]);
  74. title('第3层高频系数d3的包络谱')

  75. %第2层细节信号的包络谱
  76. y1=hilbert(d2);  ydata1=abs(y1);  y1=y1-mean(y1);  y=fft(ydata1,nfft)/N; f=fs/2*linspace(0,1,nfft/2+1);
  77. subplot(514)
  78. plot(f,2*abs(y(1:nfft/2+1)));  axis([0,1000,0,0.1]);
  79. title('第2层高频系数d2的包络谱')

  80. %第1层细节信号的包络谱
  81. y=hilbert(d1);  ydata=abs(y);  y=y-mean(y);  y=fft(ydata,nfft)/N;  f=fs/2*linspace(0,1,nfft/2+1);  
  82. subplot(515)
  83. plot(f,2*abs(y(1:nfft/2+1)));  axis([0,1000,0,0.1]);
  84. title('第1层高频系数d1的包络谱')
  85. 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)

回复
分享到:

使用道具 举报

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-29 19:42 , Processed in 0.057474 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表