當(dāng)前位置:首頁(yè) > 工業(yè)控制 > 工業(yè)控制
[導(dǎo)讀]摘要:介紹了一種在IEEE 1588協(xié)議基礎(chǔ)上改進(jìn)的時(shí)間同步算法的實(shí)現(xiàn),通過(guò)精簡(jiǎn)的IEEE1588協(xié)議發(fā)送的follow—up報(bào)文,來(lái)降低ZigBee網(wǎng)絡(luò)的開(kāi)銷,同時(shí)改變了同步信息的發(fā)起者,由主節(jié)點(diǎn)換成從節(jié)點(diǎn),從而適應(yīng)了ZigBee

摘要:介紹了一種在IEEE 1588協(xié)議基礎(chǔ)上改進(jìn)的時(shí)間同步算法的實(shí)現(xiàn),通過(guò)精簡(jiǎn)的IEEE1588協(xié)議發(fā)送的follow—up報(bào)文,來(lái)降低ZigBee網(wǎng)絡(luò)的開(kāi)銷,同時(shí)改變了同步信息的發(fā)起者,由主節(jié)點(diǎn)換成從節(jié)點(diǎn),從而適應(yīng)了ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)即時(shí)加入和即時(shí)離開(kāi)的特點(diǎn)。通過(guò)實(shí)際試驗(yàn)測(cè)定,該算法適合于無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的高精度時(shí)間同步。
關(guān)鍵詞:時(shí)間同步;ZigBee網(wǎng)絡(luò);IEEE 1588;定時(shí)器

    本文主要是以高速運(yùn)動(dòng)目標(biāo)的監(jiān)測(cè)系統(tǒng)為研究背景,該監(jiān)測(cè)系統(tǒng)是將多個(gè)ZigBee節(jié)點(diǎn)布設(shè)在監(jiān)測(cè)區(qū)域(移動(dòng)目標(biāo)可能出現(xiàn)的區(qū)域),其中心節(jié)點(diǎn)和路由節(jié)點(diǎn)一直處于丁作狀態(tài);其他的節(jié)點(diǎn)在沒(méi)有任務(wù)時(shí),設(shè)定喚醒時(shí)間后進(jìn)入休眠狀態(tài)。最終各個(gè)傳感器節(jié)點(diǎn)通過(guò)不同跳轉(zhuǎn)路徑將數(shù)據(jù)匯總到中心節(jié)點(diǎn),由中心節(jié)點(diǎn)進(jìn)行處理或者通過(guò)網(wǎng)關(guān)將數(shù)據(jù)傳送到其他設(shè)備再進(jìn)行處理。整個(gè)系統(tǒng)的網(wǎng)絡(luò)示意圖如圖1所示。


    本系統(tǒng)中由于目標(biāo)的運(yùn)動(dòng)速度非常高,目標(biāo)的具體位置和狀態(tài)需要由多個(gè)ZigBee節(jié)點(diǎn)共同協(xié)作來(lái)工作,所以針對(duì)系統(tǒng)的時(shí)間同步研究是非常的重要。而導(dǎo)致時(shí)間同步的因素很多,除了發(fā)送時(shí)間、訪問(wèn)時(shí)間、傳送時(shí)間、傳播時(shí)間、接收時(shí)間、接受時(shí)間會(huì)影響網(wǎng)絡(luò)時(shí)間的同步,還有就是由于網(wǎng)絡(luò)拓?fù)涞牟煌?,?shù)據(jù)在傳遞過(guò)程中,跳數(shù)的不同也會(huì)引入不同的時(shí)間誤差。這就造成了網(wǎng)絡(luò)中各節(jié)點(diǎn)的本地時(shí)間便有了較大的差距。

1 網(wǎng)絡(luò)時(shí)間協(xié)議
1.1 IEEE 1588協(xié)議
   
