久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

關 閉

新聞中心

EEPW首頁 > 工控自動化 > 設計應用 > 無線傳感器網絡時間同步協議的實現

無線傳感器網絡時間同步協議的實現

作者: 時間:2013-03-20 來源:網絡 收藏

1.2 改進的協議
由于ZigBee無線傳感器網絡的傳輸速率小,帶寬小等特點,便采用了降低PTP協議在網絡中的開銷來實現本系統的時間的精準。即減少握手次數,使PTP協議的偏移測量和延時測量在一次通信過程完成。這個時鐘同步原理示意圖如圖3所示。

本文引用地址:http://cqxgywz.com/article/159475.htm

c.JPG


該協議也包括偏移測量和延遲測量:
(1)偏移測量:南于允許節點是即時加入和脫離的,故不能使用主節點周期性組播發送同步報文的方式,而采取子節點周期性地向主節點發送同步報文的方式,主節點收到此同步報文經過處理后將白己的時間信息(包括處理時間,如下式Tm1~Tm2)發送給相應的子節點,該子節點收到此時間信息后,就可以計算出與Master的時鐘偏移量。Offset=Ts2-Tm2 (1)
(2)延時測量:從下式可以看出,同步報文發送之后,子節點并沒有再發送延時請求報文,這是因為利用偏移測量過程中的時間信息就可以計算出子節點到主節點的傳輸延時。這里計算延時的方法與PTP協議不同,子節點記錄同步報文的發送時間和應答報文的接收時間,計算出2個時間的間隔,如下式的Ts2~Ts1,然后減去主節點的包處理時間,如下式的Tm1~Tm2,把網絡當成對稱網絡,再除以2就得出從時鐘與主時鐘的延遲時間。即
e.JPG
偏移和延時都已經計算出來,子節點再調整時間Tb,從而達到主從時鐘的同步。調整時間的公式
Tb=Tb-Offset+Delay (3)

2 的實現
ZigBee適用于開放和互操作的設備,標準從物理層開始定義。但是目前一般物理層和MAC層采用IEEE 802.15.4標準,網絡層、安全層和應用層由ZigBee聯盟開發,ZigBee協議的構架如圖4所示。

g.JPG


2.1 本地時鐘設計
我們采用的硬件是意法半導體(ST)公司最新推出的一個完全集成的系統芯片(SoC)STM32W108。它集成了32位ARM Cortex—M3微處理器、符合IEEE 802.15.4標準的2.4 G的收發器、1 28 KB的flash、8 KB的RAM以及各種通用外設。
STM32W108的示意圖如圖5所示。

h.JPG


具體實現有以下幾個步驟:
(1)通過TIM2_CR1,設置邊緣對齊,向上計數模式,TIM2_ARR不使用緩沖;
(2)選擇時鐘clock(本課內部時鐘Fpclk=12 MHz);
(3)沒置預分頻值TIM2_PSC,給TIM2_PSC賦值0,不分頻;
(4)裝載TIM2_ARR和TIM2_CCR2,計數器清0;
(5)軟件產生事件更新,重新裝載TIM2_ARR;
(6)將GPIOA的引腳3定義為復用推挽輸出,用timer2的通道2(映射到引腳PA3)作為輸出比較;
(7)TIM2_CCR2和TIM2_CNT匹配時,翻轉OC2REF信號;
(8)設置中斷方式,使能timer2的全局中斷,開始計數。
(9)產生中斷后,進入中斷服務函數。
在中斷服務函數里,使軟件變量counter++,通過判斷counter是否等于1000000;如果條件滿足,UTC時間加1,counter和TIM2_CNT清0,清除timer2的所有中斷標志。
我們將程序下載到芯片中,將數字示波器的探頭連接到定時器的比較輸出管腳PA3,經過實驗的到本地時鐘的情況如下圖所示:
通過定時器和從網關獲取UTC時間,可確保主節點有一個絕對時間,由于不能從節點獲取UTC時間,所以從節點可能只有一個微秒級的相對時間。這就要求每次從節點定時喚醒后首要任務就是校時,確保其和它的父節點時間同步上。整個網絡在最終對采集到的數據進行融合時不出現錯誤或誤差減少。



評論


相關推薦

技術專區

關閉