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

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上摘 要傳統(tǒng)的數(shù)字濾波器的設(shè)計過程復(fù)雜,計算工作量大,濾波特性調(diào)整困難,影響了它的應(yīng)用。本文介紹了一種利用MATLAB信號處理工具箱(Signal Processing Toolbox)快速有效的設(shè)計由軟件組成的常規(guī)數(shù)字濾波器的設(shè)計方法。給出了使用MATLAB語言進行程序設(shè)計和利用信號處理工具箱的FDATool工具進行界面設(shè)計的詳細步驟。利用MATLAB設(shè)計濾波器,可以隨時對比設(shè)計要求和濾波器特性調(diào)整參數(shù),直觀簡便,極大的減輕了工作量,有利于濾波器設(shè)計的最優(yōu)化。本文還介紹了如何利用MATLAB環(huán)境下的仿真軟件Simulink對所設(shè)計的濾波器進行模擬仿真。介紹了IIR數(shù)字

2、濾波器的傳統(tǒng)設(shè)計思想與步驟,及其計算機輔助設(shè)計方法。以一數(shù)字帶通濾波器為例,著重說明了基于MATLAB的三種實現(xiàn)手段:模擬低通原型、合適模擬帶通及直接原型,為數(shù)字濾波器設(shè)計帶來全新的實現(xiàn)手段,設(shè)計快捷方便,仿真波形直觀。介紹了利用MATLAB信號處理工具箱進FIR濾波器設(shè)計的三種方法:程序設(shè)計法、FDATool設(shè)計法和SPTool設(shè)計法,給出了詳細的設(shè)計步驟,并將設(shè)計的濾波器應(yīng)用到一個混和正弦波信號,以驗證濾波器的性能.關(guān)鍵詞:數(shù)字濾波器 MATLAB FIR IIR AbstractTraditional digital filter design process complex, the

3、computationwork load is big, the filter characteristic adjustment difficulty, hasaffected its application. This article introduced one kind using theMATLAB signal processing toolbox (Signal Processing Toolbox) the fasteffective design the conventional numeral filter design method whichis composed by

4、 software. Produced has used the MATLAB language tocarry on the programming and carries on contact surface design usingthe signal processing toolbox FDATool tool the detailed step. Usingthe MATLAB design filter, may contrast the design request and thefilter characteristic adjustment parameter as nec

5、essary,direct-viewing is simple, enormous reduced the work load, isadvantageous optimization which designs to the filter.Key word: Digital filter MATLAB FIR IIR 目 錄摘 要.1Abstract.2第一章 引言.51.1數(shù)字濾波器的背景及意義 .51.2內(nèi) 容.6 第二章數(shù)字濾波器的MATLAB設(shè)計.82.1 MATLAB的設(shè)計方法.92.1.1 FDATool界面設(shè)計.9 2.1.2程序設(shè)計法.10 2.1.3 Simulink仿真.

6、11 2.1.4 SPTool設(shè)計法.12 2.1.5結(jié) 論.13 2.2基于MATLAB的程序設(shè)計方法的各種模擬濾波器實現(xiàn).132.2.1基于模擬低通原型的MATLAB實現(xiàn).142.2.2基于合適類型模擬濾波器的MATLAB實現(xiàn).152.2.3基于直接原型變換法的MATLAB實現(xiàn).17第三章 基于MATLAB的IIR數(shù)字濾波器的設(shè)計.19 3.1 IIR濾波器有以下幾個特點.19 3.2 IIR數(shù)字濾波器設(shè)計思路與步驟.19 3.3 IIR數(shù)字濾波器設(shè)計方法.203.3.1傳統(tǒng)設(shè)計方法.20 3.3.2計算機輔助設(shè)計方法.21 3.4常用模擬IIR濾波器的設(shè)計.21 3.4.1巴特

7、沃斯IIR濾波器的設(shè)計.21 3.4.2契比雪夫I型IIR濾波器的設(shè)計.22 3.5用模擬濾波器理論來設(shè)計IIR數(shù)字濾波器.23 3.5.1脈沖響應(yīng)不變法.23 3.5.2雙線性變換法.24 3.6仿真實現(xiàn).27第四章 基于MATLAB的FIR數(shù)字濾波器的設(shè)計.314.1 FIR數(shù)字濾波器設(shè)計的基本步驟.264.2 FIR濾波器的窗函數(shù)設(shè)計法.274.3程序設(shè)計法.284.4 FDATool設(shè)計法.294.5帶通濾波器設(shè)計.294.5.1帶通濾波器設(shè)計實例一.294.5.2帶通濾波器設(shè)計實例二.304.6 Simulink仿真.314.7結(jié)束語.32第五章 一種改進型的FIR數(shù)字濾波器設(shè)計.3

8、3 5.1濾波器設(shè)計的改進方法 .335.1.1 Matlab Link for CCS Development Tools簡介.335.1.2數(shù)字濾波器的系統(tǒng)級設(shè)計方法.335.1.3 結(jié)論.34參考文獻.35致 謝.36專心-專注-專業(yè)第一章 引 言1.1數(shù)字濾波器的背景及意義數(shù)字濾波器是一種用來過濾時間離散信號的數(shù)字系統(tǒng),通過對抽樣數(shù)據(jù)進行數(shù)學(xué)處理來達到頻域濾波的目的。根據(jù)其單位沖激響應(yīng)函數(shù)的時域特性可分為兩類:無限沖激響應(yīng)(IIR)濾波器和有限沖激響應(yīng)(FIR)濾波器。與IIR濾波器相比,F(xiàn)IR的實現(xiàn)是非遞歸的,總是穩(wěn)定的;更重要的是,F(xiàn)IR濾波器在滿足幅頻響應(yīng)要求的同時,可以獲得嚴(yán)格

