快速傅里葉變換試驗報告_第1頁
快速傅里葉變換試驗報告_第2頁
快速傅里葉變換試驗報告_第3頁
快速傅里葉變換試驗報告_第4頁
快速傅里葉變換試驗報告_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、快速傅里葉變換實驗報告班級:姓名:學(xué)號:快速傅里葉變換一.實驗?zāi)康? .在理論學(xué)習(xí)的基礎(chǔ)上,通過本實驗加深對快速傅立葉變換的理解;2 .熟悉并掌握按時間抽取FFT算法的程序;3 .了解應(yīng)用FFT進行信號頻譜分析過程中可能出現(xiàn)的問題,例如混淆、泄漏、柵欄效應(yīng)等,以便在實際中正確應(yīng)用FFT。二.實驗內(nèi)容1 .仔細分析教材第六章時間抽取法FFT'的算法結(jié)構(gòu),編制出相應(yīng)的用FFT進行信號分析的C語言(或MATLAB言)程序;2 .用FFT程序分析正弦信號y(t)=sin(2nft)u(t)-u(tN*T)<t<+oc,設(shè)u(0)=1分別在以下情況進行分析并討論所得的結(jié)果:a) 信號

2、頻率f=50Hz,采樣點數(shù)N=32,采樣間隔T=0.000625sb) 信號頻率f=50Hz,采樣點數(shù)N=32,采樣間隔T=0.005sc) 信號頻率f=50Hz,采樣點數(shù)N=32,采樣間隔T=0.0046875sd) 信號頻率f=50Hz,采樣點數(shù)N=32,采樣間隔T=0.004se) 信號頻率f=50Hz,采樣點數(shù)N=64,采樣間隔T=0.000625sf) 信號頻率f=250Hz,采樣點數(shù)N=32,采樣間隔T=0.005sg) 將c)信號后補32個0,彳64點FFT三.實驗要求1 .記錄下實驗內(nèi)容中各種情況下的X(k)值,做出頻譜圖并深入討論結(jié)果,說明參數(shù)的變化對信號頻譜產(chǎn)生哪些影響。頻

3、譜只做模特性,模的最大值=1,全部歸一化;2 .打印出用C語言(或MATLAB語言)編寫的FFT源程序,并且在每一小段處加上詳細的注釋說明;3 .用C語言(或MATLAB語言)編寫FFT程序時,要求采用人機界面形式:N,T,f變量均由鍵盤輸入,補零或不補零要求設(shè)置一開關(guān)來選擇。四.實驗分析對于本實驗進行快速傅里葉變換,依次需要對信號進行采樣,補零(要求補零時),碼位倒置,蝶形運算,歸一化處理并作圖。此外,本實驗要求采用人機界面形式,N,T,F變量由鍵盤輸入,補零或不補零設(shè)置一開關(guān)來選擇。1.采樣本實驗進行FFT運算,給出的是正弦信號,需要先對信號進行采樣,得到有限長序歹Ix(n),n=0,1,

4、2NMatlab實現(xiàn):t=0:T:T*(N-1);x=sin(2*pi*f*t);2.補零根據(jù)實驗要求確定補零與否,可以用if語句做判斷,若為1,再輸入補零個數(shù),并將補的零放到采樣得到的序列的后面組成新的序列,此時新的序列的元素個數(shù)等于原采樣點個數(shù)加上補零個數(shù),并將新的序列個數(shù)賦值給NoMatlab實現(xiàn):a=input('是否增加零點?是請車入1否請輸入0n');if(a)ZeroNum=input('請輸入增加零點的個數(shù):n');elseZeroNum=0;endif(a)x=xzeros(1,ZeroNum);%旨令zeros(a,b)生成a行b列全0矩陣,

5、在單行矩陣x后補充0endN=N+ZeroNum;3 .碼位倒置本實驗做FF餃換的級數(shù)為M,M=log2N做序列數(shù)對應(yīng)的二進制數(shù)的碼位倒置,dec2bin()函數(shù)將十進制數(shù)轉(zhuǎn)換為二進制數(shù),fliplr()將二進制數(shù)進行碼位倒置,bin2dec()將二進制數(shù)轉(zhuǎn)換為十Matlab實現(xiàn):M=log2(N);fort=1:1:Ns=dec2bin(t-1,M);限s=fliplr(s);s=bin2dec(s);b=s+1;A(b)=x(t);end進制數(shù),并將按碼位倒置得到的序列賦值為A(n),n=0,1,2.N%而二進制數(shù)%啾十進制數(shù)轉(zhuǎn)換為二進制數(shù),M表示二進制碼位數(shù)的上%啾二進制數(shù)進行碼位倒置%

