實驗-FFT頻譜研究分析_第1頁
實驗-FFT頻譜研究分析_第2頁
實驗-FFT頻譜研究分析_第3頁
實驗-FFT頻譜研究分析_第4頁
實驗-FFT頻譜研究分析_第5頁
已閱讀5頁,還剩6頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實驗-FFT頻譜分析作者: 日期:實驗4 FFT頻譜分析一、實驗目的FFT分析離散和應用離散傅里葉變換的快速算法FFT分析信號的頻譜。深刻理解應用連續信號的原理,掌握分析過程中出現的現象及解決方法。二、實驗原理1.離散周期信號頻譜的分析11周期為N的離散信號(序列)x(k)的頻譜函數X(m)定義為:X(m)N 1x(k)ek 0jLmkNN 1x(k)WNkmk 0m為離散的頻率變量;2m/N是次諧波的式中:N是序列的周期;k為離散的時間變量; 數字頻率。離散周期信號的頻譜X (m)也是周期為N的離散譜,譜線間隔為2 /N。利用MATLAB提供的fft函數可以計算離散周期信號的頻譜。對于離散周

2、期序列,只需對周期序列上一個周期內的數值 x(k)進行N點的FFT運算,就可準確地得到其頻譜在一個周期上的N個數值X(m),且有X(m) X(m),m 0, N 1。其分析步驟如下。(1)確定離散周期序列 x(k)的基本周期為N 。利用fft函數對序列x(k) 一個周期內進行 N點FFT計算,得到X(m)。X(m) X(m)。2.離散非周期信號頻譜的分析離散非周期信號x(k)的頻譜函數X(ej )為:X(ej ) x(k)e jk 。k利用MATLAB提供的fft函數可以計算離散非周期信號的頻譜。當序列長度有限時, 可以求得準確的序列頻譜 X(ej )的樣點值。若序列很長或無限長時,則由于截短

3、產生泄漏誤差,計算的結果只能是序列頻譜X(ej )樣點值的近似。分析步驟如下。(1)確定序列x(k)的長度M及窗函數的類型。當序列為無限長時,需要根據能量分布,利用窗函數進行截短。(2)確定做FFT的點數N。根據頻域采樣定理,為使時域波形不產生混疊, 必須取NMo使用fft函數做N點FFT以計算X(m)。3.連續周期信號頻譜的分析周期為To的連續時間信號x(t)的頻譜函數X(n 0)定義為:X(n 0)T01:ox(t)e jn otdt式中:T0是信號的周期;022 f0稱為信號的基頻(基波);n 0稱為信號的諧頻。To連續周期信號的頻譜 X(no)是非周期離散譜,譜線間隔為0。連續周期信號

