吳志祥 ,周祥才 ,黃 亮 ,陳 功
(1.常州工學(xué)院 電子信息與電氣工程學(xué)院,常州213002;2.常州工學(xué)院 光電工程學(xué)院,常州213002)
溫度是表征物體冷熱程度的物理量,是工業(yè)生產(chǎn)和科學(xué)實(shí)驗(yàn)中一個(gè)非常重要的參數(shù)。鉑電阻以其性能穩(wěn)定、測(cè)溫范圍寬、易標(biāo)定及互換性好等特點(diǎn),在溫度測(cè)量中得到了廣泛應(yīng)用。國(guó)際溫標(biāo)ITS-90中還規(guī)定,將特殊構(gòu)造的鉑電阻作為-259℃~961.78℃標(biāo)準(zhǔn)溫度計(jì)來(lái)使用。
因鉑電阻的電阻值與溫度之間存在非線性關(guān)系,復(fù)現(xiàn)溫度時(shí)需要進(jìn)行非線性運(yùn)算,即“非線性校正”。非線性運(yùn)算的基礎(chǔ)是分度函數(shù)或分度表[1-3],是高精度測(cè)溫不可缺少的環(huán)節(jié),方法多樣。應(yīng)用牛頓迭代法對(duì)鉑電阻分度函數(shù)求解,二次迭代后即可獲得滿意的精度[4],但迭代運(yùn)算時(shí)間長(zhǎng),占用內(nèi)存多。采用神經(jīng)網(wǎng)絡(luò)法對(duì)0℃~600℃測(cè)溫范圍分六段進(jìn)行3次多項(xiàng)式擬合,誤差小于0.02℃水平[5]。通過(guò)根號(hào)運(yùn)算的解析式由電阻值可求解溫度值[6]。對(duì)稱函數(shù)非線性法[7],在0℃~150℃范圍內(nèi),誤差≤0.02℃。應(yīng)用最小二次法,獲得了48℃~50℃范圍內(nèi),誤差≤0.05℃[8]。以及樣條插值法[9-10]等。采用非平衡電橋非線性校正方法[11],則增加了電路復(fù)雜性。
高精度測(cè)控溫,通常為智能式數(shù)字儀表。其核心單元通常為單字節(jié)8位單片機(jī)。因此,研究鉑電阻與溫度值之間的簡(jiǎn)易直接算法且占用內(nèi)存少,頗有價(jià)值。
Pt10、Pt100及Pt1000三種鉑電阻中,Pt100為最常用溫度復(fù)現(xiàn)元件。
在0℃~850℃范圍內(nèi),鉑電阻與溫度的關(guān)系為

式中:a=3.90802×10-3/℃;b=-5.80195×10-7/℃;R(100℃)/R(0℃)=1.38500。因式(1)表達(dá)的是溫度與電阻值的關(guān)系,所以由電阻值求溫度值是求逆的過(guò)程。
設(shè)溫度上限量程tF對(duì)應(yīng)的電阻值為RF,量程內(nèi)溫度與電阻值為線性化,則非線性誤差為

對(duì)式(2)求導(dǎo),并令為 0:

整理得:

對(duì)應(yīng) 0~650℃、0~850℃溫區(qū),非線性誤差最大溫度值點(diǎn)與電阻值分別為325℃/6.127 Ω與425℃/10.478 Ω,見(jiàn)圖1所示。折合非線性誤差約為27℃。
離散數(shù)據(jù)點(diǎn)(xi,yi)(i=0,1,2,……,m),期望構(gòu)造近似函數(shù)曲線S(x),描述這組數(shù)據(jù)的內(nèi)在規(guī)律。即選取適當(dāng)?shù)暮瘮?shù)類(集合)


圖1 0~650℃、0~850℃非線性誤差分布Fig.1 Non-linear errors distribution diagram within the range of 0~650℃ and 0~850℃

φ0,φ1,φ2,……,φn,是[a,b]上 n+1 個(gè)線性無(wú)關(guān)的連續(xù)函數(shù)。尋求一個(gè)函數(shù)

使 S*(x)與 y=f(x)在上述 m+1 個(gè)點(diǎn)上的偏差(殘差)

滿足

