畢業(yè)論文(設(shè)計(jì))基于MATLAB的數(shù)字濾波器設(shè)計(jì)_第1頁
畢業(yè)論文(設(shè)計(jì))基于MATLAB的數(shù)字濾波器設(shè)計(jì)_第2頁
畢業(yè)論文(設(shè)計(jì))基于MATLAB的數(shù)字濾波器設(shè)計(jì)_第3頁
畢業(yè)論文(設(shè)計(jì))基于MATLAB的數(shù)字濾波器設(shè)計(jì)_第4頁
畢業(yè)論文(設(shè)計(jì))基于MATLAB的數(shù)字濾波器設(shè)計(jì)_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、基于matlab的數(shù)字濾波器設(shè)計(jì)摘要:本文介紹的是數(shù)字濾波器在matlab環(huán)境下的設(shè)計(jì)方法。數(shù)字濾波是數(shù)字信號處理的重要內(nèi)容,在實(shí)際應(yīng)用中有非常大的作用。我們研究的數(shù)字濾波器可分為iir和fir兩大類。對于iir數(shù)字濾波器的設(shè)計(jì),我們需要借助模擬原型濾波器,然后再將模擬濾波器轉(zhuǎn)化為數(shù)字濾波器,文中采用的設(shè)計(jì)方法是脈沖響應(yīng)不變法、雙向性變換法和完全函數(shù)設(shè)計(jì)法;對于fir數(shù)字濾波器的設(shè)計(jì),可以根據(jù)所給定的頻率特性直接設(shè)計(jì),文中采用的設(shè)計(jì)方法是窗函數(shù)法。根據(jù)iir濾波器和fir濾波器的特點(diǎn),本文在matlab壞境下分別用雙線性變換法設(shè)計(jì)iir和用窗函數(shù)設(shè)計(jì)fir數(shù)字濾波器,并讓這兩種濾波器對采集的語

2、音信號進(jìn)行分析和比較,經(jīng)過分析,最后給出了iir和fir對語音濾波的效果,并總結(jié)這兩種濾波器在matlab環(huán)境下設(shè)計(jì)方法的優(yōu)缺點(diǎn)。關(guān)鍵詞:數(shù)字濾波器;iir ;fir ;matlab the design of digital filter based on matlababstract:this article describes a digital filter in the matlab environment design. digital filtering is an important part of digital signal processing which is play

3、ing a very big role in practice .the digital filter we studied can be divided into two categoriesiir and fir. for the iir digital filter design, we will need the help of simulation prototype filter, analog filters and then converted it into digital filter for the iir digital filter design .the desig

4、n methods used in the text is the same impulse response method, bi-sexual transformation and full function design ;we can based on the frequency characteristics of the given direct design, design method used in the text is the window function for fir digital filter design. based on the characteristi

5、cs of iir filter and fir filters ,the bad paper in the matlab environment under the bilinear transformation method were used to design iir and fir with window function digital filter design and filters to capture both the voice signal analysis and compare. through analysis of iir and fir finally, th

6、e effect of filtering on the speech, and concluded the advantages and disadvantages in the two filter design methods in the matlab environment. key words: digital filter ;iir;fir;matlab 目 錄1引言12數(shù)字濾波器及matlab語言概述22.1數(shù)字濾波器的定義和分類22.2常用濾波器的性能指標(biāo)32.3 matlab概述53iir濾波器設(shè)計(jì)83.1雙線性變換法設(shè)計(jì)iir數(shù)字濾波器83.2脈沖響應(yīng)不變法123.3完全

7、設(shè)計(jì)函數(shù)法153.4語音濾波實(shí)例164 fir濾波器設(shè)計(jì)214.1 窗函數(shù)法214.1.1用窗函數(shù)設(shè)計(jì)fir數(shù)字濾波器的基本方法214.2 fir濾波器濾波實(shí)例265總結(jié)31參考文獻(xiàn)32致謝331引言數(shù)字濾波在通信、圖像編碼、語音編碼、雷達(dá)等許多領(lǐng)域中有著十分廣泛的應(yīng)用。目前,數(shù)字信號濾波器的設(shè)計(jì)在圖像處理、數(shù)據(jù)壓縮等方面的應(yīng)用取得了令人矚目的進(jìn)展和成就。它是數(shù)字信號處理理論的一部分。數(shù)字信號處理主要是研究用數(shù)字或符號的序列來表示信號波形,并用數(shù)字的方式去處理這些序列,以便估計(jì)信號的特征參量,或削弱信號中的多余分量和增強(qiáng)信號中的有用分量。具體來說,凡是用數(shù)字方式對信號進(jìn)行濾波、變換、調(diào)制、解調(diào)

8、、均衡、增強(qiáng)、壓縮、固定、識別、產(chǎn)生等加工處理,都可納入數(shù)字信號處理領(lǐng)域。 數(shù)字信號處理學(xué)科的一項(xiàng)重大進(jìn)展是關(guān)于數(shù)字濾波器設(shè)計(jì)方法的研究。關(guān)于數(shù)字濾波器,早在上世紀(jì)40年代末期就有人討論設(shè)計(jì)它的可能性問題,在50年代也有人討論過數(shù)字濾波器,但直到60年代中期,才開始形成關(guān)于數(shù)字濾波器的一整套完整的正規(guī)理論。在這一時(shí)期,提出了各種各樣的數(shù)字濾波器結(jié)構(gòu),有的以運(yùn)算誤差最小為特點(diǎn),有的則以運(yùn)算速度高見長,而有的則二者兼而有之。出現(xiàn)了數(shù)字濾波器的各種實(shí)現(xiàn)方法,對遞歸和非遞歸兩類濾波器作了全面的比較,統(tǒng)一了數(shù)字濾波器的基本概念和理論。matlab是美國math works公司推出的一套用于工程計(jì)算的可視

