何浪濤
摘 要:文章通過一個工控產(chǎn)品的開發(fā)實例,提出了一種使用高性能微控制器和適宜的計算機輔助設計軟件,簡便容易地解決熱電偶測溫系統(tǒng)開發(fā)中輸出電勢和對應溫差值非線性問題的方法。作者的設計思路較為新穎,具有一定的創(chuàng)新性。同時,文章關于擬合函數(shù)表達式階數(shù)選擇的實踐結論,對同類工業(yè)自動化產(chǎn)品的開發(fā)也有一定的參考價值。
關鍵詞:線性化處理;智能儀表;擬合算法;函數(shù)表達模型;MATLAB
引言
熱電偶基于熱電效應原理進行溫度測量,在工業(yè)溫度測控領域被廣泛使用。與熱電阻相比,熱電偶具有測溫范圍廣、機械強度高、裝配簡單等優(yōu)點;但同時也存在電勢率低、輸出電勢與被測溫差值線性度較差的缺點。
20世紀90年代之前的溫度測控儀表大多采用模擬電路設計,需要專門的硬件電路來處理熱電偶輸出電勢與溫差值非線性的問題。在需要較高的測溫精度時,該部分硬件電路將非常復雜,導致當時的熱電偶測溫系統(tǒng)要么精度低,要么價格非常昂貴。
在20世紀90年代之后,特別是進入21世紀,微控制器在工業(yè)測控儀表中得到了廣泛應用,一般將使用微控制器技術設計的儀表稱為智能儀表。微控制器強大的整數(shù)和浮點運算能力使得廉價高精度熱電偶測溫系統(tǒng)的實現(xiàn)成為可能。
1 智能熱電偶測溫系統(tǒng)線性化處理的常用方法
在對熱電偶輸出電勢進行線性化處理時,智能儀表通常采用“查表法”或“擬合算法”。
“查表法”就是在智能儀表程序存儲區(qū)固化一個一維數(shù)組,數(shù)組的下標代表熱電勢值的遞增序列,而數(shù)組中的值則代表相應下標位置的熱電勢值時熱電偶所對應的冷熱端之間溫差值。因此,只要測得熱電偶在某一時刻產(chǎn)生的熱電勢值,微控制器通過執(zhí)行預設查表子程序即可從上述數(shù)組中獲得當前的冷熱端溫差值。顯然,使用查表法的測溫精度主要取決于數(shù)組的細分程度,即“表”的精細度。而要獲得越高的數(shù)組細分程度,需要占用的數(shù)據(jù)存儲空間也越大,即“以空間換精度”。目前,這種方法在精度要求不高的測溫系統(tǒng)中應用廣泛,而在高精度的測溫系統(tǒng)中則因占用存儲空間太大導致經(jīng)濟性差而較少采用。
“擬合算法”又稱“插值函數(shù)法”,簡單講,即是根據(jù)被檢物理量和轉換后的數(shù)字量之間的對應關系,設法尋找一個函數(shù)表達式來描述這種對應關系,在允許誤差范圍內(nèi)用該簡單函數(shù)表達式近似地代替某復雜關系,由已知點推算未知點。
一般來說,為使獲得的逼近精度越高,需要選取的插值樣本節(jié)點就需要越多,最終函數(shù)表達式的冪次也越高。采用“擬合算法”的優(yōu)點是不需占用較大的程序存儲空間;缺點主要有兩個:一是所需的擬合精度越高,建立的多項函數(shù)表達式冪次也越高,微控制器在每次采樣數(shù)據(jù)后都需要使用該函數(shù)表達式進行運算,相應地耗用微控制器的運算時間也越多,即“以時間換精度”;二是智能儀表程序設計人員在建立高精度擬合函數(shù)表達模型時需要創(chuàng)建并求解多元線性方程組,這對程序設計人員的數(shù)學知識水平也是一個考驗。
隨著現(xiàn)代科學技術的飛速發(fā)展,微控制器的運算性能得到了大幅提升,如目前STM32系列微控制器的最高工作頻率可達72MHz,運行速度達1.25DMips/MHz,對于計算十階以內(nèi)的多項函數(shù)式可謂游刃有余;同時,利用計算機輔助設計軟件能幫助程序設計人員容易地建立高精度擬合函數(shù)表達模型。因此,憑借現(xiàn)代先進的半導體技術和計算機技術,完全可以采用“擬合算法”對熱電偶電勢進行很好的線性化處理,開發(fā)出廉價高精度的熱電偶測溫系統(tǒng)。
2 熱電偶線性化處理的簡易實現(xiàn)方法
下面,僅以K型熱電偶為例,介紹我公司采用“擬合算法”于2013年開發(fā)DDAM熱電偶多路遠程溫度采集模塊線性化處理部分的具體實現(xiàn)過程。
MATLAB是美國MathWorks公司出品的用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計算的高級商業(yè)數(shù)學軟件。在該軟件運行環(huán)境下,只需用戶輸入插值樣本節(jié)點值,并設置好所需擬合精度,MATLAB即會自動生成擬合函數(shù)表達式。在此次產(chǎn)品開發(fā)過程中,使用該軟件建立擬合函數(shù)表達模型,獲得了極大便利。
該產(chǎn)品熱電偶線性化處理部分的開發(fā)步驟如下。
2.1 依照K型熱電偶分度表,將0~1300℃范圍內(nèi)各溫度時的熱電勢值輸入MATLAB中,插值節(jié)點分辨率為10℃,設定MATLAB生成擬合函數(shù)表達式的階數(shù)為五階,這樣,MATLAB自動生成一個五階多項式如式(1):
T1=-7.5997×10-7×X15+1.0905×10-4×X14-3.9325×10-3×X13+0.017394×X12+24.75×X1-0.55944 (1)
其中X1為熱電偶產(chǎn)生的熱電勢值,T1為熱電偶冷端和熱端的溫差值。
2.2 依照K型熱電偶分度表,將0~50℃范圍內(nèi)各溫度時的熱電勢值輸入MATLAB中,插值節(jié)點分辨率為仍10℃,設定MATLAB生成擬合函數(shù)表達式的階數(shù)為二階,這樣,MATLAB自動生成一個二階多項式如式(2):
X2=1.75×10-5×T22+0.039574×T2-2.1429×10-4(2)
其中T2為熱電偶冷端補償測溫元件測得的熱電偶冷端溫度值,X2為熱電偶在冷端溫度值時對應的輸出電勢值。
2.3 據(jù)式(1)和式(2)的函數(shù)關系分別編制熱電偶“電勢-溫度轉換”和“冷端補償”子程序。
3 設計程序令微控制器在溫度采集后按如下框圖所示流程進行數(shù)據(jù)處理
檢測結果表明,采用五階多項式擬合算法設計的DDAM熱電偶多路遠程溫度采集模塊設計樣品在0~1300℃測溫范圍內(nèi)的測溫精度優(yōu)于0.2%,線性度優(yōu)于0.1%,超過工控現(xiàn)場儀表通用標準要求,產(chǎn)品設計取得了成功。
4 結束語
使用高性能微控制器和適宜的計算機輔助設計軟件,可有效降低智能儀表的開發(fā)難度。此外,在使用“擬合算法”建立函數(shù)模型時,根據(jù)產(chǎn)品的用途和預期技術指標選擇適宜的擬合函數(shù)表達式階數(shù)也是較為重要的。選用的階數(shù)過低,將不能達到預期設計指標,而選用過高的階數(shù)則會增加產(chǎn)品的復雜度,降低經(jīng)濟性。實踐證明,選用五階多項式函數(shù)表達式在工控產(chǎn)品設計中較為適宜。
參考文獻
[1]周航慈.嵌入式系統(tǒng)軟件設計中的常用算法[M].北京:北京航空航天大學出版社,2010(1).
[2]周航慈,朱兆優(yōu),李躍忠.智能儀器原理與設計[M].北京:北京航空航天大學出版社,2005(3).