9、的線性相位特性。因此,它在高保真的信號處理,如數(shù)字音頻、圖像處理、數(shù)據(jù)傳輸、生物醫(yī)學(xué)等領(lǐng)域得到廣泛應(yīng)用。信號處理是科學(xué)研究和工程技術(shù)許多領(lǐng)域都需要進行的一個重要環(huán)節(jié),這種處理包括信號的檢測、變換、濾波、壓縮、傳輸、信息提取、顯示等。由于自然界中的各種信號,例如光、電、聲、振動、壓力、溫度等通常表現(xiàn)為在時間和幅度上都是連續(xù)的模擬信號,因此傳統(tǒng)上對信號的處理大都采用模擬系統(tǒng)(或電路)來實現(xiàn)。隨著人們對信號處理要求的日益提高,以及模擬信號處理中一些不可克服的缺點,對信號的許多處理轉(zhuǎn)而采用數(shù)字的方法來進行。近年來由于大規(guī)模集成電路和計算機技術(shù)的進步,信號的數(shù)字處理技術(shù)得到了飛速發(fā)展。數(shù)字信號處理系統(tǒng)無

10、論在性能、可靠性、體積、耗電量、成本等諸多方面都比模擬信號處理系統(tǒng)優(yōu)越得多,使得許多以往采用模擬信號處理的系統(tǒng)越來越多地被數(shù)字處理系統(tǒng)所代替,這反過來進一步促進了數(shù)字信號處理技術(shù)的發(fā)展,其應(yīng)用領(lǐng)域包括通信、計算機網(wǎng)絡(luò)、雷達、自動控制、地球物理、聲學(xué)、天文、生物醫(yī)學(xué)、消費類電子產(chǎn)品等國民經(jīng)濟的各個部門,已經(jīng)成為信息產(chǎn)業(yè)的核心技術(shù)之一。數(shù)字信號處理的理論與技術(shù)本身也成為信號與信息處理學(xué)科中一個重要且十分活躍的分支。 數(shù)字信號處理本質(zhì)上是利用數(shù)學(xué)的方法和數(shù)字系統(tǒng)來實現(xiàn)對信號的處理,它主要研究兩個方面的問題:其一是研究信號處理的各種處理算法,即建立數(shù)學(xué)模型;其二是算法的實現(xiàn),包括采用計算機軟件實現(xiàn),或

11、采用專用的數(shù)字系統(tǒng)實現(xiàn)。目前,隨著數(shù)字化的深入,許多新型的器件,如數(shù)字信號處理單片機(DSP)和各種專用集成芯片(ASIC),在數(shù)字信號處理系統(tǒng)的實現(xiàn)中扮演了越來越重要的角色。 算法的研究是信號處理的基礎(chǔ),從數(shù)學(xué)的角度而言,信號可分為確定信號與隨機信號、線性與非線性信號。信號的類型不同,對它們進行處理的算法也就不同。從傳統(tǒng)的傅里葉分析到現(xiàn)代的譜估計方法和小波分析,從經(jīng)典的線性系統(tǒng)分析方法到非線性的混沌分析與人工神經(jīng)網(wǎng)絡(luò)方法,其應(yīng)用的數(shù)學(xué)方法幾乎涉及到了所有的數(shù)學(xué)分支。同時由于應(yīng)用的領(lǐng)域不同,信號處理的算法也各不相同,例如,語音通信需要處理一維的信號,圖像與視頻處理則分別需要處理二維和三維的信號

12、。因此算法研究是一個理論性很強的問題。另一方面,數(shù)字信號處理系統(tǒng)的實現(xiàn)要涉及電子器件、計算機硬件、軟件、工藝等各方面知識,并且隨著時間的推移,新的器件還在不斷地涌現(xiàn)。因此,數(shù)字信號處理是一個內(nèi)容十分豐富、涉及面廣泛且發(fā)展很快的學(xué)科。本書作為電子信息類本科生對數(shù)字信號處理的入門性的教材,限于篇幅,將僅著重討論離散線性時不變確定信號與系統(tǒng)的基本理論與分析方法,這也是進一步學(xué)習(xí)所有其他類型數(shù)字信號處理的基礎(chǔ)。本課題主要介紹數(shù)字信號處理的基本理論與分析方法以及目前在國內(nèi)外獲得廣泛應(yīng)用的MATLAB軟件包及其信號處理工具箱的使用方法。1.2內(nèi)容本文通過設(shè)計實例,介紹了利用MATLAB實現(xiàn) FIR濾波器設(shè)

13、計與濾波的三種方法,從仿真結(jié)果可以看出它們均可以達到技術(shù)指標(biāo)要求,而且方法簡單、快捷,大大減輕了工作量。濾波器的設(shè)計工作完成后,可以借助于MATLAB的export操作導(dǎo)出所設(shè)計濾波器的系統(tǒng)函數(shù)H(z)。由于MATLAB具有強大的接口功能,仿真后的結(jié)果可以很方便的移植到DSP、CPLD或FPGA等器件中。在實際應(yīng)用中,只需按要求修改濾波器參數(shù),并對程序作較少的改動,即可實現(xiàn)不同截止頻率的FIR濾波器,實用性較強。其中介紹了利用MATLAB信號處理工具箱進FIR濾波器設(shè)計的三種方法:程序設(shè)計法、FDATool設(shè)計法和SPTool設(shè)計法,給出了詳細的設(shè)計步驟,并將設(shè)計的濾波器應(yīng)用到一個混和正弦波信

