<noframes id="ixm7d"><noframes id="ixm7d"><rt id="ixm7d"><delect id="ixm7d"></delect></rt><noframes id="ixm7d"><rt id="ixm7d"><rt id="ixm7d"></rt></rt><rt id="ixm7d"></rt> <noframes id="ixm7d"><rt id="ixm7d"><delect id="ixm7d"></delect></rt><delect id="ixm7d"></delect><bdo id="ixm7d"></bdo><rt id="ixm7d"></rt><bdo id="ixm7d"></bdo><noframes id="ixm7d"><rt id="ixm7d"><rt id="ixm7d"></rt></rt><rt id="ixm7d"><rt id="ixm7d"></rt></rt><noframes id="ixm7d"><rt id="ixm7d"></rt><noframes id="ixm7d"><rt id="ixm7d"></rt> <noframes id="ixm7d"><rt id="ixm7d"></rt><noframes id="ixm7d"><noframes id="ixm7d"><noframes id="ixm7d"><rt id="ixm7d"></rt><noframes id="ixm7d"><noframes id="ixm7d"><noframes id="ixm7d"><rt id="ixm7d"></rt><noframes id="ixm7d"><rt id="ixm7d"></rt><noframes id="ixm7d"><rt id="ixm7d"></rt><noframes id="ixm7d">

數字濾波器的設計范文

2023-09-24

數字濾波器的設計范文第1篇

虛擬儀器技術就是利用高性能的模塊化硬件, 結合高效靈活的軟件完成各種測試、測量和自動化的應用。它是計算機技術和傳統儀器技術相結合的產物, 具有高效易用、開放靈活、功能強大、性價比高和用戶定義等諸多優點。虛擬儀器的開發離不開儀器軟件開發平臺, 而Lab VIEW是當前用于數據采集、信號處理和虛擬儀器開發的一個標準工具, 而且是一個基于圖形化編程語言的虛擬儀器軟件開發工具[2]。設計者通過Lab VIEW可便捷地建立自己的虛擬儀器程序而無需復雜的程序代碼編寫。

數字濾波器是數字信號分析中重要的組成部分, 相對于傳統的模擬濾波器, 具有準確度和穩定性高、系統容易改變, 靈活性高的特點, 且不存在阻抗匹配問題, 可實現多維濾波, 還能完成一些模擬濾波器無法實現的濾波任務[1], 因此數字濾波器在工程中得到了廣泛的使用。

Lab VIEW提供了友好的人機界面, 使得濾波器參數 (比如濾波器的階數、截止頻率等) 可以像控制實際儀器那樣方便調節;Lab VIEW可以提供豐富的濾波器集合;Lab VIEW可以充分發揮PC機的強大運算能力, 提高系統的運行效率;同時, Lab VIEW的多種濾波器庫函數, 使得數字濾波器的設計更加便捷。因此, 基于Lab VIEW思想設計的數字濾波器有效地解決了傳統濾波器中濾波系數難以調整、與硬件接口復雜、開發周期長等問題, 從而為數字信號處理提供了有效便捷的途徑。

二、基于Lab VIEW的數字濾波器設計

根據沖激響應, 可以將濾波器分為有限沖激響應 (FIR) 濾波器和無限沖激響應 (IIR) 濾波器。

通常設計FIR濾波器有三種方法:窗函數法、頻率采樣法和切比雪夫等波紋逼近法[3], 本文中采用的是窗函數設計法, 其特點是設計和實現比較靈活方便。它是從時域出發, 用一個窗函數截取理想的得到, 以有限長序列近似理想的。窗函數的性質決定了濾波器的品質, 在實際設計過程中, 是根據對濾波器過渡寬度和阻帶衰減等特性要求, 選擇合適的窗函數類型和長度, 以得到比較滿意的設計效果。

IIR濾波器的特征之一是可以直接利用各種模擬濾波器的設計結果, 當已知模擬濾波器的傳遞函數時, 通過適當的變量變換, 即可直接求得數字濾波器的傳遞函數。典型的濾波器如巴特沃思 (Butterworth) 濾波器、切比雪夫 (Chebyshev) 濾波器、反切比雪夫 (Chebyshev) 濾波器和橢圓 (Elliptic) 濾波器等, 它們都有自己的歸一化原型和成熟的設計公式, 因此很容易實現到IIR濾波器的變化從而實現IIR濾波器的設計。

本文采用模塊化的軟件設計編程, 系統總體設計包括信號導入、濾波處理、頻譜分析、數據存儲和濾波器特性等模塊, 最終實現數據導入、處理、顯示、記錄等功能。設計思路如下圖1所示:

信號導入程序由使用系統自帶信號或通過外部導入信號, 圖2展示了導入信號的流程框圖??梢詫⑽募锏臄祿宰址母袷阶x出來, 經適當分割等處理后可以在前面板顯示數據的波形。

濾波處理部分通過“選擇濾波方式”控件來選擇濾波器的類型 (FIR或IIR) , 同時濾波器的截止頻率、濾波階數等參數也可以通過相應控件來選擇。信號導入程序產生的信號與濾波器連接后, 就可在濾波器的輸出端口得到濾波后的信號。

