劉志剛
(唐山學(xué)院 機(jī)電工程系,河北 唐山063000)
在數(shù)字信號分析中,IIR數(shù)字濾波器是其中的關(guān)鍵組成部分。相對模擬濾波器,它具有較高的精度和穩(wěn)定性,其系統(tǒng)傳遞函數(shù)容易改變,針對不同的信號,其階數(shù)和系數(shù)可靈活改變,可實(shí)現(xiàn)多種方法的濾波,因而數(shù)字濾波器在軟件無線電中得到了廣泛的應(yīng)用。對相同階次的數(shù)字濾波器而言,IIR(無限沖擊脈沖響應(yīng)濾波器)濾波器具有更高的準(zhǔn)確度,因此,近年來IIR濾波器的研究逐漸成為熱點(diǎn)[1-2]。但是應(yīng)用文本軟件來實(shí)現(xiàn)的數(shù)字濾波器在使用過程中出現(xiàn)難以調(diào)整濾波系數(shù),與硬件接口程序復(fù)雜,開發(fā)周期長等不足。本文設(shè)計(jì)的IIR濾波器采用了交互式的計(jì)算機(jī)虛擬儀器程序語言LabWindows來實(shí)現(xiàn),可以有效解決上述問題。
所謂數(shù)字濾波器,是指輸入、輸出均為數(shù)字信號,通過一定運(yùn)算關(guān)系改變輸入信號所含頻率成分的相對比例或者濾除某些頻率成分的硬件。實(shí)質(zhì)上就是一個(gè)由有限精度算法實(shí)現(xiàn)的線性時(shí)不變離散系統(tǒng)。它的基本工作原理是利用離散系統(tǒng)的特性對系統(tǒng)輸入信號進(jìn)行加工和變換,改變輸入序列的頻譜或信號波形,讓有用的頻率分量通過,抑制無用的信號分量輸出,根據(jù)其頻率特性同樣可以分為低通,高通,帶通,帶阻。如果要處理的信號是模擬信號,就可以通過A/D或者D/A轉(zhuǎn)換,在信號形式上進(jìn)行匹配轉(zhuǎn)換,同樣可以使用數(shù)字濾波器對模擬信號進(jìn)行濾波。數(shù)字濾波器濾波的數(shù)學(xué)表達(dá)式為
如果濾波器的輸入輸出信號都是離散信號,那么該濾波器的脈沖響應(yīng)也一定是離散信號,這樣的濾波器就成為了數(shù)字濾波器。其頻域特性為
式中Y(ejw),X(ejw)分別是數(shù)字濾波器的輸出序列和輸入序列的頻域響應(yīng),H(ejw)是數(shù)字濾波器的頻域響應(yīng)??梢园凑蛰斎胄盘柕念l譜特點(diǎn)和處理信號的目的適當(dāng)選擇濾波器的頻域響應(yīng)H(ejw),使得濾波后的輸出信號滿足設(shè)計(jì)性能要求,這就是濾波器的濾波原理。
IIR數(shù)字濾波器的系統(tǒng)函數(shù)可以表示為
式中,當(dāng)k,r不全為0時(shí),H(z)稱為N階IIR濾波器函數(shù),它是一種遞歸型的濾波器[3-4]。
開發(fā)本虛擬信號分析儀所使用的軟件開發(fā)平臺Lab-Windows/CVI是以32位ANSIC編譯系統(tǒng)為核心,采用事件驅(qū)動模式和交互式編程方法的高性能專業(yè)測控軟件開發(fā)平臺。它集成了豐富的儀器面板控件和功能強(qiáng)大的庫函數(shù)[5]。應(yīng)用LabWindows/CVI可以方便地實(shí)現(xiàn)數(shù)據(jù)的采集、數(shù)據(jù)的分析和處理(如快速FFT變換、功率譜生成、傳遞函數(shù)的計(jì)算等等)以及圖形、圖表的顯示。
傳統(tǒng)IIR濾波器的設(shè)計(jì)源于模擬濾波器設(shè)計(jì),它通過對低通濾波器進(jìn)行模擬頻率變換得到。常用的IIR濾波器有巴特沃斯濾波器、切比雪夫?yàn)V波器、切比雪夫Ⅱ?yàn)V波器、橢圓濾波器和貝塞爾濾波器。目前,IIR濾波器的設(shè)計(jì)可以借助模擬濾波器的成果,有封閉形式的設(shè)計(jì)公式,對計(jì)算工具的要求不高,還有完善的圖表供查閱,另外,還有一些典型的濾波器類型可供使用。
選用LabWindows這一虛擬儀器的開發(fā)平臺,免去真實(shí)硬件設(shè)計(jì),應(yīng)用LabWindows提供的相應(yīng)的工具箱函數(shù),使IIR數(shù)字濾波器設(shè)計(jì)變得非常簡單。以低通巴特沃斯IIR數(shù)字濾波器為例,其設(shè)計(jì)步驟可由圖1所示的流程圖來表示。
圖1 低通巴特沃斯IIR數(shù)字濾波器設(shè)計(jì)流程圖
實(shí)現(xiàn)程序如下:
filter_information=AllocIIRFilterPtr(LOWPASS,filter_order);
err=Bw_CascadeCoef(sampling_rate,lower_cutoff_frequency,
upper_cutoff_frequency,filter_information);
err=IIRCascadeFiltering(input_signal,1024,filter_information,
filtered_signal);
濾波器設(shè)計(jì)所需的參數(shù)值都以指針的形式存儲到filter_information結(jié)構(gòu)指針中。同理如切比雪夫I,II型,巴塞爾和橢圓函數(shù)的高通、帶通、帶阻IIR數(shù)字濾波器也可實(shí)現(xiàn)。
在液壓元件性能測試時(shí),不論是元件的靜態(tài)測試還是元件的動態(tài)測試都需要采集油路中不同點(diǎn)的壓力參量和流量參量,這是由于液壓系統(tǒng)自身的特性必然會使被測量在采集過程中會引入很多干擾,影響被測量的準(zhǔn)確讀取。
以溢流閥靜態(tài)性能測試試驗(yàn)為例,溢流閥出口壓力參量經(jīng)FFT變換后可得到其壓力頻譜圖。如圖2所示,干擾信號以大于20Hz的干擾頻率為主,有用信號頻段主要在0~15Hz頻段內(nèi)。故可選用低通IIR數(shù)字濾波器作為測試系統(tǒng)中的數(shù)據(jù)處理單元。
圖2 溢流閥靜態(tài)測試壓力信號頻譜圖
圖3為利用LabWidows設(shè)計(jì)的IIR數(shù)字濾波器參數(shù)設(shè)置面板,面板上有參數(shù)設(shè)置、波形顯示兩個(gè)區(qū)域。在參數(shù)設(shè)置區(qū)域有設(shè)置項(xiàng):濾波器選擇、濾波器類型、下截止頻率、上截止頻率、采樣頻率、階次、紋波、衰減;可根據(jù)不同系統(tǒng)的不同要求來設(shè)置。波形顯示區(qū)域用于顯示濾波前后的波形,在此區(qū)域可直觀地看出濾波效果。
圖3 濾波器參數(shù)設(shè)置面板
測試中濾波器選擇為5階巴塞爾IIR低通數(shù)字濾波器,文波為2,低通截止頻率為30Hz。由圖4可以看出,溢流閥靜態(tài)性能測試試驗(yàn)中,溢流閥出口壓力參數(shù)經(jīng)濾波器濾波前、后的時(shí)域譜的波形對比圖,波形1為濾波前波形,波形2為濾波后波形。濾波前后波形時(shí)域譜圖可以看出濾波效果比較明顯,經(jīng)過濾波后信號波動大大減少,干擾噪聲濾除效果較好,但卻是以犧牲系統(tǒng)的動態(tài)響應(yīng)等特性為前提的,還應(yīng)配合相位校準(zhǔn)網(wǎng)絡(luò)以減少相位失真帶來的不足。
圖4 濾波前后波形時(shí)域譜
基于虛擬儀器LabWindows實(shí)現(xiàn)的IIR數(shù)字濾波器相對傳統(tǒng)濾波器設(shè)計(jì)大大提高了設(shè)計(jì)效率。本文只是以巴塞爾IIR數(shù)字低通濾波器設(shè)計(jì)為例做了詳細(xì)介紹,在進(jìn)行大型測試系統(tǒng)應(yīng)用時(shí),可與其它類型濾波器和FFT幅頻特性圖作為信號處理子模塊存在,以適應(yīng)不同的應(yīng)用環(huán)境需要。另外,為使噪聲得到最大程度濾除的同時(shí)保留更好的系統(tǒng)特性,可經(jīng)過濾波器參數(shù)的調(diào)整,選出合適的濾波器類型及參數(shù)。
[1] 王麗坤,邵俊鵬,劉玉林,等.基于LabVIEW平臺的IIR數(shù)字濾波器設(shè)計(jì)[J].哈爾濱理工大學(xué)學(xué)報(bào),2003,8(6):47-50.
[2] 周偉林,楊華勇,李清峰.基于LabVIEW的數(shù)字濾波器的設(shè)計(jì)[J].微計(jì)算機(jī)信息,2006,5(1):163-164.
[3] 鄭君里,應(yīng)啟珩,楊為理.信號與系統(tǒng)[M].北京:高等教育出版社,2000:5-9.
[4] 盧文祥,杜潤生.機(jī)械工程測試·信號分析[M].武漢:華中理工大學(xué)出版社,1999:104-111.
[5] 劉君華.虛擬儀器編程語言LabWindows/CVI教程[M].北京:電子工業(yè)出版社,2001:162-171.