IEEE 1588協(xié)議借鑒了NTP技術(shù),具有容易配置、快速收斂以及對(duì)網(wǎng)絡(luò)帶寬和資源消耗少等特點(diǎn)。主要原理是通過(guò)一個(gè)同步信號(hào)周期性的對(duì)網(wǎng)絡(luò)中所有節(jié)點(diǎn)的時(shí)鐘進(jìn)行同步校正,使基于以太網(wǎng)的分布式系統(tǒng)可以達(dá)到精確同步。
    PTP時(shí)間同步的原理:主設(shè)備周期地以多播的方式發(fā)送sync報(bào)文,隨后發(fā)送一個(gè)記錄發(fā)送Sync報(bào)文的精確時(shí)間戳to的Follow—up報(bào)文,從設(shè)備收到這兩個(gè)報(bào)文后記錄下兩個(gè)時(shí)間to(Sync發(fā)出時(shí)間)、t1(從設(shè)備收到Sync報(bào)文時(shí)間)。從設(shè)備在t2時(shí)刻發(fā)送時(shí)延請(qǐng)求報(bào)文,主設(shè)備在t3時(shí)刻收到延遲請(qǐng)求報(bào)文,并將時(shí)間戳放在時(shí)延響應(yīng)報(bào)文中發(fā)給從設(shè)備,從設(shè)備此時(shí)又記錄下了t2和t3。
    當(dāng)從設(shè)備獲得這4個(gè)時(shí)間后,通過(guò)Delav=[(t1-t0)+(t3-t2)]/2計(jì)算出了從設(shè)備與主設(shè)備之間的傳輸時(shí)延。Offset=t1-(t0+Delay)=[(t1-t0)-(t3-t2)]/2計(jì)算出從設(shè)備與主設(shè)備的時(shí)間偏差。從設(shè)備根據(jù)計(jì)算出來(lái)的偏差修改本地時(shí)間,完成了時(shí)鐘同步其同步原理如圖2所示。


    PTP時(shí)間同步協(xié)議還可以消除時(shí)間偏差和數(shù)據(jù)傳輸延時(shí),使各個(gè)設(shè)備達(dá)到較高精度的時(shí)間同步。由于ZigBee網(wǎng)絡(luò)的傳輸速率和吞吐量的限制,將PTP時(shí)間同步協(xié)議直接應(yīng)用于ZigBee無(wú)線傳感器網(wǎng)絡(luò)中,會(huì)使該協(xié)議的精度下降,同步的可靠性降低,還會(huì)給ZigBee網(wǎng)絡(luò)增加網(wǎng)絡(luò)負(fù)載。
1.2 改進(jìn)的時(shí)間同步協(xié)議
   
由于ZigBee無(wú)線傳感器網(wǎng)絡(luò)的傳輸速率小,帶寬小等特點(diǎn),便采用了降低PTP協(xié)議在網(wǎng)絡(luò)中的開(kāi)銷來(lái)實(shí)現(xiàn)本系統(tǒng)的時(shí)間的精準(zhǔn)時(shí)間同步。即減少握手次數(shù),使PTP協(xié)議的偏移測(cè)量和延時(shí)測(cè)量在一次通信過(guò)程完成。這個(gè)時(shí)鐘同步原理示意圖如圖3所示。


    該協(xié)議也包括偏移測(cè)量和延遲測(cè)量:
    (1)偏移測(cè)量:南于ZigBee網(wǎng)絡(luò)允許節(jié)點(diǎn)是即時(shí)加入和脫離的,故不能使用主節(jié)點(diǎn)周期性組播發(fā)送同步報(bào)文的方式,而采取子節(jié)點(diǎn)周期性地向主節(jié)點(diǎn)發(fā)送同步報(bào)文的方式,主節(jié)點(diǎn)收到此同步報(bào)文經(jīng)過(guò)處理后將白己的時(shí)間信息(包括處理時(shí)間,如下式Tm1~Tm2)發(fā)送給相應(yīng)的子節(jié)點(diǎn),該子節(jié)點(diǎn)收到此時(shí)間信息后,就可以計(jì)算出與Master的時(shí)鐘偏移量。Offset=Ts2-Tm2 (1)
    (2)延時(shí)測(cè)量:從下式可以看出,同步報(bào)文發(fā)送之后,子節(jié)點(diǎn)并沒(méi)有再發(fā)送延時(shí)請(qǐng)求報(bào)文,這是因?yàn)槔闷茰y(cè)量過(guò)程中的時(shí)間信息就可以計(jì)算出子節(jié)點(diǎn)到主節(jié)點(diǎn)的傳輸延時(shí)。這里計(jì)算延時(shí)的方法與PTP協(xié)議不同,子節(jié)點(diǎn)記錄同步報(bào)文的發(fā)送時(shí)間和應(yīng)答報(bào)文的接收時(shí)間,計(jì)算出2個(gè)時(shí)間的間隔,如下式的Ts2~Ts1,然后減去主節(jié)點(diǎn)的包處理時(shí)間,如下式的Tm1~Tm2,把網(wǎng)絡(luò)當(dāng)成對(duì)稱網(wǎng)絡(luò),再除以2就得出從時(shí)鐘與主時(shí)鐘的延遲時(shí)間。即
   
    偏移和延時(shí)都已經(jīng)計(jì)算出來(lái),子節(jié)點(diǎn)再調(diào)整時(shí)間Tb,從而達(dá)到主從時(shí)鐘的同步。調(diào)整時(shí)間的公式
    Tb=Tb-Offset+Delay    (3)