濾波之后的信號還可能需要進一步處理和應用, 就有必要對濾波結果進行保存。本設計提供TXT文本和圖片兩種保存方式:濾波后的數據會以一維列向量的形式, 按照用戶指定的路徑保存在TXT文件中;濾波后的數據可以PNG、BMP、JPEG三種圖片輸出至用戶指定的路徑。其流圖如圖3所示。

三、仿真結果

設計的濾波器界面如下圖4所示, 圖中的波形是濾波后的正弦波波形和頻譜, 導入的是疊加白噪聲的正弦波信號。圖5是截止頻率為11Hz、濾波階數為5階時的Chebyshev低通濾波器的濾波效果、幅頻特性和相頻特性。

四、結論

本文實現的數字濾波器, 充分發揮了Lab VIEW軟件設計的靈活性, 信號可從外部讀取和存儲, 濾波參數調節方便, 可直觀地進行頻譜分析和顯示, 效果良好。仿真結果表明該濾波器能夠有效地按照要求濾出信號中的干擾成分??梢? Lab VIEW為設計數字濾波器提供了一個可靠而有效的途徑?;贚ab VIEW的數字濾波器采用并行的程序流設計, 具有很強的通用性, 程序響應速度快, 能夠實現較窄的過渡帶;本設計經過適當的擴展和豐富, 可以廣泛用于教學、預研等領域。

參考文獻

[1]谷萩隆嗣.數字濾波器與信號處理[M].王友功譯.北京:科學出版社, 2003.

[2]劉君華.基于LabVIEW的虛擬儀器設計[M].北京:電子工業出版社, 2003.

數字濾波器的設計范文第2篇

正交小波變換具有很強的去數據相關性, 它能夠使信號的能量在小波域集中在一些大的小波系數中;而噪聲的能量卻分布于整個小波域內。因此經小波分解后, 信號的小波變換系數要大于噪聲的小波變換系數。根據這一特點, 可以選擇一個合適的閾值, 保留信號的小波系數, 消除噪聲的小波系數。

小波閾值降噪法的實現方法由以下三個步驟:①計算含噪信號的正交小波變換。選擇合適的小波和小波分解層數, 運用Mallat分解算法將含噪信號進行小波分解, 得到相應的小波分解系數。②選擇合適的閾值函數, 對分解得到的小波系數進行非線性閾值處理。③進行逆小波變換。

2 閾值函數算法

在小波閾值降噪實現方法中, 非線性閾值處理是很重要的一個步驟。目前, 非線性閾值處理中閾值函數的算法有很多種, 除了傳統的軟閾值和硬閾值外, 還有許多改進算法。

①軟閾值函數:將含噪信號的小波系數與閾值λ進行比較, 大于等于λ的點收縮為該點值與閾值的差值;小于等于λ相反數的點收縮為該點值與閾值的和;小波系數絕對值小于閾值的點變為零。

②硬閾值函數:把含噪信號的小波系數的絕對值與所選定的閾值λ進行比較, 小于閾值的點變為零, 大于等于閾值的點保持不變。

③改進算法 (一) :閾值函數定義為

undefined

改進算法 (一) 的閾值函數位于硬閾值和軟閾值之間, 即當小波系數小于閾值時, 不是簡單地置為零, 而是平滑地減小為零;當大于閾值時, 小波系數幅度都減去閾值。這樣, 既保證了大的小波系數, 又保證了加閾值后系數的平滑過渡。

④改進算法 (二) 閾值函數定義為:

undefined

其中0≤α≤1。當α=0時, 該函數就是硬閾值函數;當α=1時, 該函數就是軟閾值函數;當0<α<1時, 該函數就介于硬閾值和軟閾值之間, 圖1為改進算法 (二) 的仿真, α=1/2。

3 MATLAB仿真實現

為了比較硬閾值、軟閾值及改進算法對降噪的影響, 可以利用MATLAB軟件進行仿真實驗。仿真過程為:①將lececcum信號加上隨機高斯序列, 產生含噪信號;②對含噪信號采用sym6小波進行6層分解;③采用極小極大 (Minimaxi) 閾值, 應用wden函數實現信號的硬閾值、軟閾值降噪。④估計第一層的噪聲標準偏差, 采用Minimaxi閾值方法計算閾值;⑤分別應用appcoef函數和detcoef函數獲取第六層低頻系數和各層高頻系數, 并計算系數的長度;⑥對第六層低頻系數和各層高頻系數分別采用不同的改進閾值函數進行處理;⑦利用處理后的低頻系數和各層高頻系數, 采用waverec函數重構信號。降噪效果見圖1。

其中信號的硬閾值、軟閾值降噪可以應用MATLAB中的wden函數實現。而利用改進的閾值函數進行降噪, 沒有現成的MATLAB函數可以調用。改進算法 (一) 在處理高頻系數時部分MATLAB程序為:

4 結束語

從圖1可以看到, 軟閾值和硬閾值這兩種方法具有各自的特點。軟閾值法估計得到的小波系數整體連續性好, 降噪信號要平滑一些。但當wj, k≥λ時, undefined與wj, k總存在恒定的偏差, 直接影響著降噪信號與原始信號的逼近程度。

硬閾值法可以很好地保留信號邊緣等局部特征。但硬閾值函數在λ處不連續, 降噪信號缺乏光滑性。這說明軟閾值通常會使降噪后的信號平滑一些, 但是會丟失掉某些特征;而硬閾值可以保留信號特征, 但在平滑方面有所欠缺。

