胡春筠 蔡 坤 陸建強(qiáng) 代 芬
摘 要:介紹用Matlab設(shè)計(jì)出一個(gè)由低通、帶阻、相移濾波器構(gòu)成的無(wú)失真模擬濾波器方法。分別給出各個(gè)濾波器的設(shè)計(jì)過(guò)程、仿真結(jié)果、實(shí)際電路圖,并在最后給出了經(jīng)過(guò)無(wú)失真濾波器后輸出信號(hào)的眼圖。眼圖結(jié)果表明,無(wú)失真濾波器的幅頻、相頻特性良好。說(shuō)明用Matlab設(shè)計(jì)模擬濾波器簡(jiǎn)單、方便、有效,是一個(gè)在濾波器設(shè)計(jì)方面很有力的工具。
關(guān)鍵詞:Matlab;模擬濾波器;低通濾波器;帶阻濾波器;相移濾波器
中圖分類(lèi)號(hào):TN713文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1004-373X(2009)05-087-03
Design of Non-distortion Analog Filter Based on Matlab
HU Chunyun,CAI Kun,LU Jianqiang,DAI Fen
(South China Agriculture University,Guangzhou,510640,China)
Abstract:This paper introduces the design of a non-distortion analog filter composed of low-pass,band-stop and phase-shift filters using Matlab.The paper also describes the design process,simulation result,practical circuit diagram of each filter respectively.Finally the eye-diagram of the output signal of the non-distortion analog filter is shown,which indicates that the characteristics of the amplitude-frequency and the phase-frequency of the non-distortion analog filter are good.The result indicates that it′s simple,convenient,effective to use Matlab to design an analog filter and Matlab is powerful tool in designing filters.
Keywords:Matlab;analog filter;low-pass filter;stop-band filter;phase-shift filter
0 引 言
模擬濾波器的設(shè)計(jì)一般包括兩個(gè)方面:根據(jù)技術(shù)指標(biāo)即濾波器的幅頻特性確定濾波器的傳遞函數(shù)H(s);設(shè)計(jì)實(shí)際網(wǎng)絡(luò)實(shí)現(xiàn)這一傳遞函數(shù)。設(shè)計(jì)濾波器H(s)的關(guān)鍵是找到逼近函數(shù),目前已有多種逼近函數(shù)。然而,不論哪種逼近函數(shù)都需要進(jìn)行非常繁瑣的計(jì)算,還要根據(jù)計(jì)算結(jié)果進(jìn)行查表。
Matlab語(yǔ)言是一種簡(jiǎn)單、高效的高級(jí)語(yǔ)言,是一種內(nèi)容豐富、功能強(qiáng)大的分析工具,其應(yīng)用范圍幾乎覆蓋了所有的科學(xué)和工程計(jì)算領(lǐng)域。Matlab中提供了豐富的用于模擬濾波器設(shè)計(jì)的函數(shù),通過(guò)編程可以很容易實(shí)現(xiàn)低通、高通、帶通、帶阻濾波器,并能畫(huà)出濾波器的幅頻、相頻特性曲線,大大簡(jiǎn)化了模擬濾波器的設(shè)計(jì)[2-4]。在此介紹了用Matlab設(shè)計(jì)實(shí)現(xiàn)一個(gè)無(wú)失真模擬濾波器,并給出了幅頻、相頻特性的仿真結(jié)果和信號(hào)通過(guò)無(wú)失真濾波器后的眼圖。
1 基于Matlab的無(wú)失真濾波器設(shè)計(jì)
設(shè)計(jì)要求:一個(gè)頻率為8 kHz數(shù)字基帶信號(hào)經(jīng)過(guò)數(shù)/模(D/A)轉(zhuǎn)換后得到一個(gè)模擬信號(hào),將該模擬信號(hào)輸入無(wú)失真濾波器,要求在8 kHz頻率處衰減為-6 dB;在16 kHz頻率(截止頻率)之后衰減達(dá)到-60 dB以上。這樣做的目的是使該模擬信號(hào)經(jīng)過(guò)無(wú)失真濾波器后,抑制諧波干擾,減小截止頻率后波形的起伏。
無(wú)失真濾波器由三部分組成,依次為低通濾波器、帶阻濾波器、相移電路。其中低通濾波器的作用是通過(guò)8 kHz以?xún)?nèi)的低頻信號(hào);帶阻濾波器的作用是抑制16 kHz信號(hào),它與前面低通濾波器級(jí)聯(lián)后能使16 kHz之后信號(hào)的衰減達(dá)到-60 dB以上,有效地抑制各次諧波干擾,并減小16 kHz之后波形的起伏;相移電路的作用是補(bǔ)償前面兩級(jí)電路的相位偏移,使得整個(gè)無(wú)失真濾波器的相位特性成為一條直線。
1.1 低通濾波器設(shè)計(jì)
低通濾波器采用巴特沃斯型濾波器,因?yàn)樗哂休^平坦的幅頻特性,相頻特性線性較好,常作為濾波器的初級(jí)。在Matlab中,用[b,a]=butter(n,wn,‘s)語(yǔ)句來(lái)實(shí)現(xiàn)巴特沃斯濾波器的設(shè)計(jì)。其中,[b,a]是濾波器傳遞函數(shù)多項(xiàng)式的系數(shù);n為濾波器的階數(shù);wn為3 dB處的角頻率;‘s表示模擬濾波器的。
在該設(shè)計(jì)中, 采用8階巴特沃斯濾波器,-3 dB處的頻率為8 kHz。主要程序如下:
fc=8000;%8 000 Hz為-3 dB處的頻率
[b1,a1]=butter(8,fc*2*pi,′s′);%采用8階巴特沃斯濾波器
w=linspace(0,30000,100000);%頻率范圍設(shè)為0~30 kHz
h1=freqs(b1,a1,w*2*pi);%求出低通濾波器在30 kHz內(nèi)的頻率特性
m1=abs(h1);%求出低通濾波器在30 kHz內(nèi)的幅頻特性
A1=20*log10(m1);%幅頻特性以dB為單位表示
p1=unwrap(angle(h1));%求出低通濾波器在30 kHz內(nèi)的相頻特性
最終畫(huà)出低通濾波器的幅頻、相頻特性如圖1(a)所示。實(shí)際電路采用由Max291芯片來(lái)實(shí)現(xiàn)巴特沃斯濾波器,它相當(dāng)于8階巴特沃斯濾波器,如圖1(b)所示。
圖1 低通濾波器的幅頻、相頻特性和實(shí)際電路
1.2 帶阻濾波器設(shè)計(jì)
帶阻濾波器(又稱(chēng)陷波器)的作用是抑制某一頻率信號(hào)而通過(guò)其他頻率的信號(hào)。在Matlab中用[b,a]=butter(n,Wn,′stop′,′s′)語(yǔ)句來(lái)實(shí)現(xiàn)帶阻濾波器,其中[b,a]是濾波器傳遞函數(shù)多項(xiàng)式的系數(shù);n為濾波器的階數(shù);wn=[fl*2*pi fu*2*pi]分別為阻帶低端-3 dB和高端-3 dB處的角頻率;‘s表示模擬濾波器的。主要程序如下:
f0=16000;%帶阻濾波器的中心頻率,即被抑制的頻率
Q=0.7;%品質(zhì)因素,可以根據(jù)仿真結(jié)果調(diào)整Q的取值,使得仿真的幅頻特性滿(mǎn)足設(shè)計(jì)要求
fl=8000;%阻帶低端-3 dB處的頻率固定為8 000 Hz,這樣在和上面的低通濾波器級(jí)聯(lián)后8 000 Hz處的衰減就可以達(dá)到-6 dB,滿(mǎn)足設(shè)計(jì)要求
fu= f0*(1/(2*Q)+sqrt(1+1/(4*Q^2)));%根據(jù)中心頻率f0和Q值確定阻帶高端-3 dB處頻率fu
wn=[fl*2*pi fu*2*pi];%得到阻帶低端-3 dB、高端-3 dB處的角頻率
[b2,a2]=butter(2,wn,′stop′,′s′);%階數(shù)為2階,與實(shí)際電路中采用的二階帶阻濾波器相對(duì)應(yīng)
與求低通濾波器的幅頻、相頻特性類(lèi)似,帶阻濾波器的幅頻、相頻特性如圖2(a)所示。在該設(shè)計(jì)中,實(shí)際電路采用的是VCVS型二階帶阻濾波器如圖2(b)所示。電阻R1,R2,R3,電容C1的取值需要確定,它們的計(jì)算公式可以通過(guò)Matlab編程來(lái)得到,最終根據(jù)計(jì)算結(jié)果選擇相應(yīng)的標(biāo)稱(chēng)值。
圖2 帶阻濾波器的幅頻、相頻特性和實(shí)際電路
1.3 低通濾波器與帶阻濾波器的級(jí)聯(lián)
將前面設(shè)計(jì)的低通與帶阻濾波器進(jìn)行級(jí)聯(lián),使得級(jí)聯(lián)以后電路的幅頻特性能滿(mǎn)足設(shè)計(jì)要求,即在8 kHz頻率處的衰減為-6 dB;16 kHz頻率(截止頻率)之后的衰減達(dá)到-60 dB以上。若不能達(dá)到要求,則根據(jù)仿真結(jié)果,不斷修改帶阻濾波器中的Q值,直到滿(mǎn)足設(shè)計(jì)要求為止。在Matlab 中,通過(guò)conv函數(shù)來(lái)實(shí)現(xiàn)兩個(gè)電路的級(jí)聯(lián)。主要程序如下:
b3=conv(b1,b2);
a3=conv(a1,a2);%b3、a3為低通和帶阻濾波器級(jí)聯(lián)后傳遞函數(shù)多項(xiàng)式系數(shù)
與求低通濾波器的幅頻、相頻特性類(lèi)似,級(jí)聯(lián)電路的幅頻、相頻特性如圖3所示。可見(jiàn),當(dāng)Q取0.7時(shí),幅頻特性滿(mǎn)足設(shè)計(jì)要求,但相頻特性在8 000 Hz以?xún)?nèi)不是一根直線,為了使輸出信號(hào)不至于失真,必須加上一級(jí)相移濾波器,使總的相移特性成為一條直線。
圖3 低通和帶通濾波器級(jí)聯(lián)后的幅頻、相頻特性
1.4 相移濾波器設(shè)計(jì)及無(wú)失真濾波器的相頻特性
在該設(shè)計(jì)中,采用的是一階反相增益全通濾波電路,它的傳輸函數(shù)為:
H(s)=-s+1RCs+1RC
電路圖如圖4所示。將低通、帶阻、相移電路進(jìn)行級(jí)聯(lián)構(gòu)成無(wú)失真濾波器。在Matlab中,可以通過(guò)編程的方法得到相移、無(wú)失真濾波器的相頻特性曲線。
圖4 相移濾波器的實(shí)際電路
主要程序如下:
R=34000;%選定R為34 000 Ω
c1=8.20e-10;%電容值選定為820 pF
b4=[-c1* R 1];
a4=[c1* R 1];%根據(jù)H(s)得到相移濾波器的傳遞函數(shù)多項(xiàng)式系數(shù)b4,a4.
b=conv(b3,b4);
a=conv(a3,a4);
%b,a為無(wú)失真濾波器的傳遞函數(shù)多項(xiàng)式系數(shù),其中b3,a3為低通和帶阻濾波器級(jí)聯(lián)后傳遞函數(shù)多項(xiàng)式系數(shù)
最終求出的相位曲線如圖5所示??梢钥闯?無(wú)失真濾波器的相頻特性為一條直線。
將各部分的實(shí)際電路進(jìn)行級(jí)聯(lián),得到無(wú)失真濾波器的實(shí)際電路,該無(wú)失真濾波器的輸入模擬信號(hào)和輸出信號(hào)眼圖如圖6所示。從圖中可以看出,眼圖跡線清晰。眼睛大且端正,眼睛之間的交點(diǎn)清晰。說(shuō)明該無(wú)失真濾波器的幅頻、相頻特性良好,可以達(dá)到設(shè)計(jì)要求。
圖5 相移和無(wú)失真濾波器的相頻特性
圖6 輸入信號(hào)和輸出信號(hào)的眼圖
2 結(jié) 語(yǔ)
使用Matlab設(shè)計(jì)模擬濾波器,既簡(jiǎn)單方便,又避免了復(fù)雜的運(yùn)算和查表。通過(guò)仿真可以很直觀地看出參數(shù)修改后的頻率響應(yīng)曲線,該設(shè)計(jì)可以滿(mǎn)足系統(tǒng)設(shè)計(jì)的要求,避免了硬件電路反復(fù)調(diào)整的麻煩,大大提高了工作效率,且Matlab不但可以用于模擬濾波器的設(shè)計(jì),還可以用于FIR,IIR等數(shù)字濾波器的設(shè)計(jì),是一個(gè)在濾波器設(shè)計(jì)方面很有力的工具。
參考文獻(xiàn)
[1]姜春玲,史玲.基于Matlab的模擬濾波器的設(shè)計(jì)[J].山東交通學(xué)院學(xué)報(bào),2004,12(3):63-65.
[2]馬興義,楊立群.Matlab 6 應(yīng)用開(kāi)發(fā)指南[M].北京:機(jī)械工業(yè)出版社,2001.
[3]劉衛(wèi)國(guó),陳昭平,張穎.Matlab程序設(shè)計(jì)與應(yīng)用[M].北京:高等教育出版社,2002.
[4]韓利竹,王華.Matlab電子仿真與應(yīng)用[M].北京:國(guó)防工業(yè)出版社,2003.
[5]李廣林,王亞聰.MAX29系列數(shù)字濾波器的使用方法[J].現(xiàn)代通信,1997,29,8:29-30.
[6]馮已引.開(kāi)關(guān)電容濾波器MAX291/292/295/296的特性與應(yīng)用[J].集成電路與應(yīng)用,1996(5):18-20.
[7]約翰遜 D E,約翰遜 J R,穆?tīng)朒 P.有源濾波器精確設(shè)計(jì)手冊(cè)[M].李國(guó)榮,譯.北京:電子工業(yè)出版社,1984.
[8]閆曉艷,傅豐林,陳健,等.FIR數(shù)字濾波器的設(shè)計(jì)及其在Matlab中的仿真實(shí)現(xiàn)[J].電子科技,2004(5):43-45.
[9]張?jiān)?張玉.利用Matlab設(shè)計(jì)巴特沃斯數(shù)字濾波器[J].本溪冶金高等專(zhuān)科學(xué)校學(xué)報(bào),2003,5(3):18-20.