摘 要: 以切比雪夫等波紋逼近理論為基礎,設計了切比雪夫等波紋逼近FIR低通濾波器,。在以MSP430F133單片機為核心的可燃性氣體檢測報警系統(tǒng)中,,采用該低通濾波器,對可燃性氣體濃度信號處理,,獲得較好的效果,。
關鍵詞: 切比雪夫等波紋逼近 FIR低通濾波器 MSP430 F133 單片機
1 切比雪夫等波紋逼近低通濾波器設計方法
在數(shù)據(jù)采集系統(tǒng)中,輸入信號均含有種種噪聲和干擾,,它們來自被測信號源本身,、傳感器和環(huán)境等。為了進行準確測量和控制,,必須消除被測信號中的噪聲和干擾,。工程上常用的軟件濾波方法有:算術平均值法,、滑動平均值法、防脈沖干擾平均值法等,。這些方法一般可以消除由于偶然因素引起的脈沖干擾,,但對周期性干擾尤其是工頻干擾和白噪聲抑制作用較差,而且平滑度不高,。
切比雪夫等波紋逼近方法是FIR濾波器設計方法之一,。它采用“最大誤差最小化”優(yōu)化準則,即mini(max|E(w)|),,其中權函數(shù)誤差E(w)=W(w)[Hd(w)-H(w)],,W(w)為加權函數(shù),Hd(w)為期望頻率響應,,H(w)為實際頻率響應,。該方法使用Remez交換算法和切比雪夫逼近理論設計濾波器,在期望的和實際的濾波器頻率響應之間實現(xiàn)最佳匹配,。應用這種方法設計的濾波器能夠獲得較好的通帶和阻帶性能,,并能準確地指定通帶和阻帶邊緣。由于該濾波器在通帶和阻帶的誤差是均勻分布的,,因此其頻率響應在通帶和阻帶內顯示出等波紋性,,階次可以比較低。從上述分析,,切比雪夫等波紋逼近濾波器是最優(yōu)的,。
決定切比雪夫等波紋逼近低通濾波器系數(shù)的參數(shù)主要有:濾波器長度M,通帶和阻帶截止頻率wp,、ws,,相應頻帶的幅度m,權系數(shù)w,。其中權系數(shù)w由通帶和阻帶波動Ap,、Ar決定。使用權系數(shù)w,,是考慮在設計濾波器時對通帶和阻帶常要求不同的逼近精度,,故乘以不同的權系數(shù),以統(tǒng)一使用最小化最大誤差,。長度M由wp,、ws,、Ap,、Ar決定。
Kaiser提出近似計算單通帶,、單阻帶濾波器長度M的一個簡單公式:
本文所研究的對象為可燃性氣體檢測報警系統(tǒng),。傳感器檢測氣體濃度信號,,把輸出的模擬電壓值送到單片機,經A/D轉換成數(shù)字量后,,再進行低通濾波,、線性化處理以及LED顯示濃度等。由于輸入信號為緩慢變化的可燃性氣體,,在濾波器設計中,,可把通帶、阻帶的截止頻率選得較低,,這里wp=0.1,,ws=0.3(采樣頻率150Hz)。為便于進一步處理,,通帶的幅頻特性應該平坦,,幅值增益接近1。當Ap=0.22db,、Ar=30db時,,根據(jù)MATLAB仿真,恰能滿足要求,,此時M=16,。切比雪夫等波紋逼近低通濾波器幅相頻率特性如圖1所示。由圖可見,,該濾波器對通帶,、阻帶截止頻率控制得很好,過渡帶衰減得較快,。要達到同樣要求的濾波指標,,使用窗函數(shù)方法設計的濾波器卻需要很高的階數(shù)(105階),而過高的階數(shù)不易在單片機或其他微控制器上實現(xiàn),。所以采用切比雪夫等波紋逼近方法設計的濾波器不但濾波性能優(yōu)良,,而且階數(shù)可以做得比較低,易在單片機或其他微控制器中實現(xiàn),。
2 MSP430F133中的ADC12模塊特點及使用方法
系統(tǒng)采用MSP430F133單片機,,它是美國德州儀器(TI)公司生產的一種新型16位Flash微控制器。其突出的優(yōu)點是低電源電壓,、超低功耗,、多種功能。由于其功能遠遠超過其他系列單片機,,因而又稱之為混合型單片機,。MSP430F133芯片中的ADC12是12位高精度A/D轉換器,它采用逐次逼近原理,12位分辨率,,最高采樣速率可達2×105次/秒,。利用芯片內置的自動掃描功能,ADC12可以不需要CPU的協(xié)助而獨立工作,。應用這款單片機設計智能儀器,,可以明顯地簡化外圍電路器件。
為了得到精確的轉換,,適當?shù)牟蓸訒r間是必須的(這里選擇SHT0=8即Tsample=4×ADC12CLK×64),。根據(jù)系統(tǒng)設計要求,MSP430F133對一路模擬信號進行巡回處理,,雖然ADC12提供了多次—單通道A/D轉換模式,,但1次連續(xù)采集的點數(shù)(20個)超過了最大存儲器限額(16個)。為了保證采樣間隔相等,、精度相同,,本系統(tǒng)選擇單次—單通道A/D轉換模式。同時,,A/D轉換的參考電平選擇外部2.5V的參考電壓供電,,因為ADC12內部提供的參考電平會隨時間、溫度有一定的漂移,。
A/D處理程序采用查詢方式,,即1次連續(xù)采集20個點,將采集的數(shù)據(jù)暫存到片內RAM,,然后再對這些數(shù)據(jù)進行卷積濾波,。當一組數(shù)據(jù)處理結束后,再采集第二組數(shù)據(jù),。由于MSP430高速的處理能力,,故選擇CPU默認時鐘頻率為800kHz(DCO提供);ADC12的轉換時鐘選擇內部自帶的RC振蕩器ADC12OSC,,頻率為5MHz,;從完成一組數(shù)據(jù)采集到最終顯示可燃性氣體濃度的時間小于0.05秒,這樣的處理速度完全能夠滿足對可燃性氣體濃度實時檢測的要求,。
3 切比雪夫等波紋逼近低通濾波器在MSP430F133單片機中的實現(xiàn)
可燃性氣體濃度信號經過TGS813氣體傳感器轉變成電信號,,經前置放大后送入單片機。圖2為單片機隨機現(xiàn)場采集的一組原始信號,。從圖中可以看出采集的信號存在一定幅值波動,,而且幅值不是在一個范圍內上下波動,這時采用均值濾波效果不好,。圖3為原始信號的頻譜,,該頻譜除了直流分量外,還包含多種頻率成份,即夾雜一些噪聲和干擾,。
MSP430F133單片機具有強大的數(shù)據(jù)處理能力,采用匯編語言可以編寫出高效率的源程序,。程序采用定點運算模式即能滿足精度要求,。通過上面給定指標設計出的切比雪夫等波紋濾波器系數(shù)為(濾波器長度M=16,由于系數(shù)偶對稱,,所以只需存儲一半系數(shù)):
h=[-0.02443 -0.02362 -0.01615 0.01153 0.05906 0.11953 0.1709 0.20291]
把每個系數(shù)都擴大1 280倍(放大倍數(shù)小,,則系數(shù)之間誤差變大,擴大沒有意義,;放大倍數(shù)太大,,則乘除法運算時容易產生溢出),四舍五入取整,,并轉換成16進制,,以系數(shù)表格形式存放在單片機內部的Flash存儲器中,則:
圖6為切比雪夫等波紋逼近濾波主程序框圖,。程序采用模塊化結構設計,,并使用查表的方法進行卷積。在卷積求點Y(16),、Y(17),、Y(18)、Y(19)以及折線插值求對應濃度時,,都調用了16×16位定點乘法和32÷16位定點除法運算子程序,。由于存儲的濾波器系數(shù)為12位,采集的電壓值亦為12位,,所以定點乘法以及定點除法運算不會產生溢出,。當發(fā)生溢出時,則程序舍掉當前數(shù)據(jù),,重新采集一組新數(shù)據(jù)進行處理,,從溢出到再次采集,程序執(zhí)行時間小于0.05秒,。
4 結束語
本文以緩慢變化的可燃性氣體濃度信號為例,,進行切比雪夫等波紋逼近低通濾波器設計,并在MSP430F133單片機中加以實現(xiàn),。通過仿真及現(xiàn)場測試,,得到較滿意的效果,可以用于實際系統(tǒng),。切比雪夫等波紋逼近濾波方法能夠全面控制給定的設計指標,,通帶和阻帶達到最小等波動特性,并且濾波器的階次相對較低。在該系統(tǒng)中,,從完成一組數(shù)據(jù)采集到最終LED顯示可燃性氣體濃度的時間不超過0.05秒,,這樣的處理速度完全能夠滿足對可燃性氣體濃度實時檢測的要求。
參考文獻
1 吳湘淇.信號系統(tǒng)與信號處理(第一版).北京:電子工業(yè)出版社,,1996
2 chen C T.Digital Signal Processing Spectral Computation and Filter Design.BEIJING:Publishing House of Electronics Industry,,2002
3 陳亞勇.MATLAB信號處理詳解.北京:人民郵電出版社,2002
4 魏小龍.MSP430系列單片機接口技術及系統(tǒng)設計實例.北京:北京航空航天大學出版社,,2002
5 胡大可.MSP430系列FLASH型超低功耗16位單片機.北京:北京航空航天大學出版社,,2001