一種車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法
【專利摘要】本發(fā)明涉及一種車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,該方法在預(yù)置時(shí)間內(nèi)各次同步時(shí)節(jié)點(diǎn)和網(wǎng)關(guān)節(jié)點(diǎn)的時(shí)鐘偏移量均不大于第一允許誤差時(shí),增大同步周期;在預(yù)置時(shí)間內(nèi)各次同步的時(shí)鐘偏移量中存在大于第一允許誤差的時(shí)鐘偏移量時(shí),減小同步周期;采用本發(fā)明能夠在不犧牲時(shí)鐘同步精度的前提下減少時(shí)鐘同步的能量開銷。
【專利說(shuō)明】一種車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及無(wú)線傳感器網(wǎng)絡(luò)(WSN, Wireless Sensor Network)技術(shù),尤其是一種車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法。
【背景技術(shù)】
[0002]融合了傳感器技術(shù)、信息處理技術(shù)和網(wǎng)絡(luò)通信技術(shù)的WSN由分布在物理空間上大量傳感器節(jié)點(diǎn)通過(guò)自組網(wǎng)的方式構(gòu)成網(wǎng)絡(luò),借助節(jié)點(diǎn)內(nèi)置的不同類型傳感器探測(cè)周圍不同環(huán)境中包括溫度、濕度、移動(dòng)目標(biāo)方向和速度等眾多物質(zhì)現(xiàn)象。時(shí)鐘同步是WSN應(yīng)用的重要組成部分,傳感器節(jié)點(diǎn)檢測(cè)到的數(shù)據(jù)融合、以及其自身定位等都要求傳感器節(jié)點(diǎn)間的時(shí)鐘保持同步。
[0003]廣泛用于網(wǎng)絡(luò)時(shí)鐘同步的方法主要有全球定位系統(tǒng)(GPS,Global PositioningSystem)和網(wǎng)絡(luò)時(shí)間協(xié)議(NTP,Net-work Time Protocol)。GPS具有相當(dāng)高的同步精度,但其成本高并且能耗較大,而且在有建筑物等阻擋物的環(huán)境同步精度會(huì)受到很大影響。NTP是Internet上進(jìn)行時(shí)鐘同步的協(xié)議,它能實(shí)現(xiàn)網(wǎng)絡(luò)上高精度的計(jì)算機(jī)校時(shí),但它是計(jì)算密集型的,計(jì)算開銷很大。而在WSN應(yīng)用中,要求傳感器節(jié)點(diǎn)外形盡可能小,部署后又維護(hù)困難,進(jìn)而對(duì)能耗也有嚴(yán)格的要求,并要求低廉的成本使其能夠被大量部署,顯然將GPS和NTP用于WSN的時(shí)鐘同步是不可取的。分布式系統(tǒng)中對(duì)時(shí)鐘同步也有大量研究,但這些方法同樣沒(méi)有考慮無(wú)線傳感器網(wǎng)絡(luò)的特點(diǎn),需要較大的資源開銷,所以也不適合WSN的時(shí)鐘同步。
[0004]目前針對(duì)WSN提出的時(shí)鐘同步算法可分為三類:基于接收者與接收者(receiver-receiver)的同步算法、基于發(fā)送者與接受者(sender-receiver)之間進(jìn)行成對(duì)同步的成對(duì)同步(Pair-Wise Synchronization)算法和基于sender-receiver的單向(one-way)同步算法。其中,one-way同步算法在上述三類方法中需要發(fā)送時(shí)鐘同步消息的數(shù)目最少,發(fā)送節(jié)點(diǎn)只要發(fā)送一次時(shí)鐘同步消息就可完成發(fā)送節(jié)點(diǎn)與接收節(jié)點(diǎn)間的時(shí)鐘同步,具有較低的網(wǎng)絡(luò)流量開銷和計(jì)算復(fù)雜度,因而具有較低的能耗。
[0005]車輛檢測(cè)系統(tǒng)是一種典型的WSN,又因其節(jié)點(diǎn)設(shè)置的環(huán)境對(duì)節(jié)點(diǎn)的體積、重量等的限制更為苛刻,例如,地磁檢測(cè)器設(shè)置于路面下,要盡可能減少對(duì)路面的損壞,則要求節(jié)點(diǎn)的體積盡可能小,而中繼器掛設(shè)在道路旁原有的設(shè)施上,要盡可能少給原有設(shè)施增加承重,要求節(jié)點(diǎn)的重量盡可能輕;并且,車輛檢測(cè)系統(tǒng)還需要其組成節(jié)點(diǎn)能夠長(zhǎng)時(shí)間持續(xù)工作。因而,車輛檢測(cè)系統(tǒng)對(duì)其組成節(jié)點(diǎn)的節(jié)能方面的要求更高。當(dāng)然,車輛檢測(cè)系統(tǒng)對(duì)時(shí)鐘同步的精度要求也較高。可見,與現(xiàn)有的針對(duì)WSN提出的時(shí)鐘同步算法相比,一種能夠滿足車輛檢測(cè)系統(tǒng)的同步精度要求、且耗能更少的時(shí)鐘同步方法是車輛檢測(cè)系統(tǒng)所急需的。
【發(fā)明內(nèi)容】
[0006]有鑒于此,本發(fā)明的主要目的在于提供一種車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,能夠在不犧牲時(shí)鐘同步精度的前提下減少時(shí)鐘同步的能量開銷。
[0007]為達(dá)到上述目的,本發(fā)明的技術(shù)方案如下: 一種車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,該方法包括:
A、節(jié)點(diǎn)以當(dāng)前周期為同步周期與網(wǎng)關(guān)節(jié)點(diǎn)進(jìn)行時(shí)鐘同步;當(dāng)前預(yù)置時(shí)間屆滿時(shí),執(zhí)行步驟B ;
B、比較當(dāng)前預(yù)置時(shí)間內(nèi)各次同步時(shí)節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)的時(shí)鐘偏移量與第一允許誤差的大小,如果不存在大于第一允許誤差的時(shí)鐘偏移量,執(zhí)行步驟C ;否則,執(zhí)行步驟D ;
C、增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期,并將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟A ;
D、減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期,并將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟A。
[0008]優(yōu)選地,所述當(dāng)前周期為:初始周期或者第二周期,第二周期大于初始周期;
當(dāng)前周期為初始周期時(shí),所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期;
當(dāng)前周期為第二周期時(shí),所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期。
[0009]優(yōu)選地,所述當(dāng)前周期為:初始周期或者第二周期或者第三周期,第三周期大于第二周期,第二周期大于初始周期;
當(dāng)前周期為初始周期時(shí),所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期;
當(dāng)前周期為第二周期時(shí),所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第三周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期;
當(dāng)前周期為第三周期時(shí),所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第三周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期。
[0010]優(yōu)選地,所述第一允許誤差的取值為本地時(shí)鐘的I個(gè)時(shí)鐘嘀嗒。
[0011]優(yōu)選地,其特征在于,所述初始周期的取值范圍為:[ls,5s];所述第二周期的取值范圍為:[3s,20s];所述第三周期的取值范圍為:[20s,30s]。
[0012]優(yōu)選地,節(jié)點(diǎn)啟動(dòng)時(shí)該方法還包括初始同步,過(guò)程如下: al、接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的同步包;
b1、依據(jù)同步包攜帶的偏移時(shí)間得出整點(diǎn)同步包的接收時(shí)間,根據(jù)所述接收時(shí)間接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的整點(diǎn)同步包,計(jì)算實(shí)際接收到該整點(diǎn)同步包的時(shí)間與所得出的接收時(shí)間的差,得到節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)當(dāng)前的時(shí)鐘偏移量;
Cl、判斷所述當(dāng)前的時(shí)鐘偏移量是否小于第二允許誤差,如果是,節(jié)點(diǎn)調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A ;否則,在下一分鐘,返回步驟al。
[0013]優(yōu)選地,判定所述預(yù)置時(shí)間屆滿的方法如下:
設(shè)置計(jì)數(shù)器的最大計(jì)數(shù)值為預(yù)先設(shè)定的固定時(shí)長(zhǎng),計(jì)數(shù)至最大計(jì)數(shù)值時(shí)清零重新計(jì)數(shù);
節(jié)點(diǎn)完成所述調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A的同時(shí),計(jì)數(shù)器開始計(jì)數(shù),每到計(jì)數(shù)器計(jì)數(shù)至最大計(jì)數(shù)值時(shí),即為預(yù)置時(shí)間屆滿時(shí);或者,
設(shè)置第一計(jì)數(shù)器和第二計(jì)數(shù)器;
節(jié)點(diǎn)啟動(dòng)時(shí),第一計(jì)數(shù)器開始計(jì)數(shù);
節(jié)點(diǎn)完成所述調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A的同時(shí),第二計(jì)數(shù)器以第一計(jì)數(shù)器當(dāng)前的計(jì)數(shù)值為起始計(jì)數(shù)值開始計(jì)數(shù);當(dāng)?shù)诙?jì)數(shù)器的計(jì)數(shù)值等于節(jié)點(diǎn)的校準(zhǔn)點(diǎn)時(shí)即為預(yù)置時(shí)間屆滿時(shí),第二計(jì)數(shù)器清零重新計(jì)數(shù)。
[0014]優(yōu)選地,節(jié)點(diǎn)連續(xù)丟失同步包的次數(shù)大于允許丟包次數(shù)時(shí),該節(jié)點(diǎn)執(zhí)行快速同步,具體步驟如下:
a2、接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的同步包;
b2、依據(jù)同步包攜帶的偏移時(shí)間得出整點(diǎn)同步包的接收時(shí)間,根據(jù)所述接收時(shí)間接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的整點(diǎn)同步包,計(jì)算實(shí)際接收到該整點(diǎn)同步包的時(shí)間與所述接收時(shí)間的差,得到節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)當(dāng)前的時(shí)鐘偏移量;
c2、判斷所述當(dāng)前的時(shí)鐘偏移量是否小于第二允許誤差,如果是,節(jié)點(diǎn)調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A ;否則,在下一個(gè)N秒,返回步驟a2 ;
其中,N的取值范圍為[5,16]。
[0015]優(yōu)選地,所述第 二允許誤差的取值為本地時(shí)鐘的I個(gè)時(shí)鐘嘀嗒和2個(gè)滴答時(shí)鐘嘀嗒中的一個(gè)。
[0016]優(yōu)選地,所述節(jié)點(diǎn)為地磁檢測(cè)器,網(wǎng)關(guān)節(jié)點(diǎn)為接入點(diǎn),接入點(diǎn)下發(fā)的同步包通過(guò)中繼器轉(zhuǎn)發(fā)給地磁檢測(cè)器,具體為:
中繼器接收接入點(diǎn)下發(fā)的同步包;
中繼器在接收到的同步包的時(shí)間戳中加入路徑偏移量后得到的新的時(shí)間戳,并轉(zhuǎn)發(fā)該攜帶新的時(shí)間戳的同步包;其中,
所述路徑偏移量是中繼器接收同步包至轉(zhuǎn)發(fā)該同步包的時(shí)間。
[0017]基于上述,本發(fā)明提供的一種車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法具有以下優(yōu)點(diǎn)和特
占-
^ \\\ ?
1、在預(yù)置時(shí)間內(nèi)各次同步的時(shí)鐘偏移量均不大于第一允許誤差時(shí),增大同步周期,這樣既減少了同步次數(shù)又不影響同步精度,達(dá)到了減少時(shí)鐘同步的能量開銷的目的;進(jìn)一步的,在預(yù)置時(shí)間內(nèi)各次同步的時(shí)鐘偏移量中存在大于第一允許誤差的時(shí)鐘偏移量時(shí),減小同步周期,保證了時(shí)鐘同步的精度。此外,也使得時(shí)鐘同步動(dòng)態(tài)適應(yīng)無(wú)線網(wǎng)絡(luò)傳輸狀況,網(wǎng)絡(luò)信號(hào)不好時(shí)增加同步次數(shù),信號(hào)良好時(shí)減少同步次數(shù),使得系統(tǒng)各設(shè)備之間按各自的時(shí)間點(diǎn)即能夠準(zhǔn)確交換數(shù)據(jù);
2、中繼器在轉(zhuǎn)發(fā)的同步包的時(shí)間戳中加入了路徑偏移量,這樣,于節(jié)點(diǎn)來(lái)看中繼器是透明的,節(jié)點(diǎn)收到的同步包是網(wǎng)關(guān)節(jié)點(diǎn)直接下發(fā)的或是通過(guò)中繼器轉(zhuǎn)發(fā)的,均可采用相同的算法實(shí)現(xiàn)時(shí)鐘同步,增強(qiáng)了車輛檢測(cè)系統(tǒng)的可擴(kuò)展性;
3、提供了快速同步方法,使得節(jié)點(diǎn)脫網(wǎng)后重新接入網(wǎng)絡(luò)時(shí),可快速與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同
止/J/ o【專利附圖】
【附圖說(shuō)明】
[0018]圖1為本發(fā)明實(shí)施例車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法的流程示意圖。
[0019]圖2為本發(fā)明實(shí)施例地磁檢測(cè)器與接入點(diǎn)時(shí)鐘同步的流程示意圖。
[0020]圖3為本發(fā)明實(shí)施例中繼器與接入點(diǎn)時(shí)鐘同步的流程示意圖。
【具體實(shí)施方式】
[0021]具體的,本發(fā)明實(shí)施例車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法的實(shí)現(xiàn)流程如圖1所示,包括:
步驟101:節(jié)點(diǎn)以當(dāng)前周期為同步周期與網(wǎng)關(guān)節(jié)點(diǎn)進(jìn)行時(shí)鐘同步;當(dāng)前預(yù)置時(shí)間屆滿時(shí),執(zhí)行步驟102 ;
步驟102:比較當(dāng)前預(yù)置時(shí)間內(nèi)各次同步時(shí)節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)的時(shí)鐘偏移量與第一允許誤差的大小,如果不存在大于第一允許誤差的時(shí)鐘偏移量,執(zhí)行步驟103 ;否則,執(zhí)行步驟104 ;
步驟103:增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期,并將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟101 ;
步驟104:減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期,并將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟101。
[0022]步驟101 中,
所述節(jié)點(diǎn)指車輛檢測(cè)系統(tǒng)中除網(wǎng)關(guān)節(jié)點(diǎn)外的其余節(jié)點(diǎn)。
[0023]所述節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)進(jìn)行時(shí)鐘同步具體為:
步驟all、節(jié)點(diǎn)接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的同步包;
步驟bll、節(jié)點(diǎn)依據(jù)實(shí)際接收到同步包的時(shí)間和該同步包的時(shí)間戳,得出節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)的時(shí)鐘偏移量;
步驟ell、將本地時(shí)鐘調(diào)整所得出的時(shí)鐘偏移量,使本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步。其
中,
所述節(jié)點(diǎn)為地磁檢測(cè)器、網(wǎng)關(guān)節(jié)點(diǎn)為接入點(diǎn)(AP,Access Point)時(shí),對(duì)于AP下發(fā)的同步包通過(guò)中繼器轉(zhuǎn)發(fā)給地磁檢測(cè)器的傳輸方式,步驟all具體為:
中繼器接收AP下發(fā)的同步包;
中繼器在接收到的同步包的時(shí)間戳中加入路徑偏移量后得到的新的時(shí)間戳,并轉(zhuǎn)發(fā)該攜帶新的時(shí)間戳的同步包;其中,所述路徑偏移量是中繼器接收同步包至轉(zhuǎn)發(fā)該同步包的時(shí)間;
節(jié)點(diǎn)接收中繼器轉(zhuǎn)發(fā)的同步包。
[0024]步驟bll具體為:
計(jì)算同步包的時(shí)間戳和同步包從網(wǎng)關(guān)節(jié)點(diǎn)到節(jié)點(diǎn)的時(shí)間延遲的和,得到理論上應(yīng)接收到該同步包的時(shí)間;
計(jì)算實(shí)際接收到的同步包的時(shí)間和理論上應(yīng)接收到該同步包的時(shí)間的差,得到節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)的時(shí)鐘偏移量;即:
理論上應(yīng)接收到該同步包的時(shí)間=同步包的時(shí)間戳+同步包從網(wǎng)關(guān)節(jié)點(diǎn)到節(jié)點(diǎn)的時(shí)間
延遲 時(shí)鐘偏移量=實(shí)際接收到的同步包的時(shí)間-理論上應(yīng)接收到該同步包的時(shí)間所述節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)進(jìn)行時(shí)鐘同步也還可以通過(guò)現(xiàn)有的針對(duì)WSN提出的時(shí)鐘同步算法實(shí)現(xiàn)。
[0025]所述預(yù)置時(shí)間可以為預(yù)先設(shè)定的固定時(shí)長(zhǎng)。
[0026]步驟102 中,
所述第一允許誤差的取值為本地時(shí)鐘的I個(gè)時(shí)鐘嘀塔(tick)。
[0027]步驟103 和 104 中,
所述當(dāng)前周期為:初始周期或者第二周期,第二周期大于初始周期;
相應(yīng)的,所述增大/減小當(dāng)前周期,將增大/減小后的周期作為當(dāng)前周期為:對(duì)應(yīng)于對(duì)當(dāng)前周期進(jìn)行增大/減小的操作,將初始周期或第二周期賦值給當(dāng)前周期,具體的:
當(dāng)前周期為初始周期,所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期;
當(dāng)前周期為第二周期,所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期。
[0028]所述當(dāng)前周期還可以為:初始周期或者第二周期或者第三周期,第三周期大于第二周期,第二周期大于初始周期;
相應(yīng)的,所述增大/減小當(dāng)前周期,將增大/減小后的周期作為當(dāng)前周期為:對(duì)應(yīng)于對(duì)當(dāng)前周期進(jìn)行增大/減小的操作,將初始周期、第二周期或第三周期賦值給當(dāng)前周期,具體的:
當(dāng)前周期為初始周期,所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期;
當(dāng)前周期為第二周期,所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第三周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期;
當(dāng)前周期為第三周期,所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第三周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期。
[0029]這里,所述初始周期的取值范圍為:[ls,5s];所述第二周期的取值范圍為:[3s, 20s];所述第三周期的取值范圍為:[20s,30s]。當(dāng)所述當(dāng)前周期為初始周期或者第二周期或者第三周期時(shí),優(yōu)選的,初始周期的取值為ls、3s或5s,第二周期的取值為3s、IOs或20s,第三周期的取值為20s、25s或30s ;當(dāng)所述當(dāng)前周期為初始周期或者第二周期時(shí),優(yōu)選的,初始周期的取值為ls、3s或5s,第二周期的取值為3s、5s或20s。
[0030]節(jié)點(diǎn)啟動(dòng)時(shí),在步驟101前,本發(fā)明實(shí)施例還包括初始同步,過(guò)程如下:
步驟al2:接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的同步包;
步驟bl2:依據(jù)同步包攜帶的偏移時(shí)間得出整點(diǎn)同步包的接收時(shí)間,根據(jù)所述接收時(shí)間接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的整點(diǎn)同步包,計(jì)算實(shí)際接收到該整點(diǎn)同步包的時(shí)間與所得出的接收時(shí)間的差,得到節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)當(dāng)前的時(shí)鐘偏移量;
步驟cl2:判斷所述當(dāng)前的時(shí)鐘偏移量是否小于第二允許誤差,如果是,節(jié)點(diǎn)調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟101 ;否則,在下一分鐘,返回執(zhí)行步驟al2。
[0031]步驟bl2 中,
所述同步包攜帶的偏移時(shí)間指同步包的發(fā)送時(shí)間偏移前一個(gè)整秒點(diǎn)的時(shí)間;
所述依據(jù)同步包攜帶的偏移時(shí)間得出整點(diǎn)同步包的接收時(shí)間可以通過(guò)以下公式實(shí)
現(xiàn):
整點(diǎn)同步包的接收時(shí)間=檢測(cè)器接收到所述同步包的時(shí)間+ (Is-偏移時(shí)間)。
[0032]步驟c 12 中,
所述第二允許誤差的取值可以為本地時(shí)鐘的I個(gè)時(shí)鐘嘀塔和2個(gè)時(shí)鐘嘀塔中的一個(gè);優(yōu)選的,所述第二允許誤差的取本地時(shí)鐘的2個(gè)時(shí)鐘嘀嗒。
[0033]本發(fā)明實(shí)施例還包括判定步驟101中的當(dāng)前預(yù)置時(shí)間屆滿的方法,具體為:
步驟al3:設(shè)置計(jì)數(shù)器的最大計(jì)數(shù)值為預(yù)先設(shè)定的固定時(shí)長(zhǎng),計(jì)數(shù)至最大計(jì)數(shù)值時(shí)清
零重新計(jì)數(shù);其中,所述固定時(shí)長(zhǎng)的取值范圍為[ls,60s],優(yōu)選的,固定時(shí)長(zhǎng)取ls、30s或60s ;
步驟bl3:節(jié)點(diǎn)完成步驟cl2所述調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A的同時(shí),計(jì)數(shù)器開始計(jì)數(shù),計(jì)數(shù)器計(jì)數(shù)至最大計(jì)數(shù)值時(shí)即為預(yù)置時(shí)間屆滿時(shí);或者,
步驟al4:設(shè)置第一計(jì)數(shù)器和第二計(jì)數(shù)器;
步驟bl4:節(jié)點(diǎn)啟動(dòng)時(shí),第一計(jì)數(shù)器開始計(jì)數(shù);
步驟cl4:節(jié)點(diǎn)完成步驟cl2所述調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A的同時(shí),第二計(jì)數(shù)器以第一計(jì)數(shù)器當(dāng)前的計(jì)數(shù)值為起始計(jì)數(shù)值開始計(jì)數(shù);當(dāng)?shù)诙?jì)數(shù)器的計(jì)數(shù)值等于節(jié)點(diǎn)的校準(zhǔn)點(diǎn)時(shí)即為預(yù)置時(shí)間屆滿時(shí),第二計(jì)數(shù)器清零重新計(jì)數(shù);
步驟al4中,第一計(jì)數(shù)器的最大計(jì)數(shù)值為30s,計(jì)數(shù)到30s時(shí)清零,重新計(jì)數(shù)。
[0034]步驟cl4中,所述校準(zhǔn)點(diǎn)是節(jié)點(diǎn)設(shè)備固有的。
[0035]節(jié)點(diǎn)脫網(wǎng),即節(jié)點(diǎn)連續(xù)丟失同步包的次數(shù)大于允許丟包次數(shù)時(shí),本發(fā)明實(shí)施例還包括節(jié)點(diǎn)重新接入網(wǎng)絡(luò)時(shí)與網(wǎng)關(guān)節(jié)點(diǎn)快速同步的方法,具體如下:
步驟al5:接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的同步包;
步驟bl5:依據(jù)同步包攜帶的偏移時(shí)間得出整點(diǎn)同步包的接收時(shí)間,根據(jù)所述接收時(shí)間接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的整點(diǎn)同步包,計(jì)算實(shí)際接收到該整點(diǎn)同步包的時(shí)間與所述接收時(shí)間的差,得到節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)當(dāng)前的時(shí)鐘偏移量;
步驟cl5:判斷所述當(dāng)前的時(shí)鐘偏移量是否小于第二允許誤差,如果是,節(jié)點(diǎn)調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A ;否則,在下一個(gè)N秒,返回執(zhí)行步驟al5 ;
其中,N的取值范圍為[5,16],優(yōu)選的,N取5、8或16。
[0036]所述允許丟包次數(shù)的取值范圍為[8次,16次],優(yōu)選的,允許丟包次數(shù)取8次、10次或16次。
[0037]如圖2所示,節(jié)點(diǎn)為地磁檢測(cè)器、網(wǎng)關(guān)節(jié)點(diǎn)為AP時(shí),本發(fā)明實(shí)施例車輛檢測(cè)系統(tǒng)的時(shí)鐘同步的實(shí)現(xiàn)流程如下:
步驟201:地磁檢測(cè)器以初始周期為同步周期與AP進(jìn)行時(shí)鐘同步;當(dāng)前預(yù)置時(shí)間屆滿時(shí),執(zhí)行步驟202 ; 步驟202:地磁檢測(cè)器比較當(dāng)前預(yù)置時(shí)間內(nèi)各次同步時(shí)地磁檢測(cè)器與AP的時(shí)鐘偏移量與第一允許誤差的大小,如果不存在大于第一允許誤差的時(shí)鐘偏移量,將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,執(zhí)行步驟203;否則,將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟201 ;
步驟203:地磁檢測(cè)器以第二周期為同步周期與AP進(jìn)行時(shí)鐘同步;當(dāng)前預(yù)置時(shí)間屆滿時(shí),執(zhí)行步驟204 ;
步驟204:地磁檢測(cè)器比較當(dāng)前預(yù)置時(shí)間內(nèi)各次同步時(shí)地磁檢測(cè)器與AP的時(shí)鐘偏移量與第一允許誤差的大小,如果不存在大于第一允許誤差的時(shí)鐘偏移量,將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,執(zhí)行步驟205 ;否則,將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟201 ;
步驟205:地磁檢測(cè)器以第三周期為同步周期與AP進(jìn)行時(shí)鐘同步;當(dāng)前預(yù)置時(shí)間屆滿時(shí),執(zhí)行步驟206 ;
步驟206:地磁檢測(cè)器比較當(dāng)前預(yù)置時(shí)間內(nèi)各次同步時(shí)地磁檢測(cè)器與AP的時(shí)鐘偏移量與第一允許誤差的大小,如果不存在大于第一允許誤差的時(shí)鐘偏移量,將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟205;否則,將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟203。
[0038]如圖3所示,節(jié)點(diǎn)為中繼器、網(wǎng)關(guān)節(jié)點(diǎn)為AP時(shí),本發(fā)明實(shí)施例車輛檢測(cè)系統(tǒng)的時(shí)鐘同步的實(shí)現(xiàn)流程如下:
步驟301:中繼器以初始周期為同步周期與AP進(jìn)行時(shí)鐘同步;當(dāng)前預(yù)置時(shí)間屆滿時(shí),執(zhí)行步驟302 ;
步驟302:中繼器比較當(dāng)前預(yù)置時(shí)間內(nèi)各次同步時(shí)中繼器與AP的時(shí)鐘偏移量與第一允許誤差的大小,如果不存在大于第一允許誤差的時(shí)鐘偏移量,將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,執(zhí)行步驟303 ;否則,將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟301 ;
步驟303:中繼器以第二周期為同步周期與AP進(jìn)行時(shí)鐘同步;當(dāng)前預(yù)置時(shí)間屆滿時(shí),執(zhí)行步驟304 ;
步驟304:中繼器比較當(dāng)前預(yù)置時(shí)間內(nèi)各次同步時(shí)中繼器與AP的時(shí)鐘偏移量與第一允許誤差的大小,如果不存在大于第一允許誤差的時(shí)鐘偏移量,將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟303 ;否則,將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟301。
[0039]以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,其特征在于,該方法包括: A、節(jié)點(diǎn)以當(dāng)前周期為同步周期與網(wǎng)關(guān)節(jié)點(diǎn)進(jìn)行時(shí)鐘同步;當(dāng)前預(yù)置時(shí)間屆滿時(shí),執(zhí)行步驟B ; B、比較當(dāng)前預(yù)置時(shí)間內(nèi)各次同步時(shí)節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)的時(shí)鐘偏移量與第一允許誤差的大小,如果不存在大于第一允許誤差的時(shí)鐘偏移量,執(zhí)行步驟C ;否則,執(zhí)行步驟D ; C、增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期,并將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟A ; D、減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期,并將下一個(gè)預(yù)置時(shí)間作為當(dāng)前預(yù)置時(shí)間,返回步驟A。
2.根據(jù)權(quán)利要求1所述的車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,其特征在于,所述當(dāng)前周期為:初始周期或者第二周期,第二周期大于初始周期; 當(dāng)前周期為初始周期時(shí),所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期;所述 減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期; 當(dāng)前周期為第二周期時(shí),所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期。
3.根據(jù)權(quán)利要求1所述的車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,其特征在于,所述當(dāng)前周期為:初始周期或者第二周期或者第三周期,第三周期大于第二周期,第二周期大于初始周期; 當(dāng)前周期為初始周期時(shí),所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期; 當(dāng)前周期為第二周期時(shí),所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第三周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將初始周期作為當(dāng)前周期; 當(dāng)前周期為第三周期時(shí),所述增大當(dāng)前周期,將增大后的周期作為當(dāng)前周期為:將第三周期作為當(dāng)前周期;所述減小當(dāng)前周期,將減小后的周期作為當(dāng)前周期為:將第二周期作為當(dāng)前周期。
4.根據(jù)權(quán)利要求1、2或3所述的車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,其特征在于,所述第一允許誤差的取值為本地時(shí)鐘的I個(gè)時(shí)鐘嘀塔。
5.根據(jù)權(quán)利要求4所述的車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,其特征在于,所述初始周期的取值范圍為:[ls,5s];所述第二周期的取值范圍為:[3s,20s];所述第三周期的取值范圍為:[20s, 30s]。
6.根據(jù)權(quán)利要求1所述的車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,其特征在于,節(jié)點(diǎn)啟動(dòng)時(shí)該方法還包括初始同步,過(guò)程如下: al、接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的同步包; bl、依據(jù)同步包攜帶的偏移時(shí)間得出整點(diǎn)同步包的接收時(shí)間,根據(jù)所述接收時(shí)間接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的整點(diǎn)同步包,計(jì)算實(shí)際接收到該整點(diǎn)同步包的時(shí)間與所得出的接收時(shí)間的差,得到節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)當(dāng)前的時(shí)鐘偏移量; Cl、判斷所述當(dāng)前的時(shí)鐘偏移量是否小于第二允許誤差,如果是,節(jié)點(diǎn)調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A ;否則,在下一分鐘,返回步驟al。
7.根據(jù)權(quán)利要求6所述的車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,其特征在于,判定所述預(yù)置時(shí)間屆滿的方法如下: 設(shè)置計(jì)數(shù)器的最大計(jì)數(shù)值為預(yù)先設(shè)定的固定時(shí)長(zhǎng),計(jì)數(shù)至最大計(jì)數(shù)值時(shí)清零重新計(jì)數(shù); 節(jié)點(diǎn)完成所述調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A的同時(shí),計(jì)數(shù)器開始計(jì)數(shù),每到計(jì)數(shù)器計(jì)數(shù)至最大計(jì)數(shù)值時(shí),即為預(yù)置時(shí)間屆滿時(shí);或者, 設(shè)置第一計(jì)數(shù)器和第二計(jì)數(shù)器; 節(jié)點(diǎn)啟動(dòng)時(shí),第一計(jì)數(shù)器開始計(jì)數(shù); 節(jié)點(diǎn)完成所述調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A的同時(shí),第二計(jì)數(shù)器以第一計(jì)數(shù)器當(dāng)前的計(jì)數(shù)值為起始計(jì)數(shù)值開始計(jì)數(shù);當(dāng)?shù)诙?jì)數(shù)器的計(jì)數(shù)值等于節(jié)點(diǎn)的校準(zhǔn)點(diǎn)時(shí)即為預(yù)置時(shí)間屆滿時(shí),第二計(jì)數(shù)器清零重新計(jì)數(shù)。
8.根據(jù)權(quán)利要求1所述的車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,其特征在于,節(jié)點(diǎn)連續(xù)丟失同步包的次數(shù)大于允許丟包次數(shù)時(shí),該節(jié)點(diǎn)執(zhí)行快速同步,具體步驟如下: a2、接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的同步包; b2、依據(jù)同步包攜帶的偏移時(shí)間得出整點(diǎn)同步包的接收時(shí)間,根據(jù)所述接收時(shí)間接收網(wǎng)關(guān)節(jié)點(diǎn)下發(fā)的整點(diǎn)同步包,計(jì)算實(shí)際接收到該整點(diǎn)同步包的時(shí)間與所述接收時(shí)間的差,得到節(jié)點(diǎn)與網(wǎng)關(guān)節(jié)點(diǎn)當(dāng)前的時(shí)鐘偏移量; c2、判斷所述當(dāng)前的時(shí)鐘偏移量是否小于第二允許誤差,如果是,節(jié)點(diǎn)調(diào)整本地時(shí)鐘與網(wǎng)關(guān)節(jié)點(diǎn)時(shí)鐘同步,執(zhí)行步驟A ;否則,在下一個(gè)N秒,返回步驟a2 ; 其中,N的取值范圍為[5,16]。
9.根據(jù)權(quán)利要求6、7或8所述的車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,其特征在于,所述第二允許誤差的取值為本地時(shí)鐘的I個(gè)時(shí)鐘嘀嗒和2個(gè)滴答時(shí)鐘嘀嗒中的一個(gè)。
10.根據(jù)權(quán)利要求1、2或3所述的車輛檢測(cè)系統(tǒng)的時(shí)鐘同步方法,其特征在于,所述節(jié)點(diǎn)為地磁檢測(cè)器,網(wǎng)關(guān)節(jié)點(diǎn)為接入點(diǎn),接入點(diǎn)下發(fā)的同步包通過(guò)中繼器轉(zhuǎn)發(fā)給地磁檢測(cè)器,具體為:中繼器接收接入點(diǎn)下發(fā)的同步包; 中繼器在接收到的同步包的時(shí)間戳中加入路徑偏移量后得到的新的時(shí)間戳,并轉(zhuǎn)發(fā)該攜帶新的時(shí)間戳的同步包;其中, 所述路徑偏移量是中繼器接收同步包至轉(zhuǎn)發(fā)該同步包的時(shí)間。
【文檔編號(hào)】H04W84/18GK103596261SQ201310539703
【公開日】2014年2月19日 申請(qǐng)日期:2013年11月5日 優(yōu)先權(quán)日:2013年11月5日
【發(fā)明者】劉向東, 何賜文, 王焱橋, 張大偉 申請(qǐng)人:邁銳數(shù)據(jù)(北京)有限公司