改進算法 (一) 的閾值函數位于硬閾值和軟閾值之間, 即當小波系數小于閾值時, 不是簡單地置為零, 而是平滑地減小為零;當大于閾值時, 小波系數幅度都減去閾值。這樣, 既保證了大的小波系數, 又保證了加閾值后系數的平滑過渡。它有效地克服了軟閾值法的缺點, 改善了降噪信號與原始信號的逼近程度;它也有效地克服了硬閾值法的缺點, 即改善了在λ處的連續性, 從而改善了降噪信號的光滑程度。

改進算法 (二) 的閾值函數可以克服硬閾值、軟閾值降噪的缺點, 能夠得到很好的降噪效果。降噪信號即有和原始信號一樣的光滑性, 又可以很好地保留信號邊緣等局部特征。如果從對原始信號的逼近程度方面考慮, 可以取較大的α值;如果從對原信號的光滑程度方面考慮, 可以取較小的α值。這樣, 從一定程度上克服了硬閾值和軟閾值的缺點。

在仿真實驗過程中, 還發現不同的小波函數、不同的分解層數都會影響降噪效果。所以如果要獲得最佳的降噪效果, 必須綜合考慮, 反復進行實驗分析。

參考文獻

[1]陽明盛, 熊西文.MATLAB基礎及數學軟件[M].大連理工大學出版社, 2003 (8) .

[2]胡廣書.現代信號處理教程[M].清華大學出版社, 2004 (11) .

[3]邱剛.基于多尺度閾值技術的小波去噪[J].現代電子技術, 2006 (17) :87-89.

數字濾波器的設計范文第3篇

數字濾波器可以過濾時間離散信號,通過對抽樣數據進行數字處理來達到頻域濾波的目的。目前已經廣泛應用在高保真的信號處理,如數字音頻、圖像處理、數據傳輸、生物醫學等領域。由于計算機技術和大規模集成電路的發展,數字濾波器已可用計算機軟件實現。借助Matlab強大的數據處理能力,靈活使用模塊集和工具箱,可以按照需求編寫程序來實現多種濾波器設計。伴隨Matlab的不斷發展以及工具箱的不斷開發,工作平臺的改善,使用Matlab的編程工作量會大大減少。Matlab提供了完整的聯機查詢、幫助系統,提供了比較完備的調試系統,程序不必經過編譯就可以直接運行,而且能夠及時地報告出現的錯誤及進行出錯原因分析[1,2]。而這也使得基于Matlab的設計變得方便易于使用。

1 數字濾波器及設計方案

應用數字濾波器處理模擬信號時,首先要對輸入模擬信號進行限帶、抽樣和模/數轉換。數字濾波器輸入信號的抽樣率應大于被處理信號帶寬的兩倍,其頻率響應具有以抽樣頻率為間隔的周期重復特性,且以折疊頻率即1/2抽樣頻率點呈鏡像對稱。濾波器的輸出信號須經數/模轉換、平滑處理。

FIR數字濾波器的輸出值u(Kt)與輸出的過去值u(Kt- kt)表達關系[3]如下:

u(Κt)=αu(Κt-βt)1<β<n(1)

這是不斷乘累加的過程,解決了濾波器的系數α問題,再加上乘法和加法計算即可實現濾波器設計。由于FIR濾波器的單位脈沖響應h(n)是有限長序列,因此濾波器沒有不穩定的問題。FIR濾波器一般為非遞歸結構,因此在采用Matlab設計時采用有限精度的計算,以避免出現遞歸結構中極性震蕩等不穩定現象。常見的兩種FIR濾波器設計方法是窗函數法和頻率采樣法。雖然頻率采樣法可以精確控制采樣點的頻率響應,但是設計中必須插入過渡點來改善紋波[4],而且截止頻率不易控制,過渡點也需要進一步的優化,對比來看窗函數法則是一種基本的設計理念,設計方法比較成熟。 并且Matlab中提供的函數可以方便地實現加窗線性相位FIR濾波器設計,包括了比較常見的低通、帶通、高通和帶阻數字濾波器。本文采用的是窗函數結合編程的設計方法。

窗函數法的基本思想是先給定理想的濾波器頻響為Hd(ejω),