9、化高性能語言與軟件環(huán)境。matlab為數(shù)字濾波的研究和應(yīng)用提供了一個(gè)直觀、高效、便捷的利器。它以矩陣運(yùn)算為基礎(chǔ),把計(jì)算、可視化、程序設(shè)計(jì)融合到了一個(gè)交互式的工作環(huán)境中。matlab推出的工具箱使各個(gè)領(lǐng)域的研究人員可以直觀方便地進(jìn)行科學(xué)研究、工程應(yīng)用,其中的信號處理(signal processing)、圖像處理(image processing)、小波(wavelet)等工具箱為數(shù)字濾波研究的蓬勃發(fā)展提供了有力的工具。數(shù)字濾波器與模擬濾波器相比,具有精度高、穩(wěn)定、體積小、重量輕、靈活、不要求阻抗匹配以及能實(shí)現(xiàn)模擬濾波器無法進(jìn)行的特殊濾波等優(yōu)點(diǎn)。本文主要介紹有限沖激響應(yīng)數(shù)字濾波器(fir)和無限

10、沖激響應(yīng)數(shù)字濾波器(iir)的設(shè)計(jì)原理、方法、步驟以及在matlab中的實(shí)現(xiàn),并以實(shí)例形式列出設(shè)計(jì)程序和仿真結(jié)果。2數(shù)字濾波器及matlab語言概述2.1數(shù)字濾波器的定義和分類數(shù)字濾波器是指完成信號濾波處理功能的,用有限精度算法實(shí)現(xiàn)的離散時(shí)間線性非時(shí)變系統(tǒng),其輸入是一組數(shù)字量,其輸出是經(jīng)過變換的另一組數(shù)字量。因此,數(shù)字濾波器本身既可以是用數(shù)字硬件裝配成的一臺完成給定運(yùn)算的專用的數(shù)字計(jì)算機(jī),也可以將所需要的運(yùn)算編成程序,讓通用計(jì)算機(jī)來執(zhí)行。數(shù)字濾波器,輸入輸出均為數(shù)字信號,通過一定的運(yùn)算關(guān)系,改變輸入信號中所含頻率成分的相對比例,或則濾除某些頻率成分的器件。對于數(shù)字濾波器而言,若系統(tǒng)函數(shù)為h(z

11、),其脈沖響應(yīng)為h(n),輸入時(shí)間序列為x(n),則它們在時(shí)域內(nèi)的關(guān)系式如下:y(n)=h(n)x(n) 2-1在z域內(nèi),輸入和輸出存在如下關(guān)系: y(z)= h(z)x(z) 2-2式中,x(z)、y(z)分別為x(n)和y(n)的z變換。在頻域內(nèi),輸入和輸出則存在如下關(guān)系:y(j)=h(j)x(j) 2-3式中,h(j)是數(shù)字濾波器的頻率特性;x(j)y(j)分別為x(n)和y(n)的頻譜,而為數(shù)字角頻率。數(shù)字濾波器可以有很多種分類方法,但總體上可分為兩大類。一類稱為經(jīng)典濾波器,即一般的濾波器,其特點(diǎn)是輸入信號中的有用成分和希望濾除的成分占用不同的頻帶,通過合適的選頻濾波器可以實(shí)現(xiàn)濾波。例

12、如,若輸入信號中有干擾,信號和干擾的頻帶互不重疊,則可濾出信號中的干擾得到純信號。但是,如果輸入信號中信號和干擾的頻帶相重疊,則干擾就不能被有效的濾出。另一類稱為現(xiàn)代濾波器,如維納濾波器、卡爾曼濾波器等,其輸入信號中有用信號和希望濾除的成分頻帶重疊。對于經(jīng)典濾波器,從頻域上也可以分為低通、高通、帶通和帶阻濾波器。從時(shí)域特性上看,數(shù)字濾波器還可以分為有限沖激響應(yīng)數(shù)字濾波器(fir)和無限沖激響應(yīng)數(shù)字濾波器(iir)。對于有限沖激響應(yīng)數(shù)字濾波器(fir),其輸出y(n)只取決于有限個(gè)過去和現(xiàn)在的輸入,x(n),x(n-1),x(n-m),濾波器的輸入輸出關(guān)系可表示為y(n)= 2-4對于無限沖激響

13、應(yīng)數(shù)字濾波器(iir),它的輸出不僅取決于過去和現(xiàn)在的輸入,而且還取決于過去的輸出,其差分方程為y(n)+= 2-5該差分方程的單位沖激響應(yīng)是無限延續(xù)的。2.2常用濾波器的性能指標(biāo)濾波器性能一般用系統(tǒng)頻率特性來說明,常用的性能指標(biāo)主要有以下三個(gè)參數(shù):1. 幅度平方函數(shù) 2-6該性能指標(biāo)主要用來說明系統(tǒng)的幅頻特性。2.相位函數(shù) 2-7其中: 2-8該指標(biāo)主要用來說明系統(tǒng)的相位特性。3.群延時(shí) 2-9定義為相位對角頻率導(dǎo)數(shù)的負(fù)值,說明了濾波器對不同的頻率成分的平均延時(shí)。當(dāng)要求在通帶內(nèi)的群延遲是常數(shù)時(shí),濾波器相位響應(yīng)特性應(yīng)該是線性的。實(shí)際設(shè)計(jì)中所能得到的濾波器的頻率特性與理想濾波器的頻率特性之間存在

14、著一些顯著的差別,現(xiàn)以低通濾波器的頻率特性為例進(jìn)行說明。1.理想濾波器的特性:設(shè)濾波器輸入信號為,信號中混入噪音,它們有不同的頻率成分。濾波器的單位脈沖響應(yīng)為。則理想濾波器輸出為: 2-10即噪音信號被濾除,而信號無失真只有延時(shí)和線性放大。對上式作傅里葉變換得: 2-11假定噪音信號被濾除,即: 2-12整理得:h(t)t 2-13圖1 理想低通濾波器頻率特性 圖2 理性濾波器的單位脈沖響應(yīng)()假定信號頻率成分為:,噪音頻率成分為。則完成濾波的理想低通濾波器特性是: 2-14即: 2-15 2-16系統(tǒng)的單位脈沖響應(yīng)為: 2-17理性低通濾波器的頻率特性如圖1所示,單位脈沖響應(yīng)的波形如圖2所示

