付光杰 胡明哲
(東北石油大學電氣信息工程學院,黑龍江大慶 163318)
無線傳感器網絡(Wireless Sensor Network,簡稱WSN)由大量成本低廉、型號各異的傳感器節點組成,各節點在完成對目標區域感知的同時通過無線的方式進行信息交流,從而完成監測工作。在大數據、物聯網的發展背景下,WSN逐漸成為各領域的研究熱點,尤其是在軍事戰爭、安保監控、智能家居、軌道交通等領域。但在應用的過程中常出現電源枯竭、數據處理存儲性能不足等現象,加之監控區域環境復雜,導致無線傳感器網絡的故障率大大增加。除此之外,由于網絡中節點間的通信鏈路不穩定,會出現通信中斷以及丟包的現象,使用戶無法獲取完整的信息,影響監控質量。因此對WSN進行故障檢測是必不可少的工作,并對WSN具有十分重要的應用意義。
WSN節點一般包含傳感器本體、數據存儲模塊、通信模塊和電源模塊等部分。在實際運行中,節點常會出現部件損壞、電能不足、信號干擾、采樣不精確等問題,導致節點故障并喪失監測感知功能。
WSN發生故障時可以根據故障發生原因的不同分為節點級故障以及網絡級故障兩種。節點級故障即WSN中某個傳感器本體出現故障,按照故障類型的不同又可分為硬故障以及軟故障。由于內部器件損傷、供電中斷、短路等不可逆問題造成節點無法正常工作額故障統稱為硬故障。軟故障指傳感器本體某部分發生故障,但不影響節點繼續運行工作,具有此種故障的節點經常會出現采集數據異常等情況,嚴重時可能影響無線通信功能。網絡級故障通常是指網絡中各傳感器節點均可以正常運行,但各節點無法進行有效的信息交流,常出現的故障包括無法連接、信道丟失、數據傳輸失敗等。
節點故障最直觀的特征就是傳感器節點實時測量的數據出現錯誤或不準確的現象。測量到的錯誤數據不僅會誤導用戶的決策,而且會浪費WSN中有限的服務資源,降低WSN的監測能力。現今利用節點反饋數據對節點故障進行判定的方法主要有兩種:
(1)從各傳感器節點采集數據間的相關性著手進行節點故障診斷。WSN在運行過程中,空間位置相近的傳感器節點常會出現相近的監測數據。因此依據此原理,僅需要對采集到的數據進行處理,解析相關性,找到空間上與其他數據不相關的異常數據,即可找到故障節點。
(2)從監測事件的角度出發鑒別故障節點。由于傳感器節點反饋給用戶的事件信息包含節點與事件發生處之間的距離信息,同時節點接收的信號強度與此距離呈現反比例關系。由此可知,若某一節點反饋的信息不滿足反比例條件,則可斷定此節點發生故障。
WSN無法進行有效監測的原因除了節點故障之外,還有可能是由于復雜環境的影響引起通信中斷、數據丟失等問題造成的WSN網絡故障。對于網絡級的故障,目前有兩種常用的診斷方法:
(1)通過軟件調試的方式對WSN進行故障診斷。用戶構建無線傳感監測網絡時,對每個節點事先設置相關調試程序,當需要對WSN進行診斷時, Sink節點根據收集的信息分析判斷WSN故障狀態。現今很多調試工具與策略均是按照此思路進行設計的,如:Clairvoyant、DustMiner以及Sympathy等。這些調試工具大多具有自動診斷以及日志記錄功能,可以有效識別故障類型,方便用戶分析故障成因。但在診斷的過程中系統需要Sink節點不斷收集大量的傳感器節點狀態數據才能進行有效的判斷,這樣會占用更多的網絡資源,增加網絡負擔,同時也會不同程度的降低WSN中各節點的使用壽命與性能。
(2)通過建立特定的判定模型實現對WSN故障診斷。此種方法是以WSN大量實際監測數據為基礎,通過記錄網絡運行過程中故障出現時傳感器節點發送的異常數據,分析故障與數據之間的內在聯系,建立相應的診斷模型。當進行WSN故障診斷時,將實際采集到的數據與該模型進行匹配,若數據滿足故障模型,則說明WSN中存在故障,模型將自動識別故障類型。依據此種思想的故障診斷方案又可分為集中式以及分布式。
集中式方案將網絡中的Sink節點作為診斷的執行者。Sink節點收集網絡中其他節點的數據,再對其進行處理分析,經過模型驗證,確定網絡故障類型以及原因。常用的集中式方案包含PAD和DSD兩種,PAD方案是將WSN中所有傳感器節點加裝數據標記裝置,標記裝置隨機標記流經節點的數據流,Sink節點通過收集被標記的數據流即可獲知WSN的拓撲結構圖。DSD方案主要通過提取數據特征實現故障診斷。DSD方案的主要是通過歷史累計的監測數據,尋找數據與故障間的內在聯系,創建故障知識庫。在此基礎上,DSD方案首先將收集到的各節點數據與知識庫中的信息進行對比,確定可能的故障類型。
分布式方案中WSN不存在固定的故障診斷節點,每個節點均具有故障診斷的功能。傳感器節點在向Sink節點上傳數據之前,節點會對WSN故障進行基礎識別并做出判斷。
分布式方案中WSN不存在固定的故障診斷節點,每個節點均具有故障診斷的功能。傳感器節點在向Sink節點上傳數據之前,節點會對WSN故障進行基礎識別并做出判斷,通過此種方式可以大大降低Sink節點接收的信息量,提高WSN故障診斷效率。分布式方案根據協同診斷節點數目的不同可分為TinyD2和LD2。TinyD2方案是當WSN中某一節點檢測到故障時,相應節點啟動自診斷模式,并將當前狀態信息發送給其他節點共同進行診斷,確定故障原因。但此種方案有時會出現診斷結果不一致的情況,為了克服這些弊端,科研人員提出LD2方案,運用數據融合的方式綜合所有的診斷結果。具體過程為:WSN中故障節點將診斷所需的信息發送給與之相連的其他節點,各節點做出診斷后進行結果融合推斷,最后由故障節點將可能的故障原因報送給Sink節點。
當無線傳感器網絡中出現故障時會直接導致監測盲區,使得用戶出現決策偏差。針對WSN故障診斷問題,本文分別從節點故障與網絡故障兩個方面對目前所用的診斷方案進行敘述介紹。分析各方案的工作流程分析其特點。用戶可以根據所應用的無線傳感器網絡的性質,選擇適當的故障診斷方案,有效提升無線傳感器網絡的可靠性。
[1]季賽,袁慎芳,馬廷淮,等.無線傳感器網絡中節點故障診斷方法的研究[J].計算機工程與應用,2010, 46(23):95-97.
[2]劉凱,彭力.分簇式無線傳感器網絡節點故障診斷算法研究[J].傳感器與微系統,2011,30(4):37-40.
[3]徐小龍,耿衛建,楊庚,等.分布式無線傳感器網絡故障檢測算法綜述[J].計算機應用研究,2012, 29(12):4420-4425.