摘?要:選用高精度測溫芯片(Si7051)對熱電偶做冷端補償;為做溫度?電壓的轉換,在熱電偶分度表中做高密度雙向線性插值;用三線Pt100做動肩構成不平衡電阻橋來檢測熱電阻值;通過解析法求解Pt100的一元四次熱電阻方程得到溫度;使用高精度Σ?—且有易驅動功能的模數轉換器(ADC);選用ARM Cortex-M3結構高性能32位微處理器STM32F103。綜合這些技術,能使溫控器測溫分辨率達到0.001 C °。對以上相關內容的誤差分析以及在STM32F103上的編程實現是本文論述的重點。
關鍵詞:溫控器;高精度測溫;熱電偶雙向線性插值;冷端補償;三線Pt100電阻電橋;誤差分析;一元四次方熱電阻方程求解;STM32F103;LTC2486;算法與編程
0 引言

1 高精度測溫電路設計
1.1 電路結構
圖1所示是比較常規的設計,相對簡單。沒有了專門的信號放大、通道切換電路,濾波電路也是最簡單的一階無源RC。
1.2 溫度傳感器
通常,溫控器要求配接2大類傳感器,熱電偶(TC)和熱電阻(RTD)。





1.4 ADC的選擇和使用
選用LTC2486(簡稱2486),主要是以下4個原因[1]。
①綜合分辨率高,誤差小。名義上是16位,實則17位(包含符號位)的分辨率。理想情況下,可分辨1μV 電壓。
②有2個差分通道,正好滿足一般溫控器對熱電偶和Pt100的輸入需求,不需外加切換電路(會引入噪聲誤差)。

3)與STM32F103(簡稱F103)的接口
通過四線SPI與F103接口。
①雙向方式,F103為主,2486為從;
②F103用的是3.3V 工作電壓,而2486用5V ,中間要有電平轉換。為此,F103的出信號(MOSI、SCK、NSS)應設置為開路(OD),上拉電阻為(3.3~ 5 1)k. ?;而2486的輸出信號SDO則應通過電阻分壓到3.3 V后連到F103的MISO。如圖2所示。
2 編程
在IAR 7.20.5.624版下進行。用最新在2011年發布的3.5.0版[9]庫函數。
2.1 F103與LT C2486接口編程
2.1.1 SPI初始化函數
1)程序
void SPI2_Init(void)
{
參照庫函數編程。只是要注意設置PB13,PB15線為復用漏極開路輸出。此方式是為了在F103與2486間進行電平轉換。

1)算法
讀取數據前,先要對2486的工作方式進行設置(寫)。不同要求,設置也不同。這里僅是一例。注意缺省值的使用。
①通常選擇2486的數據轉換速率為6次/s。也可選12次/s,但這會使精度降低[1],一般不選用。
②選擇轉換通道。在4個單端或2個差分通道作選擇。
③選擇GAIN值。根據1.4.1所述,進行不同選擇。
在此之后,就可以讀取數據了。
④2486在轉換結束時會在SDO引腳輸出1 bit低電平,它可作為轉換結束標志(即EOC信號)來判斷,一般用查詢方式。
⑤2486每次轉換后會輸出3個8位字節數據。每個輸出字節與1個寫入字節數據同步進行。所以,正確的時序是:即先寫1個字節,之后緊跟著讀1個字節;再寫1個字節,之后再讀1個字節,反復進行。如果要讀的字節數多于有效的寫字節,用寫0數據代替(空寫)。




說明:也可以用其他方法求解此方程,如數值計算中牛頓或二分迭代法[12]。但此法更易上手。
2)程序(略)
3 溫控器測溫精度分析及數據記錄
3.1 精度分析
測量精度通常會小于分辨率,也就是說高分辨率是高精度的基礎。
3.1.1 熱電偶

3.2 數據記錄
圖4顯示的是STC溫控器測試的環境溫度時所得,值為20.693 C °。表1、表2則是該溫控器連續測試的數據記錄,一個用Pt100,另一個是E型熱電偶。這些值有時能保持~10 ~13 s,一般~4 ~ 5 s,表明該溫控器的Pt100能分辨0.001 C °,熱電偶能分辨0.014 C °。實現了高精度。


測試說明:測試時,為保持環境溫度相對穩定,要減少空氣流動,減少熱源。并在溫度穩定后(約10 ~15 min)開始測量。
4 結束語
溫控器的高精度溫度測控任重道遠,探索包括四線Pt100使用在內的更新的測溫技術來提高測溫精度將是本實驗室的下一個前行目標。
參考文獻:
[1] LTC2486-16-Bit 2-/4-Channel ΔS ADC with PGA and Easy Drive Input Current Cancellation[M/OL].ADI,(2014-11:1,5,17)[2019-10-8].https://www.analog.com/media/en/ technical-documentation/Data-sheets/2486fe.pdf.
[2] LTC2480-16-Bit ?Σ ADC with Easy Drive Input Current Cancellation[M/OL].ADI,(2014-6:1)[2019-3-12].https:// www.analog.com/media/en/technical-documentation/datasheets/2480fe.pdf.
[3] A Basic Guide to Thermocouple Measurements[M/ OL].TI,(2014-11:4,6,9)[2019-10-8].https://www.ti.com/ lit/an/sbaa274/sbaa274.pdf?ts=1593588456562&ref_ url=https%253A%252F%252Fcn.Bing.com%252F.
[4] 中國國家標準管理委員會.GB∕T 16839.1-2018 熱電偶第1部分:電動勢規范和允差[S],北京:中國標準出版社.2018:1-67.
[5]中國國家標準管理委員會.GB/T 30121-2013 工業鉑熱電阻及鉑感溫元件[S].北京:中國標準出版社,2013:3-7。
[6]王昌世.高精度溫度芯片Si7051在熱電偶補償中的應用[J].電子產品世界,2020(1):69-73.
[7]王昌世.通過計算分度函數及反函數實現熱電偶高精度測溫[J].電子產品世界,2021(2):69-71.
[8] MOGHIMI R.Low noise signal conditioning for sensorbased circuits[M/OL].ADI,(2010-9:P5)[2020-6-11].https:// www.analog.com/media/en/technical-docum entation/ technical-articles/MS-2066.pdf
[9] STM32F10x_StdPeriph_Lib_V3.5.0[CP/OL],V3.5.0,STM icroelectronics,(2011)[2013].https://www.st.com/content/st_com/en/products/ embedded-software/mcu-mpu-embedded-software/ stm32-embedded-software/stm32-standard-peripherallibraries/stsw-stm32054.html
[10] 甘英俊,周宏平.基于三線制的高精度熱電阻測量電路設計[J],電子設計工程,2010(12):31-33.
[11] 一元四次方程的求根公式[EB/OL].[2020-6-29].http:// www.360doc.com/content/15/0209/02/15341227_ 447355569.shtml1.
[12] 張莉,姜建國.牛頓法在Pt100鉑熱電阻溫度計算中的應用特性分析[J].現代電子技術,2007(6):146-148.
[13] RM0008[M/OL].Rev 20.STMicroelectroni cs,(2018-12:159-196,699-751)[2021-2-9] https://www. st.com/resource/en/reference_manual/cd00171190-stm32f101xx-stm32f102xx-stm32f103xx-stm32f105xxand-stm32f107xx-advanced-arm-based-32-bit-mcusstmicroelectronics.pdf.