15、。理想濾波器具有非因果、無限長的單位脈沖響應(yīng)和不連續(xù)的頻率特性,要用穩(wěn)定的線性時(shí)不變(lti)系統(tǒng)來實(shí)現(xiàn)這樣的特性是不可能的。工程上是用脈沖響應(yīng)為有限長的、因果的、穩(wěn)定的線性時(shí)不變系統(tǒng)或具有連續(xù)頻率特性的線性時(shí)不變系統(tǒng)來逼近理想特性。在滿足一定的誤差要求的情況下來實(shí)現(xiàn)理想濾波特性。因此實(shí)際的濾波器的頻率特性如圖3所示。通 帶阻帶過渡帶圖3實(shí)際濾波器的頻率特性性其中:截止頻率 阻帶起始頻率過渡帶寬在通帶內(nèi)幅度響應(yīng)以的誤差接近于1,即: 2-18為阻帶起始頻率,在阻帶內(nèi)幅度響應(yīng)以小于的誤差接近于零,即: 2-19為了使設(shè)計(jì)的濾波器更接近理想低通濾波器,還必須提供一帶寬為的不為零的過渡帶。在這個(gè)頻帶

16、內(nèi),幅度響應(yīng)從通帶平滑的下落到阻帶。2.3 matlab概述matlab是美國math works公司開發(fā)的一種功能極其強(qiáng)大的高技術(shù)計(jì)算語言和內(nèi)容極其豐富的軟件庫,集數(shù)值計(jì)算、矩陣運(yùn)算和信號處理與顯示于一身。該軟件最初是由美國教授cleve moler創(chuàng)立的。1980年前后,他在教線性代數(shù)課程時(shí),發(fā)現(xiàn)用其他高級語言編程時(shí)極不方便,便構(gòu)思開發(fā)了matlab,即矩陣實(shí)驗(yàn)室(matrix laboratory)。該軟件利用了當(dāng)時(shí)代表數(shù)值線性代數(shù)領(lǐng)域最高水平的eispack和linpack兩大軟件包,并且利用fortran語言編寫了最初的一套交互式軟件系統(tǒng),matlab的最初版本便由此產(chǎn)生了。 最初的

17、matlab由于語言單一,只能進(jìn)行矩陣的運(yùn)算,繪圖也只能用原始的描點(diǎn)法,內(nèi)部函數(shù)只有幾十個(gè),因此功能十分簡單。1984年該公司推出了第一個(gè)matlab的商業(yè)版,并用c語言作出了全部改寫?,F(xiàn)在的matlab程序是math works公司用c語言開發(fā)的,第一版由steve bangert主持開發(fā)編譯解釋程序,steve kleiman完成圖形功能的設(shè)計(jì),john little和cleve moler主持開發(fā)了各類數(shù)學(xué)分分析的子模塊,撰寫用戶指南和大部分的m文件。接著又添加了豐富的圖形圖像處理、多媒體功能、符號運(yùn)算和與其它流行軟件的接口功能,使matlab的功能越來越強(qiáng)大。mtalab系統(tǒng)主要由以下

18、五個(gè)部分組成:(1)matalb語言體系。 matlab是高層次的矩陣數(shù)組語言,具有條件控制、函數(shù)調(diào)用、數(shù)據(jù)結(jié)構(gòu)、輸入輸出、面向?qū)ο蟮瘸绦蛘Z言特性。利用它既可以進(jìn)行小規(guī)模端程,完成算法設(shè)計(jì)和算法實(shí)驗(yàn)的基本任務(wù),也可以進(jìn)行大規(guī)模編程,開發(fā)復(fù)雜的應(yīng)用程序。(2)matlab工作環(huán)境 。這是對matlab提供給用戶使用的管理功能的總稱。包括管理工作空間中的變量據(jù)輸入輸出的方式和方法,以及開發(fā)、調(diào)試、管理m文件的各種工具。(3)圖形句相系統(tǒng) 。這是matlab圖形系統(tǒng)的基礎(chǔ),包括完成2d和3d數(shù)據(jù)圖示、圖像處理、動畫生成、圖形顯示等功能的高層matlab命令,也包括用戶對圖形圖像等對象進(jìn)行特性控制的低

19、層matlab命令,以及開發(fā)gui應(yīng)用程序的各種工具。(4)matlab數(shù)學(xué)函數(shù)庫。這是對matlab使用的各種數(shù)學(xué)算法的總稱。包括各種初等函數(shù)的算法,也包括矩陣運(yùn)算、矩陣分析等高層次數(shù)學(xué)算法。(5)matlab應(yīng)用程序接口(api)。這是matlab為用戶提供的一個(gè)函數(shù)庫,使得用戶能夠在matlab環(huán)境中使用c程序或fortran程序,包括從matlab中調(diào)用于程序(動態(tài)鏈接),讀寫mat文件的功能。 除此之外,matlab系統(tǒng)還具有如下特點(diǎn):(1)具有易學(xué)易用的語言體系;(2)具有交互式的工作環(huán)境;(3)具有多層面的圖像處理系統(tǒng);(4)具有豐富高效的matlab工具箱;(5)具有便利的程序

20、接口(api);(6)應(yīng)用領(lǐng)域廣泛;(7)嵌入了面向?qū)ο缶幊陶Z言。3iir濾波器設(shè)計(jì)3.1雙線性變換法設(shè)計(jì)iir數(shù)字濾波器我們在設(shè)計(jì)iir數(shù)字濾波器時(shí),當(dāng)s平面到平面是多值的映射關(guān)系時(shí)會造成頻率響應(yīng)的混疊失真。為了克服這一缺點(diǎn),可以采用非線性頻率壓縮方法,將整個(gè)頻率軸上的頻率范圍壓縮到-/t/t之間,再用z=轉(zhuǎn)換到z平面上。也就是說,第一步先將整個(gè)s平面壓縮映射到s1平面的-/t/t一條橫帶里;第二步再通過標(biāo)準(zhǔn)變換關(guān)系z=將此橫帶變換到整個(gè)z平面上去。這樣就使s平面與z平面建立了一一對應(yīng)的單值關(guān)系,消除了多值變換性,也就消除了頻譜混疊現(xiàn)象,映射關(guān)系如圖4所示。圖4 雙線性變換的映射關(guān)系為了將s

