高精度溫度晶片Si7051在熱電偶補償中的應用

2020-12-18 電子產品世界

  王昌世(南昌溫度測控實驗室,南昌 330002)

本文引用地址:http://www.eepw.com.cn/article/201912/408683.htm

  摘 要:熱電偶(TC)測溫是溫控儀必備的功能。TC測溫需進行冷端溫度補償,補償的精度決定著TC的測溫精度。本文要介紹的就是用Si7051所測量的TC冷端溫度,來對TC進行溫度補償,使TC的測溫精度能達到或接近0.1度℃。重點是講述用STM32F103CBT6單片機從I 2 C總線讀取Si7051晶片中的溫度編碼值,即編程。涉及TC補償原理、Si7051與STM32單片機的I 2 C接口電路與和程序流程

  關鍵詞:高精度熱電偶補償;Si7051;STM32F103;I 2 C總線;程序流程

  Si7051是一款較新的、性價比較高的器件,雖批量價僅為10 元/片,可經試用,其對TC補償的作用卻很大,很有效。但目前,在國內未見相關應用介紹(經網上檢索)。想必,此文的創新應用,會助力國內TC測溫技術的進步。

  1 補償原理

  把TC的兩端分為冷端(接入線路的那一端)和熱端(測溫對象所在端)。令TC冷端溫度為 Ct ,TC的輸出溫為 Tt ,則TC的熱端溫度(即測量溫度)Mt Ct Tt = + 。補償的關鍵在於冷端和Si7051感溫儘可能做到同溫。假如不完全相同,則應注意這個溫差校正。

  此前,我們用LM75A溫度晶片測量 Ct 。但由於它的精度較低(在-20 ℃~+100 ℃全量程範圍,最大誤差達2 ℃,解析度為0.5 ℃(即,其小數位只能是0或0.5)),使得Mt值不僅包含同樣的誤差,而且時常有0.5℃的跳變。這使得溫控儀達到0.1℃的控溫精度變得不可能。

  2 Si7051介紹 [2]

  此晶片由美國Silicon Labs(即芯科科技)公司生產,已先後發布8個版本,最新的1.15版,在2018-09發布。

  2.1 主要性能特徵

  1)高精度。測溫精度分3段:

  ±0.1 ℃: +35.8 ℃~41 ℃(人體溫度範圍);

  ±0.13 ℃: 20.0 ℃~70.0 ℃(準環境溫度範圍);

  ±0.25 ℃: –40 ℃~+125 ℃(全量程)。

  第2段是溫控儀(TC冷端)所在環境最常見的溫度範圍。

  2)體積小,引腳少;

  3 mm × 3 mm × 0.8 mm,DFN(Dual flat No-lead,即雙平面,無引線)封裝。6個引腳,見圖1。它的小的體積使其在用做溫度補償用時,易於在電路板(即PCB)上和TC的冷端一起放置;而在做人體(或其他對象)溫度計時,整體的體積可以很小。

  3)接口電路的外圍元件少,接口簡單;

  僅有1個去偶電容和2個上拉電阻。雖有6個引腳,但對外連線只有4根。DNC引腳可懸空或連到VDD腳。見電路圖2。

  4)背面有感溫金屬平面;

  大小為1.5 mm × 2.4 mm,見圖3。這個面能使它很好地感受TC冷端的溫度,達到與之同溫的目的。

  3 電路設計

  單片機選用STM32F103CBT6,它自帶有I 2 C總線,這使得相關接口(包括編程)相對簡單。見圖2。原理圖雖不複雜,但作為TC 補償元件,要做到它和TC冷端準確同溫,卻並非易事,我們也是經過多次改進,才達到的。具體做法是:①單獨做一塊小的PCB板(雙面,11 mmx7 mm,見圖3),通過插針與主板相連。在小板上,Si7051背面的感溫面下要開孔, 使感溫面能和冷端相對、相通。孔的大小稍小於感溫面。注意看圖3。②此小板和和TC冷端並立在一起放置,並且要遠離板上的其他熱,見圖4。圖中,3線(棕、紅和黑3色)插頭是TC的冷端線,左邊立著的就是Si7051小板。③小板和TC冷端附近約30 mmx7 mm的PCB板區域內不敷銅,以免多傳熱。

  4 編程

  編程本文的要點。

  4.1 理解圖4的時序

  文獻[2]給出了讀取Si7051晶片的溫度編碼的I²C時序圖(經英譯中)。此時序圖從左到右,分成了19個段(數字所示)。

  此圖所涉及的相關技術術語參見文獻[3-7]。幾點說明如下:

  1)圖中的「主」是指主設備;從是指從設備(下同)。

  2)第2段是「從地址」,指的是Si7051的從地址0x40;

  3)第3段是「主將要寫操作」,指的是,在I²C總線上,出現Si7051的從地址0x40後,主設備是要發送一個字節數據(第5段的0xf3)。注意這一段是一個位(bit)段且為0值,它附在第2段的0x40後面(100000B+0B= 10000000B)形成最終的0x80寫地址字節(與0x81的讀地址(如,第8、9段組合)對應。這一點很重要,編程時不要誤寫為0x40。

  4)第9段是「主將要讀操作」,指的是.在I²C 總線上,出現Si7051的從地址0x40後,主設備是要從設備裡讀取數據。這也是一個位段,但值為1,它附在第8段的0x40後面(100 0000B+1B=10000001B)形成最終的0x81讀地址字節。

  5)第10段是「非應答(即NACK)」。對Si7051來說,這是一個特殊的位信號,它會一直持續高電平,直到片內的A/D轉換結束。從這個信號發出算起,Si7051開始一次測溫的A/D轉換過程,具體轉換時間見參考文獻[2]的第4頁的表2。 本程序用12ms延時來處理。程序在12毫秒後,繼續到第11段。

  6)完成這個時序的全部操作後,得到的緊緊是2個字節(14位,最低2位不用)編碼,而不是溫度的實數值。實數溫度(℃)= (175.72×溫度編碼 / 66636)-46.84(式1) [2]

  4.2 流程圖

  用IAR7.2.05工具及ST(即意法半導體)公司在2011年發布的3.5.0的庫函數(一直未變)。該庫函數包含了32個I²C相關函數和諸多變量定義,可選擇使用,本程序用了其中的10個函數。

  圖6是依據圖5的時序來編制的。有3點須說明:*相關函數註解詳見3.2.1。**限於篇幅,只用了一個菱形判斷圖作為示例,其他判斷處未用,但包含的流程相同,即如果不成功,則反覆調用判斷函數,直到成功。***延時程序一般是自編的,不調庫函數,以便準確控制延時時間。

  4.2.1 圖6相關庫函數說明

  這裡的序號即是圖6中的中函數編號一致。

  1) void I2C_GenerateSTART(I2C_TypeDef*I2Cx, FunctionalState NewState);

  2)ErrorStatus I2C_CheckEvent(I2C_TypeDef*I2Cx, uint32_t I2C_EVENT);

  3)void I2C_Send7bitAddress(I2C_TypeDef*I2Cx, uint8_t Address, uint8_t I2C_Direction);

  4)void I2C_SendData(I2C_TypeDef* I2Cx,uint8_t Data);

  5)uint8_t I2C_ReceiveData(I2C_TypeDef*I2Cx);

  6)void I2C_GenerateSTOP(I2C_TypeDef* I2Cx,FunctionalState NewState);

  7)void I2C_AcknowledgeConfig(I2C_TypeDef*I2Cx, FunctionalState NewState);

  8)I2C_Init(I2C_TypeDef* I2Cx, I2C_InitTypeDef*I2C_InitStruct);

  9 ) I 2 C _ C m d ( I 2 C _ T y p e D e f * I 2 C x ,FunctionalState NewState);

  10)void I2C_DeInit(I2C_TypeDef* I2Cx);

  另外,圖中的函數I2C_Configuration()通常是根據需要自編的,不是庫函數。

  (1) 主程序Void Read_Si7051_Temperature(void);

  (2) 子程序 讀Si7051溫度編碼並計算攝氏溫度u8 I2C_Read(I2C_TypeDef *I2Cx,u8 I2C_Addr,u8 data,u8 *buf,u16 num)

   

  5 結論

  Si7051裝在線路板上,精度高、運行穩。下面是一組實測數據(表3):

  測試條件說明:①地點:辦公室,對環境溫度測試;②工具:實驗室開發的SCTC溫控儀;RKC CH402圖6. 讀Si7051溫度編碼的程序流程圖(1) 主程序Void Read_Si7051_Temperature(void);(2) 子程序 讀Si7051溫度編碼並計算攝氏溫度u8 I2C_Read(I2C_TypeDef *I2Cx,u8 I2C_Addr,u8 data,u8 *buf,u16 num)

  日本產溫控儀,其上無小數顯示(對熱電偶)。測試分析:儀器每秒對Si7051和熱電偶同步採樣一次,數據記錄間隔是2 min。在18 min內,Si7051測溫僅變化31.53-31.47=0.06(℃),多數時間,只在小數點後第2位上有變。表明其精準、穩定。SCTC測溫也僅變化30.53-30.20=0.33(℃)。這裡,Si7051的測量的溫度要高於SCTC儀及RKC儀的測量溫度是因為PCB板上的氣溫要高於一般環境溫度。

  以後還將一如既往地關注、實施溫度測控領域的新元件的應用,並把相關的研發成果及時在專業刊物上發表,為我國自動化儀表的發展出一分力。

  參考文獻

  [1] Measuring Temperature Accurately with Semicondutor [EB/OL], Silicon Laboratories, [2019-06-2].https://www.silabs.com/documents/public/white-papers/ measuring-temperature-accurately-with-semiconductor-sensors.pdf.

  [2]Si7050-1-3-4-5-A20-1398033D[EB/OL],2018-09,Revision1.15,Silicon Laboratories,pp:1-27 (2018-09)[2019-05-27]:1-27.https://www.silabs.com/documents/public/data-sheets/Si7050-1-3-4-5-A20.pdf

  [3]AN607:Si70XX HUMIDITY AND TEMPERATURE SENSORDESIGNER』S GUIDE [EB/OL], Revision 2.0 ,SiliconLaboratories, P6, (2016-07)[2019-06-02].https://ww.silabs.com/documents/public/application-notes/AN607.pdf.

  [4]AN1026: Si70xx Temperature Sensor Designer’s Guide[EB/OL], Rev. 0.1, Silicon Laboratories,[2019-06-03]. https://www.silabs.com/documents/public/application-notes/AN1026-Si70xx-Temp-Sensor-Designers-Guide.pdf.

  [5] I²C[EB/OL], Wikipedia ,Retrieved, 2019-6-3.https://en.wikipedia.org/wiki/I%C2%B2C.

  [6]UM10204-I2C-bus specification and user manual[EB/OL].Rev.6,NXP,(2014-04-04)[2019-06-06].https://www.nxp.com/docs/en/user-guide/UM10204.pdf.

  [7]VALDEZ J,BECKER J. Slva704-ApplicationReport-Understanding the I2C Bus [EB/OL]. TexasInstrumentsIncorporated, PP.5-8,(2015-06)[2019-06-06].http://www.ti.com/lit/an/slva704/slva704.pdf.

  [8]I2C_bus_specifications_V2_0[EB/OL],V2.0,2016:p.6.https://espace.cern.ch/CMS-MPA/SitePages/Documents.aspx.

  [9]MARK W Si7051 Temp Sensor[EB/OL].(2017-01-10)[2019-06-12].https://www.matrixtsl.com/mmforums/viewtopic.

  php?t=19613.

  [10]STM32F10x_StdPeriph_Lib_V3.5.0[CP/OL],V3.5.0,STMicroelectronics,(2011)[2019-06-01].https://www.st.com/content/st_com/en/products/embedded-software/mcu-mpu-embedded-software/stm32-embedded-software/stm32-standard-peripheral-libraries/stsw-stm32054.html

  本文來源於科技期刊《電子產品世界》2020年第01期第69頁,歡迎您寫論文時引用,並註明出處。

