【正文】
:MATLAB;數(shù)字濾波器; FIR;窗函數(shù);頻率抽樣 The Design and Simulation of Fir Digital Filter Based On MATLAB Abstract: in digital signal processing in the basic method, filter is very extensive a link, digital filters theory and related design also has always been one of the key research. Including FIR digital filters is digital filter system in mon filter, FIR filter has strict phase characteristic, and the system function in the original point with fixed pole, is stable. MATLAB language has powerful graphics drawing function, therefore this paper respectively in MATLAB environment, by using window function method, frequency sampling design method to design FIR digital filters. The simulation results indicate that the MATLAB environment, can according to requirements of the filter by adjusting the characteristics, design parameters, and finally reach the optimal design of the filter. Keywords: MATLAB; digital; filter; FIR; Window Function; Frequency sampling 目 錄 一、引言 ................................................................................................. 1 二、 FIR 濾波器簡(jiǎn)介 .............................................................................. 2 (一) FIR 濾波器的種類(lèi) ............................................................... 2 FIR 濾波器 ................................................... 2 芯片 FIR 濾波器 ........................................................... 2 FIR 濾波器 ............................................................... 2 (二) FIR 數(shù)字濾波器的特性 ...................................................... 3 三、 MATLAB 簡(jiǎn)介 ................................................................................ 4 (一)基本功能 .............................................................................. 4 (二) MATLAB 語(yǔ)言中的幾個(gè)函數(shù)介紹 ..................................... 5 四、 FIR 濾波器的設(shè)計(jì) .......................................................................... 6 (一)窗函數(shù)法 .............................................................................. 6 (二)用窗函數(shù)設(shè)計(jì) FIR 濾波器 ................................................. 6 (三)頻率抽樣法 .......................................................................... 8 (四)利用頻率抽樣法設(shè)計(jì) FIR 濾波器 .................................... 11 (五) FIR 濾波器的實(shí)現(xiàn) ............................................................. 12 ............................................................. 12 ................................................................. 14 (六) FIR 數(shù)字濾波器的 MATLAB 設(shè)計(jì) .................................. 15 ............................................................................. 15 ............................................................................. 16 五、 FIR 數(shù)字濾波器的仿真實(shí)例 ......................................................... 17 六、結(jié)論 ............................................................................................... 20 七、參考文獻(xiàn) ....................................................................................... 22 致謝 .......................................................................... 錯(cuò)誤 !未定義書(shū)簽。 MATLAB語(yǔ)言具有強(qiáng)大的圖形繪制功能,因此本論文在 MATLAB環(huán)境下,分別通過(guò)采用窗函數(shù)法、頻率抽樣設(shè)計(jì)法來(lái)設(shè)計(jì) FIR數(shù)字濾波器。基于 MATLAB 的 FIR 數(shù)字濾波器設(shè)計(jì) 摘要: 在數(shù)字信號(hào)處理的基本方法中,濾波是應(yīng)用非常廣泛的一個(gè)環(huán)節(jié),數(shù)字濾波器的理論與相關(guān)設(shè)計(jì)也一直是人們研究的重點(diǎn)之一。其中 FIR數(shù)字濾波器是數(shù)字濾波器系統(tǒng)中常見(jiàn)的濾波器, FIR濾波器具有嚴(yán)格的相位特性,同時(shí)系統(tǒng)函數(shù)的極點(diǎn)加固定在原點(diǎn)上,因而是穩(wěn)定的。仿真結(jié)果表明,在 MATLAB環(huán)境下,可以根據(jù)要求的濾波器的特性 ,通過(guò)調(diào)整設(shè)計(jì)參數(shù) ,最終達(dá) 到濾波器的最優(yōu)設(shè)計(jì)。 附錄 ....................................................................................................... 24 1 一、引言 隨著信息和數(shù)字技術(shù)的發(fā)展,數(shù)字信號(hào)已成為當(dāng)今極其重要的學(xué) 科和技術(shù)領(lǐng)域之一。在數(shù)字信號(hào)處理的基本方法中,濾波是應(yīng)用非常廣泛的一個(gè)環(huán)節(jié),數(shù)字濾波器的理論與相關(guān)設(shè)計(jì)也一直是人們研究的重點(diǎn)之一。按所通過(guò)信號(hào)的頻段分為低通、高通、帶通和帶阻濾波器四種,根據(jù)數(shù)字濾波器沖激響應(yīng)的時(shí)域特征,可將數(shù)字濾波器分為長(zhǎng)沖激響應(yīng) (IIR)濾波器和有限長(zhǎng)沖激響應(yīng) (FIR)濾波器兩種。 MATLAB 是第四代計(jì)算機(jī)語(yǔ)言,是目前公認(rèn)的國(guó)際上最流行的科學(xué)與工程計(jì)算的軟件工具。由于 MATLAB 具有強(qiáng)大運(yùn)算功能,所以 MATLAB的數(shù) 字濾波器設(shè)計(jì)法可以快速有效的設(shè)計(jì)由軟件組成的常規(guī)的上述數(shù)字濾波器,其特點(diǎn)是設(shè)計(jì)方便、快捷,極大的減輕了工作量。因此, FIR 濾波器在通信、圖像處理、模式識(shí)別等領(lǐng)域都有著廣泛的應(yīng)用。雖然可采用多片擴(kuò)展來(lái)滿(mǎn)足要求,但會(huì)增加體積和功耗,因而在實(shí)際應(yīng)用中受到限制。 DSP 芯片有專(zhuān)用的數(shù)字信號(hào)處理函數(shù)可調(diào)用,實(shí)現(xiàn) FIR 濾波器相對(duì)簡(jiǎn)單,但是由于 程序順序執(zhí)行,速度受到限制。 FIR 濾波器 使用可編 程邏輯器件, FPGA/ CPLD。 (二) FIR 數(shù)字濾波器的特性 有限長(zhǎng)單位沖激響應(yīng) (FIR)濾波器的系統(tǒng)函數(shù)只有零點(diǎn),除原點(diǎn)外,沒(méi)有極點(diǎn),因而 FIR濾波器總是穩(wěn)定的。它的另一個(gè)突出的優(yōu)點(diǎn)是在滿(mǎn)足一定的對(duì) 稱(chēng)條件下,可以實(shí)現(xiàn)嚴(yán)格的線性相位,這一點(diǎn)在 IIR數(shù)字濾波器中是難做到的。 4 三、 MATLAB 簡(jiǎn)介 MATLAB 是矩陣實(shí)驗(yàn)室( Matrix Laboratory)的簡(jiǎn)稱(chēng),是美國(guó)MathWorks 公司出品的商業(yè)數(shù)學(xué)軟件,用于算法開(kāi)發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計(jì)算的高級(jí)技術(shù)計(jì)算語(yǔ)言和交互式環(huán)境,主要包括MATLAB 和 Simulink 兩大部分。它將數(shù)值分析、矩陣計(jì)算、科學(xué)數(shù)據(jù)可視化以及非線性動(dòng)態(tài)系統(tǒng)的建模和仿真等諸多強(qiáng)大功能集成在一個(gè)易于使用的視窗環(huán)境中,為科學(xué)研究、工程設(shè)計(jì)以及必須進(jìn)行有效數(shù)值計(jì)算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計(jì)語(yǔ)言(如 C、 Fortran)的編輯模式,代表了當(dāng)今國(guó)際科學(xué)計(jì)算軟件的先進(jìn)水平。它在數(shù)學(xué)類(lèi)科技應(yīng)用軟件中在數(shù)值計(jì)算方面首屈一指。 MATLAB 的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式十分相似,故用MATLAB 來(lái)解算問(wèn)題要比用 C, FORTRAN 等語(yǔ)言完成相同的事情簡(jiǎn)捷得多,并且 MATLAB也吸收了像 Maple 等軟件的優(yōu)點(diǎn),使 MATLAB5 成為一個(gè)強(qiáng)大的數(shù)學(xué)軟件??梢灾苯诱{(diào)用,用戶(hù)也可以將自己編寫(xiě)的實(shí)用程序?qū)氲?MATLAB 函數(shù)庫(kù)中方便自己以后調(diào)用,此外許 MATLAB愛(ài)好者都編寫(xiě)了一些經(jīng)典的程序,用戶(hù)可以直接進(jìn)行下載就可以用。其格式為 subplot(m,n,I),表示圖形窗口被分割成 m 行 n列個(gè)子窗口,本子窗口是第 I 個(gè),適合于有多個(gè)圖的輸出。 6 四、 FIR 濾波器的設(shè)計(jì) (一)窗函數(shù)法 窗函數(shù)的理論根據(jù)。即用一個(gè)有限長(zhǎng)度的窗口函數(shù)序列 ()n? 來(lái)截取一個(gè)無(wú)限長(zhǎng)的序列 ()hdn獲得一個(gè)有限長(zhǎng)序列 ()hn ,即 ( ) ( ) ( )h n n hd n???,并且要滿(mǎn)足以下 兩個(gè)條件: 1.窗譜主瓣盡可能地窄,以獲得較陡的過(guò)渡帶; 2.盡量減少窗譜的最大旁瓣的相對(duì)幅度,也就是能量盡量集中于主瓣,使峰肩和紋波減小,就可增多阻帶的衰減。 (二)用窗函數(shù)設(shè)計(jì) FIR 濾波器 根據(jù)技術(shù)要求確定待求濾波器的單位取樣響應(yīng) ()hdn 。從 0w? 到 2w ?? 采樣 M點(diǎn),采樣值為 )( 2 kMjd eH ? 。實(shí)際計(jì)算公式 (42) ,可以用 ()jdHe? 的 M點(diǎn)采樣值,進(jìn)行 M點(diǎn)的IDFT(FFT)得到。例如 ,理性低通濾波器如公式 (43)所示: ( ) ,jw jwdcH e e W W??? ( ) 0 ,jwdcH e w w ?? ? ? ? (44) 求出單位取樣響應(yīng) ()hdn 如下式: s in ( ( ))() ()cd w n ahn na? ?? ? (45) 為保證 線性相位,取 ( 1) / 2aN?? ( 2)根據(jù)對(duì)過(guò)渡帶及阻帶衰減的要求,選擇窗函數(shù)的形式,并估計(jì)窗口長(zhǎng)度 N。因過(guò)渡帶 ?? 近似于窗口長(zhǎng)度 N成反比, ??? /AN , A決定于窗口形式。按照過(guò)渡帶及阻帶衰減情況,選擇窗函數(shù)形式。 ( 3)計(jì)算濾波器的單位取樣響應(yīng) ()hn , ( ) ( ) ( )h n n hd n???。如果要求線性相位,則要求 ()hdn 和 ()n? 均對(duì) ( 1)/2N? 對(duì)稱(chēng)。 ( 4)驗(yàn)算技術(shù)指標(biāo)是否滿(mǎn)足要求。如果 )( jweH 不滿(mǎn)足要求,根據(jù)具體情況重復(fù)第二、三、四步,直到滿(mǎn)足要求 [15]。 設(shè)待設(shè)計(jì)的濾波器的傳輸函數(shù)用 ()jdHe? 表示,對(duì)它在 0?? 到 2?之間等間隔采樣 N 點(diǎn),得到 ()dHk, 2( ) ( ) |jdd kDH k H e ? ?? ?? 0,1, 2,... 1kN??, (47) 再對(duì) N 點(diǎn) ()dHk進(jìn)行 IDFT,得到 ()hn