2 時(shí)間同步的實(shí)現(xiàn)
    ZigBee適用于開(kāi)放和互操作的設(shè)備,標(biāo)準(zhǔn)從物理層開(kāi)始定義。但是目前一般物理層和MAC層采用IEEE 802.15.4標(biāo)準(zhǔn),網(wǎng)絡(luò)層、安全層和應(yīng)用層由ZigBee聯(lián)盟開(kāi)發(fā),ZigBee協(xié)議的構(gòu)架如圖4所示。


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


    具體實(shí)現(xiàn)有以下幾個(gè)步驟:
    (1)通過(guò)TIM2_CR1,設(shè)置邊緣對(duì)齊,向上計(jì)數(shù)模式,TIM2_ARR不使用緩沖;
    (2)選擇定時(shí)器時(shí)鐘clock(本課內(nèi)部時(shí)鐘Fpclk=12 MHz);
    (3)沒(méi)置預(yù)分頻值TIM2_PSC,給TIM2_PSC賦值0,不分頻;
    (4)裝載TIM2_ARR和TIM2_CCR2,計(jì)數(shù)器清0;
    (5)軟件產(chǎn)生事件更新,重新裝載TIM2_ARR;
    (6)將GPIOA的引腳3定義為復(fù)用推挽輸出,用timer2的通道2(映射到引腳PA3)作為輸出比較;
    (7)TIM2_CCR2和TIM2_CNT匹配時(shí),翻轉(zhuǎn)OC2REF信號(hào);
    (8)設(shè)置定時(shí)器中斷方式,使能timer2的全局中斷,開(kāi)始計(jì)數(shù)。
    (9)產(chǎn)生中斷后,進(jìn)入中斷服務(wù)函數(shù)。
    在中斷服務(wù)函數(shù)里,使軟件變量counter++,通過(guò)判斷counter是否等于1000000;如果條件滿足,UTC時(shí)間加1,counter和TIM2_CNT清0,清除timer2的所有中斷標(biāo)志。
    我們將程序下載到芯片中,將數(shù)字示波器的探頭連接到定時(shí)器的比較輸出管腳PA3,經(jīng)過(guò)實(shí)驗(yàn)的到本地時(shí)鐘的情況如下圖所示:
    通過(guò)定時(shí)器和從網(wǎng)關(guān)獲取UTC時(shí)間,可確保主節(jié)點(diǎn)有一個(gè)絕對(duì)時(shí)間,由于不能從節(jié)點(diǎn)獲取UTC時(shí)間,所以從節(jié)點(diǎn)可能只有一個(gè)微秒級(jí)的相對(duì)時(shí)間。這就要求每次從節(jié)點(diǎn)定時(shí)喚醒后首要任務(wù)就是校時(shí),確保其和它的父節(jié)點(diǎn)時(shí)間同步上。整個(gè)網(wǎng)絡(luò)在最終對(duì)采集到的數(shù)據(jù)進(jìn)行融合時(shí)不出現(xiàn)錯(cuò)誤或誤差減少。