14、號,以驗證濾波器的性能。全文共5章。第2章作為數(shù)字信號處理的基礎(chǔ),介紹FDATool.程序設(shè)計法.Simulink仿真 及SPTool設(shè)計法等以及介紹了基于MATLAB的三種實現(xiàn)方法及頻率特性。第3-4章介紹數(shù)字濾波器的結(jié)構(gòu)、IIR與FIR濾波器的設(shè)計方法,這些都是數(shù)字信號處理的必修內(nèi)容。第5章主要介紹了FIR數(shù)字濾波器改進型的設(shè)計方法。第二章 數(shù)字濾波器的MATLAB設(shè)計數(shù)字濾波器是具有一定傳輸選擇特性的數(shù)字信號處理裝置,其輸入、輸出均為數(shù)字信號,實質(zhì)上是一個由有限精度算法實現(xiàn)的線性時不變離散系統(tǒng)。它的基本工作原理是利用離散系統(tǒng)特性對系統(tǒng)輸入信號進行加工和變換,改變輸入序列的頻譜或

15、信號波形,讓有用頻率的信號分量通過,抑制無用的信號分量輸出。數(shù)字濾波器和模擬濾波器有著相同的濾波概念,根據(jù)其頻率響應(yīng)特性可分為低通、高通、帶通、帶阻等類型,與模擬濾波器相比,數(shù)字濾波器除了具有數(shù)字信號處理的固有優(yōu)點外,還有濾波精度高(與系統(tǒng)字長有關(guān))、穩(wěn)定性好(僅運行在0與l兩個電平狀態(tài))、靈活性強等優(yōu)點。數(shù)字濾波器按單位脈沖響應(yīng)的性質(zhì)可分為無限長單位脈沖響應(yīng)濾波器IIR和有限長單位脈沖響應(yīng)濾波器(FIR)兩種。本文介紹(IIR)和(FIR)數(shù)字濾波器的設(shè)計與分析。2. 數(shù)字濾波器的基本概念0A0A0A0A低通高通1.數(shù)字濾波器按功能分為低通、高通、帶通、帶阻、全通濾波器。2.由序列傅氏變換公

16、式可知,離散信號的傅氏變換是的函數(shù),周期為2。只需研究 ,不需要在整個軸上分析其信號 。所以,帶通數(shù)字濾波器的通帶分布如下:全通 圖2.12.1 MATLAB的設(shè)計方法MATLAB的設(shè)計方法包括四種,分別是FDATool,程序設(shè)計法,Simulink仿真,SPTool設(shè)計法。其中FDATool(Filter Design & Analysis Tool)是MATLAB信號處理工具箱里專用的濾波器設(shè)計分析工具,MATLAB6.0以上的版本還專門增加了濾波器設(shè)計工具箱(Filter Design Toolbox)。2.1.1 FDATool界面設(shè)計FDATool設(shè)計界面如圖2.2所示,總共

17、分兩大部分,一部分是Design Filter,在界面的下半部,用來設(shè)置濾波器的設(shè)計參數(shù),另一部分則是特性區(qū),在界面的上半部分,用來顯示濾波器的各種特性。Design Filter部分主要分為:圖2.2 FDATool設(shè)計界面Filter Type(濾波器類型)選項,包括Lowpass(低通)、Highpass(高通)、Bandpass(帶通)、Bandstop(帶阻)和特殊的FIR濾波器。Design Method(設(shè)計方法)選項,包括IIR濾波器的Butterworth(巴特沃思)法、Chebyshev Type I(切比雪夫I型)法、 Chebyshev Type II(切比雪夫II型)

18、法、Elliptic(橢圓濾波器)法和FIR濾波器的Equiripple法、Least-Squares(最小乘方)法、Window(窗函數(shù))法。Filter Order(濾波器階數(shù))選項,定義濾波器的階數(shù),包括Specify Order(指定階數(shù))和Minimum Order(最小階數(shù))。在Specify Order中填入所要設(shè)計的濾波器的階數(shù)(N階濾波器,Specify OrderN-1),如果選擇Minimum Order則MATLAB根據(jù)所選擇的濾波器類型自動使用最小階數(shù)。Frenquency Specifications選項,可以詳細定義頻帶的各參數(shù),包括采樣頻率Fs和頻帶的截止頻率。

19、它的具體選項由Filter Type選項和Design Method選項決定,例如Bandpass(帶通)濾波器需要定義Fstop1(下阻帶截止頻率)、Fpass1(通帶下限截止頻率)、Fpass2(通帶上限截止頻率)、Fstop2(上阻帶截止頻率),而Lowpass(低通)濾波器只需要定義Fstop1、Fpass1。采用窗函數(shù)設(shè)計濾波器時,由于過渡帶是由窗函數(shù)的類型和階數(shù)所決定的,所以只需要定義通帶截止頻率,而不必定義阻帶參數(shù)。Magnitude Specifications選項,可以定義幅值衰減的情況。例如設(shè)計帶通濾波器時,可以定義Wstop1(頻率Fstop1處的幅值衰減)、Wpass(

20、通帶范圍內(nèi)的幅值衰減)、Wstop2(頻率Fstop2處的幅值衰減)。當(dāng)采用窗函數(shù)設(shè)計時,通帶截止頻率處的幅值衰減固定為6db,所以不必定義。Window Specifications選項,當(dāng)選取采用窗函數(shù)設(shè)計時,該選項可定義,它包含了各種窗函數(shù)。2.1.2 程序設(shè)計法在MATLAB中,對各種濾波器的設(shè)計都有相應(yīng)的計算振幅響應(yīng)的函數(shù),可以用來做濾波器的程序設(shè)計。上例的帶通濾波器可以用程序設(shè)計:c=95; fs=1000;fc1=70;fc2=84;%定義濾波器階數(shù)96階w1=2*pi*fc1/fs;w2=2*pi*fc2/fs; %參數(shù)轉(zhuǎn)換,將模擬濾波器的技術(shù)指標(biāo)轉(zhuǎn)換為數(shù)字濾波器的技術(shù)指標(biāo)wi

