t9t8321 发表于 2008-12-30 16:54

求助:IFM的频率问题

最近在看瞬时测频方面的,其中介绍了傅里叶测频,
是这么说的,


我就不明白了,功率谱上的峰值点,就一定是信号的频率吗?
功率谱的峰值点对应信号的频率,是什么原因呢?
刚才看到也有人问到功率谱测频的测频的问题,也不是太清楚
希望大侠来解答一下!:loveliness:

hahaer 发表于 2008-12-30 19:19

fs=1000
t=0:1/fs:0.6;
f1=100;
f2=300;
x=sin(2*pi*f1*t)+sin(2*pi*f2*t);
subplot(711)
plot(x);
title('f1(100Hz)\f2(300Hz)的正弦信号,初相0')
xlabel('序列(n)')
grid on

number=512

y=fft(x,number);
n=0:length(y)-1;
f=fs*n/length(y);
subplot(713)
plot(f,abs(y));
title('f1\f2的正弦信号的FFT(512点)')
xlabel('频率Hz')
grid on

x=x+randn(1,length(x));
subplot(715)
plot(x);
title('原f1\f2的正弦信号(含随机噪声)')
xlabel('序列(n)')
grid on

y=fft(x,number);
n=0:length(y)-1;
f=fs*n/length(y);
subplot(717)
plot(f,abs(y));
title('原f1\f2的正弦信号(含随机噪声)的FFT(512点)')
xlabel('频率Hz')
grid on

hahaer 发表于 2008-12-30 19:20

这个原理不难解释啊
我想楼主拷贝的文章写的没有错误

前进吧 发表于 2008-12-30 23:56

ls的强呐!!
哈,我是菜鸟,刚才看到了,运行一下,为啥还有700和900的峰值?
说明什么问题啊,菜鸟,才学,不懂的请见谅!

ChaChing 发表于 2008-12-31 08:40

f1=100; f2=300; fs=1000;
700=fs-f2
900=fs-f1
http://forum.vibunion.com/forum/viewthread.php?tid=20795&highlight=%B6%A8%C0%ED

[ 本帖最后由 ChaChing 于 2008-12-31 09:20 编辑 ]

t9t8321 发表于 2008-12-31 11:39

谢谢几位的解答
程序我跑了下,
ls,你的fs-f2和fs-f1也的确对
但是你引用的香农定理的网页说明什么?
香农定理是采样频率>最高频率2倍,就是fs>2f1和2f2,
1000hz满足了,还说明什么?
但是fs-f2和fs-f1在这里的,有什么物理意义吗?

hahaer 发表于 2008-12-31 13:53

Fs = 1000;                  % Sampling frequency
T = 1/Fs;                     % Sample time
L = 1000;                     % Length of signal
t = (0:L-1)*T;                % Time vector
% Sum of a 50 Hz sinusoid and a 120 Hz sinusoid
x = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);
y = x + 2*randn(size(t));   % Sinusoids plus noise
plot(Fs*t(1:50),y(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (milliseconds)')

NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(y,NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2);

% Plot single-sided amplitude spectrum.
plot(f,2*abs(Y(1:NFFT/2)))
title('Single-Sided Amplitude Spectrum of y(t)')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')

matlab里的帮助文件中的源程序
直接傅立叶变换得到的是双边谱
负频率只有数学计算意义
没有物理意义
你只取一半就可以了

gzslbs2003 发表于 2009-1-1 00:42

我的好好学习学习

t9t8321 发表于 2009-1-1 02:11

其实,我是想知道
像正弦信号,
FFT频谱最大值所对应的是他的频率的估计(可能因为fft的离散谱,有fs/2N的精度误差),
是为什么?怎么来用理论说明?
很多书上,论文上都是一笔带过,我是想知道原因,谢谢呐!
新年快乐,各位!

t9t8321 发表于 2009-1-1 02:22

回复 5楼 ChaChing 的帖子

哦,你那个700跟900hz,是大于采样频率fs的一半了,不能算,
是不是计算频率就是找出fft后的频谱图的fs/2范围内的最大值就可以了呐?
为什么频率处产生最大值?
因为是频谱图是把时间信号化成很多频率的合成,
当信号自身的频率与频谱图的频率相等时,产生谐振,因此产生峰值的呢?
谢谢大侠说明了
页: [1]
查看完整版本: 求助:IFM的频率问题