新聞中心

EEPW首頁 > 物聯(lián)網(wǎng)與傳感器 > 設(shè)計(jì)應(yīng)用 > DS1820及其高精度溫度測量的實(shí)現(xiàn)

DS1820及其高精度溫度測量的實(shí)現(xiàn)

作者: 時(shí)間:2005-05-11 來源: 收藏
    在傳統(tǒng)的模擬信號(hào)遠(yuǎn)距離溫度系統(tǒng)中,需要很好的解決引線誤差補(bǔ)償問題、多點(diǎn)切換誤差問題和放大電路零點(diǎn)漂移誤差問題等技術(shù)問題,才能夠達(dá)到較高的精度。我們?cè)跒槟乘娬鹃_發(fā)水輪發(fā)電機(jī)組軸瓦溫度實(shí)時(shí)監(jiān)測系統(tǒng)時(shí),為了克服上面提到的三個(gè)問題,采用了新型數(shù)字溫度傳感器DS1820,在對(duì)其測溫原理進(jìn)行詳細(xì)分析的基礎(chǔ)上,提出了提高DS1820測量精度的方法,使DS1820的測量精度由0.5℃提高到0.1℃以上,取得了良好的測溫效果。 

  1 DS1820簡介 

  DS1820是美國DALLAS半導(dǎo)體公司生產(chǎn)的可組網(wǎng)數(shù)字式溫度傳感器,在其內(nèi)部使用了在板(ON-B0ARD)專利技術(shù)。全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。與其它溫度傳感器相比,DS1820具有以下特性: 

 ?。?)獨(dú)特的單線接口方式,DS1820在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS1820的雙向通訊。 

 ?。?)DS1820支持多點(diǎn)組網(wǎng)功能,多個(gè)DS1820可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)多點(diǎn)測溫。 

  (3)DS1820在使用中不需要任何外圍元件。 

 ?。?)溫范圍-55℃~+125℃,固有測溫分辨率0.5℃。 

  (5)測量結(jié)果以9位數(shù)字量方式串行傳送。 

  DS1820內(nèi)部結(jié)構(gòu)框圖如圖1所示。 





  DS1820測溫原理如圖2所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給計(jì)數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和溫度寄存器被預(yù)置在-55℃所對(duì)應(yīng)的一個(gè)基數(shù)值。計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1 ,計(jì)數(shù)器1的預(yù)置將重新被裝入,計(jì)數(shù)器1重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測溫度。圖2中的斜率累加器用于補(bǔ)償和修正測溫過程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。 





  在正常測溫情況下,DS1820的測溫分辯率為0.5℃以9位數(shù)據(jù)格式表示,其中最低有效位(LSB)由比較器進(jìn)行0.25℃比較,當(dāng)計(jì)數(shù)器1中的余值轉(zhuǎn)化成溫度后低于0.25℃時(shí),清除溫度寄存器的最低位(LSB),當(dāng)計(jì)數(shù)器1中的余值轉(zhuǎn)化成溫度后高于0.25℃,置位溫度寄存器的最低位(LSB),如-25.5℃對(duì)應(yīng)的9位數(shù)據(jù)格式如下: 

  2 提高DS1820測溫精度的途徑 

  2.1 DS1820高精度測溫的理論依據(jù) 

  DS1820正常使用時(shí)的測溫分辨率為0.5℃,這對(duì)于水輪發(fā)電機(jī)組軸瓦溫度監(jiān)測來講略顯不足,在對(duì)DS1820測溫原理詳細(xì)分析的基礎(chǔ)上,我們采取直接讀取DS1820內(nèi)部暫存寄存器的方法,將DS1820的測溫分辨率提高到0.1℃~0.01℃. 

  DS1820內(nèi)部暫存寄存器的分布如表1所示,其中第7字節(jié)存放的是當(dāng)溫度寄存器停止增值時(shí)計(jì)數(shù)器1的計(jì)數(shù)剩余值,第8字節(jié)存放的是每度所對(duì)應(yīng)的計(jì)數(shù)值,這樣,我們就可以通過下面的方法獲得高分辨率的溫度測量結(jié)果。首先用DS1820提供的讀暫存寄存器指令(BEH)讀出以0.5℃為分辨率的溫度測量結(jié)果,然后切去測量結(jié)果中的最低有效位(LSB),得到所測實(shí)際溫度整數(shù)部分T整數(shù),然后再用BEH指令讀取計(jì)數(shù)器1的計(jì)數(shù)剩余值M剩余和每度計(jì)數(shù)值M每度,考慮到DS1820測量溫度的整數(shù)部分以0.25℃、0.75℃為進(jìn)位界限的關(guān)系,實(shí)際溫度T實(shí)際可用下式計(jì)算得到: 

  T實(shí)際=(T整數(shù)-0.25℃)+(M每度-M剩余)/M每度 





  2.2 測量數(shù)據(jù)比較 

  表2為采用直接讀取測溫結(jié)果方法和采用計(jì)算方法得到的測溫?cái)?shù)據(jù)比較,通過比較可以看出,計(jì)算方法在DS1820測溫中不僅是可行的,也可以大大的提高DS1820的測溫分辨率。 

 ?。?nbsp;DS1820使用中注意事項(xiàng) 

  DS1820雖然具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中也應(yīng)注意以下幾方面的問題: 

  (1)較小的硬件開銷需要相對(duì)復(fù)雜的軟件進(jìn)行補(bǔ)償,由于DS1820與微處理器間采用串行數(shù)據(jù)傳送,因此,在對(duì)DS1820進(jìn)行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無法讀取測溫結(jié)果。在使用PL/M、C等高級(jí)語言進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí),對(duì)DS1820操作部分最好采用匯編語言實(shí)現(xiàn)。 

  (2)在DS1820的有關(guān)資料中均未提及單總線上所掛DS1820數(shù)量問題,容易使人誤認(rèn)為可以掛任意多個(gè)DS1820,在實(shí)際應(yīng)用中并非如此。當(dāng)單總線上所掛DS1820超過8個(gè)時(shí),就需要解決微處理器的總線驅(qū)動(dòng)問題,這一點(diǎn)在進(jìn)行多點(diǎn)測溫系統(tǒng)設(shè)計(jì)時(shí)要加以注意。 

  (3)連接DS1820的總線電纜是有長度限制的。試驗(yàn)中,當(dāng)采用普通信號(hào)電纜傳輸長度超過50m時(shí),讀取的測溫?cái)?shù)據(jù)將發(fā)生錯(cuò)誤。當(dāng)將總線電纜改為雙絞線帶屏蔽電纜時(shí),正常通訊距離可達(dá)150m,當(dāng)采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時(shí),正常通訊距離進(jìn)一步加長。這種情況主要是由總線分布電容使信號(hào)波形產(chǎn)生畸變?cè)斐傻摹R虼?,在用DS1820進(jìn)行長距離測溫系統(tǒng)設(shè)計(jì)時(shí)要充分考慮總線分布電容和阻抗匹配問題。 

  (4)在DS1820測溫程序設(shè)計(jì)中,向DS1820發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待DS1820的返回信號(hào),一旦某個(gè)DS1820接觸不好或斷線,當(dāng)程序讀該DS1820時(shí),將沒有返回信號(hào),程序進(jìn)入死循環(huán)。這一點(diǎn)在進(jìn)行DS1820硬件連接和軟件設(shè)計(jì)時(shí)也要給予一定的重視。


關(guān)鍵詞: 測量

評(píng)論


相關(guān)推薦

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

關(guān)閉