<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 測試測量 > 設計應用 > 通過(guò)計算分度函數及反函數實(shí)現熱電偶高精度測溫

通過(guò)計算分度函數及反函數實(shí)現熱電偶高精度測溫

作者:王昌世(南昌溫度測控實(shí)驗室,南昌 330002) 時(shí)間:2021-03-31 來(lái)源:電子產(chǎn)品世界 收藏
編者按:提高測控精度是對溫控器的一個(gè)永恒要求。為此,要不斷地在設計中引入新技術(shù)。本文論述通過(guò)用嵌套乘法計算熱電偶的分度函數(溫度到電壓)及反函數(電壓到溫度)多項來(lái)進(jìn)行溫度補償和測量。此法比之常規的查分度表或在表中做線(xiàn)性插值的方法,精度又有提高,可達0.01℃。ARM Cortex-3結構的高性能32位微處理器STM32F103則能保證很好地完成這種計算(保持14位有效數字)。重點(diǎn)是講述此測溫方法在STM32F103上編程實(shí)現,包括算法。

作者簡(jiǎn)介:王昌世(1957-),男,碩士學(xué)歷,高級自動(dòng)化工程師,主要研究方向為溫度測量與控制,E-mail:wcs_n3@163.com

本文引用地址:http://dyxdggzs.com/article/202103/424095.htm

0   引言

常規的(簡(jiǎn)稱(chēng)TC)測溫方法是由電壓直接查分度表(電壓- 溫度表)(精度最低)或在表中進(jìn)行線(xiàn)性插值(要高一些)得到溫度值。前者分辨率不高于1 ℃,此法可用在精度要求不高的場(chǎng)合;后者可把分辨率提高一個(gè)數量級或更多,且線(xiàn)性插值的密度越高,測溫精度也越高,但同時(shí)程序量加大很多。的國家標準[1] 是標準[2] 的替代,其中[1] 首次提到函數多項式計算的。該算法的提出,有較大實(shí)際意義,它為日后TC 的普及,提供了一種簡(jiǎn)便實(shí)用的方法。

1   熱電偶的分度函數與反函數多項[1]

1.1 熱電偶的分度函數(簡(jiǎn)稱(chēng)函數)多項[1]

1617178372707936.png

特別注意,唯K 型熱電偶特殊,當t90 在0~1 300 ℃時(shí),要在式(1)之上增加了一項(稱(chēng)為指數項),變成:

1617178431388614.png

式(1)、(2)中E 是電動(dòng)勢(簡(jiǎn)稱(chēng)電壓),單位是微伏(μV);t90 是ITS90 的溫度,單位是攝氏度(℃);ai 是多項式第i 項系數;c c 0 1 , 是常數[1];n 是多項式階數。ai 和n 的值根據TC 的類(lèi)型和溫度的范圍確定。式(1)、(2)反映的就是熱電偶基本原理- 熱電效應(或塞貝克效應)。常見(jiàn)的分度表就是由這個(gè)函數得到的。

1.2 熱電偶的反函數多項[1]

image.png

式中E、t90 和n 的含義同上。di 是多項式第i 項系數;di 和n 的值根據TC 的類(lèi)型和溫度的范圍確定。

1.3 用計算式(1)

將式(1) 展開(kāi),有

image.png

做恒等變形有:

1617178638763375.png

式(4) 就是函數的的算式。同理可得反函數的嵌套乘法計算法:

1617178702826241.png

嵌套乘法能有效避免直接計算多項式帶來(lái)的舍入誤差[1]。

2   TC流程

如圖1 所示。

1617178796365128.png

2.1

補償方法可參見(jiàn)文獻[3]。

1)選擇測溫芯片

對于,選用冷端[1](也稱(chēng)參比)溫度測量芯片也是一個(gè)關(guān)鍵,要用高于你要求的精度的芯片,如可用Si705[2], 分辨率可達0.1 ℃。也可用精度更高的TMP275 (最高可達0.065 ℃)[4]和ADT7410 (0.007 8 ℃ )[5]。

2)要有流程中的第2、4 步,是因為熱電偶的函數關(guān)系式(1)是非線(xiàn)性的,所以不能簡(jiǎn)單地取消2、4 步,而直接把Tcj 加到最后一步的t 中, 完成補償[3](這樣也可以,但精度降低)。

2.2 TC電壓測量

這個(gè)測量也必須是高精度的:①選擇允差最高級別的熱電偶;②選擇分辨率高的ADC,可選LTC2486(17 位)。

3   編程實(shí)現

3.1編程環(huán)境

在IAR 7.20.5.624 版下進(jìn)行,用最新在2011 年發(fā)布的3.5.0 版庫函數,語(yǔ)言為C。

