數字信號處理上機實驗及答案(第三版,第十章)_第1頁
數字信號處理上機實驗及答案(第三版,第十章)_第2頁
數字信號處理上機實驗及答案(第三版,第十章)_第3頁
數字信號處理上機實驗及答案(第三版,第十章)_第4頁
數字信號處理上機實驗及答案(第三版,第十章)_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、上機實驗第十章 上機實驗 數字信號處理是一門理論和實際密切結合的課程,為深入掌握課程內容,最好在學習理論的同時,做習題和上機實驗。上機實驗不僅可以幫助讀者深入的理解和消化基本理論,而且能鍛煉初學者的獨立解決問題的能力。本章在第二版的基礎上編寫了六個實驗,前五個實驗屬基礎理論實驗,第六個屬應用綜合實驗。實驗一 系統(tǒng)響應及系統(tǒng)穩(wěn)定性。實驗二 時域采樣與頻域采樣。實驗三 用FFT對信號作頻譜分析。實驗四 IIR數字濾波器設計及軟件實現(xiàn)。實驗五 FIR數字濾波器設計與軟件實現(xiàn)實驗六 應用實驗數字信號處理在雙音多頻撥號系統(tǒng)中的應用 任課教師根據教學進度,安排學生上機進行實驗。建議自學的讀者在學習完第一章

2、后作實驗一;在學習完第三、四章后作實驗二和實驗三;實驗四IIR數字濾波器設計及軟件實現(xiàn)在。學習完第六章進行;實驗五在學習完第七章后進行。實驗六綜合實驗在學習完第七章或者再后些進行;實驗六為綜合實驗,在學習完本課程后再進行。10.1 實驗一: 系統(tǒng)響應及系統(tǒng)穩(wěn)定性1.實驗目的(1)掌握求系統(tǒng)響應的方法。(2)掌握時域離散系統(tǒng)的時域特性。(3)分析、觀察及檢驗系統(tǒng)的穩(wěn)定性。2.實驗原理與方法在時域中,描寫系統(tǒng)特性的方法是差分方程和單位脈沖響應,在頻域可以用系統(tǒng)函數描述系統(tǒng)特性。已知輸入信號可以由差分方程、單位脈沖響應或系統(tǒng)函數求出系統(tǒng)對于該輸入信號的響應,本實驗僅在時域求解。在計算機上適合用遞推法

3、求差分方程的解,最簡單的方法是采用MATLAB語言的工具箱函數filter函數。也可以用MATLAB語言的工具箱函數conv函數計算輸入信號和系統(tǒng)的單位脈沖響應的線性卷積,求出系統(tǒng)的響應。系統(tǒng)的時域特性指的是系統(tǒng)的線性時不變性質、因果性和穩(wěn)定性。重點分析實驗系統(tǒng)的穩(wěn)定性,包括觀察系統(tǒng)的暫態(tài)響應和穩(wěn)定響應。系統(tǒng)的穩(wěn)定性是指對任意有界的輸入信號,系統(tǒng)都能得到有界的系統(tǒng)響應?;蛘呦到y(tǒng)的單位脈沖響應滿足絕對可和的條件。系統(tǒng)的穩(wěn)定性由其差分方程的系數決定。實際中檢查系統(tǒng)是否穩(wěn)定,不可能檢查系統(tǒng)對所有有界的輸入信號,輸出是否都是有界輸出,或者檢查系統(tǒng)的單位脈沖響應滿足絕對可和的條件。可行的方法是在系統(tǒng)的輸

4、入端加入單位階躍序列,如果系統(tǒng)的輸出趨近一個常數(包括零),就可以斷定系統(tǒng)是穩(wěn)定的19。系統(tǒng)的穩(wěn)態(tài)輸出是指當時,系統(tǒng)的輸出。如果系統(tǒng)穩(wěn)定,信號加入系統(tǒng)后,系統(tǒng)輸出的開始一段稱為暫態(tài)效應,隨n的加大,幅度趨于穩(wěn)定,達到穩(wěn)態(tài)輸出。注意在以下實驗中均假設系統(tǒng)的初始狀態(tài)為零。3實驗內容及步驟(1)編制程序,包括產生輸入信號、單位脈沖響應序列的子程序,用filter函數或conv函數求解系統(tǒng)輸出響應的主程序。程序中要有繪制信號波形的功能。(2)給定一個低通濾波器的差分方程為 輸入信號 a) 分別求出系統(tǒng)對和的響應序列,并畫出其波形。 b) 求出系統(tǒng)的單位沖響應,畫出其波形。(3)給定系統(tǒng)的單位脈沖響應為

