《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于LabVIEW的FIR數(shù)字濾波器設(shè)計(jì)
基于LabVIEW的FIR數(shù)字濾波器設(shè)計(jì)
摘要: 目前,,F(xiàn)IR濾波器的設(shè)計(jì)方法主要是建立在對(duì)理想濾波器頻率特性做某種近似的基礎(chǔ)上的。這些近似方法有窗函數(shù)法,、頻率抽樣法及最佳一致逼近法,。本文介紹了一種在LabVIEW平臺(tái)下用窗函數(shù)法快速設(shè)計(jì)FIR數(shù)字濾波器的方法,。
Abstract:
Key words :

電子科技大學(xué)自動(dòng)化工程學(xué)院 張偉 王厚軍 羅光坤

引言

LabVIEW" title="LabVIEW">LabVIEW編程語言,也被稱為G語言,,是一種數(shù)據(jù)流編程語言,。程序員通過繪制導(dǎo)線連接不同功能的節(jié)點(diǎn),圖形化的程序框圖(LV源代碼)結(jié)構(gòu)決定程序如何執(zhí)行,。

現(xiàn)代濾波器理論研究的主要內(nèi)容是從含有噪聲的數(shù)據(jù)記錄(又稱時(shí)間序列)中估計(jì)出信號(hào)的某些特征或信號(hào)本身,。一旦信號(hào)被估出,那么估計(jì)出的信號(hào)的信噪比將比原信號(hào)的高,。對(duì)于數(shù)字濾波器,,從實(shí)現(xiàn)方法上,有IIR濾波器和FIR濾波器" title="FIR濾波器">FIR濾波器之分,。這兩類濾波器無論是在性能上還是在設(shè)計(jì)方法上都有很大的區(qū)別,。相對(duì)于IIR系統(tǒng),F(xiàn)IR系統(tǒng)有自己突出的優(yōu)點(diǎn),,其一是系統(tǒng)總是穩(wěn)定的,,其二是易實(shí)現(xiàn)線性相位,其三是允許設(shè)計(jì)多通代(或多阻代)濾波器,。后兩者都是IIR系統(tǒng)不易實(shí)現(xiàn)的,。目前,F(xiàn)IR濾波器的設(shè)計(jì)方法主要是建立在對(duì)理想濾波器頻率" title="頻率">頻率特性做某種近似的基礎(chǔ)上的,。這些近似方法有窗函數(shù)法、頻率抽樣法及最佳一致逼近法,。本文介紹了一種在LabVIEW平臺(tái)下用窗函數(shù)法快速設(shè)計(jì)FIR數(shù)字濾波器的方法,。

FIR數(shù)字濾波器窗函數(shù)法設(shè)計(jì)原理

1) 基本設(shè)計(jì)原理

考慮理想低通數(shù)字濾波器,其頻率特性為,,現(xiàn)假定其幅頻特性相頻特性,,那么,,該濾波器的單位抽樣響應(yīng)

(2.1.1)

是以為對(duì)稱的sinc函數(shù),, ,。這樣的系統(tǒng)是非因果的,因此是物理不可實(shí)現(xiàn)的,。但是,,如果將截短,例如僅取,,并將截短后的移位,得

 (2.1.2)

那么是因果的,,且為有限長,,長度為,,令可得所設(shè)計(jì)的濾波器的轉(zhuǎn)移函數(shù),。的頻率響應(yīng)將近似,,且是線性相位的,。

如果在指定的相頻響應(yīng)時(shí),不是令其為0,,而是令,,即具有線性相位,那么(2.1.1)式可改為

(2.1.3)

這樣,,是以為對(duì)稱的,,為此,可取 ,,,。

以上設(shè)計(jì)的是FIR低通數(shù)字濾波器,若設(shè)計(jì)高通,、帶通,、帶阻數(shù)字濾波器,只需改變(2.1.3)式積分的上,、下限,。

高通數(shù)字濾波器:

(2.1.4)

帶通數(shù)字濾波器:
(2.1.5)

帶阻數(shù)字濾波器:

(2.1.6)

式(2.1.4),(2.1.5)和(2.1.6)均以 對(duì)稱,,為此,,。

比較(2.1.3),,(2.1.4),(2.1.5)和(2.1.6)可以看出,,一個(gè)高通濾波器相當(dāng)于用一個(gè)全通濾波器減去一個(gè)低通濾波器,;一個(gè)帶通濾波器相當(dāng)于兩個(gè)低通濾波器相減,,其中一個(gè)截止頻率在,另一個(gè)在,。一個(gè)帶阻濾波器相當(dāng)于一個(gè)低通濾波器加上一個(gè)高通濾波器,,低通濾波器的截止頻率在,高通在,。

