通過計(jì)算分度函數(shù)及反函數(shù)實(shí)現(xiàn)熱電偶高精度測溫
作者簡介:王昌世(1957-),男,碩士學(xué)歷,高級(jí)自動(dòng)化工程師,主要研究方向?yàn)闇囟葴y量與控制,E-mail:wcs_n3@163.com
0 引言
常規(guī)的熱電偶(簡稱TC)測溫方法是由電壓直接查分度表(電壓- 溫度表)(精度最低)或在表中進(jìn)行線性插值(要高一些)得到溫度值。前者分辨率不高于1 ℃,此法可用在精度要求不高的場合;后者可把分辨率提高一個(gè)數(shù)量級(jí)或更多,且線性插值的密度越高,測溫精度也越高,但同時(shí)程序量加大很多。熱電偶的國家標(biāo)準(zhǔn)[1] 是標(biāo)準(zhǔn)[2] 的替代,其中[1] 首次提到熱電偶函數(shù)多項(xiàng)式計(jì)算的嵌套乘法。該算法的提出,有較大實(shí)際意義,它為日后TC 高精度測溫的普及,提供了一種簡便實(shí)用的方法。
1 熱電偶的分度函數(shù)與反函數(shù)多項(xiàng)[1]
1.1 熱電偶的分度函數(shù)(簡稱函數(shù))多項(xiàng)[1]
特別注意,唯K 型熱電偶特殊,當(dāng)t90 在0~1 300 ℃時(shí),要在式(1)之上增加了一項(xiàng)(稱為指數(shù)項(xiàng)),變成:
式(1)、(2)中E 是電動(dòng)勢(簡稱電壓),單位是微伏(μV);t90 是ITS90 的溫度,單位是攝氏度(℃);ai 是多項(xiàng)式第i 項(xiàng)系數(shù);c c 0 1 , 是常數(shù)[1];n 是多項(xiàng)式階數(shù)。ai 和n 的值根據(jù)TC 的類型和溫度的范圍確定。式(1)、(2)反映的就是熱電偶基本原理- 熱電效應(yīng)(或塞貝克效應(yīng))。常見的分度表就是由這個(gè)函數(shù)得到的。
1.2 熱電偶的反函數(shù)多項(xiàng)[1]
式中E、t90 和n 的含義同上。di 是多項(xiàng)式第i 項(xiàng)系數(shù);di 和n 的值根據(jù)TC 的類型和溫度的范圍確定。
1.3 用嵌套乘法計(jì)算式(1)
將式(1) 展開,有
做恒等變形有:
式(4) 就是函數(shù)的嵌套乘法的算式。同理可得反函數(shù)的嵌套乘法計(jì)算法:
嵌套乘法能有效避免直接計(jì)算多項(xiàng)式帶來的舍入誤差[1]。
2 TC高精度測溫流程
如圖1 所示。
2.1 冷端補(bǔ)償
補(bǔ)償方法可參見文獻(xiàn)[3]。
1)選擇測溫芯片
對于高精度測溫,選用冷端[1](也稱參比)溫度測量芯片也是一個(gè)關(guān)鍵,要用高于你要求的精度的芯片,如可用Si705[2], 分辨率可達(dá)0.1 ℃。也可用精度更高的TMP275 (最高可達(dá)0.065 ℃)[4]和ADT7410 (0.007 8 ℃ )[5]。
2)要有流程中的第2、4 步,是因?yàn)闊犭娕嫉暮瘮?shù)關(guān)系式(1)是非線性的,所以不能簡單地取消2、4 步,而直接把Tcj 加到最后一步的t 中, 完成補(bǔ)償[3](這樣也可以,但精度降低)。
2.2 TC電壓測量
這個(gè)測量也必須是高精度的:①選擇允差最高級(jí)別的熱電偶;②選擇分辨率高的ADC,可選LTC2486(17 位)。
3 編程實(shí)現(xiàn)
3.1編程環(huán)境
在IAR 7.20.5.624 版下進(jìn)行,用最新在2011 年發(fā)布的3.5.0 版庫函數(shù),語言為C。
熱電偶函數(shù)或反函數(shù)的多項(xiàng)式系數(shù)大多都很小,如K 型, d9 =-1.0527551-35。[1] 為適應(yīng)這種情況,計(jì)算多項(xiàng)式時(shí),必須采用C 中最高精度的數(shù)據(jù)類型double(8個(gè)字節(jié)表示一個(gè)數(shù))。在STM32F103 中, 當(dāng)用double類型且為科學(xué)計(jì)數(shù)法表示一個(gè)數(shù)時(shí), 會(huì)如表1 所示。
從表中可以看到STM32F103 當(dāng)數(shù)字≥ 0.9 時(shí),可以保證15 位有效數(shù)字的精度,在15 位后,開始產(chǎn)生舍入誤差;當(dāng)數(shù)字<0.9 時(shí),可以保證14 位有效數(shù)字的精度。這對于0.01 ℃分辨率的要求已足夠。對于8 位的MCU,在進(jìn)行此類雙精度運(yùn)算時(shí),則要注意能否保證精度要求。
3.2 編程
編程時(shí),要同時(shí)熟悉文獻(xiàn)[1],它是編程的對象。下面以E 型熱電偶為例。
3.2.1 函數(shù)式(1)的編程。
1)函數(shù)名double TC_TemperatureToVoltage (double t).入口參數(shù)為溫度t(℃ ); 出口參數(shù)是電壓E(mV)。
2)算法
①設(shè)置15 個(gè)局部變量,其含義同上:double
a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,t,E
②依據(jù)t 的不同范圍(2 個(gè):-270~0 ℃和0~1 000 ℃)分別設(shè)置不同的系數(shù)值( a1 ~ a13 或a1 ~ a10 )和階數(shù)(n=13 或n=10)[1]
③讓E=0;
④開始式(1) 的嵌套乘法計(jì)算,先計(jì)算起始項(xiàng):
E=a13+ E或a8+E ;
E=t×E;
⑤再計(jì)算
E=a12+E或a7+E;
E = t × E ;
……
⑥直到
E = a × E 1 ;
E = t × E ;
⑦將微伏的E 轉(zhuǎn)成毫伏;
⑧返回E。
結(jié)束。
特別注意,對K 型熱電偶,不要忘記加上指數(shù)項(xiàng)
c c t 0 1 90 ×exp[ ×( ?126.968 6)2 ]。
3)程序
編程不復(fù)雜,略。
3.2.2 反函數(shù)式(3)編程。
函數(shù)名 double TC_VoltageToTemperature
(double v);
算法和程序略,類似計(jì)算函數(shù)式(1)。
3.2.3 熱電偶高精度測溫編程。
1) 函數(shù)名float TC_MeasurementTemperature(void)
2)算法
①用測溫芯片讀出冷端溫度(℃)[3];
②調(diào)用函數(shù)double TC_TemperatureToVoltage(double t),由Tcj 得到冷端補(bǔ)償電壓Ecj :Ecj = TC_TemperatureToVoltage ( Tcj );
③通過溫控器的ADC 電路,讀出熱電偶的輸出電壓值Etc ;
④合并Ecj到Etc,即讓Etc=Ecj+Ecj;
⑤調(diào)用函數(shù)double TC_VoltageToTemperature (doublev),由得到測量端溫度
t = TC_VoltageToTemperature ( Etc );
結(jié)束。
3)程序
略。
圖2 能分辨0.01℃的E型熱電偶溫控器
4 結(jié)論
直接用熱電偶函數(shù)及反函數(shù)來做測溫計(jì)算,從源頭上解決了TC 的函數(shù)關(guān)系的非線性、查分度表或在表中做線性插值給測溫帶來的誤差。以E 型熱電偶為例,在-200~1 000 ℃的范圍內(nèi),最大分辨率可達(dá)0.01 ℃ ,最小也可達(dá)0.022[1] 使用該方法的高精度測溫記錄如圖2 和表2 所示,數(shù)據(jù)與理論分析基本一致。圖2 和表2測量的為室內(nèi)環(huán)境溫度。當(dāng)然,這樣的結(jié)果要求相關(guān)的測溫硬件電路也必須是高精度的。測試說明:測試時(shí),為保持環(huán)境溫度相對穩(wěn)定, 要減少空氣流動(dòng),減少熱源。所以關(guān)閉門窗( 只留小縫隙) 和電腦等。并在溫度穩(wěn)定后(約10~15 min),開始測量。
5 結(jié)語
近2 年本實(shí)驗(yàn)室對溫控器高精度測溫做了一些技術(shù)性探索總結(jié)且已成文。下一個(gè)目標(biāo),將是高精度控溫,向0.5%FS 乃至0.1%FS 控制精度前行。
最后,要特別感謝國標(biāo)《GB ∕ T 16839.1-2018 熱電偶第1 部分:電動(dòng)勢規(guī)范和允差》的相關(guān)單位和個(gè)人。此國標(biāo)有最重要的指導(dǎo)作用,是對我國的熱電偶測溫事業(yè)的重大貢獻(xiàn)。
參考文獻(xiàn):
[1] 中國國家標(biāo)準(zhǔn)管理委員會(huì),GB∕T 16839.1-2018 熱電偶第1部分:電動(dòng)勢規(guī)范和允差[S],北京,中國標(biāo)準(zhǔn)出版社.2018:3,2,64,5,67,1,67.
[2] 中國國家標(biāo)準(zhǔn)管理委員會(huì),GB∕T 16839.1-1997 熱電偶第1部分:分度表[S],北京,中國標(biāo)準(zhǔn)出版社.1997.
[3] 王昌世.高精度溫度芯片Si7051在熱電偶補(bǔ)償中的應(yīng)用[J].電子產(chǎn)品世界,2020,27(1):69-73。
[4] TMP275±0.5°C Temperature Sensor With I 2C and SMBus Interface in Industry Standard LM75 Form Factor and Pinout[M/OL].Texsas Instrsments,2014-11:1[2019-10-8]. https://
www.ti.com/lit/ds/sbos363f/sbos363f.pdf?ts=1600335313639&ref_url=https%253A%252F%252F
www.google.com%252F.
[5] ±0.5°C Accurate, 16-Bit Digital I 2 C Temperature Sensor[M/OL].Analog Device Incorporation,2014-11:1[2019-10-8].https://www.anlog.com/media/en/technical-documentation/data-sheets/ADT7410.pdf.
(本文來源于《電子產(chǎn)品世界》雜志2021年2月期)
評(píng)論