5、 用線性卷積法分別求系統(tǒng)h1(n)和h2(n)對的輸出響應,并畫出波形。(4)給定一諧振器的差分方程為 令 ,諧振器的諧振頻率為0.4rad。 a) 用實驗方法檢查系統(tǒng)是否穩(wěn)定。輸入信號為時,畫出系統(tǒng)輸出波形。 b) 給定輸入信號為 求出系統(tǒng)的輸出響應,并畫出其波形。4思考題(1) 如果輸入信號為無限長序列,系統(tǒng)的單位脈沖響應是有限長序列,可否用線性卷積法求系統(tǒng)的響應? 如何求? (2)如果信號經過低通濾波器,把信號的高頻分量濾掉,時域信號會有何變化,用前面 第一個實驗結果進行分析說明。5實驗報告要求(1)簡述在時域求系統(tǒng)響應的方法。(2)簡述通過實驗判斷系統(tǒng)穩(wěn)定性的方法。分析上面第三個實驗的

6、穩(wěn)定輸出的波形。 (3)對各實驗所得結果進行簡單分析和解釋。(4)簡要回答思考題。(5)打印程序清單和要求的各信號波形。10.1.2 實驗程序清單%實驗1:系統(tǒng)響應及系統(tǒng)穩(wěn)定性close all;clear all%=內容1:調用filter解差分方程,由系統(tǒng)對u(n)的響應判斷穩(wěn)定性=A=1,-0.9;B=0.05,0.05; %系統(tǒng)差分方程系數向量B和Ax1n=1 1 1 1 1 1 1 1 zeros(1,50); %產生信號x1(n)=R8(n)x2n=ones(1,128); %產生信號x2(n)=u(n)hn=impz(B,A,58); %求系統(tǒng)單位脈沖響應h(n)subplot(

7、2,2,1);y='h(n)'tstem(hn,y); %調用函數tstem繪圖title('(a) 系統(tǒng)單位脈沖響應h(n)');box ony1n=filter(B,A,x1n); %求系統(tǒng)對x1(n)的響應y1(n)subplot(2,2,2);y='y1(n)'tstem(y1n,y);title('(b) 系統(tǒng)對R8(n)的響應y1(n)');box ony2n=filter(B,A,x2n); %求系統(tǒng)對x2(n)的響應y2(n)subplot(2,2,4);y='y2(n)'tstem(y2n,y);

8、title('(c) 系統(tǒng)對u(n)的響應y2(n)');box on%=內容2:調用conv函數計算卷積=x1n=1 1 1 1 1 1 1 1 ; %產生信號x1(n)=R8(n)h1n=ones(1,10) zeros(1,10);h2n=1 2.5 2.5 1 zeros(1,10);y21n=conv(h1n,x1n);y22n=conv(h2n,x1n);figure(2)subplot(2,2,1);y='h1(n)'tstem(h1n,y); %調用函數tstem繪圖title('(d) 系統(tǒng)單位脈沖響應h1(n)');box o

9、nsubplot(2,2,2);y='y21(n)'tstem(y21n,y);title('(e) h1(n)與R8(n)的卷積y21(n)');box onsubplot(2,2,3);y='h2(n)'tstem(h2n,y); %調用函數tstem繪圖title('(f) 系統(tǒng)單位脈沖響應h2(n)');box onsubplot(2,2,4);y='y22(n)'tstem(y22n,y);title('(g) h2(n)與R8(n)的卷積y22(n)');box on%=內容3:諧振器分

10、析=un=ones(1,256); %產生信號u(n)n=0:255;xsin=sin(0.014*n)+sin(0.4*n); %產生正弦信號A=1,-1.8237,0.9801;B=1/100.49,0,-1/100.49; %系統(tǒng)差分方程系數向量B和Ay31n=filter(B,A,un); %諧振器對u(n)的響應y31(n)y32n=filter(B,A,xsin); %諧振器對u(n)的響應y31(n)figure(3)subplot(2,1,1);y='y31(n)'tstem(y31n,y);title('(h) 諧振器對u(n)的響應y31(n)

11、9;);box onsubplot(2,1,2);y='y32(n)'tstem(y32n,y);title('(i) 諧振器對正弦信號的響應y32(n)');box on10.1.3 實驗程序運行結果及分析討論程序運行結果如圖10.1.1所示。實驗內容(2)系統(tǒng)的單位沖響應、系統(tǒng)對和的響應序列分別如圖(a)、(b)和(c)所示;實驗內容(3)系統(tǒng)h1(n)和h2(n)對的輸出響應分別如圖(e)和(g)所示;實驗內容(4)系統(tǒng)對和的響應序列分別如圖(h)和(i)所示。由圖(h)可見,系統(tǒng)對的響應逐漸衰減到零,所以系統(tǒng)穩(wěn)定。由圖(i)可見,系統(tǒng)對的穩(wěn)態(tài)響應近似為正

12、弦序列,這一結論驗證了該系統(tǒng)的諧振頻率是0.4 rad。圖10.1.110.1.4 簡答思考題(1) 如果輸入信號為無限長序列,系統(tǒng)的單位脈沖響應是有限長序列,可否用線性卷積法求系統(tǒng)的響應。對輸入信號序列分段;求單位脈沖響應h(n)與各段的卷積;將各段卷積結果相加。具體實現(xiàn)方法有第三章介紹的重疊相加法和重疊保留法。 (2)如果信號經過低通濾波器,把信號的高頻分量濾掉,時域信號的劇烈變化將被平滑,由實驗內容(1)結果圖10.1.1(a)、(b)和(c)可見,經過系統(tǒng)低通濾波使輸入信號、和的階躍變化變得緩慢上升與下降。10.2 實驗二 時域采樣與頻域采樣10.2.1 實驗指導1. 實驗目的 時域采

