<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 設(shè)計應用 > 高精度溫度芯片Si7051在熱電偶補償中的應用

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

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

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

          本文引用地址:http://www.ex-cimer.com/article/201912/408683.htm

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

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

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

            1 補償原理

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

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

            2 Si7051介紹 [2]

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

            2.1 主要性能特征

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

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

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

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

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

            2)體積小,引腳少;

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

          微信截圖_20200106104255.jpg

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

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

          微信截圖_20200106104302.jpg

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

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

          微信截圖_20200106104308.jpg

            3 電路設(shè)計

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

          微信截圖_20200106104314.jpg

            4 編程

            編程本文的要點。

            4.1 理解圖4的時序

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

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

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

          1578278796686426.jpg

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

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

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

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

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

            4.2 流程圖

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

            圖6是依據(jù)圖5的時序來編制的。有3點須說明:*相關(guān)函數(shù)注解詳見3.2.1。**限于篇幅,只用了一個菱形判斷圖作為示例,其他判斷處未用,但包含的流程相同,即如果不成功,則反復調(diào)用判斷函數(shù),直到成功。***延時程序一般是自編的,不調(diào)庫函數(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溫度編碼并計算攝氏溫度u8 I2C_Read(I2C_TypeDef *I2Cx,u8 I2C_Addr,u8 data,u8 *buf,u16 num)

             1578278823806092.jpg1578278823648238.jpg

          1578278860299835.jpg

            5 結(jié)論

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

            測試條件說明:①地點:辦公室,對環(huán)境溫度測試;②工具:實驗室開發(fā)的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)

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

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

            參考文獻

            [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頁,歡迎您寫論文時引用,并注明出處。



          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();