[问题] 请问FFT的Fs取样频率相关问题

楼主: SKTP (SKTP)   2016-03-08 12:57:55
请教各位,我要将一个5秒有1002个点的资料做fft,我看过help里面的fft范例。
因为本身不是通讯相关领域出来的,对于取样频率Fs以及Ts不太了解其含义,
先附上程式码:
A = load('FFT2.csv');
B = size(A);
L = B(1,1); % Length of signal
Tmax = A(L,1);
Fs = L/Tmax; % Sampling frequency
T = 1/Fs; % Sample time
t = (0:L-1)*T; % Time vector
y = A(:,2);
subplot(2,1,1);plot(t(1:L),y(1:L))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (seconds)')
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+1);
subplot(2,1,2);plot(f,2*abs(Y(1:NFFT/2+1)))
title('Single-Sided Amplitude Spectrum of y(t)')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
基本上就是照help里面把程式码复制下来,将Ts从1/Fs改成5/Fs,
可是我发现我只要去更改Fs,第二张图fft的结果在x轴频率的部分中会有所改变,
而我的曲线却不会有所变化,像是Fs为1000时,曲线在300Hz有一根,
但我将Fs改成100就会变成30Hz有一根,那我该如何知道我所用的Fs是正确的?
我仔细查了一下,将程式码改写,Fs应该是这样定义没错吧?
资料点数除以总时间?
作者: nc23nick (尼克林)   2016-03-09 11:59:00
取样频率Fs=1002/5才对

Links booklink

Contact Us: admin [ a t ] ucptt.com