當前位置:編程學習大全網 - 網絡軟體 - MATLAB中的FFT的采樣頻率和采樣點怎樣確定?

MATLAB中的FFT的采樣頻率和采樣點怎樣確定?

在MATLAB中做FFT,首先編寫函數,對不同的采樣頻率和采樣點數,計算FFT後的頻率序列及其對應的幅值:

function?[f amplitude]?=?yopheeFFT(sampleRate,FFT_points)?  

n?=?0:FFT_points-1;?  

t?=?n/sampleRate;?%采樣時間序列?  

f_All?=?n*sampleRate/FFT_points;?%頻率序列 %構造混有噪聲的周期信號並采樣?

signal?=?2*sin(2*pi*10*t)+1*sin(2*pi*20.25*t)+0.2*randn(size(t));?  %對信號進行快速Fourier變換,並求振幅?  

amplitude_All?=?abs(fft(signal,FFT_points))*2/FFT_points;?  

f?=?f_All(1:FFT_points/2);?  

amplitude?=?amplitude_All(1:FFT_points/2);

擴展資料

MATLAB中FFT函數的意義:

FFT是離散傅立葉變換的快速算法,可以將壹個信號變換到頻域。有些信號在時域上是很難看出什麽特征的,但是如果變換到頻域之後,就很容易看出特征了。這就是很多信號分析采用FFT變換的原因。另外,FFT可以將壹個信號的頻譜提取出來,這在頻譜分析方面也是經常用的。

模擬信號經過ADC采樣之後變成數字信號,可對此數字信號做FFT變換。N個采樣點經過FFT之後就可以得到N個點的FFT結果。為了方便進行FFT運算,通常N取2的整數次冪。

假設采樣頻率為Fs,信號頻率為F,采樣點數為N。則FFT之後結果為N點復數,其中每壹個點對應著壹個頻率點,該點復數的模值為原始信號在該頻率值下的幅度特性。

具體為:假設原始信號在某頻率點的幅值為A,則該頻點對應的FFT點復數的模值為A的N/2倍。而FFT第壹點為原始信號的直流分量,其模值為原始信號模值的N倍。對於相位,FFT復數的相位即為原始信號在該頻率點處的相位。

  • 上一篇:電視劇三妹的結局是什麽?
  • 下一篇:長沙哪家公司能提供網站建設服務?
  • copyright 2024編程學習大全網