高 廣 恩, 劉 全 利, 賈 靈 利, 王 偉
(大連理工大學(xué) 控制科學(xué)與工程學(xué)院,遼寧 大連 116024)
無線傳感器網(wǎng)絡(luò)(wireless sensor network,WSN)是近幾年一個(gè)新興的研究熱點(diǎn),可廣泛應(yīng)用于軍事、環(huán)境監(jiān)測、工業(yè)控制等領(lǐng)域.在無線傳感器網(wǎng)絡(luò)中,無論數(shù)據(jù)融合、節(jié)點(diǎn)定位還是傳感節(jié)點(diǎn)的協(xié)同都要求網(wǎng)絡(luò)同步.因此,時(shí)間同步技術(shù)已成為無線傳感器網(wǎng)絡(luò)的關(guān)鍵技術(shù)之一[1].無線傳感器網(wǎng)絡(luò)有著自組織、多跳、資源受限、低能耗、低帶寬的特點(diǎn),這使其對時(shí)間同步算法提出特殊的要求.在某些特定網(wǎng)絡(luò)環(huán)境或應(yīng)用場合,現(xiàn)有的時(shí)間同步算法有著較好的同步精度和較短的收斂時(shí)間.但針對Zigbee協(xié)議的時(shí)間同步算法較少,不能和協(xié)議很好兼容.針對無線個(gè)域網(wǎng)Zigbee聯(lián)盟提出了Zigbee[2]標(biāo)準(zhǔn),它為用戶提供了一種成本低、功耗小、速率低、可靠性高、靈活性好的解決方案.Zigbee技術(shù)被廣泛應(yīng)用于智能家居、監(jiān)控監(jiān)測、智能交通、過程控制等領(lǐng)域,完成數(shù)據(jù)采集和處理,并對采集對象進(jìn)行控制等功能.已有的Zigbee網(wǎng)絡(luò)時(shí)間同步算法,考慮的多為星形網(wǎng)絡(luò)中的同步問題,而對多跳網(wǎng)絡(luò)研究較少.基于此,借鑒已有的時(shí)間同步算法思想并結(jié)合Zigbee網(wǎng)絡(luò)的特點(diǎn),本文提出一種適用于Zigbee網(wǎng)絡(luò)的時(shí)間同步算法Zigbee-Sync.Zigbee-Sync充分利用超幀機(jī)制,具有低開銷、高精度、高可靠性的特點(diǎn).最終通過搭建測試平臺驗(yàn)證算法的性能.
目前國內(nèi)外已有多篇文獻(xiàn)對無線傳感器網(wǎng)絡(luò)的時(shí)間同步問題進(jìn)行了研究,提出了不同的時(shí)間同步算法.下面將幾種具有代表性的時(shí)間同步算法進(jìn)行介紹和分析.
RBS算法[3]利用無線信道的廣播特性,節(jié)點(diǎn)發(fā)送參考信標(biāo)到鄰居節(jié)點(diǎn),鄰居節(jié)點(diǎn)交換它們收到參考信標(biāo)的時(shí)間信息,根據(jù)此信息接收節(jié)點(diǎn)調(diào)節(jié)本地時(shí)間,達(dá)到和其他鄰居節(jié)點(diǎn)同步的目的.RBS算法消除了發(fā)送時(shí)間和訪問時(shí)間的影響,提高了鄰居節(jié)點(diǎn)間的同步精度.TPSN算法[4]是一種基于層次結(jié)構(gòu)的時(shí)間同步算法,整個(gè)同步過程分為兩個(gè)階段:一是層次發(fā)現(xiàn)階段,二是時(shí)間同步階段.TPSN算法可實(shí)現(xiàn)全網(wǎng)同步,其同步收斂時(shí)間的長短和網(wǎng)絡(luò)規(guī)模有關(guān),若需要長時(shí)間保持同步,則需要周期性地執(zhí)行同步過程.LTS算法[5]是一種輕量級的同步算法.當(dāng)節(jié)點(diǎn)i需要同步時(shí),就發(fā)送同步請求到其鄰居節(jié)點(diǎn).若鄰居節(jié)點(diǎn)此時(shí)處于同步狀態(tài),則發(fā)送同步時(shí)間信息到節(jié)點(diǎn)i,完成節(jié)點(diǎn)i的時(shí)間同步;否則鄰居節(jié)點(diǎn)繼續(xù)沿著朝向時(shí)鐘源節(jié)點(diǎn)的方向發(fā)送同步請求,直到完成同步.LTS算法降低了同步所需的信息開銷,其同步收斂時(shí)間和節(jié)點(diǎn)所處的深度有關(guān)系.
每一種同步算法都有其優(yōu)勢和不足,所以針對不同的應(yīng)用網(wǎng)絡(luò),要充分考慮其網(wǎng)絡(luò)特點(diǎn)來設(shè)計(jì)合適的算法,Zigbee-Sync便是針對Zigbee網(wǎng)絡(luò)設(shè)計(jì)的同步算法.
Zigbee是 Zigbee聯(lián)盟在IEEE 802.15.4[6]定義的物理層和媒體訪問控制層的基礎(chǔ)之上,又定義了網(wǎng)絡(luò)層和應(yīng)用層,因此它包含IEEE 802.15.4的所有功能和特點(diǎn).
在實(shí)際的無線節(jié)點(diǎn)上,處理器所使用的時(shí)鐘周期和無線網(wǎng)絡(luò)時(shí)間同步所需要的同步參數(shù)有著較大的差別,因此需要在程序設(shè)計(jì)中構(gòu)建時(shí)間同步所需的軟時(shí)鐘.此軟時(shí)鐘不僅要精度高、可靠性高,更要符合網(wǎng)絡(luò)需求和便于實(shí)現(xiàn).在Zigbee協(xié)議中,超幀是網(wǎng)絡(luò)設(shè)備訪問信道的基本周期,協(xié)調(diào)器維護(hù)超幀,為網(wǎng)絡(luò)內(nèi)設(shè)備分配訪問時(shí)隙,圖1為Zigbee協(xié)議的超幀結(jié)構(gòu),其中BO(beacon order)、SO(superframe order)分別為信標(biāo)階數(shù)和超幀階數(shù),SDb表示基本超幀周期.
圖1 超幀結(jié)構(gòu)Fig.1 Structure of superframe
在Zigbee網(wǎng)絡(luò)中,時(shí)間同步指的是兩個(gè)設(shè)備間的相對同步,而非和國際標(biāo)準(zhǔn)時(shí)間的絕對同步.Zigbee標(biāo)準(zhǔn)中,維護(hù)超幀所需的最小時(shí)間單位為符號(symbol)周期,其實(shí)際時(shí)間長度為16μs,因此選取符號周期為基本的時(shí)間單位.符號周期為軟時(shí)鐘的基本時(shí)鐘節(jié)拍(tick),超幀周期用節(jié)拍的數(shù)目表示.這利于超幀維護(hù),同時(shí)便于退避周期、時(shí)隙等時(shí)間參數(shù)的計(jì)算.DLUTWIA-PA平臺上MCU的主時(shí)鐘頻率為11.059 2MHz,本文通過定時(shí)器分頻得到時(shí)間長度為16.004 7μs的基本時(shí)鐘節(jié)拍,其與16μs的誤差很小,可以滿足網(wǎng)絡(luò)要求.在信標(biāo)開始時(shí)對節(jié)拍從零進(jìn)行計(jì)數(shù),在本次超幀結(jié)束,下一信標(biāo)幀到來前記錄此計(jì)數(shù)值,表示超幀周期的大小,通過設(shè)定此計(jì)數(shù)值的大小可達(dá)到維護(hù)超幀的目的.軟時(shí)鐘的同步精度為一個(gè)節(jié)拍,為16μs.網(wǎng)絡(luò)內(nèi)的兩個(gè)設(shè)備可調(diào)節(jié)本地的計(jì)數(shù)值達(dá)到同步的目的,其最大時(shí)間偏差應(yīng)為兩個(gè)節(jié)拍,即32μs,可達(dá)到較高的同步精度.
時(shí)間戳為發(fā)送設(shè)備在發(fā)送數(shù)據(jù)幀時(shí)所獲取的本地節(jié)拍計(jì)數(shù)值,其準(zhǔn)確性對網(wǎng)絡(luò)同步精度有很大影響.因此在中斷中獲取此計(jì)數(shù)值,盡量減少程序處理帶來的誤差.在Zigbee-Sync算法中,發(fā)送設(shè)備將時(shí)間戳信息添加在信標(biāo)幀負(fù)載中,以廣播的方式告知網(wǎng)絡(luò)內(nèi)其他節(jié)點(diǎn).從節(jié)點(diǎn)捕獲信標(biāo)幀并解析負(fù)載中的時(shí)間戳信息,根據(jù)此信息調(diào)節(jié)本地時(shí)鐘,以達(dá)到和發(fā)送設(shè)備同步的目的.
Zigbee協(xié)議規(guī)定在發(fā)送數(shù)據(jù)幀時(shí)首先傳輸同步頭和定界符(SFD).射頻芯片可在發(fā)送數(shù)據(jù)幀時(shí)產(chǎn)生SFD中斷,發(fā)送設(shè)備在SFD中斷中獲取本地時(shí)間信息,并將其作為時(shí)間戳放在信標(biāo)幀負(fù)載中.接收設(shè)備在數(shù)據(jù)接收完成中斷中可解析信標(biāo)幀負(fù)載中的時(shí)間戳信息,并根據(jù)信標(biāo)幀的長度估算出數(shù)據(jù)接收時(shí)間.發(fā)送設(shè)備和接收設(shè)備處理時(shí)間戳的時(shí)刻如圖2所示.
Mica2等一些平臺可以通過處理器直接控制發(fā)送數(shù)據(jù)流,從而可以很容易地標(biāo)記和讀取時(shí)間戳[7].而 在 DLUTWIA-PA 平 臺 上 處 理 器 通 過SPI接口和射頻芯片相連,數(shù)據(jù)的發(fā)送與接收都需通過SPI接口進(jìn)行.所以在時(shí)間同步算法中要考慮數(shù)據(jù)在SPI接口上傳輸所需要的時(shí)間.
SPI接口數(shù)據(jù)傳輸速率為5Mbps,射頻收發(fā)器的數(shù)據(jù)傳輸速率為250kbps.并且射頻收發(fā)器支持先執(zhí)行“發(fā)送”命令,然后再寫入數(shù)據(jù)到射頻收發(fā)器內(nèi)部的緩存,只要保證數(shù)據(jù)發(fā)送過程中緩存中有數(shù)據(jù)可用.在IEEE 802.15.4物理層標(biāo)準(zhǔn)中,定義了5個(gè)字節(jié)的同步頭,發(fā)送完畢需要160 μs,且射頻收發(fā)器從空閑狀態(tài)切換到發(fā)送狀態(tài)需要192μs,在這352μs時(shí)間內(nèi)處理器可將數(shù)據(jù)寫入射頻收發(fā)器的內(nèi)部緩存.并且射頻收發(fā)器的數(shù)據(jù)傳輸速率小于SPI接口的速率,不會產(chǎn)生內(nèi)部緩存被讀空的情況.時(shí)間戳信息共32位,通過SPI接口其傳輸需要6.4μs,所需時(shí)間很短.圖3為攜帶時(shí)間戳負(fù)載的信標(biāo)幀.
圖2 時(shí)間戳標(biāo)記Fig.2 Mark of timestamp
圖3 信標(biāo)幀F(xiàn)ig.3 Beacon frame
如圖3所示,信標(biāo)幀中Beacon payload部分為時(shí)間戳信息,表示發(fā)送方信標(biāo)幀發(fā)送時(shí)刻的本地時(shí)間.由于每次發(fā)送信標(biāo)幀之前都要對本地計(jì)數(shù)器清零,在超幀周期一定的情況下,其時(shí)間戳大小不會有太大變化.在時(shí)間戳信息中,前4個(gè)字節(jié)0x00000012為SFD觸發(fā)時(shí)的本地時(shí)間,即第18個(gè)符號周期.最后一個(gè)字節(jié)0x04為本地修正時(shí)間,表示讀取本地時(shí)鐘以及時(shí)間戳處理的時(shí)間,主要通過理論計(jì)算的方式,根據(jù)具體的軟硬件環(huán)境進(jìn)行設(shè)定.
在單跳的星形網(wǎng)絡(luò)中,協(xié)調(diào)器周期性廣播信標(biāo)幀,網(wǎng)絡(luò)內(nèi)其他節(jié)點(diǎn)只需跟蹤捕獲信標(biāo)幀,根據(jù)時(shí)間戳信息調(diào)節(jié)本地時(shí)鐘便可達(dá)到和協(xié)調(diào)器同步.為了進(jìn)一步降低網(wǎng)絡(luò)能耗,網(wǎng)絡(luò)內(nèi)設(shè)備并不轉(zhuǎn)發(fā)信標(biāo)幀,這樣節(jié)點(diǎn)可在無數(shù)據(jù)傳輸時(shí)處于睡眠狀態(tài),延長網(wǎng)絡(luò)生存時(shí)間.樹形網(wǎng)絡(luò)是一種多跳拓?fù)涞木W(wǎng)絡(luò).假如兩個(gè)相鄰設(shè)備同時(shí)發(fā)送信標(biāo)幀,則會產(chǎn)生信標(biāo)幀沖突,造成子設(shè)備無法正常接收來自父設(shè)備的同步信息,進(jìn)而影響網(wǎng)絡(luò)同步.如何避免信標(biāo)幀沖突便成為一個(gè)重要問題[8].
可以通過分時(shí)復(fù)用的方式將各設(shè)備發(fā)送信標(biāo)幀的時(shí)刻錯(cuò)開以避免沖突.在設(shè)備入網(wǎng)時(shí)根據(jù)設(shè)備在拓?fù)渲械奈恢脼槠浞峙渚W(wǎng)絡(luò)內(nèi)短地址.根據(jù)此地址信息計(jì)算出父子設(shè)備間發(fā)送信標(biāo)幀的時(shí)間偏移量(Δt),通過在父設(shè)備發(fā)送信標(biāo)幀的起始時(shí)刻添加偏移量,子設(shè)備發(fā)送信標(biāo)幀的時(shí)刻便與父設(shè)備錯(cuò)開.各子設(shè)備間的偏移量有所不同,所以多個(gè)子設(shè)備發(fā)送信標(biāo)幀的時(shí)刻也不會相同.在Zigbee網(wǎng)絡(luò)中,一個(gè)發(fā)送信標(biāo)幀設(shè)備的典型信標(biāo)時(shí)序如圖4所示.
圖4 信標(biāo)設(shè)備典型信標(biāo)時(shí)序Fig.4 Classic beacon timing of beacon device
在Zigbee中,信標(biāo)間隔BI=SDb×2BO,活動周期CAP=SDb×2SO,其中時(shí)間長度為960個(gè)符號.在活動周期,網(wǎng)絡(luò)內(nèi)設(shè)備進(jìn)行數(shù)據(jù)傳輸,而在非活動周期則處于空閑,子設(shè)備可利用非活動周期發(fā)送信標(biāo)幀.一個(gè)超幀周期可包含BI/CAP=2(BO-SO)個(gè)CAP.非 活 動 周 期 內(nèi) 還 可 以 容 納2(BO-SO)-1個(gè)CAP,這些周期均可合理調(diào)度用來發(fā)送信標(biāo)幀.以一個(gè)BO=6,SO=2的網(wǎng)絡(luò)為例,選取父子設(shè)備的時(shí)間偏移Δt=2*CAP,經(jīng)過信標(biāo)調(diào)度后的協(xié)調(diào)器和兩個(gè)子設(shè)備間的信標(biāo)發(fā)送時(shí)序如圖5所示.
經(jīng)過這樣的信標(biāo)調(diào)度之后,不會產(chǎn)生鄰居節(jié)點(diǎn)間信標(biāo)沖突的情況,每個(gè)節(jié)點(diǎn)只需偵聽其父設(shè)備的信標(biāo)幀,根據(jù)信標(biāo)幀負(fù)載中的時(shí)間戳信息完成與其父設(shè)備的同步,達(dá)到間接和協(xié)調(diào)器同步的效果.這種機(jī)制簡化了整個(gè)網(wǎng)絡(luò)的同步機(jī)制,減少了節(jié)點(diǎn)間的信息交換,同時(shí)在網(wǎng)絡(luò)規(guī)模不是很大的情況下可保證一定的時(shí)間同步精度.
圖5 父子設(shè)備信標(biāo)時(shí)序關(guān)系Fig.5 Beacon timing relationship between child and father device
本時(shí)間同步算法在TinyOS[9]軟件平臺中實(shí)現(xiàn),硬件平臺為自主研發(fā)的DLUTWIA-PA平臺.DLUTWIA-PA平臺選用LPC2136作為微處理器,提供了豐富的外圍接口,射頻芯片為TI公司的CC2520,該芯片兼容Zigbee協(xié)議.
在實(shí)驗(yàn)室環(huán)境下,將同步算法在DLUTWIAPA上加以實(shí)現(xiàn),并對算法的性能進(jìn)行了實(shí)驗(yàn)驗(yàn)證.網(wǎng)絡(luò)分為星形網(wǎng)絡(luò)和樹形網(wǎng)絡(luò)2種.在星形網(wǎng)絡(luò)中包括Zigbee網(wǎng)絡(luò)協(xié)調(diào)器,協(xié)調(diào)器上電后完成本地參數(shù)初始化并周期性廣播信標(biāo)幀.5個(gè)Zigbee終端設(shè)備掃描網(wǎng)絡(luò),并嘗試加入網(wǎng)絡(luò).終端設(shè)備入網(wǎng)成功后執(zhí)行本地的時(shí)間同步算法,解析時(shí)間戳信息,完成與協(xié)調(diào)器的時(shí)間同步.在超幀的起始時(shí)刻處理器觸發(fā)一個(gè)IO的翻轉(zhuǎn)操作,可通過示波器捕獲波形,來觀察設(shè)備間的同步誤差.樹形網(wǎng)絡(luò)包括1個(gè)Zigbee協(xié)調(diào)器、3個(gè)路由設(shè)備和5個(gè)終端設(shè)備.協(xié)調(diào)器和路由設(shè)備均發(fā)送信標(biāo)幀,終端設(shè)備捕獲信標(biāo)幀,最終達(dá)到全網(wǎng)同步.為了更真實(shí)地模擬現(xiàn)場工作環(huán)境,整個(gè)網(wǎng)絡(luò)在發(fā)送信標(biāo)幀的同時(shí),還在CAP時(shí)段和GTS時(shí)段傳輸數(shù)據(jù).在實(shí)驗(yàn)過程中,網(wǎng)絡(luò)連續(xù)運(yùn)行12h,不斷統(tǒng)計(jì)此期間各設(shè)備間的時(shí)間偏差.具體實(shí)現(xiàn)流程如圖6所示.
在星形網(wǎng)絡(luò)中,每隔5min采樣一次主從節(jié)點(diǎn)和從從節(jié)點(diǎn)間的同步偏差,每次采樣20個(gè)超幀周期.進(jìn)行多組實(shí)驗(yàn),發(fā)現(xiàn)各組間時(shí)間偏差并不大,同步算法有著較好的穩(wěn)定性.在此給出一組時(shí)間同步精度的統(tǒng)計(jì)結(jié)果,如圖7所示,n表示第n個(gè)超幀周期,Δt表示時(shí)間偏差.
圖6 算法實(shí)現(xiàn)流程Fig.6 Process of algorithm realization
圖7 星形拓?fù)鋾r(shí)間同步精度Fig.7 Time synchronization precision for star topology
由圖7可見,主從節(jié)點(diǎn)間的同步精度隨時(shí)間變化波動較大,這主要是受信標(biāo)幀長度變化的影響.在網(wǎng)絡(luò)工作過程中,信標(biāo)幀除了需傳遞時(shí)間戳信息,還需傳遞GTS分配等信息.而不同的GTS分配情況會帶來信標(biāo)幀負(fù)載長度的變化.接收方只能在接收完整個(gè)信標(biāo)幀后才能對時(shí)間偏差進(jìn)行處理和調(diào)整,而信標(biāo)幀負(fù)載長度的變化會對此處理時(shí)間產(chǎn)生影響,進(jìn)而影響到同步精度.用Ta表示從節(jié)點(diǎn)所需調(diào)整的本地時(shí)間偏差,那么Ta=Ts+t,其中Ts表示時(shí)間戳信息,t為根據(jù)信標(biāo)幀長度估算出的一個(gè)補(bǔ)償變量.從從節(jié)點(diǎn)間的時(shí)間偏差波動較小.因?yàn)楦鲝墓?jié)點(diǎn)的時(shí)間戳信息均來自同一信標(biāo)幀,由于超幀長度變化對各從節(jié)點(diǎn)造成的影響相同,所計(jì)算出的時(shí)間偏差相差不大.
按照相同的實(shí)驗(yàn)方法,統(tǒng)計(jì)了多跳樹形網(wǎng)絡(luò)中父子路由設(shè)備之間以及各終端節(jié)點(diǎn)間的時(shí)間同步偏差情況,統(tǒng)計(jì)結(jié)果如圖8所示.
將實(shí)驗(yàn)中獲取的時(shí)間偏差統(tǒng)計(jì)結(jié)果和加州大學(xué)伯克利分校在MICA平臺上實(shí)現(xiàn)的RBS和TPSN算法[4]進(jìn)行比較,結(jié)果如表1所示.本文算法取得的平均時(shí)間偏差要小于其他兩種算法.
圖9給出了不同大小的時(shí)間偏差在所有偏差中所占百分比p.
圖8 樹形網(wǎng)絡(luò)時(shí)間同步精度Fig.8 Time synchronization precision for tree network
表1 時(shí)間同步偏差Tab.1 Error of time synchronization
圖9 節(jié)點(diǎn)間時(shí)間偏差Fig.9 Time deviation between nodes
功耗對Zigbee網(wǎng)絡(luò)設(shè)備來說是一個(gè)非常重要的指標(biāo),根據(jù)實(shí)際的實(shí)驗(yàn)環(huán)境通過仿真軟件NS2仿真得出網(wǎng)絡(luò)節(jié)點(diǎn)的能耗曲線圖,如圖10所示.具體的仿真參數(shù)設(shè)置見表2.通過仿真結(jié)果可以看出,同異步網(wǎng)絡(luò)相比,引入同步算法的Zigbee網(wǎng)絡(luò),其網(wǎng)絡(luò)設(shè)備能耗大大降低,延長了網(wǎng)絡(luò)生存時(shí)間.
圖10 節(jié)點(diǎn)能耗曲線圖Fig.10 Energy-consuming graph for nodes
表2 仿真參數(shù)Tab.2 Parameters of simulation
Zigbee-Sync算法借鑒了RBS算法的思想,借助第三方廣播傳遞時(shí)間戳信息,并達(dá)到了較好的同步精度.針對RBS算法不適于多跳網(wǎng)絡(luò)的缺陷,本文通過引入信標(biāo)幀調(diào)度機(jī)制,成功將Zigbee-Sync算法在多跳網(wǎng)絡(luò)中實(shí)現(xiàn).TPSN算法將時(shí)間戳信息標(biāo)記在MAC層,可達(dá)到16.9μs的同 步 精 度[4],Zigbee-Sync 算 法 將 時(shí) 間 戳 放 在MAC層的信標(biāo)幀負(fù)載中,其同步精度和TPSN算法不相上下,但卻有效降低了同步過程中信息交換的次數(shù),使節(jié)點(diǎn)由于傳輸同步信息所消耗的能量大大降低.網(wǎng)絡(luò)內(nèi)設(shè)備還可以進(jìn)行按需同步,在無任務(wù)處理之時(shí),轉(zhuǎn)入休眠狀態(tài);當(dāng)有中斷喚醒新任務(wù)時(shí),可按照已獲取的網(wǎng)絡(luò)信息重新捕獲信標(biāo)幀,這可進(jìn)一步降低能耗.對于輕量級的LTS算法而言,其所取得的同步精度要低于Zigbee-Sync算法.
本算法基于節(jié)點(diǎn)較少的無線網(wǎng)絡(luò)對同步算法的性能進(jìn)行了驗(yàn)證.要想更好地在多節(jié)點(diǎn)、大規(guī)模網(wǎng)絡(luò)中實(shí)現(xiàn)此同步算法,則需要考慮引入信標(biāo)幀調(diào)度機(jī)制,保證路由節(jié)點(diǎn)間的信標(biāo)傳輸不會發(fā)生沖突,以可靠地傳輸同步信息.一個(gè)中間路由設(shè)備在接收到其父設(shè)備的信標(biāo)幀后,根據(jù)自身與父設(shè)備之間的時(shí)間偏移量以及信標(biāo)幀中的時(shí)間戳信息來校正本地時(shí)鐘,從而確定出自身的信標(biāo)時(shí)序.因?yàn)槁酚稍O(shè)備和父設(shè)備間的時(shí)間偏移量是一個(gè)預(yù)先分配的固定值,此值對本算法的同步精度不會造成負(fù)面影響,多跳網(wǎng)絡(luò)中的路由設(shè)備及其父設(shè)備之間依然能夠保證較好的同步精度.可見在引入信標(biāo)幀調(diào)度機(jī)制的情況下,本同步算法在多節(jié)點(diǎn)、大規(guī)模的無線網(wǎng)絡(luò)中依然是可行的、有效的.
本文提出了一種基于超幀機(jī)制的適合于Zigbee網(wǎng)絡(luò)的時(shí)間同步算法,該算法有效降低了同步過程中的信息交換次數(shù),降低了網(wǎng)絡(luò)內(nèi)節(jié)點(diǎn)能耗,并且具有良好的穩(wěn)定性.將Zigbee-Sync算法在實(shí)際平臺DLUTWIA-PA上進(jìn)行了實(shí)驗(yàn)驗(yàn)證,通過實(shí)驗(yàn)結(jié)果可知其可達(dá)到較高的同步精度,且運(yùn)行穩(wěn)定.本文設(shè)計(jì)的通過軟件來標(biāo)記時(shí)間戳的方式,可廣泛用于其他無法通過處理器直接發(fā)送數(shù)據(jù)的硬件平臺.
[1] 康冠林,王福韻,段渭軍.無線傳感器網(wǎng)絡(luò)時(shí)間同步綜述[J].計(jì)算機(jī)測量與控制,2005,13(10):1021-1030.KANG Guan-lin,WANG Fu-yun,DUAN Wei-jun.Survey on time synchronization for wireless sensor networks [J].Computer Measurement & Control,2005,13(10):1021-1030.(in Chinese)
[2] Zigbee Alliance.Zigbee Standards.[2011-04-02].http://www.Zigbee.org.
[3] Jeremy E,Lew G,Deborah E.Fine-grained network time synchronization using reference broadcasts[C]//Proceedings of the 5th Symposium on Operating Systems Design and Implementation.New York:ACM Press,2002:147-163.
[4] Saurabh G,Ram K,Mani B S.Timing-sync protocol for sensor networks[C]//Proceedings of the First International Conference on Embedded Networked Sensor Systems.New York:ACM Press,2003:138-149.
[5] Jana V G,Jan R.Lightweight time synchronization for sensor networks[C]//Proceedings of the Second ACM International Workshop on Wireless Sensor Networks and Applications.New York:ACM Press,2003:11-19.
[6] ZHOU M,ZHANG L N.Analysis and design of Zigbee MAC layers protocol [C] // 2010 International Conference on Future Information Technology and Management Engineering.Piscataway:IEEE Press,2010:211-215.
[7] Cox D, Jovanov E, Milenkovic A. Time synchronization for Zigbee networks [C] //Proceedings of the Thirty-Seventh Southeastern Symposium.Piscataway:IEEE Press,2005:135-138.
[8] Ahn S,Cho J,An S.Slotted beacon scheduling using Zigbee Cskip mechanism [C] // The Second International Conference on Sensor Technologies and Applications.Piscataway:IEEE Press,2008:103-108.
[9] Levis P A.TinyOS:An open operating system for wireless sensor networks[C]//Proceedings of the 7th International Conference on Mobile Data Management.Piscataway:IEEE Press,2006:1-11.