marry0539 发表于 2011-4-15 09:41

关于轴承故障数据的hilbert-huang变换

各位大侠您好,我最近在学习EMD有关的信号处理,在网上下载了轴承的故障数据,作出的边际谱不对,不知道是怎么回事?数据应该没有问题,hht程序我用自己仿真的正余弦信号验证,作出的hilbert边际谱是完全正确的,可以排除程序的问题。下面是程序和图形,请赐教!
load 279X279_FE_time ((10000:121351),:)=[];data=X279_FE_time ;plot(linspace(0,0.01,length(data)),data)imf=emd(data);cemd_visu(data,1:length(data),imf)=hhspectrum(imf);
=toimage(A,f); disp_hhs(E);for k=1:size(E,1)bjp(k)=sum(E(k,:))*1/fs;endfigure(3);plot(Cenf(1,:)*fs,bjp);xlabel('频率 / Hz');ylabel('幅值');时域图如下:

边际谱如下:







marry0539 发表于 2011-4-15 09:46


      时域图

marry0539 发表于 2011-4-15 09:49

并且做出的hilbert谱是离散分布的点

chenlu1986 发表于 2011-4-15 10:41

回复 3 # marry0539 的帖子

你把你的279.mat数据上传一下大家可以帮测试

marry0539 发表于 2011-4-15 16:26

还是我的程序有问题啊?请高手赐教!

chenlu1986 发表于 2011-4-16 11:21

回复 1 # marry0539 的帖子

你的EMD和求边际谱的程序没有错误。
但是我没理解你的想法。。。
你是要检测故障(比如轴承内圈、外圈)的吧?但是你的程序并不是检测故障的呀,
建议你看一下于德介的书,机械故障诊断的Hilbert-Huang变换方法,里面有基于HHT故障检测的方法。

marry0539 发表于 2011-4-16 15:52

回复 6 # chenlu1986 的帖子

我目的是检测轴承的故障,直接调用EMD有关的函数不就可以吗?做边际谱,看特征故障频率及其倍频不就可以吗?主任您能给我一段调用EDM函数之前的 程序段吗 我受点启发!谢谢

marry0539 发表于 2011-4-16 19:19

回复 6 # chenlu1986 的帖子

load 279
fs=5000;
t=(0:1/fs:2);
N=length(t);
x=X279_FE_time ;
data=x(1:N,1);
imf=emd(data);
cemd_visu(data,1:length(data),imf)
=hhspectrum(imf);=toimage(A,f); disp_hhs(E);
for k=1:size(E,1)
bjp(k)=sum(E(k,:))*1/fs;
end
figure(3);
plot(Cenf(1,:)*fs,bjp);xlabel('频率 / Hz');
ylabel('幅值');
这是我的程序,您看看哪里不对?
原数据如下:

chenlu1986 发表于 2011-4-17 16:10

本帖最后由 chenlu1986 于 2011-4-17 16:11 编辑

回复 7 # marry0539 的帖子

我曾经做过一次内圈故障检测,是EMD+Hilbert的包络分析方法。大概步骤是对含有高频共振成分的前几个IMF进行Hilbert变换,求出幅值(Hilbert法解调出包络:解析信号的幅值即使信号的包络)。最后进行FFT得到包络信号频谱。一般分解出的第一个IMF分量包含高频共振成分较多,可以从IMF1的包络谱中可以找到相应的故障频率。。。
您用的边际谱检测故障特征频率的方法我没用过~上面方法仅供参考~

参考书是:于德介的,机械故障诊断的Hilbert-Huang变换方法

xjd 发表于 2011-5-1 21:26

现在也在做这个,很好的参考。

lragy 发表于 2011-5-2 10:49

现在也在做这个,可以参考。

小刺猬和小老鼠 发表于 2011-5-4 21:58

回复 9 # chenlu1986 的帖子

您好麻烦问哈关于故障特征频率的计算,在论坛里看了很多帖子,有点迷糊了。例如外圈故障吧,有的写的是按照西面方式计算的
r:轴承转速,单位:转/分钟;n:滚珠个数;d:滚动体直径;D:轴承节径;α:滚动体接触角(contact angle)f:转子转速
外圈故障频率=r/60 * 1/2 * n(1-d/D *cosα)
有的是外圈故障频率= 1/2 * n(1-d/D *cosα)*f
具体这两个到底哪个是对的呢?
新手,麻烦指点哈。谢谢


chenlu1986 发表于 2011-5-14 19:27

回复 12 # 小刺猬和小老鼠 的帖子

呵呵 这个我是外行,你可以去故障版块瞧瞧,那里这方面的专家多~

小刺猬和小老鼠 发表于 2011-5-15 20:50

回复 13 # chenlu1986 的帖子

呵呵,我是外行,刚接触这个,最近看些帖子还有文章给看晕了。谢谢哈

uncttm 发表于 2011-5-25 08:53

外圈故障频率=r/60 * 1/2 * n(1-d/D *cosα)
有的是外圈故障频率= 1/2 * n(1-d/D *cosα)*f
这两个公式是一样的!
r/60 得到的就是频率f
每分钟转数r除以60秒就是频率f。
页: [1] 2
查看完整版本: 关于轴承故障数据的hilbert-huang变换