一、實驗目的
1.進一步加深對dft演算法原理和基本性質的理解(因為fft只是dft的一種快速演算法,所以fft的運算結果必然滿足dft的基本性質)。
2.熟悉fft演算法原理和fft子程式的應用。
3.學習用fft對連續訊號和時域離散訊號進行譜分析的方法,了解可能出現的分析誤差及其原因,以便在實際中正確應用fft。
二、實驗原理
1.快速傅利葉變換(fft)演算法
長度為n的序列的離散傅利葉變換為:
n點的dft可以分解為兩個n/2點的dft,每個n/2點的dft又可以分解為兩個n/4點的dft。依此類推,當n為2的整數次冪時(),由於每分解一次降低一階冪次,所以通過m次的分解,最後全部成為一系列2點dft運算。以上就是按時間抽取的快速傅利葉變換(fft)演算法。
當需要進行變換的序列的長度不是2的整數次方的時候,為了使用以2為基的fft,可以用末尾補零的方法,使其長度延長至2的整數次方。
序列的離散傅利葉反變換為
離散傅利葉反變換與正變換的區別在於變為,並多了乙個的運算。因為和對於推導按時間抽取的快速傅利葉變換演算法並無實質性區別,因此可將fft和快速傅利葉反變換(ifft)演算法合併在同乙個程式中。
2.利用fft進行頻譜分析
若訊號本身是有限長的序列,計算序列的頻譜就是直接對序列進行fft運算求得,就代表了序列在之間的頻譜值。
幅度譜相位譜若訊號是模擬訊號,用fft進行譜分析時,首先必須對訊號進行取樣,使之變成離散訊號,然後就可按照前面的方法用fft來對連續訊號進行譜分析。按取樣定理,取樣頻率應大於2倍訊號的最高頻率,為了滿足取樣定理,一般在取樣之前要設定乙個抗混疊低通濾波器。用fft對模擬訊號進行譜分析的方框圖如下所示。
三、主要實驗儀器及材料
微型計算機、matlab7.1教學版。
四、實驗內容
1.知識準備
實驗前學生應認真複習dft和fft有關的知識,掌握快速傅利葉變換的基本原理以及如何用fft等計算訊號頻譜。
2.離散時間訊號(序列)的產生
利用matlab語言程式設計產生和繪製下列兩有限長序列:
、、3.用一種語言編寫fft的通用程式塊
4.畫主程式實現框圖並編寫主程式,實現訊號的譜分析。
5.記錄下實驗內容中各訊號的x(k)值,作出頻譜圖。
五、實驗報告要求
1.簡述實驗原理及目的。
2.結合實驗中所得給定典型序列幅頻特性曲線,與理論結合比較,並分析說明誤差產生的原因以及用fft作譜分析時有關引數的選擇方法。
3.總結實驗所得主要結論。
fs=400; t=1/fs; %ù400hz
tp=0.2; n=tp*fs; %ùn
n=1:n;
xn1=cos(100*pi*n*t
subplot(3,2,1) ;%32
plot(xn1);ylabel('|xn1(n)|')
xk1=fft(xn1,1024);
fk1=[0:1023]/2048/t;
subplot(3,2,2)
plot(fk1,abs(xk1)/max(abs(xk1))); %
ylabel('|xk1(f)|')
xn1=[cos(40*pi*n*t)]./(40*pi*n*t);
xn1=2*cos(200*pi*n*t)+sin(50*pi*n*t);
用FFT做譜分析
實驗一 用fft做譜分析 1 實驗目的 1 進一步加深dft演算法原理和基本性質的理解。2 熟悉fft演算法原理和fft子程式的應用。3 學習用fft對連續訊號和時域離散訊號進行譜分析的方法,了解可能出現的分析誤差及其原因,以便在實際中正確應用fft。2 實驗原理 dft是週期序列,有n個獨立的數值...
用FFT對訊號做頻譜分析
湖北民族學院資訊工程學院實驗報告 電氣 電子類專用 班級 姓名 學號 實驗成績 實驗時間 2010 年 11 月 27 日 3 4節實驗地點 數字訊號處理實驗室 課題名稱 數字訊號處理實驗型別 設計型驗證型綜合型 實驗題目 用fft對訊號做頻譜分析 一 實驗儀器pc matlab 一 實驗目的 學習...
實驗三 用FFT對訊號作頻譜分析 實驗報告
一 實驗目的與要求 學習用fft對連續訊號和時域離散訊號進行譜分析的方法,了解可能出現的分析誤差及其原因,以便正確應用fft。二 實驗原理 用fft對訊號作頻分析是學習數字訊號處理的重要內容,經常需要進行分析的訊號是模擬訊號的時域離散訊號。對訊號進行譜分析的重要問題是頻譜解析度d和分析誤差。頻譜解析...