課程設(shè)計論文基于窗函數(shù)法多帶通帶阻濾波器的設(shè)計
山 東 輕 工 業(yè) 學(xué) 院
課 程 設(shè) 計 任 務(wù) 書
學(xué)院 電氣及自動化學(xué)院 專業(yè) 通信工程
姓名 班級 通信09-1 學(xué)號
題目 多帶濾波器設(shè)計
主要內(nèi)容:
綜合運用數(shù)字信號處理的理論知識進行多通帶濾波器的設(shè)計,從而加深對所學(xué)知識的理解,建立概念,加深理解IIR、FIR濾波器的設(shè)計原理方法和步驟。本設(shè)計的主要內(nèi)容是設(shè)計一個多通帶或多阻帶濾波器,實現(xiàn)多頻信號的多帶濾波。
基本要求
(1)掌握數(shù)字濾波器的基本概念、IIR和FIR濾波器設(shè)計的基本原理和基本方法;
(2)掌握多通帶濾波器的原理及簡單實現(xiàn)方法;選擇設(shè)計方法:窗函數(shù)發(fā)、頻域采樣法,或其他方法。分別設(shè)計一個具有4個通帶和4個阻帶的多帶濾波器;
(3)畫出系統(tǒng)模塊圖,編程或搭建模型實現(xiàn)濾波器的設(shè)計,畫出濾波器的頻率響應(yīng);實現(xiàn)一個多頻信號的多帶濾波,觀察濾波前后信號的波形與頻譜;記錄仿真結(jié)果;
(4)對結(jié)果進行分析,寫出設(shè)計報告。
主要參考資料
[1]高西全,丁玉美. 數(shù)字信號處理(第三版). 西安電子科技大學(xué)出版社. 2009.01
[2]A.V.奧本海姆,R.W.謝弗. 離散時間數(shù)字信號處理.(第二版) . 西安交通大學(xué)出版社. 2004.09
[3]胡廣書. 數(shù)字信號處理. 清華大學(xué)出版社.
[4]matlab數(shù)字信號處理的相關(guān)資料
完成期限:自 2012 年 6 月 28 日至 2010 年 7 月 13 日
指導(dǎo)教師: 張凱麗 教研室主任:
目錄
一 課程設(shè)計目的
二 課程設(shè)計內(nèi)容
1 課程設(shè)計的題目及簡介
2 設(shè)計說明
三 測試結(jié)果
四 課程設(shè)計總結(jié)
五 參考文獻
六 附錄(程序清單)
一 課程設(shè)計目的。
(1)掌握數(shù)字濾波器的基本概念、IIR和FIR濾波器設(shè)計的基本原理和基本方法;
(2)掌握多通帶濾波器的原理及簡單實現(xiàn)方法;選擇設(shè)計方法:窗函數(shù)發(fā)、頻域采樣法,或其他方法。
二 課程設(shè)計內(nèi)容。
1 課程設(shè)計的題目及簡介
設(shè)計一個具有4個通帶和4個阻帶的多帶濾波器
2 設(shè)計說明
(1)設(shè)計原理:數(shù)字濾波器可以理解為是一個計算程序或算法,將代表輸入信號的數(shù)字時間序列轉(zhuǎn)化為代表輸出信號的數(shù)字時間序列,并在轉(zhuǎn)化過程中,使信號按預(yù)定的形式變化。數(shù)字濾波器有多種分類,根據(jù)數(shù)字濾波器沖激響應(yīng)的時域特征,可將數(shù)字濾波器分為兩種,即無限長沖激響應(yīng)(IIR)濾波器和有限長沖激響應(yīng)(FIR)濾波器。IIR數(shù)字濾波器具有無限寬的沖激響應(yīng),與模擬濾波器相匹配。所以IIR濾波器的設(shè)計可以采取在模擬濾波器設(shè)計的基礎(chǔ)上進一步變換的方法。FIR數(shù)字濾波器的單位脈沖響應(yīng)是有限長序列。它的設(shè)計問題實質(zhì)上是確定能滿足所要求的轉(zhuǎn)移序列或脈沖響應(yīng)的常數(shù)問題,設(shè)計方法主要有窗函數(shù)法、頻率采樣法和等波紋最佳逼近法等。FIR濾波器具有嚴格的相位特性,這對于語音信號處理和數(shù)據(jù)傳輸是和重要的。目前FIR濾波器的設(shè)計方法主要有三種:窗函數(shù)法、頻率取樣法和切比雪夫等波紋逼近的最優(yōu)化設(shè)計方法。常用的是窗函數(shù)法和切比雪夫等波紋逼近的最優(yōu)化設(shè)計方法。
因此設(shè)計FIR濾波器的方法之一可以從時域出發(fā),截取有限長的一段沖擊響應(yīng)作為H(z)的系數(shù),沖擊響應(yīng)長度N就是系統(tǒng)函數(shù)H(z)的階數(shù)。只要N足夠長,截取的方法合理,總能滿足頻域的要求。一般這種時域設(shè)計、頻域檢驗的方法要反復(fù)幾個回合才能成功。
要設(shè)計一個線性相位的FIR數(shù)字濾波器,首先要求理想頻率響應(yīng)。是w的周期函數(shù),周期為,可以展開成傅氏級數(shù):
(公式1-1)
使用上述的傳遞函數(shù)去逼近,一個理想的頻率響應(yīng)的傅立葉反變換:
(公式1-2)
其中是與理想頻響對應(yīng)的理想單位抽樣響應(yīng)序列。但不能用來作為設(shè)計FIR DF用的h(n),因為一般都是無限長、非因果的,物理上無法實現(xiàn)。為了設(shè)計出頻響類似于理想頻響的濾波器,可以考慮用來近似。
窗函數(shù)的基本思想:先選取一個理想濾波器(它的單位抽樣響應(yīng)是非因果、無限長的),再截?。ɑ蚣哟埃┧膯挝怀闃禹憫?yīng)得到線性相位因果FIR濾波器。這種方法的重點是選擇一個合適的窗函數(shù)和理想濾波器。
設(shè)是一個長序列,是長度為N的窗函數(shù),用截斷,得到N點序列,即
(公式1-3)
在頻域上則有
(公式1-4)
由此可見,窗函數(shù)不僅僅會影響原信號在時域上的波形,而且也會影響到頻域內(nèi)的形狀。
加矩形窗后的頻譜和理想頻譜可得到以下結(jié)論:
加窗使過渡帶變寬,過渡帶的帶寬取決于窗譜的主瓣寬度。矩形窗情況下的過渡帶寬是。N越大,過渡帶越窄、越陡;
過渡帶兩旁產(chǎn)生肩峰,肩峰的兩側(cè)形成起伏振蕩。肩峰幅度取決于窗譜主瓣和旁瓣面積之比。矩形窗情況下是8.95%,與N無關(guān)。工程上習(xí)慣用相對衰耗來描述濾波器,相對衰耗定義為:
(公式1-5)
這樣兩個肩峰點的相對衰耗分別是0.74dB和-21dB。其中(-0.0895)對應(yīng)的點的值定義為阻帶最小衰耗。
以上的分析可見,濾波器的各種重要指標都是由窗函數(shù)決定,因此改進濾波器的關(guān)鍵在于改進窗函數(shù)。
窗函數(shù)譜的兩個最重要的指標是:主瓣寬度和旁瓣峰值衰耗。旁瓣峰值衰耗定義為:
旁瓣峰值衰耗=20lg(第一旁瓣峰值/主瓣峰值) (公式1-6)
為了改善濾波器的性能,需使窗函數(shù)譜滿足:
(1)主瓣盡可能窄,以使設(shè)計出來的濾波器有較陡的過渡帶。
(2)盡量減少最大旁瓣的相對幅度,也就是能量集中于主瓣,以減小帶內(nèi)、帶外波動的最大幅度,增大阻帶衰減。
一般來說,以上兩點很難同時滿足。當選取主瓣寬度很窄時,旁瓣的分量勢必增加,從而帶內(nèi)、帶外的波動也增加了;當選取最小的旁瓣幅度時,降低了帶內(nèi)、帶外的波動,但是過渡帶的陡度減小了。所以實際采用的窗函數(shù)其特性往往是它們的折中,在保證主瓣寬度達到一定要求的前提下,適當犧牲主瓣寬度來換取旁瓣波動的減小。
(2)典型的窗函數(shù)
(a)矩形窗(Rectangle Window)
其頻率響應(yīng)和幅度響應(yīng)分別為:
,
在matlab中調(diào)用w=boxcar(N)函數(shù),N為窗函數(shù)的長度
(b)三角形窗(Bartlett Window)
其頻率響應(yīng)為:
在matlab中調(diào)用w=triang(N)函數(shù),N為窗函數(shù)的長度
(c)漢寧(Hanning)窗,又稱升余弦窗
其頻率響應(yīng)和幅度響應(yīng)分別為:
在matlab中調(diào)用w=hanning(N)函數(shù),N為窗函數(shù)的長度
(d)漢明(Hamming)窗,又稱改進的升余弦窗
其幅度響應(yīng)為:
在matlab中調(diào)用w=hamming(N)函數(shù),N為窗函數(shù)的長度
(e)布萊克曼(Blankman)窗,又稱二階升余弦窗
其幅度響應(yīng)為:
在matlab中調(diào)用w=blackman(N)函數(shù),N為窗函數(shù)的長度
(f)凱澤(Kaiser)窗
其中:β是一個可選參數(shù),用來選擇主瓣寬度和旁瓣衰減之間的交換關(guān)系,一般說來,β越大,過渡帶越寬,阻帶越小衰減也越大。I0()是第一類修正零階貝塞爾函數(shù)。
在matlab中調(diào)用w=kaiser(N,beta),函數(shù)N為窗函數(shù)的長度,beta為窗函數(shù)的參數(shù)。
(3)利用窗函數(shù)設(shè)計FIR濾波器的具體步驟如下:
(a)根據(jù)具體的性能要求通過對過渡帶寬度△ω及阻帶衰減AS,等參數(shù)的分析選擇合適的窗函數(shù),并估計濾波器的長度N。
(b)由給定的濾波器的幅頻響應(yīng)參數(shù)求出理想的單位脈沖響應(yīng)。
(c)確定延時值, 計算濾波器的單位取樣響應(yīng),.
(d)驗證技術(shù)指標是否滿足要求。分析所設(shè)計的濾波器的幅頻特性。
三 測試結(jié)果
(1)四帶通的波形
通過對濾波前和濾波后信號圖形的對比,我們可以看出濾波前信號和濾波后的時域波形基本相似,我們設(shè)計的帶通濾波器濾除的是100hz的低頻信號,所以時域的波形的周期基本類似。對于頻域的波形,濾波前設(shè)置的五種不同頻率信號的波形都在,而在濾波以后只剩下我們想要的頻譜。
(2)四帶阻的波形
通過對濾波前和濾波后信號圖形的對比,我們可以看出濾波前信號和濾波后的時域波形差別很大,設(shè)計的帶通濾波器濾除的是200hz,400hz,600hz,800hz的頻率信號,所以時域的波形的周期變化很大。對于頻域的波形,濾波前設(shè)置的五種不同頻率信號的波形都在,而在濾波以后只剩下沒有被濾掉的100hz的頻譜。
四 課程設(shè)計總結(jié)
這次的數(shù)字信號處理課程設(shè)計是對我們數(shù)字信號中單帶通單帶阻濾波器的擴展,通過使用MATLAB軟件,我們不僅加深了對書本知識的了解,還將理論與實際相結(jié)合,提高了自己實際思考問題、獨立分析問題、冷靜解決問題的能力。而且設(shè)計濾波器是數(shù)字信號處理中最為重要的應(yīng)用之一,因此學(xué)好濾波器的設(shè)計及分析,對于我們大學(xué)生來說是十分重要的。另外就是學(xué)習(xí)過程中的不足,這主要體現(xiàn)在做課程設(shè)計的過程中,我們深深感覺到自身所學(xué)知識的有限,書本上沒有提及的環(huán)節(jié),我們基本都沒有去研究過,做的過程有時突然間覺得有點茫然,不過我們遇到問題都是和同學(xué)一起討論,一起思考并且詢問老師尋找解決問題的方法,最終解決了所遇到的問題。通過這次的課程設(shè)計,我們深深地體會到數(shù)字信號處理的有用性和重要性。同時也發(fā)現(xiàn)了自身存在的不少不足之處,這給今后的學(xué)習(xí)敲響了警鐘,也提供了經(jīng)驗教訓(xùn)。
五 參考文獻
[1]高西全,丁玉美. 數(shù)字信號處理(第三版). 西安電子科技大學(xué)出版社. 2009.01
[2]A.V.奧本海姆,R.W.謝弗. 離散時間數(shù)字信號處理.(第二版) . 西安交通大學(xué)出版社. 2004.09
[3]胡廣書. 數(shù)字信號處理. 清華大學(xué)出版社.
[4]數(shù)字信號處理教程(第三版).清華大學(xué)出版社
[5]數(shù)字信號處理教程——MATLAB釋義與實現(xiàn) 電子工業(yè)出版社
六 附錄(程序清單)
1、四帶通
N=2000; Fs=4000;T=1/Fs;Tp=N*T;
t=0:T:(N-1)*T;
k=0:N-1;f=k/Tp; f1=100;f2=200;f3=400;f4=600;f5=800;
s1=sin(2*f1*pi*t)+sin(2*f2*pi*t);
s=s1+sin(2*f3*pi*t)+sin(2*f4*pi*t)+sin(2*f5*pi*t);
fxt=fft(s,N);
subplot(2,1,1)
plot(t,s);
title((a) s(t)的波形)
grid;
axis([0,Tp/8,min(s),max(s)]);title((a) s(t)的波形)
xlabel(t/s);ylabel(s(t));
subplot(2,1,2)
stem(f,abs(fxt)/max(abs(fxt)),.);
grid;
title((b) s(t)的頻譜)
axis([0,Fs/4,0,1.2]);xlabel(f/HZ);ylabel(s(t))
wls=780*2*pi/Fs;wlp=700*2*pi/Fs;whp=900*2*pi/Fs;whs=820*2*pi/Fs;
B=(wls-wlp);
M=ceil(11*pi/B);
wc=[(wls+wlp)/2/pi,(whp+whs)/2/pi];
hn=fir1(M,wc,blackman(M+1));
fvtool(hn,1);
wls1=580*2*pi/Fs;wlp1=500*2*pi/Fs;
whs1=620*2*pi/Fs;whp1=700*2*pi/Fs;
wc1=[(wlp1+wls1)/2/pi,(whp1+whs1)/2/pi];
hn1=fir1(M,wc1,blackman(M+1));
fvtool(hn1,1);
whp2=2*500*pi/Fs;whs2=2*420*pi/Fs;
wls2=2*380*pi/Fs;wlp2=2*300*pi/Fs;
wc2=[(wlp2+wls2)/2/pi,(whp2+whs2)/2/pi];
hn2=fir1(M,wc2,blackman(M+1));
fvtool(hn2,1);
whp2=2*300*pi/Fs;whs2=2*220*pi/Fs;
wls2=2*180*pi/Fs;wlp2=2*100*pi/Fs;
wc2=[(wlp2+wls2)/2/pi,(whp2+whs2)/2/pi];
hn3=fir1(M,wc2,blackman(M+1));
hn4=hn+hn1+hn2+hn3
hsf=filter(hn4,1,s);
fvtool(hn4,2)
figure(6)
sfxt=fft(hsf,N)
subplot(2,1,1)
plot(t,hsf);
grid;
axis([0,Tp/8,min(hsf),max(hsf)]);title((a) s(t)的波形)
xlabel(t/s);ylabel(hsf(t));
title((a)hsf的波形)
subplot(2,1,2)
stem(f,abs(sfxt(1:2000))/max(abs(sfxt(1:2000))),.);
grid;
axis([0,Fs/4,0,1.2]);xlabel(f/HZ);ylabel(hsf)
title(hsf的頻譜)
2、四帶阻:
N=2000; Fs=4000;T=1/Fs;Tp=N*T;
t=0:T:(N-1)*T;
k=0:N-1;f=k/Tp; f1=100;f2=200;f3=400;f4=600;f5=800;
s1=sin(2*f1*pi*t)+sin(2*f2*pi*t);
s=s1+sin(2*f3*pi*t)+sin(2*f4*pi*t)+sin(2*f5*pi*t);
fxt=fft(s,N);
subplot(2,1,1)
plot(t,s);
title((a) s(t)的波形)
grid;
title((a) s(t)的波形)
xlabel(t/s);ylabel(s(t));
subplot(2,1,2)
stem(f,abs(fxt)/max(abs(fxt)),.);
grid;
title((b) s(t)的頻譜)
axis([0,Fs/4,0,1.2]);xlabel(f/HZ);ylabel(s(t))
wls=680*2*pi/Fs;wlp=700*2*pi/Fs;whp=720*2*pi/Fs;whs=750*2*pi/Fs;
B=(wlp-wls);
M=ceil(11*pi/B);
wc=[(wls+wlp)/2/pi,(whp+whs)/2/pi];
hn=fir1(M,wc,blackman(M+1));
fvtool(hn,1);%帶通設(shè)計
wls1=400*2*pi/Fs;wlp1=480*2*pi/Fs;
whs1=500*2*pi/Fs;whp1=520*2*pi/Fs;
wc1=[(wlp1+wls1)/2/pi,(whp1+whs1)/2/pi];
hn1=fir1(M,wc1,blackman(M+1));
fvtool(hn1,1);%帶通設(shè)計
wlp2=2*300*pi/Fs;wls2=2*320*pi/Fs;
whs2=2*360*pi/Fs;whp2=2*380*pi/Fs;
wc2=[(wlp2+wls2)/2/pi,(whp2+whs2)/2/pi];
hn2=fir1(M,wc2,blackman(M+1));
fvtool(hn2,1);%帶通設(shè)計
wls2=2*150*pi/Fs;wlp2=2*130*pi/Fs;
wc2=(wlp2+wls2)/2/pi;
hn3=fir1(M,wc2,blackman(M+1));
fvtool(hn3,1)
wls=2*980*pi/Fs;wlp=2*1000*pi/Fs;
wc2=(wlp+wls)/2/pi;
B=(wlp-wls);
M=ceil(11*pi/B);
hn4=fir1(M,wc2,high,blackman(M+1));
fvtool(hn4,1)
hn5=hn+hn1+hn2+hn3+hn4;
hsf=filter(hn5,1,s);
fvtool(hn5,1)
figure(6)
sfxt=fft(hsf,N)
subplot(2,1,1)
plot(t,hsf)
grid;
title((a) s(t)的波形)
xlabel(t/s);ylabel(hsf(t));
title((a)hsf的波形)
subplot(2,1,2)
stem(f,abs(sfxt(1:2000))/max(abs(sfxt(1:2000))),.);
grid;
axis([0,Fs/4,0,1.2]);xlabel(f/HZ);ylabel(hsf)
title(hsf的頻譜)