21、平面的整個(gè)虛軸j壓縮到s1平面j1軸上的-/t到/t段上,可以通過以下的正切變換實(shí)現(xiàn) 3-1式中,t仍是采樣間隔。當(dāng)1由-/t經(jīng)過0變化到/t時(shí),由-經(jīng)過0變化到+,也即映射了整個(gè)j軸。將式3-1寫成 3-2將此關(guān)系解析延拓到整個(gè)s平面和s1平面,令j=s,j1=s1,則得 3-3再將s1平面通過以下標(biāo)準(zhǔn)變換關(guān)系映射到z平面z=從而得到s平面和z平面的單值映射關(guān)系為: 3-4 3-5式3-4與式3-5是s平面與z平面之間的單值映射關(guān)系,這種變換都是兩個(gè)線性函數(shù)之比,因此稱為雙線性變換式3-1與式3-4的雙線性變換符合映射變換應(yīng)滿足的兩點(diǎn)要求。首先,把z=ej,可得 3-6即s平面的虛軸映射到z

22、平面的單位圓。其次,將s=+j代入式3-6,得 3-7因此 3-8由此看出,當(dāng)0時(shí),|z|0時(shí),|z|1。也就是說,s平面的左半平面映射到z平面的單位圓內(nèi),s平面的右半平面映射到z平面的單位圓外,s平面的虛軸映射到z平面的單位圓上。因此,穩(wěn)定的模擬濾波器經(jīng)雙線性變換后所得的數(shù)字濾波器也一定是穩(wěn)定的。雙線性變換法優(yōu)缺點(diǎn):雙線性變換法,其主要的優(yōu)點(diǎn)是由于這里s平面與z平面是單值的一一對應(yīng)關(guān)系,從而避免了頻率響應(yīng)的混疊現(xiàn)象。s平面整個(gè)j軸單值地對應(yīng)于z平面單位圓一周,即頻率軸是單值變換關(guān)系。這個(gè)關(guān)系如式3-6所示,重寫如下: 3-9上式表明,s平面上與z平面的成非線性的正切關(guān)系,如圖5所示。由圖5看

23、出,在零頻率附近,模擬角頻率與數(shù)字頻率之間的變換關(guān)系接近于線性關(guān)系;但如果繼續(xù)增加,此時(shí)會增長得越來越慢,最后當(dāng)時(shí),終止在折疊頻率=處,因而雙線性變換就不會出現(xiàn)由于高頻部分超過折疊頻率而混淆到低頻部分去的現(xiàn)象,從而消除了頻率混疊現(xiàn)象。圖5 雙線性變換法的頻率變換關(guān)系但是雙線性變換的這個(gè)特點(diǎn)是靠頻率的嚴(yán)重非線性關(guān)系而得到的,如式3-6及圖5所示。由于這種頻率之間的非線性變換關(guān)系,就產(chǎn)生了新的問題。首先,一個(gè)線性相位的模擬濾波器經(jīng)雙線性變換后得到非線性相位的數(shù)字濾波器,不再保持原有的線性相位了;其次,這種非線性關(guān)系要求模擬濾波器的幅頻響應(yīng)必須是分段常數(shù)型的,即某一頻率段的幅頻響應(yīng)近似等于某一常數(shù)(

24、這正是一般典型的低通、高通、帶通、帶阻型濾波器的響應(yīng)特性),不然變換所產(chǎn)生的數(shù)字濾波器幅頻響應(yīng)相對于原模擬濾波器的幅頻響應(yīng)會有畸變,如圖8所示。圖6 雙線性變換法幅度和相位特性的非線性映射對于分段常數(shù)的濾波器來說,雙線性變換后,仍會得到幅頻特性為分段常數(shù)的濾波器,但是各個(gè)分段邊緣的臨界頻率點(diǎn)產(chǎn)生了畸變。這種頻率的畸變,可以通過頻率的預(yù)畸來加以校正。也就是將臨界模擬頻率(即濾波器的截止頻率和阻帶邊頻)事先加以畸變,然后經(jīng)變換后正好映射到所需要的數(shù)字頻率上。在matlab中,雙線性變換法的調(diào)用函數(shù)是bilinear。其調(diào)用格式為:a.zd,pd,kd= bilinear(z,p,k,fs)b.zd

25、,pd,kd= bilinear(z,p,k,fs,fp)c. numd,dend=bilinear(num,den,fs)d. numd,dend=bilinear(num,den,fs,fp)e. aa,bb,cc,dd=bilinear(a,b,c,d,fs)f. aa,bb,cc,dd=bilinear(a,b,c,d,fs,fp) zd,pd,kd=bilinear(z,p,k,fs)是把模擬濾波器的零極點(diǎn)模型轉(zhuǎn)換為數(shù)字濾波器的零極點(diǎn)模型,fs為采樣頻率,z,p,k分別為濾波器的零點(diǎn)、極點(diǎn)和增益;numd,dend=bilinear(num,den,fs)是把模擬濾波器的傳遞函數(shù)模型

26、轉(zhuǎn)換為數(shù)字濾波器的傳遞模型; aa,bb,cc,dd=bilinear(a,b,c,d,fs)是把模擬濾波器的狀態(tài)方程模型轉(zhuǎn)換為數(shù)字濾波器狀態(tài)方程模型。例如,用雙線性變換法設(shè)計(jì)一個(gè)巴特沃思數(shù)字低通濾波器,技術(shù)指標(biāo)如下:通帶截止頻率=24k rad/s,阻帶截止頻率=28k rad/s,通帶波紋系數(shù)=0.3db, 阻帶波紋系數(shù)=50db,采樣頻率fs=20000hz。 程序如下:n,wn=buttord(wp,ws,rp,rs,s) %估計(jì)濾波器最小階數(shù)z,p,k=buttap(n);bap,aap=zp2tf(z,p,k);b,a=lp2lp(bap,aap,wn);bz,az=bilinea

