摘 要: 設(shè)計(jì)了一種基于DS1922E的高溫測(cè)量管理系統(tǒng)。通過(guò)對(duì)系統(tǒng)整體架構(gòu)的分析和設(shè)計(jì),闡述了主機(jī)與DS1922E間通過(guò)1?Wire總線(xiàn)獲取DS1922E的序列碼并且對(duì)其設(shè)置完全訪(fǎng)問(wèn)密碼、準(zhǔn)備和啟動(dòng)一個(gè)溫度采集任務(wù)、主機(jī)停止任務(wù)及讀取DS1922E采集記錄的數(shù)據(jù)的通信過(guò)程,并給出及分析測(cè)試結(jié)果。DS1922E高溫紐扣溫度記錄器可以在高溫、潮濕等惡劣環(huán)境下可靠工作,應(yīng)用前景良好。
關(guān)鍵詞: DS1922E高溫紐扣溫度記錄器; 1?Wire 總線(xiàn); 初始化數(shù)值; 溫度采集
中圖分類(lèi)號(hào): TN98?34 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2013)12?0118?03
0 引 言
在日常生活中,經(jīng)常需要在超過(guò)100 ℃的高溫、蒸汽量大的惡劣環(huán)境下(如制藥系統(tǒng))進(jìn)行溫度的采集、管理及監(jiān)控,而傳統(tǒng)的紙質(zhì)溫度記錄器和已開(kāi)發(fā)出的一些溫度測(cè)量模塊很難能在這種惡劣的環(huán)境中可靠地完成溫度的采集,而且它們的使用壽命都比較短[1]。為此本文提出了一種基于DS1922E高溫紐扣溫度記錄器的高溫測(cè)量管理系統(tǒng)的設(shè)計(jì)[2]。
該系統(tǒng)適合的溫度測(cè)量范圍較寬,能夠解決一些特殊環(huán)境下進(jìn)行高溫測(cè)量的難題,且該系統(tǒng)對(duì)溫度采集數(shù)據(jù)的讀取簡(jiǎn)單、可靠。
1 高溫記錄管理系統(tǒng)架構(gòu)
1.1 DS1922E高溫紐扣溫度記錄器
DS1922E高溫紐扣溫度記錄器是具有惟一的64位注冊(cè)號(hào)的堅(jiān)固耐用系統(tǒng),能夠根據(jù)用戶(hù)自定義的等間隔采樣速率(從1 s~273 h)、以8位(0.5 ℃)或11位(0.062 5 ℃)的測(cè)量分辨率在15~140 ℃的溫度范圍內(nèi)進(jìn)行溫度的測(cè)量并將測(cè)量結(jié)果自動(dòng)記錄在內(nèi)部8KB的數(shù)據(jù)記錄存儲(chǔ)器中,數(shù)據(jù)的記錄格式有8位和16位兩種,15~110 ℃范圍內(nèi)測(cè)溫精度的典型值為±7 ℃,110~140 ℃測(cè)溫精度的典型值為±1.5 ℃,可通過(guò)密碼訪(fǎng)問(wèn)存儲(chǔ)器和控制功能,啟動(dòng)一個(gè)數(shù)據(jù)采集任務(wù)可有三種選擇(立即開(kāi)始、一個(gè)溫度報(bào)警開(kāi)始、一次用戶(hù)定義的延時(shí)開(kāi)始),該iButton溫度記錄器可通過(guò)串行1?Wire協(xié)議實(shí)現(xiàn)與主機(jī)的通信[3]。
在本設(shè)計(jì)中,在將DS1922E高溫紐扣溫度記錄器放入惡劣環(huán)境中進(jìn)行高溫測(cè)量時(shí),選用具有較好的阻燃性及抗化學(xué)性能的DS1907作為iButton溫度記錄器的防護(hù)罩[1]。同時(shí)為了通過(guò)測(cè)量容器內(nèi)更多點(diǎn)處的溫度從而更好地實(shí)現(xiàn)對(duì)容器的溫度監(jiān)控[4],選2個(gè)DS1922E高溫紐扣溫度記錄器分布在容器的邊緣處、選1個(gè)放在容器的中央,它們同時(shí)對(duì)容器的不同點(diǎn)進(jìn)行溫度的測(cè)量及記錄。
1.2 讀寫(xiě)頭
在本設(shè)計(jì)中讀寫(xiě)頭采用DS1402D?DR8。DS1402D?DR8可通過(guò)藍(lán)點(diǎn)接受點(diǎn)與DS1922E高溫紐扣溫度記錄器相接,而通過(guò)1?Wire RJ?11與適配器(或接口轉(zhuǎn)換器)相連。該讀寫(xiě)頭可以很方便地實(shí)現(xiàn)對(duì)DS1922E的讀/寫(xiě),只要與觸點(diǎn)輕輕接觸,瞬間便可完成。
1.3 適配器(或接口轉(zhuǎn)換器)
適配器(或接口轉(zhuǎn)換器)選用DS9490R。該適配器有支持標(biāo)準(zhǔn)和高速1?Wire的通信,它有一個(gè)RJ?11可與選取的讀寫(xiě)頭DS1402D?DR8相連;而且它還擁有有通信速率高達(dá)到12 Mb/s的USB接口,可實(shí)現(xiàn)與PC機(jī)簡(jiǎn)便快速地通信。
1.4 溫度記錄管理系統(tǒng)
該溫度管理系統(tǒng)采用裝有驅(qū)動(dòng)軟件和應(yīng)用程序的PC機(jī)。利用PC機(jī)通過(guò)1?Wire協(xié)議對(duì)DS1922E高溫紐扣溫度記錄器進(jìn)行初始化及溫度記錄任務(wù)的設(shè)置;當(dāng)iButton溫度記錄器采集完溫度數(shù)據(jù)后,PC機(jī)又通過(guò)1?Wire協(xié)議快速將其采集到的數(shù)據(jù)讀取,然后實(shí)現(xiàn)對(duì)數(shù)據(jù)的管理[5?6]。
2 主機(jī)與從機(jī)的通信過(guò)程的設(shè)計(jì)
在本設(shè)計(jì)中對(duì)整個(gè)系統(tǒng)的通信過(guò)程的設(shè)計(jì)主要包括三個(gè)模塊:主機(jī)獲取DS1922E的序列碼并且對(duì)其設(shè)置完全訪(fǎng)問(wèn)密碼、準(zhǔn)備和啟動(dòng)一個(gè)溫度采集任務(wù)、主機(jī)停止任務(wù)及讀取DS1922E采集記錄的數(shù)據(jù)[7]。下面對(duì)這三個(gè)設(shè)計(jì)進(jìn)行介紹。
2.1 主機(jī)獲取各DS1922E的序列碼并且對(duì)其設(shè)置完全訪(fǎng)問(wèn)密碼
主機(jī)通過(guò)發(fā)送讀ROM命令((命令代碼為33H)分別獲取系統(tǒng)共用3個(gè)DS1922E的64位序列碼,便于對(duì)所用的iButton溫度記錄器進(jìn)行分辨;然后主機(jī)通過(guò)發(fā)送匹配ROM命令(命令代碼為55H)、寫(xiě)暫存器命令(命令代碼為0FH)、復(fù)制暫存器命令(命令代碼為99H)[8]分別對(duì)3個(gè)DS1922E設(shè)置完全訪(fǎng)問(wèn)密碼,這樣保證數(shù)據(jù)的安全性。
2.2 準(zhǔn)備和啟動(dòng)一個(gè)溫度采集任務(wù)
在該通信過(guò)程模塊設(shè)計(jì)中,主要包括3個(gè)步驟:清空前一個(gè)任務(wù)的數(shù)據(jù),初始化,啟動(dòng)一個(gè)新的任務(wù)[8]。
2.2.1 清空前一個(gè)任務(wù)的數(shù)據(jù)
2.2.2 初始化
主機(jī)通過(guò)發(fā)送匹配ROM命令(命令代碼為55H)、寫(xiě)暫存器命令(命令代碼為0FH)、復(fù)制暫存器命令(命令代碼為99H)[8]、輸入正確的密碼分別對(duì)各DS1922E中相應(yīng)的寄存器進(jìn)行初始化,初始化的內(nèi)容包括采樣速率的設(shè)定、溫度報(bào)警閾值的設(shè)定、采樣速率方式的選擇、存儲(chǔ)器滿(mǎn)后數(shù)據(jù)處理方式的選擇、溫度數(shù)據(jù)記錄格式的選擇、延時(shí)啟動(dòng)的設(shè)定等。
(1)初始化的設(shè)定
(2)任務(wù)寄存器和啟動(dòng)延時(shí)計(jì)數(shù)器的設(shè)置。由于本系統(tǒng)主要是進(jìn)行高溫測(cè)量,且要求較高的測(cè)量分辨率,所以采用16位的數(shù)據(jù)記錄格式,則溫度記錄格式位TLFS=1;選用的啟動(dòng)方式是延時(shí)一些時(shí)間后啟動(dòng)而不用報(bào)警啟動(dòng),則溫度報(bào)警啟動(dòng)位SUTA=0;存儲(chǔ)器記錄滿(mǎn)后停止記錄且保留已記錄的數(shù)據(jù),則存儲(chǔ)器滿(mǎn)后數(shù)據(jù)處理方式的選擇RO=0;在整個(gè)任務(wù)的中,要使能溫度記錄,則溫度記錄使能位ETL=1。采用的啟動(dòng)延時(shí)時(shí)間設(shè)定為20 min,所以啟動(dòng)延時(shí)計(jì)數(shù)器的三個(gè)字節(jié)的值為000014H。
(3)RTC控制寄存器的設(shè)置。采用低速率采樣,故使能高速采樣位EHSS=0,同時(shí)要使能晶振,則EOSC=1。
(4)采樣速率寄存器的設(shè)置。在本設(shè)計(jì)中,對(duì)容器內(nèi)的溫度采集時(shí)間需要28天,而又由于采用16位的數(shù)據(jù)記錄格式,則8 KB的數(shù)據(jù)記錄存儲(chǔ)器最多可記錄的數(shù)為4 096個(gè),為了留出一定的存儲(chǔ)余量,在本設(shè)計(jì)中采樣速率選擇為每10分鐘采樣一個(gè)點(diǎn),則在這28天內(nèi)記錄的數(shù)據(jù)個(gè)數(shù)能達(dá)到4 032個(gè)。則采樣速率寄存器的低8位為0AH,高8位為00H。
(5)溫度報(bào)警寄存器及溫度報(bào)警使能寄存器的設(shè)置
考慮到系統(tǒng)的實(shí)際溫度變化范圍及DS1922E的溫度測(cè)量范圍,在本設(shè)計(jì)中,選取溫度T的最低值設(shè)為20 ℃、溫度的最高值設(shè)為135 ℃,根據(jù)溫度報(bào)警閾值TALM與溫度T的計(jì)算公式[8]:TALM=2T-28,可得低溫與高溫報(bào)警閾值分別為12(0CH)、242(F2H)。該溫度報(bào)警閾值的設(shè)置,主要是在實(shí)時(shí)監(jiān)測(cè)容器內(nèi)的溫度的變化時(shí),主機(jī)一旦查詢(xún)到溫度報(bào)警狀態(tài)寄存器中的到有低溫或是高溫報(bào)警狀態(tài)位置1,則說(shuō)明低溫已經(jīng)等于或低于20 ℃或是高溫已經(jīng)等于或高于135 ℃,則需要立即采取措施升溫或是降溫。要實(shí)現(xiàn)溫度報(bào)警,則溫度報(bào)警使能寄存器中的高溫報(bào)警使能位ETHA=1,低溫報(bào)警使能ETLA=1。初始化的通信過(guò)程的設(shè)計(jì)。由于本設(shè)計(jì)中初始化的寄存器都在寄存器頁(yè)1中,為不使地址出現(xiàn)中斷,在0200H~021FH之間忽略的地址單元對(duì)應(yīng)的數(shù)據(jù)也依次發(fā)送。在這些單元中除了0211H單元的數(shù)據(jù)規(guī)定為0FCH之外,其余的都發(fā)送空閑數(shù)據(jù)0FFH。其初始化的通信過(guò)程[8?9]如圖2所示。
2.2.3 啟動(dòng)一個(gè)新的任務(wù)
2.3 主機(jī)停止任務(wù)及讀取DS1922E采集記錄的數(shù)據(jù)
3 測(cè)試結(jié)果
4 結(jié) 語(yǔ)
該iButton溫度記錄器的溫度測(cè)量范圍較寬(15~140 ℃),耐腐蝕,壽命長(zhǎng),可自動(dòng)完成溫度測(cè)量任務(wù)的啟動(dòng)、數(shù)溫度數(shù)據(jù)的采集與記錄、數(shù)據(jù)的傳輸,與主機(jī)的連接簡(jiǎn)單、使用方便[10]。正是由于DS1922E高溫紐扣(iButton)溫度記錄器的上述優(yōu)點(diǎn),使得基于該溫度記錄器的高溫測(cè)量管理系統(tǒng)有較好的應(yīng)用前景。
參考文獻(xiàn)
[1] 劉武光.iButton溫度記錄器及其在冷鏈物流中的應(yīng)用[J].電子設(shè)計(jì)工程,2009(2):107?108.
[2] 王祖強(qiáng),于建華.iButton的工作原理及其特點(diǎn)[J].電子技術(shù)應(yīng)用,2003,29(1):60?61.
[3] Anon. DS1922E [EB/OL]. [2012?05?03]. http://baike.baidu.com/view/8502695.htm.
[4] 李有兵,林書(shū)句.基于DS18S20的多點(diǎn)溫度測(cè)量系統(tǒng)的設(shè)計(jì)[J].硅谷,2012(7):33?49.
[5] 盧艷宏,馮源.基于1?Wire網(wǎng)絡(luò)的iButton軟件設(shè)計(jì)[J].電腦學(xué)習(xí),2006(6):22?23.
[6] 董煒,王俊杰,楊士元.單總線(xiàn)測(cè)溫系統(tǒng)[J].自動(dòng)化儀表,2005,26(6):27?30.
[7] 趙永杰,徐源.基于DS18B20的溫度測(cè)量系統(tǒng)[J].現(xiàn)代電子技術(shù),2008,31(10):157?159.
[8] MAXIM. DS1922E數(shù)據(jù)手冊(cè)[EB/OL].[2009?08?01].http://www.ic37.com/icasp/pdf_open.asp?id=8120380_327456.
[9] 陳志英,李光輝.單總線(xiàn)(1?Wire Bus)技術(shù)及其應(yīng)用[J].電子設(shè)計(jì)工程,2003(8):4?6.
[10] 王天科,李樹(shù)良.新型信息載體iButton的基本原理及開(kāi)發(fā)應(yīng)用[J].現(xiàn)代電子技術(shù),2004,27(23):53?55.