湖北理工學院電氣與電子信息工程學院 桂靜宜
基于LabVIEW的IIR數(shù)字濾波器性能分析
湖北理工學院電氣與電子信息工程學院 桂靜宜
詳細介紹了基于LabVIEW的IIR數(shù)字濾波器設(shè)計原理和開發(fā)過程。該濾波系統(tǒng)不僅可以通過前面板方便地調(diào)整濾波器的種類和類型,而且還可以根據(jù)實際需求靈活地調(diào)整濾波參數(shù),顯示設(shè)計結(jié)果。最后以占空比可調(diào)的矩形波信號等為例,分析濾波前后信號的時域波形和頻譜圖。仿真結(jié)果表明,所設(shè)計的系統(tǒng)性能與IIR濾波器理論吻合、濾波效果良好、開發(fā)效率高。
虛擬儀器;無限沖激響應(yīng);數(shù)字濾波器;前面板;程序框圖
數(shù)字濾波器因其具有精度高、可靠性好、靈活性大、容易獲得高性能指標等優(yōu)點[1],在工程上應(yīng)用非常廣泛。根據(jù)單位脈沖響應(yīng)的時域特點,數(shù)字濾波器分為無限沖激響應(yīng)(IIR)濾波器和有限沖激響應(yīng)(FIR)濾波器。IIR濾波器可以借助模擬濾波器的設(shè)計成果、對設(shè)計工具的要求不高,主要用于具有片斷常數(shù)特性的通帶濾波器的設(shè)計。其主要的缺點是不容易實現(xiàn)線性相位,在同樣技術(shù)指標的前提下,IIR濾波器設(shè)計成本低。所以在對線性相位要求不高的語音通訊、語音處理等領(lǐng)域一般會選擇IIR濾波器進行設(shè)計和應(yīng)用。
但是,傳統(tǒng)的應(yīng)用Matlab文本文件實現(xiàn)的數(shù)字濾波器在使用中與硬件接口程序復雜、濾波系數(shù)調(diào)整困難,不能方便地構(gòu)成系統(tǒng)來測試濾波器在工程應(yīng)用中的性能[2]。應(yīng)用開放式的LabVIEW軟件,設(shè)計交互式應(yīng)用界面可以很好地解決這些問題。
LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一種用圖標代替文本行創(chuàng)建應(yīng)用程序的圖形化編程語言。利用其模塊化和層次遞歸的編程方法,可以方便地構(gòu)建、設(shè)計和更改自己的虛擬儀器系統(tǒng)[3],它在功能的完整性和應(yīng)用的靈活性上也不遜于任何高級語言。隨著LabVIEW信號處理工具箱的不斷完善,不僅使數(shù)字濾波器的設(shè)計最優(yōu)化,而且比應(yīng)用文本文件實現(xiàn)的濾波器使用方便。
IIR濾波器一般可以用線性常系數(shù)差分方程來描述:
濾波器頻率響應(yīng)是描述濾波器動態(tài)特性的重要參數(shù),它與系統(tǒng)函數(shù)的關(guān)系是:
3.1 前面板設(shè)計
LabVIEW程序由前面板和程序框圖兩個部分組成。按照圖1構(gòu)建IIR濾波性能測試系統(tǒng),可以很方便地修改濾波器的種類、類型等參數(shù),還可以顯示設(shè)計出的濾波器的幅頻特性和相頻特性曲線。圖1的文本中濾波器的種類有Butterworth、Chebyshev、Ellipse、Bessel等;濾波器的類型有Lowpass、Highpass、Bandpass、Bandstop四種類型[4];還可以設(shè)置通帶和阻帶的邊界頻率、通帶的最大波動、阻帶的最小衰減、濾波器的階次。其中通帶的最大波動和阻帶的最小衰減都是以分貝為單位;濾波器階次為正整數(shù),階次的變動對過渡帶和通(阻)帶的特性都有影響。在前面板濾波器的指標調(diào)整中使用了簇輸入,在前面板上選擇“查看”→“控制選板”→“新式”→“數(shù)組、矩陣┉”→“簇”,用鼠標拖拽到前面板合適的位置,放置一個大小合適的簇方框,再按規(guī)定的順序放置簇中的控件。整個虛擬面板簡潔、美觀。
圖1 llR濾波器測試系統(tǒng)的前面板
圖5 方波信號通過系統(tǒng)
圖2 llR濾波器測試系統(tǒng)的程序框圖
3.2 程序框圖設(shè)計
圖2是IIR濾波器測試系統(tǒng)的程序框圖。主程序是一個while循環(huán)結(jié)構(gòu),循環(huán)內(nèi)部的基本函數(shù)發(fā)生器可以產(chǎn)生正弦波、三角波、方波、鋸齒波,信號的幅度、頻率、方波的占空比都可進行設(shè)置;在程序框圖中選擇“查看”→“函數(shù)面板”→“信號處理”→“波形調(diào)理”→“數(shù)字IIR波器”得到規(guī)范的IIR數(shù)字濾波器,它除了時域“信號輸入”和“信號輸出”端外,還有“IIR濾波器規(guī)范”等輸入端,其中“IIR濾波器規(guī)范”(即濾波器指標調(diào)整)使用了簇輸入?!皵?shù)字IIR波器”還有一個“濾波器信息”端,這個輸出端就是濾波器的幅頻特性與相頻特性參數(shù)輸出端。通過“選擇”→“查看”→“編程”→“簇與變體”→“按名稱解除捆綁”,可以將“濾波器信息”分解成幅頻與相頻參數(shù),接入顯示器即可顯示幅頻特性與相頻特性。在程序框圖窗口菜單上選擇“查看”→“函數(shù)選板”→“信號處理”→“譜分析”→“幅度譜和相位譜”,放置進行信號幅度譜處理的方框圖,這樣在波形圖中除了顯示信號的時域波形外,也能顯示信號的頻譜圖。
4.1 llR濾波器的性能測試
為了分析所設(shè)計的IIR濾波系統(tǒng)的性能,這里以通帶最大波動為1dB、阻帶最小衰減為60dB、通帶截止頻率為150Hz的Butterworth低通濾波器為例,當濾波器的階次時所設(shè)計的濾波器的幅頻特性如圖3所示。從圖3中可以看出,隨著系統(tǒng)階次的提高,系統(tǒng)的響應(yīng)速度加快,過渡帶的寬度越來越窄,越接近于理想的低通特性[5]。
圖3 時,Butterworth低通濾波器的幅度特性
圖4 8階Butterworth和Chebyshev l型濾波器的幅度特性
4.2 正弦信號通過系統(tǒng)
為了驗證系統(tǒng)的性能特性,可以在濾波器前加入一個輸入信號,觀察輸出信號。圖1中設(shè)置濾波器是Butterworth帶通濾波器,其通帶截止頻率分別是150、300Hz,通帶的最大衰減是1dB,阻帶的最小衰減是50dB,濾波器的階次是6階,輸入一個頻率為200Hz、幅值為1V的正弦波信號,可以很容易觀察到信號可以無失真地通過系統(tǒng)。
4.3 方波信號通過系統(tǒng)
如圖5所示,為了測試系統(tǒng)的性能,讓幅值為1V、頻率為10Hz、占空比為50%的方波信號通過通帶截止頻率為200和300Hz、通帶最大波動為1dB、阻帶最小衰減為60dB的8階的Butterworth帶通濾波器,可以很清楚地看出方波中在濾波器通帶范圍內(nèi)的頻率成分可以通過系統(tǒng),而在此范圍外的頻率成分能被有效地屏蔽。而且濾波器的階次越高,屏蔽的效果越好。
基于LabVIEW實現(xiàn)的IIR數(shù)字濾波器比應(yīng)用文本編程語言的開發(fā)效率高。它既可在LabVIEW下運行,也可以被編譯成獨立的可執(zhí)行文件。LabVIEW采用高速并行編譯方式,信號處理的實時性也是一般文本語言所不能及的。由于LabVIEW采用圖形化語言編程,程序的界面友好、編程效率高、方便進行功能擴展,在測控領(lǐng)域、信號處理領(lǐng)域都得到了廣泛的應(yīng)用。本程序雖然集成了幾種典型的IIR濾波器,但在進行大型的虛擬儀器系統(tǒng)設(shè)計時,可以將其作為子程序與其他典型的數(shù)字濾波器集成一起可以提供多種選擇的復合類型的數(shù)字濾波器,以適用工程實際的各種需求[6]。
[1]程佩青.數(shù)字信號處理教程(第四版)[M].北京:清華大學出版社,2013.
[2]王麗坤等.基于LabVIEW平臺的IIR數(shù)字濾波器設(shè)計[J].哈爾濱理工大學學報,2003,8(6):47-50.
[3]Jeffrey Travis,Jim Kring著,喬瑞萍等譯.LabVIEW大學實用教程(第三版)[M].北京:電子工業(yè)出版社,2008.
[4]岳洪偉.基于LabVIEW的數(shù)字信號處理虛擬實驗平臺實現(xiàn)[J].實驗技術(shù)與管理,2011,28(8):70-72.
[5]鄒玲,郭彪,楚思紅.基于LabVIEW的IIR數(shù)字濾波器的設(shè)計[J].湖北工業(yè)大學學報,2011,26(3):83-84.
[6]周偉林,楊華勇,李清峰.基于LabVIEW的數(shù)字濾波器的設(shè)計[J].微計算機信息,2006,22(5-1):163-164.
桂靜宜(1967—),女,湖北蘄春人,大學本科,講師,主要從事電子技術(shù)和信號處理等方面的教學、科研工作。