27、r(b,a,fs)freqz(bz,az,nn,fs) 程序在matlab環(huán)境下的運(yùn)行及結(jié)果如圖7所示:結(jié)果如下:n =11wn =1.4892e+004bz = columns 1 through 6 0.0110 0.1211 0.6055 1.8166 3.6333 5.0866 columns 7 through 12 5.0866 3.6333 1.8166 0.6055 0.1211 0.0110az = columns 1 through 6 1.0000 2.7098 4.6379 5.2252 4.3685 2.7207 columns 7 through 121.2885

28、0.4561 0.1181 0.0211 0.0023 0.0001圖7巴特沃思數(shù)字低通濾波器幅頻-相頻特性3.2脈沖響應(yīng)不變法顧名思義,脈沖響應(yīng)不變法就是要求數(shù)字濾波器的脈沖響應(yīng)序列h(n)與模擬濾波器的脈沖響應(yīng)的采樣值相等,即h(n)= 3-10式中,t為采樣周期。根據(jù)模擬信號的拉普拉斯變換與離散序列的z變換之間的關(guān)系,我們知道h(z)= 3-11此式表明,的拉普拉斯變換在s平面上沿虛軸,按照周期=2/t延拓后,按式z=,進(jìn)行z變換,就可以將ha(s)映射為h(z)。事實(shí)上,用脈沖響應(yīng)不變法設(shè)計(jì)iir濾波器,只適合于ha(s)有單階極點(diǎn),且分母多項(xiàng)式的階次高于分子多項(xiàng)式階次的情況。將ha(

29、s)用部分分式表示: ha(s)=lth= 3-12式中,lt代表拉普拉斯變換,為的單階極點(diǎn)。將ha(s)進(jìn)行拉普拉斯反變換,即可得到= 3-13式中,u(t)是單位階躍函數(shù)。則的離散序列h(n)=對h(n)進(jìn)行z變換之后,可以得到數(shù)字濾波器的系統(tǒng)函數(shù)h(z)h(z)= 3-14對比ha(s)與h(z),我們會發(fā)現(xiàn):s域中ha(s)的極點(diǎn)是,映射到z平面之后,其極點(diǎn)變成了,而系數(shù)沒有發(fā)生變化,仍為。因此,在設(shè)計(jì)iir濾波器時(shí),我們只要找出模擬濾波器系統(tǒng)函數(shù)ha(s)的極點(diǎn)和系數(shù),通過脈沖響應(yīng)不變法,代入h(z)的表達(dá)式中,即可求出h(z),實(shí)現(xiàn)連續(xù)系統(tǒng)的離散化。但是脈沖響應(yīng)不變法只適合于設(shè)計(jì)低

30、通和帶通濾波器,而不適合于設(shè)計(jì)高通和帶阻濾波器。因?yàn)?,如果模擬信號的頻帶不是介于之間,則會在的奇數(shù)倍附近產(chǎn)生頻率混疊現(xiàn)象,映射到z平面后,則會在附近產(chǎn)生頻率混疊現(xiàn)象。從而使所設(shè)計(jì)的數(shù)字濾波器不同程度的偏離模擬濾波器在附近的頻率特性,嚴(yán)重時(shí)使數(shù)字濾波器不滿足給定的技術(shù)指標(biāo)。為此,希望設(shè)計(jì)的濾波器是帶限濾波器,如果不是帶限的,例如,高通濾波器、帶阻濾波器,需要在高通濾波器、帶阻濾波器之前加保護(hù)濾波器,濾出高于折疊頻率/t以上的頻帶,以免產(chǎn)生頻率混疊現(xiàn)象。但這樣會增加系統(tǒng)的成本和復(fù)雜性。因此,高通與帶阻濾波器不適合用這種方法。將模擬濾波器轉(zhuǎn)化為數(shù)字濾波器,牽涉到一個(gè)關(guān)鍵的問題,即尋找一種轉(zhuǎn)換關(guān)系,將

31、s平面上的ha(s)轉(zhuǎn)換成z平面上的h(z)。這里ha(s)是模擬濾波器的傳輸函數(shù),h(z)是數(shù)字濾波器的系統(tǒng)函數(shù)。為了確保轉(zhuǎn)換后的h(z)穩(wěn)定且滿足技術(shù)要求,轉(zhuǎn)換關(guān)系要滿足以下要求:1)將因果穩(wěn)定的模擬濾波器轉(zhuǎn)換為數(shù)字濾波器后,仍然是因果穩(wěn)定的。我們知道,當(dāng)模擬濾波器的傳輸函數(shù)ha(s)的極點(diǎn)全部位于s平面的左平面時(shí),模擬濾波器才是因果穩(wěn)定的;對于數(shù)字濾波器而言,因果穩(wěn)定的條件是其傳輸函數(shù)h(z)的極點(diǎn)要全部位于單位圓內(nèi)。因此,轉(zhuǎn)換關(guān)系應(yīng)是s平面的左半平面映射到z平面的單位圓內(nèi)。2)數(shù)字濾波器的頻率響應(yīng)與模擬濾波器的頻率響應(yīng)相對應(yīng),s平面的虛軸映射為z平面的單位圓,而響應(yīng)的頻率之間是線性變換

