MATLAB在信號處理中的應(yīng)用_第1頁
MATLAB在信號處理中的應(yīng)用_第2頁
MATLAB在信號處理中的應(yīng)用_第3頁
MATLAB在信號處理中的應(yīng)用_第4頁
MATLAB在信號處理中的應(yīng)用_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

MATLAB在信號處理中的應(yīng)用1、MATLAB在采樣與波形發(fā)生的應(yīng)用2、MATLAB在數(shù)字濾波器中的應(yīng)用3、Simulink信號處理仿真的應(yīng)用介紹1、MATLAB在采樣與波形發(fā)生的應(yīng)用數(shù)字信號處理的對象,是在采樣時鐘的控制之下,通過A/D轉(zhuǎn)換器一定的采樣頻率對模擬信號進(jìn)行采樣得到的。根據(jù)采樣定理,采樣率必須大于模擬信號的最高采樣率(Nyquist)的2倍。但是在許多情況下,要求信號以不同的頻率采樣,改變采樣時鐘雖然可行,但是并不可取。這時需要對采樣數(shù)據(jù)進(jìn)行處理:或者用抽取的方法降低其采樣率(下采樣);或者用內(nèi)插的方法提高其采樣率(上采樣);或者兩者兼有之(重采樣)。在程序設(shè)計(jì)階段,為了對程序進(jìn)行調(diào)試或驗(yàn)證算法的正確性,需要一些特性已知的信號(簡單的如正弦、方波、三角波等),所以可以由Matlab提供一些波形產(chǎn)生函數(shù)。1、MATLAB在采樣與波形發(fā)生的應(yīng)用常用的信號發(fā)生函數(shù)有:(1)upfirdn()改變信號的采樣率(用FIR濾波器)(2)decimat()下采樣(先經(jīng)低通濾波)(3)interp()上采樣(使用了的通濾波器)(4)resample()改變信號的采樣率(5)chirp()線性調(diào)頻信號發(fā)生器(6)diric()周期sinc函數(shù)(Dirichlet函數(shù))(7)gauspuls()高斯函數(shù)調(diào)幅的正弦波發(fā)生器(8)pulstran()通過對連續(xù)函數(shù)或脈沖原型進(jìn)行采樣而得到的脈沖序列的發(fā)生器(9)rectpuls()非周期矩形波發(fā)生器(10)sawtooth()鋸齒波和三角波發(fā)生器(11)sinc()sinc函數(shù)發(fā)生器(12)square()方波發(fā)生器(13)tripuls()非周期三角脈沖發(fā)生器下面介紹一些常見的信號函數(shù):1、MATLAB在采樣與波形發(fā)生的應(yīng)用1.1連續(xù)信號函數(shù)1、指數(shù)信號形式:y=A*exp(a*t)2、正/余弦信號形式:y=A*sin(w0*t+f)