21、ndow=hamming(c+1); %使用hamming窗函數(shù)h=fir1(c,w1/pi w2/pi,window); %使用標(biāo)準(zhǔn)響應(yīng)的加窗設(shè)計函數(shù)fir1freqz(h,1,512); %數(shù)字濾波器頻率響應(yīng)%在MATLAB環(huán)境下運行該程序即可得到濾波器幅頻相頻響應(yīng)曲線和濾波器系數(shù)。圖2.3 程序設(shè)計的濾波器幅頻和相頻響應(yīng)2.1.3   Simulink仿真本文通過調(diào)用Simulink中的功能模塊構(gòu)成數(shù)字濾波器的仿真框圖,在仿真過程中,可以雙擊各功能模塊,隨時改變參數(shù),獲得不同狀態(tài)下的仿真結(jié)果。例如構(gòu)造以基波為主的原始信號,通過Simulink環(huán)境下的Digital Filter

22、 Design(數(shù)字濾波器設(shè)計)模塊導(dǎo)入2.1.2中FDATool所設(shè)計的濾波器文件1.fda。仿真圖和濾波效果圖如圖2.4所示。圖2 .4 Simulink仿真圖及濾波效果圖可以看到經(jīng)過離散采樣、數(shù)字濾波后分離出了83.3Hz的頻率分量(scope1)。之所以選取上面的疊加信號作為原始信號,是由于在實際工作中是要對已經(jīng)經(jīng)過差分濾波的信號進一步做帶通濾波,信號的各分量基本同一致,可以反映實際的情況。本例設(shè)計的濾波器已在實際工作中應(yīng)用,取得了不錯的效果。2.1.4  SPTool設(shè)計法SPTool是MATLAB信號處理工具箱中自帶的交互式圖形用戶界面工具如圖2.5所示,它包含了信號處理

23、工具箱中的大部分函數(shù),可以方便快捷地完成對信號、濾波器及頻譜的分析、設(shè)計和瀏覽。按以下步驟完成濾波器的設(shè)計和濾波:創(chuàng)建并導(dǎo)入信號源。在MATLAB命令窗口輸入命令:Fs100;t = (0:100)/Fs; s = sin(2*pi*t*5)+sin(2*pi*t*15)+sin(2*pi*t*30);    此時,變量Fs、t、s將顯示在workspace列表中。在命令窗口鍵入Sptool,將彈出Sptool主界面,如圖3所示;點擊菜單File/Import將信號s導(dǎo)入并取名為s。    (2)單擊Filters列表下的New,按照

24、參數(shù)要求設(shè)計出濾波器filt1,具體步驟類似于3.2.1。(3)將濾波器filt1應(yīng)用到s信號序列。分別在Signals、Filters、Spectra列表中選擇s、filt1、mtlbse,單擊Filters列表下的Apply按鈕,在彈出的Apply Filter對話框中將輸出信號命名為sin15hz。(4)進行頻譜分析。在Signals中選擇s,單擊Spectra下的Create按鈕,在彈出的Spectra Viewer界面中選擇Method為FFT,Nfft=512,單擊Apply按鈕生成s的頻譜spect1。同樣的步驟可以生成信號sin15hz的頻譜spect2。  

25、;  分別選中信號s、sin15hz、spect1、spect2,單擊各自列表下方的View按鈕,即可觀察他們的波形,如圖2.6所示。圖2.5 SPTool主界面               圖2.6 濾波前后的時域波形和頻域特性 由圖2.6可以看出,帶通濾波器filt1使輸入信號s中頻率為15hz的正弦波信號通過,而將頻率為5hz和30hz的正弦波信號大大衰減。2.1.5  結(jié)論利用MATLAB的強大運算功能,基于MATLA

26、B信號處理工具箱(Signal Processing Toolbox)的數(shù)字濾波器設(shè)計法可以快速有效的設(shè)計由軟件組成的常規(guī)數(shù)字濾波器,設(shè)計方便、快捷,極大的減輕了工作量。在設(shè)計過程中可以對比濾波器特性,隨時更改參數(shù),以達到濾波器設(shè)計的最優(yōu)化。利用MATLAB設(shè)計數(shù)字濾波器在電力系統(tǒng)二次信號處理軟件和微機保護中,有著廣泛的應(yīng)用前景。2.2 基于MATLAB的程序設(shè)計方法的各種模擬濾波器實現(xiàn)  下面以一帶通數(shù)字濾波器的設(shè)計為例,說明基于MATLAB的三種實現(xiàn)方法。2.2.1 基于模擬低通原型的MATLAB實現(xiàn)%通過模擬低通原型濾波器進行數(shù)字帶通設(shè)計程序:fp=480 %模擬低通通帶上限頻