32、關(guān)系。在matlab中,脈沖響應(yīng)不變法的調(diào)用函數(shù)是impinvar,其調(diào)用格式為:a. bz,az=impinvar(b,a,fs)b. bz,az=impinvar(b,a)c. bz,az=impinvar(b,a,fs,tol)該函數(shù)的功能是將分子向量為b、分母向量為a的模擬濾波器,轉(zhuǎn)換為分子向量為bz、分母向量為az的數(shù)字濾波器。fs為采樣頻率,單位為hz,默認(rèn)值為1hz。tol指誤差容限,表示轉(zhuǎn)換后的離散系統(tǒng)函數(shù)是否有重復(fù)的極點(diǎn)。例如,用脈沖響應(yīng)不變法設(shè)計(jì)一個(gè)契比雪夫型數(shù)字低通濾波器,指標(biāo)要求:通帶截止頻率=1000hz,阻帶截止頻率=1200hz,采樣頻率fs=5000hz,通帶衰

33、減系數(shù)=0.3db,阻帶衰減系數(shù)=40db。程序如下:wp=1000*2*pi;ws=1200*2*pi;fs=2500;rp=0.3;rs=40;n,wn=cheb1ord(wp,ws,rp,rs,s); %估計(jì)濾波器最小階數(shù)z,p,k=cheb1ap(n,rp); %模擬濾波器函數(shù)引用a,b,c,d=zp2ss(z,p,k); %返回狀態(tài)轉(zhuǎn)移矩陣形式at,bt,ct,dt=lp2lp(a,b,c,d,wn); %頻率轉(zhuǎn)換b,a=ss2tf(at,bt,ct,dt); %返回傳遞函數(shù)形式 bz,az=impinvar(b,a,fs); %調(diào)用脈沖相應(yīng)不變法h,w=freqz(bz,az);

34、%返回頻率響應(yīng)plot(w*fs/(2*pi),abs(h); %畫圖grid;xlabel(frequency/hz); ylabel(magnitude);n,wn程序在matlab環(huán)境下的運(yùn)行及結(jié)果如圖8所示:圖8 契比雪夫型數(shù)字低通濾波器幅頻特性曲線n =11 wn =6.2832e+0033.3完全設(shè)計(jì)函數(shù)法此法是根據(jù)設(shè)計(jì)要求,直接調(diào)用函數(shù)來設(shè)計(jì)數(shù)字濾波器。所用到的函數(shù)有butter、cheby1、cheb2ord、ellipd以及besself等。butter用來直接設(shè)計(jì)巴特沃思數(shù)字濾波器,cheby1用來直接設(shè)計(jì)切比雪夫型濾波器,cheb2ord用來設(shè)計(jì)切比雪夫型濾波器,elli

35、pd用來設(shè)計(jì)橢圓濾波器,besself用來設(shè)計(jì)貝塞爾濾波器。例如,用完全設(shè)計(jì)函數(shù)法設(shè)計(jì)一個(gè)巴特沃思數(shù)字低通濾波器,技術(shù)指標(biāo)要求為:wp=1000;ws=1200;rp=0.3;rs=40;fs=8000;程序如下:wp=1000;ws=1200;rp=0.3;rs=40;fs=8000;n,wn=buttord(wp/(fs/2),ws/(fs/2),rp,rs) %估計(jì)濾波器最小階數(shù)b,a=butter(n,wn);h,w=freqz(b,a); %返回頻率響應(yīng)plot(w*fs/(2*pi),abs(h); %畫圖grid;xlabel(frequency/hz);ylabel(magni

36、tude);程序在matlab環(huán)境下的運(yùn)行及結(jié)果如圖9所示:圖9巴特沃思數(shù)字低通濾波器幅頻特性曲線n =29 wn =0.26113.4語音濾波實(shí)例根據(jù)語音信號的特點(diǎn)給出有關(guān)濾波器的性能指標(biāo):1)低通濾波器性能指標(biāo),fp=1000hz,fc=1200 hz, as=100db,ap=1db;2)高通濾波器性能指標(biāo),fc=2800 hz,fp=3000 hz as=100db,ap=1db;3)帶通濾波器性能指標(biāo),fp1=1200 hz,fp2=3000 hz,fc1=1000 hz,fc2=3200 hz,as=100db,ap=1db。用iir對其分析,最后,利用matlab中的函數(shù)freq

37、z畫出各濾波器的頻率響應(yīng)。1語音信號的采集:1)利用windows下的錄音機(jī)(開始程序附件娛樂錄音機(jī),文件屬性立即轉(zhuǎn)換8000khz,8位,單聲道),錄制一段自己的話音“信號”, 時(shí)間控制在1秒左右,然后將音頻文件保存“e:胡晶.wav”2)在matlab軟件平臺下,利用函數(shù)wavread對語音信號進(jìn)行采樣,記住采樣頻率和采樣點(diǎn)數(shù)。z1,fs,bits=wavread(e:胡晶.wav)運(yùn)行結(jié)果:fs =44100bits =16wavread函數(shù)調(diào)用格式:y=wavread(file),讀取file所規(guī)定的wav文件,返回采樣值放在向量y中。y,fs,nbits=wavread(file),

38、采樣值放在向量y中,fs表示采樣頻率(hz),nbits表示采樣位數(shù)。y=wavread(file,n),讀取前n點(diǎn)的采樣值放在向量y中。y=wavread(file,n1,n2),讀取從n1點(diǎn)到n2點(diǎn)的采樣值放在向量y中。2語音信號的頻譜分析首先畫出語音信號的時(shí)域波形z1=wavread(e:胡晶.wav);plot(z1);圖像輸出如圖10對語音信號進(jìn)行頻譜分析,在matlab中,可以利用函數(shù)fft對信號快速進(jìn)行付立葉變換,得到信號的頻譜特性z1=wavread(e:胡晶.wav);y1=z1(1:8192);y1=fft(y1);n=0:8191;plot(n,y1);圖像輸出如圖11圖