或:y=A*cos(w0*t+f)3、抽樣函數(shù)用sinc函數(shù)表示,其定義為:sinc(t)=sin(πt)/(πt)MATLAB語言調(diào)用形式:y=sinc(t)1、MATLAB在采樣與波形發(fā)生的應(yīng)用舉例:t=-3*pi:pi/100:3*pi;y=sinc(t/pi);plot(t,y),gridon1、MATLAB在采樣與波形發(fā)生的應(yīng)用4、矩形脈沖信號MATLAB語言調(diào)用形式:y=rectpuls(t,width)產(chǎn)生一個幅值為1,寬度為width、相對于t=0點(diǎn)左右對稱的矩形波信號t=0:0.001:4;T=1;y=rectpuls(t-2*T,2*T);plot(t,y),gridonaxis([0,4,-0.5,1.5])%以t-2*T=0,即t=2*T為對稱中心1、MATLAB在采樣與波形發(fā)生的應(yīng)用周期性矩形脈沖信號MATLAB語言調(diào)用形式:y=square(t,duty)產(chǎn)生一個周期為2π,幅值為±1的周期性方波,duty表示占空比(dutycycle)t=-0.1:0.001:0.1;y=2*square(2*pi*30*t,75);plot(t,y)gridonaxis([-0.1,0.1,-2.5,2.5])%w=2*pi*30%占空比75%1、MATLAB在采樣與波形發(fā)生的應(yīng)用5、三角脈沖信號MATLAB語言調(diào)用形式:y=tripuls(t,width,skew)產(chǎn)生一個最大幅值為1,寬度為width、斜度為skew的三角波信號.t=-3:0.001:3;y=tripuls(t,4,0.5);plot(t,y)gridonaxis([-3,3,-1.5,1.5])1、MATLAB在采樣與波形發(fā)生的應(yīng)用周期性三角脈沖信號MATLAB語言調(diào)用形式:y=sawtooth(t,width)產(chǎn)生一個周期為2π,最大幅值為1,最小幅值為-1周期性三角波信號.t=-5*pi:0.0001:5*pi;y=sawtooth(t,0.5);plot(t,y)gridonaxis([-16,16,-1.5,1.5])1、MATLAB在采樣與波形發(fā)生的應(yīng)用6、一般周期性脈沖信號MATLAB語言調(diào)用形式:y=pulstran(t,d,’func’)依據(jù)名為func的連續(xù)函數(shù)并以之為一個周期,從而產(chǎn)生一串周期性的連續(xù)函數(shù)。d用于指定周期性的偏移量,這個func函數(shù)會被計(jì)算length(d)次,最后值相當(dāng)于:y=func(t-d(1))+func(t-d(2))+...一般的調(diào)用形式為:y=pulstran(t,d,’func’,p1,p2)其中,p1,p2為func函數(shù)需要的額外輸入?yún)?shù)值,最后值相當(dāng)于:y=func(t-d(1),p1,p2,...)+func(t-d(2),p1,p2,...)+程序舉例:t=0:0.0001:1;d=0:1/3:1;y=pulstran(t,d,'rectpuls',0.1);figure(1)plot(t,y)gridonaxis([0,1,-0.1,1.5])%p1=0.1,為帶寬yy=pulstran(t,d,'tripuls',0.1,-1);figure(2)plot(t,yy)gridonaxis([0,1,-0.1,1.5])%0.1,1位寬度和斜度1、MATLAB在采樣與波形發(fā)生的應(yīng)用舉例:產(chǎn)生一頻率為10kHz的周期高斯脈沖信號,其帶寬為50%。脈沖重復(fù)的頻率為1kHz,采樣率為50kHz,脈沖序列的長度為10ms。重復(fù)時幅度每次衰減為原來的0.8倍。t=0:1/50e3:10e-3;d=[0:0.001:0.01;0.8.^(0:10)]';y=pulstran(t,d,'gauspuls',1000,0.5);plot(t,y);xlabel('時間/s');ylabel('幅值')1、MATLAB在采樣與波形發(fā)生的應(yīng)用1.2離散信號函數(shù)1、指數(shù)序列Y=a.^k2、正弦序列離散的指數(shù)序列與正弦序列用MATLAB的表示與連續(xù)信號類似,只不過用stem函數(shù)而不是用plot函數(shù)來畫出序列的波形.3、單位脈沖序列1、MATLAB在采樣與波形發(fā)生的應(yīng)用k=-50:50;y=[zeros(1,50),1,zeros(1,50)];stem(k,y)1、MATLAB在采樣與波形發(fā)生的應(yīng)用4、單位階躍序列k=-50:50;y=[zeros(1,50),ones(1,51)];stem(k,y),axis([-60,60,-0.5,1.5])5、變換函數(shù)

1)一維快速離散Fourier變換:語法格式:y=fft(x)。y是計(jì)算信號x的快速離散傅里葉變換。當(dāng)x為矩陣時,計(jì)算x中每一列信號的離散傅里葉變換。當(dāng)x的長度為2的冪時,用基2算法;否則,采用較慢的分裂基算法。

y=fft(x,n)。計(jì)算n點(diǎn)的FFT。當(dāng)x的長度大于n時,截?cái)鄕;否則補(bǔ)零。2)一維快速離散Fourier逆變換:

語法格式:y=ifft(x)。y是計(jì)算信號x的快速離散傅里葉變換逆變換。

y=ifft(x,n)。計(jì)算n點(diǎn)的快速離散傅里葉變換的逆變換。3)離散余弦變換(DCT)

語法格式:y=dct(x)。計(jì)算信號x的離散余弦變換。