27、率fs=520 %模擬低通阻帶下限頻率wp=2*pi*fp %模擬低通通帶上限角頻率ws=2*pi*fs %模擬低通阻帶下限角頻率rp=3 %通帶波動rs=20 %阻帶衰減%巴特沃斯模擬低通原型濾波器設(shè)計n,wn=buttord(wp,ws,rp ,rs,'s')z,p,k=buttap(n) %模擬低通原型零、極點系數(shù)b1,a1=zp2tf(z,p,k) %零、極點系數(shù)轉(zhuǎn)換為傳遞函數(shù)%巴特沃斯模擬低通原型濾波器頻率響應(yīng)h1,w1=freqs(b1,a1)mag1=abs(h1)%模擬低通原型濾波器幅頻特性曲線subplot(221);semilogx(w1,mag1)fw=4

28、0 %模擬帶通濾波器帶寬頻率bw=2*pi*fw %模擬帶通濾波器帶寬角頻率% 由模擬低通原型變換為模擬帶通濾波器b2,a2=lp2bp(b1,a1,wn,bw) %模擬帶通濾波函數(shù)系數(shù)%巴特沃斯模擬帶通濾波器頻率響應(yīng)h2,w2= freqs(b2,a2)mag2 =abs(h2)%模擬帶通濾波器幅頻特性曲線(db)subplot(222);plot(20*log10(mag2)% 沖擊響應(yīng)不變法進行離散化設(shè)計fo=2000 %采樣頻率bz,az=impinvar(b2,a2,2000) %數(shù)字帶通濾波函數(shù)系數(shù)%巴特沃斯型數(shù)字帶通濾波器頻率響應(yīng)hz,w= freqz(bz,az)magz=ab

29、s(hz)phz=unwrap(angle(hz)subplot(223);plot(magz) %數(shù)字帶通濾波器幅頻特性曲線subplot(224);plot(phz) %數(shù)字帶通濾波器相頻特性曲線圖2.7 模擬低通原型濾波器頻率特性2.2.2 基于合適類型模擬濾波器的MATLAB實現(xiàn)%通過合適類型模擬濾波器進行數(shù)字帶通設(shè)計程序fp= 480,520;fs=450,550 %模擬通帶、阻帶頻率wp=480,520*pi*2 %模擬通帶角頻率ws=450,550*pi*2 %模擬阻帶角頻率rp=3;rs=20 %通帶波動、阻帶衰減% 巴特沃斯型模擬帶通濾波器設(shè)計n,wn=buttord (wp

30、,ws,rp,rs,'s')b,a=butter(n,wn,'s') %模擬帶通濾波函數(shù)系數(shù)%巴特沃斯型模擬帶通濾波器頻率響應(yīng)ha,w= freqs(b,a)ma=abs(ha);pha=unwrap(angle(ha)subplot(421);plot(w/(2*pi),ma) %模擬幅頻曲線subplot(423);plot(w/(2*pi),pha) %模擬相頻曲線% 沖擊響應(yīng)不變法進行離散化設(shè)計fo=5000 %采樣頻率bn,an=impinvar(b,a,5000) %數(shù)字帶通濾波函數(shù)系數(shù)%巴特沃斯型數(shù)字帶通濾波器頻率響應(yīng)hz,w=freqz(bn,a

31、n)mz=abs(hz);phz=unwrap(angle(hz)subplot(422);plot(w,mz) %數(shù)字濾波器幅頻曲線subplot(424);plot(w,phz) %數(shù)字濾波器相頻曲線hi=impz(bn,an) %數(shù)字濾波器沖擊響應(yīng)subplot(425),plot(hi) %沖擊響應(yīng)曲線n=0:200;t=n/fox1=2*square(2*pi*500*t) %500Hz方波信號subplot(426);plot(x1) %500Hz方波波形yi=conv(hi,x1) %時域卷積輸出subplot(427);plot(yi) %卷積輸出波形y1=filter(bn,

32、an,x1) %數(shù)字濾波函數(shù)輸出subplot(428);plot(y1) %數(shù)字濾波器輸出波形圖2.8 合適類型模擬濾波器進行數(shù)字帶通設(shè)計2.2.3 基于直接原型變換法的MATLAB實現(xiàn)%數(shù)字帶通濾波器直接設(shè)計程序fp= 480,520;fs=450,550 %模擬通帶、阻帶頻率rp=3;rs=20 %通帶波動、阻帶衰減fo=10000 %采樣頻率%頻率指標(biāo)變換wp=2*pi*fp/fo; %數(shù)字通帶頻率ws=2*pi*fs/fo; %數(shù)字阻帶頻率%切比雪夫1型數(shù)字帶通濾波器直接設(shè)計n,wn=cheb2ord(wp/pi,ws/pi,rp,rs);b,a=cheby1(n,rp,wn) %數(shù)

33、字帶通濾波器系數(shù)%切比雪夫1型數(shù)字帶通濾波器頻率響應(yīng)h,w= freqz(b,a,128,10000)mag=abs(h);pha=unwrap(angle(h)subplot(321);plot(w,mag) %幅頻曲線subplot(322);plot(w,pha) %相頻曲線hi=impz(b,a) %沖擊響應(yīng)subplot(324);plot(hi) %響應(yīng)曲線n=0:500;t=n/fox1=2*square(2*pi*500*t) %500Hz方波信號subplot(323);plot(t,x1) %500Hz方波波形yi=conv(hi,x1) %時域卷積輸出subplot(32

34、6);plot(yi) %卷積輸出波形y1=filter(b,a,x1) %數(shù)字濾波函數(shù)輸出subplot(325); stem(y1) %數(shù)字濾波器輸出波形圖2.9 直接原形變換法設(shè)計的數(shù)字帶通濾波器第三章 基于MATLAB的IIR數(shù)字濾波器的設(shè)計3.1 IIR濾波器有以下幾個特點:1.IIR數(shù)字濾波器的系統(tǒng)函數(shù)可以寫成封閉函數(shù)的形式。 2.IIR數(shù)字濾波器采用遞歸型結(jié)構(gòu),即結(jié)構(gòu)上帶有反饋環(huán)路。IIR濾波器運算結(jié)構(gòu)通常由延時、乘以系數(shù)和相加等基本運算組成,可以組合成直接型、正準(zhǔn)型、級聯(lián)型、并聯(lián)型四種結(jié)構(gòu)形式,都具有反饋回路。由于運算中的舍入處理,使誤差不斷累積,有時會產(chǎn)生微弱的寄生振蕩。 3

35、IIR數(shù)字濾波器在設(shè)計上可以借助成熟的模擬濾波器的成果,如巴特沃斯、契比雪夫和橢圓濾波器等,有現(xiàn)成的設(shè)計數(shù)據(jù)或圖表可查,其設(shè)計工作量比較小,對計算工具的要求不高。在設(shè)計一個IIR數(shù)字濾波器時,我們根據(jù)指標(biāo)先寫出模擬濾波器的公式,然后通過一定的變換,將模擬濾波器的公式轉(zhuǎn)換成數(shù)字濾波器的公式。 4IIR數(shù)字濾波器的相位特性不好控制,對相位要求較高時,需加相位校準(zhǔn)網(wǎng)絡(luò)。 3.2 IIR數(shù)字濾波器設(shè)計思路與步驟IIR 數(shù)字濾波器可用一個n階差分方程y(n)=brx(n-r)+aky(n-k),或用它的Z域系統(tǒng)函數(shù): 對照模擬濾波器的傳遞函數(shù):    不難看出,數(shù)

36、字濾波器與模擬濾波器的設(shè)計思路相仿,其設(shè)計實質(zhì)也是尋找一組系數(shù)b,a,去逼近所要求的頻率響應(yīng),使其在性能上滿足預(yù)定的技術(shù)要求;不同的是模擬濾波器的設(shè)計是在S平面上用數(shù)學(xué)逼近法去尋找近似的所需特性H(S),而數(shù)字濾波器則是在Z平面尋找合適的H(z)。IIR數(shù)字濾波器的單位響應(yīng)是無限長的,而模擬濾波器一般都具有無限長的單位脈沖響應(yīng),因此與模擬濾波器相匹配。由于模擬濾波器的設(shè)計在理論上已十分成熟,因此數(shù)字濾波器設(shè)計的關(guān)鍵是將H(S)H(Z),即,利用復(fù)值映射將模擬濾波器離散化。已經(jīng)證明,沖擊響應(yīng)不變法和雙線性變換法能較好地擔(dān)當(dāng)此任,則在此基礎(chǔ)上,數(shù)字濾波器的設(shè)計就可首先歸結(jié)為模擬濾波器的設(shè)計了。&#

37、160;  數(shù)字濾波器的設(shè)計步驟如圖3.1所示。模擬濾波器技術(shù)指標(biāo)相應(yīng)的模擬濾波器設(shè)計數(shù)字濾波器技術(shù)指標(biāo)指標(biāo)參數(shù)變換模擬濾波器離散化數(shù)字濾波器圖3.1 數(shù)字濾波器設(shè)計步驟3.3 IIR數(shù)字濾波器設(shè)計方法   IIR數(shù)字濾波器的設(shè)計方法有多種,可歸納為下述兩種。3.3.1 傳統(tǒng)設(shè)計方法   根據(jù)前述設(shè)計思路,首先設(shè)計一個模擬原型濾波器(截止頻率為1rad/s的低通濾波器),然后在模擬域(S平面)進行頻率變換,將模擬原形濾波器轉(zhuǎn)換成所需類型(指定截止頻率的低通、高通、帶通、帶阻)的模擬濾波器,再將其數(shù)字離散化,從S平面映射至Z平面,得到所需技術(shù)指標(biāo)

38、的數(shù)字濾波器。   上述過程中,也可先將模擬原型離散化,得到數(shù)字原型濾波器,繼而在數(shù)字域(Z平面)進行頻率變換,得到所需類型的數(shù)字濾波器。   模擬濾波器到數(shù)字濾波器的轉(zhuǎn)換可在時域進行也可在頻域?qū)崿F(xiàn),時域轉(zhuǎn)換的關(guān)鍵是要使數(shù)字濾波器與模擬濾波器時域響應(yīng)的采樣值相等,以保持其瞬態(tài)特性不變,常用的是沖擊響應(yīng)不變法。頻域變換法必須使得數(shù)字濾波器在-范圍內(nèi)的幅頻特性與模擬濾波器在-/T/T 范圍內(nèi)的幅頻特性一致,即保證S平面與z平面上幅頻特性的一一單值對應(yīng)關(guān)系,常用的是雙線性變換法。3.3.2 計算機輔助設(shè)計方法   傳統(tǒng)設(shè)計方法思路清晰,步驟

39、詳盡,可參閱公式、手冊循章而行。但由于計算繁瑣,手工計算大多只能用來進行簡單低階選頻濾波器(如LP,HP,BP及BS等)的設(shè)計。計算機輔助設(shè)計方法是集電路理論、網(wǎng)絡(luò)圖論、數(shù)值分析、矩陣運算、元件建模、優(yōu)化技術(shù)、高級計算機語言等多交叉學(xué)科于一身的新領(lǐng)域,它把計算機的快速、高精度、大存儲容量、嚴(yán)格的邏輯判斷和優(yōu)良的數(shù)據(jù)處理能力與人的思維創(chuàng)造能力充分結(jié)合起來,極大地簡化了數(shù)字濾波器的設(shè)計過程。在優(yōu)秀科技應(yīng)用軟件MATLAB的信號處理工具箱中,提供了一整套模擬、數(shù)字濾波器的設(shè)計命令和運算函數(shù),方便準(zhǔn)確,簡單易行,使得設(shè)計人員除了可按上述傳統(tǒng)設(shè)計步驟快速地進行較復(fù)雜高階選頻濾波器的計算、分析外,還可通過

40、原型變換法直接進行各種典型數(shù)字濾波器設(shè)計,即應(yīng)用MATLAB設(shè)計工具從模擬原型直接變換成滿足原定頻域指標(biāo)要求的數(shù)字濾波器。   此外,MATLAB軟件還提供了強大的數(shù)字濾波器優(yōu)化設(shè)計功能。即預(yù)先確定一種最佳設(shè)計準(zhǔn)則,然后直接求得在該準(zhǔn)則下濾波器系統(tǒng)的傳遞函數(shù)b,a。這種最優(yōu)設(shè)計方法可方便地用于任意幅頻特性要求的多帶通復(fù)雜濾波器系統(tǒng)的設(shè)計。與FIR濾波器的設(shè)計不同,IIR濾波器設(shè)計時的階數(shù)不是由設(shè)計者指定,而是根據(jù)設(shè)計者輸入的各個濾波器參數(shù)(截止頻率、通帶濾紋、阻帶衰減等),由軟件設(shè)計出滿足這些參數(shù)的最低濾波器階數(shù)。在MATLAB下設(shè)計不同類型IIR濾波器均有與之對應(yīng)的函數(shù)用

41、于階數(shù)的選擇。3.4常用模擬IIR濾波器的設(shè)計3.4.1巴特沃斯IIR濾波器的設(shè)計 在MATLAB下,設(shè)計巴特沃斯IIR濾波器可使用butter函數(shù)。Butter函數(shù)可設(shè)計低通、高通、帶通和帶阻的數(shù)字和模擬IIR濾波器,其特性為使通帶內(nèi)的幅度響應(yīng)最大限度地平坦,但同時損失截止頻率處的下降斜度。在期望通帶平滑的情況下,可使用butter函數(shù)。 butter函數(shù)的用法為: b,a=butter(n,Wn,/ftype/) 其中n代表濾波器階數(shù),Wn代表濾波器的截止頻率,這兩個參數(shù)可使用buttord函數(shù)來確定。buttord函數(shù)可在給定濾波器性能的情況下,求出巴特沃斯濾波器的最小階數(shù)n,同時給出對

42、應(yīng)的截止頻率Wn。buttord函數(shù)的用法為: n,Wn= buttord(Wp,Ws,Rp,Rs)其中Wp和Ws分別是通帶和阻帶的拐角頻率(截止頻率),其取值范圍為0至1之間。當(dāng)其值為1時代表采樣頻率的一半。Rp和Rs分別是通帶和阻帶區(qū)的波紋系數(shù)。不同類型(高通、低通、帶通和帶阻)濾波器對應(yīng)的Wp和Ws值遵循以下規(guī)則: 1 高通濾波器:Wp和Ws為一元矢量且Wp>Ws;2 低通濾波器:Wp和Ws為一元矢量且Wp<Ws; 3帶通濾波器:Wp和Ws為二元矢量且Wp<Ws,如Wp=0.2,0.7,Ws=0.1,0.8; 4帶阻濾波器:Wp和Ws為二元矢量且Wp>Ws,如Wp

43、=0.1,0.8,Ws=0.2,0.7。 3.4.2契比雪夫I型IIR濾波器的設(shè)計 在期望通帶下降斜率大的場合,應(yīng)使用橢圓濾波器或契比雪夫濾波器。在MATLAB下可使用cheby1函數(shù)設(shè)計出契比雪夫I型IIR濾波器。cheby1函數(shù)可設(shè)計低通、高通、帶通和帶阻契比雪夫I型濾IIR波器,其通帶內(nèi)為等波紋,阻帶內(nèi)為單調(diào)。契比雪夫I型的下降斜度比II型大,但其代價是通帶內(nèi)波紋較大。 cheby1函數(shù)的用法為: b,a=cheby1(n,Rp,Wn,/ftype/) 在使用cheby1函數(shù)設(shè)計IIR濾波器之前,可使用cheblord函數(shù)求出濾波器階數(shù)n和截止頻率Wn。cheblord函數(shù)可在給定濾波器

44、性能的情況下,選擇契比雪夫I型濾波器的最小階和截止頻率Wn。cheblord函數(shù)的用法為:n,Wn=cheblord(Wp,Ws,Rp,Rs) 其中Wp和Ws分別是通帶和阻帶的拐角頻率(截止頻率),其取值范圍為0至1之間。當(dāng)其值為1時代表采樣頻率的一半。Rp和Rs分別是通帶和阻帶區(qū)的波紋系數(shù)。3.5 用模擬濾波器理論來設(shè)計IIR數(shù)字濾波器3.5.1脈沖響應(yīng)不變法要設(shè)計一個數(shù)字濾波器去仿真一個模擬濾波器有脈沖響應(yīng)不變法和雙線性變換法。其設(shè)計過程都是由給定的模擬濾波器的系統(tǒng)函數(shù)Ha(s)去變換出相應(yīng)的數(shù)字濾波器的系統(tǒng)函數(shù)H(z)。脈沖響應(yīng)不變法的設(shè)計過程如下:1.已知一模擬濾波器系統(tǒng)函數(shù):(設(shè)M&

45、lt;N)2. 為方便求出其時域單位脈沖響應(yīng),將上式化為部分分式之和的形式:3. 由拉氏反變換得模擬濾波器在時域的單位脈沖響應(yīng):4. 由時域的數(shù)字仿真的條件(即脈沖響應(yīng)不變準(zhǔn)則)可得相應(yīng)的數(shù)字濾波器的脈沖響應(yīng):5. 再對兩邊進行Z變換,即可得到數(shù)字濾波器的系統(tǒng)函數(shù):用脈沖響應(yīng)不變法來設(shè)計數(shù)字濾波器,只需將給出的模擬濾波器的系統(tǒng)函數(shù)Ha(s)化為部分分式之和的形式,找出極點pi和系數(shù)Ai ,帶入數(shù)字濾波器傳函當(dāng)中即可。 脈沖響應(yīng)不變法 s à z由上述Ha(s) 和H(z)的表達式可看出:si=pi是模擬濾波器的一個極點,則相應(yīng)的zi=ePiT就是數(shù)字濾波器里的一個極點。推而廣之,則可

46、得到脈沖響應(yīng)不變法下的s平面和z平面的映射關(guān)系:z=esT 令z=ej,s=+j可得z平面的模、幅角和s平面的實部、虛部之間對應(yīng)的關(guān)系:s平面z平面ImRe的周期是2的周期是2/T 圖3.2 映射關(guān)系注意,由的周期性可見,必須滿足模擬濾波器的最高頻率ms/2或頻響Ha()必須在/T, /T上嚴(yán)格限帶的。3.5.2 雙線性變換法雙線性變換法的思想是:將模擬濾波器的傳遞函數(shù)形式化為完全以積分器(1/s)構(gòu)成的網(wǎng)絡(luò)函數(shù)形式。然后由數(shù)字網(wǎng)絡(luò)來代替模擬積分器,從而整個濾波器網(wǎng)絡(luò)都轉(zhuǎn)化成了數(shù)字的。雙線性變換法的設(shè)計過程如下:1.由積分器構(gòu)成的模擬濾波器的系統(tǒng)函數(shù)形式;2.由傳遞函數(shù)得信流圖:X(s)Y(s

47、)c0c1c2cN-1cNd1d2dN-1dNs-1s-1s-1A 圖3.3 信號流圖3.積分器的數(shù)字形式推導(dǎo)已知:u(t) 1/s ,若積分器的輸入輸出為xa(t)、 ya(t),則有: 設(shè)有0<t1<t2,可得:當(dāng)t1 趨于t2時,可得:令t1=nTT,t2 =nT;即t1à t2 ,則Tà0時,有下式成立:令y(n)=ya(nT),x(n)=xz(nT),得到數(shù)字式積分器的差分方程:對數(shù)字式積分器的差分方程兩邊進行Z變換,可得數(shù)字式積分器的傳遞函數(shù):當(dāng)T足夠小的時候,信流圖當(dāng)中的模擬積分器傳遞函數(shù)就可以由數(shù)字積分器傳函代替。從而得到性能與模擬濾波器相近數(shù)字

48、濾波器。從而可得模擬濾波器的復(fù)頻率與數(shù)字濾波器的復(fù)頻率之間的關(guān)系:或用雙線性變換法來設(shè)計數(shù)字濾波器,只需將給出的模擬濾波器的系統(tǒng)函數(shù)Ha(s)當(dāng)中的s替換為一個關(guān)于z成雙線性關(guān)系的網(wǎng)絡(luò)即可。令s=+j,z=rej 可得z平面與s平面的映射關(guān)系:雙線性變換法 s zIm(z)z平面即:s平面0Re(z) 圖3.4 影射關(guān)系討論s平面的虛軸與z平面的單位圓之間的映射關(guān)系,令=0可得雙線性變換法下模擬濾波器的角頻率與數(shù)字濾波器的角頻率 之間的關(guān)系:或 -由關(guān)系式得:可知與之間有如圖非線性關(guān)系: 從而使所設(shè)計的數(shù)字濾波器的截止頻率發(fā)生變化。設(shè)計當(dāng)中應(yīng)式子:把已經(jīng)得到的數(shù)字濾波器截止頻率c預(yù)先變換為。 圖3.5 與非線性關(guān)系3.6 仿真實現(xiàn)假設(shè)需設(shè)計一個巴特沃斯低通IIR濾波器,通帶截止頻率為2KHz,阻帶截止頻率為3KHz,通帶波紋系數(shù)為1,阻帶衰減系數(shù)為20,采樣頻率為10KHz,編寫并調(diào)試MATLAB程序,選擇不同形式,不同類型的4種濾波器進行仿真,記錄幅頻和相頻特性,對比巴特沃斯濾波器和契比雪夫濾波器。MATLAB參考程序和仿真內(nèi)容 %*% %mode: 1-巴特沃斯低通;2-巴特沃斯高通;3-巴特沃斯帶通;4-巴特沃斯帶阻% 5-契比

溫馨提示

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

評論

0/150

提交評論