39、10 信號時(shí)域波形 圖 11 信號頻譜分析圖根據(jù)語音信號的特點(diǎn),設(shè)計(jì)出不同功能的數(shù)字濾波器,并用matlab進(jìn)行仿真。設(shè)計(jì)程序及仿真結(jié)果如下:1設(shè)計(jì)iir低通濾波器濾波程序如下:clear;close allz1,fs,bits=wavread(e:胡晶.wav)y1=z1(1:8192);y1=fft(y1);fp=1000;fc=1200;as=100;ap=1; ;fs=8000;wc=2*fc/fs;wb=2*fp/fs;n,wp=cheb1ord(wc,wb,ap,as);b,a=cheby1(n,ap,wp);figure(1);freqz(b,a);x=filter(b,a,z1

40、);x=fft(x,8192);figure(2);subplot(2,2,1);plot(abs(y1);axis(0,1000,0,1.0);title(濾波前信號頻譜);subplot(2,2,2);plot(abs(x);axis(0,4000,0,0.03);title(濾波后信號頻譜);subplot(2,2,3);plot(z1);title(濾波前信號波形);subplot(2,2,4);plot(x);title(濾波后信號波形);sound(x,fs,bits);仿真結(jié)果如下:圖 12 iir數(shù)字低通濾波器幅頻-相頻特性 圖 13 濾波前后信號頻譜和波形對比2設(shè)計(jì)iir高通

41、濾波器濾波程序設(shè)計(jì)如下:clear;close allz1,fs,bits=wavread(e:胡晶.wav)y1=z1(1:8192);y1=fft(y1);fc=2800 ;fp=3000 ;as=100;ap=1; fs=8000;wc=2*fc/fs;wb=2*fp/fs;n,wp=cheb1ord(wc,wb,ap,as);b,a=cheby1(n,ap,wp,high);figure(1);freqz(b,a);x=filter(b,a,z1);x=fft(x,8192);figure(2);subplot(2,2,1);plot(abs(y1);axis(0,1000,0,1.0

42、);title(濾波前信號頻譜);subplot(2,2,2);plot(abs(x);axis(0,4000,0,0.03);title(濾波后信號頻譜);subplot(2,2,3);plot(z1);title(濾波前信號波形);subplot(2,2,4);plot(x);title(濾波后信號波形);sound(x,fs,bits);圖形分析如圖14、圖15: 圖14 iir數(shù)字低通濾波器幅頻-相頻特性 圖15 濾波前后信號頻譜和波形對比3設(shè)計(jì)iir帶通濾波器濾波程序設(shè)計(jì)如下:clear;close allz1,fs,bits=wavread(e:胡晶.wav)y1=z1(1:819

43、2);y1=fft(y1);fp1=1200 ;fp2=3000; fc1=1000 ;fc2=3200 ;as=100;ap=1; fs=8000; wc=2*fc1/fs,2* fc2/fs;wb=2*fp1/fs,2*fp2/fs; n,wp=cheb1ord(wc,wb,ap,as);b,a=cheby1(n,ap,wp,stop);figure(1);freqz(b,a);x=filter(b,a,z1);x=fft(x,8192);figure(2);subplot(2,2,1);plot(abs(y1);axis(0,1000,0,1.0);title(濾波前信號頻譜);subp

44、lot(2,2,2);plot(abs(x);axis(0,4000,0,0.03);title(濾波后信號頻譜);subplot(2,2,3);plot(z1);title(濾波前信號波形);subplot(2,2,4);plot(x);title(濾波后信號波形);sound(x,fs,bits);圖形分析如圖16、圖17:圖 16 iir數(shù)字低通濾波器幅頻-相頻特性 圖17 濾波前后信號頻譜和波形對比4 fir濾波器設(shè)計(jì)fir濾波器的設(shè)計(jì)關(guān)鍵在于尋求一系統(tǒng)函數(shù),使其頻率響應(yīng)逼近濾波器要求的理想頻率響應(yīng),其對應(yīng)的單位脈沖響應(yīng)。4.1 窗函數(shù)法4.1.1用窗函數(shù)設(shè)計(jì)fir數(shù)字濾波器的基本方法

45、設(shè)計(jì)思想:從時(shí)域從發(fā),設(shè)計(jì)逼近理想。設(shè)理想濾波器的單位脈沖響應(yīng)為。以低通線性相位fir數(shù)字濾波器為例。 3-15一般是無限長的,且是非因果的,不能直接作為fir濾波器的單位脈沖響應(yīng)。要想得到一個(gè)因果的有限長的濾波器h(n),最直接的方法是截?cái)?,即截取為有限長因果序列,并用合適的窗函數(shù)進(jìn)行加權(quán)作為fir濾波器的單位脈沖響應(yīng)。按照線性相位濾波器的要求,h(n)必須是偶對稱的。對稱中心必須等于濾波器的延時(shí)常數(shù),即 3-16用矩形窗設(shè)計(jì)的fir低通濾波器,所設(shè)計(jì)濾波器的幅度函數(shù)在通帶和阻帶都呈現(xiàn)出振蕩現(xiàn)象,且最大波紋大約為幅度的9%,這個(gè)現(xiàn)象稱為吉布斯效應(yīng)。根據(jù)過渡帶寬及阻帶衰減要求,選擇窗函數(shù)的類型

46、并估計(jì)窗口長度n(或階數(shù)m=n-1),窗函數(shù)類型可根據(jù)最小阻帶衰減as獨(dú)立選擇,因?yàn)榇翱陂L度n對最小阻帶衰減as沒有影響,在確定窗函數(shù)類型以后,可根據(jù)過渡帶寬小于給定指標(biāo)確定所擬用的窗函數(shù)的窗口長度n,設(shè)待求濾波器的過渡帶寬為w,它與窗口長度n近似成反比,窗函數(shù)類型確定后,其計(jì)算公式也確定了,不過這些公式是近似的,得出的窗口長度還要在計(jì)算中逐步修正,原則是在保證阻帶衰減滿足要求的情況下,盡量選擇較小的n,在n和窗函數(shù)類型確定后,即可調(diào)用matlab中的窗函數(shù)求出窗函數(shù)wd(n)。根據(jù)待求濾波器的理想頻率響應(yīng)求出理想單位脈沖響應(yīng)hd(n),如果給出待求濾波器頻率應(yīng)為hd,則理想的單位脈沖響應(yīng)可以

47、用下面的傅里葉反變換式求出:3-17在一般情況下,hd(n)是不能用封閉公式表示的,需要采用數(shù)值方法表示;從w=0到w=2采樣n點(diǎn),采用離散傅里葉反變換(idft)即可求出。用窗函數(shù)wd(n)將hd(n)截?cái)?,并進(jìn)行加權(quán)處理,得到 3-18 如果要求線性相位特性, 則h(n)還必須滿足:3-19根據(jù)上式中的正、 負(fù)號和長度n的奇偶性又將線性相位fir濾波器分成四類。要根據(jù)所設(shè)計(jì)的濾波特性正確選擇其中一類。 例如, 要設(shè)計(jì)線性相位低通特性可選擇h(n)=h(n-1-n)一類,而不能選h(n)=-h(n-1-n)一類。 驗(yàn)算技術(shù)指標(biāo)是否滿足要求,為了計(jì)算數(shù)字濾波器在頻域中的特性,可調(diào)用freqz子

48、程序,如果不滿足要求,可根據(jù)具體情況,調(diào)整窗函數(shù)類型或長度,直到滿足要求為止。4.1.2典型的窗函數(shù)1、矩形窗(rectangle window) 3-20其頻率響應(yīng)和幅度響應(yīng)分別為:, 3-212、三角形窗(bartlett window) 3-22其頻率響應(yīng)為: 3-233、漢寧(hanning)窗,又稱升余弦窗 3-24其頻率響應(yīng)和幅度響應(yīng)分別為: 3-254、漢明(hamming)窗,又稱改進(jìn)的升余弦窗 3-26其幅度響應(yīng)為: 3-275、布萊克曼(blankman)窗,又稱二階升余弦窗 3-28其幅度響應(yīng)為: 3-296、凱澤(kaiser)窗 3-30其中:是一個(gè)可選參數(shù),用來選擇

49、主瓣寬度和旁瓣衰減之間的交換關(guān)系,一般說來,越大,過渡帶越寬,阻帶越小衰減也越大。i0()是第一類修正零階貝塞爾函數(shù)。若阻帶最小衰減表示為,的確定可采用下述經(jīng)驗(yàn)公式: 3-31若濾波器通帶和阻帶波紋相等即p=s時(shí),濾波器節(jié)數(shù)可通過下式確定: 3-32其中: 3-33在matlab中,實(shí)現(xiàn)矩形窗的函數(shù)為boxcar和rectwin,其調(diào)用格式如下: w=boxcar(n)w=rectwin(n)其中n是窗函數(shù)的長度,返回值w是一個(gè)n階的向量,它的元素由窗函數(shù)的值組成。實(shí)際上,w=boxcar(n)等價(jià)于w=ones(n,1)。在matlab中,實(shí)現(xiàn)三角窗的函數(shù)為triang,調(diào)用格式為: w=t

50、riang(n)在matlab中,實(shí)現(xiàn)漢寧窗的函數(shù)為hann,調(diào)用格式如下: w=hann(n)w=hann(n, sflag)hann函數(shù)中的參數(shù)sflag為采樣方式,其值可取symmetric(默認(rèn)值)或periodic。當(dāng)sflagsymmetric時(shí),為對稱采樣;當(dāng)sflagperiodic時(shí),為周期采樣,此時(shí)hann函數(shù)計(jì)算n+1個(gè)點(diǎn)的窗,但是僅返回前n個(gè)點(diǎn)。在matlab中,實(shí)現(xiàn)海明窗的函數(shù)為hamming,調(diào)用格式分別如下: w=hamming (n)w=hamming (n,sflag)其中sflag的用法同上。在matlab中,實(shí)現(xiàn)布拉克曼窗的函數(shù)為blackman,調(diào)用格式

51、如下: w=blackman (n)w=blackman (n,sflag)在matlab中,實(shí)現(xiàn)切比雪夫窗的函數(shù)為chebwin,調(diào)用格式為: w=chebwin (n,r)其中r 表示切比雪夫窗函數(shù)的傅里葉變換旁瓣幅度比主瓣低rdb(其默認(rèn)值為100db),且旁瓣是等紋波的。在matlab中,實(shí)現(xiàn)巴特里特窗的函數(shù)為bartlett,調(diào)用格式為: w=bartlett (n)在matlab中,實(shí)現(xiàn)凱塞窗的函數(shù)為kaiser,調(diào)用格式為: w=kaiser (n,beta)其中beta為窗函數(shù)的參數(shù)。在matlab中,提供了基于窗函數(shù)法的兩類設(shè)計(jì)函數(shù),即函數(shù)fir1和函數(shù)fir2。1、 函數(shù)f

52、ir1該函數(shù)實(shí)現(xiàn)加窗的線性相位fir數(shù)字濾波器,可設(shè)計(jì)標(biāo)準(zhǔn)低通、帶通、高通和帶阻濾波器。其調(diào)用格式如下:a. b=fir1(n,wn)b. b=fir1(n,wn, ftype)c. b=fir1(n,wn,window)d. b=fir1(n,wn, ftype, window)e. b=fir1(,normalization)n表示濾波器的階數(shù)。ftype代表所設(shè)計(jì)濾波器的類型:high表示高通濾波器;stop表示帶阻濾波器;dc-1表示多通帶濾波器,第一頻帶為通帶;dc-0表示多通帶濾波器,第一頻帶為阻帶;默認(rèn)時(shí)代表低通或帶通濾波器。window為窗函數(shù),是長度為n的列向量,默認(rèn)時(shí)函數(shù)自動取hamming窗。b=fir1(n,wn)可得到n階低通fir濾波器,調(diào)用后返回維數(shù)為n+1的行向量b,它是濾波器的系數(shù)。b與fir濾波器的系統(tǒng)函數(shù)有如下關(guān)系:對于高通和帶阻濾波器,n取偶數(shù),為濾波器的截止頻率,范圍是(0,1);對于帶通和帶

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論