劉 興,張 鶴
(中國(guó)艦船研究設(shè)計(jì)中心,武漢 430064)
基于MATLAB的IIR數(shù)字濾波器的設(shè)計(jì)與仿真分析
劉 興,張 鶴
(中國(guó)艦船研究設(shè)計(jì)中心,武漢 430064)
隨著數(shù)字信號(hào)處理技術(shù)和計(jì)算機(jī)控制技術(shù)的發(fā)展,數(shù)字濾波器在信號(hào)處理中得到廣泛的應(yīng)用。本文在MATLAB環(huán)境下,編程設(shè)計(jì)了巴特沃斯低通濾波器,濾除了給定信號(hào)的3次及以上的諧波。文中對(duì)4階、6階、8階巴特沃斯低通濾波器的效果進(jìn)行了對(duì)比分析,對(duì)濾波前后的信號(hào)進(jìn)行了FFT分析,仿真結(jié)果表明,本文的設(shè)計(jì)滿足要求。
MATLAB仿真;數(shù)字濾波器;巴特沃斯低通濾波器
隨著分布式發(fā)電與智能電網(wǎng)的發(fā)展,電力電子裝置將被廣泛應(yīng)用于現(xiàn)代電力系統(tǒng)中,由于其非線性特性,電力電子裝置的諧波電流和諧波電壓將對(duì)公用電網(wǎng)造成污染。因此,分析電網(wǎng)中的諧波分布就顯得尤為重要。諧波分析實(shí)質(zhì)上就是將信號(hào)分解為一系列頻率的信號(hào)的疊加,在分析設(shè)計(jì)中,總是希望濾除無用的頻率分量,保留所需的頻率分量,這個(gè)過程即是濾除諧波。濾除諧波需要使用濾波器,隨著數(shù)字信號(hào)處理技術(shù)、計(jì)算機(jī)技術(shù)等技術(shù)的發(fā)展,數(shù)字濾波器已在信號(hào)處理上得到廣泛應(yīng)用。
數(shù)字濾波器具有傳輸選擇特性的數(shù)字信號(hào)處理方式,輸人和輸出信號(hào)均為數(shù)字信號(hào),其實(shí)質(zhì)是一個(gè)利用有限精度算法實(shí)現(xiàn)線性時(shí)不變的離散系統(tǒng)。數(shù)字濾波器基本原理是利用離散系統(tǒng)的特性對(duì)輸入信號(hào)進(jìn)行加工或變換,從而改變輸入信號(hào)的頻譜或波形,讓所需頻率信號(hào)分量通過,并抑制無用信號(hào)分量輸出。數(shù)字濾波器與模擬濾波器具有相同的濾波特質(zhì),基于頻率響應(yīng)特性,其可分為低通、高通、帶通、帶阻等不同類型。此外,除了具有數(shù)字信號(hào)處理的優(yōu)點(diǎn)外,數(shù)字濾波器還具有濾波精度高、穩(wěn)定性好、靈活性強(qiáng)等優(yōu)點(diǎn)。其按照單位脈沖響應(yīng)特性,可分為無限長(zhǎng)單位脈沖響應(yīng)濾波器(IIR)以及有限長(zhǎng)單位脈沖響應(yīng)濾波器(FIR)。本文利用MATLAB,設(shè)計(jì)了滿足設(shè)計(jì)要求的低通IIR數(shù)字濾波器。
要設(shè)計(jì)出合理的數(shù)字濾波器,必須了解數(shù)字濾波器的各項(xiàng)指標(biāo)。
1)數(shù)字濾波器的傳輸函數(shù)H(ejw)
式中,|H(ejw)|為系統(tǒng)幅頻響應(yīng)特性,反映信號(hào)通過濾波器后不同頻率分量的衰減情況;Q(ω)為系統(tǒng)相頻響應(yīng)特性,反映信號(hào)通過濾波器后不同頻率分量在時(shí)間上的延時(shí)情況。
2)幅頻特性|H(ejw)|的指標(biāo)
數(shù)字濾波器性能指標(biāo)如圖1所示。圖中,ωp為通帶截止頻率,頻率范圍為0≤ω≤ωp;ωs為阻帶截止頻率,頻率范圍為ωs≤ω≤π;ωC為截止頻率;αP為通帶最大衰減量;αS為阻帶最小衰減量;δ1為通帶頻率范圍內(nèi)幅頻響應(yīng)的誤差范圍;δ2為阻帶頻率范圍內(nèi)幅頻響應(yīng)的誤差范圍。
圖1 數(shù)字濾波器性能指標(biāo)
通帶和阻帶頻率范圍內(nèi)允許的衰減一般用dB數(shù)表示,αP和αS分別定義為:
如將|H(ej0)|歸一化為1,式(2)、式(3)則表示成:
IIR數(shù)字濾波器設(shè)計(jì)方法一般可分為兩大類:
1)設(shè)計(jì)出滿足要求的模擬濾波器(AF)傳遞函數(shù)Ha(s),并將Ha(s)轉(zhuǎn)換成數(shù)字濾波器(DF)的傳遞函數(shù)H(z),見圖2。
2)直接借助計(jì)算機(jī)輔助設(shè)計(jì)來求取滿足要求的數(shù)字濾波器的傳遞函數(shù)。
其中將傳輸函數(shù)由模擬域變到數(shù)字域通常有兩種方法:脈沖響應(yīng)不變法和雙線性變換法。
圖2 數(shù)字濾波器的設(shè)計(jì)
將h(n)模擬為ha(t),并使得h(n)等于ha(t)的采樣值。對(duì)ha(t)進(jìn)行等間隔采樣,采樣間隔為T,得到:
對(duì)上式進(jìn)行Z變換,得到數(shù)字濾波器的系統(tǒng)函數(shù)為:脈沖響應(yīng)不變法具有以下優(yōu)點(diǎn):
1)頻率變換為線性關(guān)系,即ω=ΩT,數(shù)字濾波器能很好地重現(xiàn)模擬濾波器的頻率響應(yīng)特性;
2)數(shù)字濾波器的單位脈沖響應(yīng)特性完全模擬模擬濾波器的單位脈沖響應(yīng)特性,時(shí)域特性近似性好。
同時(shí),脈沖響應(yīng)不變法也有以下缺點(diǎn):
1)可能出現(xiàn)頻譜混迭失真,即S平面到?Z平面有多值映射關(guān)系;
2)因?yàn)轭l譜混迭的情況,其應(yīng)用受到限制,即使隨著T的減小,失真相應(yīng)減小,但運(yùn)算量和資源的要求大大提高,其實(shí)現(xiàn)變得困難。
雙線性變換法用正切變換實(shí)現(xiàn)非線性頻率壓縮,將S平面變換到S1平面(π±/T之間),再將S1平面映射到Z平面上。其中正切變換式為:
S1平面映射到Z平面的變換式為:
雙線性變換法的優(yōu)點(diǎn):可以消除頻譜混迭失真。由于此時(shí)S平面與Z平面是單值映射關(guān)系,從而避免了脈沖響應(yīng)不變法可能出現(xiàn)的頻譜“混迭”現(xiàn)象。
雙線性變換法的缺點(diǎn):由于犧牲了頻率變換線性性,此時(shí)模擬域和數(shù)字域是非線性映射,其瞬時(shí)響應(yīng)特性不如脈沖響應(yīng)不變法來得好。
基于以上分析,根據(jù)實(shí)際實(shí)際要求,本文采用雙線性變換法來實(shí)現(xiàn)IIR數(shù)字濾波器設(shè)計(jì)。
本文將先設(shè)計(jì)巴特沃斯低通濾波器,再通過雙線性變換得到滿足要求的數(shù)字濾波器。
設(shè)計(jì)一個(gè)模擬濾波器,實(shí)質(zhì)上就是尋求一個(gè)滿足設(shè)計(jì)要求的傳遞函數(shù)Ha(s)。
巴特沃斯低通濾波器的幅度平方函數(shù)|Ha(j?)|2用下式表示:
式中,Ωc為截止頻率;N為濾波器階數(shù)。
當(dāng)Ω=0時(shí),|H(jΩ)|=1;當(dāng)Ω=Ωc時(shí),|H(jΩ)|=1/2;當(dāng)Ω>Ωc時(shí),幅值迅速下降,同時(shí)N越大,幅值下降地越快,過渡帶將越窄。
巴特沃斯濾波器設(shè)計(jì)步驟如下所示:
1)基于給出的技術(shù)指標(biāo)αs、ωp、αP、ωs,求出濾波器階數(shù)N。
由(10)和(11)兩式可以得到:
由于式(16)求得的N可能有小數(shù)部分,故需取大于等于所得解的最小整數(shù)。
2)求歸一化后的極點(diǎn)pk,確定歸一化后的傳輸函數(shù)Ha(p)?;跇O點(diǎn)公式:
再代入下式:
當(dāng)然,也可根據(jù)階數(shù)N,利用查表法直接得到極點(diǎn)及歸一化傳輸函數(shù)。
3)求截止頻率Ωc。由式(12)可解得:
4)基于得到的Ha(p),求取實(shí)際所需濾波器的傳輸函數(shù)Ha(s)。把p=s/Ωc代入Ha(p)中,可得:
綜合上面的分析即設(shè)計(jì)滿足要求的巴特沃斯濾波器。本文根據(jù)階數(shù)N,查表得到4、6、8階巴特沃斯濾波器的傳輸函數(shù),濾波器的Bode圖見后文的仿真分析。
本設(shè)計(jì)在 MATLAB環(huán)境下編程實(shí)現(xiàn)。MATLAB含有強(qiáng)大的數(shù)字信號(hào)處理工具箱,借助MATLAB快捷方便的實(shí)現(xiàn)IIR數(shù)字濾波器的設(shè)計(jì)。
根據(jù)前面的分析,本文在MATLAB中編寫程序?qū)崿F(xiàn)了4階、6階、8階巴特沃斯低通濾波器,程序中將每一種濾波器以Bode圖的形式表現(xiàn)出來,并對(duì)濾波前后信號(hào)的波形做了對(duì)比分析。本設(shè)計(jì)中每一頻段的信號(hào)的幅值按照要求設(shè)計(jì),相位均設(shè)置為0度。
圖3為待處理的信號(hào),可以看出,信號(hào)中含有豐富的諧波成分,本設(shè)計(jì)中,信號(hào)的幅值是按照標(biāo)幺值給出,諧波信號(hào)的相位為0度。圖4為理想的濾波后信號(hào)的波形,可以看出信號(hào)的波形質(zhì)量大大改善,設(shè)計(jì)的濾波器應(yīng)該盡量逼近理想的濾波器。
圖3 濾波前信號(hào)的波形
圖4 理想的濾波后信號(hào)波形
圖5給出設(shè)計(jì)的三種濾波器的幅頻特性和相頻特性的Bode圖。可以看出,濾波器階次越低,速度越快,但濾波效果越差。
圖6給出三種濾波器的濾波特性比較,可以清晰的看出8階濾波器的濾波效果最好,但是造成的延時(shí)也最大,4階濾波器延時(shí)較短,但濾波效果相對(duì)較差。
圖7與圖8給出濾波前后信號(hào)的FFT分析,以8階濾波器為例。可以看出。濾波后,信號(hào)的諧波明顯減少,可見濾波器的設(shè)計(jì)達(dá)到了要求。
圖5 設(shè)計(jì)濾波器系統(tǒng)的Bode圖
圖6 實(shí)際的濾波效果圖
圖7 濾波前信號(hào)FFT分析
圖8 濾波后信號(hào)FFT分析
數(shù)字濾波是數(shù)字信號(hào)處理的重要內(nèi)容,數(shù)字濾波器可分為IIR和FIR兩大類。對(duì)于IIR數(shù)字濾波器的設(shè)計(jì),需要借助模擬濾波器,再將模擬濾波器轉(zhuǎn)化為數(shù)字濾波器,本文比較了脈沖響應(yīng)不變法和雙線性變換法的優(yōu)劣,最終選擇雙線性變化法設(shè)計(jì)。根據(jù)IIR濾波器的特點(diǎn),在MATLAB壞境下采用雙線性變換法、設(shè)計(jì)了IIR數(shù)字濾波器。
從仿真波形上可以看出,濾波器階數(shù)越高,濾波效果越好,但是造成的延時(shí)也越大,而且濾波器的階數(shù)越高,設(shè)計(jì)越復(fù)雜,系統(tǒng)的成本越高。因此,工程實(shí)際中如何做到降低濾波器階次,但同時(shí)保證濾波效果還需要進(jìn)一步研究。
[1]鄒云屏.數(shù)字信號(hào)處理[M].武漢:華中科技大學(xué)出版社,2002.
[2]程佩青.數(shù)字信號(hào)處理教程[M].北京:清華大學(xué)出版社,2003.
[3]羅軍輝,羅勇江,等.MATLAB7.0在數(shù)字信號(hào)處理中的應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2005.
[4]余成波,楊菁,等.數(shù)字信號(hào)處理及MATLAB實(shí)現(xiàn)[M].北京:清華大學(xué)出版社,2005.
[5]劉樹棠譯.《信號(hào)與系統(tǒng)》(第二版)[M].西安:西安交大出版社,1998.
Design and Simulating Analysis of MATLAB Based IIR Digital Filter
LIU Xing,ZHANG He
(Ship Research and Design Center of China,Wuhan 430064,China)
With the development of digital signal processing and control technology,digital filter has been widely used in signal processing.In this paper,a Butterworth low-pass filter,which can filter out high-order harmonic of the given signal,is designed based on MATLAB.The filtering result of 4 order,6 order and 8 order Butterworth low-pass filter is compared and analyzed with FFT analysis on the signal before and after being filtered.The design method is validated by simulation.
MATLAB simulation; digital filter; Butterworth low-pass filter
TN713
A
10.16443/j.cnki.31-1420.2015.05.016
劉興(1980-),男,工程師。研究方向:船舶電氣自動(dòng)化。