數(shù)字濾波器的軟件設計流程
引言
本文引用地址:http://butianyuan.cn/article/187427.htm數(shù)字化、智能化和網(wǎng)絡化是當代信息技術發(fā)展的大趨勢,而數(shù)字化是智能化和網(wǎng)絡化的基礎,實際生活中遇到的信號多種多樣,例如廣播信號、電視信號等等。上述這些信號大部分是模擬信號,也有小部分是數(shù)字信號。模擬信號是自變量的連續(xù)函數(shù),自變量可以是一維的,也可以是二維或多維的。數(shù)字濾波器技術是數(shù)字信號分析、處理技術的重要分支。無論是信號的獲取、傳輸,還是信號的處理和交換都離不開濾波技術,它對信號安全可靠和有效靈活地傳輸是至關重要的。在所有的電子系統(tǒng)中,使用最多最復雜的要算數(shù)字濾波器了。
1 數(shù)字濾波器的設計原理
數(shù)字濾波器根據(jù)其沖擊響應函數(shù)的時域特征,可分為兩種,即無限長沖擊響應(IIR)濾波器和有限長沖擊響應(FIR)濾波器。IIR濾波器的特征是,具有無限持續(xù)時間沖擊響應。這種濾波器一般需要用遞歸模型來實現(xiàn),因而有時也稱之為遞歸濾波器。FIR濾波器的沖擊響應只能延續(xù)一段時間,在工程實際中可以采用遞歸的方式實現(xiàn),也可以采用非遞歸的方式實現(xiàn)。數(shù)字濾波器的設計方法有多種,如雙線性變換法、窗函數(shù)設計法和切比雪夫逼近法等等。
隨著LabVIEW軟件,尤其是LabVIEW的信號處理工作箱的不斷完善,不僅數(shù)字濾波器的計算機輔助設計有了可能,而且還可以使設計達到最優(yōu)化,而使用LabVIEW設計的濾波器不僅設計簡單,而且使用起來要比利用文本文件實現(xiàn)的濾波器方便得多。LabVIEW為設計者提供了FIR和IIR濾波器VI,使用起來非常方便,只需要輸入相應的指標參數(shù)即可,不需要進行復雜的函數(shù)設計和大量的運算。不同濾波器VI濾波時均有各自的特點,因此它們用途各異。
2 濾波器的選擇方法
在利用LabVIEW實現(xiàn)濾波功能時,選擇合適的濾波器是關鍵,在選擇濾波器時,可參照不同濾波器的特點,考慮濾波的實際要求來選擇合適的濾波器。各種濾波器的特點及選擇濾波器的步驟如圖1IIR數(shù)字濾波器:
圖1 流程圖
IIR數(shù)字濾波器設計原理:IIR數(shù)字濾波器是通過因果穩(wěn)定的Ha(s)映射成因果穩(wěn)定的H(z),即s平面的左半平面必須映射到z平面單位圓的內(nèi)部。H(z)的頻率響應能模仿Ha(s)的頻率響應,即s平面的虛軸必須映射到z平面的單位圓上。變換前后的濾波器在時域或頻域的主要特征(頻率響應或單位沖激響應等)應盡可能相同或接近。將傳輸函數(shù)Ha(s)從s平面轉換到z平面的方法有多種,主要有沖激不變法和雙線性變換法。
如果不考慮混疊現(xiàn)象,利用沖擊不變法實現(xiàn)的數(shù)字濾波器會很好地重現(xiàn)原模擬濾波器的頻率特性。而且數(shù)字濾波器的單位脈沖響應完全模仿模擬濾波器的單位沖激響應,時域特性逼近好。在本設計中,用沖激函數(shù)作為系統(tǒng)激勵信號,用各種數(shù)字濾波器作為測試系統(tǒng)。沖激函數(shù)具有無限寬廣的頻譜,用沖激函數(shù)做激勵信號相當于對測試系統(tǒng)輸入所有頻率的信號,系統(tǒng)必然有對應的輸出。用Transfer函數(shù)計算出系統(tǒng)輸出與輸入的傅立葉變換之比,從而得到系統(tǒng)的頻率響應函數(shù)。
LabVIEW程序由兩部分組成:前面板程序和框圖程序。
整個程序基于多線程設計,即前面板和系統(tǒng)程序各占用一個線程。前面板是用戶接口,即交互式界面,用于用戶向程序中輸入各種控制參數(shù)和觀察輸出量。在前面板中,使用了各種仿真圖標,如開關、旋鈕等,并以數(shù)字或實時趨勢圖等各種形式的輸出測試結果來模擬真實儀器的面板。通過信號經(jīng)過巴特沃斯和切比雪夫帶通濾波器以后的波形和信號經(jīng)過貝塞爾和橢圓帶通濾波器以后的波形。
程序包含有兩個模塊,即兩個case結構:一個用來實現(xiàn)頻率響應測試;另一個用來模擬從混有高頻噪聲的信號數(shù)據(jù)中提取正弦波。由于濾波器對信號的分析要求循環(huán)進行,而整個過程都希望是人為控制的,因此框圖程序里需要一個While循環(huán)結構。
模塊一:頻率響應測試模塊。頻率響應測試時采用沖激函數(shù)做激勵信號,通過函數(shù)子模板中調(diào)用來實現(xiàn),并且需要對沖激函數(shù)的采樣數(shù)、幅值和延時3個參數(shù)進行設置。用Transfer函數(shù)計算出系統(tǒng)輸出與輸入的傅立葉變換之比,從而得到系統(tǒng)的頻率響應函數(shù)。在本設計系統(tǒng)中,共包含有4種類型濾波器,分別為:巴特沃斯濾波器、切比雪夫濾波器、貝塞爾濾波器、橢圓濾波器。通過在模塊中調(diào)用相應的函數(shù)子模板來實現(xiàn),并且對濾波器的階次、類型、低(高)端截止頻率、通帶波紋等各項參數(shù)進行設置,為了驗證所設計的系統(tǒng)對濾波器頻率響應特性分析的效果,將開關設置為開的狀態(tài)。如果由于四種濾波器的波形全部在一個波形測量節(jié)點顯示會影響觀測效果,所以在程序設計時,將濾波器的波形分成兩組輸出。
圖2 模塊一程序圖
在LabVIEW中利用transferfunction.vi來計算兩個濾波器的頻率響應函數(shù)。
模塊二:使用低通濾波器提取正弦波模塊。通常微機應用系統(tǒng)的輸入信號中會不可避免地受到各種噪聲的干擾,可以采用數(shù)字濾波方法對其予以削弱或濾除。本模塊輸入信號為一個正弦波,并加入一個白噪聲來模擬信號傳輸中的干擾信號。在設計過程中,使用巴特沃斯低通濾波器濾除噪聲分量,從而達到提取正弦波的目的。該模塊程序中共有兩個巴特沃斯濾波器。首先調(diào)用SinePatternvi子程序和UniformWhiteNoisevi子程序產(chǎn)生一個正弦波和均勻分布的白噪聲(用來模擬實際混入的干擾信號),干擾信號通過一個巴特沃斯高通濾波器,生成一個高頻噪聲并與正弦信號疊加,用來模擬含有噪聲的采樣序列,該信號再經(jīng)過一個巴特沃斯低通濾波器,進而實現(xiàn)正弦波提取。
圖3 模塊二程序圖
通過仿真實驗可以證實,當濾波器的階次較高時,系統(tǒng)的頻率響應速度越快,階次越高就越接近理想特性。本例選用巴特沃斯濾波器,它擁有最平滑的頻率響應,在截斷頻率以外,頻率響應單調(diào)下降。在通帶中是理想的單位響應,在阻帶中響應為零。巴特沃斯濾波器的優(yōu)點是具有平滑的單調(diào)遞減的頻率響應,缺點是通帶與阻帶之間過渡緩慢。相比之下,切比雪夫濾波器的幅度特性在通帶中具有這種等波紋特性,并且階次越高等波紋也相應增加,同時阻帶內(nèi)衰減也相應增加?;贚abVIEW的數(shù)字濾波器設計,使得濾波后噪聲得到了有效抑制,濾波效果良好。
評論