相關焦點

  • 熱電偶溫度補償原理及方法
    例如:  當熱電偶與補償導線連接處的溫度高於控制室溫度時, 補償導線的補償電勢為正,應該是熱電偶產生的熱電勢加上補償導線產生的補償電勢,接反了相當於加上了一個負值會使指示偏低;  當熱電偶與補償導線連接處的溫度低於控制室溫度時, 補償導線的補償電勢為負,應該是熱電偶產生的熱電勢減去補償導線產生的補償電勢,接反了相當於減去了一個負值會使指示偏高;    當熱電偶與補償導線連接處的溫度等於控制室溫度時
  • 熱電偶:基本原理與設計要點
    不過,如果你理解熱電偶的工作原理的話,就可以通過堅實的電路設計和校準來優化測量精度。本文介紹了熱電偶的基本原理及電路設計時需要注意的事項。自20世紀初期以來,熱電偶就被廣泛應用於關鍵的溫度測量,特別是極高溫領域。對於許多工業和過程關鍵應用,T/C和RTD(電阻溫度檢測器)已經成為溫度測量的「黃金標準」。
  • Microchip推出全球首個集成熱電偶電動勢的溫度轉換器,簡化設計...
    (美國微芯科技公司)宣布推出全球首個熱電偶調理集成電路MCP9600,它集成了精密儀表、一個精確溫度傳感器、一個高精度高解析度數模轉換器(ADC)以及一個已預編程固件的數學引擎。該數學引擎支持多種標準熱電偶型號(K, J, T, N, S, E, B 和 R)。熱電偶是最為常用的溫度測量元件之一,因為它在惡劣的高溫環境下也能保持穩健性和精確性,並且它的測溫範圍極寬。
  • 熱電偶型號怎麼看 熱電偶型號數字含義
    適用於氧化性和惰性氣氛中,也可短期用於真空中,但不適用於還原性氣氛或含有金屬或非金屬蒸氣氣氛中。B型熱電偶一個明顯的優點是不需用補償導線進行補償,因為在0~50℃範圍內熱電勢小於3μV。   B型熱電偶不足之處是熱電勢,熱電勢率較小,靈敏讀低,高溫下機械強度下降,對汙染非常敏感,貴金屬材料昂貴,因而一次性投資較大。
  • 熱電偶工作原理 - 百度經驗
    簡介在工業生產過程中,溫度是需要測量和控制的重要參數之一。在溫度測量中,熱電偶的應用極為廣泛,它具有結構簡單、製造方便、測量範圍廣、精度高、慣性小和輸出信號便於遠傳等許多優點。另外,由於熱電偶是一種有源傳感器,測量時不需外加電源,使用十分方便,所以常被用作測量爐子、管道內的氣體或液體的溫度及固體的表面溫度[1]  。
  • 上海給袋式真空包裝機熱電偶使用中的注意事項
    熱電偶是廣泛使用在溫度測量中的元件,它具有結構簡單、使用方便、測量精度高、測量範圍寬、便於遠距離傳送與幾種檢測等優點。給袋式真空包裝機之所以使用熱電偶是因為給袋式真空包裝機在封口過程中也是需要加熱元件對加熱條加熱,封口的。下面我們就一起了解一下給袋式真空包裝機熱電偶使用中的注意事項:1、給袋式真空包裝機的熱電偶和儀表分度號須一致。
  • 採用AD7793 24位SIGMA-DELTA ADC的完整熱電偶測量系統
    AD7793是一款適合高精度測量應用的低功耗、低噪聲、完整模擬前端,內置PGA、基準電壓源、時鐘和激勵電流,從而大大簡化了熱電偶系統設計。系統峰峰值噪聲約為0.02°C。 AD7793的最大功耗僅500 μA,因而適合低功耗應用,例如整個發送器的功耗必須低於4 mA的智能發送器等。AD7793還具有關斷選項。在這種模式下,整個ADC及其輔助功能均關斷,器件的最大功耗降至1 μA。
  • 數字溫度計應用電路原理圖
    以前一般採用玻璃液體溫度計、雙金屬溫度計、壓力式溫度計、熱電偶、熱電阻和非接觸式溫度計等進行溫度測量。其中熱電偶的溫度測量範圍較寬,它無需使用驅動電源即可直接產生電壓(溫差電勢)信號,該信號既可用直流測量儀器(如電位差計、數字電壓表、毫伏計等)讀取,以通過熱電偶溫度特性分度表查出對應的溫度;也可以用線性校正電路將小信號電壓放大後,通過顯示儀表的刻度讀數。
  • 熱電偶和熱電阻有什麼區別?記住這幾點,千萬別選錯!
    帶保護管的熱電偶是將熱電偶的芯線以及絕緣管插入保護管使用的熱電偶。熱電偶使用在溫度較高的環境,因它們在中,低溫區時輸出熱電勢很小 (查表可以看一下 ),當電勢小時,對抗幹擾措施和二次表和要求很高,否則測量不準,還有,在較低的溫度區域, 冷端溫度的變化和環境溫度的變化所引起的相對誤差就顯得很突出,不易得到全補償。
  • 熱電偶和熱電阻的區別
    熱電阻原理圖     熱電阻和熱電偶的區別是:一、信號的性質,熱電阻本身是電阻,溫度的變化,使電阻產生正的或者是負的阻值變化四、PLC對應的熱電阻和熱電偶的輸入模塊也是不一樣的,這句話是沒問題,但一般PLC都直接接入4~20ma信號,而熱電阻和熱電偶一般都帶有變送器才接入PLC。要是接入DCS的話就不必用變送器了!熱電阻是RTD信號,熱電歐是TC信號!五、PLC也有熱電阻模塊和熱電偶模塊,可直接輸入電阻和電偶信號。
  • 熱電偶/熱電阻基礎知識詳解
    熱電效應:將兩根不同的導體連接在一起,當導體的兩端溫度不一致時,導體構成的迴路中就有電流產生,這種現象叫物質的熱電效應(塞貝克效應)。熱電特性是物質普遍具有的一種物理特性。2. 熱電偶:以測量熱電動勢的方法來測量溫度的一對金屬導體。
  • 可實現高解析度和高精度的矽晶片溫度傳感器解決方案
    目前市面上有許多溫度檢測解決方案,每一種都有其優缺點。矽晶片溫度傳感器,線性度相對較高,而且精度遠超其他解決方案。但是,矽晶片溫度檢測領域的最新進展意味著,使用矽晶片解決方案將可以實現高解析度和高精度。 新冰箱 那時正是2020年3月,英國即將進入封鎖狀態。全球都在囤積食物,以防超市關門,而未來似乎充滿不確定。
  • 熱電偶分度查詢表集錦(最全:K\E\T\R\B\S\N\J)
    >型熱電偶分度表查詢8、查詢工具|J型熱電偶分度表查詢9、如何正確使用熱電偶補償導線10、聊聊熱電偶|熱電偶的原理及冷端溫度補償11、如何正確使用熱電偶補償導線12、各分度號熱電偶差別介紹(見以下文章)工業熱電偶中熱電偶按分度號分有S
  • 高精度時鐘晶片有哪些?(四款高精度時鐘晶片介紹)
    時鐘晶片,顧名思義,其就是一種具有時鐘特性,能夠現實時間的晶片。時鐘晶片屬於是集成電路的一種,其主要有可充電鋰電池、充電電路以及晶體振蕩電路等部分組成,目前,被廣泛的應用在各類電子產品和信息通信產品中。
  • 常見的四種溫度傳感器優缺點介紹
    在這篇文章中,筆者將介紹四種類型的溫度傳感器(電阻式溫度檢測器 (RTD)、熱電偶、熱敏電阻器以及具有數字和模擬接口的集成電路 (IC) 傳感器)並討論每種傳感器的優點與缺點。 從系統級的立足點來看,溫度傳感器是否適合您的應用將取決於所需的溫度範圍、準確度、線性度、解決方案成本、功能、功耗、解決方案尺寸、安裝法(表面貼裝法與通孔插裝法以及電路板外安裝法)還有必要支持電路的易設計程度。
  • 熱電耦定義及應用介紹
    本文介紹的電路在靠近溫度傳感器的位置對熱電偶輸出進行數字轉換,與在數位化之前使弱信號通過長電纜傳輸的方案相比,該方案能夠將噪聲降至最低。 熱電偶因為其高測量精度、價格經濟、容易獲得以及較寬的溫度測量範圍等特點而在工業領域得到普遍應用。它由焊接在一起的兩種不同的金屬或金屬合金線(通常稱為熱端)組成。
  • 單片機測控技術在平板導熱係數儀研製中的應用
    本應用中,為了降低電路成本以及電路的漂移帶來的誤差,我們減少了下面所述的熱電偶調理電路,對於8路熱電偶信號沒有進行單獨的信號調理,而統一使用一個電路,為此,應用模擬開關我們構建了多路切換器,信號輸出佔用TLC2543的其中一路,另外再用2路作為主加熱單元的電壓及電流採集。
  • 熱電阻測量溫度原理
    一、概念熱電阻和熱電偶作為工業用溫度傳感器被廣泛應用。熱電阻由極細的金屬線構成,主要使用鉑、銅和鎳等材料。
  • 你知道新一代矽晶片溫度傳感器到底有多準確嗎?
    目前市面上有許多溫度檢測解決方案,每一種都有其優缺點。矽晶片溫度傳感器,線性度相對較高,而且精度遠超其他解決方案。但是,矽晶片溫度檢測領域的最新進展意味著,使用矽晶片解決方案將可以實現高解析度和高精度。
  • 警惕:額溫槍「熱電堆」紅外缺貨,有人改用「熱釋電」來騙!
    顧名思義,它是由兩個或多個熱電偶串聯組成,輸出是各熱電偶熱電勢的互相疊加。這樣,使用熱電堆測量溫度時,可以克服單個熱電偶產生的電勢差太小而難以測量的缺點,從而避免使用昂貴的高精度運算放大器。Gjaednc