用累試法直接在Z平面設(shè)計(jì)數(shù)字濾波器的研究
掃描二維碼
隨時(shí)隨地手機(jī)看文章
O 引 言
數(shù)字濾波器是數(shù)字信號處理的一個(gè)重要分支。所謂數(shù)字濾波器,是指輸入、輸出均為數(shù)字信號通過一定運(yùn)算關(guān)系改變輸入信號所含頻率成分的相對比例或者濾除某些頻率成分的器件。數(shù)字濾波器和模擬濾波器具有同樣的濾波功能,但具有不同的實(shí)現(xiàn)方式。前者是利用有限精度算法來實(shí)現(xiàn),精度高,穩(wěn)定性強(qiáng),實(shí)現(xiàn)靈活且不要求阻抗匹配,故在很多方面優(yōu)于模擬濾波器;數(shù)字濾波器是利用離散系統(tǒng)特性對系統(tǒng)輸入信號進(jìn)行加工和變換,改變輸入序列的頻譜或信號波形,讓有用頻率的信號分量通過,抑制無用的信號分量輸出。數(shù)字濾波器的分類有很多種,若從實(shí)現(xiàn)的網(wǎng)絡(luò)結(jié)構(gòu)分類,可分為無限脈沖響應(yīng)濾波器(IIR)和有限脈沖響應(yīng)濾波器(FIR)兩種。從結(jié)構(gòu)上看,IIR數(shù)字濾波器采用遞歸結(jié)構(gòu),F(xiàn)IR數(shù)字濾波器主要采用非遞歸的結(jié)構(gòu)。本文從另外一個(gè)角度出發(fā),直接在Z平面上選擇零、極點(diǎn),這里稱為累試法。它既可以設(shè)計(jì)IIR型數(shù)字濾波器,也可以設(shè)計(jì)FIR型濾波器。
l 數(shù)字濾波器設(shè)計(jì)原理與方法
IIR濾波器設(shè)計(jì)方法通常是借助于模擬濾波器的設(shè)計(jì)方法進(jìn)行的,先根據(jù)技術(shù)指標(biāo)設(shè)計(jì)出模擬的低通濾波器,然后將模擬濾波器通過變換來設(shè)計(jì)數(shù)字濾波器,即把s平面映射到Z平面。這一類方法相對容易一些,這是因?yàn)槟M濾波器設(shè)計(jì)方法已經(jīng)很成熟,設(shè)計(jì)出的濾波器具有運(yùn)算項(xiàng)數(shù)少的優(yōu)點(diǎn)。而對于FIR數(shù)字濾波器的設(shè)計(jì)方法,其一主要借助于加各種窗函數(shù)來實(shí)現(xiàn),其二通過頻率采樣實(shí)現(xiàn)。
2 累試法設(shè)計(jì)數(shù)字濾波器的思路及原則
所謂累試法就是直接利用軟件,在Z平面上反復(fù)多次設(shè)置濾波器的零、極點(diǎn),觀察幅頻、相位特性是否滿足預(yù)先設(shè)定的技術(shù)指標(biāo),如果滿足技術(shù)指標(biāo),則軟件輸出濾波器的系統(tǒng)函數(shù)和濾波器的結(jié)構(gòu),否則還繼續(xù)在Z平面上設(shè)置零、極點(diǎn),直到滿足技術(shù)要求為止。這種設(shè)計(jì)濾波器的思想與成熟的設(shè)計(jì)方法是一致的,其實(shí)質(zhì)是一個(gè)逐步逼近的過程。
根據(jù)文獻(xiàn)可知系統(tǒng)函數(shù)受系統(tǒng)的零、極點(diǎn)的影響。而零點(diǎn)在相應(yīng)頻率處產(chǎn)生谷值,極點(diǎn)產(chǎn)生峰值。并且零點(diǎn)離單位圓越近陷落越深,極點(diǎn)離單位圓越近,則波峰越陡峭,同樣地,在相同位置設(shè)置的零點(diǎn)、極點(diǎn)越多,能達(dá)到的陡峭效果越好。根據(jù)這個(gè)思路,可以在Z平面上選擇零、極點(diǎn),當(dāng)系統(tǒng)幅度特性滿足設(shè)計(jì)指標(biāo),由零、極點(diǎn)來確定系統(tǒng)函數(shù),從而確定濾波器的結(jié)構(gòu)。按照這種方法設(shè)計(jì)應(yīng)遵循以下的原則:
(1)設(shè)置零、極點(diǎn)時(shí)主要考慮濾波器是何種類型。如果設(shè)計(jì)FIR類型,不設(shè)置極點(diǎn),只設(shè)置零點(diǎn),這樣的濾波器為非遞歸型。一旦設(shè)置了極點(diǎn)有可能使濾波器變成遞歸型的。
(2)如果要濾除某一頻率,則可以在相應(yīng)數(shù)字頻率處設(shè)置一零點(diǎn);相反,則可以設(shè)置一極點(diǎn)。
(3)根據(jù)濾波器的穩(wěn)定條件,極點(diǎn)應(yīng)該設(shè)置在單位圓的內(nèi)部。
(4)為了便于實(shí)現(xiàn)濾波器的結(jié)構(gòu),零、極點(diǎn)應(yīng)該成對設(shè)置(零、極點(diǎn)在實(shí)軸上除外),所謂成對設(shè)置就是一對零點(diǎn)應(yīng)該是共軛的,對于極點(diǎn)同樣如此。
(5)要使某頻率處陷落越深或波峰越陡峭,則可以在相應(yīng)位置多設(shè)置幾個(gè)零點(diǎn)或極點(diǎn)。
(6)所謂低頻是指在0附近,高頻這在π附近,數(shù)字頻率范圍為O~2π。
(7)零點(diǎn)z與其關(guān)于圓周對稱點(diǎn)具有相同的濾波效應(yīng)。
(8)由于系統(tǒng)函數(shù)單位圓外的極點(diǎn)zk用代替不影響系統(tǒng)的幅頻特性,相頻特性有所不同。因此當(dāng)遇到系統(tǒng)涉及單位圓外部極點(diǎn)時(shí),可以用其單位圓內(nèi)部鏡像極點(diǎn)代替。
(9)在同點(diǎn)分別選擇一個(gè)零點(diǎn)和一個(gè)極點(diǎn),存在零極點(diǎn)對消現(xiàn)象,對系統(tǒng)沒有影響。
3 軟件實(shí)現(xiàn)與應(yīng)用
軟件設(shè)計(jì)要求是便于操作、能夠用鼠標(biāo)、鍵盤輸入零、極點(diǎn);能顯示頻譜和相位特性;能夠輸出傳輸函數(shù)和結(jié)構(gòu)。而Visual Basic 6.O屬于可視化編程,編程思路較為簡單,易于實(shí)現(xiàn)。
3.1 計(jì)算機(jī)輔助設(shè)計(jì)界面
計(jì)算機(jī)輔助設(shè)計(jì)系統(tǒng)界面參數(shù)設(shè)置方便直觀,便于分析和理解。其界面如圖l所示。計(jì)算機(jī)輔助設(shè)計(jì)的界面主要由文本框、組合框、圖像框組成。其中4個(gè)文本框用來設(shè)置零、極點(diǎn)的實(shí)部、虛部,在文本框中輸入相應(yīng)數(shù)據(jù)后,按零點(diǎn)輸入按鈕輸入零點(diǎn),此時(shí)會在下面的圖像框中相應(yīng)位置顯示一個(gè)小圓圈,表示在該處選擇了一個(gè)零點(diǎn);也可以按下“選擇零點(diǎn)”,直接用鼠標(biāo)在下面的z平面單擊鼠標(biāo)左鍵,也選擇了一個(gè)零點(diǎn)。對于極點(diǎn)輸入同上述,用“+”表示選擇了極點(diǎn)。這時(shí)可以按下右邊按鈕控件“頻譜特性”,則會在右上邊的幅頻特性圖像框中顯示系統(tǒng)的幅頻特性,同理按下“相位特性”則會顯示相頻特性。如果滿足設(shè)計(jì)要求則按下“濾波器的數(shù)學(xué)模型”,會彈出一個(gè)對話框,里面顯示了系統(tǒng)的傳輸函數(shù);如果按下“濾波器結(jié)構(gòu)”,則彈出系統(tǒng)的結(jié)構(gòu)圖。
3.2 應(yīng)用實(shí)例
例1:設(shè)置一個(gè)帶通濾波器,帶通中心頻率為ω0=π/2,ω=0,π時(shí),幅度衰減為0。
確定極點(diǎn)為用軟件在Z平面上選擇零、極點(diǎn),得到的幅度特性和相位特性如圖2,圖3所示。其幅頻特性與參考文獻(xiàn)一致。
鼠標(biāo)單擊“濾波器的數(shù)學(xué)模型”,便得到系統(tǒng)函數(shù)
例2:設(shè)計(jì)一梳狀濾波器。
設(shè)計(jì)過程同上,其幅頻特性如圖4所示。
4 結(jié) 語
用累試法直接設(shè)計(jì)數(shù)字濾波器,具有簡單、直觀、快速的優(yōu)點(diǎn),Visual Basic提供了一種可視界面的設(shè)計(jì)方法,極大地提高了應(yīng)用程序開發(fā)的效率。程序運(yùn)行結(jié)果理想,波形直觀。所產(chǎn)生的幅頻特性、相頻特性滿足設(shè)計(jì)需要,為設(shè)計(jì)濾波器提供了一種簡單可靠的方法。