y=dct(x,n)。計(jì)算n點(diǎn)的離散余弦變換。當(dāng)x的長度大于n時,截?cái)鄕;否則補(bǔ)零。離散余弦逆變換可由函數(shù)idct實(shí)現(xiàn)。2、MATLAB在數(shù)字濾波器中的應(yīng)用濾波器是指用來對輸入信號進(jìn)行濾波的硬件或軟件。如果濾波器的輸入、輸出都是離散時間信號,則該濾波器的沖擊響應(yīng)也必然是離散的,這樣的濾波器定義為數(shù)字濾波器。數(shù)字濾波器用硬件實(shí)現(xiàn)的基本部件包括延遲器、乘法器和加法器;如果用軟件來實(shí)現(xiàn)時,它即是一段線性卷積程序。軟件實(shí)現(xiàn)的優(yōu)點(diǎn)是系統(tǒng)函數(shù)具有可變性,僅依賴于算法結(jié)構(gòu),而且易于獲得較理想的濾波功能。Matlab的信號處理工具箱的兩個基本組成就是濾波器的設(shè)計(jì)與實(shí)現(xiàn)以及譜分析。工具箱提供了豐富而簡便的設(shè)計(jì)、實(shí)現(xiàn)FIR和IIR的方法,使原來繁瑣的程序設(shè)計(jì)簡化成函數(shù)調(diào)用,特別是濾波器的表達(dá)方式和形式之間的相互轉(zhuǎn)換顯得十分簡便,為濾波器的設(shè)計(jì)和實(shí)現(xiàn)開辟了一片廣闊的天地。2、MATLAB在數(shù)字濾波器中的應(yīng)用2.1、模擬低通濾波器MATLAB中給出了幾種不同類型的模擬濾波器原型。低通模擬Butterworth濾波器原型——buttap

[Z,P,K]=buttap(n);

其中,Z,P,K分別是n階Butterworth濾波器的零點(diǎn)、極點(diǎn)和增益。低通模擬ChebyshevI型濾波器原型——cheb1ap

[Z,P,K]=cheb1ap(n,rp)其中,Z,P,K分別是n階ChebyshevI型濾波器的零點(diǎn)、極點(diǎn)和增益。濾波器在通帶內(nèi)的最大衰減為rp。ChebyshevI型濾波器的主要特點(diǎn)是在阻帶內(nèi)達(dá)到最大平滑。低通模擬ChebyshevⅡ型濾波器原型——cheb2ap

[Z,P,K]=cheb2ap(n,rs)2、MATLAB在數(shù)字濾波器中的應(yīng)用其中,Z,P,K分別是n階ChebyshevⅡ型濾波器的零點(diǎn)、極點(diǎn)和增益。濾波器在阻帶內(nèi)的最小衰減為rs。ChebyshevⅡ型濾波器的主要特點(diǎn)是在通帶內(nèi)達(dá)到最大平滑。低通模擬橢圓濾波器原型——ellipap

[Z,P,K]=ellipap(n,rp,rs)其中,

Z,P,K分別是n階橢圓濾波器的零點(diǎn)、極點(diǎn)和增益。濾波器在通帶內(nèi)的最大衰減為rp,在阻帶內(nèi)的最小衰減為rs。低通模擬Bessel濾波器——besselap

[Z,P,K]=besselap(n)其中,

Z,P,K分別是n階低通模擬Bessel濾波器的零點(diǎn)、極點(diǎn)和增益。2、MATLAB在數(shù)字濾波器中的應(yīng)用分別設(shè)計(jì)20階ChebyshevI型低通模擬濾波器,通帶內(nèi)的最大衰減為0.3dB;20階低通模擬ChebyshevⅡ型濾波器阻帶內(nèi)的最小衰減為45dB,并給出其頻率特性圖。[z1,p1,k1]=cheb1ap(20,0.3);[num1,den1]=zp2tf(z1,p1,k1);%將零極點(diǎn)形式轉(zhuǎn)換為系統(tǒng)函數(shù)形式[z2,p2,k2]=cheb2ap(20,45);[num2,den2]=zp2tf(z2,p2,k2);figure(1)freqs(num1,den1)%求頻率響應(yīng)