2.2 時(shí)間同步協(xié)議的實(shí)現(xiàn)
   
在確保了每個(gè)節(jié)點(diǎn)都有了高精度的本地時(shí)間后,就可以進(jìn)行時(shí)間同步協(xié)議的實(shí)現(xiàn),使整個(gè)網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的時(shí)間誤差在一定允許范圍內(nèi),時(shí)間同步協(xié)議的實(shí)現(xiàn)是建立在網(wǎng)絡(luò)正常通信的前提下,具體是在應(yīng)用層完成的,底層為用戶提供的一個(gè)8 bit的接口,可以將要發(fā)送和接收的數(shù)據(jù)通過(guò)8 bit的接口來(lái)與網(wǎng)絡(luò)層通信。發(fā)送數(shù)據(jù)的長(zhǎng)度由安全層是否使用安全認(rèn)證來(lái)決定。
    時(shí)間同步主要依靠節(jié)點(diǎn)之間的通信,每次校時(shí)都是從節(jié)點(diǎn)發(fā)起的。首先,從節(jié)點(diǎn)向主節(jié)點(diǎn)發(fā)送同步命令,其次,主節(jié)點(diǎn)將自己收到同步命令的時(shí)間和響應(yīng)從節(jié)點(diǎn)的發(fā)送時(shí)間通過(guò)單播方式傳回給從節(jié)點(diǎn),從節(jié)點(diǎn)依靠自身的兩個(gè)本地時(shí)間(發(fā)送同步命令時(shí)間和接收到主節(jié)點(diǎn)響應(yīng)的時(shí)間)以及接收到主節(jié)點(diǎn)的兩個(gè)時(shí)間,可以汁算獲取到通信延遲Delay和主從節(jié)點(diǎn)的偏差Offset,通過(guò)這兩個(gè)量從節(jié)點(diǎn)就可以自行調(diào)整自己的時(shí)間,已達(dá)到與主節(jié)點(diǎn)的時(shí)間同步。
    主節(jié)點(diǎn)主要是在形成網(wǎng)絡(luò)后,監(jiān)聽(tīng)信道,等待從節(jié)點(diǎn)的校時(shí)同步命令,再將收到同步命令和發(fā)送響應(yīng)的兩個(gè)時(shí)間發(fā)送個(gè)從節(jié)點(diǎn)。從節(jié)點(diǎn)主要是在加入網(wǎng)絡(luò)成功之后,向其父節(jié)點(diǎn)發(fā)送同步命令(發(fā)送前記錄發(fā)送時(shí)間),監(jiān)聽(tīng)信道,有數(shù)據(jù)就記錄時(shí)間,在判斷是不是同步命令的響應(yīng)。如果是就通過(guò)時(shí)間同步算法進(jìn)行計(jì)算Delay和Offset,在獲取從節(jié)點(diǎn)的當(dāng)前時(shí)間,通過(guò)調(diào)整時(shí)間公式進(jìn)行調(diào)整自身時(shí)間。
    主從節(jié)點(diǎn)的具體流程如圖6和圖7所示。


    將程序下載后,將兩個(gè)節(jié)點(diǎn)的定時(shí)器的比較輸出管腳PA3連接到示波器的CH1、CH2上,就會(huì)獲得未校時(shí)前的情況,兩個(gè)時(shí)鐘沒(méi)有重合在一起。等待一會(huì),就回出現(xiàn)校時(shí)后的結(jié)果,兩個(gè)時(shí)鐘重合在一起。具體實(shí)驗(yàn)驗(yàn)證兩個(gè)節(jié)點(diǎn)的時(shí)間同步情況如圖8所示。



3 結(jié)束語(yǔ)
    ZigBee具有超強(qiáng)的生命力和優(yōu)勢(shì),應(yīng)用前景好,值得廣大嵌入式應(yīng)用的技術(shù)人員關(guān)注,并加入到它的應(yīng)用行列。時(shí)間同步技術(shù)的研究是ZigBee無(wú)線傳感器網(wǎng)絡(luò)在實(shí)際應(yīng)用中最需要關(guān)注的一個(gè)關(guān)鍵技術(shù)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