13、樣理論與頻域采樣理論是數字信號處理中的重要理論。要求掌握模擬信號采樣前后頻譜的變化,以及如何選擇采樣頻率才能使采樣后的信號不丟失信息;要求掌握頻率域采樣會引起時域周期化的概念,以及頻率域采樣定理及其對頻域采樣點數選擇的指導作用。2. 實驗原理與方法 時域采樣定理的要點是:a) 對模擬信號以間隔T進行時域等間隔理想采樣,形成的采樣信號的頻譜是原模擬信號頻譜以采樣角頻率()為周期進行周期延拓。公式為: b) 采樣頻率必須大于等于模擬信號最高頻率的兩倍以上,才能使采樣信號的 頻譜不產生頻譜混疊。 利用計算機計算上式并不方便,下面我們導出另外一個公式,以便用計算機上進行實驗。 理想采樣信號和模擬信號之

14、間的關系為: 對上式進行傅立葉變換,得到: 在上式的積分號內只有當時,才有非零值,因此: 上式中,在數值上,再將代入,得到: 上式的右邊就是序列的傅立葉變換,即 上式說明理想采樣信號的傅立葉變換可用相應的采樣序列的傅立葉變換得到,只要將自變量用代替即可。 頻域采樣定理的要點是:a) 對信號x(n)的頻譜函數X(ej)在0,2上等間隔采樣N點,得到則N點IDFT得到的序列就是原序列x(n)以N為周期進行周期延拓后的主值區(qū)序列,公式為: b) 由上式可知,頻域采樣點數N必須大于等于時域離散信號的長度M(即NM),才能使時域不產生混疊,則N點IDFT得到的序列就是原序列x(n),即=x(n)。如果N

15、>M,比原序列尾部多N-M個零點;如果N<M,z則=IDFT發(fā)生了時域混疊失真,而且的長度N也比x(n)的長度M短,因此。與x(n)不相同。 在數字信號處理的應用中,只要涉及時域或者頻域采樣,都必須服從這兩個采樣理論的要點。 對比上面敘述的時域采樣原理和頻域采樣原理,得到一個有用的結論,這兩個采樣理論具有對偶性:“時域采樣頻譜周期延拓,頻域采樣時域信號周期延拓”。因此放在一起進行實驗。3. 實驗內容及步驟(1)時域采樣理論的驗證。給定模擬信號, 式中A=444.128,=50,=50rad/s,它的幅頻特性曲線如圖10.2.1 圖10.2.1 的幅頻特性曲線 現(xiàn)用DFT(FFT)求

16、該模擬信號的幅頻特性,以驗證時域采樣理論。 安照的幅頻特性曲線,選取三種采樣頻率,即=1kHz,300Hz,200Hz。觀測時間選。 為使用DFT,首先用下面公式產生時域離散信號,對三種采樣頻率,采樣序列按順序用,表示。 因為采樣頻率不同,得到的,的長度不同, 長度(點數)用公式計算。選FFT的變換點數為M=64,序列長度不夠64的尾部加零。X(k)=FFTx(n) , k=0,1,2,3,-,M-1式中k代表的頻率為 。要求: 編寫實驗程序,計算、和的幅度特性,并繪圖顯示。觀察分析頻譜混疊失真。(2)頻域采樣理論的驗證。給定信號如下: 編寫程序分別對頻譜函數在區(qū)間上等間隔采樣32和16點,得

17、到: 再分別對進行32點和16點IFFT,得到: 分別畫出、的幅度譜,并繪圖顯示x(n)、的波形,進行對比和分析,驗證總結頻域采樣理論。提示:頻域采樣用以下方法容易變程序實現(xiàn)。 直接調用MATLAB函數fft計算就得到在的32點頻率域采樣 抽取的偶數點即可得到在的16點頻率域采樣,即。 當然也可以按照頻域采樣理論,先將信號x(n)以16為周期進行周期延拓,取其主值區(qū)(16點),再對其進行16點DFT(FFT),得到的就是在的16點頻率域采樣。 4思考題: 如果序列x(n)的長度為M,希望得到其頻譜在上的N點等間隔采樣,當N<M時, 如何用一次最少點數的DFT得到該頻譜采樣?5. 實驗報告

18、及要求a) 運行程序打印要求顯示的圖形,。 b) 分析比較實驗結果,簡述由實驗得到的主要結論c) 簡要回答思考題d) 附上程序清單和有關曲線。10.2.2 實驗程序清單1 時域采樣理論的驗證程序清單% 時域采樣理論驗證程序exp2a.mTp=64/1000;%觀察時間Tp=64微秒%產生M長采樣序列x(n)% Fs=1000;T=1/Fs;Fs=1000;T=1/Fs;M=Tp*Fs;n=0:M-1;A=444.128;alph=pi*50*20.5;omega=pi*50*20.5;xnt=A*exp(-alph*n*T).*sin(omega*n*T);Xk=T*fft(xnt,M); %

