MATLAB下的數(shù)字信號處理實現(xiàn)示例(6月10號江城xin)_第1頁
MATLAB下的數(shù)字信號處理實現(xiàn)示例(6月10號江城xin)_第2頁
MATLAB下的數(shù)字信號處理實現(xiàn)示例(6月10號江城xin)_第3頁
MATLAB下的數(shù)字信號處理實現(xiàn)示例(6月10號江城xin)_第4頁
MATLAB下的數(shù)字信號處理實現(xiàn)示例(6月10號江城xin)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、MATLAB下的數(shù)字信號處理實現(xiàn)示例 附錄一 信號、系統(tǒng)和系統(tǒng)響應(yīng) 1、理想采樣信號序列 (1)首先產(chǎn)生信號x(n),0=n=50 n=0:50; %定義序列的長度是50 A=444.128; %設(shè)置信號有關(guān)的參數(shù) a=50*sqrt(2.0)*pi; T=0.001; %采樣率 w0=50*sqrt(2.0)*pi; x=A*exp(-a*n*T).*sin(w0*n*T); %pi是MATLAB定義的,信號乘可采用“.*” close all %清除已經(jīng)繪制的x(n)圖形 subplot(3,1,1);stem(x); %繪制x(n)的圖形 title(理想采樣信號序列); (2)繪制信號

