施陳俊,曾獻輝,2,黃家續(xù)
(1.東華大學 信息科學與技術學院,上海 201620;2.數(shù)字化紡織服裝技術教育部工程研究中心,上海 201620)
無線傳感網(wǎng)絡(WSN)是一種通過無線組網(wǎng)方式,把數(shù)量眾多的信息感知節(jié)點按需求有序部署在應用環(huán)境中,同時具有環(huán)境信息感知和無線數(shù)據(jù)傳輸能力的多跳網(wǎng)絡。WSN融合了嵌入式系統(tǒng)、現(xiàn)代感應技術和計算機技術,可在一塊集成電路上完成信息獲取、傳輸并處理的過程,實現(xiàn)對物理世界的數(shù)字感知[1]。WSN在智能交通、自然環(huán)境無人防護、智慧醫(yī)療、應急搶險救災等領域具有廣闊的應用前景[2]。
數(shù)字信息化高速發(fā)展,無線傳感網(wǎng)絡已成為物聯(lián)網(wǎng)的核心技術與重點研究方向。WSN與一般的無線網(wǎng)絡存在很大的不同,具體如下:
(1)網(wǎng)絡規(guī)模大、節(jié)點數(shù)量多:無線節(jié)點設備部署便捷,網(wǎng)絡覆蓋范圍較大,但這需要大量節(jié)點設備支撐,設備的數(shù)量優(yōu)勢提高了網(wǎng)絡數(shù)據(jù)采集精度,節(jié)點間的冗余機制使得網(wǎng)絡擁有良好的容錯性[3];
(2)變化頻繁的網(wǎng)絡拓撲結構:WSN內(nèi)部包含數(shù)量龐大的無線傳感節(jié)點,實際需求隨時在發(fā)生變化,加之設備老化、受外界不可抗拒因素等影響,節(jié)點數(shù)量不固定,網(wǎng)絡拓撲結構頻繁變化,且變化無規(guī)律可循,無法建立數(shù)學模型進行預測[4];
(3)單個傳感節(jié)點功能不強:WSN中的網(wǎng)絡傳感節(jié)點通常功耗較低,使得單個設備的計算能力和存儲容量受到極大限制,導致它們無法承擔過于繁雜的任務[5]。
針對現(xiàn)有無線傳感網(wǎng)絡組網(wǎng)技術在應對網(wǎng)絡拓撲變化時的局限性,提出了基于藍牙監(jiān)聽廣播的智能組網(wǎng)技術:
(1)由于無線傳感網(wǎng)絡在部分應用情景下穩(wěn)定性不足,特提出了基于藍牙監(jiān)聽廣播機制的通信算法,該算法以輪詢方式與節(jié)點交換數(shù)據(jù),可有效保證網(wǎng)絡長期穩(wěn)定運行;
(2)在(1)的通信基礎上,通過云平臺與智能網(wǎng)關相互配合,實現(xiàn)WSN的智能自組網(wǎng),減少由于網(wǎng)絡節(jié)點變化帶來的人為維護網(wǎng)絡的負擔,使得邊緣傳感網(wǎng)絡能夠智能應對動態(tài)變化的網(wǎng)絡。
在實際項目中主要應用的短距離無線通信技術[6]有藍牙、WiFi、ZigBee、NFC和ANT等。在無線傳感網(wǎng)絡中,主要運用ZigBee與藍牙技術。ZigBee技術因其通信功耗低、芯片成本低、容量較大、安全性較高等優(yōu)勢在諸多領域被廣泛運用。藍牙的整體性能相比ZigBee稍遜一籌,但低功耗藍牙的出現(xiàn)以及藍牙5.0的發(fā)布,使得其與ZigBee間的差距縮小。藍牙5.0的理論傳輸速率相對BLE提高了1倍,傳輸距離增加了2倍,抗干擾能力更強,能夠更好地支持Mesh網(wǎng)絡[7]。移動設備大都支持藍牙,因此在軟件開發(fā)上相比ZigBee更具優(yōu)勢。
無線Mesh網(wǎng)絡有效覆蓋范圍大。在Mesh網(wǎng)絡中,2個距離較遠的節(jié)點設備雖然無法通信,但可以通過節(jié)點間多跳傳輸、層層轉發(fā)來實現(xiàn)數(shù)據(jù)的傳輸[8]。雖然無線BLE Mesh網(wǎng)相比傳統(tǒng)藍牙無線網(wǎng)絡理論上在覆蓋范圍、穩(wěn)定性、部署靈活性等方面具有明顯優(yōu)勢,但Mesh網(wǎng)絡作為一種新型技術在實際應用時存在不少問題。Mesh網(wǎng)絡對于數(shù)據(jù)通信算法要求高,因為網(wǎng)絡中的每個節(jié)點都承擔著網(wǎng)絡通信數(shù)據(jù)包的處理與轉發(fā)任務,如果算法設計不合理,那么將導致數(shù)據(jù)包重復轉發(fā),增加節(jié)點的運行壓力,功耗也隨之提升,甚至由于網(wǎng)絡數(shù)據(jù)找不到目標節(jié)點而在其他節(jié)點間不停轉發(fā),最終導致網(wǎng)絡癱瘓。目前在一些應用中,網(wǎng)絡維護還需專業(yè)維護人員手持管理移動終端,對新增節(jié)點進行相關配置操作,極大地浪費了人力資源。
基于藍牙的無線傳感網(wǎng)絡系統(tǒng)由藍牙通信網(wǎng)絡、智能中心管理網(wǎng)關、遠程服務管理云平臺、移動客戶端等組成。系統(tǒng)結構如圖1所示。
圖1 無線傳感網(wǎng)絡系統(tǒng)結構
藍牙通信網(wǎng)絡主要負責保存并向智能網(wǎng)關傳遞子節(jié)點采集的數(shù)據(jù),同時負責向網(wǎng)絡中的子節(jié)點傳遞智能網(wǎng)關的控制指令。智能中心管理網(wǎng)關一方面與云平臺保持通信,向云平臺傳輸?shù)讓铀{牙網(wǎng)絡采集的數(shù)據(jù),接收云平臺發(fā)送的管理信息;另一方面,智能網(wǎng)關管理著底層藍牙網(wǎng)絡。智能網(wǎng)關不僅要接收底層網(wǎng)絡采集的數(shù)據(jù)和發(fā)送的控制指令,還管理著底層的網(wǎng)絡變化。遠程服務管理云平臺負責存儲底層無線傳感網(wǎng)絡采集的數(shù)據(jù)與網(wǎng)絡的拓撲結構信息。移動客戶端主要為用戶提供可視化操作界面。用戶得到相關權限后,可以對網(wǎng)絡結構信息進行相應的管理操作。
以往的藍牙無線傳感網(wǎng)絡在實現(xiàn)長期數(shù)據(jù)監(jiān)控與節(jié)點設備管理過程中存在網(wǎng)絡通信不穩(wěn)定的問題,同時在應對網(wǎng)絡動態(tài)變化時需要人工操作輔助底層網(wǎng)絡運行?;谒{牙的智能組網(wǎng)算法以智能網(wǎng)關為核心,通過云平臺遠程更新網(wǎng)絡結構,大大優(yōu)化了動態(tài)網(wǎng)絡的管理操作,減少了人工作業(yè)。
系統(tǒng)的關鍵在于底層的藍牙無線網(wǎng)絡。系統(tǒng)采用BK3431藍牙芯片,支持藍牙4.0。如圖2所示,中心管理設備(智能網(wǎng)關)由4G模塊、串口模塊、電源模塊、射頻模塊與BK3431核心微處理器構成。子設備主要由核心微處理器、串口模塊與各類接口(如ADC、I2C、SPI)組成。豐富的外圍接口便于子設備采集數(shù)據(jù)。
圖2 系統(tǒng)相關硬件設計框圖
3.3.1 底層網(wǎng)絡拓撲結構設計
底層藍牙無線網(wǎng)絡采用星型網(wǎng)絡,結構如圖3所示。星型網(wǎng)絡結構具有如下優(yōu)點:
圖3 底層藍牙網(wǎng)絡結構
(1)控制簡單:單個子設備只與中央設備相連接,訪問控制方法簡單,易于網(wǎng)絡監(jiān)控和管理;
(2)故障診斷與隔離容易:單個設備出現(xiàn)故障并不會影響整個網(wǎng)絡的通信;
(3)重新配置靈活:中心設備與子設備一對一通信,中心設備易于與子設備進行重新配置與信息更新[9]。
3.3.2 網(wǎng)絡節(jié)點間藍牙通信機制優(yōu)化
傳統(tǒng)的無線藍牙星型網(wǎng)絡中心設備始終處于監(jiān)聽狀態(tài),當網(wǎng)絡中有子設備在廣播時,就與相應設備發(fā)起建立通信請求,二者建立通信后就可以進行數(shù)據(jù)交換。該通信機制的優(yōu)點在于子設備可以在只有數(shù)據(jù)需要發(fā)送時發(fā)送廣播信號,以降低能耗。但它也存在缺點:多個子設備同時廣播將造成信道擁堵。藍牙有3個射頻通道,主從設備成功連接的前提是從設備的廣播射頻通道和主設備掃描射頻通道是同一個通道,且二者的射頻窗口匹配。但由于藍牙掃到子設備的用時不定,因此,數(shù)量眾多的子設備在爭搶與主設備通信機會時容易造成某個或幾個子設備始終無法成功建立通信,導致網(wǎng)絡穩(wěn)定性變差,使得網(wǎng)絡無法很好地處理對于數(shù)據(jù)傳輸實時性要求不高但對于長期穩(wěn)定性有較高要求的情況。
為改善這一缺點,組網(wǎng)算法將主設備設置為廣播者、子設備設置為監(jiān)聽者,從主設備被動等待廣播轉變?yōu)橹髟O備主動查找子設備的模式,輪詢網(wǎng)絡內(nèi)部節(jié)點。改進后的藍牙網(wǎng)絡內(nèi)部通信流程如圖4所示。
圖4 無線藍牙網(wǎng)絡通信流程
主設備或智能網(wǎng)關進入通信狀態(tài)后,首先需要確定連接的網(wǎng)絡節(jié)點,然后在網(wǎng)絡中廣播尋找節(jié)點。之后判斷連接是否成功。如果超時則上報異常,如果連接成功則傳輸數(shù)據(jù)。最后確定下一個連接節(jié)點,如果無節(jié)點需要通信則等待下一次通信。對于子節(jié)點而言,只需保持監(jiān)聽,隨時準備與主設備進行數(shù)據(jù)傳輸即可。
3.3.3 基于藍牙廣播監(jiān)聽的智能組網(wǎng)算法設計
為有效減少人為的網(wǎng)絡維護工作,本文基于藍牙監(jiān)聽廣播通信機制提出了一種無線設備智能組網(wǎng)算法,中心管理設備根據(jù)網(wǎng)絡結構信息尋找需要入網(wǎng)的新設備,實現(xiàn)設備的自動入網(wǎng)與傳感網(wǎng)絡的自組織功能。算法流程如圖5所示。
圖5 藍牙網(wǎng)絡組網(wǎng)算法流程
(1)中心設備在發(fā)現(xiàn)網(wǎng)絡結構信息表發(fā)生變化后,在網(wǎng)絡中廣播特定的廣播包尋找新設備;
(2)中心設備不斷廣播等待新設備回應,如果長時間沒有新設備回應便上報異常;
(3)中心設備得到子設備回應后與新設備建立通信,對新設備的身份信息進行驗證;
(4)中心設備驗證新設備無誤后允許新設備入網(wǎng),然后繼續(xù)尋找下一個節(jié)點;
(5)待所有新設備入網(wǎng)后,主設備退出組網(wǎng)狀態(tài)回歸正常的通信狀態(tài)。
中心管理設備一般不會主動廣播尋找需要入網(wǎng)的新設備,待自身存儲的網(wǎng)絡結構信息由云平臺遠程更新發(fā)生變化后,開始發(fā)送特殊的廣播包,找尋新的節(jié)點。由此實現(xiàn)網(wǎng)絡的自組織功能,減少維護網(wǎng)絡的人工工作量。
本文針對無線傳感網(wǎng)絡中藍牙組網(wǎng)的穩(wěn)定性與靈活性提出了一種智能組網(wǎng)算法,對星型網(wǎng)絡下的節(jié)點間通信算法與基于藍牙監(jiān)聽廣播的智能組網(wǎng)算法進行了詳細介紹,并在實驗平臺進行驗證。實驗中,在實驗室區(qū)域范圍內(nèi)部署了1個智能網(wǎng)關,即中心管理設備及20個藍牙節(jié)點。設計好算法與通信協(xié)議后,將相關程序提前燒錄至網(wǎng)關設備與其余節(jié)點設備,設備實物如圖6所示。
圖6 設備實物
為驗證優(yōu)化的藍牙節(jié)點間通信算法,在網(wǎng)絡中放入一定數(shù)量的設備。此時,中心設備中存儲的網(wǎng)絡拓撲信息未發(fā)生變化,未發(fā)送組網(wǎng)的廣播包,與網(wǎng)絡內(nèi)的藍牙節(jié)點進行一對一輪詢通信,通過串口打印設備狀態(tài),節(jié)點間通信正常,證明了優(yōu)化的算法能夠實現(xiàn)網(wǎng)絡數(shù)據(jù)傳輸。
為驗證基于藍牙監(jiān)聽廣播機制的智能組網(wǎng)算法,通過云平臺向中心設備發(fā)送網(wǎng)絡拓撲結構的變化信息以及節(jié)點的身份信息,同時中心管理設備在發(fā)現(xiàn)相應信息發(fā)生改變后采取組網(wǎng)動作,向外廣播尋找需要入網(wǎng)設備的信息包,新節(jié)點在監(jiān)聽到廣播包后二者建立連接。中心管理設備在確定新設備身份信息無誤后允許其入網(wǎng),至此組網(wǎng)完成,網(wǎng)絡拓撲結構發(fā)生變化,串口打印的信息顯示組網(wǎng)過程未出現(xiàn)異常。實驗結果證明,該算法使得設備的組網(wǎng)過程更智能,中心管理設備能夠根據(jù)存儲的網(wǎng)絡拓撲信息自主維護網(wǎng)絡,有效應對網(wǎng)絡結構的動態(tài)變化,大幅減少了人工維護工作。相關數(shù)據(jù)見表1所列。
表1 網(wǎng)絡性能相關數(shù)據(jù)
本文主要對藍牙設備在無線傳感網(wǎng)絡中的底層組網(wǎng)與通信機制進行了相應優(yōu)化與創(chuàng)新,結果表明,基于藍牙監(jiān)聽廣播的智能組網(wǎng)算法能夠較好地適用于穩(wěn)定性要求高但實時性要求低(數(shù)據(jù)采集時間間隔超幾分鐘)的場景,并能有效應對網(wǎng)絡的動態(tài)變化。但在實際運用中還會有更多復雜且未知的因素存在,因此還需進一步測試與優(yōu)化。