關(guān) 閉

新聞中心

EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 無線傳感器網(wǎng)絡(luò)拓?fù)涞谋O(jiān)控與維護(hù)

無線傳感器網(wǎng)絡(luò)拓?fù)涞谋O(jiān)控與維護(hù)

作者: 時間:2012-05-21 來源:網(wǎng)絡(luò) 收藏

在同一條數(shù)據(jù)通路上的節(jié)點(diǎn)進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)時,數(shù)據(jù)傳遞路徑上的各個節(jié)點(diǎn)都會發(fā)現(xiàn)其父節(jié)點(diǎn)(數(shù)據(jù)由下而上)或者子節(jié)點(diǎn)(數(shù)據(jù)由上而下)的丟失,進(jìn)而調(diào)用void ZDOSynclndicationCB(byte type,uint16 shortAddr)函數(shù)。如圖4所示,如果網(wǎng)關(guān)發(fā)送數(shù)據(jù)到終端節(jié)點(diǎn)1,則在網(wǎng)關(guān)到終端節(jié)點(diǎn)1數(shù)據(jù)路徑上的所有節(jié)點(diǎn)(網(wǎng)關(guān)、路由1、路由2、終端1)都能夠發(fā)現(xiàn)其了節(jié)點(diǎn)的丟失;終端節(jié)點(diǎn)1發(fā)送數(shù)據(jù)到網(wǎng)關(guān),則路徑1上的所有節(jié)點(diǎn)都能發(fā)現(xiàn)其父節(jié)點(diǎn)的丟失。

該方法通過建立數(shù)據(jù)通路上起始節(jié)點(diǎn)和末端節(jié)點(diǎn)的數(shù)據(jù)通訊來實現(xiàn)整條路徑上節(jié)點(diǎn)丟失情況的獲取。其具體操作過程分為兩個部分:其一是父節(jié)點(diǎn)丟失情況的獲取。由前面提到的實施條件可知,終端節(jié)點(diǎn)無需任何人為操作就能夠發(fā)現(xiàn)其父節(jié)點(diǎn)的丟失,而無需對此部分做特殊處理,因而只需對路由節(jié)點(diǎn)做出處理。而由路由葉子節(jié)點(diǎn)(如圖4中路由節(jié)點(diǎn)2、4)向網(wǎng)關(guān)發(fā)送數(shù)據(jù)時,則可實現(xiàn)整條路徑上所有節(jié)點(diǎn)丟失情況的獲取。其二是了節(jié)點(diǎn)丟失情況的獲取。子節(jié)點(diǎn)丟失的獲取可以通過網(wǎng)關(guān)向葉子節(jié)點(diǎn)(圖4中所有終端節(jié)點(diǎn)和路由4)發(fā)送數(shù)據(jù)的方法來覆蓋整個中的所有節(jié)點(diǎn),從而使全部節(jié)點(diǎn)都能夠發(fā)現(xiàn)其了節(jié)點(diǎn)的丟失情況。

人為加入上述兩部分?jǐn)?shù)據(jù)通訊后,只要整個中有節(jié)點(diǎn)丟失,該丟失節(jié)點(diǎn)的父節(jié)點(diǎn)和子節(jié)點(diǎn)都會產(chǎn)生失步函數(shù)voidZDO_SyncIndicat ionCB(byte type,uint16 shortAddr)的調(diào)用,這樣就可以簡單地在該函數(shù)中添加向上層應(yīng)用報告的功能,實現(xiàn)中節(jié)點(diǎn)丟失信息獲取。并且數(shù)據(jù)通訊量由原來的28條減少到6條,從而大大減少了數(shù)據(jù)消耗和由此帶來的系統(tǒng)資源占用。

3 網(wǎng)絡(luò)

Z-stack協(xié)議棧在全功能節(jié)點(diǎn)中只與本節(jié)點(diǎn)直接關(guān)聯(lián)的節(jié)點(diǎn)信息的關(guān)聯(lián)表,沒有整體網(wǎng)絡(luò)信息的存儲功能。為了解決Z-stack關(guān)于網(wǎng)絡(luò)全貌信息缺失的缺陷,結(jié)合本文提出的網(wǎng)絡(luò)方法,設(shè)計一種的方法,在占用少量資源的情況下獲取整個網(wǎng)絡(luò)的拓?fù)湫畔?,并將信息整合到網(wǎng)關(guān)節(jié)點(diǎn)中統(tǒng)一維護(hù)和管理,從而建立網(wǎng)絡(luò)拓?fù)涞墓芾磙k法,實現(xiàn)具有自組織、自適應(yīng)能力的智能網(wǎng)絡(luò)管理機(jī)制。

3.1 管理模式

網(wǎng)絡(luò)信息管理可采用搜集模式和模式相結(jié)合的方式。搜集模式通過發(fā)送指令搜集網(wǎng)絡(luò)拓?fù)湫畔?,賦予用戶即時獲取當(dāng)前網(wǎng)絡(luò)結(jié)構(gòu)的能力;模式通過監(jiān)控從網(wǎng)絡(luò)組建起歷史網(wǎng)絡(luò)的結(jié)構(gòu)變化,實現(xiàn)網(wǎng)絡(luò)拓?fù)湫畔⒏?,從而整合為?dāng)前網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。

搜集模式在實現(xiàn)時,首先由網(wǎng)關(guān)設(shè)備廣播一個命令來搜集設(shè)備信息;然后,收到廣播信息的路由節(jié)點(diǎn)再按照一定的數(shù)據(jù)格式,由網(wǎng)關(guān)返回子節(jié)點(diǎn)關(guān)聯(lián)信息;當(dāng)網(wǎng)關(guān)收到各個路由節(jié)點(diǎn)的返回信息后,再將其組合為整個網(wǎng)絡(luò)中的設(shè)備信息。