4、的 DFT分析方法增加了時域采樣的環節。 連續周期信號的分析步驟如下。如果不滿足采樣定理的約束條件,將會出現頻譜混疊現象。(1)確定周期信號的基本周期T0 °(2)計算一個周期內的采樣點數N。(3)對連續周期信號以采樣間隔T進行采樣,T N ° 使用fft函數對x(k)作N點FFT用以計算X(m)o1(5)最后求得連續周期信號的頻譜X(n o-X(m),其中利用了下面的轉換關N系: t KT , To NT , dt T , G°0 k 0若能夠按照滿足采樣定理的采樣間隔采樣,并選取整周期為信號允許長度,則利用DFT計算得到的離散頻譜值等于原連續周期信號離散頻譜X

5、(n o)的準確值。4.連續非周期信號頻譜的分析連續時間非周期信號 x(t)的頻譜函數X(j )是連續譜,其定義如下:X(j ) x(t)e j tdt連續非周期信號的分析步驟如下:(1)根據時域采樣定理,確定時域采樣間隔T,得到離散序列x(k) °確定信號截短的長M及窗函數的類型,得到有限長M點離散序列XM(k)x(k)w(k) °確定頻域采樣點數 N,要求NM°使用fft函數做N點FFT計算得到N點的X(m) °2 Tx(m), nNT由X(m)可得到連續信號的頻譜 X(j )采樣點的近似值 X(j其中利用了轉換關系:t KT,dt T,三、實驗內容

6、與方法1.離散周期信號頻譜的分析【例4-1】已知一個周期序列 x(k)sin(k -) 0.5cos( k),用fft函數計算其頻16 6 16譜。MATLAB 程序如下:N=32; k=0:N-1;x=si n(p i*k/16+pi/6)+0.5*cos(7* pi *k/16);xk=fft(x,N);sub plot(2,1,1);stem(k-N/2,abs(fftshift(xk);axis(-16,16,0,20);xlabel(瀕譜特性');ylabel('幅度'); set(gca,'XTickMode','ma nu al&#

7、39;,'XTick',-16,-7,-1,0,1,7,16); sub plot(2,1,2);stem(k-N/2,a ngle(fftshift(xk);axis(-16,16,-4,4);xlabel(瀕譜特性');ylabel('相位'); set(gca,'XTickMode','ma nu al','XTick',-16,-7,-1,0,1,7,16); set(gcf,'color','w');程序運行結果如圖4.1所示。2015100-16-7-1 0 1頻

8、譜特性16圖4.1周期序列的幅度譜和相位譜2.離散非周期信號頻譜的分析【例4-2】利用fft函數分析序列x(k) 0.7ku(k)的頻譜。經過分析,可以得知信號為無限長,因此需要對其進行截短。該序列單調遞減, 當k >32時,序列已幾乎衰減為0,因此只取序列在0,32上的數值進行分析。MATLAB 程序如下:k=0:32;x=0.8.Ak;sub plot(2,1,1);stem(k,x);titleC時域波形');sub pl ot(2,1,2);w=k-15;p lot(w,abs(fftshift(fft(x); xlabel(瀕譜特性');ylabel('

9、幅度值'); set(gcf,'color','w');程序運行結果如圖4.2所示。時域波形0.8 0.6 0.40.2101520253035值度幅0 -15-10-505頻譜特性101520圖4.2非周期信號的時域波形及其幅度頻譜2sin(0.2 t) 5cos(5 t)。m 5 rad / s,因此采樣周期必須小于原始數據3.連續周期信號頻譜的分析【例4-3】利用fft函數求解周期信號x(t)經過分析可以得知,信號的最高頻率是/ m 0.2,則任選 T=0.02s, N=50。 MATLAB 程序如下:T=0.02;N1=50; n1=1:N1;D

10、1=2* pi/(N1*T);%頻率分辨率x1=2*si n(0.2* pi*n 1*T)-5*cos(5* pi*n 1*T); X1=T*fftshift(fft(x1);%求x的FFT,移到對稱位置 k1=floor(-(N1-1)/2:(N1-1)/2);N2=1000; n2=1:N2; % 原始數據D2=2* pi/(N2*T);% 頻率分辨率x2=2*si n(0.2* pi* n2*T)-5*cos(5* pi* n2*T); X2=T*fftshift(fft(x2);%求x的FFT,移到對稱位置 k2=floor(-(N2-1)/2:(N2-1)/2);sub plot(2

11、,1,1); plot(k1*D1,abs(X1);xlabel('Omega');ylabel('|X(Omega)|');title('(a)N=50'); axis(-200,200,0,2);sub plot(2,1,2); plot(k2*D2,abs(X2);xlabel('Omega');ylabel('|X(Omega)|');title('(b)N=1000'); axis(-20,20,0,60);set(gcf,'color','w');程序運行

12、結果如圖 4.3所示。從圖中可以看出,當N=50時分辨率太小,只看到3個尖 峰;當N=1000時,分辨率加大,則顯示出有 4個尖峰。同時可以看出,當把 N加倍時,其 高度也大體上加倍。(a)N=501.50.50-200-150-100-5050100150200圖4.3正余弦周期信號的頻譜4.連續非周期信號頻譜的分析【例4-4】利用fft函數分析x(t)0.05tu(t)的頻譜。MATLAB程序如下:各次計算擬采用的 各次計算擬采用的 循環計算4次 根據計算順序選用T,編成向量 TOL,編成向量 L0T0=2,1,0.1,0.1;%L0=10,10,20,40; % for r=1:4%T=

13、T0(r);N=L0(r)/T0(r);%D=2* pi/(N*T);%頻率分辨率n=0:N-1;x=ex p(-0.05* n*T); %給出樣本序列X=T*fftshift(fft(x); % 求 x 的 FFT,移到對稱位置 k=floor(-(N-1)/2:(N-1)/2);% 奈奎斯特頻率下標r,X(1)% 顯示奈奎斯特邊界處的頻譜 Xsubplot(2,2,r),plot(k*D,abs(X)% 在位置 r 處繪圖set(gca,'Xtick',卜 pi/T,-0.5* pi/T,0.5* pi/T, pi /T),grid on set(gcf,'colo

14、r','w') %置圖形背景色為白色 xlabel('Omega'),ylabel('|X(Omega)|') switch r% 用switch語句寫子圖標題case 1, title('T=2,N=5') case 2, title('T=1,N=1O') case 3, title('T=0.1,N=200') case 4, title('T=O.1,N=4OO') otherwiseendaxis(-3,3,0,20)%統一坐標,以便比較endset(gcf,'color','w');程序運行結果如圖 4.4所示。20T=1,N=10120-151h1I1*11-J111L|X 101- 111 "11r-11111 '1151L'0二T=0.1,N=200T=0.1,N=400151050圖4.4取不同采樣周期 T和數據長度L=T *N對頻譜計算的影響四、程序設計實驗編寫程序,進一步驗證如何利用fft函數來分析x(t) e 2tu(t)的頻譜。五、實驗預習要求(1)預習實驗原理。熟悉實驗程序。思考程序設計實驗部分程序的編寫。六、實驗報告要求(1) 中。MATLAB 中輸入程序,驗證實驗結果,并

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論