Ηd(ejω)={1*e-jωα,|ω|ωc0,π|ω|>ωc(2)

式中:ωc為截止頻率;α為采樣延遲。

而所要求設計的頻響為H(ejω),之后的工作便是使H(ejω)逼近Hd(ejω)。加窗 w(n)對理想濾波器的單位抽樣響應hd(n)(見式(3))截斷,得到所要設計的h(n)。

hd(n)=12π-ππΗd(ejω)ejωndω(3)

對于 FDATool設計法,本文通過選擇適當參數,利用Matlab完成。

2 FIR數字濾波器設計

2.1 窗函數法設計FIR濾波器方案

在Matlab中可直接產生窗函數[5]:矩形窗(Rectangle Window),三角窗(Triangular Window),漢寧窗(Hanging Window),凱塞窗(Kaiser Window)等,通過調用系統的函數即可實現窗的加載。具體調用方法如下 :

調用格式:w =函數名(n),根據長度n產生一個矩形窗w。 一般正常的心電信號頻率范圍在0.05~100 Hz之內[6],這本身就是一種比較微弱的電信號,當受到身體其他器官的干擾信號后,心電信號將會嚴重失真。另外還要考慮到電子器件噪聲和50 Hz的工頻信號的存在。這就需要盡量消除噪聲和干擾的影響。這里選取低通濾波器的設計指標為:通帶截止頻率ωp=0.2π,阻帶截止頻率ωs=0.3π,最小阻帶衰減As ≥50 dB。所以得出過渡帶寬tr_width=ωs-ωp,列長N=10 π/tr_width。選擇窗函數一般是選擇主瓣較寬的,這樣可以增加阻帶的衰減,保證了通帶的平穩,另外在保證阻帶最小衰減指標的情況下,適當增加列長N值,窄化過渡帶[7]。根據窗函數最小阻帶衰減的特性,只有海明窗和凱塞窗可提供大于50 dB的衰減。實際應用中選用窗函數大多是它們的折中,凱塞窗可以通過改變參數值來折中選擇主瓣寬度和旁瓣衰減,基于此的濾波器適應能力強且比較靈活。本文即是采用的凱塞窗編程設計。窗函數設計法是用一定寬度窗函數截取無限脈沖響應序列獲得有限長的脈沖響應序列,設計步驟[8]為:

(1) 通過傅里葉逆變換獲得理想濾波器的單位脈沖響應hd(n)。

hd(n)=12π-αxαxejwndw=sin[wτ(n-a)]π(n-a)(4)

(2) 由性能指標確定窗函數W(n)和窗口長度N。

(3) 求得實際濾波器的單位脈沖響應h(n),h(n)即為所設計FIR濾波器系數向量a(n)。

h(n)=hd(n)W(n)(5)

(4) 檢驗濾波器性能。

Matlab信號處理工具箱提供了各種窗函數、濾波器設計函數和濾波器實現函數。設計中利用Matlab提供的函數firl來實現,編程則是直接調用這些函數簡單直觀的完成設計。 調用格式: firl(n,Wn,‘ftype’,Window),其中n為階數、Wn為截止頻率 、ftype是濾波器的類型、Window是窗函數。應用凱塞窗的代碼如下:

Fs=100;

fc1 =10;

fc2 =20;

[n,Wn,beta,ftype]=kaiserord([7 13 17 23],[0 1 0],[0.01 0.01 0.01],100); %n=38,beta=3.4

w1=2*fc1/fs; w2=2*fc2/fs;

window=kaiser(n+1,beta); %使用kaiser窗函數

b=fir1(n,[w1 w2],window); %使用標準頻率響應的加窗設計函數fir1

freqz(b,1,512);

t = (0:100)/Fs;

s = sin(2*pi*t*5)+sin(2*pi*t*15)+sin(2*pi*t*30); %混和正弦波信號

sf = filter(b,1,s); %對信號s進行濾波

程序執行的結果如圖1,圖2所示。

從濾波效果圖看,所設計的濾波器基本消除了噪聲和干擾的影響,客觀的得出真實信號。按照設計方案中濾波器的指標,執行函數操作可以得到:N=68,As=59。之后增加參數N值。在該設計中,利用凱塞窗函數,執行了多種N值的改變。伴隨N值增大,過渡帶變窄,但阻帶的最小衰減沒有改變。

2.2 FDATool設計方案

FDATool(Filter Design & Analysis Tool)是Matlab信號處理工具箱專用的濾波器設計分析工具,操作簡單、靈活,可以采用多種方法設計FIR濾波器[9]。這種方法設計的數字濾波器,可以隨時調整濾波器濾波特性,而且濾波結果實時顯示在圖形區,減少了工作量,有利于濾波器設計的進一步優化。在Matlab命令窗口輸入FDATool后回車會彈出FDATool界面,也可在Matlab主界面下方選擇“start”→“toolbox”→“filter design”。具體參數選擇[10]為:

(1) 濾波器類型(filter type)為lowpass;

(2) 設計方法(design method)為FIR,使用窗口Window;

(3) 濾波器的階數(filter order)為15;

(4) 窗口類型(Window)為Kaiser,beta為0.5;

(5) fs為48 000 Hz,fc為10 800 Hz。

點擊“design filter”即可。值得注意的是,這里選擇filter order為15階,而不是所設計的16階濾波器。因為常數系數項h(0)=0。通過菜單“analysis”選擇“magnitude”和“ phase response”即可得到圖3,圖4的特性顯示。“analysis”選擇 “step response”和“impulse”可以得到圖5,圖6的響應顯示??梢钥闯鏊O計FIR濾波器的階躍響應和沖擊響應比較接近理想狀態。

3 結 論

從圖1~4的特性曲線中可以看出該濾波器的性能基本達到了要求,濾波作用比較明顯。曲線相對比較平穩,能夠滿足微弱信號濾波器的設計技術指標,特別是從方案二中的相頻特性曲線來看,曲線通過原點且為一條平滑直線,說明具有良好的線性相位特性,而這也是在應用中選擇FIR數字濾波器的重要原因,但是它的實際效果還要經過實踐的檢驗。FIR幅頻特性精度比IIR低,且濾波器所需階次比較高,但是它擁有很好的線性相位,即不同頻率分量的信號經過FIR濾波器后他們的時間差不變。另外,FIR還存在的缺點應加以改善[11],如信號的延遲偏大。這就考慮到用高性能的DSP器件,由于其處理速度快,此缺點在一點程度上是可以改善的。

4 結 語

本文通過設計實例,介紹了利用Matlab實現數字信號處理中的數字濾波器設計,從結果可以看出它們均可以達到技術指標要求,而且方法簡單、快捷,大大減輕了工作量。濾波器的設計工作完成后,可以借助Matlab的export操作導出所設計濾波器的系統函數H(z)。由于Matlab具有強大的接口功能,仿真后的結果可以很方便的移植到DSP,CPLD或FPGA等器件中[12]。在實際應用中,只需按要求修改濾波器參數,并對程序作較少的改動,即可實現不同的濾波器,實用性較強。

摘要:提出FIR數字濾波器的設計方案,并基于Matlab實現濾波仿真。通過使用Matlab信號處理工具箱提供的函數,選擇適當的窗函數編寫程序,其中窗函數按照實際信號的處理需求,參數折中選擇。實驗獲得了比較理想的濾波器特性,可以實現較好的濾波作用。而且在實際應用中只需按需求修改濾波器參數,并結合程序的相應改動,即可實現不同功能的濾波器。另外,介紹了利用FDATool設計濾波器的方法,簡單修改參數即可實現多種濾波器。

數字濾波器的設計范文第4篇

1 利用模擬濾波器來設計IIR帶通濾波器的步驟

1) 按照一定的變換將給出的數字濾波器的指標轉換為模擬帶通濾波器的技術指標。

