無線傳感器網絡時間同步協議的實現
摘要:介紹了一種在IEEE 1588協議基礎上改進的時間同步算法的實現,通過精簡的IEEE1588協議發送的follow—up報文,來降低ZigBee網絡的開銷,同時改變了同步信息的發起者,由主節點換成從節點,從而適應了ZigBee網絡節點即時加入和即時離開的特點。通過實際試驗測定,該算法適合于無線傳感器網絡節點的高精度時間同步。
關鍵詞:時間同步;ZigBee網絡;IEEE 1588;定時器
本文主要是以高速運動目標的監測系統為研究背景,該監測系統是將多個ZigBee節點布設在監測區域(移動目標可能出現的區域),其中心節點和路由節點一直處于丁作狀態;其他的節點在沒有任務時,設定喚醒時間后進入休眠狀態。最終各個傳感器節點通過不同跳轉路徑將數據匯總到中心節點,由中心節點進行處理或者通過網關將數據傳送到其他設備再進行處理。整個系統的網絡示意圖如圖1所示。
本系統中由于目標的運動速度非常高,目標的具體位置和狀態需要由多個ZigBee節點共同協作來工作,所以針對系統的時間同步研究是非常的重要。而導致時間同步的因素很多,除了發送時間、訪問時間、傳送時間、傳播時間、接收時間、接受時間會影響網絡時間的同步,還有就是由于網絡拓撲的不同,數據在傳遞過程中,跳數的不同也會引入不同的時間誤差。這就造成了網絡中各節點的本地時間便有了較大的差距。
1 網絡時間協議
1.1 IEEE 1588協議
IEEE 1588協議借鑒了NTP技術,具有容易配置、快速收斂以及對網絡帶寬和資源消耗少等特點。主要原理是通過一個同步信號周期性的對網絡中所有節點的時鐘進行同步校正,使基于以太網的分布式系統可以達到精確同步。
PTP時間同步的原理:主設備周期地以多播的方式發送sync報文,隨后發送一個記錄發送Sync報文的精確時間戳to的Follow—up報文,從設備收到這兩個報文后記錄下兩個時間to(Sync發出時間)、t1(從設備收到Sync報文時間)。從設備在t2時刻發送時延請求報文,主設備在t3時刻收到延遲請求報文,并將時間戳放在時延響應報文中發給從設備,從設備此時又記錄下了t2和t3。
當從設備獲得這4個時間后,通過Delav=[(t1-t0)+(t3-t2)]/2計算出了從設備與主設備之間的傳輸時延。Offset=t1-(t0+Delay)=[(t1-t0)-(t3-t2)]/2計算出從設備與主設備的時間偏差。從設備根據計算出來的偏差修改本地時間,完成了時鐘同步其同步原理如圖2所示。
PTP時間同步協議還可以消除時間偏差和數據傳輸延時,使各個設備達到較高精度的時間同步。由于ZigBee網絡的傳輸速率和吞吐量的限制,將PTP時間同步協議直接應用于ZigBee無線傳感器網絡中,會使該協議的精度下降,同步的可靠性降低,還會給ZigBee網絡增加網絡負載。
評論