本申請(qǐng)涉及通信技術(shù)領(lǐng)域,尤其涉及無線傳感器網(wǎng)絡(luò)(wsn,wirelesssensornetwork)領(lǐng)域,具體涉及一種基于動(dòng)態(tài)鏈的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法,該方法可用于無線傳感器網(wǎng)絡(luò)的動(dòng)態(tài)目標(biāo)跟蹤與定位等。
背景技術(shù):
近年來,隨著傳感技術(shù)、嵌入式技術(shù)和無線通信技術(shù)的飛速發(fā)展和日益成熟,具有感知能力、計(jì)算能力和通信能力的wsn迅速成為通信領(lǐng)域研究的熱點(diǎn)。wsn是由部署在特定區(qū)域內(nèi)的大量廉價(jià)微型傳感器節(jié)點(diǎn)所組成,對(duì)監(jiān)測對(duì)象的信息實(shí)時(shí)的感知、采集和處理,并將處理后的信息傳送到感興趣的網(wǎng)絡(luò)用戶終端。與傳統(tǒng)無線網(wǎng)絡(luò)相比,wsn具有分布式處理帶來的高精度監(jiān)測、大范圍部署和多領(lǐng)域應(yīng)用等眾多優(yōu)點(diǎn),具有巨大的應(yīng)用前景和價(jià)值,已經(jīng)引起了世界軍事部門、工業(yè)領(lǐng)域、科研機(jī)構(gòu)和學(xué)術(shù)界的廣泛關(guān)注。在wsn的諸多應(yīng)用中,移動(dòng)目標(biāo)跟蹤是一項(xiàng)基本功能,它在軍事和民用領(lǐng)域都有著重要的價(jià)值,例如用于南海島礁監(jiān)測、敵方目標(biāo)探測、災(zāi)難救援、室內(nèi)外協(xié)同跟蹤定位、野生動(dòng)物跟蹤監(jiān)測、智能交通管理等。
然而,在面向目標(biāo)跟蹤的wsn中隨著目標(biāo)位置的移動(dòng),如果靠近目標(biāo)的傳感器節(jié)點(diǎn)沒有及時(shí)加入跟蹤就會(huì)影響整個(gè)系統(tǒng)的跟蹤性能,如果遠(yuǎn)離目標(biāo)的傳感器節(jié)點(diǎn)沒有及時(shí)退出跟蹤則就會(huì)消耗過多不必要的能量,這就需要傳感器節(jié)點(diǎn)間有一個(gè)有效的自組織方法來實(shí)現(xiàn)。現(xiàn)有的面向目標(biāo)跟蹤wsn的節(jié)點(diǎn)自組織和協(xié)作方式主要分為:基于分簇的節(jié)點(diǎn)協(xié)作和基于動(dòng)態(tài)樹的節(jié)點(diǎn)協(xié)作方法。其中基于分簇的節(jié)點(diǎn)協(xié)作又可以被分為基于靜態(tài)簇和基于動(dòng)態(tài)簇兩種結(jié)構(gòu),在基于靜態(tài)簇的方法中網(wǎng)絡(luò)被劃分成不同的區(qū)域,每個(gè)區(qū)域中選擇一個(gè)簇頭來負(fù)責(zé)管理其成員節(jié)點(diǎn)并收集本區(qū)域內(nèi)的感應(yīng)數(shù)據(jù),并對(duì)這些數(shù)據(jù)進(jìn)行融合處理后發(fā)送給匯聚節(jié)點(diǎn)。對(duì)于大規(guī)模wsn,基于分簇的節(jié)點(diǎn)協(xié)作方法是一種有效的節(jié)點(diǎn)組織方法,它使得大部分節(jié)點(diǎn)只需要在局部范圍內(nèi)傳送自己的感應(yīng)數(shù)據(jù),提高了信道的重復(fù)利用率,降低了數(shù)據(jù)傳輸之間的碰撞和干擾,同時(shí)極大地提高了整個(gè)系統(tǒng)的可擴(kuò)展性和延長了網(wǎng)絡(luò)壽命。但是對(duì)于目標(biāo)跟蹤應(yīng)用來說,由于移動(dòng)目標(biāo)的位置隨機(jī)改變,同一個(gè)目標(biāo)常常被不同分簇中的節(jié)點(diǎn)檢測到,這些節(jié)點(diǎn)把觀測到的數(shù)據(jù)分別發(fā)送給各自的族頭,并通過不同的路由轉(zhuǎn)發(fā)到匯聚節(jié)點(diǎn),這使得相關(guān)性很強(qiáng)的同一個(gè)目標(biāo)的感知數(shù)據(jù)難以被融合,最終導(dǎo)致網(wǎng)絡(luò)中較多冗余數(shù)據(jù)的傳輸?;趧?dòng)態(tài)簇方法的主要思想是沿著目標(biāo)移動(dòng)的軌跡動(dòng)態(tài)的建立一系列的簇,選擇離目標(biāo)最近的節(jié)點(diǎn)為簇頭節(jié)點(diǎn),當(dāng)目標(biāo)移出該簇的區(qū)域時(shí),該簇被解散,并且根據(jù)目標(biāo)的位置重新建立一個(gè)簇來跟蹤目標(biāo)。雖然在動(dòng)態(tài)簇中同一目標(biāo)的感知數(shù)據(jù)可以在簇頭處得到融合,然而隨著目標(biāo)的移動(dòng),需要重新選擇簇頭節(jié)點(diǎn)并建立新的簇,這樣整個(gè)網(wǎng)絡(luò)在簇結(jié)構(gòu)的重建和維護(hù)上開銷過大。在基于動(dòng)態(tài)樹的方法中,常常以目標(biāo)周圍的某個(gè)節(jié)點(diǎn)為根來建立一個(gè)動(dòng)態(tài)樹來跟蹤目標(biāo),該樹包括了移動(dòng)目標(biāo)周圍的傳感器節(jié)點(diǎn),并且隨著目標(biāo)的移動(dòng),動(dòng)態(tài)樹能夠自適應(yīng)的添加和刪除相應(yīng)的節(jié)點(diǎn)。然而,當(dāng)目標(biāo)位置改變時(shí),樹的根節(jié)點(diǎn)需要被更換并且動(dòng)態(tài)樹本身的結(jié)構(gòu)也需要被重新建立,這使得此類方法的能量利用率大大降低。
因此目前針對(duì)目標(biāo)跟蹤的節(jié)點(diǎn)自組織方法和網(wǎng)絡(luò)架構(gòu)并不能得到滿意的系統(tǒng)性能,急需研究一種面向移動(dòng)目標(biāo)跟蹤的wsn節(jié)點(diǎn)之間的自組織和協(xié)作方式來提高跟蹤效率并節(jié)省網(wǎng)絡(luò)能耗。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)的目的在于提出了一種改進(jìn)的基于動(dòng)態(tài)鏈的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法(dcbc,adynamicchain-basedcollaboration),來解決以上背景技術(shù)部分提到的技術(shù)問題。本申請(qǐng)受國家自然科學(xué)基金青年項(xiàng)目號(hào)為61601352的項(xiàng)目和西安電子科技大學(xué)自由探索項(xiàng)目的資助。
本申請(qǐng)?zhí)峁┑幕趧?dòng)態(tài)鏈的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法,所述方法包括:當(dāng)目標(biāo)進(jìn)入網(wǎng)絡(luò)區(qū)域時(shí),建立傳輸能量消耗最小的跟蹤鏈,其中,所述跟蹤鏈的節(jié)點(diǎn)包括動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)和動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn);隨著所述目標(biāo)的移動(dòng),有需要退出所述跟蹤鏈的節(jié)點(diǎn),該節(jié)點(diǎn)向相鄰的兩節(jié)點(diǎn)發(fā)送退出消息,所述兩節(jié)點(diǎn)根據(jù)接收的所述退出消息組建成新的相鄰節(jié)點(diǎn);隨著所述目標(biāo)的移動(dòng),有新節(jié)點(diǎn)需要加入所述跟蹤鏈,計(jì)算得出所述新節(jié)點(diǎn)加入到所述跟蹤鏈的不同位置時(shí),所述跟蹤鏈的傳輸能量消耗值的增加量最小的位置,作為所述新節(jié)點(diǎn)加入所述跟蹤鏈的位置;所述跟蹤鏈的每個(gè)動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)接收來自上游節(jié)點(diǎn)發(fā)送的感應(yīng)數(shù)據(jù),并把所述感應(yīng)數(shù)據(jù)和自己節(jié)點(diǎn)所觀測到的數(shù)據(jù)進(jìn)行合并融合處理后生成新的感應(yīng)數(shù)據(jù),再將所述新的感應(yīng)數(shù)據(jù)發(fā)送給該節(jié)點(diǎn)的下游節(jié)點(diǎn),直至下游節(jié)點(diǎn)是所述動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn),所述動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)把接收到的感應(yīng)數(shù)據(jù)和自己節(jié)點(diǎn)所觀測到的數(shù)據(jù)進(jìn)行合并融合后發(fā)送給匯聚節(jié)點(diǎn);所述跟蹤鏈上的每個(gè)節(jié)點(diǎn)輪流擔(dān)任動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn),且每個(gè)節(jié)點(diǎn)根據(jù)最短擔(dān)任期限、該節(jié)點(diǎn)與所述匯聚節(jié)點(diǎn)間的距離、該節(jié)點(diǎn)的剩余能量計(jì)算該節(jié)點(diǎn)擔(dān)任動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)的期限。
在一些實(shí)施例中,所述當(dāng)目標(biāo)進(jìn)入網(wǎng)絡(luò)區(qū)域時(shí),建立傳輸能量消耗最小的跟蹤鏈,包括:當(dāng)目標(biāo)進(jìn)入網(wǎng)絡(luò)區(qū)域時(shí),各個(gè)網(wǎng)格頭節(jié)點(diǎn)接收匯聚節(jié)點(diǎn)發(fā)送的目標(biāo)信息,并根據(jù)所述目標(biāo)信息喚醒相應(yīng)網(wǎng)格成員節(jié)點(diǎn);第一個(gè)檢測到目標(biāo)的網(wǎng)格頭節(jié)點(diǎn)向被喚醒的各個(gè)網(wǎng)格成員節(jié)點(diǎn)和各個(gè)網(wǎng)格頭節(jié)點(diǎn)發(fā)送建立跟蹤鏈消息,所述第一個(gè)檢測到目標(biāo)的網(wǎng)格頭節(jié)點(diǎn)首先加入跟蹤鏈并創(chuàng)建鏈頭令牌成為初始的動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn);所述動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)接收所述已喚醒的各個(gè)網(wǎng)格成員節(jié)點(diǎn)和各個(gè)網(wǎng)格頭節(jié)點(diǎn)發(fā)送的節(jié)點(diǎn)信息,其中,節(jié)點(diǎn)信息是指該節(jié)點(diǎn)在接收到所述建立跟蹤鏈消息后返回的該節(jié)點(diǎn)的標(biāo)識(shí)id和位置信息;所述動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)根據(jù)已接收的各個(gè)網(wǎng)格成員節(jié)點(diǎn)和各個(gè)網(wǎng)格頭節(jié)點(diǎn)的節(jié)點(diǎn)信息建立傳輸能量消耗最小的跟蹤鏈,網(wǎng)格成員節(jié)點(diǎn)和網(wǎng)格頭節(jié)點(diǎn)加入所述跟蹤鏈后變成動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)。
在一些實(shí)施例中,所述基于動(dòng)態(tài)鏈的無線傳感器節(jié)點(diǎn)協(xié)作方法方法還包括:所述跟蹤鏈上的節(jié)點(diǎn)的通信模塊在有數(shù)據(jù)需要收發(fā)時(shí)處于活動(dòng)狀態(tài),其它時(shí)間則處于關(guān)閉狀態(tài)。
在一些實(shí)施例中,所述基于動(dòng)態(tài)鏈的無線傳感器節(jié)點(diǎn)協(xié)作方法方法還包括:所述跟蹤鏈上的節(jié)點(diǎn)可以根據(jù)數(shù)據(jù)發(fā)送的距離來調(diào)整自己的發(fā)射功率。
本申請(qǐng)?zhí)峁┑幕趧?dòng)態(tài)鏈的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法,通過在目標(biāo)周圍建立一個(gè)動(dòng)態(tài)的跟蹤鏈,隨著目標(biāo)的移動(dòng),跟蹤鏈中的遠(yuǎn)離目標(biāo)的節(jié)點(diǎn)可以退出跟蹤鏈,新的節(jié)點(diǎn)可以加入跟蹤鏈,這樣既保證了系統(tǒng)的跟蹤性能又節(jié)省了節(jié)點(diǎn)的能量消耗,并且在感應(yīng)數(shù)據(jù)傳輸時(shí),每個(gè)動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)接收來自上游節(jié)點(diǎn)發(fā)送的數(shù)據(jù),把該數(shù)據(jù)和自己所觀測到的數(shù)據(jù)合并融合處理后再發(fā)送給該節(jié)點(diǎn)的下游節(jié)點(diǎn),最后由動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)把融合好的數(shù)據(jù)發(fā)送給匯聚節(jié)點(diǎn),因此感應(yīng)數(shù)據(jù)沿著動(dòng)態(tài)跟蹤鏈傳輸?shù)拿恳徊蕉伎梢员缓喜⒑腿诤?,在?shù)據(jù)傳輸方面也節(jié)省了較多的能量。當(dāng)有節(jié)點(diǎn)要加入或者退出跟蹤鏈時(shí)只需要通知自己相鄰的兩個(gè)節(jié)點(diǎn),并且當(dāng)動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)改變時(shí),不需要重新建立動(dòng)態(tài)跟蹤鏈。
附圖說明
通過閱讀參照以下附圖所作的對(duì)非限制性實(shí)施例所作的詳細(xì)描述,本申請(qǐng)的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯。
圖1是根據(jù)本申請(qǐng)的網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法的一個(gè)實(shí)施例的流程圖;
圖2是根據(jù)本申請(qǐng)的網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法的建立的一條跟蹤鏈的示意圖;
圖3是動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)退出跟蹤鏈的示意圖;
圖4是節(jié)點(diǎn)加入動(dòng)態(tài)跟蹤鏈的示意圖;
圖5是動(dòng)態(tài)跟蹤鏈上節(jié)點(diǎn)的通信模塊的睡眠活動(dòng)時(shí)間安排的示意圖;
圖6是網(wǎng)絡(luò)中鏈結(jié)構(gòu)或者樹結(jié)構(gòu)的建立所需要消耗的能量;
圖7是網(wǎng)絡(luò)初始化和鏈結(jié)構(gòu)或樹結(jié)構(gòu)的建立所消耗的時(shí)間;
圖8是不同方法中數(shù)據(jù)收集的平均延遲隨著網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)量的變化圖;
圖9是不同方法中網(wǎng)絡(luò)的生命周期。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本申請(qǐng)作進(jìn)一步的詳細(xì)說明。可以理解的是,此處所描述的具體實(shí)施例僅僅用于解釋相關(guān)發(fā)明,而非對(duì)該發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與有關(guān)發(fā)明相關(guān)的部分。
需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本申請(qǐng)。
圖1示出了根據(jù)本申請(qǐng)的基于動(dòng)態(tài)鏈的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法的一個(gè)實(shí)施例的流程100。所述的基于動(dòng)態(tài)鏈的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法,包括以下步驟:
步驟101,當(dāng)目標(biāo)進(jìn)入網(wǎng)絡(luò)區(qū)域時(shí),建立傳輸能量消耗最小的跟蹤鏈。
在本實(shí)施例中,我們考慮一個(gè)靜態(tài)的無線傳感器網(wǎng)絡(luò)wsn,該網(wǎng)絡(luò)由一個(gè)匯聚節(jié)點(diǎn)和若干個(gè)隨機(jī)分布的傳感器節(jié)點(diǎn)(ni,i∈[1,p])組成,其中p表示傳感器節(jié)點(diǎn)的個(gè)數(shù),這些節(jié)點(diǎn)分布在一個(gè)m×n的二維區(qū)域內(nèi)。另外,該網(wǎng)絡(luò)還具有以下屬性和假設(shè):
●匯聚節(jié)點(diǎn)的位置固定并且具有充足的外界能量供應(yīng),不受能量限制。匯聚節(jié)點(diǎn)從網(wǎng)絡(luò)區(qū)域內(nèi)收集感應(yīng)數(shù)據(jù)。
●傳感器節(jié)點(diǎn)的分布相互獨(dú)立,每個(gè)節(jié)點(diǎn)是相同性質(zhì)并是能量有限的。
●每個(gè)傳感器節(jié)點(diǎn)可以通過一些定位算法來表示該節(jié)點(diǎn)的位置。
●假設(shè)每個(gè)傳感器節(jié)點(diǎn)的傳輸功率是可以調(diào)節(jié)的,節(jié)點(diǎn)可以根據(jù)傳輸距離來調(diào)整自己的發(fā)射功率。
●在網(wǎng)絡(luò)初始化后,節(jié)點(diǎn)以網(wǎng)格的形式來組織,每個(gè)網(wǎng)格中包括一個(gè)頭節(jié)點(diǎn)和若干個(gè)成員節(jié)點(diǎn),頭節(jié)點(diǎn)分別管理各自的成員節(jié)點(diǎn),并根據(jù)從匯聚節(jié)點(diǎn)處得到的目標(biāo)信息來選擇成員節(jié)點(diǎn)以執(zhí)行跟蹤任務(wù)。由于網(wǎng)格頭節(jié)點(diǎn)一直保持活動(dòng)狀態(tài),能量消耗的快,因此它會(huì)周期性地被其它成員節(jié)點(diǎn)替換。
在本實(shí)施例中,雖然把整個(gè)網(wǎng)絡(luò)劃分成網(wǎng)格的形式來說明我們提出的基于動(dòng)態(tài)鏈的節(jié)點(diǎn)協(xié)作方法dcbc,但是該方法也可以應(yīng)用在其它分層結(jié)構(gòu)的網(wǎng)絡(luò)或者是平面拓?fù)浣Y(jié)構(gòu)的網(wǎng)絡(luò)中。
在本實(shí)施例中,為了可靠的跟蹤目標(biāo)并及時(shí)收集目標(biāo)信息,所有節(jié)點(diǎn)被分為以下四種角色:網(wǎng)格成員節(jié)點(diǎn)(gm,gridmember)、網(wǎng)格頭節(jié)點(diǎn)(gh,gridhead)、動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)(tcm,trackingchainmember)和動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)(tch,trackingchainhead)。不同的節(jié)點(diǎn)角色對(duì)應(yīng)的通信范圍也不相同,節(jié)點(diǎn)的通信范圍主要包括:網(wǎng)格內(nèi)的通信、網(wǎng)格之間的通信和網(wǎng)格和匯聚節(jié)點(diǎn)之間的通信。節(jié)點(diǎn)可以按照相對(duì)應(yīng)的角色來調(diào)整自己的通信范圍和睡眠周期以便有效的利用能量。
在本實(shí)施例中,網(wǎng)格頭節(jié)點(diǎn)gh總是處于活動(dòng)狀態(tài),接收來自于匯聚節(jié)點(diǎn)發(fā)送的目標(biāo)信息,當(dāng)目標(biāo)進(jìn)入網(wǎng)絡(luò)區(qū)域時(shí),各個(gè)網(wǎng)格頭節(jié)點(diǎn)gh根據(jù)所接收的目標(biāo)信息喚醒相應(yīng)的網(wǎng)格成員節(jié)點(diǎn)gm。所有被喚醒的網(wǎng)格成員節(jié)點(diǎn)都在上述目標(biāo)的周圍,相對(duì)距離比較近。第一個(gè)檢測到目標(biāo)的網(wǎng)格頭節(jié)點(diǎn)向周圍所有被喚醒的網(wǎng)格成員節(jié)點(diǎn)和各個(gè)網(wǎng)格頭節(jié)點(diǎn)發(fā)送建立跟蹤鏈的消息“building_chain”以啟動(dòng)動(dòng)態(tài)鏈的建立程序,該第一個(gè)檢測到目標(biāo)的網(wǎng)格頭節(jié)點(diǎn)首先加入跟蹤鏈并創(chuàng)建鏈頭令牌作為初始的動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch。目標(biāo)周圍的各個(gè)網(wǎng)格頭節(jié)點(diǎn)gh和各個(gè)被喚醒的網(wǎng)格成員節(jié)點(diǎn)gm收到該消息后,向初始的動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch返回自己的節(jié)點(diǎn)信息,其中,節(jié)點(diǎn)信息是該節(jié)點(diǎn)的標(biāo)識(shí)(id,identification)和位置信息等,即在上述第一檢測到目標(biāo)的網(wǎng)格頭節(jié)點(diǎn)的通信范圍內(nèi),所有處于工作狀態(tài)的其它節(jié)點(diǎn)都會(huì)收到該節(jié)點(diǎn)發(fā)送的建立跟蹤鏈的消息,并返回自己的節(jié)點(diǎn)信息。tch節(jié)點(diǎn)根據(jù)各個(gè)網(wǎng)格頭節(jié)點(diǎn)和各個(gè)網(wǎng)格成員節(jié)點(diǎn)返回的節(jié)點(diǎn)信息建立一個(gè)傳輸能量消耗最小的跟蹤鏈,即建立一個(gè)∑dα值最小的跟蹤鏈,其中d表示跟蹤鏈上相鄰兩個(gè)節(jié)點(diǎn)的距離,α表示路徑損耗指數(shù),一般情況下2≤α≤5,具體的取值取決于信道的特征。網(wǎng)格頭節(jié)點(diǎn)和網(wǎng)格成員節(jié)點(diǎn)加入跟蹤鏈后變成動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)。以圖2為例,圖2是根據(jù)本申請(qǐng)的網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法的建立的一條跟蹤鏈的示意圖。在圖2中,201表示目標(biāo),202表示匯聚節(jié)點(diǎn),203表示動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch,圓形表示動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)tcm,六邊形表示網(wǎng)格成員節(jié)點(diǎn)gm。
在其它條件不變時(shí),如果要降低節(jié)點(diǎn)傳輸數(shù)據(jù)時(shí)所消耗的能量就必須縮短兩個(gè)收發(fā)節(jié)點(diǎn)之間的距離或者減小數(shù)據(jù)包的大小,減小數(shù)據(jù)包的大小可以通過數(shù)據(jù)的合并和融合來實(shí)現(xiàn),而在目標(biāo)跟蹤鏈中減小傳輸節(jié)點(diǎn)之間的距離則是需要減小∑dα的值。在跟蹤鏈的建立過程中,初始tch根據(jù)各個(gè)網(wǎng)格頭節(jié)點(diǎn)和各個(gè)網(wǎng)格成員節(jié)點(diǎn)的位置選擇一個(gè)節(jié)點(diǎn)加入該跟蹤鏈?zhǔn)沟谩芼α值的增加量最小,然后將這個(gè)節(jié)點(diǎn)插入該跟蹤鏈中,這樣每次選擇一個(gè)節(jié)點(diǎn)作為跟蹤鏈的新成員插入該跟蹤鏈,直到所有需要執(zhí)行跟蹤任務(wù)的節(jié)點(diǎn)都加入該跟蹤鏈。為了使∑dα取得最小值,節(jié)點(diǎn)在加入跟蹤鏈時(shí)可以插入跟蹤鏈中的兩個(gè)節(jié)點(diǎn)之間。
步驟102,隨著目標(biāo)的移動(dòng),有需要退出跟蹤鏈的節(jié)點(diǎn),該節(jié)點(diǎn)向相鄰的兩節(jié)點(diǎn)發(fā)送退出消息,兩節(jié)點(diǎn)根據(jù)接收的退出消息,組建成新的相鄰節(jié)點(diǎn)。
在本實(shí)施例中,在動(dòng)態(tài)跟蹤鏈建立以后,隨著目標(biāo)的移動(dòng),跟蹤鏈上的節(jié)點(diǎn)的感知模塊在一定的時(shí)間內(nèi)感知不到上述目標(biāo)時(shí),或者檢測不到上述目標(biāo)時(shí),說明上述目標(biāo)已經(jīng)遠(yuǎn)離,如果該節(jié)點(diǎn)是動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn),該動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)要退出跟蹤鏈時(shí),只要向上下游相鄰的兩個(gè)節(jié)點(diǎn)發(fā)送退出消息,而不影響其它節(jié)點(diǎn)的工作,該節(jié)點(diǎn)的退出消息包括自己上下游兩個(gè)節(jié)點(diǎn)的id信息、位置信息等,上下游的兩個(gè)節(jié)點(diǎn)收到這個(gè)退出消息后則自動(dòng)組成跟蹤鏈的新的相鄰節(jié)點(diǎn)。以圖3為例,圖3是動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)要退出跟蹤鏈的示意圖。在圖3中,302表示匯聚節(jié)點(diǎn),303表示動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch,圓形表示動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)tcm,六邊形表示網(wǎng)格成員節(jié)點(diǎn)gm,當(dāng)目標(biāo)301向右行駛至304處,動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)306遠(yuǎn)離目標(biāo)304,動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)306需要退出跟蹤鏈,因此,動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)306向相鄰的節(jié)點(diǎn)305和307發(fā)送退出消息,節(jié)點(diǎn)305和307收到這個(gè)消息后則自動(dòng)組成跟蹤鏈的新的相鄰節(jié)點(diǎn)。
在本實(shí)施例中,如果是動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch要退出跟蹤鏈,其過程和動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)一樣,只是需要在發(fā)送退出消息的時(shí)候?qū)㈡滎^令牌傳遞給自己的下游節(jié)點(diǎn)。
步驟103,隨著目標(biāo)的移動(dòng),有新節(jié)點(diǎn)需要加入跟蹤鏈,計(jì)算得出新節(jié)點(diǎn)加入到跟蹤鏈的不同位置時(shí),跟蹤鏈的傳輸能量消耗值的增加量最小的位置,作為新節(jié)點(diǎn)加入跟蹤鏈的位置。
在本實(shí)施例中,隨著目標(biāo)的移動(dòng),目標(biāo)位置發(fā)生改變,檢測到目標(biāo)的跟蹤鏈外的其它節(jié)點(diǎn)要加入跟蹤鏈,其中,上述其它節(jié)點(diǎn)至少包括網(wǎng)格成員節(jié)點(diǎn)、網(wǎng)格頭節(jié)點(diǎn);則該節(jié)點(diǎn)向周圍廣播加入消息“req_join”,該加入消息中包括了該節(jié)點(diǎn)的id和位置信息,當(dāng)跟蹤鏈的動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch收到該節(jié)點(diǎn)的加入消息后,計(jì)算該節(jié)點(diǎn)加入到跟蹤鏈中不同位置時(shí)跟蹤鏈的傳輸能量消耗值∑dα,選擇一個(gè)位置使該節(jié)點(diǎn)加入跟蹤鏈后,跟蹤鏈的傳輸能量消耗值∑dα的增加量最小的位置,作為新節(jié)點(diǎn)加入跟蹤鏈的位置,最后動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch通知該節(jié)點(diǎn)并使其加入到跟蹤鏈的相應(yīng)位置,以圖4為例,圖4是節(jié)點(diǎn)加入動(dòng)態(tài)跟蹤鏈的示意圖。在圖4中,圓形表示動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)tcm,六邊形表示網(wǎng)格成員節(jié)點(diǎn)gm,目標(biāo)401向右行駛至402處,節(jié)點(diǎn)405向周圍廣播加入跟蹤鏈的消息;然后,動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)403接收到上述消息,通過計(jì)算得出節(jié)點(diǎn)405在動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)404后面時(shí),跟蹤鏈的傳輸能量消耗值∑dα的增加量最小,之后,動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)403通知將該位置信息通知節(jié)點(diǎn)405并使其加入到跟蹤鏈的相應(yīng)位置。
在本實(shí)施例中,當(dāng)目標(biāo)移出網(wǎng)絡(luò)時(shí),跟蹤鏈的動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch節(jié)點(diǎn)根據(jù)從匯聚節(jié)點(diǎn)得到目標(biāo)移出網(wǎng)絡(luò)的消息,向周圍廣播跟蹤鏈的解散消息“chain_disbandment”,跟蹤鏈中其它節(jié)點(diǎn)收到該消息后刪除該跟蹤鏈的相關(guān)信息并退出跟蹤鏈。
步驟104,跟蹤鏈的每個(gè)動(dòng)態(tài)跟蹤鏈成員節(jié)點(diǎn)接收來自上游節(jié)點(diǎn)發(fā)送的感應(yīng)數(shù)據(jù),并把所述感應(yīng)數(shù)據(jù)和自己節(jié)點(diǎn)所觀測到的數(shù)據(jù)進(jìn)行合并融合處理后生成新的感應(yīng)數(shù)據(jù),再將該新的感應(yīng)數(shù)據(jù)發(fā)送給該節(jié)點(diǎn)的下游節(jié)點(diǎn),直至下游節(jié)點(diǎn)是動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn),動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)把接收到的感應(yīng)數(shù)據(jù)和自己節(jié)點(diǎn)所觀測到的數(shù)據(jù)進(jìn)行合并融合后發(fā)送給匯聚節(jié)點(diǎn)。
在本實(shí)施例中,目標(biāo)周圍的跟蹤鏈上的節(jié)點(diǎn)需要把自己的感應(yīng)數(shù)據(jù)通過多跳的形式發(fā)送到匯聚節(jié)點(diǎn)。每輪數(shù)據(jù)的傳輸都由跟蹤鏈的鏈尾節(jié)點(diǎn)開始,鏈尾節(jié)點(diǎn)由跟蹤鏈上的節(jié)點(diǎn)自己判斷,即當(dāng)跟蹤鏈上的節(jié)點(diǎn)只有一個(gè)相鄰節(jié)點(diǎn)時(shí)被判定為鏈尾節(jié)點(diǎn)。通常每一條跟蹤鏈有兩個(gè)鏈尾,為了避免兩個(gè)鏈尾同時(shí)發(fā)送感應(yīng)數(shù)據(jù)而產(chǎn)生碰撞,每個(gè)鏈尾可以隨機(jī)等待一段時(shí)間再發(fā)送感應(yīng)數(shù)據(jù),或者偵聽到信道空閑時(shí)發(fā)送感應(yīng)數(shù)據(jù)。鏈尾節(jié)點(diǎn)如果沒有鏈頭令牌就首先把自己的感應(yīng)數(shù)據(jù)發(fā)送給相鄰的下游節(jié)點(diǎn),下游節(jié)點(diǎn)收到該感應(yīng)數(shù)據(jù)后,把該感應(yīng)數(shù)據(jù)同自己所觀測到的數(shù)據(jù)進(jìn)行合并融合等處理,并把處理后的新的感應(yīng)數(shù)據(jù)發(fā)送給與自己相鄰的下游節(jié)點(diǎn),以此類推,直到數(shù)據(jù)到達(dá)動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch節(jié)點(diǎn),最后由動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)把接收到的所有感應(yīng)數(shù)據(jù)和自己節(jié)點(diǎn)所觀測到的數(shù)據(jù)進(jìn)行合并融合后發(fā)送給匯聚節(jié)點(diǎn)。
這樣節(jié)點(diǎn)的感應(yīng)數(shù)據(jù)就沿著跟蹤鏈的方向一步一步的被傳輸,并且在每個(gè)節(jié)點(diǎn)上都可以合并和融合感應(yīng)數(shù)據(jù),因此網(wǎng)絡(luò)中沒有冗余數(shù)據(jù)的傳輸,從而節(jié)省了節(jié)點(diǎn)的能量消耗。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,由于跟蹤鏈上的節(jié)點(diǎn)中通信模塊是消耗能量最多的模塊,因此當(dāng)跟蹤鏈上的節(jié)點(diǎn)不需要發(fā)送數(shù)據(jù)時(shí)應(yīng)該使通信模塊處于關(guān)閉狀態(tài)以節(jié)省能量。跟蹤鏈上的節(jié)點(diǎn)是依次輪流發(fā)送自己的數(shù)據(jù),為了節(jié)省能量,我們針對(duì)目標(biāo)跟蹤鏈上的數(shù)據(jù)傳輸提出了一種動(dòng)態(tài)的能量有效的睡眠方式,這種方式使得跟蹤鏈上節(jié)點(diǎn)的通信模塊在有數(shù)據(jù)需要收發(fā)時(shí)處于活動(dòng)狀態(tài),其它時(shí)間則處于關(guān)閉狀態(tài)。動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch為跟蹤鏈上的每個(gè)節(jié)點(diǎn)分配時(shí)槽用來收發(fā)數(shù)據(jù),并通過控制消息傳遞給跟蹤鏈上的每一個(gè)節(jié)點(diǎn)。動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch不用在每輪數(shù)據(jù)收集中都發(fā)送控制消息,只有當(dāng)跟蹤鏈中有新節(jié)點(diǎn)加入時(shí)或動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch節(jié)點(diǎn)更換時(shí)才發(fā)送新的控制消息。當(dāng)跟蹤鏈中有節(jié)點(diǎn)退出時(shí),只需要該節(jié)點(diǎn)通知它的下游節(jié)點(diǎn)延長接收數(shù)據(jù)的時(shí)槽而不用改變其它節(jié)點(diǎn)的睡眠安排。
以圖5為例,圖5是動(dòng)態(tài)跟蹤鏈上節(jié)點(diǎn)的通信模塊的睡眠活動(dòng)時(shí)間安排的示意圖。圖5中,tr表示一輪數(shù)據(jù)收集的時(shí)間,它被分為兩個(gè)部分,包括tc和n個(gè)數(shù)據(jù)收發(fā)時(shí)槽ts,其中,tc表示動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)發(fā)送控制信息和鏈尾等待等的時(shí)間,ts表示數(shù)據(jù)接收或者發(fā)送的一個(gè)時(shí)槽,n表示時(shí)槽的個(gè)數(shù)。它可以計(jì)算如下:
每輪數(shù)據(jù)收集時(shí),在tc時(shí)間段過后,跟蹤鏈上的鏈尾節(jié)點(diǎn)開始向自己下游的鄰居節(jié)點(diǎn)發(fā)送自己的感應(yīng)數(shù)據(jù)。由于跟蹤鏈上的鏈尾節(jié)點(diǎn)只有一個(gè)鄰居,因此它只分配到一個(gè)時(shí)槽用來發(fā)送感應(yīng)數(shù)據(jù)。而跟蹤鏈上的其它節(jié)點(diǎn)都被分配給兩個(gè)時(shí)槽,一個(gè)時(shí)槽用來接收上游鄰居節(jié)點(diǎn)發(fā)來的數(shù)據(jù),另一個(gè)時(shí)槽用來發(fā)送處理后的感應(yīng)數(shù)據(jù)給自己的下游鄰居節(jié)點(diǎn),相鄰兩個(gè)節(jié)點(diǎn)之間有一個(gè)時(shí)槽是重合的以便數(shù)據(jù)的收發(fā),除了收發(fā)時(shí),跟蹤鏈上的節(jié)點(diǎn)在其它時(shí)間可以關(guān)閉自己的通信模塊,使自己處于睡眠狀態(tài)以節(jié)省能量。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,跟蹤鏈上的節(jié)點(diǎn)可以根據(jù)數(shù)據(jù)發(fā)送的距離來調(diào)整自己的發(fā)射功率以便能量的利用率達(dá)到最優(yōu),并且也減少了相互之間發(fā)送數(shù)據(jù)的干擾從而增加了信道的重復(fù)利用率。
步驟105,跟蹤鏈上的每個(gè)節(jié)點(diǎn)輪流擔(dān)任動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn),且每個(gè)節(jié)點(diǎn)根據(jù)最短擔(dān)任期限、該節(jié)點(diǎn)與所述匯聚節(jié)點(diǎn)間的距離、該節(jié)點(diǎn)的剩余能量計(jì)算該節(jié)點(diǎn)擔(dān)任動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)的期限。
在本實(shí)施例中,為了平衡網(wǎng)絡(luò)中節(jié)點(diǎn)的能量消耗,跟蹤鏈上的節(jié)點(diǎn)需輪流充當(dāng)動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch,如果當(dāng)前tch的擔(dān)任期限到期,它就會(huì)將鏈頭令牌傳遞給它的上游節(jié)點(diǎn),當(dāng)該節(jié)點(diǎn)沒有上游節(jié)點(diǎn)時(shí)則傳遞給它的下游節(jié)點(diǎn),那么收到鏈頭令牌的節(jié)點(diǎn)就會(huì)成為下一任動(dòng)態(tài)跟蹤鏈頭節(jié)點(diǎn)tch。tch節(jié)點(diǎn)的擔(dān)任期限可以按照如下的計(jì)算得到:
其中,cni表示跟蹤鏈上的第i的節(jié)點(diǎn),lttch(cni)表示跟蹤鏈節(jié)點(diǎn)cni擔(dān)任tch的期限,并且lttch(cni)∈[0,1,2...],即都是正整數(shù),符號(hào)[]表示取其中數(shù)值的整數(shù)部分。δmin,δd_ref和δe_ref分別表示tch的最短擔(dān)任期限、距離相關(guān)的控制系數(shù)和能量相關(guān)的控制系數(shù),并且δmin,δd_ref,δe_ref∈[0,1,2...],這些參數(shù)都可以按照系統(tǒng)的要求設(shè)定,s表示匯聚節(jié)點(diǎn),|cni,s|表示節(jié)點(diǎn)cni和匯聚節(jié)點(diǎn)s之間的距離,|cni,s|α中,α表示路徑損耗指數(shù),一般情況下2≤α≤5,具體的選擇取決于信道的特征,max|cni,s|α表示|cni,s|α的最大值,eref表示能量的參考值,一般選為節(jié)點(diǎn)的初始能量值,eres(cni)表示節(jié)點(diǎn)cni的剩余能量。由于節(jié)點(diǎn)發(fā)送數(shù)據(jù)所消耗的能量和發(fā)送的距離|cni,s|的α次方成正比,所以距離匯聚節(jié)點(diǎn)最遠(yuǎn)的節(jié)點(diǎn)傳輸數(shù)據(jù)到匯聚節(jié)點(diǎn)時(shí)所消耗的平均能量最多,因此我們選擇該節(jié)點(diǎn)作為參考節(jié)點(diǎn)。如果當(dāng)前tch的擔(dān)任期限到期,它向上游節(jié)點(diǎn),如果該節(jié)點(diǎn)沒有上游節(jié)點(diǎn)則選下游節(jié)點(diǎn),發(fā)送消息“tch_token”,當(dāng)鄰居節(jié)點(diǎn)收到該消息后,首先按照上式計(jì)算自己擔(dān)任tch的期限,如果該期限值大于零,則向當(dāng)前tch回復(fù)消息接受“accept”,否則回復(fù)消息拒絕“refuse”。當(dāng)前tch如果收到“accept”則認(rèn)為鏈頭節(jié)點(diǎn)更換成功并把跟蹤鏈的相關(guān)信息發(fā)送給新的tch,自己變成tcm節(jié)點(diǎn),當(dāng)前tch如果收到“refuse”則還需繼續(xù)擔(dān)任tch并向其它節(jié)點(diǎn)發(fā)送“tch_token”消息,直到找出新的tch為止,其中,其它節(jié)點(diǎn)可以是該節(jié)點(diǎn)的上游節(jié)點(diǎn)或下游節(jié)點(diǎn)。
tch節(jié)點(diǎn)每收集一輪感應(yīng)數(shù)據(jù)后,它的lttch(cni)值就減1,即lttch=lttch-1,當(dāng)lttch=0時(shí)當(dāng)前tch的擔(dān)任期限到期。這樣跟蹤鏈上的每個(gè)節(jié)點(diǎn)都可以根據(jù)自己離匯聚節(jié)點(diǎn)的距離和剩余能量來選擇一個(gè)不同的擔(dān)任tch的期限,這不僅減少了網(wǎng)絡(luò)中控制信息的傳輸而且可以使節(jié)點(diǎn)的能量消耗更加均衡。另外,在tch節(jié)點(diǎn)的更換過程中,只需要和相鄰的節(jié)點(diǎn)之間進(jìn)行通信,并且整個(gè)跟蹤鏈的結(jié)構(gòu)不需要被重新建立,這使得該方法很適合面向目標(biāo)跟蹤的wsn。
在本申請(qǐng)的上述實(shí)施例提供的基于動(dòng)態(tài)鏈的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法通過在目標(biāo)周圍建立一個(gè)動(dòng)態(tài)的跟蹤鏈,隨著目標(biāo)的移動(dòng),動(dòng)態(tài)跟蹤鏈逐漸增加或者刪除其中的節(jié)點(diǎn)使得該動(dòng)態(tài)跟蹤鏈能夠適應(yīng)目標(biāo)位置的變化,這樣既保證了系統(tǒng)的跟蹤性能又節(jié)省了節(jié)點(diǎn)的能量消耗,并且在感應(yīng)數(shù)據(jù)傳輸時(shí),每個(gè)節(jié)點(diǎn)接收來自上游節(jié)點(diǎn)發(fā)送的感應(yīng)數(shù)據(jù),把該感應(yīng)數(shù)據(jù)和自己所觀測到的數(shù)據(jù)合并融合處理后再發(fā)送給該節(jié)點(diǎn)的下游節(jié)點(diǎn),最后由tch節(jié)點(diǎn)把融合好的數(shù)據(jù)發(fā)送給匯聚節(jié)點(diǎn),因此感應(yīng)數(shù)據(jù)沿著動(dòng)態(tài)跟蹤鏈傳輸?shù)拿恳徊蕉伎梢员缓喜⒑腿诤?,在?shù)據(jù)傳輸方面也節(jié)省了較多的能量。當(dāng)有節(jié)點(diǎn)要加入或者退出跟蹤任務(wù)時(shí)只需要通知自己相鄰的兩個(gè)節(jié)點(diǎn)就可以了,并且當(dāng)tch改變時(shí),不需要重新建立動(dòng)態(tài)跟蹤鏈,減少了網(wǎng)絡(luò)開銷。
本發(fā)明的優(yōu)點(diǎn)可通過仿真實(shí)驗(yàn)進(jìn)一步說明。在實(shí)驗(yàn)中,我們采用了基于omnet++4.1(objectivemodularnetworktestbedinc++,多協(xié)議網(wǎng)絡(luò)仿真軟件)的仿真平臺(tái)castalia來仿真比較本申請(qǐng)針對(duì)面向目標(biāo)跟蹤的基于動(dòng)態(tài)鏈的節(jié)點(diǎn)協(xié)作方法dcbc和當(dāng)前現(xiàn)有技術(shù),該仿真從能量消耗、數(shù)據(jù)收集的平均延遲和網(wǎng)絡(luò)生命周期等方面比較和分析通過各種傳感器網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)作方法組建的網(wǎng)絡(luò)的性能,目前常用的典型方法如下:1.基于固定鏈結(jié)構(gòu)的網(wǎng)絡(luò)(pegasis,power-efficientgatheringinsensorinformationsystems)。、2.動(dòng)態(tài)分簇結(jié)構(gòu)的網(wǎng)絡(luò)(cosen,chainorientedsensornetwork)。3.動(dòng)態(tài)傳送樹(dctc,dynamicchain-basedcollaboration)。在仿真中,在不同的節(jié)點(diǎn)隨機(jī)分布模式下,每次仿真至少運(yùn)行五次,仿真結(jié)果取這五次結(jié)果的平均值。
我們建立一個(gè)包括250個(gè)傳感器節(jié)點(diǎn)的網(wǎng)絡(luò),這些節(jié)點(diǎn)隨機(jī)分布在一個(gè)200m×200m的區(qū)域內(nèi),整個(gè)網(wǎng)絡(luò)被劃分為16個(gè)網(wǎng)格,匯聚節(jié)點(diǎn)的位置是固定的,位于坐標(biāo)(100,600)處。當(dāng)gh消耗的能量大于其擔(dān)任簇頭時(shí)的1/3時(shí),該gh就會(huì)被其它的節(jié)點(diǎn)替換。另外,節(jié)點(diǎn)對(duì)單個(gè)感應(yīng)數(shù)據(jù)包的處理所消耗的能量被設(shè)置為5nj/bit。每個(gè)節(jié)點(diǎn)的感應(yīng)范圍為rsensing=12m,節(jié)點(diǎn)的初始能量為10j。當(dāng)節(jié)點(diǎn)的通信模塊活動(dòng)和睡眠時(shí),該節(jié)點(diǎn)所消耗的能量分別為0.22mw和0.000006mw。在仿真中,感應(yīng)區(qū)域內(nèi)的跟蹤節(jié)點(diǎn)每0.3s報(bào)告一次自己的觀測數(shù)據(jù),數(shù)據(jù)包和控制包的大小分別為256bytes和8bytes,無線信道的傳輸帶寬為1mbps,并且我們采用ieee802.15.4的mac(mediaaccesscontrol,介質(zhì)訪問控制)層模型。另外,我們?cè)O(shè)置一個(gè)時(shí)槽為ts=5ms,節(jié)點(diǎn)對(duì)數(shù)據(jù)的處理時(shí)間為1ms和3ms之間的任意時(shí)間。關(guān)于計(jì)算tch節(jié)點(diǎn)擔(dān)任期限的參數(shù)設(shè)定為δmin=1,δd_ref=2,δe_ref=5。最后,我們假設(shè)移動(dòng)目標(biāo)在網(wǎng)絡(luò)區(qū)域內(nèi)隨機(jī)連續(xù)的移動(dòng),最大速度為8m/s。
繼續(xù)參見圖6,圖6是網(wǎng)絡(luò)中鏈結(jié)構(gòu)或者樹結(jié)構(gòu)的建立所需要消耗的能量。在圖6中,橫坐標(biāo)approaches表示不同方法,縱坐標(biāo)totalenergyconsumption表示消耗的能量。從圖6中我們可以看出在pegasis和cosen方法中,建立鏈結(jié)構(gòu)所需要消耗的能量幾乎一樣多,這是因?yàn)樗鼈兌疾捎昧素澙匪惴▉斫㈡溄Y(jié)構(gòu)。pegasis和cosen方法比dctc和dcbc方法在鏈或者樹的建立中消耗的能量多是因?yàn)樗鼈冎兴械墓?jié)點(diǎn)都參與了鏈的建立,節(jié)點(diǎn)需要與其它節(jié)點(diǎn)進(jìn)行遠(yuǎn)距離通信來獲得其它節(jié)點(diǎn)的位置信息,而在dctc和dcbc方法中,只有目標(biāo)周圍的一部分節(jié)點(diǎn)參與了鏈或樹的建立,這些節(jié)點(diǎn)都位于目標(biāo)周圍的一個(gè)局部范圍內(nèi),通信距離往往比較小,因此消耗的能量也比較少。
繼續(xù)參見圖7,圖7是網(wǎng)絡(luò)初始化和鏈結(jié)構(gòu)或樹結(jié)構(gòu)的建立所消耗的時(shí)間。在圖7中,橫坐標(biāo)approaches表示不同方法,縱坐標(biāo)time表示網(wǎng)絡(luò)初始化和鏈結(jié)構(gòu)或樹結(jié)構(gòu)的建立所消耗的時(shí)間。同樣的道理,pegasis和cosen方法比dctc和dcbc方法在鏈結(jié)構(gòu)或者樹結(jié)構(gòu)的建立中消耗的時(shí)間多也是因?yàn)樵阪溄Y(jié)構(gòu)或者樹結(jié)構(gòu)的建立過程中參與的節(jié)點(diǎn)數(shù)量多。另外cosen方法比pegasis方法建立鏈結(jié)構(gòu)所需要的時(shí)間短是因?yàn)閏osen方法中可以在不同的區(qū)域內(nèi)同時(shí)建立子鏈,這就相當(dāng)于所建立鏈結(jié)構(gòu)的總長度變短。從圖6和圖7中我們可以看出,鏈結(jié)構(gòu)和樹結(jié)構(gòu)在建立時(shí),如果參與的節(jié)點(diǎn)數(shù)量相同,那么它們消耗的能量和所需要的時(shí)間也是基本相同的。
繼續(xù)參見圖8,圖8是不同方法中數(shù)據(jù)收集的平均延遲隨著網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)量的變化圖。在圖8中,橫坐標(biāo)numberofnodes表示網(wǎng)絡(luò)中節(jié)點(diǎn)個(gè)數(shù),縱坐標(biāo)averagedatacollectiontime表示數(shù)據(jù)收集的平均延遲。網(wǎng)絡(luò)中節(jié)點(diǎn)個(gè)數(shù)的變化范圍從128到512個(gè)。如果其他參數(shù)保持不變的情況下,數(shù)據(jù)收集的平均延遲都隨著網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)量的增加而增加,這是因?yàn)楣?jié)點(diǎn)增多時(shí)網(wǎng)絡(luò)需要傳輸?shù)臄?shù)據(jù)包也增多。pegasis方法中數(shù)據(jù)傳輸延遲隨著節(jié)點(diǎn)數(shù)量的增加也迅速增加并且在所有方法中的數(shù)據(jù)傳輸延遲最大,這是因?yàn)樵摲椒ㄖ兄唤⒁粭l鏈,鏈上的節(jié)點(diǎn)越多鏈的長度就越長,因此數(shù)據(jù)傳輸延遲越大。由于在cosen方法中鏈的長度相對(duì)比較短,因此它的數(shù)據(jù)傳輸延遲比pegasis方法中的要小很多。dctc和dcbc方法中的數(shù)據(jù)傳輸延遲也是由樹結(jié)構(gòu)或者鏈結(jié)構(gòu)上的節(jié)點(diǎn)數(shù)量決定的,但是在網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)量較多的情況下dctc方法中的樹結(jié)構(gòu)被重新建立的次數(shù)也增多,因此dctc方法中的數(shù)據(jù)延遲比dcbc方法的要長。
繼續(xù)參見圖9,圖9是不同方法中網(wǎng)絡(luò)的生命周期。在圖9中,橫坐標(biāo)percentageofdeadnodes表示網(wǎng)絡(luò)中死亡節(jié)點(diǎn)的百分比,縱坐標(biāo)numberofrounds表示收集感應(yīng)數(shù)據(jù)的輪數(shù)。其中,每一輪收集感應(yīng)數(shù)據(jù)是指把感應(yīng)數(shù)據(jù)從成員節(jié)點(diǎn)處一直傳輸?shù)絽R聚節(jié)點(diǎn),也就相當(dāng)于網(wǎng)絡(luò)的壽命。從圖中可以看出,采用本申請(qǐng)?zhí)岢龅膁cbc方法可以有效的延長網(wǎng)絡(luò)的壽命。這主要是因?yàn)樵赿cbc方法中,只有目標(biāo)周圍的節(jié)點(diǎn)參與跟蹤并且動(dòng)態(tài)跟蹤鏈能夠及時(shí)的根據(jù)目標(biāo)的位置來調(diào)整跟蹤鏈上的節(jié)點(diǎn),另外,跟蹤鏈的結(jié)構(gòu)也不用頻繁調(diào)整。采用dctc方法所得的網(wǎng)絡(luò)壽命比采用dcbc方法所得的短,主要是因?yàn)閯?dòng)態(tài)樹需要隨著目標(biāo)的移動(dòng)而被重新建立,并且位于接近樹根處的節(jié)點(diǎn)由于承擔(dān)的數(shù)據(jù)傳輸任務(wù)較重而消耗的能量過多從而導(dǎo)致網(wǎng)絡(luò)節(jié)點(diǎn)能量消耗不均衡。另外,pegasis和cosen方法中的網(wǎng)絡(luò)壽命比相比dctc和dcbc方法較短,是因?yàn)樵谶@兩種方法中許多不相關(guān)的節(jié)點(diǎn)也被牽扯到數(shù)據(jù)傳輸任務(wù)中,從而導(dǎo)致節(jié)點(diǎn)能量的消耗。
因此,本申請(qǐng)針對(duì)目標(biāo)跟蹤應(yīng)用提出了一種基于動(dòng)態(tài)鏈的節(jié)點(diǎn)協(xié)作方法,它通過在目標(biāo)周圍形成一個(gè)動(dòng)態(tài)的跟蹤鏈來完成目標(biāo)跟蹤任務(wù),隨著目標(biāo)的移動(dòng),動(dòng)態(tài)跟蹤鏈逐漸增加或者刪除其中的節(jié)點(diǎn)使得該動(dòng)態(tài)鏈能夠適應(yīng)目標(biāo)位置的變化。該方法能夠使跟蹤鏈上的節(jié)點(diǎn)所獲得的感應(yīng)數(shù)據(jù)在局部被收集并融合,從而能夠提高網(wǎng)絡(luò)的能量利用率以及數(shù)據(jù)傳輸效率。并且當(dāng)目標(biāo)的位置改變時(shí),動(dòng)態(tài)跟蹤鏈的結(jié)構(gòu)不需要被重新建立。實(shí)驗(yàn)結(jié)果表明:在面向目標(biāo)跟蹤的wsn中,采用本申請(qǐng)所提出的方法可以節(jié)省和均衡網(wǎng)絡(luò)的平均能量消耗,在不影響網(wǎng)絡(luò)性能的情況下延長網(wǎng)絡(luò)的生命周期。