新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Internet的嵌入式多點(diǎn)溫度監(jiān)控系統(tǒng)

基于Internet的嵌入式多點(diǎn)溫度監(jiān)控系統(tǒng)

作者: 時(shí)間:2009-09-22 來源:網(wǎng)絡(luò) 收藏
2 系統(tǒng)軟件設(shè)計(jì)
這里主要介紹關(guān)于多個(gè)DS1825的自動(dòng)搜索算法,由于系統(tǒng)中使用了多片DS1825構(gòu)成傳感器網(wǎng)絡(luò),因此,如何準(zhǔn)確、有效地對(duì)每一傳感器進(jìn)行尋址成為該系統(tǒng)的一個(gè)核心問題。結(jié)合DS1825的實(shí)際特點(diǎn)和系統(tǒng)需要,提出如下解決方案:首先利用DS1825內(nèi)部報(bào)警上限寄存器(TH寄存器)存放傳感器的編號(hào),并將其編號(hào)貼在溫度傳感器表面。由于TH寄存器具有掉電不丟失數(shù)據(jù)功能,因此,便把每片DS1825的惟一64位注冊碼及其編號(hào)一一對(duì)應(yīng)起來。這一過程需要對(duì)DS1825進(jìn)行單獨(dú)編程。然后,將確定好編號(hào)的DS1825接入單線網(wǎng)絡(luò),利用DS1825特有的單線網(wǎng)絡(luò)自動(dòng)搜索功能,即可搜尋到每片DS1825的注冊碼,再利用該注冊碼和相應(yīng)的ROM操作指令,即可從每片DS1825的TH寄存器中讀出相應(yīng)的設(shè)定編號(hào),實(shí)現(xiàn)多個(gè)DS1825的尋址功能。
每片DS1825有惟一的64位注冊碼,存儲(chǔ)在只讀存儲(chǔ)器ROM中,其中低8位是產(chǎn)品的工廠代碼,接著是每個(gè)器件的惟一序號(hào),共48位,最高8位是前56位的循環(huán)冗余校驗(yàn)碼。這就準(zhǔn)許總線主機(jī)對(duì)總線上特定的DS1825進(jìn)行尋址。只有與64位注冊碼嚴(yán)格相符的DS1825,才能對(duì)后續(xù)的操作做出反應(yīng),所有與64位注冊碼不符的DS1825將等待復(fù)位脈沖。搜索算法首先通過復(fù)位和在線應(yīng)答時(shí)隙將單線總線上所有DS1825復(fù)位。成功地執(zhí)行該操作后發(fā)送1 B的搜索命令,使所有連接到單總線的DS1825準(zhǔn)備就緒,開始進(jìn)行搜索操作。搜索命令發(fā)出之后,開始實(shí)際的搜索過程。首先,總線上所有DS1825同時(shí)發(fā)送注冊碼的第1位,按照單線總線特性,當(dāng)所有DS1825同時(shí)應(yīng)答主機(jī)時(shí),結(jié)果相當(dāng)于全部被發(fā)送數(shù)據(jù)位的邏輯“與”。DS1825發(fā)送其注冊碼的第1位后,主機(jī)啟動(dòng)下一位操作,接著DS1825發(fā)送第1位數(shù)據(jù)的補(bǔ)碼。從兩次讀到的數(shù)據(jù)位可以對(duì)注冊碼的第1位做出幾種判斷,如表1所列。

本文引用地址:http://butianyuan.cn/article/152337.htm

然后,主機(jī)向總線上的所有器件發(fā)回一個(gè)指定位。如果DS1825注冊碼的當(dāng)前位的值與該數(shù)據(jù)位匹配,則繼續(xù)參與搜索過程;若DS1825的當(dāng)前位與這不匹配,則該器件轉(zhuǎn)換到等待狀態(tài)并保持等待狀態(tài),直到下一個(gè)復(fù)位信號(hào)到來。其余63位注冊碼的搜索依然按照這種讀2位寫1位的模式進(jìn)行重復(fù)操作。按照這種搜索算法進(jìn)行下去,最終除了惟一一個(gè)DS1825外,所有DS1825將等待狀態(tài),經(jīng)過最后一輪檢測就可得到最后保留未進(jìn)入等待狀態(tài)的DS1825的注冊碼。在后續(xù)搜索過程中選用不同的路徑或分支來查找其他器件的注冊碼,即可完成所有器件注冊碼的識(shí)別。
下位機(jī)軟件采用MCS51匯編語言編寫,在中斷服務(wù)程序中,實(shí)現(xiàn)用戶輸入以及和以太網(wǎng)控制器的通信功能;在主程序中,實(shí)現(xiàn)溫度傳感器網(wǎng)絡(luò)的自動(dòng)搜索、編號(hào)排序、獲取溫度信息等,并根據(jù)預(yù)先設(shè)定的溫度上下限值,實(shí)現(xiàn)相應(yīng)的報(bào)警功能。由于設(shè)計(jì)中使用傳感器網(wǎng)絡(luò)的自動(dòng)搜索算法,因此,當(dāng)對(duì)網(wǎng)絡(luò)中的溫度傳感器作出調(diào)整(如更換、添加、刪除等操作)時(shí),系統(tǒng)具有很強(qiáng)的自適應(yīng)能力。下位機(jī)軟件程序流程圖如圖4所示。

3 測量結(jié)果
網(wǎng)絡(luò)化多點(diǎn)溫度測控系統(tǒng)對(duì)被測對(duì)象溫度的監(jiān)控結(jié)果在PC機(jī)的顯示如圖5所示,由圖可清楚觀察到溫度數(shù)據(jù)隨時(shí)間變化而變化的趨勢。

4 結(jié) 語
多點(diǎn)溫度靈活性高、交互性強(qiáng),可在線根據(jù)需要隨時(shí)修改溫度上下限值,系統(tǒng)設(shè)計(jì)開發(fā)過程中充分利用了網(wǎng)絡(luò)技術(shù)與多點(diǎn)溫度監(jiān)控技術(shù)相結(jié)合的方法及軟硬件協(xié)同設(shè)計(jì)的思想,采用模塊化設(shè)計(jì),稍加裁剪改造可適用于多種不同場合的分布式遠(yuǎn)程多點(diǎn)溫度智能。該系統(tǒng)經(jīng)實(shí)驗(yàn)測試,穩(wěn)定可靠,測量精度高,實(shí)時(shí)性強(qiáng)且充分利用了現(xiàn)有網(wǎng)絡(luò),利于傳統(tǒng)的RS 485溫度快速改造為以太網(wǎng)遠(yuǎn)程智能監(jiān)控系統(tǒng),取得更好的社會(huì)經(jīng)濟(jì)效益。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
蜂鳴器相關(guān)文章:蜂鳴器原理

上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

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

關(guān)閉