2、x(n)的幅度譜和相位譜 k=-25:25; W=(pi/12.5)*k; X=x*(exp(-j*pi/12.5).(n*k); magX=abs(X); %繪制x(n)的幅度譜 subplot(3,1,2);stem(magX);title(理想采樣信號序列的幅度譜); angX=angle(X); %繪制x(n)的相位譜 subplot(3,1,3);stem(angX) ; title (理想采樣信號序列的相位譜) (3)改變參數(shù)為:T=1, =2.0734, a=0.4, A=1n=0:50; %定義序列的長度是50 A=1; %設(shè)置信號有關(guān)的參數(shù) a=0.4; T=1; %采樣率

3、w0=2.0734; x=A*exp(-a*n*T).*sin(w0*n*T); %pi是MATLAB定義的,信號乘可采用“.*” close all %清除已經(jīng)繪制的x(n)圖形 subplot(3,1,1);stem(x); %繪制x(n)的圖形 title(理想采樣信號序列); k=-25:25; W=(pi/12.5)*k; X=x*(exp(-j*pi/12.5).(n*k); magX=abs(X); %繪制x(n)的幅度譜 subplot(3,1,2);stem(magX);title(理想采樣信號序列的幅度譜); angX=angle(X); %繪制x(n)的相位譜 subpl

4、ot(3,1,3);stem(angX) ; title (理想采樣信號序列的相位譜) 2、單位脈沖序列 在MatLab中,這一函數(shù)可以用zeros函數(shù)實現(xiàn): n=1:50; %定義序列的長度是50 x=zeros(1,50); %注意:MATLAB中數(shù)組下標(biāo)從1開始 x(1)=1; close all; subplot(3,1,1);stem(x);title(單位沖擊信號序列); k=-25:25; X=x*(exp(-j*pi/12.5).(n*k); magX=abs(X); %繪制x(n)的幅度譜 subplot(3,1,2);stem(magX);title(單位沖擊信號的幅度譜)

5、; angX=angle(X); %繪制x(n)的相位譜 subplot(3,1,3);stem(angX) ; title (單位沖擊信號的相位譜) 4、特定沖擊串:n=1:50; %定義序列的長度是50 x=zeros(1,50); %注意:MATLAB中數(shù)組下標(biāo)從1開始 x(1)=1;x(2)=2.5;x(3)=2.5;x(4)=1; close all; subplot(3,1,1);stem(x);title(單位沖擊信號序列); k=-25:25; X=x*(exp(-j*pi/12.5).(n*k); magX=abs(X); %繪制x(n)的幅度譜 subplot(3,1,2)

6、;stem(magX);title(單位沖擊信號的幅度譜); angX=angle(X); %繪制x(n)的相位譜 subplot(3,1,3);stem(angX) ; title (單位沖擊信號的相位譜) #在MATLAB中。提供了卷積函數(shù)conv,即y=conv(x,h),調(diào)用十分方便。例如: n=1:50; %定義序列的長度是50 hb=zeros(1,50); %注意:MATLAB中數(shù)組下標(biāo)從1開始 hb(1)=1;hb(2)=2.5;hb(3)=2.5;hb(4)=1; close all; subplot(3,1,1);stem(hb);title(系統(tǒng)hbn); m=1:50;

7、 %定義序列的長度是50 A=444.128; %設(shè)置信號有關(guān)的參數(shù) a=50*sqrt(2.0)*pi; T=0.001; %采樣率 w0=50*sqrt(2.0)*pi; x=A*exp(-a*m*T).*sin(w0*m*T); %pi是MATLAB定義的,信號乘可采用“.*” subplot(3,1,2);stem(x);title(輸入信號xn); y=conv(x,hb); subplot(3,1,3);stem(y);title(輸出信號yn); 6、卷積定律驗證 k=-25:25; X=x*(exp(-j*pi/12.5).(n*k); magX=abs(X); %繪制x(n)

8、的幅度譜 subplot(3,2,1);stem(magX);title(輸入信號的幅度譜); angX=angle(X); %繪制x(n)的相位譜 subplot(3,2,2);stem(angX) ; title (輸入信號的相位譜) Hb=hb*(exp(-j*pi/12.5).(n*k); magHb=abs(Hb); %繪制hb(n)的幅度譜 subplot(3,2,3);stem(magHb);title(系統(tǒng)響應(yīng)的幅度譜); angHb=angle(Hb); %繪制hb(n)的相位譜 subplot(3,2,4);stem(angHb) ; title (系統(tǒng)響應(yīng)的相位譜) n=

9、1:99; k=1:99; Y=y*(exp(-j*pi/12.5).(n*k); magY=abs(Y); %繪制y(n)的幅度譜 subplot(3,2,5);stem(magY);title(輸出信號的幅度譜); angY=angle(Y); %繪制y(n)的相位譜 subplot(3,2,6);stem(angY) ; title (輸出信號的相位譜) %以下將驗證的結(jié)果顯示 XHb=X.*Hb; figure,Subplot(2,1,1);stem(abs(XHb);title(x(n)的幅度譜與hb(n)幅度譜相乘); Subplot(2,1,2);stem(abs(Y);titl

10、e(y(n)的幅度譜);axis(0,60,0,8000) %連續(xù)信號的傅里葉變化,在matlab中實現(xiàn)命令為fft( ),求連續(xù)信號的福譜圖則用abs(fft(x)。n=0:15; %定義序列的長度是15 p=8;q=2; x=exp(-1*(n-p).2/q); close all; subplot(3,1,1); stem(abs(fft(x) p=8;q=4; x=exp(-1*(n-p).2/q); subplot(3,1,2); stem(abs(fft(x) p=8;q=8; x=exp(-1*(n-p).2/q); subplot(3,1,3); stem(abs(fft(x)

11、 n=0:15; %定義序列的長度是15 a=0.1;f=0.0625; x=exp(-a*n).*sin(2*pi*f*n); close all; subplot(2,1,1); stem(x); subplot(2,1,2); stem(abs(fft(x) for i=0:3 x(i)=i+1;x(i+4)=8-(i+4); end for i=8:15 x(i)=0; end close all; subplot(2,1,1); stem(x); subplot(2,1,2); stem(abs(fft(x,16) % fft(x,16)求關(guān)于x的16個點的傅立葉變換附錄三 窗函數(shù)法

12、設(shè)計FIR濾波器 一、在MATLAB中產(chǎn)生窗函數(shù)十分簡單: (1)矩形窗(Rectangle Window) 調(diào)用格式:w=boxcar(n),根據(jù)長度n產(chǎn)生一個矩形窗w。 (2)三角窗(Triangular Window) 調(diào)用格式:w=triang(n) ,根據(jù)長度n產(chǎn)生一個三角窗w。 (3)漢寧窗(Hanning Window) 調(diào)用格式:w=hanning(n) ,根據(jù)長度n產(chǎn)生一個漢寧窗w。 (4)海明窗(Hamming Window) 調(diào)用格式:w=hamming(n) ,根據(jù)長度n產(chǎn)生一個海明窗w。 (5)布拉克曼窗(Blackman Window) 調(diào)用格式:w=blackma

13、n(n) ,根據(jù)長度n產(chǎn)生一個布拉克曼窗w。 (6)愷撒窗(Kaiser Window) 調(diào)用格式:w=kaiser(n,beta) ,根據(jù)長度n和影響窗函數(shù)旁瓣的參數(shù)產(chǎn)生一個愷撒窗w。 二、基于窗函數(shù)的FIR濾波器設(shè)計 利用MATLAB提供的函數(shù)firl 來實現(xiàn) 調(diào)用格式:firl (n,Wn,ftype,Window),n為階數(shù)、Wn是截止頻率,取值范圍為0 Wn 1.0(如果輸入是形如W1 W2的矢量時,本函數(shù)將設(shè)計帶通濾波器,其通帶為W1W2)、ftype是濾波器的類型(低通-省略該參數(shù)、高通-ftype=high、帶阻-ftype=stop)、Window是窗函數(shù)。 例 設(shè)計一個長度

14、為8的線性相位FIR濾波器。 Window=boxcar(8); %產(chǎn)生長度為8的矩形窗b=fir1(7,0.4,Window); freqz(b,1) % freqz()計算濾波器的頻率響應(yīng),此處freqz(b,1)等同于freqz(b),只是看作帶分母且系數(shù)為1Window=blackman(8); %加布拉克曼窗b=fir1(7,0.4,Window); freqz(b,1) 例 設(shè)計線性相位帶通濾波器,其長度N=15,上下邊帶截止頻率分別為W1= 0.3,w2=0.5 Window=blackman(16); b=fir1(15,0.3 0.5,Window); freqz(b,1)

15、設(shè)計指標(biāo)為:p=0.2 Rp=0.25dB a=0.3 As=50dB 的低通數(shù)字FIR濾波器 wp=0.2*pi;ws=0.3*pi; tr_width=ws-wp; M=ceil(6.6*pi/tr_width)+1; N=0:1:M-1; wc=(ws+wp)/2; hd=ideal_lp(wc,M); w_ham=(boxcar(M); h=hd.*w_ham; db,mag,pha,grd,w=freqz_m(h,1); delta_w=2*pi/1000; Rp=-(min(db(1:1:wp/delta_w+1); As=-round(max(db(ws/delta_w+1:1:

16、501); Close all; subplot(2,2,1);stem(hd);title(理想沖擊響應(yīng)) axis(0 M-1 0.1 0.3);ylabel(hdn); subplot(2,2,2);stem(w_ham);title(漢明窗); axis(0 M-1 0 1.1);ylabel(wn); subplot(2,2,3);stem(h);title(實際沖擊響應(yīng)); axis(0 M-1 0.1 0.3);ylabel(hn); subplot(2,2,4);plot(w/pi,db); title(衰減幅度); axis(0 1 -100 10);ylabel(Decib

17、les); 附錄四 IIR濾波器的實現(xiàn) MATLAB中濾波器的分析和實現(xiàn) 1、freqs函數(shù):模擬濾波器的頻率響應(yīng) 例 系統(tǒng)傳遞函數(shù)為 的模擬濾波器,在MATLAB中可以用以下程序來實現(xiàn): a=1 0.4 1; b=0.2 0.3 1; w=logspace(-1,1); %產(chǎn)生從10-1到101之間的50個等間距點,即50個頻率點freqs(b,a,w) %根據(jù)輸入的參數(shù)繪制幅度譜和相位譜 2、freqz函數(shù):數(shù)字濾波器的頻率響應(yīng) 程序來實現(xiàn): a=1 0.4 1; b=0.2 0.3 1; %根據(jù)輸入的參數(shù)繪制幅度譜和相位譜,得到0到之間128個點處的頻率響應(yīng) freqz(b,a,128)

18、 3、ButterWorth模擬和數(shù)字濾波器 (1)butterd函數(shù):ButterWorth濾波器階數(shù)的選擇。 調(diào)用格式:n,Wn=butterd(Wp,Ws,Rp,Rs),在給定濾波器性能的情況下(通帶臨界頻率Wp、阻帶臨界頻率Ws、通帶內(nèi)最大衰減Rp和阻帶內(nèi)最小衰減Rs),計算ButterWorth濾波器的階數(shù)n和截止頻率Wn。 相同參數(shù)條件下的模擬濾波器則調(diào)用格式為:n,Wn=butterd(Wp,Ws,Rp,Rs,s) (2)butter函數(shù):ButterWorth濾波器設(shè)計。 調(diào)用格式:b,a=butter(n,Wn),根據(jù)階數(shù)n和截止頻率Wn計算ButterWorth濾波器分子分

19、母系數(shù)(b為分子系數(shù)的矢量形式,a為分母系數(shù)的矢量形式)。 相同參數(shù)條件下的模擬濾波器則調(diào)用格式為:b,a=butter(n,Wn,s) 例 采樣頻率為1Hz,通帶臨界頻率fp =0.2Hz,通帶內(nèi)衰減小于1dB(p=1);阻帶臨界頻率fs=0.3Hz,阻帶內(nèi)衰減大于25dB(s=25)。設(shè)計一個數(shù)字濾波器滿足以上參數(shù)。 n,Wn=buttord(0.2,0.3,1,25); b,a=butter(n,Wn); freqz(b,a,512,1); 4、Chebyshev模擬和數(shù)字濾波器 (1)cheb1ord函數(shù):Chebyshev型濾波器階數(shù)計算。 調(diào)用格式:n,Wn=cheb1ord(Wp

20、,Ws,Rp,Rs),在給定濾波器性能的情況下(通帶臨界頻率Wp、阻帶臨界頻率Ws、通帶內(nèi)波紋Rp和阻帶內(nèi)衰減Rs),選擇Chebyshev型濾波器的最小階n和截止頻率Wn。 (2)cheby1函數(shù):Chebyshev型濾波器設(shè)計。 調(diào)用格式:b,a=butter(n,Rp,Wn),根據(jù)階數(shù)n、通帶內(nèi)波紋Rp和截止頻率Wn計算ButterWorth濾波器分子分母系數(shù)(b為分子系數(shù)的矢量形式,a為分母系數(shù)的矢量形式)。 注:Chebyshev型濾波器所用函數(shù)和型類似,分別是cheb2ord、cheby2。 例 實現(xiàn)上例中的濾波器 n,Wn=cheb1ord(0.2,0.3,1,25); b,a=cheby1(n,1,Wn); freqz(b,a,512,1); (1)脈沖響應(yīng)不變法設(shè)計數(shù)字ButterWorth濾波器 調(diào)用格式:bz,az=impinvar(b,a,Fs),再給定模

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論