溫度傳感器在火災報警系統(tǒng)中的應用
1.引言
1-Wire總線技術具有節(jié)省I/O資源、結構簡單、成本低廉,便于總線擴展和方便維護等特點。因此在分布式測溫系統(tǒng)中有著廣泛的應用。而美國DALLAS公司生產(chǎn)的單總線智能溫度傳感器DS18B20是采用1-Wire總線技術的典型產(chǎn)品[2]。DS18B20通過單線按照1-Wire協(xié)議傳送特定的命令序列并進行數(shù)據(jù)通信。該系列產(chǎn)品有個很重要的特性就是在出廠前每個器件都被寫入了唯一的64位ROM 碼即序列號,最低有效字節(jié)為家族代碼。代表器件的類型。如DS1990A的家族碼為01H,DS18B20的家族碼為28H。由于在同一條1-Wire 總線上可同時掛接多個相同系列或不同系列的1-Wire 器件,因此主機必須能夠決定如何正確地訪問位于1-Wire 總線上的各個器件。64位ROM 碼中家族碼提供了器件的類型,隨后的6 個字節(jié)是器件的唯一序列號,用以區(qū)分同一個系列的不同器件。該序列號可作為1-Wire 總線上器件的地址。這樣1-Wire 總線上的所有器件連同主機就構成了一個微型局域網(wǎng)。它們之間通過一條公共線來進行通信[5]。
2.數(shù)字溫度傳感器特性與功能塊圖。
DS18B20的核心功能就是可以直接轉(zhuǎn)換成數(shù)字量。由于每一個智能溫度傳感器DS18B20有一個唯一的64位序列號。允許多個DS18B20在同一條總線上工作。因此可以用一個單片機在一個大范圍內(nèi)控制多個數(shù)字溫度傳感器DS18B20,經(jīng)常用于環(huán)境溫度控制、溫度監(jiān)測系統(tǒng)以及過程監(jiān)測和控制系統(tǒng)中。1-Wire 器件64位序列號的最高有效字節(jié)是循環(huán)冗余校驗CRC 碼。該值基于前面的56位數(shù)據(jù)。當系統(tǒng)主機開始與某個器件進行通信時,可以從低位開始讀取8個ROM 字節(jié)即64位序列號。
1-Wire總線技術的溫度傳感器DS18B20溫度的測量范圍為 - 55℃ ~ + 125℃ 。便箋存儲器中包含兩個字節(jié)溫度寄存器用于存儲溫度傳感器的數(shù)字輸出。另外提供一個字節(jié)報警上限TH和一個字節(jié)報警下限TL寄存器。還有一個字節(jié)組態(tài)寄存器。組態(tài)寄存器允許用戶設置分辨率為9 ~ 12位。分別對應溫度值0.5℃、0.25℃、0.125℃和0.0625℃。TH、、TL和組態(tài)寄存器可以存放在EEPROM中,因此當系統(tǒng)掉電時,TH、、TL和組態(tài)寄存器中的數(shù)據(jù)仍將保存。1-Wire總線技術的溫度傳感器DS18B20功能塊如圖1所示。
圖1 1-Wire技術的溫度傳感器DS18B20功能塊圖
3.數(shù)字溫度傳感器ROM命令和功能命令。
為了能夠使1-Wire總線技術的溫度傳感器DS18B20正常工作,需要按照一定順序執(zhí)行相關命令。首先進行初始化,其次執(zhí)行ROM命令,最后執(zhí)行DS18B20功能命令。常用的ROM命令有5個。每個命令均為一個字節(jié)。在發(fā)送DS18B20功能命令之前,主CPU必須發(fā)布適當?shù)腞OM命令。對ROM的五種操作命令有ROM搜索命令(代碼為F0H),ROM命令(代碼為33H),匹配ROM命令(代碼為55H),跳過ROM命令(代碼為CCH)和搜索報警命令(代碼為ECH)。
當主CPU使用了ROM命令之后,如果訪問想要通信的從設備DS18B20時,主CPU能夠發(fā)布一個DS18B20功能命令。1-Wire總線技術的溫度傳感器DS18B20功能命令主要有5條。這些命令允許主CPU讀或?qū)慏S18B20的便箋存儲器,開始溫度轉(zhuǎn)換以及決定電源的模式。DS18B20功能命令如下所述。
1.溫度轉(zhuǎn)換命令(代碼為44H)使DS18B20開始轉(zhuǎn)換。轉(zhuǎn)換完畢的溫度數(shù)據(jù)存放在兩個字節(jié)的溫度寄存器中。
2.寫便箋存儲器命令(代碼為4EH)允許主CPU 寫3個字節(jié)數(shù)據(jù)到便箋存儲器中。第一個數(shù)據(jù)字節(jié)被寫入到TH寄存器中,第二個數(shù)據(jù)字節(jié)被寫入到TL寄存器中,第三個數(shù)據(jù)字節(jié)被寫入到組態(tài)寄存器中。數(shù)據(jù)寫入從最低有效位開始。在主CPU發(fā)出復位脈沖之前,三個字節(jié)必須被寫完。
3.讀便箋存儲器命令(代碼為BEH)允許主CPU 讀出便箋存儲器中的內(nèi)容。數(shù)據(jù)傳輸從字節(jié)0的最低有效位開始到字節(jié)8。便箋存儲器中的9個字節(jié)內(nèi)容被讀出。其中字節(jié)8為CRC校驗碼。如果只需要讀出便箋存儲器中的部分字節(jié),主CPU可以隨時發(fā)出復位脈沖終止讀操作。
4.拷貝便箋存儲器命令(代碼為48H)將拷貝便箋存儲器字節(jié)2、3、4即TH 、TL和組態(tài)寄存器內(nèi)容到EEPROM。
5.從EEPROM重新調(diào)出命令(代碼為B8H)將從EEPROM重新調(diào)出TH 、TL和組態(tài)寄存器內(nèi)容,并將數(shù)據(jù)放置到便箋存儲器字節(jié)2、3、4中。上電時從EEPROM重新調(diào)出命令(代碼為B8H)將會自動執(zhí)行。
傳感器相關文章:傳感器工作原理
存儲器相關文章:存儲器原理
風速傳感器相關文章:風速傳感器原理
評論