figure(2)freqs(num2,den2)2、MATLAB在數(shù)字濾波器中的應(yīng)用2、MATLAB在數(shù)字濾波器中的應(yīng)用對于模擬高通、帶通、帶阻濾波器,其設(shè)計(jì)方法為先將要設(shè)計(jì)的濾波器的技術(shù)指標(biāo)通過某種頻率轉(zhuǎn)換關(guān)系轉(zhuǎn)換成低通濾波器的技術(shù)指標(biāo),并依據(jù)這些指標(biāo)設(shè)計(jì)出低通濾波器的轉(zhuǎn)移函數(shù),然后再依據(jù)頻率轉(zhuǎn)換關(guān)系變成所設(shè)計(jì)的濾波器的轉(zhuǎn)移函數(shù)。

MATLAB的信號處理工具箱提供了從低通濾波器向低通、高通、帶通、帶阻濾波器轉(zhuǎn)換的函數(shù)。(1)低通向低通的轉(zhuǎn)變——lp2lp

[numt,dent]=lp2lp(num,den,Wo)

[At,Bt,Ct,Dt]=lp2lp(A,B,C,D,Wo)

這兩條語句分別將表示成傳遞函數(shù)形式與狀態(tài)方程形式的具有任意截止頻率的模擬低通濾波器原型轉(zhuǎn)換成截止頻率為Wo的低通濾波器。2、MATLAB在數(shù)字濾波器中的應(yīng)用(2)低通向高通的轉(zhuǎn)變——lp2hp

[numt,dent]=lp2hp(num,den,Wo)

[At,Bt,Ct,Dt]=lp2hp(A,B,C,D,Wo)

這兩條語句分別將表示成傳遞函數(shù)形式與狀態(tài)方程形式的具有任意截止頻率的模擬低通濾波器原型轉(zhuǎn)換成截止頻率為Wo的高通濾波器。3)低通向帶通的轉(zhuǎn)變——lp2bp

[numt,dent]=lp2bp(num,den,Wo,Bw)

[At,Bt,Ct,Dt]=lp2bp(A,B,C,D,Wo,Bw)這兩條命令分別將表示成傳遞函數(shù)形式與狀態(tài)方程形式的具有任意截止頻率的模擬低通濾波器原型轉(zhuǎn)換成中心頻率為Wo、帶寬為Bw的帶通濾波器。(4)低通向高通的轉(zhuǎn)變——lp2bs

[numt,dent]=lp2bs(num,den,Wo,Bw)

[At,Bt,Ct,Dt]=lp2bs(A,B,C,D,Wo,Bw)

這兩條命令分別將表示成傳遞函數(shù)形式與狀態(tài)方程形式的具有任意截止頻率的模擬低通濾波器原型轉(zhuǎn)換成中心頻率為Wo、帶寬為Bw的帶阻濾波器2、MATLAB在數(shù)字濾波器中的應(yīng)用采用兩種方法設(shè)計(jì)10階模擬橢圓低通濾波器,通帶的最大衰減為3dB,阻帶內(nèi)的最大衰減為40dB,截止頻率為8πrad。[z,p,k]=ellipap(10,3,40);

%根據(jù)要求設(shè)計(jì)零極點(diǎn)形式低通模擬橢圓濾波器[A,B,C,D]=zp2ss(z,p,k);

%零極點(diǎn)形式向狀態(tài)方程形式轉(zhuǎn)換[at,bt,ct,dt]=lp2lp(A,B,C,D,8*pi);

%給定截止頻率的低通濾波器[num2,den2]=ss2tf(at,bt,ct,dt)figurefreqs(num2,den2)%求頻率響應(yīng)

%%第二種方式[z2,p2,k2]=ellipap(10,3,40);[num,den]=zp2tf(z,p,k);%零極點(diǎn)形式向傳遞函數(shù)形式轉(zhuǎn)換[num1,den1]=lp2lp(num,den,8*pi);%給定截止頻率的低通濾波器figurefreqs(num1,den1)2、MATLAB在數(shù)字濾波器中的應(yīng)用2、MATLAB在數(shù)字濾波器中的應(yīng)用為了設(shè)計(jì)數(shù)字濾波器,需要將模擬濾波器離散化,兩個離散化基本方法為沖激響應(yīng)不變法和雙線性變換法,MATLAB中也有兩種相應(yīng)的函數(shù)。(1)脈沖響應(yīng)不變法脈沖響應(yīng)不變法的基本原理:從濾波器的脈沖響應(yīng)g(t)出發(fā),對其以周期T進(jìn)行采樣得到離散序列g(shù)(nT)作為數(shù)字濾波器的脈沖響應(yīng)。相應(yīng)的MATLAB函數(shù)為impinvar,具體格式為