最小二乘法追求“平方差(殘差平方和)”最小。曲線擬合時(shí),按其形態(tài)可選擇復(fù)合函數(shù)、增長(zhǎng)函數(shù)、對(duì)數(shù)函數(shù)、指數(shù)函數(shù)或邏輯函數(shù)等本質(zhì)線性模型進(jìn)行。但在程序編譯時(shí),仍然采用泰勒級(jí)數(shù)等方法展開(kāi)為多項(xiàng)式,故,惟有多項(xiàng)式最適用是程序運(yùn)算。
多項(xiàng)式擬合時(shí),提高多項(xiàng)式次數(shù)能改善擬合效果,但將導(dǎo)致方程病態(tài)。如采用分段擬合處理,可采用移動(dòng)最小二乘法 MLS (moving least square)[13]提高擬合精度。
將式(1)按一定溫度值間隔點(diǎn)繪制t-R曲線,再對(duì)曲線進(jìn)行R-t擬合。為方便程序運(yùn)算,采用按溫區(qū)段進(jìn)行擬合??紤]最大限度地逼近原函數(shù)曲線,或誤差分布伴隨原曲線呈對(duì)稱性,先令權(quán)函數(shù)ω(x)為“1”的定常數(shù)進(jìn)行擬合。然后觀察誤差分布情況,調(diào)整權(quán)函數(shù)中對(duì)應(yīng)節(jié)點(diǎn)的權(quán)重,重新擬合,如此反復(fù),直至誤差分布接近對(duì)稱時(shí)結(jié)束。
多項(xiàng)式可寫(xiě)成乘積—相加的循環(huán)運(yùn)算,占用內(nèi)存小,運(yùn)算速度快。

式中:t(r)為溫度值;r為實(shí)測(cè)鉑電阻值。 一旦測(cè)得了鉑電阻值,便可使用式(6)直接計(jì)算出對(duì)應(yīng)溫度值。
鉑電阻測(cè)溫,通常把0~650℃稱為標(biāo)準(zhǔn)溫區(qū)段,650℃~850℃稱為擴(kuò)展區(qū)段,而0~850℃稱為全局區(qū)段。為此,在本擬合中分三組進(jìn)行擬合計(jì)算。
依據(jù)前述原理,利用數(shù)學(xué)計(jì)算工具軟件Matlab等,可求得多項(xiàng)式(7)各系數(shù),如表1所示。

表1 正溫區(qū)三區(qū)段范圍3次、4次多項(xiàng)式系數(shù)表Tab.1 Cubic polynomial and quartic polynomial graph within three temperature ranges
全局區(qū)段,三次多項(xiàng)式最大絕對(duì)值誤差為0.1567℃,已滿足現(xiàn)場(chǎng)溫控之需要。四次多項(xiàng)式擬合后最大絕對(duì)值誤差為0.0249℃,可確保0.1℃精度的精確測(cè)溫之需。
標(biāo)準(zhǔn)區(qū)段,三次、四次多項(xiàng)式擬合最大絕對(duì)值誤差分別為0.0320℃與0.0024℃。四次多項(xiàng)式擬合可確保0.005℃計(jì)量測(cè)溫要求。
對(duì)于擴(kuò)展區(qū)段,二次、三次多項(xiàng)式擬合最大絕對(duì)值誤差分別為0.0194℃與0.0053℃。
表1顯示,各區(qū)段三次多項(xiàng)式已能滿足絕大多數(shù)工程測(cè)溫精度需要。對(duì)于計(jì)量要求,可采用四次多項(xiàng)式運(yùn)算。表1中擴(kuò)展區(qū)段還顯示,采用最小二乘法擬合時(shí),同樣的階數(shù),區(qū)段范圍越小,精度越高。
為了更清楚地顯示擬合效果,顯示全局區(qū)段及標(biāo)準(zhǔn)區(qū)段的誤差分布情況,分別見(jiàn)圖2及圖3所示。

圖2 0~850℃溫區(qū)三次、四次擬合誤差分布Fig.2 Error distribution of cubic and quartic fitting within the range of 0~850 ℃

