邢思宇 蔣偉


摘 要:在變電站的巡檢過程中,巡檢機器人之間采用ZigBee通信。ZigBee在變電站環境中通信易受電磁波和WiFi等信號干擾,導致網絡丟包率大大增加并使得網絡時延增高。文中在通信過程中加入了蟻群算法,為網絡增加了尋優功能和節點對路徑的記憶功能,將改進后的算法設為ANTSENSE路由協議。通過NS-2平臺的仿真分析表明,機器人的移動速度對網絡丟包率和時延存在一定影響。ANTSENSE路由協議相比AODV路由協議降低了網絡的平均時延與網絡的丟包率。
關鍵詞:巡檢機器人通信;ZigBee;NS-2;網絡通信;AODV;ANTSENSE;蟻群算法
中圖分類號:TP242;TM63 文獻標識碼:A 文章編號:2095-1302(2018)04-00-02
0 引 言
隨著無線傳感技術的飛速發展,ZigBee[1-3]通信網絡越來越受到重視,對其穩定性的研究也越來越多。ZigBee網絡因其功率低、范圍廣、部署簡單靈活等特點,在環境監測、城市交通、智慧城市等領域得到了廣泛應用。但由于藍牙、WiFi在生活中的普遍使用,也逐漸帶動ZigBee投入到變電站的通信中。由于變電站所處環境惡劣,因此ZigBee憑借其抗干擾性強這一特點成為變電站通信的首選。
由于變電站環境極為惡劣,人們在巡檢過程中難免會遇到一些危險。隨著科學技術的進一步發展,巡檢機器人在變電站中的使用越來越普遍。多個巡檢機器人同時工作使得巡檢過程變得系統又高效。
在巡檢過程中,任意兩個機器人之間都可以相互通信,并將采集到的數據快速上傳。但巡檢機器人在采集圖像信息時需使用WiFi,而WiFi信號和電磁波信號對ZigBee的通信會產生一定的干擾,使得它們在通信過程中的丟包率和網絡時延大大增加。
針對這些問題,周德榮[4]提出了基于蟻群算法改進的AODV路由協議研究。通過改進AODV路由組建和路由維護策略,提高了路由質量。但并未通過公式表達每個節點向下一節點移動時的丟包概率。王魯光[5]等人提出的AODV和AOMDV路由協議性能分析與比較,介紹了兩種網絡的通信特點,但該算法并未考慮路徑尋優。
本文針對蟻群算法具有路徑尋優和記憶路徑的特點,提出了一種基于蟻群算法的新協議ANTSENSE。仿真結果表明,本文提出的新協議相比AODV路由協議有效降低了網絡的時延和丟包率。
1 AODV路由協議
1.1 AODV路由協議的特點
1.1.1 路由請求和應答過程
AODV[6,7]路由協議允許無線節點通過,多路徑將信息發送給目的節點,且不要求無線節點對信息傳送路徑進行維護。
在AODV路由協議中,某個節點向目的節點發送封包之前會預先查看其路徑表。若此節點找不到可以到達目的節點的路由入口,便會通過廣播將RREQ封包送出以尋找新的路徑,收到RREQ的無線節點會查看自己是否為該封包的目的地址,若不是,則再查看自己是否有一條路徑可到達目的節點,若沒有,則需通過攜帶的信息修改路徑表,然后再將其廣播出去,直到目的節點收到信息為止。當目的節點接收到源節點或中間節點發送的RREQ時,便會建立一個反向路由,向源節點發送RREP。每一個RREQ都有屬于自己的ID號,當某個節點接收到一個RREQ后,便會確認之前是否收到過該ID號,若收到過,則丟棄該封包,以防止較多相同ID存在于該無線網絡中,確保該無線網絡中的路徑無循環。
1.1.2 路由維護過程
當鏈路中斷時,如果目的節點與斷路節點之間的距離未超過最大修復距離,則本地修復過程啟動。若未啟動,斷路節點需重新向目的節點發起路由發現過程。可用周期性發送HELLO分組來檢測無法使用的鏈路;利用鏈路層通告機制發現鏈路是否中斷;當節點向下一跳節點發送或轉發封包失敗時,亦能判斷鏈路是否中斷等三種方式檢測鏈路狀態。
1.2 AODV路由協議的缺點
(1)AODV路由協議在路由發現過程中,源節點采用廣播方式送出RREQ封包尋找路徑,通過多個中間節點的廣播和轉發最終將封包送至目的節點,目的節點只接收傳送來的第一個RREQ,其他大部分RREQ未被充分利用。一旦目的節點接收到RREQ,便會立刻向源節點發送RREP用于回復。在路由發現過程中,大大浪費了Ad Hoc網絡無線網絡帶寬,并給網絡造成了延時。
(2)如果鏈路中斷,網絡會啟動路由維護過程,而該過程一旦啟動,源節點就會重新發起路由發現過程。由于變電站中的網絡環境十分復雜,因此很有可能產生多次路由維護過程和路由發現過程,對網絡延時和丟包將造成很大影響。
2 蟻群算法
2.1 簡單蟻群算法的流程
螞蟻通過前者在路徑上釋放的信息素的多少選擇路徑。螞蟻在移動過程中會根據地域路徑的適應度來釋放信息素,適應度越高,螞蟻釋放的信息素越多。隨著時間的推移,信息素不斷揮發,即信息素會隨著時間不斷消散。初始化蟻群設為初始化A(t),根據目標函數對每只螞蟻的適應度做出評價,設為評價A(t)。蟻群算法[8]流程如圖1所示。
初始時刻,每條路徑上的信息素均等,設τij(0)=C(C是常數)。螞蟻k(k=1,2,…,m)在運動過程中會更傾向于信息素多的那條路經。螞蟻k從節點i移動到節點j存在一定的概率。螞蟻k在節點i時選擇向節點j轉移的概率Pijk (t)見式(1):
其中allowedk={0,1,…,n-1}表示螞蟻k下一步允許選擇的節點。由式(1)可知,轉移概率Pijk (t)與τijα(t)ηijβ(t)成正比。εij為能見度因數,α和β為兩個參數,分別表示螞蟻在運動過程中的積累信息和啟發信息對螞蟻選擇路徑的相對重要性。
2.2 ANTSENSE路由協議
2.2.1 ANTSENSE路由協議的特點
在封包從源節點向終結點傳播的過程中,螞蟻使用與數據相同的鏈接隊列移動。從源節點s向終節點d移動的過程中所用時間Tsd可被用作路徑質量的量度。一個路徑的總質量因數通過行程時間Tsd和局部適應策略模型的啟發函數進行評估,因為在低阻塞情況下評價為低質量的行程時間T可以成為高通信負荷下的高質量。一旦走完一個路徑,螞蟻在這條路徑的所有節點上釋放一定的信息素,這條路徑的質量越高,螞蟻釋放的信息素就越多。螞蟻到達目的節點后,會沿著相同但方向相反的路徑返回源節點,并使用高優先權隊列,使得被收集的信息能夠快速傳輸。
2.2.2 ANTSENSE路由協議的具體通信過程
每隔一段規定的時間,網絡中的每個前向螞蟻k都要找到一條通向前向節點的路徑,每一個訪問過的節點ID都儲存在螞蟻的memory中,將其記為Mk。
前向節點選擇下一跳節點存在一定的概率關系:
其中:p是螞蟻k從節點r選擇下一跳節點s的概率;T是每個節點上的路由表,用于存儲節點r到節點s上的信息素;E為可見度函數,即E=1/(C-es),C是節點的初始化能量,es為節點s的實際能量。
當前向螞蟻到達目的節點時,隨即轉變為一個后向節點,任務是更新到達目的節點路徑上的信息素,并將其存儲在Mk中。
當后向螞蟻從終節點向源節點返回時,目的節點會記錄后向螞蟻drop的信息量,計算公式為:?Tk=1/(N-Fdk)。其中:N為節點的總數;Fdk為前向螞蟻經歷的節點數。
當節點r收到臨節點s上的后向螞蟻時,Tk(r,s)=(1-ρ) ·Tk(r,s)+?Tk,1-ρ代表上一次更新的Tk(r,s)的信息素蒸發。
當后向螞蟻到達源節點時,任務完成,并丟棄該螞蟻。
3 性能仿真與分析
本文選用的仿真工具為NS-2,分別對AODV和ANTSENSE協議在多種移動場景下的性能進行分析和比較。由于通信環境選擇的是變電站,考慮到變電站的正常占地面積和巡檢機器人的正常移動速度,采用1 000 m×1 000 m的仿真場景,并在場地中隨機配置20個移動節點,仿真時間設為100 s,最大聯機數為10,預期每秒產生的CBR封包數為20。節點可在場景中以任意速度移動。仿真使用cbrgen和setdest產生移動場景,然后用gawk對trace文件進行分析,之后使用gnuplot畫圖。由于每一次仿真產生的節點坐標都是隨機的,為保證實驗數據的準確性,本文得出的每個結果都是對20次結果求平均值得到的。
(1)不同的節點移動速度
平均時延,丟包率與節點移動速度之間的關系如圖2所示。由圖2可以看出,隨著節點移動速度的增大,源節點到目的節點之間的路由失效次數增加,導致路由發現次數增加,網絡平均時延隨之增大。ANTSENSE路由與AODV相比,增加了尋優過程,能夠找到最短的路徑通信,且因信息素的釋放,使得節點對路徑有一定的記憶能力,因此網絡的平均時延與丟包率更低。
(2)不同的CBR封包數
平均時延、丟包率與不同CBR封包數的關系如圖3所示。由圖3可以看出,節點移動速度不變,設為5 m/s。隨著CBR數量的增加,網絡的丟包率逐漸增大。但ANTSENSE協議相比AODV的丟包率較低。
4 結 語
針對變電站中巡檢機器人在AODV協議下通信質量不高的問題,本文在AODV協議的基礎上加入了ANTSENSE協議。仿真結果表明,ANTSENSE協議使得網絡延時明顯降低、分組投遞率增加,大幅提升了巡檢機器人在變電站中的通信質量。
參考文獻
[1]張毅,吳錦,羅元,等.新型ZigBee-WiFi無線網關的設計及其抗干擾技術的研究[J].計算機應用與軟件, 2014(5):122-124.
[2]章偉聰,俞新武,李忠成.基于CC2530及ZigBee協議棧設計無線網絡傳感器節點[J].計算機系統應用, 2011, 20(7):184-187.
[3]甯油江,趙津,石晴,等.基于ZigBee的多車協作控制研究[J].現代電子技術, 2017, 40(6): 114-117.
[4]周德榮.基于蟻群算法改進的AODV路由協議研究[J].西南師范大學學報(自然科學版), 2014, 39(11):75-80.
[5]王魯光,賈智平,李新.AODV和AOMDV路由協議性能分析與比較[J].計算機應用,2010, 30(3):740-744.
[6]童燕,李儉兵. NS-2的Ad Hoc網絡AODV協議的仿真[J].數字通信, 2009, 36(3):50-53.
[7]常杰,張位勇,李桂香.基于ZigBee網絡的AODV路由改進算法[J].電腦知識與技術:學術交流,2017, 13(6):22-23.
[8]田克純,農秀鳳,王方. NS-2中蟻群算法路由協議的實現[J].廣西通信技術,2010(4):43-45.