溫度采樣處理過程如圖10所示。首先,將溫度傳感器電壓信號經(jīng)過橋式放大電路轉(zhuǎn)化成符合STM32ADC的采樣電壓,然后在軟件上使用過采樣技術[16]提高信號采集靈敏度。SMT32內(nèi)部集成了一個分辨率為12位的模數(shù)轉(zhuǎn)換器,溫度變化0.1°C時不能及時作出響應。本文設計的分辨率為16位,在每個采樣周期內(nèi)需要收集大量樣本,之后除以16,即累加和轉(zhuǎn)儲,h得到的結(jié)果是16位有效數(shù)據(jù)。接下來采用滑動平均濾波[17]方法去除信號中的噪聲,滑動平均濾波方法[17]
是針對本次采樣結(jié)果與過去若干個采樣值求取平均值而獲得有效結(jié)果的一種算法,可減少采樣次數(shù),提升實時性,而且對于明顯的脈沖干擾有非常好的濾除效果。軟件設計一個存儲近期溫度值的數(shù)組,數(shù)組大小為20,將新采集的數(shù)據(jù)放到數(shù)組末尾后,去掉最小和最大值,求取平均值,得到的結(jié)果就是有效采樣值。之后利用區(qū)間線性擬合算法[18]計算出溫度值,在測溫范圍內(nèi)等間距地選擇6個標定的ADC值,在實際操作中,根據(jù)每次經(jīng)過單片機的模數(shù)轉(zhuǎn)換值求出選定標定值的最小范圍。最后,在最小區(qū)間利用線性插補處理方法計算實際溫度值。