圖3 0~650℃溫區(qū)三次、四次擬合誤差分布Fig.3 Error distribution of cubic and quartic fitting within the range of 0~650 ℃
以單片機(jī)或SOC(system on chip)為核心的智能儀器儀表中,現(xiàn)今廣泛采用C語(yǔ)言編程。C語(yǔ)言自身并無(wú)精度標(biāo)準(zhǔn)。實(shí)型變量分為單精度(float型)、雙精度(double 型)及長(zhǎng)雙精度(long double型)3類。其中float型占用內(nèi)存4個(gè)字節(jié),運(yùn)算速度最快。且SOC系統(tǒng)中,考慮內(nèi)存較小的原因,幾乎全部采用float型運(yùn)算。
為了方便起見(jiàn),仍以標(biāo)準(zhǔn)版8051單片機(jī)12 MHz振蕩頻率為例,在Keil平臺(tái)用C語(yǔ)言驗(yàn)算,對(duì)0~650℃的四次多項(xiàng)式擬合,將表1中各系數(shù)代入式(7)得具體算式(8),運(yùn)算結(jié)果與EXCEL運(yùn)算結(jié)果,如表2所示。
t(r)=-246.38931+(2.3723080+(9.0186775×10-4+


表2 C語(yǔ)言與EXCEL計(jì)算比較Tab.2 C language and EXCEL calculation comparison
電 阻 值 為 100.000 Ω、212.019 Ω 及 329.508 Ω時(shí)的程序擬合運(yùn)算時(shí)間,分別為1470MT(Machine Period)、1487MT 和 1488MT。 可見(jiàn)式(7)運(yùn)算的快速性。
表2還顯示了Keli C運(yùn)算的正確性。
這里對(duì)鉑電阻非線性函數(shù)求逆運(yùn)算的常見(jiàn)方法及存在問(wèn)題簡(jiǎn)要總結(jié)后,采用最小二乘法調(diào)整權(quán)函數(shù)之方法,對(duì)鉑電阻正溫區(qū)按3種區(qū)段,進(jìn)行了擬合運(yùn)算,得到了三次、四次多項(xiàng)式系數(shù),并給出了擬合運(yùn)算誤差分布圖。在0~650℃溫區(qū)范圍內(nèi),應(yīng)用四次多項(xiàng)式擬合運(yùn)算,最大誤差僅為±0.003℃。多項(xiàng)式擬合運(yùn)算,算式簡(jiǎn)單明了,占用內(nèi)存小,運(yùn)算速度快,特別適用于采用C語(yǔ)言編程的單片機(jī)或SOC中。C語(yǔ)言采用單精度實(shí)型變量運(yùn)算后的精度與速度,進(jìn)一步證實(shí)多項(xiàng)式擬合的優(yōu)越性。文中給出的多項(xiàng)式系數(shù),可直接用于鉑電阻測(cè)溫需要。多項(xiàng)式擬合方法亦可使用于熱電偶測(cè)溫中。
[1] Bentley,Robin E.Handbook of Temperature Measurement[M].CSIRO,2000.
[2] L Michalski,K Eckersdorf,J Kucharski,J,ea al.Temperature Measurement Second Edition[M].LUDWIG MICHALSKI,Lodska Polytechnic,Poland Published:March 2001.
[3] 李吉林.常用熱電偶熱電阻分度表-ITS-90[M]北京:中國(guó)計(jì)量出版社,2010.
[4] 楊永竹.鉑電阻高精度非線性校正及其在智能儀表中的實(shí)現(xiàn)[J].儀表技術(shù)與傳感器,2000(8):44-46.
[5] 王小華,何怡剛.鉑電阻Pt100特性數(shù)學(xué)模型[J].傳感器技術(shù),2003,22(10):33-34.
[6] 楊平,李志武.常用熱電阻的溫度—阻值變換的解析計(jì)算[J].傳感器技術(shù),2002,21(1):38-41.
[7] 王勇,王曉東.高精度鉑電阻測(cè)溫非線性校正方法[J].測(cè)控技術(shù),2004,23(7):75-76.
[8] 易先軍,文小玲,劉翠梅.基于鉑電阻的溫度高精度測(cè)量研究[J].傳感器與系統(tǒng),2009,28(1):49-51.
[9] 劉少?gòu)?qiáng),黃惟一.基于插值計(jì)算與優(yōu)化的鉑電阻非線性校正方法[J].儀器儀表學(xué)報(bào),2003,24(2):215-217.
[10]姬建偉,李平,宋家友.鉑電阻高精度測(cè)量和非線性校正的研究[J].微型計(jì)算機(jī)信息,2007,23(5):164-165.
[11]任殿慧,周巧娣,章雪挺,等.一種鉑電阻測(cè)溫電路的非線性校正方法[J].電子器件,2010,33(5):603-606.
[12]謝偉松.數(shù)值分析[M]天津:天津大學(xué)出版社,2000.
[13]張淮清,俞集輝.線路電磁場(chǎng)測(cè)量數(shù)據(jù)的移動(dòng)最小二乘擬合處理[J].高壓電技術(shù),2010,36(3):661-665. ■