新聞中心

EEPW首頁 > 設(shè)計(jì)應(yīng)用 > 高精度溫度芯片Si7051在熱電偶補(bǔ)償中的應(yīng)用

高精度溫度芯片Si7051在熱電偶補(bǔ)償中的應(yīng)用

作者:王昌世 時(shí)間:2019-12-26 來源:電子產(chǎn)品世界 收藏

  王昌世(南昌溫度測控實(shí)驗(yàn)室,南昌?330002)

本文引用地址:http://butianyuan.cn/article/201912/408683.htm

  摘?要:熱電偶(TC)測溫是溫控儀必備的功能。TC測溫需進(jìn)行冷端溫度補(bǔ)償,補(bǔ)償?shù)木葲Q定著TC的測溫精度。本文要介紹的就是用所測量的TC冷端溫度,來對TC進(jìn)行溫度補(bǔ)償,使TC的測溫精度能達(dá)到或接近0.1度℃。重點(diǎn)是講述用CBT6單片機(jī)從I 2 C總線讀取芯片中的溫度編碼值,即編程。涉及TC補(bǔ)償原理、與STM32單片機(jī)的I 2 C接口電路與和

  關(guān)鍵詞:;Si7051;;I 2 C總線;

  Si7051是一款較新的、性價(jià)比較高的器件,雖批量價(jià)僅為10 元/片,可經(jīng)試用,其對TC補(bǔ)償?shù)淖饔脜s很大,很有效。但目前,在國內(nèi)未見相關(guān)應(yīng)用介紹(經(jīng)網(wǎng)上檢索)。想必,此文的創(chuàng)新應(yīng)用,會助力國內(nèi)TC測溫技術(shù)的進(jìn)步。

  1 補(bǔ)償原理

  把TC的兩端分為冷端(接入線路的那一端)和熱端(測溫對象所在端)。令TC冷端溫度為 Ct ,TC的輸出溫為 Tt ,則TC的熱端溫度(即測量溫度)Mt Ct Tt = + 。補(bǔ)償?shù)年P(guān)鍵在于冷端和Si7051感溫盡可能做到同溫。假如不完全相同,則應(yīng)注意這個(gè)溫差校正。

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

  2 Si7051介紹 [2]

  此芯片由美國Silicon Labs(即芯科科技)公司生產(chǎn),已先后發(fā)布8個(gè)版本,最新的1.15版,在2018-09發(fā)布。

  2.1 主要性能特征

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

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

  ±0.13 ℃: 20.0 ℃~70.0 ℃(準(zhǔn)環(huán)境溫度范圍);

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

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

  2)體積小,引腳少;

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

微信截圖_20200106104255.jpg

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

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

微信截圖_20200106104302.jpg

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

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

微信截圖_20200106104308.jpg

  3 電路設(shè)計(jì)

  單片機(jī)選用CBT6,它自帶有I 2 C總線,這使得相關(guān)接口(包括編程)相對簡單。見圖2。原理圖雖不復(fù)雜,但作為TC 補(bǔ)償元件,要做到它和TC冷端準(zhǔn)確同溫,卻并非易事,我們也是經(jīng)過多次改進(jìn),才達(dá)到的。具體做法是:①單獨(dú)做一塊小的PCB板(雙面,11 mmx7 mm,見圖3),通過插針與主板相連。在小板上,Si7051背面的感溫面下要開孔, 使感溫面能和冷端相對、相通??椎拇笮∩孕∮诟袦孛妗W⒁饪磮D3。②此小板和和TC冷端并立在一起放置,并且要遠(yuǎn)離板上的其他熱,見圖4。圖中,3線(棕、紅和黑3色)插頭是TC的冷端線,左邊立著的就是Si7051小板。③小板和TC冷端附近約30 mmx7 mm的PCB板區(qū)域內(nèi)不敷銅,以免多傳熱。

微信截圖_20200106104314.jpg

  4 編程

  編程本文的要點(diǎn)。

  4.1 理解圖4的時(shí)序

  文獻(xiàn)[2]給出了讀取Si7051芯片的溫度編碼的I2C時(shí)序圖(經(jīng)英譯中)。此時(shí)序圖從左到右,分成了19個(gè)段(數(shù)字所示)。

  此圖所涉及的相關(guān)技術(shù)術(shù)語參見文獻(xiàn)[3-7]。幾點(diǎn)說明如下:

  1)圖中的“主”是指主設(shè)備;從是指從設(shè)備(下同)。

