<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 簡(jiǎn)論無(wú)線傳感網(wǎng)絡(luò)時(shí)間同步的問(wèn)題

          簡(jiǎn)論無(wú)線傳感網(wǎng)絡(luò)時(shí)間同步的問(wèn)題

          作者: 時(shí)間:2011-08-04 來(lái)源:網(wǎng)絡(luò) 收藏

            1.2 典型算法分析

            1.2.1 TPSN算法分析

            TPSN算法采用的是層次型的結(jié)構(gòu),是基于發(fā)送者-接收者的雙向算法。分成兩個(gè)階段,第一階段為層次發(fā)現(xiàn)階段,第二階段為階段。T1、T4用來(lái)記錄同步節(jié)點(diǎn)的本地,T2、T3用來(lái)記錄參考節(jié)點(diǎn)的本地。同步節(jié)點(diǎn)A在T1時(shí)刻向參考節(jié)點(diǎn)B發(fā)送一個(gè)同步請(qǐng)求報(bào)文,報(bào)文中包含了同步節(jié)點(diǎn)的級(jí)別和T1。當(dāng)參考節(jié)點(diǎn)B收到報(bào)文后,記錄下接收時(shí)刻T2,并立即向同步節(jié)點(diǎn)A回復(fù)一個(gè)同步應(yīng)答報(bào)文,該報(bào)文中包含了參考節(jié)點(diǎn)B的級(jí)別和T1、T2及回復(fù)時(shí)刻T3。同步節(jié)點(diǎn)A收到參考節(jié)點(diǎn)的回復(fù)后,記下時(shí)刻T4。假設(shè)來(lái)回報(bào)文的傳輸延遲相同都為d,且m為同步節(jié)點(diǎn)在T1時(shí)刻兩者之間的時(shí)偏,且設(shè)來(lái)回時(shí)偏相同,由T2=T1+m+d,T4=T3-m+d可得到:


            則在T4時(shí)刻,若在同步節(jié)點(diǎn)A的本地時(shí)間增加修正量m,就能達(dá)到同步節(jié)點(diǎn)A與參考節(jié)點(diǎn)B之間的同步。

            1.2.2 RBS算法分析

            RBS算法是基于接收者-接收者的同步算法。首先參考節(jié)點(diǎn)廣播一個(gè)參考分組,當(dāng)同步節(jié)點(diǎn)A收到這個(gè)分組,記下自己的本地時(shí)鐘為T21,當(dāng)同步節(jié)點(diǎn)B收到這個(gè)分組時(shí),也記下自己的本地時(shí)鐘為T22,然后同步節(jié)點(diǎn)A與同步節(jié)點(diǎn)B交換本地時(shí)鐘T21與T22,這時(shí)其中一個(gè)節(jié)點(diǎn)只要根據(jù)時(shí)間差值m=T21-T22,修改自己的時(shí)鐘就能達(dá)到與另一個(gè)節(jié)點(diǎn)之間的同步。在多跳中,RBS算法采用多次廣播同步消息,接收節(jié)點(diǎn)根據(jù)接收到同步消息的平均值,同時(shí)采用最小平方線性回歸方法進(jìn)行線性擬合以減小同步誤差。

            1.2.3 DMTS算法分析

            DMTS算法是基于發(fā)送者-接收者的單向時(shí)間同步算法。當(dāng)發(fā)送節(jié)點(diǎn)在檢測(cè)到通道空閑時(shí),給廣播分組加上時(shí)間戳t0,從而排除了發(fā)送節(jié)點(diǎn)的處理延遲與MAC層的訪問(wèn)延遲。并假設(shè)發(fā)送報(bào)文的長(zhǎng)度為NA個(gè)比特(包括前導(dǎo)碼與同步字),傳送每個(gè)比特的時(shí)間為t,而接收者在接收完同步字后,記錄下此時(shí)的本地時(shí)間為t1,并在調(diào)整自己的本地時(shí)間記錄之前記錄下此時(shí)的時(shí)刻t2,這時(shí)接收節(jié)點(diǎn)為了與發(fā)送節(jié)點(diǎn)達(dá)到時(shí)間上的同步,可以調(diào)整接收節(jié)點(diǎn)的時(shí)間改為t0+t·NA+(t2-t1)。

            可以看出,TPSN平均單跳誤差為17.61μs,DMTS平均單跳誤差為30μs,RBS平均單跳誤差為6.29μs, TPSN平均4跳誤差為21.43μs,DMTS平均單跳誤差為151μs,RBS平均4跳誤差為9.97μs。

            1.2.4 其他算法分析

            LTS協(xié)議是基于發(fā)送-接收同步機(jī)制發(fā)展而來(lái),提出了集中式和分布式LTS多跳時(shí)間同步算法。LTS協(xié)議首先把組成廣度優(yōu)先生成樹(shù)拓?fù)浣Y(jié)構(gòu),并沿著樹(shù)的每條邊進(jìn)行單跳成對(duì)同步。參考節(jié)點(diǎn)的子節(jié)點(diǎn)同步完成后,又以該節(jié)點(diǎn)為參考節(jié)點(diǎn),采用同樣方式繼續(xù)同步下去,直到同步完成。

            單跳成對(duì)同步采用TPSN同步方法。成對(duì)同步的次數(shù)是邊數(shù)的線性函數(shù)。Hui Dui等人提出來(lái)的HRTS 利用了廣播的特性,只需要一次同步過(guò)程可以完成一個(gè)單跳組網(wǎng)所有節(jié)點(diǎn)的同步,進(jìn)一步降低了LTS協(xié)議的功耗。HRTS算法不再采用廣度優(yōu)先生成樹(shù)的邊,采用的是廣度優(yōu)先生成樹(shù)非葉子節(jié)點(diǎn)個(gè)數(shù)的線性函數(shù)。相較于LTS協(xié)議,HRTS算法以犧牲一定的精確來(lái)降低了整個(gè)網(wǎng)絡(luò)的功耗。

            BTS同步方法類似于HRTS算法,也是先建立廣度優(yōu)先成生樹(shù)拓?fù)浣Y(jié)構(gòu),只不過(guò)BTS采用的是時(shí)間轉(zhuǎn)換技術(shù),以達(dá)到整個(gè)網(wǎng)絡(luò)的時(shí)間同步,而HRTS直接對(duì)同步節(jié)點(diǎn)的本地時(shí)間進(jìn)行修改,得到全網(wǎng)的同步,同步報(bào)文個(gè)數(shù)降為HRTS協(xié)議的2/3。

            PBS同步算法的思想是參考節(jié)點(diǎn)與簇首節(jié)點(diǎn)之間采用雙向同步方法,與TPSN相似,其他節(jié)點(diǎn)(在兩個(gè)節(jié)點(diǎn)的通信范圍內(nèi))可以偵聽(tīng)到同步消息,就可以根據(jù)接收者-接收者同步方法同步。類似于RBS同步,PBS同步的前提是每個(gè)同步節(jié)點(diǎn)必須在簇首節(jié)點(diǎn)的通信范圍之內(nèi)。

            ETSP算法主要采用的是設(shè)置門檻值N來(lái)選擇同步算法,當(dāng)父節(jié)點(diǎn)的子節(jié)點(diǎn)小于或等于N時(shí),采用接收-接收(RBS)同步模式,否則采用發(fā)送-接收(TPSN)同步模式。N值的選擇采用N2-3N-2m=0來(lái)計(jì)算,式中m=RxTx,Rx為節(jié)點(diǎn)的接收次數(shù),Tx為傳播次數(shù)。

            FTSP同步算法精度高的原因是,發(fā)送者在發(fā)送一個(gè)同步請(qǐng)求報(bào)文時(shí)連續(xù)標(biāo)記了多個(gè)時(shí)間戳,接收者可以根據(jù)這幾個(gè)中斷時(shí)間計(jì)算出更精確的時(shí)間偏差。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();