無(wú)線傳感器網(wǎng)絡(luò)自組網(wǎng)協(xié)議的實(shí)現(xiàn)方法
圖4 上位機(jī)的串口中斷流程
上位機(jī)接收到完整的數(shù)據(jù)包后,會(huì)根據(jù)數(shù)據(jù)包中的關(guān)鍵字進(jìn)行不同的處理。發(fā)送數(shù)據(jù)時(shí),根據(jù)保存的網(wǎng)絡(luò)數(shù)據(jù)計(jì)算中轉(zhuǎn)數(shù)據(jù)的路徑。為節(jié)約基站節(jié)點(diǎn)的能量,網(wǎng)絡(luò)中有很多的數(shù)據(jù)處理是在上位機(jī)中進(jìn)行的。
4 實(shí)驗(yàn)結(jié)果
系統(tǒng)研制完成后,需要設(shè)計(jì)實(shí)驗(yàn)來(lái)考核自組網(wǎng)效果及網(wǎng)絡(luò)性能。實(shí)驗(yàn)中,首先關(guān)注的問題是隨機(jī)分布的傳感器節(jié)點(diǎn)在自定義的組織協(xié)議下的組網(wǎng)情況。為了考核自組織效果,首先讓基站節(jié)點(diǎn)通過(guò)串口與上位機(jī)相連并打開上位機(jī)處理軟件;然后打開傳感器節(jié)點(diǎn)的電源,并通過(guò)人工安放或者隨機(jī)撒播方式布置好傳感器節(jié)點(diǎn)。
借助上位機(jī)的處理軟件,可以非常清楚地看到整個(gè)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)和網(wǎng)絡(luò)節(jié)點(diǎn)的環(huán)境參數(shù)。當(dāng)上位機(jī)處理軟件檢測(cè)到網(wǎng)絡(luò)內(nèi)的傳感器節(jié)點(diǎn)后,會(huì)在上位機(jī)上進(jìn)行顯示并保存?zhèn)鞲衅鞴?jié)點(diǎn)的數(shù)據(jù)。圖5為系統(tǒng)演示的11個(gè)傳感器節(jié)點(diǎn)自由組網(wǎng)時(shí)界面的顯示情況。組網(wǎng)時(shí)間約3 min。
圖5中的黑色曲線為數(shù)據(jù)的傳輸路徑。當(dāng)鼠標(biāo)點(diǎn)擊某個(gè)節(jié)點(diǎn),會(huì)彈出該節(jié)點(diǎn)的信息采集卡。信息采集卡反映了節(jié)點(diǎn)的狀態(tài)量、溫度值、電壓值以及剩余能量,通過(guò)采集卡可直接對(duì)該節(jié)點(diǎn)進(jìn)行遠(yuǎn)程控制。
圖5 網(wǎng)絡(luò)拓?fù)浼皵?shù)據(jù)傳輸路線圖
在檢測(cè)網(wǎng)絡(luò)性能的實(shí)驗(yàn)中,讓傳感器節(jié)點(diǎn)一級(jí)一級(jí)分布下去。通過(guò)上位機(jī)軟件可以很清楚地看到所投放的傳感器節(jié)點(diǎn)可組成的最大跳數(shù)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。當(dāng)網(wǎng)絡(luò)組成后,可通過(guò)上位機(jī)界面對(duì)網(wǎng)內(nèi)各個(gè)節(jié)點(diǎn)進(jìn)行遠(yuǎn)程控制;當(dāng)各個(gè)節(jié)點(diǎn)發(fā)生狀態(tài)突變時(shí),會(huì)以中斷形式喚醒節(jié)點(diǎn),以能量?jī)?yōu)先的原則逐級(jí)傳送到基站節(jié)點(diǎn),并在上位機(jī)界面上進(jìn)行相應(yīng)顯示。
當(dāng)新的傳感器節(jié)點(diǎn)加入到網(wǎng)絡(luò)中,系統(tǒng)會(huì)及時(shí)反映新加入節(jié)點(diǎn)。當(dāng)系統(tǒng)檢測(cè)到傳感器節(jié)點(diǎn)由于電源電壓低于工作電壓,或人為破壞引起失效時(shí),會(huì)從網(wǎng)絡(luò)中刪除該節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)及相關(guān)信息,檢測(cè)方法有手動(dòng)刷新和定時(shí)采樣兩種。網(wǎng)絡(luò)內(nèi)傳送的數(shù)據(jù)都保存在網(wǎng)絡(luò)數(shù)據(jù)庫(kù)中,便于查尋。通過(guò)上位機(jī)軟件還能夠?qū)W(wǎng)絡(luò)進(jìn)行復(fù)位,讓所有傳感器節(jié)點(diǎn)進(jìn)行重新組網(wǎng)。
結(jié)語(yǔ)
本文首先提出了一種無(wú)線傳感器網(wǎng)絡(luò)的自組織協(xié)議,然后選用MSP430F149和nRF905設(shè)計(jì)了微型傳感器節(jié)點(diǎn),并實(shí)現(xiàn)了一種低功耗無(wú)線網(wǎng)絡(luò),其特點(diǎn)如下:
?、?利用無(wú)線通信攜帶的信息自動(dòng)生成多級(jí)網(wǎng)狀網(wǎng)絡(luò),并按能量?jī)?yōu)先的原則自動(dòng)生成數(shù)據(jù)的傳輸路徑。
?、?采取應(yīng)答和退避機(jī)制,防止多個(gè)傳感器節(jié)點(diǎn)向一個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí)所導(dǎo)致的數(shù)據(jù)丟失。
?、?無(wú)線通信的雙向性,不僅被動(dòng)顯示各個(gè)傳感器節(jié)點(diǎn)的信息,還可主動(dòng)對(duì)每個(gè)傳感器節(jié)點(diǎn)進(jìn)行遠(yuǎn)程控制。
④ 使用支持低功耗工作模式的硬件,配合軟件上的智能控制策略來(lái)實(shí)現(xiàn)系統(tǒng)低功耗,盡可能延長(zhǎng)網(wǎng)絡(luò)壽命。
評(píng)論