微型溫度測量的數(shù)字化方案
摘要:在各種傳感器的設(shè)計(jì)中,溫度是影響其性能指標(biāo)的一個(gè)重要因素。在對體積限制很嚴(yán)格的條件下,解決了硅微加速度計(jì)設(shè)計(jì)中的內(nèi)部溫度測量問題。主要討論了內(nèi)嵌于加速度計(jì)的微型數(shù)字溫度傳感器DS18B20U的功能特點(diǎn)和使用要點(diǎn),并且介紹了“一線”網(wǎng)關(guān)的硬件及軟件設(shè)計(jì)。此項(xiàng)技術(shù)已有后續(xù)的軟件開發(fā)實(shí)例。
關(guān)鍵詞:數(shù)字溫度傳感器 DS18B20U “一線”總線 網(wǎng)關(guān)
隨著技術(shù)的發(fā)展,各種慣性器件的性能在不斷提高,體積也在不斷小型化。對于慣性器件(如加速度計(jì)、陀螺)性能的提高,溫度補(bǔ)償作為一種重要的修正方式越來越引起人們的注意,因此如何在慣性器件極小的空間內(nèi)精確地測量、傳輸、處理溫度信息,成了能否使其性能和體積優(yōu)勢進(jìn)一步提高的關(guān)鍵問題。
1 DS18B20U和“一線”總線
在研制新一代的微型MMS加速度計(jì)時(shí),溫度測量的難題以一次擺在人們的面前。在3~4cm3的空間內(nèi)放置一個(gè)傳統(tǒng)的SO-8或TO-92封裝的器件都顯得擁擠,更何況還要旋轉(zhuǎn)一個(gè)非主要功能的溫度傳感器了。
縱觀國際上現(xiàn)有的溫度傳感器的變化,總的趨勢是從模擬向數(shù)字轉(zhuǎn)變,相應(yīng)的體積也在不斷減小。在體積非??量痰膽T性器件中使用高精度、數(shù)字輸出型的溫度傳感器,MAXIM公司的DS18B20U最為符合要求。DS1820U是DS18B20系列產(chǎn)品中的一種。與以往模擬溫度信號的輸出不同,DS18B20的數(shù)字溫度輸出通過“一線”總線(1-Wire是被MAXIM公司收購的DALLAS公司新?lián)碛械囊环N獨(dú)特的數(shù)字信號總線協(xié)議,它將獨(dú)特的電源線和信號線復(fù)合在一起,僅使用一條口線;每個(gè)芯片唯一編碼,支持聯(lián)網(wǎng)尋址、零功耗等待等,是所需硬件連線最少的一種總線)這種獨(dú)特的方式,使多個(gè)DS18B20U方便地組建成傳感器網(wǎng)絡(luò),為整個(gè)測量系統(tǒng)的建立和組合提供了更大可能性。
DS18B20真正令人驚奇的是其μSOP封裝,這種封裝只有3.0mm×6.4mm的水平尺寸,高度小于1.2mm。這樣可以節(jié)省更多的印刷電路板空間,非常適合于集成度高、對尺寸要求嚴(yán)格的慣性器件電路。因此在本加速度計(jì)的狹窄空間中使用,它是最為合適的內(nèi)嵌式溫度傳感器件。
DS18B20溫度傳感器的主要性能指標(biāo)為:
*“一線”總線接口令需一個(gè)端口進(jìn)行通訊。
*簡單的多點(diǎn)分布應(yīng)用。
*可通過數(shù)據(jù)線供電。
*測溫范圍為-55~+125℃,在-10~+85℃的范圍內(nèi),精度為±0.5℃。
*溫度以9~12位數(shù)字量讀出,分辨率為0.0625℃。
*U型產(chǎn)品采用超小型的μSOP封裝,大大減小了體積。
以下介紹DS18B20U的一些使用要點(diǎn),更詳細(xì)的信息可以參考MAXIM公司網(wǎng)站提供的DS18B20的Datasheet(英文版)。
1.1 DS18B20U的溫度測量時(shí)間
DS18B20U作為溫度傳感器。
1.2 DS18B20U的“一線”總線標(biāo)識序號
每一個(gè)DS18B20U都有一個(gè)唯一的64位的“一線”總線標(biāo)識序號,存放在DS18B20U的內(nèi)部ROM(只讀存儲器)中。開始8位是產(chǎn)品類型編碼(DS18B20編碼均為28H),接著的48位是每個(gè)器件的唯一序號,最后8位是前面56位的CRC(循環(huán)冗余校驗(yàn))碼。
1.3 DS18B20U的溫度數(shù)據(jù)表示格式
DS18B20U中有用于存儲測得溫度值的兩個(gè)8位寄存器,它們存儲的溫度數(shù)據(jù)由兩個(gè)字節(jié)組成,分別為LS Byte(低字節(jié))和MS Byte(高字節(jié)),MS Byte的高5位存放溫度值的符號,如果溫度為負(fù)(℃),則MS Byte的高5位全為1,否則全為0。LS Byte的8位和MS Byte的低3位用于存放溫度值的補(bǔ)碼,LSB(最低位)為0.0625℃。將寄存器中的二進(jìn)制數(shù)求補(bǔ),就得到了被測溫度值(-55℃~+125℃)。
1.4 DS18B20U的供電方式
DS18B20可以設(shè)置成兩種供電方式,即數(shù)據(jù)總線供電方式和外部供電方式。采取數(shù)據(jù)總線供電方式可以節(jié)省一根導(dǎo)線,但由此帶來的缺點(diǎn)是完成溫度測量的時(shí)間較長;而采取外部供電方式則多用一根導(dǎo)線,但測量速度較快。注意:采用超小型μSOP封裝的DS18B20U不適合使用數(shù)據(jù)總線供電方式。
1.5 DS18B20U的多路同步測量
每一片DS18B20在其ROM中都存在唯一的48位序列號,在出廠前已寫入片內(nèi)ROM中。
如圖1所示,當(dāng)主機(jī)需要對眾多在線DS18B20中的某一個(gè)進(jìn)行操作時(shí),首先發(fā)出匹配ROM命令(命令代號55h),緊接著主機(jī)提供64位序列號(包括該DS18B20的48位序列號),之后的操作就是針對該DS18B20的。但是DS18B20的命令中允許對所有在線節(jié)點(diǎn)進(jìn)行統(tǒng)一操作,利用的是跳過ROM命令(命令代號CCh)。而所謂路過ROM命令即可:之后的操作是面對總線上所有DS18B20的。命令序列先跳過ROM,啟動總線上所有DS18B20進(jìn)行溫度測量,然后通過匹配ROM再逐一地讀回每個(gè)DS18B20的溫度數(shù)據(jù)。這種方式使采集的溫度數(shù)據(jù)具有很好的同步性,而且節(jié)省時(shí)間。
2 “一線”網(wǎng)關(guān)的硬件設(shè)計(jì)
為了收集DS18B20U器件采集的溫度信息,需要控制掛接在“一線”總線網(wǎng)絡(luò)上的DS18B20U芯片,所以需要研制“一線”網(wǎng)關(guān)。“一線”網(wǎng)關(guān)的主要功能就是面對試驗(yàn)人員,把“一線”總線上的DS18B20U的信息轉(zhuǎn)換成異步串口232接口中的信息,這相當(dāng)于兩種類型網(wǎng)絡(luò)之間的網(wǎng)關(guān),因此叫做“一線”網(wǎng)關(guān)。“一線”網(wǎng)關(guān)由一個(gè)功能強(qiáng)大的8位單片機(jī)P89C668組合各種外圍芯片構(gòu)成,各模塊之間的關(guān)系如圖2所示。下面介紹其設(shè)計(jì)重點(diǎn)。
評論