Matlab fft的不同绘图形状取决于时间采样间隔

Matlab fft的不同绘图形状取决于时间采样间隔,matlab,fft,Matlab,Fft,我有以下问题。我试图用fft分析我的滤波器的输入和输出信号。但是,我不确定我的fft是否正确。我的输入信号是锯齿波和正弦波的乘积,两者的频率分别为6kHz和32kHz。两个单独的信号在相乘之前的振幅均为1。 根据我的时间值,我得到的fft图的结果不同。如果我使用采样频率周期间隔的时间值,我会得到一个具有清晰峰值的“漂亮”图形,正如您在傅里叶变换中所期望的那样(见图1)。然而,如果我使用被采样信号的周期间隔的时间值,则图形具有更多的频率分量(参见图2)。我真的不知道哪个图形正确地显示了我的FFT。

我有以下问题。我试图用fft分析我的滤波器的输入和输出信号。但是,我不确定我的fft是否正确。我的输入信号是锯齿波和正弦波的乘积,两者的频率分别为6kHz和32kHz。两个单独的信号在相乘之前的振幅均为1。 根据我的时间值,我得到的fft图的结果不同。如果我使用采样频率周期间隔的时间值,我会得到一个具有清晰峰值的“漂亮”图形,正如您在傅里叶变换中所期望的那样(见图1)。然而,如果我使用被采样信号的周期间隔的时间值,则图形具有更多的频率分量(参见图2)。我真的不知道哪个图形正确地显示了我的FFT。我也有一个问题,我使用了一个在线教程来实现我的FFT,但我不明白为什么那个家伙在他的代码中做了我不理解的事情。然而,如果我绘制FFT的绝对值,我会得到形状相似的图形,但振幅会跳到30或40以上(见图3和图4)。同样对于图2,为什么在滤波信号(时域)与时间的开始处存在小的摆动?请您帮助准确地执行FFT,这将非常有帮助。谢谢

数字在Google Drive中,因为该网站不允许我上传超过1个文件:

图1:

图2:

图3:

图4:


你没有在Y轴上增加比例因子吗?40比60万是一个比你提到的因素更大的差异。请不要链接到谷歌驱动器。您可以使用编辑器中相应的按钮将图像上载到问题中。查看采样定理。每个周期至少需要2分。这是信号中最快分量的周期。许多示波器在保证100MHz的情况下会以1Ga/秒的速度采样,因此每个周期10次采样被认为是合理的,但这仅仅是因为这些示波器使用滤波器限制其输入频率。如果允许频率高于采样率的1/2,则会出现锯齿。
%Time values using sampling frequency period.
fsampling = 80000;
tsampling = 0:1/fsampling:5000000*Tsampling;


%Time values using sawtooth frequency period.
fsampling = 80000;
fsawtooth = 6000;
Tsawtooth = (1/fsawtooth);
tsawtooth = 0:1/fssampling:20*Tsawtooth;

%Piece of code to use FFT that I don't understand.
L0 = length(product); 
NFFT0 = 2^nextpow2(L0);
Y0 = fft(product,NFFT0)/L0;
FreqDom0 = fs/2*linspace(0,1,NFFT0/2+1);
plot(FreqDom0, 2*abs(Y0(1:NFFT0/2+1)));

%Performing FFT using just abs.
IPFFT = abs(fft(product));
plot(t, IPFFT);