2) 根據轉換后的技術指標設計模擬低通濾波器G1 (s) (G1 (s) 是低通濾波器的傳遞函數) 。

3) 將模擬低通濾波器G1 (s) 轉換成模擬帶通濾波器G2 (s)

4) 再按照一定的變換規則將G2 (s) 轉換成數字帶通濾波器的傳遞函數。

2 基于MATLAB設計IIR帶通濾波器的步驟

設計帶通數字濾波器的方法可以歸納為如圖所示的方法如圖1所示。

首先設計一個模擬原型低通濾波器, 然后通過頻率變換成所需要的模擬帶通濾波器, 最后再使用雙線性變換成相應的數字帶通濾波器。

設計先構造巴特沃斯、切比雪夫I和橢圓模擬低通濾波器, 然后將模擬低通濾波器轉換成模擬帶通濾波器, 最后利用雙線性變換將模擬帶通濾波器轉換成數字帶通濾波器。

在MATLAB下設計IIR濾波器可使用巴特沃斯函數設計出巴特沃斯濾波器, 使用Cheby1函數設計出契比雪夫I型濾波器, 使用ellipord設計橢圓濾波器。IIR濾波器設計時的階數不是由設計者所決定, 而是根據設計者輸入的各個濾波器參數由軟件設計出滿足這些參數的最低濾波器階數。IIR濾波器要知道通帶上下限截止頻率、阻帶上下限截止頻率、通帶紋波和阻帶紋波, 從而確定濾波器的階數N。

1) 確定數字濾波器的性能指標:通帶段上限截止頻率為8Hz, 通帶段下限截止頻率為4Hz, 通帶紋波為3d B, 下限截止頻率為3Hz, 上限截止頻率為9Hz, 阻帶衰減為15d B。

2) 轉換成模擬濾波器的指標:由模擬角頻率和數字角頻率的對應關系確定模擬濾波器的帶上下限截止頻率?p、阻帶上下限截止頻率s?、通帶紋波?p和阻帶紋波?s。

3) 巴特沃斯濾波器

巴特沃斯低通濾波器可用如下振幅的平方對頻率的公式表示:

根據指標可以得到

根據模擬濾波器的指標可以得出波特沃斯濾波器的階數和3d B頻率。

同樣可以求出契比雪夫I型濾波器和橢圓濾波器的階數和3d B頻率并以此得到模擬濾波器的系統函數

4) 利用雙線性變換法將模擬濾波器映射成數字濾波器。

沖激響應不變法會產生頻譜混淆, 是由于S平面到Z平面的多值對應關系造成的。所以采用雙線性換法來將模擬濾波器映射成數字濾波器, 雙線性變換法是S平面與Z平面一單值對應關系, S平面的虛軸對應于Z平面單位圓的一周。

采用非線性頻率壓縮方法, 將整個頻率軸上的頻率范圍壓縮到橫帶之間, 通過標準變換關系再變換到整個Z平面。這樣就消除了多值變換性, 也就消除了頻譜混淆, 映射關系如圖2。

從頻率響應出發, 直接用數字濾波器的頻率響應去逼近模擬濾波器的頻率響應, 進而求得H (z) 。其單值映射映射函數為:

在MATLAB中, 可以直接調用函數來獲得數字濾波器的頻率響應, 由此可得到數字濾波器的頻率響應H (z) 。

雙線性變換法在運用過程中雖然沒有產生頻譜混淆的影響, 但是模擬濾波器和數字濾波器在頻率關系上發生了畸變, 即造成了相位的非線性化, 這也成為雙線性變換法的主要不足之處。雙線性變換法除了不用應用于線性相位濾波器設計, 是設計各類IIR濾波器的主要方法。

3 MATLAB中IIR數字濾波器設計結果