[bz,az]=impinvar(b,a,fs)

將具有[b,a]模擬濾波器傳遞函數(shù)模型轉(zhuǎn)換成采樣頻率為fs的數(shù)字濾波器的傳遞函數(shù)[bz,az]。如果在函數(shù)中沒有指定采樣頻率fs,默認(rèn)為1Hz。2、MATLAB在數(shù)字濾波器中的應(yīng)用(2)雙線性變換法為了克服脈沖響應(yīng)不變法產(chǎn)生的頻率混疊現(xiàn)象,模擬向數(shù)字的轉(zhuǎn)變通常采用雙線性變換法。相應(yīng)的MATLAB函數(shù)為bilinear,具體格式為(1)[zd,pd,kd]=bilinear(z,p,k,fs)(2)[numd,dend]=bilinear(num,den,fs)(3)[Ad,Bd,Cd,Dd]=bilinear(A,B,C,D,fs)

以上三個命令分別將零極點(diǎn)形式、傳遞函數(shù)形式和狀態(tài)方程形式的模擬濾波器轉(zhuǎn)換成相應(yīng)形式的數(shù)字濾波器,其中fs是采樣頻率。2、MATLAB在數(shù)字濾波器中的應(yīng)用2.2、無限長單位脈沖響應(yīng)濾波器–IIRMATLAB設(shè)計(jì)IIR數(shù)字濾波器可分為以下幾步來實(shí)現(xiàn):(1)按一定規(guī)則將數(shù)字濾波器的技術(shù)指標(biāo)轉(zhuǎn)換成模擬低通濾波器的技術(shù)指標(biāo);(2)根據(jù)轉(zhuǎn)換后的技術(shù)指標(biāo)確定濾波器的最小階數(shù)和截止頻率;(3)利用最小階數(shù)產(chǎn)生模擬低通濾波器原型;(4)利用截止頻率把低通濾波器原型轉(zhuǎn)換成模擬低通、高通、帶通或帶阻濾波器;(5)利用沖激響應(yīng)不變法或雙線性變換法把模擬濾波器轉(zhuǎn)換成數(shù)字濾波器。2、MATLAB在數(shù)字濾波器中的應(yīng)用函數(shù)名功能格式buttord計(jì)算Butterworth濾波器的階數(shù)和截止頻率[N,Wc]=buttord(wp,ws,Rp,Rs,’s’)cheb1ord計(jì)算ChebyshevI型濾波器的階數(shù)[N,Wc]=cheb1ord(wp,ws,Rp,Rs,’s’)cheb2ord計(jì)算ChebyshevⅡ型濾波器的階數(shù)[N,Wc]=cheb1ord(wp,ws,Rp,Rs,’s’)ellipord計(jì)算橢圓濾波器的最小階數(shù)[N,Wc]=ellipord(wp,ws,Rp,Rs,’s’)其中,N為濾波器階數(shù),Wc為截止頻率,wp、ws是通帶和阻帶的截止頻率,Wc、wp、ws均為被采樣頻率歸一化后的頻率,范圍是[0,1]。用到相關(guān)函數(shù)見表格:2、MATLAB在數(shù)字濾波器中的應(yīng)用MATLAB還提供了幾個直接設(shè)計(jì)IIR數(shù)字濾波器的函數(shù),這些函數(shù)也要與數(shù)字濾波器的階數(shù)選擇配合使用。