選取一個(gè)合適的窗函數(shù),,令即為要設(shè)計(jì)的濾波器的頻率響應(yīng)。按以上方法設(shè)計(jì)出的濾波器由于滿足的對(duì)稱關(guān)系,,因此都具有線性相位,。

2) 濾波器系數(shù)歸一化
在按照式(2.1.3)設(shè)計(jì)FIR低通濾波器系數(shù)的時(shí)候直接求出的這些的和,即一般是不等于一,,因此求出的,。對(duì)于低通濾波器,我們希望在處的值為1,,因此習(xí)慣上要將求出的歸一化,,即濾波器的每個(gè)系數(shù)都除以

同理,,對(duì)于高通,、帶通和帶阻濾波器,一般也要將系數(shù)歸一化,。

3) 窗函數(shù)的設(shè)計(jì)

式(2.1.2)將無窮長的僅取長為,,等于在 上施加了長為的矩形窗口。加窗的結(jié)果,,等于和矩形窗頻譜的卷積,。

本文所涉及到的窗函數(shù)有矩形窗、三角窗(Bartlett),、漢寧窗(Hanning),、漢明窗(Hamming)和布萊克曼窗(Blackman)。其表達(dá)式如下:



4)多余元素的刪除

線性移不變離散時(shí)間(LSI)系統(tǒng)的線性卷積可記為,。若是一個(gè)M點(diǎn)的序列,,是一個(gè)N點(diǎn)的序列,那么卷積的結(jié)果將是一個(gè)M+N-1的序列,。也就是說序列的長度為M,,濾波器的長度為N,經(jīng)過卷積后得到長度是M+N-1的序列,。為了保證序列的長度與原輸入序列一樣,,必須刪除邊界上的N-1個(gè)無效元素。具體刪除哪N-1個(gè)元素與卷積運(yùn)算的實(shí)現(xiàn)方式有關(guān)。

考慮到LabVIEW自帶的卷積函數(shù),,本文所設(shè)計(jì)的濾波器采用分別刪除序列的前(N-1)/2個(gè)元素和后(N-1)/2個(gè)元素。

FIR數(shù)字濾波器的LabVIEW設(shè)計(jì)

LabVIEW采用前面板和后面板來編程,。前面板用于輸入數(shù)據(jù)和顯示結(jié)果,;后面板則為濾波器設(shè)計(jì)的主程序。

程序設(shè)計(jì)共分為五部分:


圖3.1 濾波器設(shè)計(jì)框圖

1) 前面板設(shè)計(jì)

按濾波器的設(shè)計(jì)要求在前面板放置5個(gè)控件,,分別為信號(hào)生成控件,、濾波方式及參數(shù)控件、窗函數(shù)選擇控件,、采樣參數(shù)控件和波形顯示控件,。其中,前四個(gè)控件(如下圖)為用戶自定義控件,。


圖3.2 用戶自定義控件

2) 后面板設(shè)計(jì)

按圖3.1分別設(shè)計(jì)各個(gè)子VI(圖3.3),。從LabVIEW函數(shù)面板取出波形生成函數(shù)并與信號(hào)生成控件和采樣參數(shù)控件連接起來構(gòu)成信號(hào)產(chǎn)生VI。將設(shè)計(jì)好的濾波器子VI跟濾波方式及參數(shù)控件連接構(gòu)成濾波器VI,。窗函數(shù)子VI跟窗函數(shù)選擇控件連接構(gòu)成窗函數(shù)VI,。最后將信號(hào)連接至元素刪除VI經(jīng)波形圖顯示控件顯示。


圖3.3 程序框圖

濾波結(jié)果顯示

設(shè)計(jì)一FIR低通濾波器,,截止頻率為1kHz,。選取包含100kHz和3kHz兩個(gè)正弦分量的信號(hào)作為輸入信號(hào),信號(hào)采樣率為10 kHz,,濾波器系數(shù)為40,,窗函數(shù)選用漢寧窗。濾波顯示如圖4.1,。


圖4.1 濾波顯示

結(jié)束語

本文介紹了基于LabVIEW的FIR數(shù)字濾波器的設(shè)計(jì),。本濾波器可以根據(jù)設(shè)計(jì)要求方便的調(diào)節(jié)各種參數(shù)以達(dá)到最佳的濾波效果。此濾波器主要用在與之配套的示波器上,,通過讀取示波器采集的數(shù)據(jù)然后在PC機(jī)上實(shí)現(xiàn)濾波功能,。相對(duì)于示波器自帶的濾波器,本文設(shè)計(jì)的濾波器運(yùn)行在PC機(jī)上,,能更方便快捷的處理更多的數(shù)據(jù)同時(shí)濾波效果更好,。

 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。