韓昧華,王 芳,桑紅燕,楊新泉
(1.聊城大學(xué) 網(wǎng)絡(luò)信息中心,山東 聊城 252059;2.聊城大學(xué) 計算機學(xué)院,山東 聊城 252059;3.菏澤學(xué)院 計算機學(xué)院,山東 菏澤 274015)
熱電偶是根據(jù)熱電效應(yīng)測量溫度的傳感器,是溫度測量儀表中常用的測溫元件。將不同材料的導(dǎo)體A和B接成閉合回路,接觸端的一端稱測量端,則另一端分開,用導(dǎo)線接入顯示儀表,被稱為參比端。若測量端和參比端的溫度T和T0不同,則在回路的A、B之間就產(chǎn)生一熱電勢Eab(T,T0),這種現(xiàn)象稱為塞貝克效應(yīng),即熱電效應(yīng)[1]。Eab(T,T0)大小隨導(dǎo)體A、B的材料和兩端溫度T和T0而變,這種回路稱為原型熱電偶。在實際應(yīng)用中,熱電偶的測量端放到被測溫度T處,而保持參比端的溫度T0穩(wěn)定。顯示儀表所測得電勢隨被測溫度T變化而變化。一般熱電偶具有-200~2 000 ℃之間的較大寬度測量范圍,因此在各類測試系統(tǒng)中被廣泛應(yīng)用[2]。
測量的精度是測試中一個關(guān)鍵問題,研究表明,熱電偶測量溫度時,將溫度數(shù)據(jù)轉(zhuǎn)換成電信號時,存在非線性問題,在一定程度上影響了測溫的精度[3]。如何減少測溫誤差,提高測量精確度一直是熱電偶應(yīng)用與設(shè)計的研究熱點。
為了提高基于熱電偶的測溫控制系統(tǒng)測量精度,國內(nèi)外眾多學(xué)者對其進行深入研究,大體上可以歸納為兩類主要方法[4-6],一類是硬件補償法,在測量電路中再加入補償電路,使輸入與輸出實現(xiàn)線性化,但是這類方法需要一定的硬件投資,并且實現(xiàn)起來的電路工藝比較復(fù)雜;另一類是以曲線逼近法為典型的線性化補償法,該類方法在一定程度上可以提高測量精度,但是在測溫區(qū)間幅度較大時,存在著熱電偶輸出值與實際溫度值存在較大偏差的問題。
針對熱電偶元件測溫存在測量誤差較大的問題,在應(yīng)用最小二乘法實現(xiàn)熱電勢和溫度特性的線性處理基礎(chǔ)之上,提出一種基于分段擬合的熱電偶測溫控制方法,給出熱電偶測溫控制的動態(tài)分段擬合推導(dǎo)公式,并采用809C52單片機對該方法進行模擬實驗。實驗結(jié)果表明,該測溫方法簡捷高效,誤差可控制在1%之內(nèi),可適用于智能儀表和實時控制。
熱電偶的工作原理是基于熱電效應(yīng),在金屬中存在大量自由電子,不同的金屬導(dǎo)體,其自由電子密度不同[7,8]。兩種不同導(dǎo)體A和B相接觸時,由于自由電子擴散而產(chǎn)生的電勢差稱為接觸電勢,當(dāng)溫度為T時,其值EAB(T)為
(1)
式中k為玻茲曼常數(shù),e為電子電量,nA(T)和nB(T)分別是A和B兩種導(dǎo)體中自由電子密度,與溫度有關(guān)。而同一種導(dǎo)體,當(dāng)兩端溫度T和T0不同時,由于熱端自由電子動能大,向較冷的一端擴散,形成的電勢差稱為溫差電勢,其值為
(2)
式中σA為溫差系數(shù),與導(dǎo)體材料和溫度有關(guān)。因此,當(dāng)熱電偶測溫時,回路中總的熱電勢EAB(T,T0),等于兩個不同導(dǎo)體接觸點的接觸電勢和兩導(dǎo)體的溫差電勢相加
EAB(T,T0)=[EAB(T)-EAB(T0)]+[-EA(T,T0)+EB(T,T0)]。
(3)
由上述公式(1)~(3)不難看出,熱電偶熱電勢與溫度之間關(guān)系呈明顯非線性。
熱電偶測量溫度時,將溫度數(shù)據(jù)轉(zhuǎn)換成電信號時,存在非線性問題,在一定程度上影響了測溫的精度。為了提高基于熱電偶的測溫控制系統(tǒng)測量精度,在應(yīng)用最小二乘法實現(xiàn)熱電勢和溫度特性的線性處理基礎(chǔ)之上,提出一種基于分段擬合的熱電偶測溫控制方法。
最小二乘法擬合的基本思想是,求擬合曲線y=s(x),使得觀測實驗數(shù)據(jù)(xi,yi)(i=1,2,…,m)與估計點(xi,s(xi))的距離平方和達到最小。
給定觀測數(shù)據(jù)(xi,yi)(i=1,2,…,m),求因變量x與因變量y的函數(shù)關(guān)系:y=s(x,P0,P1,…,Pn),其實質(zhì)是在函數(shù)類s(x)∈span{φ0,φ1,…,φn}上存在唯一的函數(shù)
s(x)=P0φ0(x)+P1φ1(x)+…+Pnφn(x),
(4)
求給定點xi上的誤差δi=s(xi)-yi,(i=1,2,…,m),使得δi(i=1,2,…,m)的平方和最小。這里φ0(x),φ1(x),…,φn(x)∈C[a,b]是線性無關(guān)函數(shù)組,若在[a,b]上給出一組數(shù)據(jù){(xi,yi),i=1,2,…,m},xi∈[a,b]及一組相應(yīng)權(quán)重{ρi>0,i=1,2,…,m},要求s(x)=span{φ0,φ1,…,φn},使得
(5)
式(5)是關(guān)于P0,P1,…,Pn的多元函數(shù),求最小值即是求多元函數(shù)的極值。通過求多元函數(shù)的極值方法[9,10],從而可得到擬合曲線y=s(x)。
在實際測量時,由測得的觀測值EAB(T,T0),來求測量溫度T。xi與E相對應(yīng),yi=s(xi)與T相對應(yīng)。應(yīng)用最小二乘法擬合曲線時,首先要確定EAB(T,T0)的形式,為了進一步提高測量精度,本文選用高階多項式擬合,其形式為
EAB(T,T0)=a0+a1T+a2T2+…+anTn。
(6)
如果為了達到好的擬合精度,需要較高的曲線階數(shù),但這給計算帶來的一定的復(fù)雜性,不利于實時應(yīng)用在實時控制類系統(tǒng)中[9]。
為平衡測量精度和實時計算響應(yīng)速度[10,11],選用二次多項式擬合用于提高實時響應(yīng)速度,其形式為
y=ax2+bx+c,
(7)
式中a、b和c為任意實數(shù),且滿足約束條件
(8)
面對較多數(shù)據(jù)點進行擬合時,只采用單一的多項式擬合,難以取得較好的精度效果。在實施溫度和熱點偶函數(shù)關(guān)系的線性化過程中,根據(jù)擬合精度的要求采用構(gòu)造動態(tài)分段擬合的方法解決這個問題。根據(jù)擬合精度來確定分段位置以便達到最優(yōu)化,只要控制好分段位置便可達到高精度擬合要求,這樣即可簡化擬合公式,有可以提高擬合精度。
由公式(7)可知,a、b和c為滿足式(8)的二階多項式擬合系數(shù),決定著擬合函數(shù)的構(gòu)造。如果采用單一的函數(shù)系數(shù)進行擬合,難以滿足不同測溫區(qū)間的擬合精度。為了提高擬合精度,本文提出對擬合系數(shù)進行動態(tài)優(yōu)選的方法。
設(shè)任意給定測溫攝氏T∈[m,n],測溫相對誤差Δt,要求滿足 |Δt|≤ε,其中m和n為實數(shù),ε>0。根據(jù)觀測數(shù)據(jù),應(yīng)用最小二乘法,求二次多項式擬合系數(shù)a、b和c,將其代入式(7)構(gòu)造擬合函數(shù),求得測試溫度T1,其相對誤差Δt1。若|Δt1|>|Δt|,則稱該組二次多項式擬合系數(shù)a、b和c為測溫區(qū)間[m,n]滿足|Δt|≤ε條件的不可選用擬合系數(shù);否則,稱為測溫區(qū)間[m,n]滿足|Δt|≤ε條件下可選用擬合系數(shù)。
若二次多項式擬合系數(shù)a、b和c,為測溫區(qū)間[m,n]滿足|Δt|≤ε條件下的不可選用擬合系數(shù),則將[m,n]劃分為[m,L]和[L,n]兩個新區(qū)間, 其中M 給定測溫區(qū)間[m,n],測溫相對誤差Δt,存在滿足|Δt|≤ε條件下的可選用擬合系數(shù),根據(jù)歷史觀測數(shù)據(jù),將最小二乘法用匯編語言編程實現(xiàn),從而保證對各個測溫區(qū)間的可選用擬合系數(shù)的高效求取[13]。程序流程圖如圖1所示。 圖1 動態(tài)擬合流程圖 所采用的硬件[12]電路中有809C52單片芯片、74LS373地址鎖存器、74LS138譯碼器、74F04非門、74LS00或非門、HM6264存儲器、8255并行口、ICL7109AD轉(zhuǎn)換器、LM78120CT穩(wěn)壓塊、LM79120CT穩(wěn)壓塊、LM7805穩(wěn)壓塊、HA-OP07H放大器、BC7281鍵盤顯示芯片、74LS164N移位寄存器、ULN2803A反相驅(qū)動器以及一些分立元件。 當(dāng)擬合精度要求較高時,擬合函數(shù)覆蓋的測溫區(qū)間變小,反之,擬合函數(shù)覆蓋的測溫區(qū)間相對變大。擬合程序從0 ℃開始用最小二乘法,求出0~1 ℃間的擬合系數(shù),得出該區(qū)間的擬合表達式,依次求出各點誤差與要求誤差相比。若小于要求誤差,將溫度區(qū)間擴大到0~2 ℃,得出新的擬合表達式,計算個點誤差與要求誤差比較,依次類推。直到溫度區(qū)間中出現(xiàn)某點誤差大于要求誤差,則可確定上一區(qū)間內(nèi)滿足精度要求的擬合表達式。 本實驗用C語言環(huán)境實現(xiàn)計算擬合系數(shù)程序、誤差計算程序和數(shù)據(jù)擬合程序??紤]到工業(yè)現(xiàn)場大多環(huán)境惡劣,所以采用809C52芯片,用MCS-51語言編制了單片機控制的熱電偶測溫程序。實驗的軟件實現(xiàn)模塊[13,14]包括鍵盤輸入程序、發(fā)送字節(jié)程序、接收字節(jié)程序、按鍵處理程序、數(shù)碼顯示程序、取補程序、負數(shù)處理程序、雙字節(jié)二進制數(shù)左移四位程序、滿量程電壓數(shù)程序、字節(jié)處理程序組成,主程序的流程圖如圖2所示。 圖2 主程序流程圖 由于實驗中得到的熱電偶標(biāo)定值不是以度為單位連續(xù)變化的,所以擬合時只是采用了人工分段的方法。熱電偶電壓與溫度的曲線可明顯分為兩段,前段為直線后段為二次函數(shù)曲線,所以實驗中分兩段進行擬合。 為了驗證本文提出的分段擬合測溫方法的有效性,采用809C52芯片,用MCS-51語言將該方法編制成單片機控制的熱電偶測溫控制程序,對0~1 300 ℃的測溫區(qū)間進行模擬實驗[15,16],要求測溫相對誤差小于0.02。 通過程序計算結(jié)果顯示,將該測溫區(qū)分區(qū)間劃分為0~700 ℃和700~1 300 ℃兩個測溫區(qū)間,各區(qū)間滿足測溫相對誤差小于0.02條件的可選擬合系數(shù)如表1所示: 表1 各測溫區(qū)間的擬合系數(shù) 選用表1的各區(qū)間相應(yīng)擬合系數(shù),隨機對0~1 300 ℃的溫度進行模擬測試,結(jié)果表明該測溫方法簡捷高效,并且相對誤差可以控制在1%之內(nèi)。對各個典型溫度的測試結(jié)果統(tǒng)計如表2所示,由表2的統(tǒng)計結(jié)果來看,最大相對誤差為0.99%,該方法可適用于智能儀表和實時控制。 表2 測溫結(jié)果與分析 熱電偶的熱電勢與溫度呈非線性關(guān)系,在很大程度上影響了熱電偶測量的精度。在應(yīng)用最小二乘法實現(xiàn)熱電勢和溫度特性的線性處理基礎(chǔ)之上,通過應(yīng)用對不同測試區(qū)間的擬合系數(shù)進行動態(tài)優(yōu)選,提出一種基于分段擬合的熱電偶測溫控制方法,采用匯編語言在809C52單片機上編程實現(xiàn)。模擬實驗結(jié)果表明,該測溫控制方法簡捷高效,誤差可控制在1%之內(nèi),可適用于智能儀表和實時控制。4 實驗結(jié)果與分析
4.1 實驗所需硬件
4.2 實驗的軟件實現(xiàn)
4.3 實驗結(jié)果與分析
5 結(jié)論語