寸怡鵬 唐濤 王 菲 姜德航 謝卓然
摘 要
無源無線傳感器網(wǎng)絡(luò)中選擇多跳路由進(jìn)行數(shù)據(jù)傳輸時,很容易出現(xiàn)傳感器節(jié)點選擇不合理引發(fā)的過載現(xiàn)象,嚴(yán)重時會導(dǎo)致網(wǎng)絡(luò)癱瘓,這對網(wǎng)絡(luò)傳輸性能會產(chǎn)生很不利影響。本文對這種問題產(chǎn)生原因進(jìn)行分析,而引入時分多址技術(shù),并結(jié)合網(wǎng)絡(luò)拓?fù)涮卣?,提出一種通過合理分配超幀時隙和選擇中繼節(jié)點的多跳路由算法。在無源無線傳感器網(wǎng)絡(luò)中部署多節(jié)點進(jìn)行多跳路由傳輸測試,驗證了該多跳路由算法的可行性。
關(guān)鍵詞
無源無線傳感器網(wǎng)絡(luò);多跳路由;時分多址
中圖分類號: TN929.5;TP212.9 ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識碼: A
DOI:10.19694/j.cnki.issn2095-2457.2020.11.017
0 引言
隨著目前傳感器節(jié)點的尺寸功耗不斷降低,性能日益提升,其應(yīng)用領(lǐng)域開始迅速擴(kuò)大[1]。傳感器節(jié)點大部分都用到移動電源提供能量,這對其環(huán)境適用性產(chǎn)生一定不利影響。為有效地避免這一問題,無源無線傳感器網(wǎng)絡(luò)被研發(fā)出。無源無線傳感器網(wǎng)絡(luò)是指能夠收集能量,并且能采集數(shù)據(jù)、計算、組網(wǎng)傳輸數(shù)據(jù)的網(wǎng)絡(luò),通常用于沒有穩(wěn)定供電的應(yīng)用場景[2]。
1 研究背景
圖1顯示了這種網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)情況,分析可知其中的組成單元主要有傳感器節(jié)點和網(wǎng)關(guān)??苫趥鞲衅鞴?jié)點的位置進(jìn)行劃分,而將這種網(wǎng)絡(luò)劃分為不同的區(qū)域,從1到H區(qū)。其中H代表總區(qū)數(shù),各區(qū)域中的傳感器節(jié)點為4個,對這些節(jié)點依據(jù)順序編碼序,各區(qū)域內(nèi)的節(jié)點依據(jù)逆時針順序編碼,全部節(jié)點一直編碼從1到N,通過編碼相關(guān)十六進(jìn)制數(shù)描述這些節(jié)點的位置。其中第一個區(qū)域的中繼節(jié)點為網(wǎng)關(guān),由其他區(qū)域的中繼節(jié)點基于對應(yīng)的方案確定。在進(jìn)行傳感器節(jié)點的數(shù)據(jù)傳輸時,依據(jù)從h+1到h區(qū)的順序進(jìn)行。
對這種網(wǎng)絡(luò)而言,節(jié)點一般通過多跳路由網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)傳輸,每個節(jié)點均有可能被選為中繼節(jié)點。如果某節(jié)點長時間執(zhí)行數(shù)據(jù)轉(zhuǎn)發(fā)的任務(wù),則該節(jié)點的電量將消耗殆盡,與此同時,鄰居節(jié)點由于沒有進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā),其剩余電量仍然較多,將造成網(wǎng)絡(luò)中能耗分布不均的問題。利用無源無線傳感器網(wǎng)絡(luò)可以收集能量的特點,設(shè)計一種保證節(jié)點間能耗均衡的多跳路由算法成了無線傳感器領(lǐng)域的研究熱點。
在無源無線傳感器網(wǎng)絡(luò)多跳路由過程中通常采用載波偵聽多路訪問(CSMA)機(jī)制來調(diào)度節(jié)點訪問無線網(wǎng)絡(luò)的順序和時間。但是采用該機(jī)制可能導(dǎo)致信息在傳輸信道上相互沖突而遭到破壞,為此CSMA采用了CSMA/CA(Collision Avoidance)和CSMA/CD(Collision Detection)的方法來減少或者避免沖突的發(fā)生。這兩種方法均會通過隨機(jī)等待一段時間發(fā)送數(shù)據(jù)來避免沖突的發(fā)生,存在無法保證傳輸實時性的問題。
2 多跳路由算法改進(jìn)
節(jié)點在進(jìn)行數(shù)據(jù)傳輸過程中需要消耗能量,為了解決網(wǎng)絡(luò)中能耗分布不均的問題,需要合理選擇每個區(qū)的中繼節(jié)點,使得每個區(qū)內(nèi)節(jié)點根據(jù)自身情況輪流承擔(dān)數(shù)據(jù)轉(zhuǎn)發(fā)的任務(wù)。為了能改進(jìn)多跳路由算法,本文分配了超幀時隙并且設(shè)計了中繼節(jié)點選擇方案。
2.1 超幀時隙
為有效地避免這種傳感器網(wǎng)絡(luò)中CSMA機(jī)制造成的通信沖突問題,本文使用了無線傳感器網(wǎng)絡(luò)通信技術(shù)中的時分多址方式[3]。
在將時分多址技術(shù)應(yīng)用于多跳路由算法的過程中,需要對超幀的時隙進(jìn)行合理分配。下圖2顯示了超幀時隙的分配相關(guān)情況,具體分析可知其中,t代表節(jié)點運(yùn)行在第t個活躍周期。對這種周期而言,其對應(yīng)的超幀可進(jìn)一步劃分為7個時隙段,可實現(xiàn)的功能主要如重選通知、選擇結(jié)果反饋、數(shù)據(jù)采集、休眠等。其中各時隙段可進(jìn)一步劃分為Hi個時隙,各時隙長表示為Lslot,這樣就可計算出時隙段長度表示為HiLslot,一般情況下Lslot為10ms。
2.2 中繼節(jié)點選擇方案
首先,提出了一種根據(jù)網(wǎng)絡(luò)中節(jié)點的多種指標(biāo)來動態(tài)選擇中繼節(jié)點的方法;其次,中繼節(jié)點需要根據(jù)自身的剩余電量和能量收集速率來決定是否需要重新選擇中繼節(jié)點;最后,以網(wǎng)絡(luò)中節(jié)點的一個工作周期為例,設(shè)計了中繼節(jié)點選擇方案的流程。
2.2.1 中繼節(jié)點動態(tài)選擇
在選擇中繼節(jié)點過程中應(yīng)用了不同權(quán)重系數(shù)多種指標(biāo)的能耗均衡策略[4]。對與此相關(guān)的中繼節(jié)點進(jìn)行選擇時,單純選擇節(jié)點剩余電量等指標(biāo)為依據(jù)。為更好地滿足所選中繼節(jié)點的質(zhì)量要求,對多種指標(biāo)都進(jìn)行分析,在剩余電量基礎(chǔ)上,還分析了其功耗和RSSI值[5]。根據(jù)指標(biāo)相關(guān)的信息量進(jìn)行分析,設(shè)置出合理的權(quán)重系數(shù)給各指標(biāo)。確定出全部指標(biāo)和對應(yīng)權(quán)重系數(shù)乘積之和,然后進(jìn)行對比分析,確定出值最大的節(jié)點,將此節(jié)點當(dāng)作為目標(biāo)節(jié)點。
首先,確保在一個周期數(shù)據(jù)傳輸過程中,傳感器節(jié)點不會出現(xiàn)中斷的現(xiàn)象,為此需要設(shè)定一個閾值電量Eth進(jìn)行判斷,在發(fā)現(xiàn)傳感器節(jié)點的剩余電量低于設(shè)定的閾值情況下結(jié)束工作。設(shè)當(dāng)前節(jié)點的剩余電量為Eremain,傳輸數(shù)據(jù)時的功耗為Psend,分配的發(fā)送時隙時間具體表示為Tsend。對全部的待選節(jié)點進(jìn)行遍歷,如果發(fā)現(xiàn)其符合條件Eremain-PsendTsend>Eth,則認(rèn)為結(jié)束此周期的傳輸后其剩余電量高于閾值,如果不滿足此條件則不選擇其當(dāng)作為中繼節(jié)點,結(jié)束后對列表進(jìn)行更新。
其次,通過公式評分法對中繼節(jié)點進(jìn)行評分,相應(yīng)的流程如下:根據(jù)要求設(shè)置適當(dāng)?shù)闹笜?biāo)和相關(guān)權(quán)重系數(shù),,在此分析過程中假設(shè)X1為剩余電量,X2為發(fā)射功率,X3表示RSSI值,Wi為指標(biāo)i的權(quán)重系數(shù)。在對各指標(biāo)的權(quán)重系數(shù)進(jìn)行分析時,選擇了信息量權(quán)數(shù)法,這種方法在設(shè)置時主要依據(jù)指標(biāo)的信息量進(jìn)行,基于變異系數(shù)法進(jìn)行判斷,設(shè)置的權(quán)重系數(shù)大小和變異幅度正相關(guān)。
體系中包含m個指標(biāo),設(shè)其中的指標(biāo)Xi有n個樣本,設(shè)的應(yīng)用其均值,Si為相關(guān)的標(biāo)準(zhǔn)差,這種情況下可通過如下表達(dá)式確定出其變異系數(shù)為:
將CV設(shè)置為不同指標(biāo)的權(quán)重得分,進(jìn)行歸一化處理后就可確定出的對應(yīng)指標(biāo)的權(quán)重系數(shù)。在此過程中還應(yīng)該確定出此種系數(shù)的正負(fù)號,也就是指標(biāo)值增加后,對應(yīng)的貢獻(xiàn)變化方向。選擇中繼節(jié)點應(yīng)該依據(jù)一定的原則,主要是剩余電量多,這樣可確保在運(yùn)行過程中網(wǎng)絡(luò)全部節(jié)點的能耗均衡,提高網(wǎng)絡(luò)運(yùn)行的穩(wěn)定性。因而應(yīng)該設(shè)置剩余電量指標(biāo)的權(quán)重系數(shù)為正。而功耗小則節(jié)點被選擇為中繼節(jié)點的可能性較高,在選擇后設(shè)置發(fā)射功率為對應(yīng)子節(jié)點的,由此分析可確定出發(fā)射功率指標(biāo)的這種系數(shù)為負(fù)。最后,相關(guān)RSSI值大的節(jié)點被選擇為中繼節(jié)點,此參數(shù)和兩節(jié)點的間距存在負(fù)相關(guān)關(guān)系,其數(shù)值大則說明在數(shù)據(jù)傳輸中不容易受到環(huán)境因素的干擾,因而此指標(biāo)的權(quán)重系數(shù)為正??稍谝陨戏治龌A(chǔ)上確定出三類指標(biāo)的權(quán)重系數(shù)結(jié)果如下:
接著設(shè)xi為Xi的第n個樣本,這樣可通過如下的表達(dá)式確定出選擇參數(shù)RN
進(jìn)行對比分析,確定出RN值最大的節(jié)點,將其設(shè)置為目標(biāo)節(jié)點,后者對狀態(tài)進(jìn)行調(diào)整后,依據(jù)超幀時隙相關(guān)要求進(jìn)行子節(jié)點數(shù)據(jù)的接收。
2.2.2 中繼節(jié)點周期更換
在確定出合適的中繼節(jié)點后,接著應(yīng)分析怎樣情況下需要更換中繼節(jié)點。根據(jù)實際的經(jīng)驗可知,節(jié)點在運(yùn)行過程中可收集附近的環(huán)境能量,這可基于支持向量回歸發(fā)放進(jìn)行預(yù)測[6]。中繼節(jié)點可通過這種方法預(yù)測出下一個數(shù)據(jù)處理周期內(nèi)收集的能量,并計算確定出此周期結(jié)束后的剩余電量。在判斷發(fā)現(xiàn)剩余的電量低于閾值情況下,為滿足其后的正常運(yùn)行要求,其會給自己的子節(jié)點發(fā)送重選廣播,讓后者重新選擇中繼節(jié)點。
在此設(shè)置的訓(xùn)練數(shù)據(jù)為最近一段時間內(nèi)收集的能量數(shù)據(jù),其中Ei對應(yīng)于i周期收集的能量,可據(jù)此預(yù)測出下周期可收集的能量。
支持向量回歸過程中,需要確定出一個線性函數(shù),控制此函數(shù)與訓(xùn)練數(shù)據(jù)差值低于ε,設(shè)線性函數(shù)可具體表示如下:
代入訓(xùn)練數(shù)據(jù)就能確定出此線性函數(shù),然后就可預(yù)測出下周期中繼節(jié)點收集的能量Eharvest。如式(14),而下周期結(jié)束后其剩余電量Enext可基于如下表達(dá)式確定出
在對比分析發(fā)現(xiàn)剩余電量小于設(shè)定的閾值時,則認(rèn)為下一周期數(shù)據(jù)傳輸完畢后,中繼節(jié)點的電量不足而關(guān)閉,此時,條件下中繼節(jié)點會發(fā)送重選信息給子節(jié)點。
2.2.3 中繼節(jié)點選擇方案流程
以下以一個工作周期為例,設(shè)計出選擇中繼節(jié)點的流程,具體情況如圖3。在此選擇過程中先初步選擇中繼節(jié)點,且計算確定出鄰居區(qū)節(jié)點的剩余電量。然后依據(jù)條件將其中不滿足要求的節(jié)點排除。接著依據(jù)剩余電量、發(fā)射功率和RSSI值相關(guān)指標(biāo)進(jìn)行計算確定出各候選節(jié)點的RN值,進(jìn)行對比分析確定出最大值對應(yīng)的節(jié)點,將其設(shè)置為中繼節(jié)點。后者在運(yùn)行過程中采集和傳輸結(jié)束后預(yù)測分析下一個周期內(nèi)收集的能量,然后進(jìn)行判斷,如發(fā)現(xiàn)不滿足條件,則發(fā)送重選信息給子節(jié)點,其后進(jìn)入休眠狀態(tài)。
3 測試驗證
3.1 測試拓?fù)?/p>
圖4顯示出這種網(wǎng)絡(luò)的測試拓?fù)鋱D,分析可知此網(wǎng)絡(luò)包含十六個節(jié)點,可總體上劃分為4個區(qū),對其中各區(qū)內(nèi)的節(jié)點依據(jù)逆時針順序編號。網(wǎng)關(guān)用于對全部節(jié)點發(fā)送的數(shù)據(jù)進(jìn)行接收,和這種網(wǎng)絡(luò)數(shù)據(jù)傳輸相關(guān)的報文主要含有中繼節(jié)點初選廣播包、中繼節(jié)點重選廣播包和路由轉(zhuǎn)發(fā)數(shù)據(jù)包等,相關(guān)情況如下所示[7]。
3.2 中繼節(jié)點選擇測試
在此測試過程中設(shè)置第3區(qū)全部節(jié)點開始選擇中繼節(jié)點,對此區(qū)域中的9-12號節(jié)點進(jìn)行對比分析,確定出中繼節(jié)點,在選擇時依據(jù)圖2相關(guān)的超幀時隙進(jìn)行,在中繼節(jié)點確定出之后進(jìn)行數(shù)據(jù)的傳輸。
3.3 中繼節(jié)點更換測試
中繼節(jié)點在運(yùn)行過程中預(yù)測下一個工作周期內(nèi)收集的能量,并計算分析確定出此周期結(jié)束后的剩余電量。在對比發(fā)現(xiàn)剩余電量值低于設(shè)定值情況下,其會發(fā)送重選廣播包到子節(jié)點,然后對中繼節(jié)點進(jìn)行重選擇。9號節(jié)點在進(jìn)行中繼節(jié)點的更換時,依據(jù)圖6相關(guān)的順序進(jìn)行。在確定出下一周期的中繼節(jié)點后后,通過其進(jìn)行數(shù)據(jù)的轉(zhuǎn)發(fā)。在中繼節(jié)點更換過程中,6號節(jié)點發(fā)送了這種重選廣播包,5、7、8號節(jié)點則傳輸了初選廣播包,9號傳輸了反饋廣播包,7號傳輸了確認(rèn)廣播包。在以上操作基礎(chǔ)上,9號節(jié)點的重選工作實現(xiàn),中繼節(jié)點從6號變?yōu)?號。
3.4 數(shù)據(jù)傳輸測試
在三次廣播選擇完畢后,節(jié)點發(fā)送自身采集的信息到中繼節(jié)點。以第3區(qū)9號節(jié)點的數(shù)據(jù)傳輸為例進(jìn)行說明,此節(jié)點選擇了6號節(jié)點當(dāng)作自己中繼節(jié)點,這樣其需要發(fā)送數(shù)據(jù)包給6號節(jié)點。
路由轉(zhuǎn)發(fā)數(shù)據(jù)包的具體過程如下圖7,分析此圖可知,節(jié)點的數(shù)據(jù)包源和目標(biāo)地址分別為0x0009、0x0006。在此條件下9號節(jié)點被選中為中繼節(jié)點,因而對應(yīng)的角色值為0x01。網(wǎng)絡(luò)報文類型值為0x06,其中包含了80個字節(jié)信息,并且對應(yīng)的序列段值為0x0000,進(jìn)而判斷出其屬于一個路由轉(zhuǎn)發(fā)數(shù)據(jù)包。
4 結(jié)論
本文對無源無線傳感器網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行論述,且針對這種網(wǎng)絡(luò)而設(shè)置了一類多跳路由算法,介紹了多跳路由的網(wǎng)絡(luò)拓?fù)?,設(shè)計了超幀時隙和中繼節(jié)點選擇方案,并通過分析傳感器節(jié)點在中繼節(jié)點選擇、中繼節(jié)點更換以及數(shù)據(jù)傳輸過程的網(wǎng)絡(luò)報文對多跳路由算法進(jìn)行了測試驗證。驗證結(jié)果表明,節(jié)點可通過該多跳路由算法在無源無線傳感器網(wǎng)絡(luò)中實現(xiàn)數(shù)據(jù)的傳輸。
參考文獻(xiàn)
[1]Ilyas M,Mahgoub I.Smart Dust:Sensor network applications,architecture and design[M].CRC press,2016.
[2]羊威.車載無源無線傳感器網(wǎng)絡(luò)的設(shè)計與實現(xiàn)[D].北京:北京交通大學(xué),2018. 1-12.
[3]YANG D,XU Y,WANG H,et al.Assignment of segmented slots enabling reliable real-time transmission in industrial wireless sensor net-works[J].IEEE Transactions on Industrial Electronics,2015,62(6):3966-3977.
[4]Wu Y,Qian L P,Huang L,et al.Optimal Relay Selection and Power Control for Energy-Harvesting Wireless Relay Networks[J].IEEE Transactions on Green Comm unications & Networking,2017,2(2):471-481.
[5]Awang A,Lagrange X,Ros D.RSSI-Based Forwarding for Multihop Wireless Sensor Networks[C].Open European Summer School &Ifip Tc66 Workshop on the Internet of the Future.Springer-Verlag,2009.
[6]Smola A J,Sch?lkopf B.A tutorial on support vector regression[J].Statistics and com puting,2004,14(3):199-222.
[7]802.15.4e-2012–IEEE Approved Draft Standard for Local and Metropolitan Area Networks Part 15.4:Low Rate Wireless Personal Area Networks(LR-WPANs) Amendment to the MAC sub-layer,2012.