马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
我做的是转子故障信号特征分析方面的课题,对原始信号进行高频和低频系数分解后,对高频和低频系数进行FFT变换,但发现个别频谱线所对应频率过大,即产生虚假频率,这是怎么回事呢?
下面是程序:
load ('C:\Program Files\MATLAB71\work\wd5.mat');
f=1280;
s=data(1:1024);
figure(1);
plot(s);
xlabel('时间t/s');
ylabel('幅值Amm');
title('原始信号');
[c,l]=wavedec(s,5,'db3');
d5=wrcoef('d',c,l,'db3',5);
d4=wrcoef('d',c,l,'db3',4);
d3=wrcoef('d',c,l,'db3',3);
d2=wrcoef('d',c,l,'db3',2);
d1=wrcoef('d',c,l,'db3',1);
figure(2);
subplot(5,1,1);plot(d5);ylabel('d5');
title('高频系数d');
subplot(5,1,2);plot(d4);ylabel('d4');
subplot(5,1,3);plot(d3);ylabel('d3');
subplot(5,1,4);plot(d2);ylabel('d2');
subplot(5,1,5);plot(d1);ylabel('d1');
xlabel('时间t/s');
a5=wrcoef('a',c,l,'db3',5);
a4=wrcoef('a',c,l,'db3',4);
a3=wrcoef('a',c,l,'db3',3);
a2=wrcoef('a',c,l,'db3',2);
a1=wrcoef('a',c,l,'db3',1);
figure(3);
subplot(5,1,1);plot(a5);ylabel('a5');
title('低频系数a');
subplot(5,1,2);plot(a4);ylabel('a4');
subplot(5,1,3);plot(a3);ylabel('a3');
subplot(5,1,4);plot(a2);ylabel('a2');
subplot(5,1,5);plot(a1);ylabel('a1');
xlabel('时间t/s');
figure(4);
s=s-mean(s);
Y=fft(s,1024);
pyy=Y.*conj(Y)/1024;
plot((1:512)*f/1024,pyy(1:512));
xlabel('频率Hz');ylabel('幅值Amm');title('s的FFT频谱');
figure(5);
a4=a4-mean(a4);
Y=fft(a4,1024);
pyy=Y.*conj(Y)/1024;
subplot(3,1,1);plot((1:512)*f/1024,pyy(1:512));ylabel('幅值Amm');title('a4的FFT频谱');
Y=fft(d4,1024);
pyy=Y.*conj(Y)/1024;
subplot(3,1,2);plot((1:512)*f/1024,pyy(1:512));ylabel('幅值Amm');title('d4的FFT频谱');
Y=fft(d1,1024);
pyy=Y.*conj(Y)/1024;
subplot(3,1,3);plot((1:512)*f/1024,pyy(1:512));ylabel('幅值Amm');title('d1的FFT频谱');
xlabel('频率Hz');
下面是FFT变换后的频谱图:
[ 本帖最后由 lhy 于 2007-6-14 12:53 编辑 ] |