《基于LabVIEW 的數(shù)字濾波器設計實例IIR FIR》由會員分享,可在線閱讀,更多相關《基于LabVIEW 的數(shù)字濾波器設計實例IIR FIR(7頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 目前,微機保護和二次信號處理軟件主要采用數(shù)字濾波器。傳統(tǒng)的數(shù)字濾波器設計使用繁瑣的公式計算,改變參數(shù)后需要重新計算,在設計濾波器尤其是高階濾波器時工作量很大。利用 LabVIEW(Laboratory Virtual INSTRUMENT Engineering Workbench,實驗室虛擬儀器工作平臺)使用G 語言(Graphics Language,圖形化編程語言)編程,可以快速有效地實現(xiàn)數(shù)字濾波器的設計與仿真。由于G 語言編程具有諸多優(yōu)點,因此基于LabVIEW 設計的數(shù)字濾波器具有高效、靈活、界面友好、集成性強、費用低、用戶自定義功能強等諸多優(yōu)點[1]。
1. 數(shù)字濾波器及
2、其傳統(tǒng)設計方法
1.1 數(shù)字濾波器概述
濾波器是一種使有用頻率信號通過同時抑制(或大為衰減)無用頻率信號的裝置。工程上常將它用于信號處理、數(shù)據(jù)傳送和抑數(shù)字濾波器是數(shù)字信號分析中的重要組成部分,它的輸入和輸出信號都是離散的,與模擬濾波器相比,它具有準確度和穩(wěn)定性高,系統(tǒng)函數(shù)容易改變,靈活性高等優(yōu)點,因而數(shù)字濾波器在工程中得到了廣泛的應用[2]。數(shù)字濾波器有多種分類,按頻率特性分類可以分為:高通、低通、帶通、帶阻;按數(shù)字濾波器沖激響應的時域特征分類可以分為:有限沖激響應濾波器(finite impulse response, FIR)和無限沖激響應濾波器(infinite impuls
3、e response, IIR)。FIR 濾波器的沖擊響應h(n) 是有限序列,IIR 濾波器的沖擊響應h(n) 是無限序列的。
數(shù)字濾波器的差分方程可以用下式表示:
式中, x(n) 為輸入序列, y(n) 為輸出序列, k a 、k b 分別為輸出、輸入序列的系數(shù)。
數(shù)字濾波器對應的傳遞函數(shù)為:
當k a 不全為0 時,為IIR 濾波器;當k a 全為0 時,為FIR 濾波器。
從性能上看,F(xiàn)IR 濾波器和IIR 濾波器各有優(yōu)點:FIR 濾波器可以得到嚴格的線性相位;但是需要較多的存儲器和較長的運算,成本比較高,信號延時也較大。IIR 濾波器可以用較少的
4、階數(shù)獲得很高的選擇特性,所用存儲單元少,運算次數(shù)少,效率高的優(yōu)點;但是相位是非線性的,且選擇性越好其相位非線性越嚴重[3]。
1.2 數(shù)字濾波器的傳統(tǒng)設計方法
數(shù)字濾波器的傳統(tǒng)設計過程可歸納為以下三個步驟:
(1)按照實際需要確定濾波器的性能要求。
(2)用一個因果穩(wěn)定的系統(tǒng)函數(shù)(即傳遞函數(shù))去逼近這個性能要求。此函數(shù)可以分為兩類:即IIR 傳遞函數(shù)和FIR 傳遞函數(shù)。
(3)用一個有限精度的運算去實現(xiàn)這個傳遞函數(shù)。
FIR 濾波器設計實質(zhì)是確定能滿足要求的轉移序列或脈沖響應的常數(shù),設計方法主要有窗函數(shù)法、頻率采樣法和等波紋最佳逼近法等。目前,F(xiàn)IR 濾波器
5、設計沒有封閉的設計公式。雖然窗函數(shù)法對窗口函數(shù)可給出計算公式,但計算通帶與阻帶衰減仍無計算公式。FIR 濾波器的設計只有計算程序可循,因此對計算工具要求較高,不用計算機編程一般很難實現(xiàn)。
IIR 濾波器的設計源于模擬濾波器設計,它通過對低通濾波器進行模擬頻率變換得到。常用的IIR 濾波器有巴特沃斯濾波器、切比雪夫濾波器、切比雪夫Ⅱ濾波器、橢圓濾波器和貝塞爾濾波器。目前,IIR 濾波器的設計可以借助模擬濾波器的成果,有封閉形式的設計公式,對計算工具的要求不高。
IIR 濾波器的設計雖然簡單,但脫離不了模擬濾波器的設計模式,主要用于設計低通、高通、帶通及帶阻濾波器。而FIR 濾波器的設
6、計要靈活得多,尤其是頻率采樣設計法更易適應各種幅度特性和相位特性的要求。
2 基于LabVIEW 的數(shù)字濾波器設計
2.1 LabVIEW 簡介
LabVIEW 是NI(National INSTRUMENT,美國國家儀器)公司推出的一種基于G 語言的虛擬儀器(virtual INSTRUMENT,VI)開發(fā)工具。LabVIEW 編程使用圖形化語言,它是非計算機專業(yè)人員使用的工具,它為設計者提供了一個便捷、輕松的設計環(huán)境,因此,LabVIEW 在世界范圍內(nèi)的眾多領域如航空、航天、通信、電力、汽車、化學等領域得到廣泛應用[4]。
LabVIEW 有兩個基本窗口:前面板窗口
7、和流程圖窗口。編譯環(huán)境下顯示兩個窗口,前面板用于放置控制對象和顯示對象,控制對象相當于常規(guī)儀器的控制和調(diào)節(jié)按鈕;前面板用于顯示程序運行結果,相當于常規(guī)儀器的顯示屏幕或指針。流程圖窗口用于編寫和顯示程序的圖形源代碼,它相當于語言編程中一行行的語句,它由各種能完成一定功能的模塊通過連線連接而成。當編寫的LabVIEW 程序調(diào)試無誤后,可將程序編譯成應用程序(EXE 文件)。此時,設計的虛擬儀器可以脫離LabVIEW 開發(fā)環(huán)境,用戶只需通過前面板進行控制和觀測。
2.2 LabVIEW 中的數(shù)字濾波器
利用文本軟件設計實現(xiàn)的濾波器在使用過程中往往出現(xiàn)難以調(diào)整波形系數(shù),與硬件接口程序復雜,
8、開發(fā)周期長等問題。而使用LabVIEW 設計的濾波器不僅設計簡單,而且使用起來要比利用文本文件實現(xiàn)的濾波器方便得多。
LabVIEW 為設計者提供了FIR 和IIR 濾波器VI,使用起來非常方便,只需要輸入相應的指標參數(shù)即可,不需要進行復雜的函數(shù)設計和大量的運算。濾波器VI 位于LabVIEW 流程圖面板的Function>>Analyze>>Signal Processing>>Filters 上。
不同濾波器VI 濾波時均有各自的特點,因此它們用途各異。在利用LabVIEW 實現(xiàn)濾波功能時,選擇合適的濾波器是關鍵,在選擇濾波器時,可參照不同濾波器的特點,考慮濾波的實際要求來選擇合
9、適的濾波器[5]。各種濾波器的特點及選擇濾波器的步驟見圖1。
圖1 濾波器選擇步驟
3 基于LabVIEW 的數(shù)字濾波器設計實例
電力系統(tǒng)濾波器可以從電力信號中將所需頻段的信號提取出來并將干擾信號濾除或大大衰減。利用LabVIEW 可以設計出滿足電力系統(tǒng)需要的濾波器,圖2為利用LabVIEW 設計的IIR 數(shù)字濾波器前面板,前面板上有參數(shù)設置、波形顯示兩個區(qū)域。在參數(shù)設置區(qū)域有六個設置項:濾波器選擇、濾波器類型、下截止頻率、上截止頻率、采樣頻率、階次、紋波、衰減;選擇的濾波器不同時,需要設置的項也不同。波形顯示區(qū)域用于顯示濾波前后的波形,在此區(qū)域可直觀地看出濾波效果。
10、
圖2 數(shù)字濾波器前面板
濾波器的輸入信號是從電力系統(tǒng)中采集的,信號中含有頻率為50Hz,有效值為220V 的基頻分量,和頻率為100Hz、150Hz、200Hz 的二次、三次、四次諧波?,F(xiàn)欲提取出基頻分量,濾去高次諧波,采用低通濾波方式濾波,濾波階次為8 階,紋波為0.1,衰減為60,下截止頻率為50Hz,分別采用巴特沃斯濾波器、切比雪夫濾波器、切比雪夫Ⅱ濾波器、橢圓濾波器和貝塞爾濾波器濾波,濾波器的輸入信號與不同濾波器的輸出波形如圖3 所示。由圖3 可以看出采用不同的濾波器濾波,濾波效果是不同的。在此實例中,巴特沃思濾波器和切比雪夫濾波器的濾波效果相對較好;而切比雪夫Ⅱ濾波器的濾波延遲時間較長;貝塞爾濾波器濾波的衰減較大。因此,要根據(jù)不同的工況要求來選擇合適的濾波器濾波。
4 結論
利用LabVIEW 實現(xiàn)的數(shù)字濾波,采用了圖形語言編程,與采用文本語言編程相比,能縮短40%~70%的開發(fā)時間;與硬件儀器相比,又具有容易調(diào)整濾波器類型、降低成本、濾波效果直觀等優(yōu)點。基于LabVIEW 編寫的程序還可以將其作為子程序在其他虛擬儀器系統(tǒng)中調(diào)用,大大增強了程序的通用性。