根據上述的設計步驟, 可以設計出預定預定指標為通帶段上限截止頻率為8Hz, 通帶段下限截止頻率為4Hz, 通帶紋波為3d B, 下限截止頻率為3Hz, 上限截止頻率為9Hz, 阻帶衰減為15d B的數字帶通濾波器。

4 結論

本文以IIR數字帶通濾波器為例, 詳細介紹了基于MATLAB設計數字濾波器。通過MATLAB仿真, 結合本文所介紹的方法, 可以有效地設計出各類IIR數字濾波器。

參考文獻

[1]王振宇, 張培珍.數字信號處理[M].北京:北京大學出版社, 2010:149-221.

[2]程佩青.數字信號處理[M].北京:清華大學出版社, 2007.

[3]余成波, 陶紅艷.數字信號處理及MATLAB實現[M].北京:清華大學出版社, 2008.

數字濾波器的設計范文第5篇

人體脈搏包含大量人體健康信息, 獲取到的脈搏信號的質量決定了分析結果的真實與否, 進一步影響到中醫診斷結果的準確性。脈搏信號像所有通過電路采集到的信號一樣會被各種噪聲干擾。實際檢測過程中, 因人體自然抖動等干擾帶來的噪聲用硬件濾波非常困難, 有必要設計合適的軟件數字濾波器對其進行去噪處理。

1 脈圖理論簡介與脈搏波形特性

心臟每搏動一個周期, 動脈血管內的血液狀態都會發生變化, 這些變化會以脈搏的搏動形式體現出來。搏動通過手指或脈搏信號傳感器被感測。傳統脈診是通過醫生的手指來對被檢者脈搏的頻率、深淺與強弱等一系列變化進行感知來獲得脈搏信息。

除用手指之外, 我們還可以用脈搏儀器來采集脈搏信息。以不同的壓力取法將通過脈搏儀器感測到脈搏的幅值與時間關系曲線稱為脈圖曲線。

正常的脈圖曲線 (如圖一所示) 主要由升支和降支組成。降支又分為重搏前波 (又稱潮波) 、降中峽和重搏波 (又稱降中波) 三段。每段波形的變化都具有相應的生理和病理診斷意義。

人體的脈搏信號本身具有頻率低 (分布在0.5~25Hz之間) 和強度弱 (體表電壓在2.5 m V左右) 等特點。而脈搏信號又是直接從活體采集, 所以獲取的信號會隨被檢者的心理、神經等多因素的影響導致發生較大變化。對其進行客觀化檢測與分析具有一定的難度, 同時也具有重要意義。

(1) 主波; (2) 重搏前波; (3) 降中峽; (4) 重搏波

2 人體脈搏信號的噪聲分析及數字濾波器介紹

2.1 人體脈搏信號的噪聲分析

實際應用時, 為較好滿足檢測與診斷的要求, 脈搏儀一般設定的有效脈搏信號頻率范圍在0.5~25Hz之間。采集到的脈搏信號中的噪聲主要由工頻、高頻和人體呼吸移動等引起, 脈搏信號去噪處理中采取對基線漂移的預消除處理措施, 它直接影響著信號波形的正確性以及相關參數計算的準確性。

圖二是對采集到的脈搏波形信號進行傅立葉變換后在MATLAB軟件中對其頻率分布進行分析得到的結果。

經過硬件電子線路濾波后的脈搏信號頻率將集中在0.5~25Hz范圍內。因此我們設計的數字濾波器的帶通頻率范圍設定為0.5~25Hz之間。

2.2 數字濾波器介紹

數字濾波器本質上就是一種計算機語言編制的程序, 目的是將輸入信號的數字時間序列按程序的設定轉換為輸出信號的數字時間序列??煞譃镮IR (無限長沖激響應) 濾波器和FIR (有限長響應) 濾波器兩種。

MATLAB程序中, 濾波器函數返回的都是FIR型濾波器, FIR型濾波器具有易描述、易對相位線性化等特性。因而MATLAB環境下采取FIR型數字濾波器來實現濾波是最好的方法, 一般可采用窗函數法和頻率采樣法等主流方法進行設計。

設計的濾波器過渡帶寬和阻帶衰減等指標參數, 會受到所設定的窗函數類型及其參數影響。較常用的窗函數有矩形窗、三角形窗、海明窗、漢寧窗和凱澤窗等, 這些窗函數在MATLAB上分別用函數Boxcar, Triang、Hamming、Hanning和Kaiser來實現。

采用窗函數法設計FIR濾波器時應注意以下兩點: (1) 為使獲得的過渡帶更為陡峭, 應盡量使窗譜的主瓣越窄越好。 (2) 為使能量盡量集中于主瓣, 減小在峰肩和紋波上的分布, 應盡量降低窗譜最大旁瓣的幅度值。

基于以上兩點, 通過對比各種窗函數的性能, 故選用Kaiser窗, 其窗函數為:

式 (1) 中, I0是零階修正Bessel函數, 我們可以通過改變自由參數β的大小來對主瓣寬度與旁瓣衰減以及過渡帶寬Δω進行設定。

MATLAB編程設計時首先確定濾波器以下指標參數:通帶截止頻率ωs、阻帶截止頻率ωp、實際通帶波動Rp和最小阻帶衰減As。其Kaiser窗設計算法公式為:

3基于MATLAB的FIR濾波器設計與仿真測試

3.1 FIR濾波器的設計

通過MATLAB軟件進行濾波器程序編程時, 首先設定理想低通濾波器單位脈沖響應序列函數。為保證不出現被零除的情況, 我們給采樣序列m加入一個小數。同時, 還應設定能夠給出系統頻率響應參數的函數, 再用另一個函數輸入阻帶衰減、通帶頻率及阻帶頻率等的指標參數, 從而確定Kaiser窗函數的各個參數。且可通過前面給出的算法公式進行編程設計, 但考慮到窗函數是關于中點對稱的特點, 因此設定窗函數的長度 (即濾波器長度) 應為奇數。

程序具體實現中, 我們先計算出通帶起伏和阻帶起伏值, 再將其中較小的代入, 計算出最小阻帶衰減, 進而計算出阻帶衰減值。對于計算出的濾波器長度M并判斷是否為奇數。

設計的具體Kaiser窗的參數如下:β=3.7, 濾波器長度M=67, 帶通截止頻率為0.5~25Hz, 通帶波紋取Rp=1d B, 阻帶波紋As=20d B, 濾波器的階數為20。我們通過采用MATLAB程序中提供的函數Kaiser (M, beta) 來生成以上相應參數:

濾波器程序部分MATLAB源代碼:

fs=200;//采樣頻率賦值

f=[0.5, 25]

wn=2*f/fs;

w1=kaiser (67, 3.7) ;

b1=fir1 (66, wn, w1) ;

signal2=filter (b1, 1, data) ;

freqz (b1) ;

圖三和圖四分別為FIR濾波器的幅頻響應曲線和相頻特性曲線。

3.2 仿真測試

最后對設計的FIR濾波器通過MATLAB進行仿真測試, 結果如圖五、圖六所示。

仿真結果顯示, 該FIR濾波器較好的保留了實際脈搏波形的特征波位的同時, 對信號中的波峰和波谷的擾動和尖銳 (即噪聲信號) 有較強的濾除作用, 濾波后脈圖波形曲線更加圓滑。證明上述設計的數字濾波器對脈搏波形的濾波效果優異。

4 結束語

在對脈搏信號進行數字濾波的濾波器設計時要充分考慮到脈搏信號自身的特點, 上述設計的濾波器仿真結果說明其對脈搏波信號噪聲處理方面有明顯的效果, 取得了預期的成果。如果結合前續硬件濾波電路共同對脈搏信號進行處理的話應將獲得更好的效果。

參考文獻

[1]薛年喜.MATLAB在數字信號處理中的應用[M].北京:清華大學出版社, 2003.

[2]黃大衛.波數字濾波器[M].北京:中國鐵道出版社, 1990.

[3]樓順天, 李博菡.基于窗函數的系統分析與設計——信號處理[M].西安:西安電子科技大學出版社, 2000.

數字濾波器的設計范文第6篇

FIR濾波器即有限長單位沖激響應濾波器, 是數字信號處理系統中一種基礎元件。FIR濾波器是一個穩定的系統, 濾波器的運用能夠確保了任何幅頻的特性, 同時也能夠保持著嚴格的線性相頻特性, 由于FIR濾波器的相關特性, 使得其在多個領域被廣泛地運用, 如圖像處理、通信等。對濾波器的設計也需要依據給定濾波器頻率特性進行設計, 從而確定出滿足給定特性的傳輸函數, 才能夠設計出滿足要求的FIR濾波器。

2 FIR數字濾波器的MATLAB設計方法研究

2.1 FIR數字濾波器數學模型和基本結構

FIR數字濾波器的數學模型結構主要有三種, 分別是直接型結構、級聯型結構以及頻率抽樣型結構。直接型的特點是結構需要N個乘法器, 如果系數不是對稱的, 那么就無法設計線性相位;級聯型結構的特點是每節控制著一對共歸極點, 所以這種結構非常方便地調整傳輸零點, 但是級聯型結構需要的乘方運算以及系數都比直線型結構多的多, 使得這種結構在實際運用中屬于少數;頻率抽樣型結構就是將一個長度為N點的有序長序列中的z轉變H (z) 單位圓上分成N等分抽樣, 得到H (k) , 離散傅里葉變換H (k) 就是主值序列。

2.2 窗函數設計法

窗函數設計FIR濾波器的基本原理如下:先確定出濾波器的各項技術指標, 通過確定的濾波器技術指標確定出濾波器的長度N以及濾波器的理想頻率響應Hd (ejw) , 再由濾波器的理想頻率響應Hd (ejw) 引導出hd (n) , 但是由于hd (n) 是一種非因果無限長序列, 而利用窗函數設計的FIR濾波器中的hd (n) 是有限長的序列, 因此設計時需要利用一個有限長的h (n) , 用以逼近函數hd (n) , 目前針對該問題通常采用的辦法是由過渡帶寬和阻帶最小衰減要求來對比各窗函數的基本參數, 從而確定窗函數。確定的窗函數截段hd (n) 通常用h (n) =hd (n) W (n) 來表示, 該式中的W (n) 就是確定的窗函數。目前經常使用的窗函數有以下六類, 分別是巴特利特窗、矩形窗、升余弦窗、海明Hamming窗、布萊克曼Blackman窗和凱塞窗。這六種窗函數各有的特點, 如凱塞窗函數比較靈活, 調整凱塞窗函數的參數大小, 可以設計出性能不同的濾波器。表1是幾種窗函數的性能。