如設(shè)計(jì)Butterworth數(shù)字濾波器的butter函數(shù):(1)[b,a]=butter(n,Wn):設(shè)計(jì)n階截止頻率為Wn的Butterworth低通數(shù)字濾波器的傳遞函數(shù)模型系數(shù)[b,a],系數(shù)長度為n+1。Wn為歸一化截止頻率,其最大值為采樣頻率的一半。當(dāng)Wn為兩元素向量Wn=[w1,w2]時,函數(shù)返回2N階的帶通數(shù)字濾波器,通帶為w1<w<w2。(2)[b,a]=butter(n,Wn,’high’):設(shè)計(jì)高通濾波器系數(shù)b,a。(3)[b,a]=butter(n,Wn,’stop’):設(shè)計(jì)帶阻濾波器系數(shù)b,a,頻率Wn=[w1,w2],阻帶為w1<w<w2。(4)[A,B,C,D]=butter(n,Wn)和[z,p,k]=butter(n,Wn):分別返回所設(shè)計(jì)數(shù)字濾波器的狀態(tài)模型系數(shù)[A,B,C,D]和零極點(diǎn)增益[z,p,k]。2、MATLAB在數(shù)字濾波器中的應(yīng)用一個數(shù)字濾波器的抽樣頻率為fs=2kHz,試設(shè)計(jì)一個為此系統(tǒng)使用的帶通濾波器,希望采用橢圓型濾波器。要求(1)通帶范圍為300Hz到400Hz,在通帶邊緣頻率處的衰減不大于0.5dB,(2)在200Hz以下和500Hz以上衰減不小于15dB。fs=2000;ws=[300,400]/(fs/2);wp=[200,500]/(fs/2);rp=0.5;rs=15;

%濾波器參數(shù)轉(zhuǎn)換[N,wc]=ellipord(wp,ws,rp,rs);%階數(shù)與截止頻率[num,den]=ellip(N,rp,rs,wc);%直接設(shè)計(jì)橢圓濾波器[H,W]=freqz(num,den);F=W*fs/2/pi;plot(F,20*log10(abs(H)));gridxlabel('頻率(Hz)');ylabel('幅值(dB)');axis([01000-500])2、MATLAB在數(shù)字濾波器中的應(yīng)用2、MATLAB在數(shù)字濾波器中的應(yīng)用2.3、有限長單位脈沖響應(yīng)濾波器—FIR有限長單位脈沖響應(yīng)濾波器FIR的系統(tǒng)函數(shù)為:

FIR系統(tǒng)只有零點(diǎn),因此FIR系統(tǒng)不像IIR系統(tǒng)那樣易取得較好的通帶和阻帶衰減特性。但FIR系統(tǒng)具有自己突出的優(yōu)點(diǎn):穩(wěn)定且具有線性相位。2、MATLAB在數(shù)字濾波器中的應(yīng)用有限長單位脈沖響應(yīng)FIR濾波器的設(shè)計(jì)方法建立在對理想濾波器特性作某種近似的基礎(chǔ)上,主要包括窗函數(shù)法和頻率采樣法。(1).窗函數(shù)法窗函數(shù)法設(shè)計(jì)的原理是,用一個截短后的單位抽樣響應(yīng)h(n)來逼近理想的非因果的單位抽樣響應(yīng)hd(n)。即

上式為窗函數(shù)。MATLAB信號處理工具箱提供了Boxcar(矩形窗)、Bartlet(巴特利特)、Hanning(漢寧)等窗函數(shù)2、MATLAB在數(shù)字濾波器中的應(yīng)用矩形窗:

w=boxcar(M):返回M點(diǎn)矩形窗序列。其頻率響應(yīng)的逼近程度好壞完全取決于窗函數(shù)的頻率特性。除了提供窗函數(shù)命令外,MATLAB還提供了專用窗函數(shù)法設(shè)計(jì)FIR濾波器的命令fir1。

b=fir1(n,Wn,'ftype'):用來設(shè)計(jì)具有線性相位的n階FIR數(shù)字濾波器,返回的向量b為濾波器的系數(shù)。截止頻率Wn必須在0到1之間,數(shù)值1對應(yīng)于fs/2。濾波器的歸一化增益在Wn處為-6dB。當(dāng)Wn=[W1W2]時,fir1返回一個N階的帶通濾波器,通帶為[W1W2]。2、MATLAB在數(shù)字濾波器中的應(yīng)用用矩形窗設(shè)計(jì)線性相位FIR低通濾波器,通帶截止頻率為0.2,濾波器單位脈沖響應(yīng)的長度為21。M=21;wc=0.2*pi;r=(M-1)/2;nr=-r:r;hdn=sin(wc*nr)/pi./(nr+eps);ifrem(M,2)~=0,hdn(r+1)=wc/pi;endw=boxcar(M);%矩形窗hn=hdn.*w‘;%時域脈沖響應(yīng)hw=fft(hn,512);w1=2*[0:511]/512;%頻譜特性subplot(2,1,1),stem(1:M,hn,‘o’);%針狀圖xlabel('n'),ylabel('h(n)');subplot(2,1,2),plot(w1,20*log10(abs(hw)));xlabel('w/pi');ylabel('幅值(dB)');axis([02-9010]);2、MATLAB在數(shù)字濾波器中的應(yīng)用2、MATLAB在數(shù)字濾波器中的應(yīng)用(2)頻率采樣法

