張鸰 陳燕飛
摘要:作為高職院校重要的教學(xué)場所,實訓(xùn)室建設(shè)隨著信息化技術(shù)進步也得到了長足的發(fā)展。目前基于物聯(lián)網(wǎng)環(huán)境,將傳感器、RFID、ZigBee、嵌入式、數(shù)據(jù)庫和軟件開發(fā)等技術(shù)綜合運用的智能化實訓(xùn)室也應(yīng)運而生,在智能實訓(xùn)室中,負責(zé)數(shù)據(jù)采集和通訊的無線傳感網(wǎng)絡(luò)搭建具有非常重要的核心地位。本文從簇頭同步和簇內(nèi)同步兩個方面提出了時間同步的算法思路,應(yīng)用于WSN節(jié)點時間的同步過程,旨在降低智能實訓(xùn)室系統(tǒng)的傳感器節(jié)點耗能,從而增加采集端在實訓(xùn)室環(huán)境中的可靠性和耐用性。
關(guān)鍵詞: 智能實訓(xùn)室;物聯(lián)網(wǎng);無線傳感網(wǎng);時間同步算法
中圖分類號:TP311? ? ?文獻標識碼:A
文章編號:1009-3044(2020)30-0217-02
1 基本概念
目前主流的智能化實訓(xùn)室均以物聯(lián)網(wǎng)技術(shù)為基礎(chǔ),而無線傳感器網(wǎng)絡(luò)(Wireless Sensor Networks, WSN)則是物聯(lián)網(wǎng)體系中數(shù)據(jù)感知和傳輸?shù)暮诵?,這里的WSN屬于分布式系統(tǒng),而時間同步則是所有分布式系統(tǒng)均需要考慮并解決的一個關(guān)鍵問題。在WSN中傳感器節(jié)點體積非常小,但是卻肩負著數(shù)據(jù)采集重任,其所采集的信息包含了時間和空間的相關(guān)內(nèi)容,因此各個節(jié)點必須能夠?qū)崿F(xiàn)相互協(xié)同、數(shù)據(jù)融合、協(xié)同休眠等基本協(xié)助關(guān)系,這些都是以精準的時間同步為基礎(chǔ)才能實現(xiàn)的。
目前主流時間同步機制一般采用的是全球定位系統(tǒng) (Global Positioning System,GPS),通過衛(wèi)星可以實現(xiàn)納秒級的時間同步精度,但是受體積和成本的因素不適合WSN環(huán)境。網(wǎng)絡(luò)時間協(xié)議也是被廣泛應(yīng)用的時間同步方式,但是它也存在拓撲結(jié)構(gòu)固定,能量利用率不高,建設(shè)成本高同樣不適合WSN??紤]到WSN中主要的能量消耗是在通信階段(數(shù)據(jù)發(fā)送和接收環(huán)節(jié)),節(jié)點本身的功耗僅占5%左右,因此很多學(xué)者們提出過自己的時間同步算法,但是現(xiàn)有算法在能耗處理方面,依然無法滿足WSN的節(jié)能需求。
2 算法需求
根據(jù)WSN的特征,在設(shè)計基于WSN的時間同步算法時需要考慮下面三個內(nèi)容:(1)時間延遲,時間延遲決定了同步的精度,而同步精度則是同步算法性能的關(guān)鍵指標。在WSN中時間延遲包括:發(fā)送、傳輸、接收和處理等時間延遲,消除這些延遲是時間同步算法首先要解決的問題。(2)降低能耗,WSN中的傳感器節(jié)點大部分屬于一次性布設(shè),其供電基本上靠電池來保障,因此節(jié)省能耗是非常重要的環(huán)節(jié),特別是對于通信模塊的節(jié)能設(shè)計更是核心,因為95%能量消耗就發(fā)生在數(shù)據(jù)通信的過程中。(3)可擴展性,WSN是一個動態(tài)可擴展或者收縮的網(wǎng)絡(luò),他的拓撲結(jié)構(gòu)不固定,這就決定在算法設(shè)計的時候必須考慮整個網(wǎng)絡(luò)節(jié)點的可擴展性,從而保證時間同步的精度?;赪SN的特點,目前較為常見的時間同步算法有RBS算法、TPSN算法、Miny-Sync算法、FTSP算法等。表1做出了以上幾種時間同步算法的比較:
表1? ?典型的時間同步算法
[
特點 算法 RBS TPSN Miny-Sync FTSP 擴展性 較差 很差 很差 好 同步精度 一般 較高 低 高 消息延遲 傳播時延和接收時延 接收時延 傳輸時延、傳播時延和接收時延 傳播時延 同步范圍 子網(wǎng) 全網(wǎng) 子網(wǎng) 全網(wǎng) 復(fù)雜度 中等 中等 高 中等 通信開銷 每個同步周期發(fā)送1.5個同步信息 每個同步周期發(fā)送2個同步信息 每個同步周期發(fā)送2個同步信息 每個同步周期發(fā)送1個同步信息 網(wǎng)絡(luò)拓撲 多個參考節(jié)點。在各自參考區(qū)域內(nèi)同步 分層結(jié)構(gòu) 分層結(jié)構(gòu) 只有一個ID最小的節(jié)點作為參考節(jié)點 ]
3 算法描述
3.1 簇頭選舉算法
在WSN的組建過程中,一個非常重要的環(huán)節(jié)就是節(jié)點分簇,高效的節(jié)點分簇算法能夠極大地降低網(wǎng)絡(luò)開銷和提升數(shù)據(jù)融合。這里我們采用DEEC (Distributed Energy Efficient Clustering Algorithm, 分布式能量有效分簇算法),采用了簇頭選舉策略,通過對每個節(jié)點初始、剩余能量的判斷來選擇簇頭,也就是說剩余能量越大越有機會成為簇頭,即該算法根據(jù)能量來選擇簇頭。具體來說利用DEEC算法選取簇頭時,會對網(wǎng)絡(luò)中所有節(jié)點按照一定周期隨機選取,它是在0到1之間的一個隨機數(shù),如果這個數(shù)小于[Ti]則為簇頭,該簇頭在能力范圍內(nèi)進行廣播,接收到消息的節(jié)點加入改簇。如果同時接收到兩個甚至多個簇頭發(fā)送的消息則根據(jù)信號強弱選擇加入最強的簇。[Ti]具計算方式如下:
利用分簇思想來建立WSN層次,根節(jié)點(Sink)廣播其0層次和ID信息,接收簇頭更新為1層,繼續(xù)將其層次和ID信息廣播,收到的簇頭節(jié)點層次號+1,依次推廣更新所有節(jié)點,層次建立完成。具體流程如圖1和圖2所示。
3.3 算法優(yōu)化
針對經(jīng)典同步算法進行分析可知,簇頭和簇內(nèi)節(jié)點之間會使用不同的時間同步策略。簇頭同步:因為簇頭本身是下層的時間參考節(jié)點,在同步過程中會產(chǎn)生誤差時間的累積,需要采用數(shù)學(xué)方式來減少誤差提升同步精度。簇內(nèi)同步:簇內(nèi)節(jié)點相互進行同步操作時,可以采用隨機監(jiān)聽信道的方式,達到與簇頭間的時間同步,降低多余的通信開銷,進而降低能耗。
3.3.1 簇頭同步算法設(shè)計
這里我們在經(jīng)典算法的基礎(chǔ)上,采用貝葉斯估計的數(shù)學(xué)表達式,通過算法降低簇頭所積累的時間誤差,提供同步精度。優(yōu)化簇頭同步可以通過以下幾個步驟實現(xiàn):
(1) 假定第n個節(jié)點獲得簇頭的同步時間,這個時間點是[Tn]; 而[T'n]則是利用貝葉斯估計得到的該節(jié)點的真實時間;假定[T'n-1]是利用貝葉斯估計得出的該n節(jié)點的父層次節(jié)點真實時間。
(2)n節(jié)點的同步時間和真實時間之間的誤差滿足正態(tài)分布[N0,σ2n]。
(3)經(jīng)過優(yōu)化后的貝葉斯估計:[NT'n,σ'2n]。其中參數(shù)由貝葉斯估計理論計算得出:
3.3.2 簇內(nèi)同步算法設(shè)計
為降低時間同步過程中的能量開銷,本文采用簇內(nèi)成員信道監(jiān)聽的同步方式,大大減少數(shù)據(jù)包在收發(fā)過程所產(chǎn)生的能耗,降低收發(fā)量實現(xiàn)節(jié)能的目標。具體實現(xiàn)思路如下,我們采用4個簇內(nèi)節(jié)點的模型,如圖4。
如果B號節(jié)點發(fā)同步請求給S號簇頭,A、C號監(jiān)聽到信息后獲得B號節(jié)點時間。如果S節(jié)點響應(yīng)B號,A、C號也可以監(jiān)聽到該信息,并得到簇頭節(jié)點的時間信息。因此,這種算法可以實現(xiàn)不需要全部節(jié)點發(fā)送同步請求,仍可以獲取時間信息的目標,只需選取B節(jié)點發(fā)送請求即可,能夠顯著降低通信開銷。可得到B號節(jié)點與簇頭S節(jié)點的時間關(guān)系式:
4 結(jié)論
通過分析計算可知,文章提出的對于簇頭和簇內(nèi)時間同步算法的優(yōu)化思路,可以通過簇頭分層和信道監(jiān)聽兩方面減少時間同步過程中的信息傳遞,從而有效地降低WSN的能量消耗。在下一步研究中,我們將采用把本算法加入ZigBee自帶的Z-stack協(xié)議棧內(nèi)的方式具體實施到實訓(xùn)室環(huán)境中,保證算法時間精度的同時,降低實訓(xùn)室中傳感器節(jié)點的時間同步能耗,提升智能實訓(xùn)系統(tǒng)的使用壽命。
參考文獻:
[1] 蔣智鷹,陳勇,胡冰,等.無線傳感器網(wǎng)絡(luò)時間同步算法研究[J].計算機工程與應(yīng)用,2017,53(1):1-8.
[2] 沈明玉,艾治雄.無線傳感網(wǎng)絡(luò)低能耗時間同步的研究[J].計算機工程與應(yīng)用,2012,48(8):112-115.
[3] 陽韜.無線傳感器網(wǎng)絡(luò)時間同步算法研究[J].計算機工程,2011,37(23):116-118.
[4] 魏炬熠,張建軍,魏振春.一種能量均衡的低開銷WSN時間同步算法[J].計算機工程,2016,42(12):5-10,15.
【通聯(lián)編輯:梁書】