6、!二進制數(shù)轉(zhuǎn)換為十進制數(shù)%1進制數(shù)從0開始,而矩陣中元素序數(shù)從1開始,故需+14 .蝶形運算用三層for循環(huán)來實現(xiàn):1.實現(xiàn)FFT5一級運算,共M級,此處for循環(huán)用來控制級數(shù);2.實現(xiàn)分組,此處for循環(huán)用來控制旋轉(zhuǎn)因子;3.實現(xiàn)每一組中FFT1算,此處for循環(huán)用來控制進行蝶形運算的兩點之間的距離。最終得到的A(k)即為FF餃換的結(jié)果。Matlab實現(xiàn):forL=1:1:MforJ=0:1:(2A(L-1)-1)fork=(J+1):2AL:NT=A(k)+A(k+2A(L-1)*exp(-i*2*pi*J*2A(M-L)/N);A(k+2A(L-1)=A(k)-A(k+2A(L-1)*e

7、xp(-i*2*pi*J*2A(M-L)/N);A(k)=T;endendend%A(k)即為FFT變換結(jié)果5 .歸一化處理及作圖實驗要求對FFT運算結(jié)果進行歸一化處理,對FFT運算結(jié)果序列A(k)均取絕對值得序列B(k),并取出絕對值中最大值m,序列B(k)中所有元素均除以m,即得到歸一化處理后的序列。用stem函數(shù)即可實現(xiàn)作圖。Matlab實現(xiàn):%刈一化處理B=abs(A);%啾矩陣A中元素均取絕對值,得矩陣Bm=max(B);%喊矩陣B中的最大值X=B/m;%A(k)的幅值歸一化處理之后的結(jié)果%乍圖fori=1:1:Nstem(i-1,X(i);%stem(A,B)表示以矩陣A中元素為縱

8、坐標,B中元素為橫坐標(對應(yīng))作圖holdon%W羊時間點值與元素序數(shù)相差1,故endaxis(0N01);%axis限定橫,縱坐標范圍五.實驗結(jié)果及分析本實驗時域上加時窗,對應(yīng)于頻域上與sinc函數(shù)做卷積,當(dāng)采樣為整數(shù)倍周期時,時窗對頻譜圖無影響,當(dāng)采樣是非整數(shù)個周期時,時窗對頻譜圖影響較大。采樣頻率fs對應(yīng)數(shù)字域的2n。a) 信號頻率f=50Hz,采樣點數(shù)N=32,采樣間隔T=0.000625s(1)X(k)值如下表:X(0)X(1)X(2)X(3)X(4)X(5)X(6)X(7)00-16i000000X(8)X(9)X(10)X(11)X(12)X(13)X(14)X(15)00000

9、000X(16)X(17)X(18)X(19)X(20)X(21)X(22)X(23)00000000X(24)X(25)X(26)X(27)X(28)X(29)X(30)X(31)00000000+16i(2)頻譜圖如下:分析:b) 信號頻率f=50Hz,采樣點數(shù)N=32,采樣間隔T=0.005s(1)X(k)值如下表:X(0)X(1)X(2)X(3)X(4)X(5)X(6)X(7)00000000X(8)X(9)X(10)X(11)X(12)X(13)X(14)X(15)0-16i0000000X(16)X(17)X(18)X(19)X(20)X(21)X(22)X(23)00000000

10、X(24)X(25)X(26)X(27)X(28)X(29)X(30)X(31)0+16i0000000(2)頻譜圖如下:分析:c)信號頻率f=50Hz,采樣點數(shù)N=32,采樣間隔T=0.0046875s(1)X(k)值如下表:X(0)X(1)X(2)X(3)X(4)X(5)X(6)X(7)1.10331.12731.20501.35681.63392.17503.496010.2519X(8)X(9)X(10)X(11)X(12)X(13)X(14)X(15)-10.153-3.3953-2.0703-1.5226-1.2361-1.0707-0.9739-0.9225X(16)X(17)X

11、(18)X(19)X(20)X(21)X(22)X(23)-0.9063-0.9225-0.9739-1.0707-1.2361-1.5226-2.0703-3.3953X(24)X(25)X(26)X(27)X(28)X(29)X(30)X(31)-10.1510.25193.49602.17501.63391.35681.20501.1273(2)頻譜圖如下:分析:d)信號頻率f=50Hz,采樣點數(shù)N=32,采樣間隔T=0.004s(1)X(k)值如下表:X(0)X(1)X(2)X(3)X(4)X(5)X(6)X(7)0.95110.9867-0.0854i1.105-0.1829i1.3

12、526-0.3125i1.8670-0.5220i3.1952-0.9911i11.383-3.6858i-7.844+2.5301iX(8)X(9)X(10)X(11)X(12)X(13)X(14)X(15)-3.077+0.9511i-2.000+0.5718i-1.537+0.3925i-1.288+0.2826i-1.140+0.2045i-1.048+0.1432i-0.991+0.0912i-0.961+0.0445iX(16)X(17)X(18)X(19)X(20)X(21)X(22)X(23)-0.9511-0.9608-0.0445i-0.9916-0.0912i-1.048