熱電偶函數或反函數的多項式系數大多都很小,如K 型, d9 =-1.0527551-35。[1] 為適應這種情況,計算多項式時(shí),必須采用C 中最高精度的數據類(lèi)型double(8個(gè)字節表示一個(gè)數)。在 中, 當用double類(lèi)型且為科學(xué)計數法表示一個(gè)數時(shí), 會(huì )如表1 所示。

從表中可以看到 當數字≥ 0.9 時(shí),可以保證15 位有效數字的精度,在15 位后,開(kāi)始產(chǎn)生舍入誤差;當數字<0.9 時(shí),可以保證14 位有效數字的精度。這對于0.01 ℃分辨率的要求已足夠。對于8 位的MCU,在進(jìn)行此類(lèi)雙精度運算時(shí),則要注意能否保證精度要求。

3.2 編程

編程時(shí),要同時(shí)熟悉文獻[1],它是編程的對象。下面以E 型熱電偶為例。

3.2.1 函數式(1)的編程。

1)函數名double TC_TemperatureToVoltage (double t).入口參數為溫度t(℃ ); 出口參數是電壓E(mV)。

2)算法

①設置15 個(gè)局部變量,其含義同上:double

a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,t,E

②依據t 的不同范圍(2 個(gè):-270~0 ℃和0~1 000 ℃)分別設置不同的系數值( a1 ~ a13 或a1 ~ a10 )和階數(n=13 或n=10)[1]

③讓E=0;

④開(kāi)始式(1) 的嵌套乘法計算,先計算起始項:

E=a13+ E或a8+E ;

E=t×E;

⑤再計算

E=a12+Ea7+E;

E = t × E ;

……

⑥直到

E = a × E 1 ;

E = t × E ;

⑦將微伏的E 轉成毫伏;

⑧返回E。

結束。

特別注意,對K 型熱電偶,不要忘記加上指數項

c c t 0 1 90 ×exp[ ×( ?126.968 6)2 ]。

1617179261889955.png

3)程序

編程不復雜,略。

3.2.2 反函數式(3)編程。

函數名 double TC_VoltageToTemperature

(double v);

算法和程序略,類(lèi)似計算函數式(1)。

3.2.3 熱電偶高精度測溫編程。

1) 函數名float TC_MeasurementTemperature(void)

2)算法

image.png

①用測溫芯片讀出冷端溫度(℃)[3];

②調用函數double TC_TemperatureToVoltage(double t),由Tcj 得到電壓Ecj :Ecj = TC_TemperatureToVoltage ( Tcj );

③通過(guò)的ADC 電路,讀出熱電偶的輸出電壓值Etc ;

④合并Ecj到Etc,即讓Etc=Ecj+Ecj;

⑤調用函數double TC_VoltageToTemperature (doublev),由得到測量端溫度

t = TC_VoltageToTemperature ( Etc );

結束。

3)程序

略。

image.png

圖2 能分辨0.01℃的E型熱電偶

4   結論

直接用熱電偶來(lái)做測溫計算,從源頭上解決了TC 的函數關(guān)系的非線(xiàn)性、查分度表或在表中做線(xiàn)性插值給測溫帶來(lái)的誤差。以E 型熱電偶為例,在-200~1 000 ℃的范圍內,最大分辨率可達0.01 ℃ ,最小也可達0.022[1] 使用該方法的高精度測溫記錄如圖2 和表2 所示,數據與理論分析基本一致。圖2 和表2測量的為室內環(huán)境溫度。當然,這樣的結果要求相關(guān)的測溫硬件電路也必須是高精度的。測試說(shuō)明:測試時(shí),為保持環(huán)境溫度相對穩定, 要減少空氣流動(dòng),減少熱源。所以關(guān)閉門(mén)窗( 只留小縫隙) 和電腦等。并在溫度穩定后(約10~15 min),開(kāi)始測量。

5   結語(yǔ)

近2 年本實(shí)驗室對高精度測溫做了一些技術(shù)性探索總結且已成文。下一個(gè)目標,將是高精度控溫,向0.5%FS 乃至0.1%FS 控制精度前行。

最后,要特別感謝國標《GB ∕ T 16839.1-2018 熱電偶第1 部分:電動(dòng)勢規范和允差》的相關(guān)單位和個(gè)人。此國標有最重要的指導作用,是對我國的熱電偶測溫事業(yè)的重大貢獻。

參考文獻:

[1] 中國國家標準管理委員會(huì ),GB∕T 16839.1-2018 熱電偶第1部分:電動(dòng)勢規范和允差[S],北京,中國標準出版社.2018:3,2,64,5,67,1,67.

[2] 中國國家標準管理委員會(huì ),GB∕T 16839.1-1997 熱電偶第1部分:分度表[S],北京,中國標準出版社.1997.

[3] 王昌世.高精度溫度芯片Si7051在熱電偶補償中的應用[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.

(本文來(lái)源于《電子產(chǎn)品世界》雜志2021年2月期)



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>