1578278796686426.jpg

  2)第2段是“從地址”,指的是Si7051的從地址0x40;

  3)第3段是“主將要寫操作”,指的是,在I2C總線上,出現(xiàn)Si7051的從地址0x40后,主設(shè)備是要發(fā)送一個(gè)字節(jié)數(shù)據(jù)(第5段的0xf3)。注意這一段是一個(gè)位(bit)段且為0值,它附在第2段的0x40后面(100000B+0B= 10000000B)形成最終的0x80寫地址字節(jié)(與0x81的讀地址(如,第8、9段組合)對應(yīng)。這一點(diǎn)很重要,編程時(shí)不要誤寫為0x40。

  4)第9段是“主將要讀操作”,指的是.在I2C 總線上,出現(xiàn)Si7051的從地址0x40后,主設(shè)備是要從設(shè)備里讀取數(shù)據(jù)。這也是一個(gè)位段,但值為1,它附在第8段的0x40后面(100 0000B+1B=10000001B)形成最終的0x81讀地址字節(jié)。

  5)第10段是“非應(yīng)答(即NACK)”。對Si7051來說,這是一個(gè)特殊的位信號,它會一直持續(xù)高電平,直到片內(nèi)的A/D轉(zhuǎn)換結(jié)束。從這個(gè)信號發(fā)出算起,Si7051開始一次測溫的A/D轉(zhuǎn)換過程,具體轉(zhuǎn)換時(shí)間見參考文獻(xiàn)[2]的第4頁的表2。 本程序用12ms延時(shí)來處理。程序在12毫秒后,繼續(xù)到第11段。

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

  4.2 流程圖

  用IAR7.2.05工具及ST(即意法半導(dǎo)體)公司在2011年發(fā)布的3.5.0的庫函數(shù)(一直未變)。該庫函數(shù)包含了32個(gè)I2C相關(guān)函數(shù)和諸多變量定義,可選擇使用,本程序用了其中的10個(gè)函數(shù)。

  圖6是依據(jù)圖5的時(shí)序來編制的。有3點(diǎn)須說明:*相關(guān)函數(shù)注解詳見3.2.1。**限于篇幅,只用了一個(gè)菱形判斷圖作為示例,其他判斷處未用,但包含的流程相同,即如果不成功,則反復(fù)調(diào)用判斷函數(shù),直到成功。***延時(shí)程序一般是自編的,不調(diào)庫函數(shù),以便準(zhǔn)確控制延時(shí)時(shí)間。

  4.2.1 圖6相關(guān)庫函數(shù)說明

  這里的序號即是圖6中的中函數(shù)編號一致。

  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);

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

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

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

   1578278823806092.jpg1578278823648238.jpg

1578278860299835.jpg

  5 結(jié)論

  Si7051裝在線路板上,精度高、運(yùn)行穩(wěn)。下面是一組實(shí)測數(shù)據(jù)(表3):

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

  日本產(chǎn)溫控儀,其上無小數(shù)顯示(對熱電偶)。測試分析:儀器每秒對Si7051和熱電偶同步采樣一次,數(shù)據(jù)記錄間隔是2 min。在18 min內(nèi),Si7051測溫僅變化31.53-31.47=0.06(℃),多數(shù)時(shí)間,只在小數(shù)點(diǎn)后第2位上有變。表明其精準(zhǔn)、穩(wěn)定。SCTC測溫也僅變化30.53-30.20=0.33(℃)。這里,Si7051的測量的溫度要高于SCTC儀及RKC儀的測量溫度是因?yàn)镻CB板上的氣溫要高于一般環(huán)境溫度。

  以后還將一如既往地關(guān)注、實(shí)施溫度測控領(lǐng)域的新元件的應(yīng)用,并把相關(guān)的研發(fā)成果及時(shí)在專業(yè)刊物上發(fā)表,為我國自動化儀表的發(fā)展出一分力。

  參考文獻(xiàn)

  [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] I2C[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

  本文來源于科技期刊《電子產(chǎn)品世界》2020年第01期第69頁,歡迎您寫論文時(shí)引用,并注明出處。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