頻域采樣法的基本原理是對理想的濾波器的頻率響應(yīng)在頻域進(jìn)行采樣,以此來確定FIR濾波器的H(k)。在MATLAB信號處理箱中,為頻率采樣法設(shè)計(jì)FIR濾波器提供了專用函數(shù)命令fir2。該函數(shù)所得FIR數(shù)字濾波器系數(shù)為實(shí)數(shù),具有線性相位,且滿足對稱性。2、MATLAB在數(shù)字濾波器中的應(yīng)用fir2命令的格式如下:1)b=fir2(n,f,m):返回n階FIR數(shù)字濾波器的系數(shù)b。向量f和m分別指定濾波器采樣點(diǎn)的頻率和幅值,f為歸一化頻率。所期望的濾波器的頻率響應(yīng)可用plot(f,m)繪制。2)b=fir2(n,f,m,window):用指定的窗函數(shù)來設(shè)計(jì)FIR數(shù)字濾波器,窗函數(shù)包括Boxar、Hann、Bartlett、Blackman、Kaiser及Chebwin等。默認(rèn)情況下,使用hamming窗2、MATLAB在數(shù)字濾波器中的應(yīng)用例:使用fir2命令設(shè)計(jì)上例中的濾波器。f=0:0.01:1m(1:21)=1;m(22:41)=0;m(42:61)=1;m(62:81)=0;m(82:101)=1;%設(shè)置多通帶plot(f,m,'k:');holdonN=30;b=fir2(N,f,m);%令第一個頻帶為通帶[h,f1]=freqz(b);f1=f1./pi;plot(f1,abs(h));legend('理想濾波器','設(shè)計(jì)濾波器');xlabel('歸一化頻率'),ylabel('幅值');2、MATLAB在數(shù)字濾波器中的應(yīng)用2、MATLAB在數(shù)字濾波器中的應(yīng)用下面介紹其它幾種信號檢測方法在MATLAB中的應(yīng)用1、相關(guān)檢測法1.1、自相關(guān)檢測基本原理:利用信號周期性和噪聲隨機(jī)性的特點(diǎn),通過自相關(guān)或互相關(guān)運(yùn)算,打到除去噪聲的目的。自相關(guān)函數(shù):[a,b]=autocorr(x,'option');互相關(guān)函數(shù):[c,lags]=xcorr(x,lag,'option');其中,lags為延遲矢量,其范圍為[-maxlags:maxlags]'option'='unbiased'or'biased';2、MATLAB在數(shù)字濾波器中的應(yīng)用2、互相關(guān)檢測基本原理:若已知發(fā)送信號的重復(fù)周期或頻率,就可以在接收端發(fā)出一個與發(fā)送信號周期相同的“干凈的”重復(fù)周期信號,稱為本地信號。將它與混有噪聲的信號進(jìn)行互相關(guān),即可除去噪聲的影響,提高電路的抗干擾能力。應(yīng)用:鎖定放大器,可以把待測信號中與參考信號同步的信號放大并檢測出來。函數(shù):[a,b]=xcorr(x,y,'unbiased');上式與自相關(guān)檢測相似,多添加的y可表示x與y的互相關(guān)檢測3、小波(包)分析“小波”就是小的波形,所謂“小”是指它具有衰減性;而稱之為“波”則是指它的波動性,其振幅正負(fù)相間的震蕩形式。小波變換是時間(空間)頻率的局部化分析,它通過伸縮平移運(yùn)算對信號(函數(shù))逐步進(jìn)行多尺度細(xì)化,最終達(dá)到高頻處時間細(xì)分,低頻處頻率細(xì)分,能自動適應(yīng)時頻信號分析的要求,從而可聚焦到信號的任意細(xì)節(jié)。信號處理的目的就是:準(zhǔn)確的分析、診斷、編碼壓縮和量化、快速傳遞或存儲、精確地重構(gòu)(或恢復(fù))。從數(shù)學(xué)地角度來看,信號與圖像處理可以統(tǒng)一看作是信號處

溫馨提示

  • 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

提交評論