楊彩云汪小東汪 晨王海軍毛科技
(1.衢州學院電氣與信息工程學院,浙江 衢州 324000;2.浙江九州治水科技股份有限公司,浙江 衢州 324000;3.衢州市氣象局,浙江 衢州 324000;4.上海電機學院,上海 201306;5.浙江工業(yè)大學計算機科學與技術軟件學院,浙江 杭州 310014)
無線傳感器網絡(Wireless sensor networks,WSN)是一種由大量傳感器節(jié)點組成,并以無線自組織的形式構成的通信網絡[1-2]。 無線傳感器網絡廣泛應用于目標跟蹤、空間監(jiān)測、戰(zhàn)場敵情偵察等領域[3-4]。 無線傳感器節(jié)點通常采用干電池供電,節(jié)點能耗殆盡時一般不再進行電池更換,因此網絡壽命受到限制。 為提高網絡壽命,需要均衡網絡節(jié)點能耗,從而最大限度地提高網絡生存時間[5]。 傳感器節(jié)點在數(shù)據(jù)發(fā)送和接收時都需要消耗能量,采集的數(shù)據(jù)通過多跳傳輸轉發(fā)至Sink 節(jié)點,靠近Sink 節(jié)點的傳感器節(jié)點由于需要頻繁地轉發(fā)網絡內節(jié)點發(fā)送的數(shù)據(jù)而造成節(jié)點過早死亡,從而形成能量空洞導致網絡失效[6]。
無線傳感器網絡路由方法根據(jù)邏輯結構可分為平面路由和分層路由[7]。 平面路由中網絡內所有節(jié)點地位和功能相同,建立和維護路由時開銷大,因此適合小規(guī)模網絡。 分簇路由作為分層路由的一種,將傳感器網絡進行分簇,每個簇分配一個周期輪換的簇頭,簇頭收集簇內成員節(jié)點數(shù)據(jù)并轉發(fā)給Sink 節(jié)點[8]。 由于數(shù)據(jù)的轉發(fā)和路由通過簇頭和Sink 完成,因此分簇收集網絡數(shù)據(jù)是延長網絡生命周期的重要方法之一。 Heinzelman 等人[9]提出了基于聚類的LEACH 協(xié)議,通過隨機選舉簇頭均勻地分配網絡內節(jié)點之間的負載,LEACH 協(xié)議中簇內成員節(jié)點、簇頭節(jié)點和Sink 之間均通過一跳的方式進行數(shù)據(jù)傳輸。
帶狀無線傳感器網絡是一種長度遠大于寬度的網絡,網絡內節(jié)點呈線性排列,主要應用于橋梁、管道、河流、地鐵等場景之中[10]。 與普通網絡類似的是,帶狀網絡Sink 節(jié)點附近區(qū)域的節(jié)點要傳輸更多的數(shù)據(jù)量,因此也會產生能量空洞問題。 而目前大多數(shù)路由方法僅適合于螺旋或者環(huán)形網絡場景,不適合于帶狀的網絡,因此研究帶狀網絡的能耗均衡具有重要意義。
通過靜態(tài)Sink 節(jié)點進行網絡數(shù)據(jù)收集,較難實現(xiàn)網絡的均衡。 因此,Tunca 等人[11]提出了通過移動Sink 來收集網絡數(shù)據(jù)的方法,該方法避免因數(shù)據(jù)傳輸距離長導致數(shù)據(jù)傳輸能耗高的問題,移動Sink提高了網絡能耗的均衡性,對于提高網絡壽命具有重要意義。 Khan 等人[12]將基于移動Sink 的數(shù)據(jù)收集和分發(fā)方案分為路徑約束、無路徑約束和Sink 移動性受限三種,并進行了比較研究,但該方案沒有對移動Sink 的最佳移動速度進行考慮,且未根據(jù)簇頭與Sink 的距離動態(tài)地調整傳輸距離,因此數(shù)據(jù)收集時網絡能耗較高。 Krishnan 等人[13]提出了一種基于MDC 優(yōu)化的無線傳感器網絡數(shù)據(jù)采集方法,使用改進的LEACH 算法選舉簇頭,簇內成員節(jié)點使用距離調整算法自動調整傳輸距離,最后采用基于螢火蟲優(yōu)化算法的MDC 來提高網絡的生存期,實現(xiàn)高效數(shù)據(jù)采集。 該方法基于環(huán)狀網絡模型研究,不適用于帶狀網絡模型。 Qiao 等人[14]為提高帶狀網絡的通信效率,提出了一種基于位置的鏈簇路由協(xié)議(Position-based Chain Cluster Routing,PCCR),PCCR將帶狀WSN 劃分為多個帶狀區(qū)域簇,通過節(jié)點的位置以及能耗情況選擇簇頭,并建立簇頭鏈作為帶狀WSN 的數(shù)據(jù)傳輸路線轉發(fā)節(jié)點數(shù)據(jù),結果表明PCCR 協(xié)議比LEACH 協(xié)議更加適合于帶狀WSN,具有更長的網絡生命周期。 然而該方法采用靜態(tài)Sink 收集收據(jù),仍會存在能量空洞。 Xin 等人[15]首次嘗試解決帶狀無線傳感器網絡的多對一傳輸問題,提出一種基于精準距離的傳輸方案(ADTS),這種傳輸方案提高了帶狀無線傳感器網絡的生命周期。 但該方法是基于靜態(tài)Sink 場景之下,雖然通過調整通信范圍提高了網絡壽命,但能量空洞問題仍未完全解決。 Ye 等人[16]針對道路結構的檢測,提出了一種帶狀聚類方案(Strip Clustering Scheme,SCS),該方案包括網絡區(qū)域劃分、簇首節(jié)點選擇、鏈路構建、數(shù)據(jù)融合和傳輸。 SCS 通過數(shù)據(jù)融合,減少冗余數(shù)據(jù),降低網絡總能耗,但該方案也是建立在靜態(tài)Sink 的基礎之上,因此能量空洞問題依然存在。
綜上所述,目前基于環(huán)狀無線傳感器網絡的路由協(xié)議無法適應帶狀無線傳感器網絡。 而已經提出的相關帶狀無線傳感器網絡的數(shù)據(jù)匯聚協(xié)議未考慮Sink 節(jié)點的最佳移動速度,從而導致網絡數(shù)據(jù)收集時能耗過高。 針對該問題提出一種基于移動Sink 的帶狀WSN 數(shù)據(jù)匯聚方法(Low energy data collection method based on mobile Sink in banded WSN,LEDCM),該方法通過計算Sink 節(jié)點的最佳移動速度,并自適應調整簇首節(jié)點的通訊范圍,從而以低能耗代價實現(xiàn)帶狀網絡的數(shù)據(jù)匯聚,有效避免了網絡能量空洞的產生。
本文采用帶狀網絡模型,網絡內節(jié)點以線性方式均勻分布,如圖1 所示,其中網絡長度L遠大于網絡高度H。 為減少通信能耗,采用聚簇的方式進行通信,將網絡劃分為n個大小相同的簇,表示為Setc={c1,c2,…,ci,…,cn},并根據(jù)LEACH 協(xié)議[9]為每個簇選擇一個簇頭CHi,通過周期性輪換簇頭的方式保持網絡能耗均衡。 每個簇的簇頭CHi直接與移動Sink 通信,每個簇都有w個成員節(jié)點(不包括簇頭),每個成員節(jié)點生成k位數(shù)據(jù)。 網絡內簇頭的主要任務是:收集簇內成員節(jié)點采集的數(shù)據(jù),以1/α的融合率將數(shù)據(jù)進行融合,以減少冗余數(shù)據(jù)傳輸,然后以單跳的方式將數(shù)據(jù)傳輸至移動Sink。 如圖1 所示,網絡內任意一個簇Ci的長度表示為leni,并滿足條件0 圖1 網絡模型 本文采用文獻[17]提出的節(jié)點能耗模型,根據(jù)節(jié)點傳輸距離的不同,可分為自由空間模型和多徑模型。 節(jié)點發(fā)送或接收kbit 數(shù)據(jù)時,能耗如式(1)和式(2)所示: 式中:Eelec表示收發(fā)電路的基本能耗;Efs、Eamp表示功率放大電路的系數(shù);k表示收發(fā)數(shù)據(jù)的位數(shù);d表示通信距離;d0(d0=87m)是自由空間模型和多路徑模型之間的邊界。 假設本文節(jié)點遵循自由空間模型,即dj 假設1 移動Sink 和無線基站的能量充足,并且是可充電的。 假設2 將N個傳感器節(jié)點以線性形式均勻地部署于帶狀網絡內,移動Sink 并以最佳移動速度運行于網絡上方,如圖1 所示。 當移動Sink 到達待數(shù)據(jù)收集的簇附近時,簇頭節(jié)點調整通信范圍,使節(jié)點以較低能耗代價實現(xiàn)網絡數(shù)據(jù)的收集。 網絡能耗的最小目標可通過式(3)表示: 式中:Ei表示i節(jié)點的總基本能耗。 本文的數(shù)據(jù)通信方式為:簇內成員節(jié)點采集網絡數(shù)據(jù)發(fā)送給簇頭,簇頭融合數(shù)據(jù),將融合之后的數(shù)據(jù)通過單跳的方式轉發(fā)給移動Sink,最后由Sink 將數(shù)據(jù)發(fā)送至基站。 由于移動Sink 和無線基站能量充足,因此在網絡通信能耗方面只需考慮兩部分:一是簇內成員節(jié)點與簇頭通信的能耗;二是簇頭與移動Sink 通信的能耗。 由于網絡的L?H,因此簇內兩節(jié)點之間的距離可通過投影點之間的距離進行表示,如圖2 所示,即可認為d(ni,ni+1)=d(n′i,n′i+1)。 因此,簇Ci內任意兩節(jié)點之間距離平方的期望E(d2),可由式(4)計算得到,而此時E(d2)的值剛好約等于簇內成員節(jié)點到簇頭平均距離的平方。 圖2 節(jié)點投影點距離 式中:x,y分別表示投影節(jié)點n′i和n′i+1的位置。 對于簇Ci內的通信能耗由兩部分組成,分別是簇內成員節(jié)點將數(shù)據(jù)發(fā)送給簇頭CHi消耗的能量和簇頭CHi從簇內成員節(jié)點接收數(shù)據(jù)消耗的能量。 由于每個簇Ci都由w個成員節(jié)點組成,且每個成員節(jié)點都產生k位數(shù)據(jù)。 因此,簇內成員節(jié)點需要發(fā)送的總數(shù)據(jù)量為TxCM=wk。 通過式(1)和式(4)可以計算出簇成員發(fā)送TxCM位數(shù)據(jù)時的總能耗,如式(5)所示: 由于簇頭接收的數(shù)據(jù)量RxCM與簇內成員節(jié)點發(fā)送的數(shù)據(jù)量TxCM相同,因此可根據(jù)式(2)和式(4)計算簇頭CHi接收RxCM位數(shù)據(jù)的能耗,如式(6)所示: 所以簇Ci內消耗的通信總能耗為+,如式(7)所示: 移動Sink 在距離網絡上方dm的位置處以速度vi沿特定的方向移動(其中dm 圖3 簇頭與移動Sink 距離 根據(jù)式(7)可以計算簇頭CHi與移動Sink 每個位置處的距離平方和,如式(10)所示: 簇頭CHi與移動Sink 距離平方的均值為,由式(11)計算得到: 由于簇頭從簇內成員節(jié)點接收wk位數(shù)據(jù),而簇頭的數(shù)據(jù)融合率為1/α,因此簇頭發(fā)送給移動Sink 的數(shù)據(jù)量TxCH=wk/α,根據(jù)式(1)可以計算出簇頭將數(shù)據(jù)發(fā)送至移動Sink 消耗的能量,如式(12)所示: 根據(jù)式(2)可計算出移動Sink 接收簇頭CHi數(shù)據(jù)時消耗的能量ESink-rxi,如式(13)所示: 由于移動Sink 的能量充足,并且是可補充的。因此,在簇頭與移動Sink 通信時可忽略移動Sink 消耗的能量,即=0。 則簇頭與移動Sink 通信的總能耗可由式(14)計算得到: 節(jié)點的平均能耗是簇內通信能耗和簇頭與移動Sink 通信能耗的均值。 由式(7)和式(14)可以得到簇Ci通信時總能耗,如式(15)所示: 由于簇Ci內成員節(jié)點的個數(shù)為w(即簇內節(jié)點數(shù)量為w+1),因此節(jié)點的平均通信能耗為,如式(16)所示: 在數(shù)據(jù)采集階段,移動Sink 根據(jù)節(jié)點的平均能耗計算出最佳移動速度,利用數(shù)據(jù)發(fā)送前后的距離,調整簇頭的傳輸距離,從而減少通信能耗。 智能化發(fā)展是未來階段自動化機械制造的主要趨勢,我國的機械制造自動化智能技術應用總體而言相對普及,但實際智能操控水平并不高,部分關鍵性系統(tǒng)操作流程仍需人工干預完成,導致生產成本大幅增加,自動化生產效率大打折扣。未來階段的自動化機械設備制造必須與現(xiàn)代智能化技術有效融合,通過一系列的技術研發(fā)提高智能化技術應用可靠性,從將智能化技術開發(fā)納入自動化機械設備制造體系,以此提高自動化機械設備生產的實際可控性。 為減少移動Sink 收集數(shù)據(jù)時的網絡能耗,需要考慮移動Sink 的移動速度。 由于不同簇的物理規(guī)模不同,因此在采集數(shù)據(jù)時,移動Sink 的移動速度會有所差異,其目的是為了減少網絡能耗,盡可能地提高網絡生命周期。 由式(16)可知,節(jié)點的平均能耗是關于Sink 移動速度vi的二次方程,并且該方程開口向上,可以對平均能耗求取一階導,當一階導為0 時,此時的節(jié)點平均能耗最低,即移動Sink 在采集該簇數(shù)據(jù)時的最佳移動速度。 在數(shù)據(jù)傳輸?shù)某跗?,本文利用LEACH 協(xié)議進行簇頭選舉、簇規(guī)劃以及確定數(shù)據(jù)傳輸路徑等。 移動Sink 從帶狀網絡的一端開始移動并廣播數(shù)據(jù)請求包Dreq,當簇頭接收到數(shù)據(jù)請求包Dreq時,給移動Sink 回復Dreply數(shù)據(jù)包,接著開始網絡數(shù)據(jù)的傳輸。具體的數(shù)據(jù)匯聚過程如表1 所示。 表1 數(shù)據(jù)匯聚方法 本文提出的LEDCM 方法在數(shù)據(jù)匯聚時,移動Sink 始終以最佳移動速度運行。 并且簇頭動態(tài)調整傳輸距離,很好地解決了因傳輸距離的長短而造成能量浪費或者數(shù)據(jù)包投遞率低的問題,因此本文提出的方法能夠以較低能耗實現(xiàn)較高的網絡數(shù)據(jù)包投遞率。 使用MATLAB 仿真軟件對本文提出的LEDCM方法進行實驗,實驗分析了節(jié)點的平均能耗、網絡生存時間和數(shù)據(jù)包投遞率。 為體現(xiàn)本文提出方法性能的優(yōu)越性,與現(xiàn)有的基于帶狀網絡模型的方法進行對比,包括帶狀聚類方案(SCS)[16]、節(jié)能地理路由協(xié)議(EEGR)[18]和直接傳輸方案(DT)[18]。 網絡參數(shù)配置如表2 所示。 表2 網絡參數(shù)配置 實驗中將網絡長度L設置為1 000 m,簇的長度leni 圖4 簇規(guī)模與網絡能耗關系 從圖4 可以看出,隨著簇規(guī)模的增大,節(jié)點的平均能耗首先迅速降低,當簇規(guī)模leni大于60 之后,節(jié)點平均能耗緩慢上升。 由于剛開始簇的規(guī)模較小,隨著簇規(guī)模的增大,網絡內簇的數(shù)量在減少,從而降低了由于大量簇頭承擔數(shù)據(jù)轉發(fā)時過多的能量消耗。 而當簇規(guī)模大于一定值時,由于簇的數(shù)量少,此時負載主要由少量的簇頭承擔,但是該情況將加快簇頭輪換,影響數(shù)據(jù)傳輸性能。 為降低節(jié)點平均能耗,選擇一個合適的簇規(guī)模較為重要。 靜態(tài)Sink 的網絡模型中,Sink 節(jié)點部署于網絡的一側,如果簇的ID 越大,表明該簇距離Sink 節(jié)點的距離就越遠。 實驗中分別將網絡長度L設置為400 m,600 m 和1 000 m,圖5 至圖7 分別分析了不同的簇與節(jié)點平均能耗之間的關系,網絡簇的規(guī)模為50。 實驗數(shù)據(jù)均為重復20 次的平均結果。 圖5 簇ID 與節(jié)點平均能耗關系(L=400 m) 圖6 簇ID 與節(jié)點平均能耗關系(L=600 m) 圖7 簇ID 與節(jié)點平均能耗關系(L=1 000 m) 從圖5 至圖7 可以看出隨著簇ID 的增大,DT和SCS 消耗的能量在增多,而LEDCM 方法節(jié)點的平均能耗始終保持不變,且能耗最低。 這是因為隨著簇ID 的增大,DT 和SCS 方法中簇頭與Sink 的距離就越長,則數(shù)據(jù)傳輸距離就越長,需要消耗的能量就越多。 而LEDCM 方法通過移動Sink 均衡網絡能耗,由于在數(shù)據(jù)收集時,移動Sink 始終以最佳速度運動,而且簇頭的傳輸距離根據(jù)與移動Sink 的距離自適應地調整,因此LEDCM 方法比現(xiàn)有方法的平均節(jié)點能耗都低,且網絡能耗均衡性最好。 網絡生存時間是評價一個網絡節(jié)能性和能耗均衡性的重要標準,網絡生存時間越長,網絡節(jié)能性和網絡均衡性就越好。 衡量網絡生存時間的標準有很多,比如網絡中第一個節(jié)點或最后一個節(jié)點死亡的時間、網絡鏈路中斷的時間。 本文采用最后一個節(jié)點死亡的時間作為網絡的生存時間。 圖8 分析了網絡長度L=1 000 m,網絡簇的個數(shù)為20 時(每個簇規(guī)模相同),每輪之后存活的節(jié)點數(shù)量。 圖9 分析了網絡內簇的個數(shù)為20 時,網絡長度與網絡生存時間的關系。 圖8 實驗輪數(shù)與存活節(jié)點關系 圖9 網絡長度與網絡生存時間關系 從圖8 可以看出,LEDCM 第一次出現(xiàn)死亡節(jié)點時,網絡已經完成了5.2×104輪的數(shù)據(jù)收集,當網絡內節(jié)點全部死亡時,LEDCM 完成了8.12×104輪的數(shù)據(jù)收集。 與其他方法對比,當存活節(jié)點數(shù)量相同的情況下,LEDCM 采集的數(shù)據(jù)輪數(shù)是最多的,即LEDCM 的網絡壽命最長。 這是因為本文提出的方法Sink 以最佳移動速度運行,并且簇頭在數(shù)據(jù)傳輸時動態(tài)地調整傳輸距離,因此使能耗達到最低,從而提高了網絡生命周期。 從圖9 可以看出隨著網絡長度的增加,LEDCM的網絡的生存時間緩慢減小,但與SCS、EEGR 和DT相比,網絡生存時間最長。 由于隨著網絡規(guī)模的增多,在網絡內簇的個數(shù)不變的情況下,每個簇的規(guī)模在逐漸增大,需要傳輸?shù)臄?shù)據(jù)量就越多,網絡生命周期就越短。 與其他方法相比,LEDCM 方法的移動Sink 采用最佳移動速度采集數(shù)據(jù),因此網絡能耗最低,網絡壽命最長。 數(shù)據(jù)包投遞率是衡量方法優(yōu)劣的一個重要指標,數(shù)據(jù)包投遞率越高表示該方法收集數(shù)據(jù)時,數(shù)據(jù)丟失率越低,收集的數(shù)據(jù)就越可靠。 圖10 分析了當網絡長度L=1 000 m,網絡簇規(guī)模為50 時,不同的實驗輪數(shù)與網絡數(shù)據(jù)包投遞率之間的關系。 圖10 數(shù)據(jù)包投遞率 從圖10 可以看出,LEDCM 的數(shù)據(jù)投遞率是最高的,當實驗輪數(shù)為6×104時,數(shù)據(jù)包投遞率為94.3%,而此時SCS、EEGR 和DT 方法的數(shù)據(jù)包投遞率分別為61.9%,50.8%,10.2%。 因為實驗輪數(shù)為4×104至6×104時,此時DT 方法中的節(jié)點已經全部死亡,因此網絡已經失效,無法實現(xiàn)數(shù)據(jù)包的傳輸,所以數(shù)據(jù)包投遞率最低。 SCS 和EEGR 在實驗輪數(shù)為4×104時,網絡內節(jié)點開始逐漸死亡,因此數(shù)據(jù)投遞率逐漸降低。 而LEDCM 方法當實驗輪數(shù)為5.2×104時才有節(jié)點能耗殆盡開始死亡,并且LEDCM 通過自適應地調整簇頭的傳輸范圍,從而以不增加通信能耗的情況下,盡可能地提高通信質量,因此LEDCM 方法的數(shù)據(jù)包投遞率是最高的。 目前帶狀無線傳感器網絡數(shù)據(jù)匯聚時能耗高、數(shù)據(jù)包投遞率低,從而造成網絡生存時間短,數(shù)據(jù)可靠性差等問題。 本文提出了一種基于移動Sink 的帶狀WSN 數(shù)據(jù)匯聚方法,移動Sink 以最佳移動速度收集數(shù)據(jù),簇頭根據(jù)與移動Sink 的距離自適應地調整傳輸范圍,從而在不浪費網絡能耗的情況下盡可能地提高網絡通信質量。 實驗結果表明,提出的方法在能耗均衡性、網絡壽命以及數(shù)據(jù)包投遞率方面都表現(xiàn)出較好的性能。 下一步工作,將研究多個移動Sink 情況下LEDCM 的性能。1.2 節(jié)點能耗模型
1.3 相關定義
2 網絡通信能耗分析
2.1 簇內通信能耗
2.2 簇頭與移動Sink 通信能耗
2.3 節(jié)點平均能耗
3 數(shù)據(jù)采集方法設計
3.1 移動Sink 的最佳移動速度
3.2 數(shù)據(jù)采集模型
4 仿真實驗
4.1 簇規(guī)模與節(jié)點能耗關系
4.2 不同簇的節(jié)點平均能耗
4.3 網絡生存時間
4.4 數(shù)據(jù)包投遞率
5 總結