隨著技術(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)的體積也在不斷減小。在體積非常苛刻的慣性器件中使用高精度、數(shù)字輸出型的溫度傳感器,MAXIM公司的DS18B20Uzui為符合要求。DS1820U是DS18B20系列產(chǎn)品中的一種。與以往模擬溫度信號的輸出不同,DS18B20的數(shù)字溫度輸出通過“一線”總線(1-Wire是被MAXIM公司收購的DALLAS公司新?lián)碛械囊环N*的數(shù)字信號總線協(xié)議,它將*的電源線和信號線復(fù)合在一起,僅使用一條口線;每個(gè)芯片*編碼,支持聯(lián)網(wǎng)尋址、零功耗等待等,是所需硬件連線zui少的一種總線)這種*的方式,使多個(gè)DS18B20U方便地組建成傳感器網(wǎng)絡(luò),為整個(gè)測量系統(tǒng)的建立和組合提供了更大可能性。
DS18B20真正令人驚奇的是其μSOP封裝,這種封裝只有3.0mm×6.4mm的水平尺寸,高度小于1.2mm。這樣可以節(jié)省更多的印刷電路板空間,非常適合于集成度高、對尺寸要求嚴(yán)格的慣性器件電路。因此在本加速度計(jì)的狹窄空間中使用,它是zui為合適的內(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公司提供的DS18B20的Datasheet(英文版)。
1.1DS18B20U的溫度測量時(shí)間
DS18B20U作為溫度傳感器。
1.2DS18B20U的“一線”總線標(biāo)識序號
每一個(gè)DS18B20U都有一個(gè)*的64位的“一線”總線標(biāo)識序號,存放在DS18B20U的內(nèi)部ROM(只讀存儲(chǔ)器)中。開始8位是產(chǎn)品類型編碼(DS18B20編碼均為28H),接著的48位是每個(gè)器件的*序號,zui后8位是前面56位的CRC(循環(huán)冗余校驗(yàn))碼。
1.3DS18B20U的溫度數(shù)據(jù)表示格式
DS18B20U中有用于存儲(chǔ)測得溫度值的兩個(gè)8位寄存器,它們存儲(chǔ)的溫度數(shù)據(jù)由兩個(gè)字節(jié)組成,分別為LSByte(低字節(jié))和MSByte(高字節(jié)),MSByte的高5位存放溫度值的符號,如果溫度為負(fù)(℃),則MSByte的高5位全為1,否則全為0。LSByte的8位和MSByte的低3位用于存放溫度值的補(bǔ)碼,LSB(zui低位)為0.0625℃。將寄存器中的二進(jìn)制數(shù)求補(bǔ),就得到了被測溫度值(-55℃~+125℃)。
1.4DS18B20U的供電方式
DS18B20可以設(shè)置成兩種供電方式,即數(shù)據(jù)總線供電方式和外部供電方式。采取數(shù)據(jù)總線供電方式可以節(jié)省一根導(dǎo)線,但由此帶來的缺點(diǎn)是完成溫度測量的時(shí)間較長;而采取外部供電方式則多用一根導(dǎo)線,但測量速度較快。注意:采用超小型μSOP封裝的DS18B20U不適合使用數(shù)據(jù)總線供電方式。
1.5DS18B20U的多路同步測量
每一片DS18B20在其ROM中都存在*的48位序列號,在出廠前已寫入片內(nèi)ROM中。
當(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,啟動(dòng)總線上所有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)成。下面介紹其設(shè)計(jì)重點(diǎn)。
2.1寬的工作溫度范圍
為了不僅能夠通過“一線”總線采集溫度信息,而且能夠在工作現(xiàn)場或試驗(yàn)現(xiàn)場可靠工作,需要系統(tǒng)至少能勉夠在80℃以上的高溫環(huán)境下可靠工作,因此在設(shè)計(jì)時(shí)應(yīng)對工作溫度范圍予以重視。
2.2強(qiáng)的抗外界電磁干擾性能
工作在現(xiàn)場環(huán)境下,總是面對比較強(qiáng)烈的電磁干擾,因而需要采取更有效的措施。
首先,在外部供電的輸入接口應(yīng)加入二極管橋依據(jù)電路,防止在一些特殊條件下出現(xiàn)的電流逆向問題,同時(shí)也使得內(nèi)外電路的地線隔離,起到抗干擾作用。
由于系統(tǒng)需要和外部設(shè)備進(jìn)行串口通訊,而232串口的電氣接口需要地線作為參考電平(因?yàn)橥庠O(shè)系統(tǒng)帶來的電磁干擾可能通過相連地線傳入系統(tǒng),引起工作異常),因此必須使用*光耦隔離的方法來提高抗*力。采用光耦隔離器件可抑制電磁干擾,保護(hù)系統(tǒng)電路不受網(wǎng)絡(luò)影響。串口的二線式通訊需要兩個(gè)光耦節(jié)點(diǎn),節(jié)點(diǎn)兩側(cè)需有獨(dú)立的供電電源。光耦器件應(yīng)該選擇高速類型。例如TLP113,以滿足在zui高通訊速率(115200bps)下的電氣性能。電路中還應(yīng)采用隔離型DC/DC模塊向串口收發(fā)器電路供電。
2.3小的系統(tǒng)體積
設(shè)備的小型化是每一個(gè)項(xiàng)目所追求的目標(biāo)之一。為了使得設(shè)備便于攜帶、使用方便,在設(shè)計(jì)的初期就決定使用I2C等串行接口方式,而不使用速度雖然很快,但是卻占用大量PCB面積、連接線路以及IC管腳的并口方式。簡單的串行接口可以掛接多種不同功能的芯片。因此系統(tǒng)的主芯片選用了具有I2C接口的Philips公司生產(chǎn)的P89C668單片機(jī)。其內(nèi)帶64KBFlash存儲(chǔ)器/8KBRAM存儲(chǔ)器,F(xiàn)lash存儲(chǔ)器既可以并行編程又可以串行在系統(tǒng)編程(ISP),還可以程序自我編程(IAP)。由于時(shí)鐘周期為6個(gè)時(shí)鐘,因此速度是傳統(tǒng)51結(jié)構(gòu)的兩倍。
大量使用串行接口不僅獲得了很小的體積,也使得電路的電氣連接簡單明了。
3、“一線”網(wǎng)關(guān)的軟件設(shè)計(jì)
由于使用了單片機(jī)構(gòu)成嵌入式系統(tǒng),因此在完成硬件設(shè)計(jì)后,需要編制相應(yīng)的程序在單處機(jī)系統(tǒng)中運(yùn)行,這樣才能zui終完成“一線”網(wǎng)關(guān)的設(shè)計(jì)。由于采用的單片機(jī)是與51系列兼容的P89C668,所以使用流行的C51語言編譯軟件KeilCV7.07a編制程序。
系統(tǒng)的核心任務(wù)是通過“一線”總線采集總線上的溫度傳感器數(shù)據(jù)并轉(zhuǎn)發(fā)至串口,特點(diǎn)如下:
(1)利用DS18B20的總線特點(diǎn),同步所有溫度采集節(jié)點(diǎn)的采集過程。
在一線總線上發(fā)送同步采集指令,可以使系統(tǒng)在同一時(shí)刻采集到各個(gè)溫度測量點(diǎn)的溫度數(shù)據(jù),而避免“一線”總線本身通訊速率低的難題,而且也不用關(guān)心總線上掛接傳感器的具體數(shù)量。流程圖如圖3所示。
?。?)利用EEPROM保存采集節(jié)點(diǎn)的歷史溫度數(shù)據(jù),允許脫機(jī)運(yùn)行。
系統(tǒng)自帶的EEPROM是掉電數(shù)據(jù)保存的可靠方式。8K的存儲(chǔ)空量和快速的區(qū)域?qū)懭敕绞阶阋詫?shí)時(shí)保存現(xiàn)場采集的測量數(shù)據(jù)和相應(yīng)的時(shí)間序列信息。
?。?)聯(lián)機(jī)運(yùn)行時(shí)間步采集數(shù)據(jù),通過串口上傳PC機(jī)。
在一般的應(yīng)用方式下,系統(tǒng)通過串口連接現(xiàn)場的PC機(jī)或其它上位設(shè)備,通過通訊接收上位機(jī)的指令,并進(jìn)行數(shù)據(jù)采集、保存和傳輸。這種工作方式即“一線”總線溫度傳感器網(wǎng)關(guān)的原始設(shè)計(jì)理念。
?。?)聯(lián)機(jī)運(yùn)行時(shí)保存的歷史數(shù)據(jù)通過串口上傳PC機(jī)。
由于系統(tǒng)可以保存脫機(jī)時(shí)采集的溫度數(shù)據(jù),因此可以在聯(lián)機(jī)工作時(shí)接收命令,通過串口把保存在EEPROM中的歷史數(shù)據(jù)上傳至上位機(jī),方便了數(shù)據(jù)的轉(zhuǎn)移、備份和分析。
所以,上位機(jī)可以是zui普通的PC機(jī)(至少具有一個(gè)標(biāo)準(zhǔn)232串口),也可以是具有串行232接口的嵌入式系統(tǒng)。
4、溫度測量數(shù)字化方案的使用實(shí)例
本文介紹的技術(shù)在某型加速度計(jì)的開發(fā)、試驗(yàn)中得到了應(yīng)用。在相關(guān)試驗(yàn)中,為配合溫度數(shù)據(jù)采集系統(tǒng)和其它相關(guān)設(shè)備,編制了應(yīng)用軟件。溫度數(shù)據(jù)采集系統(tǒng)的上位機(jī)功能相關(guān)程序已經(jīng)內(nèi)嵌入該軟件之中。
配套開發(fā)的PC機(jī)(上位機(jī))控制軟件,其編程環(huán)境為:
系統(tǒng)平臺(tái)-Windows2000ProSP4中文版
開發(fā)平臺(tái)-VisualC++6英文版
以上方案經(jīng)過精心設(shè)計(jì),在多方努力下成功運(yùn)用到某新型MEMS加速度計(jì)的研制過程中,取得了良好的效果。