基于MATLAB設計實例對于FIR濾波器的設計主要利用的是MATLAB濾波器設計工具箱實現的, MATLAB信號處理工具箱中含有FDATool工具, 其為專用的濾波器設計分析工具, 利用FDATool工具能夠設計出全部的常規濾波器, 當然也可以設計出FIR數字濾波器。MATLAB工具箱分為上下部分, 上部分為濾波器的設計結果, 下半部分是濾波器設計的各項性能和各項指標, 其中包含了設計方法、指標以及類型, 可以通過下半部分的控制決定出濾波器的各項性能和功能。MATLAB工具箱中的設計方法主要有巴特沃思法、契比雪夫I型法、契比雪夫Ⅱ型法、最小乘方法、窗函數法、橢圓濾波器法和關于FIR濾波器的Equiripple法;濾波器類型主要有低通、高通、帶通、帶阻以及較為特殊的FIR濾波器類型。

現以一個51點凱塞窗線性相位帶通濾波器為例, 其通帶是0.3~0.7。首先在MATLAB工具箱中的濾波器類型中選擇Bandpsaa選項, 即帶通選項, 然后在設計方法中選擇FIR按鈕, 并在下拉菜單中選擇Windows, 即窗函數法, 在窗函數下拉菜單中選擇Kaiser, 即凱塞窗, 指定階數在文本框中鍵入50, 單位選擇歸一化, 上截止頻率在文本框中鍵入0.7, 下截止頻率鍵入0.3, 最后點擊提交。當計算機自動的按照人員設置的參數完成濾波器的設計后, 單擊幅頻響應圖標計算機就可以顯示出帶通濾波器幅頻響應曲線, 單擊相頻響應圖標還可以描繪出相頻響應。

2.3 頻率采樣法

有時候工程會直接給出頻域上的技術指標要求設計出FIR數字濾波器, 針對這種情況可以直接采用頻率采樣法來設計FIR數字濾波器。采用頻率采樣設計法同樣能夠設計出低通濾波器、高通濾波器、帶通濾波器等, 只是每種濾波器的理想特性方程有所差別。

2.4 等波紋逼近法

等波紋逼近法是一種針對設計濾波器的優化方法, 該方法能夠克服窗函數法與頻率采樣法存在的誤差較大的缺陷, 即將波紋的峰值最小化, 使波紋峰值能夠平均地分布在逼近的頻段上。采用等波紋逼近法設計FIR數字濾波器, 其幅頻響應無論是在通帶還是阻帶上都為等波紋, 并且能夠有效地控制波紋幅度。例如用remez函數設計出一個30階的高通FIR數字濾波器, 那么具體的數值和核心代碼如下:%n=30, 通帶的截止頻率和波紋分別是0.8和0.02, 阻帶截止頻率與波紋分別是0.7和0.04。

3 FIR濾波器濾波系統設計

對于FIR濾波器濾波系統的設計可以采用Simulink來實現, Simulink是MATLAB中的一個附加組件, 該組件能夠實現各種動態系統的建模、分析、仿真, 無論該系統是連續、離散還是混合系統都能夠實現, 其是一款功能比較強大的軟件工具。Simulink中的信號處理模塊可以為設計人員提供超過200個數學函數以及DSP (高級信號處理) , 其可以實現矩陣和變換運算、FIR、自適應濾波器等。通過調用Simulink中的功能模塊來構建起數字濾波器仿真模型, 僅需要設置Simulink中的功能模塊的參數, 就可以在不同參數下仿真出數字濾波器的不同結果。例如, 根據設計的濾波系統模型進行濾波器仿真, 將一個信號源為100Hz的正弦波和一個高頻的噪聲送入到設計的低通濾波器, 先將濾波器的參數設置完畢, 濾波器的類型設置為低通, 設計方法選擇窗函數法中的凱塞窗, 通帶頻率100Hz, 阻帶衰減60dB。100Hz的正弦波送入到低通濾波器中, 波形為平穩的正弦波, 加入高頻噪聲后, 疊加后的波形會出現明顯改變, 波形參差不齊。疊加后的高頻噪聲信號通過凱塞窗函數設計FIR低通濾波器消除高頻噪聲, 波形會還原成100HZ正弦波波形。

摘要:隨著我國科學技術高速的發展, 數字信號處理技術應用于各個領域當中, 并取得了重大的成就, 而數字濾波技術作為數字信號處理中的一項重要技術, 其在數字信號處理中的作用和地位極其明顯, 所以進一步地研究數字濾波器具有重要的社會意義。

關鍵詞:FIR數字濾波器,窗函數設計法,頻率采樣設計法,等波紋逼近法

參考文獻

[1]http://f.wanfangdata.com.cn/download/Periodical_dzjsyy201303024.aspx唐博.基于FPGA的激光陀螺信號高速精確解調系統[J].電子技術應用, 2013

上一篇:燃氣爆炸事故調查報告范文下一篇:參觀無錫博物館有感范文

91尤物免费视频-97这里有精品视频-99久久婷婷国产综合亚洲-国产91精品老熟女泄火