丁宇,薛開(kāi)昶,孫偉
(1.中國(guó)電子科技集團(tuán)公司第十四研究所,江蘇 南京 210039;2.國(guó)家精密微特電機(jī)工程技術(shù)研究中心,貴州 貴陽(yáng) 550008)
?
有源模擬濾波器的MATLAB輔助設(shè)計(jì)方法
丁宇1,薛開(kāi)昶2,孫偉1
(1.中國(guó)電子科技集團(tuán)公司第十四研究所,江蘇 南京 210039;2.國(guó)家精密微特電機(jī)工程技術(shù)研究中心,貴州 貴陽(yáng) 550008)
摘要:在簡(jiǎn)要概述傳統(tǒng)有源模擬濾波器設(shè)計(jì)方法的同時(shí)給出利用MATLAB進(jìn)行有源模擬濾波器設(shè)計(jì)的方法,通過(guò)對(duì)有源模擬濾波器兩種設(shè)計(jì)方法關(guān)鍵步驟的比較,給出了MATLAB能有效地簡(jiǎn)化有源模擬濾波器設(shè)計(jì)的結(jié)論。結(jié)合有源模擬濾波器的特性,給出了零極點(diǎn)分配原則和級(jí)聯(lián)原則;同時(shí)介紹了如何用MATLAB給出濾波器總體和局部幅/相頻特性,為濾波器調(diào)試提供了參考。通過(guò)設(shè)計(jì)實(shí)例,驗(yàn)證了本文提出的設(shè)計(jì)方案的便捷性、直觀性、可行性。
關(guān)鍵詞:模擬;有源;濾波器;MATLAB
0引言
有源模擬濾波器主要具有完成信號(hào)調(diào)理的功能,在計(jì)量測(cè)試領(lǐng)域,這種濾波器對(duì)于信號(hào)檢測(cè)起著重要的作用?,F(xiàn)階段有源模擬濾波器傳統(tǒng)的人工設(shè)計(jì)已比較成熟,但這種方式的設(shè)計(jì)過(guò)程復(fù)雜,計(jì)算量大。EDA(Electronic Design Automation)技術(shù)的不斷發(fā)展,顯著降低了模擬濾波器設(shè)計(jì)的難度和工作量。較為典型的模擬濾波器設(shè)計(jì)軟件有Nuhertz公司的Filter Solutions,Schematica公司的Filter Wiz Pro,Linear公司的FilterCAD,Microchip公司的FilterLab。這些軟件中Filter Solutions和Filter Wiz Pro功能較為齊全,但價(jià)格較為昂貴;FilterCAD和FilterLab是免費(fèi)軟件,但FilterCAD只能給出基于Linear公司生產(chǎn)器件的濾波器設(shè)計(jì),而FilterLab的功能較為單一。
本文給出了一種基于MATLAB的有源模擬濾波器的設(shè)計(jì)方法,不需要查取濾波器的設(shè)計(jì)曲線及表格,并可查看所設(shè)計(jì)濾波器的頻域特性,簡(jiǎn)化濾波器階數(shù)、角頻率和品質(zhì)因數(shù)的計(jì)算過(guò)程。
1模擬濾波器設(shè)計(jì)方法
1.1.1傳統(tǒng)方法
首先,計(jì)算濾波器的陡度系數(shù)Aslope;然后,對(duì)照歸一化低通濾波器衰減特性曲線,找出一條階數(shù)盡可能小但又能使其陡度超過(guò)Aslope的曲線,則這條曲線上的數(shù)字即為所設(shè)計(jì)濾波器需要的最小階數(shù)n[1]。
由于確定濾波器階數(shù)的衰減特性曲線以歸一化的低通濾波器為標(biāo)準(zhǔn),故陡度系數(shù)的計(jì)算過(guò)程包含將高通、帶通和帶阻濾波器向低通濾波器轉(zhuǎn)化的歸算,及將實(shí)際頻率向單位頻率的歸算;低通、高通、帶通或帶阻濾波器需要采用不同的陡度計(jì)算公式。
1.1.2MATLAB輔助設(shè)計(jì)方法
在MATLAB軟件下可以調(diào)用表1中函數(shù)計(jì)算濾波器的最小階數(shù)n和截止角頻率ωn。表1中的ωp和ωs表示通帶和阻帶角頻率,單位為rad/s,Rp和Rs表示通帶和阻帶的紋波或衰減,單位為dB。對(duì)于低通、高通、帶通和帶阻濾波器,ωp和ωs的調(diào)用形式及約束條件如表2所示[2-5]。
表1 濾波器最小階數(shù)求取函數(shù)
表2 ωp和ωs的調(diào)用形式及約束
本文中所說(shuō)的傳統(tǒng)設(shè)計(jì)和基于MATLAB的設(shè)計(jì)中求得的最小階數(shù)n在低通和高通濾波器中為實(shí)際濾波器的階數(shù),在帶通和帶阻中為實(shí)際濾波器階數(shù)的一半。原因是在低通到帶通或帶阻的變換中一對(duì)零極點(diǎn)將變換成兩對(duì)零極點(diǎn)。這一點(diǎn)需要特別注意。
1.2.1傳統(tǒng)方法
首先,根據(jù)上一步得到的濾波器階數(shù)n,查找歸一化低通濾波器的極點(diǎn);然后,將歸一化低通濾波器極點(diǎn)去歸一化,獲取各級(jí)濾波器的參數(shù)[6]。去歸一化過(guò)程包含低通向?qū)嶋H頻率高通、帶通和帶阻濾波器轉(zhuǎn)化的歸算,及單位頻率向?qū)嶋H頻率的歸算。當(dāng)n為偶數(shù)時(shí),設(shè)經(jīng)查表得到歸一化低通極點(diǎn)為-ai±jbi(i=1,2,…,n/2);當(dāng)n為奇數(shù)時(shí),設(shè)經(jīng)查表得到的歸一化低通極點(diǎn)為-ai±jbi(i=1,2,…,(n-1)/2)和-a0。
對(duì)于帶通濾波器,歸一化低通至帶阻轉(zhuǎn)化時(shí),一對(duì)低通復(fù)極點(diǎn)-ai±jbi對(duì)應(yīng)兩對(duì)帶通復(fù)極點(diǎn),一個(gè)低通實(shí)極點(diǎn)-a0轉(zhuǎn)化為一對(duì)帶通復(fù)極點(diǎn),去歸一化過(guò)程包括以下步驟:①計(jì)算帶通濾波器的品質(zhì)因數(shù)Qbp;②根據(jù)帶通濾波器的品質(zhì)因數(shù)Qbp,由一對(duì)低通復(fù)極點(diǎn)-ai±jbi計(jì)算兩對(duì)帶通復(fù)極點(diǎn)所對(duì)應(yīng)的角頻率ωbpi1,ωbpi2和品質(zhì)因數(shù)Qbpi1,Qbpi2,由一個(gè)低通實(shí)極點(diǎn)-a0計(jì)算一對(duì)帶通復(fù)極點(diǎn)對(duì)應(yīng)的角頻率ωbp0和品質(zhì)因數(shù)Qbp0,ωbpi1和Qbpi1對(duì)應(yīng)一節(jié)2階帶通濾波器電路,ωbpi2和Qbpi2對(duì)應(yīng)一節(jié)2階帶通濾波器電路,ωbp0和Qbp0對(duì)應(yīng)一節(jié)2階帶通濾波器電路。
對(duì)于帶阻濾波器,歸一化低通至帶阻轉(zhuǎn)化時(shí),一對(duì)低通復(fù)極點(diǎn)-ai±jbi對(duì)應(yīng)兩對(duì)帶阻復(fù)極點(diǎn)和虛零點(diǎn),一個(gè)低通實(shí)極點(diǎn)-a0對(duì)應(yīng)一對(duì)帶阻復(fù)極點(diǎn)和虛零點(diǎn);設(shè)一對(duì)低通復(fù)極點(diǎn)-ai±jbi對(duì)應(yīng)的兩對(duì)復(fù)極點(diǎn)角頻率和品質(zhì)因數(shù)為ωbri1,ωbri2和Qbri1,Qbri2,兩對(duì)虛零點(diǎn)角頻率為ωbr∞i1,ωbr∞i2;設(shè)一個(gè)低通實(shí)極點(diǎn)-a0對(duì)應(yīng)的一對(duì)復(fù)極點(diǎn)角頻率和品質(zhì)因數(shù)為ωbr0和Qbr0,一對(duì)虛零點(diǎn)角頻率為ωbr∞0。則去歸一化過(guò)程包括以下步驟:①計(jì)算帶阻濾波器的品質(zhì)因數(shù)Qbr;②根據(jù)帶阻濾波器的品質(zhì)因數(shù)Qbr,由一對(duì)低通復(fù)極點(diǎn)-ai±jbi計(jì)算所對(duì)應(yīng)的ωbri1,ωbri2,Qbri1,Qbri2,ωbr∞i1和ωbr∞i2,由一個(gè)實(shí)極點(diǎn)-a0計(jì)算對(duì)應(yīng)的ωbr0,Qbr0和ωbr∞0。ωbri1,Qbri1和ωbr∞i1對(duì)應(yīng)一節(jié)2階帶阻濾波器電路;ωbri2,Qbri2和ωbr∞i2對(duì)應(yīng)一節(jié)2階帶阻濾波器電路;ωbr0,Qbr0和ωbr∞0對(duì)應(yīng)一節(jié)2階帶阻濾波器電路。
1.2.2MATLAB輔助設(shè)計(jì)方法
在MATLAB下可以用表3中的函數(shù)根據(jù)上一步所確定的最小階數(shù)n和截止角頻率ωn計(jì)算出傳遞函數(shù)的零極點(diǎn)和分子分母多項(xiàng)式系數(shù)[2-5],分別用于獲取以下兩種形式的傳遞函數(shù):
(1)
(2)
表3中的‘ftype’在低通濾波器設(shè)計(jì)時(shí)用‘low’或省略,高通濾波器設(shè)計(jì)時(shí)用‘high’,帶通濾波器設(shè)計(jì)時(shí)省略,帶阻濾波器設(shè)計(jì)時(shí)用‘stop’。b和a分別為傳遞函數(shù)分子和分母系數(shù);z,p和k分別為零點(diǎn)、極點(diǎn)和增益。
設(shè)由表3中函數(shù)求出的零極點(diǎn)為-ai±jbi。當(dāng)bi=0時(shí)為實(shí)極點(diǎn),當(dāng)ai=0時(shí)為虛極點(diǎn)。此時(shí)零極點(diǎn)-ai±jbi所對(duì)應(yīng)的1階電路(對(duì)應(yīng)實(shí)極點(diǎn))或2階電路的角頻率ωi和品質(zhì)因數(shù)Qi為
(3)
(4)
表3 零極點(diǎn)及傳遞函數(shù)求取函數(shù)
由上述比較可以看出,MATLAB在進(jìn)行模擬濾波器設(shè)計(jì)時(shí)與傳統(tǒng)方法相比具有以下優(yōu)點(diǎn):①不需要查表。在傳統(tǒng)濾波器設(shè)計(jì)中,在階數(shù)確定時(shí)需要對(duì)照響應(yīng)曲線才能確定階數(shù),然而,對(duì)于不同的響應(yīng)類(lèi)型(巴特沃茲、切比雪夫等)和不同的通帶紋波,就有不同的曲線,使得濾波器必須在使用濾波器設(shè)計(jì)手冊(cè)的情況下才能進(jìn)行設(shè)計(jì)。而采用MATLAB設(shè)計(jì)時(shí)可不用查表。②應(yīng)用范圍更廣。采用MATLAB能設(shè)計(jì)一些傳統(tǒng)濾波器設(shè)計(jì)手冊(cè)中通常沒(méi)有的響應(yīng)類(lèi)型(如反切比雪夫、橢圓等)和紋波值的濾波器。③設(shè)計(jì)更為簡(jiǎn)捷。由上述傳統(tǒng)方法和采用MATLAB進(jìn)行模擬濾波器設(shè)計(jì)的過(guò)程可以看出,MATLAB可以省去陡度系數(shù)求取、歸一化、去歸一化、零極點(diǎn)變換等一些傳統(tǒng)方法必需的步驟,從而使設(shè)計(jì)更為簡(jiǎn)捷。
2濾波器設(shè)計(jì)時(shí)的幾個(gè)關(guān)鍵點(diǎn)
在零極點(diǎn)或傳遞函數(shù)系數(shù)求出之后,可以用函數(shù)zplane(z,p)和zplane(b,a)查看濾波器的零極圖。在含有零點(diǎn)的濾波器中,為實(shí)現(xiàn)動(dòng)態(tài)范圍的最大化和通帶內(nèi)損失最小化,零極點(diǎn)分配原則一般為:按極點(diǎn)對(duì)離虛軸的距離由近至遠(yuǎn),依次選擇離這對(duì)極點(diǎn)最近的零點(diǎn)與之匹配,直至零極點(diǎn)被完全匹配之后結(jié)束。這是由于同一節(jié)濾波器中的極點(diǎn)和零點(diǎn)相距越近,隨著頻率變化,濾波器傳遞函數(shù)中分母項(xiàng)和分子項(xiàng)的增益隨頻率變化的規(guī)律越一致,濾波器傳遞函數(shù)的增益隨頻率變化的規(guī)律越平緩。特別說(shuō)明:當(dāng)存在一個(gè)實(shí)極點(diǎn)時(shí),與之相匹配的是處于原點(diǎn)的一個(gè)零點(diǎn)和一個(gè)無(wú)窮遠(yuǎn)處的零點(diǎn);當(dāng)零點(diǎn)個(gè)數(shù)少于極點(diǎn)個(gè)數(shù)時(shí),采用添加無(wú)窮遠(yuǎn)處零點(diǎn)的方法,使零點(diǎn)和極點(diǎn)個(gè)數(shù)相等[7]。
在多級(jí)1階或2階節(jié)級(jí)聯(lián)時(shí),由于輸入信號(hào)中會(huì)含有高頻噪聲,第一節(jié)選擇有低通或帶通特性的節(jié)會(huì)使第一節(jié)之后的信號(hào)中含有的高頻噪聲被顯著削弱,減小對(duì)后級(jí)濾波器的影響,故第一節(jié)一般優(yōu)先選擇有低通或帶通特性的節(jié);由于濾波器自身會(huì)產(chǎn)生頻帶較寬的噪聲,當(dāng)最后一節(jié)選擇具有低通或帶通特性的節(jié)時(shí)可以更好地限制濾波器自身產(chǎn)生的噪聲頻帶,故最后一節(jié)一般優(yōu)先選擇具有低通或帶通特性的節(jié);同時(shí),因?yàn)槠焚|(zhì)因數(shù)高的節(jié)比品質(zhì)因數(shù)低的節(jié)具有更大的增益變化范圍,故對(duì)于同一輸入,當(dāng)品質(zhì)因數(shù)低的節(jié)在前面時(shí),濾波器更不容易飽和,也不用對(duì)有用頻帶內(nèi)的信號(hào)造成過(guò)度的衰減。因此,從前至后依次選擇品質(zhì)因數(shù)由低至高的節(jié)可以獲得較高的動(dòng)態(tài)范圍[7]。
濾波器的增益的分配需要考慮各節(jié)濾波器的品質(zhì)因數(shù),一般應(yīng)將高的增益分配到品質(zhì)因數(shù)低的節(jié)上,這樣能使濾波器實(shí)現(xiàn)更寬的動(dòng)態(tài)范圍,也可以通過(guò)折衷運(yùn)放的增益和壓擺率來(lái)實(shí)現(xiàn)降低濾波器中對(duì)運(yùn)放的性能需求。但是由于定量的確定各級(jí)增益與品質(zhì)因數(shù)的關(guān)系較為復(fù)雜,故工程上,一般把濾波器所需要的增益平均分到各節(jié)。這種增益分配方式得到的結(jié)果一般情況下不是最優(yōu)的,但簡(jiǎn)單方便,已被廣泛接受。
可以用函數(shù)ω=logspace(x,y,N)和freqs(b,a,ω)得到濾波器的幅頻和相頻特性。函數(shù)ω=logspace(x,y,N)表示一個(gè)以10x為起點(diǎn),10y為終點(diǎn),中間有N個(gè)對(duì)數(shù)等間隔點(diǎn)的向量。函數(shù)freqs(b,a,ω)則根據(jù)傳遞函數(shù)分子多項(xiàng)式系數(shù)b和分母多項(xiàng)式系數(shù)a,在角頻率范圍ω內(nèi)繪制出濾波器的響應(yīng)曲線[2-5]。當(dāng)b和a為整體或局部某一節(jié)或幾節(jié)傳遞函數(shù)的多項(xiàng)式系數(shù)時(shí),則可以查看濾波器整體或局部的響應(yīng),為濾波器調(diào)試提供參考數(shù)據(jù),從而降低濾波器調(diào)試難度。
3實(shí)驗(yàn)測(cè)試
假設(shè)需要設(shè)計(jì)一個(gè)帶通濾波器,中心頻率f0為1000 Hz,通帶紋波Rp=0.5 dB,-3 dB帶寬為50 Hz,在750 Hz和1250 Hz處衰減至少40 dB。則用MATLAB進(jìn)行設(shè)計(jì)的步驟如下:
1)求取最小階數(shù)。通過(guò)表3中函數(shù)[b,a] =ellip可得最小階數(shù)n=2,另外ωn=[6126,6440] 。
2)求取零極點(diǎn)。通過(guò)函數(shù)[z,p,k] =ellip得到兩對(duì)零點(diǎn)和兩對(duì)極點(diǎn)分別為:z=±j4674.3,±j8440.6;p=-114.2±j6440.8,-108.6±j6123.7;k=0.01。
由上述零極點(diǎn)和增益分配原則,取第一個(gè)2階節(jié)的參數(shù)為:z1=±j4674.3,p1=-108.6±j6123.7,k=0.1。第二個(gè)2階節(jié)的參數(shù)為:z2=±j8440.6,p2=-114.2±j6440.8,k=0.1。
再根據(jù)零、極點(diǎn)與角頻率、品質(zhì)因數(shù)的關(guān)系,得第一節(jié)和第二節(jié)的參數(shù)分別為:ω1=6125 rad/s,Q1=28.2,ωr1=4674 rad/s;ω2=6442 rad/s,Q2=28.2,ωr2=8441 rad/s。
3)求幅/相頻特性曲線。根據(jù)函數(shù)zp2tf及freqs可得如圖1所示的整體幅頻特性理論曲線。
4)確定電路參數(shù)。選取圖2所示的電路[1]實(shí)現(xiàn)濾波器。第一節(jié)時(shí)開(kāi)關(guān)S接在1處,第二節(jié)時(shí)開(kāi)關(guān)S接在2處。電容C的取值由式(5)[8]確定,有
1≤100/f0C≤10
(5)
式中:C為電容,μF;f0為中心頻率,Hz。因?yàn)閒0=1 kHz,故可取C=0.1μF。由
R1=R4=Q/ωC
(6)
R2=R3=R1/Q
(7)
(8)
R6=kR7
(9)
聯(lián)立式(6)~(9)式,可得表4中的各個(gè)參數(shù)值。表4中電容單位為μF,電阻單位為kΩ。
表4 濾波器參數(shù)表
實(shí)測(cè)電路幅頻特性如圖1中實(shí)測(cè)曲線所示。中心頻率為1022 Hz,-3 dB帶寬為987~1082 Hz,在頻率低于750 Hz和高于1025 Hz范圍內(nèi)幅度衰減大于40 dB。實(shí)測(cè)曲線與理論曲線基本相符。
4結(jié)束語(yǔ)
通過(guò)傳統(tǒng)方法與采用MATLAB輔助設(shè)計(jì)的方法相比較,證明了采用MATLAB進(jìn)行模擬濾波器更為簡(jiǎn)捷。同時(shí),通過(guò)實(shí)驗(yàn)結(jié)果驗(yàn)證了MATLAB設(shè)計(jì)模擬有源濾波器的方法是可行的,實(shí)測(cè)曲線與理論曲線相似。采用MATLAB進(jìn)行模擬濾波器有較好的應(yīng)用前景。
圖1 濾波器整體幅頻特性圖
圖2 濾波器電路圖
參考文獻(xiàn)
[1] Arthur B Willianms,F(xiàn)red J Taylor.電子濾波器設(shè)計(jì)[M] .寧彥卿,姚金科,譯.北京:科學(xué)出版社,2008.
[2] 趙開(kāi)才.基于MATLAB的窄帶模擬帶通濾波器的快速設(shè)計(jì)[J] .自動(dòng)化技術(shù)與應(yīng)用,2014,33(5):66-69,89.
[3] 林俊,黃煒.基于MATLAB的模擬濾波器設(shè)計(jì)實(shí)現(xiàn)[J] .電腦知識(shí)與技術(shù),2008,4(1):163-165.
[4] 肖有平,胡霞.高階橢圓濾波器的設(shè)計(jì)與仿真[J] .電子測(cè)量技術(shù),2007,30(3):147-150.
[5] 史燕,楊小雪.基于Matlab和Multisim的綜合性實(shí)驗(yàn)——橢圓濾波器設(shè)計(jì)與仿真[J] .北華航天工業(yè)學(xué)院學(xué)報(bào),2008,18(S1):21-22,25.
[6] Walt Jung.運(yùn)算放大器應(yīng)用技術(shù)手冊(cè)[M] .張樂(lè)鋒,張鼎,譯.北京:人民郵電出版社,2009.
[7] 柳澤健,金光磐.有源濾波器的設(shè)計(jì)[M] .北京郵電學(xué)院數(shù)字通信專(zhuān)業(yè).北京:人民郵電出版社,1978.
[8] Dauld E.Johnson,John L.Hilburn.有源濾波器的快速實(shí)用設(shè)計(jì)[M] .潘秋明,譯.北京:人民郵電出版社,1980.
MATLAB-aid Design Method of Active Analog Filters
DING Yu1,XUE Kaichang2,SUN Wei1
(1.The 14th Research Institute,CETC,Nanjing 210039,China;
2.National Engineering Research Center for Small and Special Precision Motors,Guiyang 550008,China)
Abstract:The method of MATLAB-aid design of active analog filters is introduced after a briefly review of the traditional design method.By comparing the two methods on the key steps of active analog filter design,it is clearly showed that MATLAB can simplify the process of designing active analog filters.Based on the features of active analog filters,the rules of zero-pole distribution and cascading order are proposed.Simultaneously,the method of getting filter’s amplitude/phase vs.frequency character by MATLAB is introduced and it can offer a reference for debugging the filters.Through a certain example,the method proposed in this paper is proved to be simple,understandable and feasible.
Key words:analog;active;filter;MATLAB
作者簡(jiǎn)介:丁宇(1989-),男,博士,研究方向?yàn)榉治鰞x器研制;孫偉(1977-),男,博士,研究方向?yàn)閿?shù)字圖像處理。
收稿日期:2015-07-13
中圖分類(lèi)號(hào):TB535.2;TN713
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1674-5795(2015)05-0031-04
doi:10.11823/j.issn.1674-5795.2015.05.07