摘 要:隨著數(shù)字技術(shù)的發(fā)展,數(shù)字濾波器在許多領(lǐng)域得到廣泛的應用。研究一種在Matlab語言環(huán)境下設計IIR數(shù)字陷波濾波器的方法,在數(shù)字陷波濾波器設計過程中,先進行模擬低通濾波器的設計,然后進行模擬低通/模擬帶阻濾波器轉(zhuǎn)換,最后采用雙線性變化法將模擬陷波濾波器轉(zhuǎn)化成數(shù)字陷波濾波器。提出一種用所有零點和極點來表達數(shù)字陷波器傳遞函數(shù)的方法,同時給出以巴特沃斯模擬低通為原型設計數(shù)字陷波濾波器的程序。
關(guān)鍵詞:無限沖激響應;巴特沃斯濾波器;數(shù)字陷波濾波器;Matlab;雙線性變換
中圖分類號:TN713 文獻標識碼:B 文章編號:1004373X(2008)1812903
Design of Digital Butterworth Notch Filters
ZHANG Weixi
(Jiangsu Teachers University of Technology,Changzhou,213001,China)
Abstract:Along with the development of digital technology,digital filters are widely used in many fields,this paper introduces how to design a IIR digital notch filters in matlab environment.The design of digital notch filters can be achieved through three steps:firstly,the design of analog lowpass filter; secondly,it is analog lowpass to analog band stop filter conversion;at last,using the bilinear transformation make the analog notch filters change into digital notch filters.The paper also introduces how to design the transfer function of the digital notch filters using all the zeros and farthest points at the same time,it also introduces the program of the digital notch filters under Butterworth analog lowpass prototype.
Keywords:infinite impulse response;Butterworth filters;digital notch filter;Matlab;bilinear transformation
1 引 言
當帶阻濾波器的阻帶很窄時,被稱為陷波濾波器[1],又稱點阻濾波器。一個理想點阻濾波器的頻率響應是要在消除的信號頻率點,其值等于零; 而在其他頻率處,其值不為零,且要等于1。
理想的陷波濾波器的頻率響應式為:|H(ejω)|=1,ω≠ω0
0,ω=ω0(1)
理想的陷波濾波器的幅頻特性如圖1所示。
圖1 陷波濾波器的幅頻特性陷波濾波器的設計是以模擬濾波器為原型,通過一定變換轉(zhuǎn)換為數(shù)字濾波器。陷波濾波器的設計方法有2種:
(1) 依托模擬低通為設計原型,利用模擬頻率帶阻變換法,再利用雙線性變換法將前面所設計的帶阻濾波器數(shù)字化;
(2) 在頻域進行直接設計的z平面零極點法。
2 原 理
現(xiàn)以巴特沃斯低通模擬濾波器為設計的原型,歸一化的巴特沃斯模擬低通的傳遞函數(shù)為:Ha(p)=1∏N-1k=0(p-pk) k=0,1,…,N-1
由模擬濾波器的頻率轉(zhuǎn)換又知道模擬低通轉(zhuǎn)化為模擬帶阻的變換關(guān)系為:p = SBS2 + Ω20(2)式(2)中,p為模擬原型拉普拉斯變量(p=σ+jw);S為模擬帶阻的原型拉普拉斯變量(S=σ+jw);Ω0為模擬帶阻濾波器的幾何中心頻率;B為模擬阻帶的帶寬。
將式(2)代入到歸一化的巴特沃思低通傳遞函數(shù),得到模擬帶阻濾波器的傳遞函數(shù)Ha(S):Ha(S) = 1∏N-1k = 0 (SBS2 + Ω20-Pk )
通過雙線性變換法將得到模擬帶阻濾波器的傳遞函數(shù)進行數(shù)字化:S=2fs·z-1z+1=2T·z-1z+1(3)式(3)中T為采樣周期;fs為采樣頻率。
H(z)=[(4+Ω20T2)Z2+(2Ω20T2-8)Z+(Ω20T2+4)]N∏N-1k=0[(4+Ω20T2+2BT)Z2-Pk(2Ω20T2-8)Z-(Ω20T2Pk+4Pk+2BT)]將上述式子的分子、分母均分別因式分解。分子表達式:[(4+Ω20T2)Z2+(2Ω20T2-8)Z+(Ω20T2+4)]N中,a=4+Ω20T2,b=2Ω20T2-8,c=Ω20T2+4所以分子上述表達式的分子化簡為:Z-(8-2Ω20T2)±(2Ω20T2-8)2-4(4+Ω20T2)22(4+Ω20T2)N用同理去化簡分母,就得到用零、極點形式來表達的數(shù)字陷波濾波器的傳遞函數(shù)式子,具體表述如式(4)所示:
H(z)=Z-(8-2Ω20T2)±(2Ω20T2-8)2-4(4+Ω20T2)22(4+Ω20T2)N∏N-1k=0Z-Pk(2Ω20T2-8)±[Pk(2Ω20T2-8)]2-4(4+Ω20T2+2BT)(Ω20T2Pk+4Pk+2BT)2(4+Ω20T2+2BT)(4)
從式(4)中,可以看出該陷波器系統(tǒng)由2N個零點、2N個極點構(gòu)成,該陷波器的增益為1。零點分別是N個(8-2Ω20T2)+(2Ω20T2-8)2-4(4+Ω20T2)22(4+Ω20T2)。
可以看出這2N個零點假若全部寫入到一個數(shù)組中,在數(shù)值上其實只等于2個值,前N個零點都等于一個值,后N個零點等于都另外一個值。
而陷波器的極點也有2N個,但是不同于零點的是它們在數(shù)值上均不相等。這2N個極點的值是隨著Pk值的變化而變化的。前N個極點分別為:
Pk(2Ω20T2-8)+[Pk(2Ω20T2-8)]2-4(4+Ω20T2+2BT)(Ω20T2Pk+4Pk+2BT)2(4+Ω202T2+2BT)后N個極點分別為:Pk(2Ω20T2-8)-[Pk(2Ω20T2-8)]2-4(4+Ω20T2+2BT)(Ω20T2Pk+4Pk+2BT)2(4+Ω202T2+2BT)其中,Pk=ejπ(12+2k+12N) ,k=0,1,…,N-1。
3 方 法
有了數(shù)字陷波濾波器的傳遞函數(shù)的表達式,只需再推導出設計這樣的陷波濾波器的階數(shù)即可,下面就給出陷波器階數(shù)的推導過程[2]。
假設給定數(shù)字陷波濾波器的技術(shù)參數(shù):陷波頻率點foo。這里沒有給出阻帶和通帶的上下限頻率,所以不妨設出以下4個頻率點的參量以及2個衰減系數(shù)[3]:
阻帶下限頻率fsl;阻帶上限頻率fsh;通帶下限頻率fpl;通帶上限頻率fph通帶衰減系數(shù)ap;阻帶衰減系數(shù)as。首先,一般的設計步驟將數(shù)字帶阻濾波器的技術(shù)指標通過頻率預畸變轉(zhuǎn)化為模擬帶阻濾波器的技術(shù)指標:Ωsl=2Ttan2πfsl2fs=2Ttanπfslfs
Ωsh=2Ttan2πfsh2fs=2Ttanπfshfs
Ωph=2Ttan2πfph2fs=2Ttanπfphfs
Ωpl=2Ttan2πfpl2fs=2Ttanπfplfs設阻帶中心頻率:Ω0=Ωpl·Ωph=2Ttanπfphfstanπfplfs阻帶寬度為:B=Ωph-Ωpl=2Ttanπfphfs-tanπfplfs其次,將以上邊界頻率對阻帶寬度B進行歸一化:η=ΩB
具體計算過程如下所示:ηsh=ΩshB=tanπfshfstanπfphfs-tanπfplfs
ηph=ΩphB=tanπfphfstanπfphfs-tanπfplfs
ηpl=ΩplB=tanπfplfstanπfphfs-tanπfplfs
η0=ηphηpl=tanπfphfstanπfplfstanπfphfs-tanπfplfs所以:λsp= ηsh η2sh -η20=tanπfph fs-tanπfpl fs ·tanπfsh fstanπfsh fs2-tanπfph fstanπfpl fs
ksp=100.1ap-1100.1as-1
最后,將上述所有結(jié)果代入到式(5),計算出原型濾波器的階數(shù)N。n=-lg ksplg λsp(5)
顯而易見,計算的n值不一定是正整數(shù),所以原型濾波器原型的階數(shù)N為大于n的最小正整數(shù),在Matlab中用Ceil語言表示。
綜上所述,原型濾波器的階數(shù)N可用下式表達[2]:N=Ceil(log100.1ap-1100.1as-1logtanπfphfs-tanπfplfstanπfshfstanπfshfs2-tanπfphfstanπfplfs)所以數(shù)字陷波濾波器的階數(shù)為N值的2倍。
4 結(jié) 語
從上面的分折可以看出,這種設計方法具有以下幾個特點:
(1) 以巴特沃斯模擬低通為原型所設計的所有的數(shù)字陷波濾波器系統(tǒng)的增益為1;
(2) 這種數(shù)字陷波器不管在什么樣的情況,它的2N個零點因為具有重復性;
(3) 數(shù)字陷波器的階數(shù)都是巴特沃斯模擬低通原型階數(shù)的2倍;
(4) 所設計的數(shù)字陷波濾波器的2N個極點的值是隨著巴特沃斯模擬低通原型的歸一化的極點的值變化而變化的。
參 考 文 獻
[1]王剛,王艷芬,胡延軍.雙線性變換法中預畸變概念的補充\\.電氣電子教學學報,2006,28(2):3537.
[2]劉海華,陳心潔.基于FPGA的數(shù)字陷波器的設計與實現(xiàn)\\.中南民族大學學報:自然科學版,2004,23(4):4447.
[3]張淑敏,陳波.汽車噪音和語音信號的譜分析及陷波器的應用\\.武漢汽車工業(yè)大學學報,1999,21(1):6467.
[4]丁玉美,高西全.數(shù)字信號處理\\.2版.西安:西安電子科技大學出版社,2006.
[5]袁麗華,洪華松,漆新民.陷波濾波器的設計及應用\\.自動化與儀表,2004(4):2224.
[6]陳曉勇.IIR數(shù)字陷波器的設計及FPGA實現(xiàn)\\.中國科技信息,2006(22):8385.
[7]王靖,李永全.數(shù)字橢圓濾波器的Matlab設計與實現(xiàn)\\.2007,30(6):45,8.
[8]徐發(fā)強,胡健生,陳軍,等.RC二階有源濾波器的新型實驗方法\\.2008,31(2):6567.
作者簡介 張維璽 江蘇技術(shù)師范學院教授,校學術(shù)委員會副主任,校重點學科《電路與系統(tǒng)》帶頭人。主要從事電子信息工程的教學和科研工作。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文