lzc228 发表于 2010-4-28 17:03

经FFT变换后,想要某一指定频段的频谱图

一段振动信号,fs=200,N=24511,绘制时域图后,经过FFT变换后得其频谱图,如果我只想要其中25~27HZ频段的频谱图(其他频段均为0),同时反算出25~27HZ对应的时域图改怎么弄呢~
已写程序如下,望高手指点,
fs=200
N=24511
n=0:N-1
t=n/fs
load D4
s=D4
figure(2);
plot(t,s);
xlabel('t');
ylabel('y');
Y=fft(s)
Py=abs(Y)*2/N
f=(0:N/2-1)/N*fs
figure(3);
plot(f,Py(1:N/2))

ChaChing 发表于 2010-4-28 18:53

加个band pass filter试试

lzc228 发表于 2010-4-28 21:04

原帖由 ChaChing 于 2010-4-28 18:53 发表 http://www.chinavib.com/forum/images/common/back.gif
加个band pass filter试试
具体该怎么弄呢,请指点。我自己弄了个不知道对不对,请指点
Y=fft(s)
y2=zeros(1,N)
Py=abs(Y)
f=(0:N/2-1)/N*fs
for ds=0:N-1
    ifds/N*fs)<25
      ds/N*fs)>30
      y2(ds+1)=0
    else
      y2(ds+1)=Y(ds+1)
    end,
end
figure(2);
plot(f,Py(1:N/2))
figure(3);
plot(f,y2(1:N/2))
figure(4);
plot(t,real(ifft(y2)))

ChaChing 发表于 2010-4-28 22:13

help filter
help butter
...

handb 发表于 2010-4-28 23:23

用FIR滤波器,频段范围设为25~27Hz即可
页: [1]
查看完整版本: 经FFT变换后,想要某一指定频段的频谱图