基于LM3S101 處理器的溫度測量模塊設計
2 數據處理及軟件設計:
2.1 熱敏電阻測溫曲線(xiàn)的線(xiàn)性化處理:
熱敏電阻的測溫曲線(xiàn)反映了熱敏電阻阻值與被測溫度值之間的關(guān)系,由Steinhart-Hart 方程確定:
式中,RT是熱敏電阻在T1溫度下的電阻值;R 是熱敏電阻在常溫T2(T2=25 ℃)下的標稱(chēng)電阻值;B 值是熱敏電阻的材料常數;T1和T2為開(kāi)爾文溫度。
由Steinhart-Hart 公式可知熱敏電阻的阻值溫度特性曲線(xiàn)是一條非線(xiàn)性的指數曲線(xiàn),直接使用該方程運算量大并且編程麻煩,需要進(jìn)行線(xiàn)性化處理。由于該方程非線(xiàn)性程度較大,同時(shí)阻值到溫度值的轉換也是影響測溫精度的主要原因之一,為使線(xiàn)性化處理不至于帶來(lái)較大的誤差,線(xiàn)性化過(guò)程進(jìn)行了以下特殊處理:
1)如果用一條直線(xiàn)代替該指數測溫曲線(xiàn),則不管采用什么樣的線(xiàn)性化處理方法,誤差都比較大。為解決這一問(wèn)題,在整個(gè)測溫范圍之內對該曲線(xiàn)進(jìn)行了分段的線(xiàn)性化處理,使誤差能夠控制在合理的范圍內;2)分段線(xiàn)性化時(shí),對測溫曲線(xiàn)的分段采用非等間隔分段,在曲線(xiàn)非線(xiàn)性程度較小的區域內采用5 ℃分段間隔,在曲線(xiàn)非線(xiàn)性較為嚴重的區域內,采用較小的1 ℃分段間隔,以減小處理誤差;3)在每一段測溫曲線(xiàn)的線(xiàn)性化處理中,采用最小二乘法確定直線(xiàn)方程,以減小直線(xiàn)擬合的均方誤差。
實(shí)測結果證明,采用上述的線(xiàn)性化處理方法,可以有效提高處理精度,大大減小線(xiàn)性化處理的誤差,保證測溫的精度要求,同時(shí)運算速度也能得到保證。
2.2 測溫數據的濾波處理:
測溫模塊工作過(guò)程中不可避免會(huì )受到噪聲干擾。為減少測溫過(guò)程中噪聲干擾信號,特別是突發(fā)噪聲的影響,提高測溫模塊的工作穩定性,需要結合濾波算法對測溫數據進(jìn)行濾波處理。這里采用簡(jiǎn)單的加窗平滑低通濾波的方法,即連續測量N 個(gè)值,取平均后作為測量的有效值,即:
在具體的應用中,N 越大對數據的平滑越好, 但N 過(guò)大會(huì )降低測溫的速度和靈敏度。經(jīng)實(shí)際試驗,選擇N=5~10 之間較為合適, 可在計算速度和平滑濾波效果之間取得較好平衡,實(shí)際應用中,可根據具體的測溫要求進(jìn)行合理設置。
2.3 測溫模塊的軟件設計:
以上述的數據處理思路為基礎,結合串口通信編程及必要的初始化處理工作,即可進(jìn)行測溫模塊的軟件設計。完成一次溫度測量及測溫結果傳輸的主流程如圖3 所示。
整個(gè)模塊的軟件設計編程基于Crossworks1.7 開(kāi)發(fā)環(huán)境進(jìn)行,將整個(gè)程序的核心部分劃分為4 個(gè)函數進(jìn)行設計,即:
1)主函數,完成系統參數配置、端口初始化及濾波處理等功能;2)測溫函數,完成熱敏電阻的阻值獲取,并將其轉換為實(shí)際的溫度值;3)測溫結果傳輸函數,完成測溫結果通過(guò)串口的發(fā)送傳輸功能;4)串口接收函數,通過(guò)串口接收控制指令,完成測溫間隔時(shí)間、串口通信速率、平滑濾波加窗寬度、及測溫結果顯示格式等工作參數的設置。
評論