監(jiān)控模式則是從網(wǎng)絡(luò)形成起,網(wǎng)關(guān)節(jié)點(diǎn)就開始監(jiān)控所有節(jié)點(diǎn)的狀態(tài);當(dāng)路由節(jié)點(diǎn)檢測到其子節(jié)點(diǎn)加入或者退出的時候,向網(wǎng)關(guān)上報該子節(jié)點(diǎn)的狀態(tài)變化信息,而網(wǎng)關(guān)節(jié)點(diǎn)檢測到子節(jié)點(diǎn)加入或者退出則不用上報,直接在網(wǎng)關(guān)內(nèi)部處理;當(dāng)網(wǎng)關(guān)接收到路由節(jié)點(diǎn)上報的狀態(tài)信息后,就會刪除或者增加該路由子節(jié)點(diǎn)的關(guān)聯(lián)信息,同時更新整體網(wǎng)絡(luò)結(jié)構(gòu)。

3.2 網(wǎng)絡(luò)拓?fù)浯鎯Y(jié)構(gòu)

網(wǎng)關(guān)節(jié)點(diǎn)作為整個網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)管理的中心,負(fù)責(zé)拓?fù)浣Y(jié)構(gòu)的添加、刪除和更新,因此,必須在網(wǎng)關(guān)節(jié)點(diǎn)存儲整體的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)信息。受網(wǎng)關(guān)資源的限制,本文采用分級動態(tài)鏈表的形式保存網(wǎng)絡(luò)拓?fù)湫畔ⅲ员阋暂^少的資源占用實現(xiàn)拓?fù)湫畔⒌膭討B(tài)存儲。本設(shè)計的網(wǎng)絡(luò)拓?fù)浯鎯Y(jié)構(gòu)如圖5所示。

e.JPG

圖5中,AssocLisHead是裝載路由節(jié)點(diǎn)頭信息的數(shù)組,包含有該路由節(jié)點(diǎn)的長地址、短地址、父節(jié)點(diǎn)短地址和擁有的子節(jié)點(diǎn)數(shù)以及指向其子節(jié)點(diǎn)鏈表assoc list的頭指針;assoclist鏈表中記載著這一路由下的了節(jié)點(diǎn)信息,包括子節(jié)點(diǎn)的短地址、長地址、類型、連接狀態(tài)等。在該路由下每增加一個子節(jié)點(diǎn),就會在assoc list鏈表中添加一個節(jié)點(diǎn)信息,當(dāng)節(jié)點(diǎn)離開時,又會將相對應(yīng)的鏈表刪除。這樣,網(wǎng)關(guān)就可以方便地對當(dāng)前網(wǎng)絡(luò)中的昕有節(jié)點(diǎn)的拓?fù)浜拖嚓P(guān)信息進(jìn)行查找、更新、維護(hù)。

3.3 網(wǎng)絡(luò)維護(hù)方案

網(wǎng)絡(luò)維護(hù)的實施要建立網(wǎng)絡(luò)中所有類型節(jié)點(diǎn)間的區(qū)分與協(xié)作機(jī)制。區(qū)分是根據(jù)節(jié)點(diǎn)類型的不同、事件類型的不同做出區(qū)別處理;協(xié)作是在所有節(jié)點(diǎn)間建立連動響應(yīng)機(jī)制,相互配合,并實現(xiàn)信息的匯聚和統(tǒng)一管理。具體的網(wǎng)絡(luò)維護(hù)分為事件響應(yīng)和信息維護(hù)兩部分。

3. 3. 1 拓?fù)渥兓录捻憫?yīng)

拓?fù)渥兓饕侵腹?jié)點(diǎn)加入事件和節(jié)點(diǎn)退出事件。當(dāng)節(jié)點(diǎn)加入事件是指節(jié)點(diǎn)加入網(wǎng)絡(luò)時,其父節(jié)點(diǎn)負(fù)責(zé)將該子節(jié)點(diǎn)加入信息上報網(wǎng)關(guān);節(jié)點(diǎn)退出事件則是指獲取到的網(wǎng)絡(luò)節(jié)點(diǎn)丟失信息的處理。處理可分為兩種情況:一種是當(dāng)傳遞來的type=1時,即丟失節(jié)點(diǎn)為本節(jié)點(diǎn)的父節(jié)點(diǎn)時,開啟網(wǎng)絡(luò)加入流程,使節(jié)點(diǎn)可以重新加入網(wǎng)絡(luò),并恢復(fù)網(wǎng)絡(luò)的正常運(yùn)行;第二種情況是type=0時,即本節(jié)點(diǎn)發(fā)現(xiàn)其中一子節(jié)點(diǎn)丟失。本方法對于長時間無法連接的子節(jié)點(diǎn),將啟動移除(LEAVE)流程,將該子節(jié)點(diǎn)從網(wǎng)絡(luò)中刪除,同時向網(wǎng)關(guān)節(jié)點(diǎn)報告子節(jié)點(diǎn)退出的消息。

需要注意的是:當(dāng)子節(jié)點(diǎn)丟失時,有的時候是真正丟失了(長時間或永久無法連接),但更多的時候只是暫時地失去聯(lián)系,隨著子節(jié)點(diǎn)的重新加入申請,又可以加入網(wǎng)絡(luò),恢復(fù)正常的運(yùn)行狀態(tài)。因此,設(shè)計時需要將暫時失步和真正丟失這兩種情況區(qū)分開,再分別做出合理的處理。



評論


相關(guān)推薦

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

關(guān)閉