19、M點FFTxnt)yn='xa(nT)'subplot(3,2,1);tstem(xnt,yn);%調用自編繪圖函數tstem繪制序列圖box on;title('(a) Fs=1000Hz');k=0:M-1;fk=k/Tp;subplot(3,2,2);plot(fk,abs(Xk);title('(a) T*FTxa(nT),Fs=1000Hz');xlabel('f(Hz)');ylabel('幅度');axis(0,Fs,0,1.2*max(abs(Xk)%=% Fs=300Hz和 Fs=200Hz的程序

20、與上面Fs=1000Hz完全相同。2 頻域采樣理論的驗證程序清單%頻域采樣理論驗證程序exp2b.mM=27;N=32;n=0:M;%產生M長三角波序列x(n)xa=0:floor(M/2); xb= ceil(M/2)-1:-1:0; xn=xa,xb;Xk=fft(xn,1024);%1024點FFTx(n), 用于近似序列x(n)的TFX32k=fft(xn,32);%32點FFTx(n)x32n=ifft(X32k);%32點IFFTX32(k)得到x32(n)X16k=X32k(1:2:N);%隔點抽取X32k得到X16(K)x16n=ifft(X16k,N/2);%16點IFFTX

21、16(k)得到x16(n)subplot(3,2,2);stem(n,xn,'.');box ontitle('(b) 三角波序列x(n)');xlabel('n');ylabel('x(n)');axis(0,32,0,20)k=0:1023;wk=2*k/1024;%subplot(3,2,1);plot(wk,abs(Xk);title('(a)FTx(n)');xlabel('omega/pi');ylabel('|X(ejomega)|');axis(0,1,0,200)k

22、=0:N/2-1;subplot(3,2,3);stem(k,abs(X16k),'.');box ontitle('(c) 16點頻域采樣');xlabel('k');ylabel('|X_1_6(k)|');axis(0,8,0,200)n1=0:N/2-1;subplot(3,2,4);stem(n1,x16n,'.');box ontitle('(d) 16點IDFTX_1_6(k)');xlabel('n');ylabel('x_1_6(n)');axis(

23、0,32,0,20)k=0:N-1;subplot(3,2,5);stem(k,abs(X32k),'.');box ontitle('(e) 32點頻域采樣');xlabel('k');ylabel('|X_3_2(k)|');axis(0,16,0,200)n1=0:N-1;subplot(3,2,6);stem(n1,x32n,'.');box ontitle('(f) 32點IDFTX_3_2(k)');xlabel('n');ylabel('x_3_2(n)'

24、;);axis(0,32,0,20)10.2.3 實驗程序運行結果1 時域采樣理論的驗證程序運行結果exp2a.m如圖10.3.2所示。由圖可見,采樣序列的頻譜的確是以采樣頻率為周期對模擬信號頻譜的周期延拓。當采樣頻率為1000Hz時頻譜混疊很??;當采樣頻率為300Hz時,在折疊頻率150Hz附近頻譜混疊很嚴重;當采樣頻率為200Hz時,在折疊頻率110Hz附近頻譜混疊更很嚴重。圖10.2.22 時域采樣理論的驗證程序exp2b.m運行結果如圖10.3.3所示。圖10.3.3該圖驗證了頻域采樣理論和頻域采樣定理。對信號x(n)的頻譜函數X(ej)在0,2上等間隔采樣N=16時, N點IDFT得

25、到的序列正是原序列x(n)以16為周期進行周期延拓后的主值區(qū)序列:由于N<M,所以發(fā)生了時域混疊失真,因此。與x(n)不相同,如圖圖10.3.3(c)和(d)所示。當N=32時,如圖圖10.3.3(c)和(d)所示,由于N>M,頻域采樣定理,所以不存在時域混疊失真,因此。與x(n)相同。10.2.4 簡答思考題 先對原序列x(n)以N為周期進行周期延拓后取主值區(qū)序列,再計算N點DFT則得到N點頻域采樣:10.3實驗三:用FFT對信號作頻譜分析10.3.1 實驗指導1實驗目的 學習用FFT對連續(xù)信號和時域離散信號進行譜分析的方法,了解可能出現(xiàn)的分析 誤差及其原因,以便正確應用FFT。

26、2. 實驗原理用FFT對信號作頻譜分析是學習數字信號處理的重要內容。經常需要進行譜分析的信號是模擬信號和時域離散信號。對信號進行譜分析的重要問題是頻譜分辨率D和分析誤差。頻譜分辨率直接和FFT的變換區(qū)間N有關,因為FFT能夠實現(xiàn)的頻率分辨率是,因此要求??梢愿鶕耸竭x擇FFT的變換區(qū)間N。誤差主要來自于用FFT作頻譜分析時,得到的是離散譜,而信號(周期信號除外)是連續(xù)譜,只有當N較大時離散譜的包絡才能逼近于連續(xù)譜,因此N要適當選擇大一些。周期信號的頻譜是離散譜,只有用整數倍周期的長度作FFT,得到的離散譜才能代表周期信號的頻譜。如果不知道信號周期,可以盡量選擇信號的觀察時間長一些。對模擬信號進

27、行譜分析時,首先要按照采樣定理將其變成時域離散信號。如果是模擬周期信號,也應該選取整數倍周期的長度,經過采樣后形成周期序列,按照周期序列的譜分析進行。3實驗步驟及內容(1)對以下序列進行譜分析。 選擇FFT的變換區(qū)間N為8和16 兩種情況進行頻譜分析。分別打印其幅頻特性曲線。 并進行對比、分析和討論。(2)對以下周期序列進行譜分析。 選擇FFT的變換區(qū)間N為8和16 兩種情況分別對以上序列進行頻譜分析。分別打印其幅頻特性曲線。并進行對比、分析和討論。(3)對模擬周期信號進行譜分析 選擇 采樣頻率,變換區(qū)間N=16,32,64 三種情況進行譜分析。分別打印其幅頻特性,并進行分析和討論。 4思考題

28、(1)對于周期序列,如果周期不知道,如何用FFT進行譜分析?(2)如何選擇FFT的變換區(qū)間?(包括非周期信號和周期信號)(3)當N=8時,和的幅頻特性會相同嗎?為什么?N=16 呢?5實驗報告要求(1)完成各個實驗任務和要求。附上程序清單和有關曲線。(2)簡要回答思考題。 10.3.2 實驗程序清單%第10章實驗3程序exp3.m% 用FFT對信號作頻譜分析clear all;close all%實驗內容(1)=x1n=ones(1,4); %產生序列向量x1(n)=R4(n)M=8;xa=1:(M/2); xb=(M/2):-1:1; x2n=xa,xb; %產生長度為8的三角波序列x2(n

29、)x3n=xb,xa;X1k8=fft(x1n,8); %計算x1n的8點DFTX1k16=fft(x1n,16); %計算x1n的16點DFTX2k8=fft(x2n,8); %計算x1n的8點DFTX2k16=fft(x2n,16); %計算x1n的16點DFTX3k8=fft(x3n,8); %計算x1n的8點DFTX3k16=fft(x3n,16); %計算x1n的16點DFT%以下繪制幅頻特性曲線subplot(2,2,1);mstem(X1k8); %繪制8點DFT的幅頻特性圖title('(1a) 8點DFTx_1(n)');xlabel('/')

30、;ylabel('幅度');axis(0,2,0,1.2*max(abs(X1k8)subplot(2,2,3);mstem(X1k16); %繪制16點DFT的幅頻特性圖title('(1b)16點DFTx_1(n)');xlabel('/');ylabel('幅度');axis(0,2,0,1.2*max(abs(X1k16)figure(2)subplot(2,2,1);mstem(X2k8); %繪制8點DFT的幅頻特性圖title('(2a) 8點DFTx_2(n)');xlabel('/'

31、;);ylabel('幅度');axis(0,2,0,1.2*max(abs(X2k8)subplot(2,2,2);mstem(X2k16); %繪制16點DFT的幅頻特性圖title('(2b)16點DFTx_2(n)');xlabel('/');ylabel('幅度');axis(0,2,0,1.2*max(abs(X2k16)subplot(2,2,3);mstem(X3k8); %繪制8點DFT的幅頻特性圖title('(3a) 8點DFTx_3(n)');xlabel('/');ylab

32、el('幅度');axis(0,2,0,1.2*max(abs(X3k8)subplot(2,2,4);mstem(X3k16); %繪制16點DFT的幅頻特性圖title('(3b)16點DFTx_3(n)');xlabel('/');ylabel('幅度');axis(0,2,0,1.2*max(abs(X3k16)%實驗內容(2) 周期序列譜分析=N=8;n=0:N-1; %FFT的變換區(qū)間N=8x4n=cos(pi*n/4);x5n=cos(pi*n/4)+cos(pi*n/8);X4k8=fft(x4n); %計算x4n

33、的8點DFTX5k8=fft(x5n); %計算x5n的8點DFTN=16;n=0:N-1; %FFT的變換區(qū)間N=16x4n=cos(pi*n/4);x5n=cos(pi*n/4)+cos(pi*n/8);X4k16=fft(x4n); %計算x4n的16點DFTX5k16=fft(x5n); %計算x5n的16點DFTfigure(3)subplot(2,2,1);mstem(X4k8); %繪制8點DFT的幅頻特性圖title('(4a) 8點DFTx_4(n)');xlabel('/');ylabel('幅度');axis(0,2,0,1

34、.2*max(abs(X4k8)subplot(2,2,3);mstem(X4k16); %繪制16點DFT的幅頻特性圖title('(4b)16點DFTx_4(n)');xlabel('/');ylabel('幅度');axis(0,2,0,1.2*max(abs(X4k16)subplot(2,2,2);mstem(X5k8); %繪制8點DFT的幅頻特性圖title('(5a) 8點DFTx_5(n)');xlabel('/');ylabel('幅度');axis(0,2,0,1.2*max(

35、abs(X5k8)subplot(2,2,4);mstem(X5k16); %繪制16點DFT的幅頻特性圖title('(5b)16點DFTx_5(n)');xlabel('/');ylabel('幅度');axis(0,2,0,1.2*max(abs(X5k16)%實驗內容(3) 模擬周期信號譜分析=figure(4)Fs=64;T=1/Fs;N=16;n=0:N-1; %FFT的變換區(qū)間N=16x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T); %對x6(t)16點采樣X6k16=fft(x6n

36、T); %計算x6nT的16點DFTX6k16=fftshift(X6k16); %將零頻率移到頻譜中心 Tp=N*T;F=1/Tp; %頻率分辨率Fk=-N/2:N/2-1;fk=k*F; %產生16點DFT對應的采樣點頻率(以零頻率為中心)subplot(3,1,1);stem(fk,abs(X6k16),'.');box on %繪制8點DFT的幅頻特性圖title('(6a) 16點|DFTx_6(nT)|');xlabel('f(Hz)');ylabel('幅度');axis(-N*F/2-1,N*F/2-1,0,1.2

37、*max(abs(X6k16)N=32;n=0:N-1; %FFT的變換區(qū)間N=16x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T); %對x6(t)32點采樣X6k32=fft(x6nT); %計算x6nT的32點DFTX6k32=fftshift(X6k32); %將零頻率移到頻譜中心 Tp=N*T;F=1/Tp; %頻率分辨率Fk=-N/2:N/2-1;fk=k*F; %產生16點DFT對應的采樣點頻率(以零頻率為中心)subplot(3,1,2);stem(fk,abs(X6k32),'.');box on %繪制8點DF

38、T的幅頻特性圖title('(6b) 32點|DFTx_6(nT)|');xlabel('f(Hz)');ylabel('幅度');axis(-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k32)N=64;n=0:N-1; %FFT的變換區(qū)間N=16x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T); %對x6(t)64點采樣X6k64=fft(x6nT); %計算x6nT的64點DFTX6k64=fftshift(X6k64); %將零頻率移到頻譜中心 Tp=N*T;F=1/Tp

39、; %頻率分辨率Fk=-N/2:N/2-1;fk=k*F; %產生16點DFT對應的采樣點頻率(以零頻率為中心)subplot(3,1,3);stem(fk,abs(X6k64),'.'); box on%繪制8點DFT的幅頻特性圖title('(6a) 64點|DFTx_6(nT)|');xlabel('f(Hz)');ylabel('幅度');axis(-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k64)10.3.3 實驗程序運行結果實驗3程序exp3.m運行結果如圖10.3.1所示。圖10.3.1程序運

40、行結果分析討論:請讀者注意,用DFT(或FFT)分析頻譜,繪制頻譜圖時,最好將X(k)的自變量k換算成對應的頻率,作為橫坐標便于觀察頻譜。為了便于讀取頻率值,最好關于歸一化,即以作為橫坐標。1、實驗內容(1)圖(1a)和(1b)說明的8點DFT和16點DFT分別是的頻譜函數的8點和16點采樣;因為,所以,與的8點DFT的模相等,如圖(2a)和(3a)。但是,當N=16時,與不滿足循環(huán)移位關系,所以圖(2b)和(3b)的模不同。2、實驗內容(2),對周期序列譜分析的周期為8,所以N=8和N=16均是其周期的整數倍,得到正確的單一頻率正弦波的頻譜,僅在0.25處有1根單一譜線。如圖(4b)和(4b

41、)所示。的周期為16,所以N=8不是其周期的整數倍,得到的頻譜不正確,如圖(5a)所示。N=16是其一個周期,得到正確的頻譜,僅在0.25和0.125處有2根單一譜線, 如圖(5b)所示。 3、實驗內容(3),對模擬周期信號譜分析 有3個頻率成分,。所以的周期為0.5s。 采樣頻率。變換區(qū)間N=16時,觀察時間Tp=16T=0.25s,不是的整數倍周期,所以所得頻譜不正確,如圖(6a)所示。變換區(qū)間N=32,64 時,觀察時間Tp=0.5s,1s,是的整數周期,所以所得頻譜正確,如圖(6b)和(6c)所示。圖中3根譜線正好位于處。變換區(qū)間N=64 時頻譜幅度是變換區(qū)間N=32 時2倍,這種結果

42、正好驗證了用DFT對中期序列譜分析的理論。注意:(1)用DFT(或FFT)對模擬信號分析頻譜時,最好將X(k)的自變量k換算成對應的模擬頻率fk,作為橫坐標繪圖,便于觀察頻譜。這樣,不管變換區(qū)間N取信號周期的幾倍,畫出的頻譜圖中有效離散諧波譜線所在的頻率值不變,如圖(6b)和(6c)所示。(2)本程序直接畫出采樣序列N點DFT的模值,實際上分析頻譜時最好畫出歸一化幅度譜,這樣就避免了幅度值隨變換區(qū)間N變化的缺點。本實驗程序這樣繪圖只要是為了驗證了用DFT對中期序列譜分析的理論。10.3.4 簡答思考題思考題(1)和(2)的答案請讀者在教材3.?節(jié)找,思考題(3)的答案在程序運行結果分析討論已經

43、詳細回答。 10.4實驗四IIR數字濾波器設計及軟件實現(xiàn) 10.4.1 實驗指導1實驗目的(1)熟悉用雙線性變換法設計IIR數字濾波器的原理與方法;(2)學會調用MATLAB信號處理工具箱中濾波器設計函數(或濾波器設計分析工具fdatool)設計各種IIR數字濾波器,學會根據濾波需求確定濾波器指標參數。(3)掌握IIR數字濾波器的MATLAB實現(xiàn)方法。(3)通過觀察濾波器輸入輸出信號的時域波形及其頻譜,建立數字濾波的概念。2實驗原理設計IIR數字濾波器一般采用間接法(脈沖響應不變法和雙線性變換法),應用最廣泛的是雙線性變換法?;驹O計過程是:先將給定的數字濾波器的指標轉換成過渡模擬濾波器的指標

44、; 設計過渡模擬濾波器;將過渡模擬濾波器系統(tǒng)函數轉換成數字濾波器的系統(tǒng)函數。MATLAB信號處理工具箱中的各種IIR數字濾波器設計函數都是采用雙線性變換法。第六章介紹的濾波器設計函數butter、cheby1 、cheby2 和ellip可以分別被調用來直接設計巴特沃斯、切比雪夫1、切比雪夫2和橢圓模擬和數字濾波器。本實驗要求讀者調用如上函數直接設計IIR數字濾波器。本實驗的數字濾波器的MATLAB實現(xiàn)是指調用MATLAB信號處理工具箱函數filter對給定的輸入信號x(n)進行濾波,得到濾波后的輸出信號y(n)。3. 實驗內容及步驟(1)調用信號產生函數mstg產生由三路抑制載波調幅信號相加

45、構成的復合信號st,該函數還會自動繪圖顯示st的時域波形和幅頻特性曲線,如圖10.4.1所示。由圖可見,三路信號時域混疊無法在時域分離。但頻域是分離的,所以可以通過濾波的方法在頻域分離,這就是本實驗的目的。圖10.4.1 三路調幅信號st的時域波形和幅頻特性曲線(2)要求將st中三路調幅信號分離,通過觀察st的幅頻特性曲線,分別確定可以分離st中三路抑制載波單頻調幅信號的三個濾波器(低通濾波器、帶通濾波器、高通濾波器)的通帶截止頻率和阻帶截止頻率。要求濾波器的通帶最大衰減為0.1dB,阻帶最小衰減為60dB。提示:抑制載波單頻調幅信號的數學表示式為其中,稱為載波,fc為載波頻率,稱為單頻調制信

46、號,f0為調制正弦波信號頻率,且滿足。由上式可見,所謂抑制載波單頻調幅信號,就是2個正弦信號相乘,它有2個頻率成分:和頻和差頻,這2個頻率成分關于載波頻率fc對稱。所以,1路抑制載波單頻調幅信號的頻譜圖是關于載波頻率fc對稱的2根譜線,其中沒有載頻成分,故取名為抑制載波單頻調幅信號。容易看出,圖10.4.1中三路調幅信號的載波頻率分別為250Hz、500Hz、1000Hz。如果調制信號m(t)具有帶限連續(xù)頻譜,無直流成分,則就是一般的抑制載波調幅信號。其頻譜圖是關于載波頻率fc對稱的2個邊帶(上下邊帶),在專業(yè)課通信原理中稱為雙邊帶抑制載波 (DSB-SC) 調幅信號,簡稱雙邊帶 (DSB)

47、信號。如果調制信號m(t)有直流成分,則就是一般的雙邊帶調幅信號。其頻譜圖是關于載波頻率fc對稱的2個邊帶(上下邊帶),并包含載頻成分。(3)編程序調用MATLAB濾波器設計函數ellipord和ellip分別設計這三個橢圓濾波器,并繪圖顯示其幅頻響應特性曲線。 (4)調用濾波器實現(xiàn)函數filter,用三個濾波器分別對信號產生函數mstg產生的信號st進行濾波,分離出st中的三路不同載波頻率的調幅信號y1(n)、y2(n)和y3(n), 并繪圖顯示y1(n)、y2(n)和y3(n)的時域波形,觀察分離效果。4信號產生函數mstg清單function st=mstg%產生信號序列向量st,并顯示

48、st的時域波形和頻譜%st=mstg 返回三路調幅信號相加形成的混合信號,長度N=1600N=1600 %N為信號st的長度。Fs=10000;T=1/Fs;Tp=N*T; %采樣頻率Fs=10kHz,Tp為采樣時間t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;fc1=Fs/10;%第1路調幅信號的載波頻率fc1=1000Hz,fm1=fc1/10; %第1路調幅信號的調制信號頻率fm1=100Hzfc2=Fs/20; %第2路調幅信號的載波頻率fc2=500Hzfm2=fc2/10; %第2路調幅信號的調制信號頻率fm2=50Hzfc3=Fs/40;%第3路調幅信號的載波頻率fc

49、3=250Hz,fm3=fc3/10; %第3路調幅信號的調制信號頻率fm3=25Hzxt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t); %產生第1路調幅信號xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %產生第2路調幅信號xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %產生第3路調幅信號st=xt1+xt2+xt3; %三路調幅信號相加fxt=fft(st,N); %計算信號st的頻譜%=以下為繪圖部分,繪制st的時域波形和幅頻特性曲線=subplot(3,1,1)plot(t,st);grid;xlabel

50、('t/s');ylabel('s(t)');axis(0,Tp/8,min(st),max(st);title('(a) s(t)的波形')subplot(3,1,2)stem(f,abs(fxt)/max(abs(fxt),'.');grid;title('(b) s(t)的頻譜')axis(0,Fs/5,0,1.2);xlabel('f/Hz');ylabel('幅度')5實驗程序框圖如圖10.4.2所示,供讀者參考。調用函數mstg產生st,自動繪圖顯示st的時域波形和幅頻特

51、性曲線調用ellipord和ellip分別設計三個橢圓濾波器,并繪圖顯示其幅頻響應特性曲線。調用filter,用三個濾波器分別對信號st進行濾波,分離出三路不同載波頻率的調幅信號y1(n)、y2(n)和y3(n)繪圖顯示y1(n)、y2(n)和y3(n)的時域波形和幅頻特性曲線End圖10.4.2 實驗4程序框圖6思考題(1)請閱讀信號產生函數mstg,確定三路調幅信號的載波頻率和調制信號頻率。(2)信號產生函數mstg中采樣點數N=800,對st進行N點FFT可以得到6根理想譜線。如果取N=1000,可否得到6根理想譜線?為什么?N=2000呢?請改變函數mstg中采樣點數N的值,觀察頻譜圖

52、驗證您的判斷是否正確。(3)修改信號產生函數mstg,給每路調幅信號加入載波成分,產生調幅(AM)信號,重復本實驗,觀察AM信號與抑制載波調幅信號的時域波形及其頻譜的差別。提示:AM信號表示式:。7實驗報告要求(1)簡述實驗目的及原理。(2)畫出實驗主程序框圖,打印程序清單。(3)繪制三個分離濾波器的損耗函數曲線。(4)繪制經過濾波分理出的三路調幅信號的時域波形。(5)簡要回答思考題。10.4.2 濾波器參數及實驗程序清單1、濾波器參數選取觀察圖10.4.1可知,三路調幅信號的載波頻率分別為250Hz、500Hz、1000Hz。帶寬(也可以由信號產生函數mstg清單看出)分別為50Hz、100

53、Hz、200Hz。所以,分離混合信號st中三路抑制載波單頻調幅信號的三個濾波器(低通濾波器、帶通濾波器、高通濾波器)的指標參數選取如下:對載波頻率為250Hz的條幅信號,可以用低通濾波器分離,其指標為帶截止頻率Hz,通帶最大衰減dB;阻帶截止頻率Hz,阻帶最小衰減dB,對載波頻率為500Hz的條幅信號,可以用帶通濾波器分離,其指標為帶截止頻率Hz,Hz,通帶最大衰減dB;阻帶截止頻率Hz,Hz,Hz,阻帶最小衰減dB,對載波頻率為1000Hz的條幅信號,可以用高通濾波器分離,其指標為帶截止頻率Hz,通帶最大衰減dB;阻帶截止頻率Hz,阻帶最小衰減dB,說明:(1)為了使濾波器階數盡可能低,每個

54、濾波器的邊界頻率選擇原則是盡量使濾波器過渡帶寬盡可能寬。(2)與信號產生函數mstg相同,采樣頻率Fs=10kHz。(3)為了濾波器階數最低,選用橢圓濾波器。按照圖10.4.2 所示的程序框圖編寫的實驗程序為exp4.m。2、實驗程序清單%實驗4程序exp4.m% IIR數字濾波器設計及軟件實現(xiàn)clear all;close allFs=10000;T=1/Fs; %采樣頻率%調用信號產生函數mstg產生由三路抑制載波調幅信號相加構成的復合信號st st=mstg;%低通濾波器設計與實現(xiàn)=fp=280;fs=450;wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF

55、指標(低通濾波器的通、阻帶邊界頻)N,wp=ellipord(wp,ws,rp,rs); %調用ellipord計算橢圓DF階數N和通帶截止頻率wpB,A=ellip(N,rp,rs,wp); %調用ellip計算橢圓帶通DF系統(tǒng)函數系數向量B和Ay1t=filter(B,A,st); %濾波器軟件實現(xiàn)% 低通濾波器設計與實現(xiàn)繪圖部分figure(2);subplot(3,1,1);myplot(B,A); %調用繪圖函數myplot繪制損耗函數曲線yt='y_1(t)'subplot(3,1,2);tplot(y1t,T,yt); %調用繪圖函數tplot繪制濾波器輸出波形%帶通濾波器設計與實現(xiàn)=fpl=440;fpu=56

溫馨提示

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

評論

0/150

提交評論