專利名稱:一種用于傳感器網絡覆蓋范圍控制的方法
技術領域:
本發(fā)明屬于無線傳感器網絡覆蓋范圍控制技術領域,具體的說是一種用于傳感器網絡覆 蓋范圍控制的方法。
技術背景無線傳感器網絡(WSN)領域一個重要的方面是覆蓋范圍問題。通常來說,覆蓋范圍決 定了在一個節(jié)點感應場中的檢測或者偵查的效果如何。在野外或者軍事應用中,傳感器節(jié)點 被隨機部署。當使用這種傳感器網絡的時候,傳感器節(jié)點的密度通常遠遠大于保證某些需求 的最優(yōu)配置。因此在這樣一種具有高密度傳感器的傳感器感測區(qū)域內,存在著多個節(jié)點的覆 蓋范圍會彼此相交或者重合的問題,這導致了提供同等的覆蓋范圍的同時,增加了節(jié)點的能 量損耗,進而降低了網絡的生存時間。因此,要達到節(jié)省能量的同時不會以犧牲網絡覆蓋范 圍的目的,如何調度節(jié)點的活動狀態(tài)對于WSN來說是個很重要的問題。目前國內外對于無線傳感器網絡覆蓋范圍控制的研究主要分為以下四種方法-(1) 以啟發(fā)式的方法尋找能夠覆蓋特定感測區(qū)域的離散節(jié)點,在該方法中,這些傳感器節(jié)點是以時間復用的方式周期性的處于活動狀態(tài),其不足之處在于需要節(jié)點 的坐標信息并進行大量的計算,其次,該方法采用的是集中式對節(jié)點的覆蓋范圍的控制,降 低了WSN的魯棒性。(2) CPP方法,即覆蓋范圍配置方法,該方法的是通過傳感器節(jié)點及其 兩個鄰接點的感測區(qū)域的相交面積來確定該節(jié)點的工作狀態(tài),其優(yōu)點是,覆蓋范圍控制精確, 但是需要節(jié)點能夠支持大量的數據計算和頻繁的信息交換,由于過多依賴節(jié)點的位置信息, 使得該方法在實際應甩中受限。(3) 0DGC方法,即優(yōu)化的地理密度方法,該方法主要是針對3個活動 節(jié)點能夠形成一個等邊三角形而對于角度和距離的優(yōu)化,該方法需要節(jié)點大量的對距離角度 和覆蓋區(qū)域的計算,考慮到能量問題,在傳感器網絡節(jié)點上能夠對大數據量的計算是有限的, 因此該方法并不適合實際應用。(4) RIS隨機休眠算法,其實現過程中,雖然無需引入節(jié)點的坐標信息并 且僅需少量計算即可實現,但該方法在覆蓋比率,活動節(jié)點數和消息開銷大,不適合實現應 用。發(fā)明內容本發(fā)明的目的在于克服現有技術的不足,提供一種用于傳感器網絡覆蓋范圍控制的方 法,該方法以便在為監(jiān)測區(qū)域提供足夠覆蓋范圍的同時減少每個節(jié)點的能量損耗。本發(fā)明的技術方案為 一種用于傳感器網絡覆蓋范圍控制的方法,包括下列步驟1) 判斷節(jié)點狀態(tài)參數中新一輪覆蓋范圍控制標識位是否為真;2) 若標識位為真,該步驟又進一步分為2.1) 判斷是否收到新的鄰接點交互消息;2.2) 如果收到,在將自身跳數信息和接收到的鄰接點交互消息包含的 跳數比較后,調整節(jié)點自身跳數信息及其他狀態(tài)參數,按照節(jié)點跳數環(huán)形分層后,根據節(jié)點 的所在層和收到同層的交互消息數目,確定節(jié)點的工作狀態(tài);2.3)如果沒有收到新的鄰接點交互消息,計時器記數并檢査計時器是否 到期,如果是,那么該節(jié)點繼續(xù)等待接收鄰接點的交互信息,否則,節(jié)點工作狀態(tài)設置為活 動狀態(tài)并發(fā)送交互信息;3)如果標識位為假,該步驟又進一步分為 3.1)節(jié)點計時器記數并檢査計時器是否到期;3.1) 如果是,則設置自身活動狀態(tài)并復位狀態(tài)參數,等待接收鄰接點的 交互信息;3.2) 否則,重復上述步驟。 所述步驟l)中節(jié)點狀態(tài)參數由以下狀態(tài)位表示 S:節(jié)點工作狀態(tài)標識位,說明是否為休眠節(jié)點;5:節(jié)點覆蓋范圍控制標識位,說明新一輪覆蓋范圍控制是否開始;節(jié)點計數器位,說明記錄收到最新一條鄰接點交互消息時,時鐘所用的節(jié)拍信號的數目;#2:節(jié)點計數器位,記錄從節(jié)點跳數小于自身的節(jié)點收到的鄰接點交互消息數量; 節(jié)點計數器位,記錄從節(jié)點跳數等于自身的節(jié)點收到的鄰接點交互消息數量; 尸節(jié)點發(fā)送功率位,如果該參數修改,那么節(jié)點的功率也會隨之調整; f:節(jié)點計時器位,用于記錄在本輪周期中該節(jié)點的剩余時間。所述步驟2)中節(jié)點間的交互消息命名為^^尸消息,該L^尸消息封裝格式(/7/" I Pr I 7>}, 各個字段表示如下J^:發(fā)送消息節(jié)點相對環(huán)心節(jié)點的跳數; Pr-發(fā)送消息節(jié)點的發(fā)送功率;7>:發(fā)送消息節(jié)點在本輪周期中的剩余時間;其中,環(huán)心節(jié)點是人為的定義一個在傳感器網絡中,相對于其他節(jié)點,初始跳數為0的 節(jié)點。所述步驟2.2)包括下述步驟2.2.1) 自身預設跳數和收到ZW,消息中的跳數信息比較并確定自身所在的邏輯層及條數;2.2.2) 如果預設跳數大于LE4尸消息中的跳數,調整自身狀態(tài)參數,執(zhí)行步驟3.1);2.2.3) 如果自身跳數小于Z^4戶消息中的跳數,則執(zhí)行步驟3.1);2.2.4) 如果自身跳數等于^X戶消息中的跳數,調整自身的狀態(tài)參數; 2. 2. 5)由記數器iV;判斷是否收到同層的2個鄰接點的Zj54尸消息;2.2.6) 如果收到,節(jié)點調整自身的狀態(tài)參數并設置自身為休眠狀態(tài),并等待下一輪覆 蓋范圍控制;2.2.7) 如果沒收到,節(jié)點調整自身狀態(tài)參數后執(zhí)行步驟3. 1)。 所述步驟2.3)包括下述步驟2. 3.1)定時器r減l,計數器iV,加l;2.3.2) 判斷計時器是否為0;2.3.3) 如果不為0,那么該節(jié)點等待接收丄£4尸消息,2.3.4) 如果為0,節(jié)點設置自身為活動狀態(tài)并修改自身狀態(tài)參數, 并發(fā)送ZM尸消息;所述步驟2. 2.1)包括下述步驟2. 2.1.1)指定一個節(jié)點為環(huán)心節(jié)點且其跳數為0,其他節(jié)點的跳數設置為闕值//,.:2. 2.1. 2)環(huán)心節(jié)點在定時器計數滿后發(fā)送一個包含自身跳數力^4尸消息給臨節(jié)點; 2. 2. 1.3)任何節(jié)點i收到鄰接點ZW尸消息后都將該信息中的/^與自身的跳數信息 M進行比較,如果自己的跳數等于或小于Hr +厶節(jié)點將忽略AM尸消息,否則,歷〉Z/r +厶節(jié)點將自己的跳數設置為/^"f7;根據各個節(jié)點自身的跳數信息的不同,劃分為 相對環(huán)心的不同層中。本發(fā)明與現有技術相比的優(yōu)點在于-(1)在計算每個節(jié)點的覆蓋范圍的過程中,不需要復雜的面積和距離的計 算,僅通過每個節(jié)點的跳數信息和發(fā)送功率來實現調度傳感器節(jié)點的目的。如權利要求2.2) 中所述可知,傳感器節(jié)點至少進行1次條數比較,至多進行3次跳數比較即可,如果功率不改變跳數建立的過程僅l^行二次,.而無需對坐標信息和面積的計算。(2) 節(jié)點間控制消息的開銷小。如權利要求3)所述可知,LEAP消息只 有3個字段,至多占246"。(3) 傳感器網絡的節(jié)點密度對節(jié)點間的報文開銷不會產生很大的影響。如 權利要求1步驟2)所述,每一輪覆蓋范圍控制每個節(jié)點僅發(fā)送一次LEAP消息,而無需其他 交互報文,所以在同等條件下,相對于其他方法,節(jié)點密度對節(jié)點的報文開銷影響較小。(4) 在較低的信息吞吐量的時候本發(fā)明仍能達到很高的覆蓋率。綜合上述 闡述以及實驗結果表明本發(fā)明在傳感器網絡吞吐量較低的時候,節(jié)點間的通信對交互信息的 延遲仍在可容忍范圍內,各個節(jié)點的工作狀態(tài)可準確定義,因此覆蓋率依然保持穩(wěn)定。
圖1為LEAP消息狀態(tài)位和傳感器節(jié)點參數狀態(tài)位示意圖; 圖2為本發(fā)明的網絡覆蓋范圍控制過程流程圖; 圖3為本發(fā)明覆蓋范圍控制方法中采用的三角形拼接方法示意圖; 圖4為本發(fā)明覆蓋范圍控制方法中節(jié)點在每個節(jié)拍信號中的流程圖; 圖5為本發(fā)明覆蓋范圍控制方法中計算節(jié)點跳數和確定工作狀態(tài)示意圖。
具體實施方式
下面結合附圖和實施例對本發(fā)明作進一步詳細的描述。 1.覆蓋區(qū)域范圍控制涉及的關鍵對象1) 傳感器節(jié)點和感測模型傳感器網絡中的每個節(jié)點點配置有限能量的電池,支持有限本地計算的處理器,傳感器 組件,發(fā)射通信組件。通信組件包括收發(fā)器和一個全向天線。傳輸功率是可調節(jié)的。節(jié)點所 能感測的區(qū)域范圍模式稱為感測模型,采用的是目前普遍使用的圓形感測模型,即每個節(jié)點 能夠感測或者覆蓋一個以自身為中心,半徑為及^的圓形區(qū)域(感測范圍)。2) 傳輸半徑傳輸半徑i c定義為在傳輸功率Pc條件下,可以無錯傳輸的距離。本發(fā)明采用圓形傳輸 模型,在該模型中傳輸模型,在該模型中傳感器節(jié)點&'在無錯接收和發(fā)送的前提下能和感測 范圍內所有的傳感器節(jié)點通信。且當功率為Pc〈^"時,^以自身為中心的傳輸半徑為^^ <及附。3) 節(jié)點工作狀態(tài)節(jié)點工作狀態(tài)包括活動狀態(tài)和休眠狀態(tài),具有活動狀態(tài)的節(jié)點指的是該節(jié)點的感測部件處于工作狀態(tài)而且能夠支持數據包的發(fā)送和接收,具有體眠狀態(tài)的節(jié)點指的是該節(jié)點僅維持 自身晶振工作,感測部件處于斷電的狀態(tài)。4) ZM,消息AM尸消息包含字段(/fr iPrl7H,各個狀態(tài)位如圖3所示,內容表示如下//r:發(fā)送消息節(jié)點相對環(huán)心節(jié)點的跳數;Pr:發(fā)送消息節(jié)點的發(fā)送功率;7V:發(fā)送消息節(jié)點在本輪周期中的剩余時間;其中,環(huán)心節(jié)點是人為的定義一個在傳感器網絡中,相對于其他節(jié)點,初始跳數為0的 節(jié)點。5) 傳感器節(jié)點參數包含字段{5 I s I w21 w31 p I rh各個狀態(tài)位如圖3所示,內容表示如下S:節(jié)點工作狀態(tài)標識位,說明是否為休眠節(jié)點;5 :節(jié)點覆蓋范圍控制位,說明新一輪覆蓋范圍控制是否開始;節(jié)點計數器位,說明記錄收到最新一條鄰接點交互消息時,時鐘所用的節(jié)拍信號的數目;節(jié)點計數器位,記錄從節(jié)點跳數小于自身的節(jié)點收到的鄰接點交互消息數量; 節(jié)點計數器位,記錄從節(jié)點跳數等于自身的節(jié)點收到的鄰接點交互消息數量;戶節(jié)點發(fā)送功率位,如果該參數修改,那么節(jié)點的功率也會隨之調整; r:節(jié)點計時器位,用于記錄在本輪周期中該節(jié)點的剩余時間; 2.本發(fā)明的實現包括以下步驟,如圖4所示1) 判斷節(jié)點狀態(tài)參數中新一輪覆蓋范圍控制標識位是否為真;2) 若標識位為真,該步驟又進一步分為2. 1 )判斷是否收到新的鄰接點交互消息;2.2) 如果收到,在將自身跳數信息和接收到的鄰接點交互消息包含的跳數比較后,調整節(jié)點自身跳數信息及其他狀態(tài)參數,按照節(jié)點跳數環(huán)形分層后,根據節(jié)點的所在層 和收到同層的交互消息數目,確定節(jié)點的工作狀態(tài)。2.3) 如果沒有收到新的鄰接點交互消息,計時器記數并檢査計時器是否到期,如果 是,那么該節(jié)點繼續(xù)等待接收鄰接點的交互信息,否則,節(jié)點工作狀態(tài)設置為活動狀 態(tài)并發(fā)送交互信息。3)如果標識位為假,該步驟又進一步分為3.1)節(jié)點計時器記數并檢查計時器是否到期3.2)如果是,則設置自身,狀態(tài)并 復位狀態(tài)參數,并發(fā)送交互信息, 3.3)否則,重復上述步驟 下面對步驟2.2)和步驟2.3)做進一步的詳細說明。步驟2.2)主要完成的在接收到鄰 接點的LEAP消息后,對節(jié)點自身的狀態(tài)參數調整并確定工作狀態(tài)。而步驟2.3)主要完成的 是在沒有收到鄰接點的LEAP消息后,依據定時器來決定節(jié)點是繼續(xù)等待還是發(fā)送LEAP消息。 其中步驟2.2),進一步分為2.2.1)自身預設跳數和收到ZM,消息中的跳數信息比較后,進行環(huán)形分層; 所述步驟2. 2. 1)又進一步包括下述步驟2. 2.1.1)指定一個節(jié)點為環(huán)心節(jié)點且其跳數為0,其他節(jié)點的跳數設置為闕值"隨;2.2.1.2)環(huán)心節(jié)點在定時器計數滿后發(fā)送一個包含自身跳數LE^消息給臨 節(jié)點;2. 2.1. 3)任何節(jié)點i收到鄰接點AW尸消息后都將該信息中的i^與自身的跳 數信息招進行比較,如果自己的跳數等于或小于份"f/,那么節(jié)點將忽略AE4尸消息。否 則,歷〉份+/,那么節(jié)點就會將自己的跳數設置為份+/;根據各個節(jié)點自身的跳數信 息的不同,劃分為相對環(huán)心的不同層中。上述步驟2.2.1)中的環(huán)形分層是指在一個感測區(qū)域內采用三角形拼接的方法,以任意 指定的節(jié)點為中心,以通信半徑i c的整數倍為半徑進行分層的方法.三角形拼接方法,如圖 l所示,假設相鄰三個傳感器節(jié)點所組成的三角形是等邊三角形,每個三角形的邊長為&, 則任一頂點和相鄰頂點的距離為i c-VI&,如果要求的最大感測區(qū)域可知,那么只要將每 個傳感器節(jié)點規(guī)則排列成上述的等邊三角形,均勻分布在感測區(qū)域,那么這就是可以完全感 測該區(qū)域的最少的傳感器節(jié)點的數目,且以任意指定的節(jié)點為中心以半徑為及c的圓內定義 為一跳,以環(huán)心節(jié)點為中心以內環(huán)半徑為及c,外環(huán)半徑為^ c的環(huán)形區(qū)域定義為兩跳,以 此類推。但是在隨機分布的傳感器網絡中,每個環(huán)的內外徑.未必等于通信半徑的倍數。如 果通過調整傳輸功率來調整傳輸半徑到一個適合的值,那么以上的方法通過7個跳數為#的 節(jié)點和^個跳數為的節(jié)點仍可對上述的3個節(jié)點內組成的三角形區(qū)域進行感測且在該區(qū) 域內所用的節(jié)點數最小,進行可以擴展到對整個不規(guī)則感測區(qū)域內使用上述方法進行感測, 并由上述的方法可知在該區(qū)域內仍可根據節(jié)點的傳輸半徑及c進行環(huán)形分層。在該過程中, 環(huán)心節(jié)點和其他節(jié)點以廣播的方式發(fā)送該消息,在所有節(jié)點布置好以后,除環(huán)心節(jié)點的所有的節(jié)點都設置自己的跳數為一個闕值//_,例如/// /bra/7/,下標i =人么J,…表示傳感器節(jié)點。/ = ^表示環(huán)心節(jié)點。當環(huán)心節(jié)點廣播自己的^54戶消息后,且環(huán)心節(jié)點 的跳數ifo = ft任何節(jié)點J'收到^E4,消息后都將該信息中的i/r與自身的跳數信息幼'進 行比較,如果自己的跳數小于份+7,那么節(jié)點將忽略LS4尸消息。否則,歷〉份+厶那 么節(jié)點就會將自己的跳數設置為Z/r+/。依據跳數不同,相對于環(huán)心節(jié)點,跳數為i/r的就 屬于邏輯/fr層。最初,定時器初始化為一個很大的值r,,該值大于或者等于網絡的生存時間。當我們談及一個傳感器節(jié)點設置他的定時器至T,這就意味著如果當前的時間為常數t,那么 在t+T的時候,定數器計數滿。圖5顯示了一個傳感器節(jié)點在每個節(jié)拍信號中的運行流程。 在該節(jié)拍信號的時間段內,覆蓋范圍控制用于決定一個傳感器節(jié)點的狀態(tài)和每輪中狀態(tài)持續(xù) 的時間周期。在判定了新一輪中的狀態(tài)后,傳感器節(jié)點將保持該狀態(tài)。當定時器計數滿要開 始新一輪的時候,無論上一輪的狀態(tài)如何節(jié)點將會改變自身的狀態(tài)位活動狀態(tài),并對 計數器清零。2.2.2) 如果預設跳數大于L^戶消息中的跳數,可知節(jié)點在發(fā)送ZM尸消息節(jié)點的外側, 那么該節(jié)點調整自身狀態(tài)參數,隨后執(zhí)行步驟3.1)節(jié)點調整自身狀態(tài)參數如下所示節(jié)點計數器a^0;節(jié)點計數器/^2 = ^2+1; 節(jié)點計時器71 (1, 7>/^2); 節(jié)點自身發(fā)送功率尸-Pr; 本發(fā)明使用7 仏7V^表示7的值是來自于7到r"之間均勻分布。下標a, 6,…指代不同的定時器闕值r", d,…。在該方法中以常數的形式描述。2.2.3) 如果自身跳數小于L^戶消息中的跳數,那么可知,該節(jié)點在發(fā)送LEAP消息節(jié) 點較環(huán)心節(jié)點更近的層,由環(huán)形分層的方法,該節(jié)點不考慮LEAP消息,而是執(zhí)行步驟3.1)2.2.4) 如果自身跳數等于i:fi^消息中的跳數,那么對自身狀態(tài)參數部分就行調整節(jié) 點計數器^ = ^3+1;節(jié)點發(fā)送功率P-Pr;節(jié)點計時器r-zv;2.2.5) 由記數器i^判斷是否收到同層的2個鄰接點的££力尸消息;2.2.6) 如果是,那么可知在該層中,在該節(jié)點可感測的范圍內己經存在了 2個活動狀 態(tài)的節(jié)點,且如果跳數為.H,那么可以至少和一個跳數差為.丄的鄰節(jié)點來感測和該節(jié)點重合的區(qū)域,因此該節(jié)點設置自身為休眠狀態(tài),并調整自身的狀態(tài)參數,并等待下"^輪覆蓋范圍 控制;調整自身狀態(tài)參數如下所示
節(jié)點工作狀態(tài)標識S = Wee化
節(jié)點覆蓋范圍控制標識5 =/a^e;
節(jié)點計時器T = 7V - JV, - iV。;
2.2.7)如果不是,那么可知該節(jié)點感測范圍內不會多于2個活動狀態(tài)的節(jié)點,那么他 可能會和該層內跳數相同的至少一個鄰接點與某個跳數差為1的鄰節(jié)點共同感測以三個節(jié)點 組成三角形內部的區(qū)域,因此節(jié)點調整自身狀態(tài)參數后執(zhí)行步驟3.1)
調整自身狀態(tài)參數如下所示
節(jié)點計時器r (i, r。);節(jié)點計數器A^0;
上述步驟2.2),主要實現了在一個傳感器網絡中,指定一個跳數為0的環(huán)心節(jié)點后計算 其他節(jié)點的跳數并確定其是否為休眠狀態(tài),以圖^為例進行說明,該圖中,有J個邏輯分層, 從內至外,跳數分別為i/, 最初,所有的傳感器節(jié)點都設置活動狀態(tài)并偵
聽鄰節(jié)點,本發(fā)明設定每個節(jié)點都有一組狀態(tài)參數,參數格式如圖3所示,其中的定時器能 設置為不同的時間周期。每當計時器計數滿后,傳感器節(jié)點設置自身為活動狀態(tài)并且發(fā)送節(jié) 點間交互消息Zi^尸,格式如圖5所示,通常指定一個節(jié)點為自最小跳數的節(jié)點,該節(jié)點在定 時器計數滿后發(fā)送一個^E4,消息給臨節(jié)點開始。例如,假設傳感器節(jié)點/首先發(fā)送一個ZE4戶 消息并附加有他的跳數信息。在收到A^^消息后,根據自己的跳數信息和收到A^4尸消息中 包含的跳數信息比較后,每個節(jié)點要么設置自身為休眠狀態(tài)要么根據自身的跳數信息復位自 己的定時器為一個不同的計數周期。在傳輸半徑及c適當設置的情況下,如果一個傳感器節(jié) 點收到^個或多個來自具有相同跳數臨節(jié)點的Z^4尸消息,那么該節(jié)點就需設置為休眠狀態(tài)。 節(jié)點《 , A 5, & 7第一次收到來自節(jié)點/的££^消息后,每個節(jié)點都將自己的定時器復 位到一個/和最大跳數之間的隨機值倍數的時間周期。假設節(jié)點J的定時器首先計數滿,那 么他就設置自己的狀態(tài)為活動狀態(tài)并且發(fā)送一個i^^消息,并且該消息能被4和5收到,4 和5分別復位自己的定時器,假設5的定時器早于4的定時器計數滿并發(fā)送了一個^5M,消 息,那么4又會收到來自5的消息,那么在收到2個具有相同跳數的節(jié)點的L54尸消息后,4 就會設置自身為休眠狀態(tài)。而且為了讓每個節(jié)點能夠在休眠和活動狀態(tài)之間進行切換,LEAP 消息能夠包含一個時間周期值表述該節(jié)點活動狀態(tài)的時間。同樣,該值也可以計算出休眠的 節(jié)點的休眠時間。而且,在間隔了某個時段后,所有的節(jié)點又能夠重新變?yōu)榛顒訝顟B(tài)。所述步驟2. 3)如果沒有收到新的鄰接點交互消息,計時器記數并檢査if時器'是否到期, 如果是,那么該節(jié)點繼續(xù)等待接收鄰接點的交互信息,否則,節(jié)點工作狀態(tài)設置為活動狀態(tài)
并發(fā)送交互信息。其中進一步分為下述步驟
2. 3.1)節(jié)點定時器r減i,計數器^加1;
2.3.2) 判斷計時器;r是否為o;
2.3.3) 如果不為0,那么該節(jié)點等待接收A^^消息,
2.3.4) 如果為0,那么節(jié)點設置自身為活動狀態(tài)并修改自身狀態(tài)參數,并發(fā)送 ^E4戶消息;調整自身狀態(tài)參數如下所示
節(jié)點工作狀態(tài)標識S =ac"ve;節(jié)點覆蓋范圍控制標識B =/k^e; 節(jié)點計時器r-7V — JV,-AT。;
其中W。為傳播時延和節(jié)點處理數據的時延之和所占用的信號節(jié)拍數。 上述步驟2.2)和步驟2.3)描述了跳數建立的過程,如圖2所示,在無錯和無沖突的環(huán)境 下,如果功率不改變上述跳數建立的過程僅執(zhí)行一次。 下面對步驟3做詳細說明。 所述步驟3.1)中按如下方式調整節(jié)點自身狀態(tài)參數-節(jié)點計時器r-7V — M-W。;
節(jié)點工作狀態(tài)標識S -acOVe; 節(jié)點覆蓋范圍控制標識^ =/a/se。
總之,本發(fā)明不需要復雜的面積和距離的計算,僅通過每個節(jié)點的跳數信 息和發(fā)送功率來實現調度傳感器節(jié)點的目的;節(jié)點間控制消息的開銷小;傳感器網絡的節(jié)點 密度對節(jié)點間的報文開銷不會產生很大的影響,因此,更適合于大規(guī)模節(jié)點的傳感器網絡; 在較低的信息吞吐量的時候仍能達到很高的覆蓋率。
以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人員來說, 在不脫離本發(fā)明原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應視為本發(fā) 明的保護范圍。
權利要求
1. 一種用于傳感器網絡覆蓋范圍控制的方法,其特征在于包括下列步驟1)判斷節(jié)點狀態(tài)參數中新一輪覆蓋范圍控制標識位是否為真;2)若標識位為真,該步驟又進一步分為2.1)判斷是否收到新的鄰接點交互消息;2.2)如果收到,在將自身跳數信息和接收到的鄰接點交互消息包含的跳數比較后,調整節(jié)點自身跳數信息及其他狀態(tài)參數,按照節(jié)點跳數環(huán)形分層后,根據節(jié)點的所在層和收到同層的交互消息數目,確定節(jié)點的工作狀態(tài);2.3)如果沒有收到新的鄰接點交互消息,計時器記數并檢查計時器是否到期,如果是,那么該節(jié)點繼續(xù)等待接收鄰接點的交互信息,否則,節(jié)點工作狀態(tài)設置為活動狀態(tài)并發(fā)送交互信息;3)如果標識位為假,該步驟又進一步分為3.1)節(jié)點計時器記數并檢查計時器是否到期;3.1)如果是,則設置自身活動狀態(tài)并復位狀態(tài)參數,等待接收鄰接點的交互信息;3.2)否則,重復上述步驟。
2.1) 判斷是否收到新的鄰接點交互消息;2.2) 如果收到,在將自身跳數信息和接收到的鄰接點交互消息包含的跳數比較后, 調整節(jié)點自身跳數信息及其他狀態(tài)參數,按照節(jié)點跳數環(huán)形分層后,根據節(jié)點的所在層和收 到同層的交互消息數目,確定節(jié)點的工作狀態(tài);2.3) 如果沒有收到新的鄰接點交互消息,計時器記數并檢查計時器是否到期,如果 是,那么該節(jié)點繼續(xù)等待接收鄰接點的交互信息,否則,節(jié)點工作狀態(tài)設置為活動狀態(tài)并 發(fā)送交互信息;3)如果標識位為假,該步驟又進一步分為 3.1)節(jié)點計時器記數并檢查計時器是否到期;3.1) 如果是,則設置自身活動狀態(tài)并復位狀態(tài)參數,等待接收鄰接點的交互信息;3.2) 否則,重復上述步驟。2、 根據權利要求1所述的用于傳感器網絡覆蓋范圍控制的方法,其特征在于所述步驟i)中節(jié)點狀態(tài)參數格式w151iv,iw2iAg尸I7}由以下狀態(tài)位表示S:節(jié)點工作狀態(tài)標識位,說明是否為休眠節(jié)點;5:節(jié)點覆蓋范圍控制標識位,說明新一輪覆蓋范圍控制是否開始;節(jié)點計數器位,說明記錄收到最新一條鄰接點交互消息時,時鐘所用的節(jié)拍信號的數目;節(jié)點i卡數器位,記錄從節(jié)點跳數小于自身的節(jié)點收到的鄰接點交互消息數量; 節(jié)點計數器位,記錄從節(jié)點跳數等于自身的節(jié)點收到的鄰接點交互消息數量;尸節(jié)點發(fā)送功率位,如果該參數修改,那么節(jié)點的功率也會隨之調整; r:節(jié)點計時器位,用于記錄在本輪周期中該節(jié)點的剩余時間。3、 根據權利要求1所述的用于傳感器網絡覆蓋范圍控制的方法,其特征在于所述步 驟2)中節(jié)點間的交互消息命名為A^,消息,該Z^M尸消息封裝格式(/^lPr |7>},各個字 段表示如下i/r:發(fā)送消息節(jié)點相對環(huán)心節(jié)點的跳數;Pr:發(fā)送消息節(jié)點的發(fā)i^功專;:發(fā)送消息節(jié)點在本輪周期中的剩余時間;其中,環(huán)心節(jié)點是人為的定義一個在傳感器網絡中,相對于其他節(jié)點,初始跳數為0的 節(jié)點。4、 根據權利要求1所述的用于傳感器網絡覆蓋范圍控制的方法,其特征在于所述步 驟2.2)包括下述步驟2.2.1) 自身預設跳數和收到ZW尸消息中的跳數信息比較并確定自身所在的邏輯層;2.2.2) 如果預設跳數大于Z^^消息中的跳數,調整自身狀態(tài)參數,執(zhí)行步驟3. 1);2.2.3) 如果自身跳數小于ZW尸滑息中的跳數,則執(zhí)行步驟3.1);2.2.4) 如果自身跳數等于力a尸消息中的跳數,調整自身的狀態(tài)參數; 2. 2. 5)由記數器A^判斷是否收到同層的2個鄰接點的Z^M尸消息;2.2.6)如果收到,節(jié)點調整自身的狀態(tài)參數并設置自身為休眠狀態(tài),并等待下一輪覆 蓋范圍控制;2.2.7)如果沒收到,節(jié)點調整自身狀態(tài)參數后執(zhí)行步驟3.1)。5、 根據權利要求1所述的用于傳感器網絡覆蓋范圍控制的方法,其特征在于所述步 驟2.3)包括下述步驟2. 3.1)定時器r減i,計數器M加i;2.3.2) 判斷計時器是否為0;2.3.3) 如果不為0,那么該節(jié)點等待接收L^,消息,2.3.4) 如果為0,節(jié)點設置自身為活動狀態(tài)并修改自身狀態(tài)參數,并發(fā)送Z^4P消息。6、 根據權利要求1所述的用于傳感器網絡覆蓋范圍控制的方法,其特征在于所述步 驟2.2.1)包括下述步驟2.2.1.1)指定一個節(jié)點為環(huán)心節(jié)點且其跳數為0,其他節(jié)點的跳數設置為闕值i/皿;2. 2.1. 2)環(huán)心節(jié)點在定時器計數滿后發(fā)送一個包含自身跳數LE^消息給臨節(jié)點; 2.2.1.3)任何節(jié)點J'收到鄰接點ZW戶消息后都將該信息中的/^與自身的跳數信息 預進行比較,如果自己的跳數等于或小于份節(jié)點將忽略AW尸消息,否則,賴'〉份 +厶節(jié)點將自己的跳數設置為根據各個節(jié)點自身的跳數信息的不同,劃分為 相對環(huán)心的不同層中。
全文摘要
一種用于傳感器網絡覆蓋范圍控制的方法1)判斷節(jié)點狀態(tài)參數中新一輪覆蓋范圍控制標識位是否為真;2)若標識位為真,判斷是否收到新的鄰接點交互消息;如果收到在將自身跳數信息和接收到的鄰接點交互消息包含的跳數比較后,調整節(jié)點自身跳數信息及其他狀態(tài)參數,按照節(jié)點跳數環(huán)形分層確定節(jié)點的工作狀態(tài);如果沒有收到新的鄰接點交互消息,檢查計時器是否到期,繼續(xù)等待接收鄰接點的交互信息,否則,節(jié)點工作狀態(tài)設置為活動狀態(tài)并發(fā)送交互信息;3)如果標識位為假,判斷節(jié)點計時器記數并檢查計時器是否到期;如果是則設置自身活動狀態(tài)并復位狀態(tài)參數,等待接收鄰接點的交互信息。本發(fā)明在為監(jiān)測區(qū)域提供足夠覆蓋范圍的同時減少每個節(jié)點的能量損耗,適合于大規(guī)模傳感器網絡。
文檔編號H04B7/26GK101272166SQ20081011172
公開日2008年9月24日 申請日期2008年5月15日 優(yōu)先權日2008年5月15日
發(fā)明者威 吳, 忠 周, 濤 尚, 靖 曹, 閆以軍 申請人:北京航空航天大學