13、2-0.1432i-1.1405-0.2045i-1.2889-0.2826i-1.5376-0.3925i-2.0004-0.5718iX(24)X(25)X(26)X(27)X(28)X(29)X(30)X(31)-3.0777-0.9511i-7.8447-2.5301i11.383+3.6858i3.1952+0.9911i1.8670+0.5220i1.3526+0.3125i1.1052+0.1829i0.9867+0.0854i(3)分析:e)信號頻率f=50Hz,采樣點數(shù)N=64,采樣間隔T=0.000625s(1)X(k)值如下表:X(0)X(1)X(2)X(3)X(4)X(

14、5)X(6)X(7)00-32i00000X(8)X(9)X(10)X(11)X(12)X(13)X(14)X(15)00000000X(16)X(17)X(18)X(19)X(20)X(21)X(22)X(23)00000000X(24)X(25)X(26)X(27)X(28)X(29)X(30)X(31)00000000X(32)X(33)X(34)X(35)X(36)X(37)X(38)X(39)0000000X(40)X(41)X(42)X(43)X(44)X(45)X(46)X(47)00000000X(48)X(49)X(50)X(51)X(52)X(53)X(54)X(55)00

15、000000X(56)X(57)X(58)X(59)X(60)X(61)X(62)X(63)00000032i0(2)頻譜圖如下:分析:f)信號頻率f=250Hz,采樣點數(shù)N=32,采樣間隔T=0.005sX(0)X(1)X(2)X(3)X(4)X(5)X(6)X(7)00000000X(8)X(9)X(10)X(11)X(12)X(13)X(14)X(15)0-16i0000000X(16)X(17)X(18)X(19)X(20)X(21)X(22)X(23)00000000X(24)X(25)X(26)X(27)X(28)X(29)X(30)X(31)0+16i0000000(2)頻譜圖如

16、下:分析:g)將c)信號后補32個0,彳64點FFT(1)X(k)值如下表:X(0)X(1)X(2)X(3)X(4)X(5)X(6)X(7)1.103301.127301.205001.35680X(8)X(9)X(10)X(11)X(12)X(13)X(14)X(15)1.633902.175003.4960010.2519-16.000iX(16)X(17)X(18)X(19)X(20)X(21)X(22)X(23)-10.1530-3.39530-2.07030-1.52260X(24)X(25)X(26)X(27)X(28)X(29)X(30)X(31)-1.23610-1.07070

17、-0.97390-0.92250X(32)X(33)X(34)X(35)X(36)X(37)X(38)X(39)-0.90630-0.92250-0.97390-1.07070X(40)X(41)X(42)X(43)X(44)X(45)X(46)X(47)-1.23610-1.52260-2.07030-3.39530X(48)X(49)X(50)X(51)X(52)X(53)X(54)X(55)-10.15316.0000i10.251903.496002.17500X(56)X(57)X(58)X(59)X(60)X(61)X(62)X(63)1.633901.356801.205001.

18、12730(3)分析:六.實驗源程序clcclearf=input(請輸入信號頻率:fn');N=input('請輸入采樣點數(shù):Nn');T=input('請輸入采樣間隔:Tn');a=input('是否增加零點?是請車入1否請輸入0n'%嗾樣,采N個點t=0:T:T*(N-1);x=sin(2*pi*f*t);if(a)ZeroNum=input('請輸入增加零點的個數(shù):n');elseZeroNum=0;end%卜0處理:在采樣點組成的單行矩陣后補充ZeroNum個0,組成新的矩陣if(a)x=xzeros(1,Zer

19、oNum);%旨令zeros(a,b)生成a行b列全0矩陣,在單行矩陣x后補充0end%刎位倒置M=log2(N);fort=1:1:Ns=dec2bin(t-1,M);限s=fliplr(s);s=bin2dec(s);b=s+1;A(b)=x(t);endN=N+ZeroNum;%而二進制數(shù)%啾十進制數(shù)轉(zhuǎn)換為二進制數(shù),M表示二進制碼位數(shù)的上%啾二進制數(shù)進行碼位倒置%啾二進制數(shù)轉(zhuǎn)換為十進制數(shù)%匯進制數(shù)從0開始,而矩陣中元素序數(shù)從1開始,故需+1%形運算%E層for循環(huán)%1.實現(xiàn)fft每一級運算,共M級(控制級數(shù))%2.控制旋轉(zhuǎn)因子%3.實現(xiàn)每一組中fft運算,運算次數(shù)與分組有關(guān)(控制進行蝶形運算兩點之間的距離)forL=1:1:MforJ=0:1:(2A(L-1)-1)fork=(J+1):2AL:NT=

溫馨提示

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

評論

0/150

提交評論