一種應用于無線傳感器網(wǎng)絡的時鐘同步精簡信息交互方法
【技術領域】
[0001]本發(fā)明涉及無線傳感器網(wǎng)絡中的時鐘同步技術領域,特別涉及一種應用于無線傳感器網(wǎng)絡的時鐘同步精簡信息交互方法。
【背景技術】
[0002]精確時鐘同步技術被廣泛應用于智能電網(wǎng)等分布式設備間、分布式監(jiān)測與控制系統(tǒng)等越來越多的技術領域中,成為人們關注與研究的焦點。
[0003]目前的時鐘同步技術,通常分為有線和無線兩種。有線時鐘同步技術是傳統(tǒng)的時鐘同步技術,采用IEEE1588精確時鐘同步協(xié)議,如圖1所示,精確性好,計算公式簡單,但因為受到線路鋪設、維護困難、布點不靈活等因素的限制,在許多應用場景下,正逐漸被無線技術所替代。
[0004]目前無線傳感器網(wǎng)絡時鐘同步技術,通常采用將IEEE1588精確時鐘同步協(xié)議直接應用于IEEE802.15.4無線傳感器網(wǎng)絡標準下的協(xié)議棧,參考時鐘終端與同步終端之間利用現(xiàn)有協(xié)議棧的發(fā)送接收模式進行同步信息傳遞,如圖2所示,但是該方法十分復雜,需要接收和發(fā)送多個信息來實現(xiàn)時鐘同步兩個設備間的路徑時延與時鐘偏差的計算,增加了無線網(wǎng)絡的系統(tǒng)消息開銷,延長了同步時間,另外,考慮到無線傳感器網(wǎng)絡自身的特殊性,在傳輸信道中存在隨機干擾或者突發(fā)性干擾時,容易造成同步信息丟失,而傳統(tǒng)方法只要其中一個信號丟失或者錯誤,即會直接導致時鐘同步失敗,需要等待重新發(fā)送下一個同步信息,這將造成同步時間的進一步延長,進一步加大了無線網(wǎng)絡系統(tǒng)的消息傳輸開銷,影響時鐘同步精度。
【發(fā)明內容】
[0005]針對現(xiàn)有無線傳感器網(wǎng)絡時鐘同步技術同步時延不確定性、系統(tǒng)消息開銷大等問題,本發(fā)明實施例的目的是提供一種同步時延小、同步消息開銷小的應用于無線傳感器網(wǎng)絡的時鐘同步精簡信息交互方法,結合IEEE1588精確時鐘同步協(xié)議和IEEE802.15.4無線傳感器網(wǎng)絡協(xié)議,每一次時間同步過程中至少省略2條信息發(fā)送及接收周期,可應用于智能電網(wǎng)等分布式設備間、分布式監(jiān)測與控制系統(tǒng)的同步時鐘建立與守時。
[0006]為了達到上述目的,本發(fā)明實施例提供如下技術方案:
[0007]—種應用于無線傳感器網(wǎng)絡的時鐘同步精簡信息交互方法,其特征在于,包括以下步驟:
[0008]Ql:簇頭側的時鐘是主時鐘,具有參考時鐘的作用,簇頭側的主控單元確定要進行時鐘同步的節(jié)點序號,并向該節(jié)點側發(fā)送同步報文信號,并由FPGA記錄同步報文信號發(fā)送的時間戳tl ;
[0009]Q2:節(jié)點側時鐘需要與簇頭側進行時鐘校準,節(jié)點側的主控單元接收到同步報文信號,并由FPGA記錄下接收同步報文信號的時間戳t2 ;
[0010]同時,按照IEEE802.15.4協(xié)議規(guī)范,節(jié)點在成功接收報文信號后,向簇頭側發(fā)送接收確認報文信號,并由FPGA記錄確認報文信號的發(fā)送時間戳t3 ;
[0011]Q3:簇頭側接收到來自節(jié)點側的接收確認報文信號,并由FPGA記錄該報文信號的接收時間戳t4 ;
[0012]Q4:簇頭側的主控單元將所記錄的同步報文信號的發(fā)送時間戳tl和來自節(jié)點側的確認報文信號的接收時間戳t4組合成數(shù)據(jù)包,發(fā)送到節(jié)點側;
[0013]Q5:節(jié)點側的主控單元接收到數(shù)據(jù)包,發(fā)送確認報文信號給簇頭側,同時根據(jù)節(jié)點側記錄的同步報文信號的接收時間戳t2和確認報文信號的發(fā)送時間戳t3,以及從數(shù)據(jù)包中解析出的tl和t4,直接計算簇頭側與節(jié)點側間的路徑時延與簇頭節(jié)點間的時鐘偏差Offset,進行本地時鐘校準,其具體的計算方法為:
[0014]t2~tx = Delay+Offset
[0015]t4_t3 = Delay-Offset
[0016]Delay =+ (t4-t3) /2
[0017]Offset = (?2-?!) - (t4-t3) /2
[0018]Q6:簇頭側、節(jié)點側按照步驟Q1-Q5每進行一次時間同步的完整有效信號的形式為:長脈沖、脈沖寬度為Tl,脈沖間隔、寬度為T2,短脈沖、脈沖寬度為T3的形式,其中Tl、T3的值在同步過程中保持不變,以符合IEEE802.15.4協(xié)議規(guī)范;
[0019]Q7:在上述步驟Q1-Q4過程中,無線傳感器射頻電路提供了發(fā)送接收數(shù)據(jù)的信號指示,可以作為發(fā)送接收時間戳指示信號使用,與射頻電路指示信號相連接的FPGA每當檢測到信號上升沿,即在寄存器Rl中記錄第一個上升沿對應的時鐘值,在寄存器R2中記錄隨后的第二個上升沿的時鐘值;
[0020]Q8:在上述步驟Q1-Q4過程中,時間戳的獲取方法為:與同步或確認報文信號相連接的FPGA用固定信號與時間戳指示信號進行相關操作,具體操作按照如下公式進行:
[0021]R(η)= (1/Ν) Σ [x(m)y (m+n)],
[0022]其中m從0到N-1變化;R(n)為相關值,x(m),m=0-N-l,表示本地預設信號;y(m)指示信號波形;
[0023]設定相關檢測門限值RTH,當計算所得的R(n)大于等于所設定門限值RTH時,
[0024]Q7中寄存器Rl和R2中記錄的時鐘值即為相應的時間戳,對于簇頭側,Rl中存儲的是tl,R2中存儲的是t4 ;對于節(jié)點側,Rl中存儲的是t2,R2中存儲的是t3 ;
[0025]Q9:節(jié)點側主控單元利用步驟Q5中計算的時鐘偏差Offset,可以進行實時調整節(jié)點本地時鐘,具體調整方法為:Clock新=clock原+offset。
[0026]本發(fā)明實施例提供的一種應用于無線傳感器網(wǎng)絡的時鐘同步精簡信息交互方法,方法簡單,極大的降低了同步消息開銷,減少了出錯的可能性,并且精簡了計算周期,便于實現(xiàn)的同時,結合IEEE1588精確時鐘同步協(xié)議和IEEE802.15.4無線傳感器網(wǎng)絡協(xié)議,每一次時間同步過程中至少省略2個同步消息發(fā)送及接收,可靠性高,提高了工作效率。
【附圖說明】
[0027]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0028]圖1為現(xiàn)有技術中IEEE1588精確時鐘同步協(xié)議的在一個同步周期內的同步信息交互示意圖。
[0029]圖2為現(xiàn)有技術中IEEE802.15.4無線傳感器網(wǎng)絡標準方法的在一個同步周期內的同步信息交互示意圖。
[0030]圖3為本發(fā)明實施例1提供的一種應用于無線傳感器網(wǎng)絡的時鐘同步精簡信息交互方法的在一個同步周期內的同步信息交互示意圖。
[0031]圖4為本發(fā)明實施例1提供的一種應用于無線傳感器網(wǎng)絡的時鐘同步精簡信息交互方法的系統(tǒng)結構示意圖。
[0032]圖5為本發(fā)明實施例2提供的一種應用于無線傳感器網(wǎng)絡的時鐘同步精簡信息交互方法的當進行多個節(jié)點側時的同步信息交互示意圖。
[0033]圖6為本發(fā)明實施例提供的一種應用于無線傳感器網(wǎng)絡的時鐘同步精簡信息交互方法的簇頭側、節(jié)點側按照步驟Q1-Q5每進行一次時間同步的完整有效信號的曲線示意圖。
[0034]圖7為一種應用于無線傳感器網(wǎng)絡的時鐘同步精簡信息交互方法的實驗的簇頭側與節(jié)點側進行同步系統(tǒng)試驗的最終結果的數(shù)據(jù)示意圖。
【具體實施方式】
[0035]下面將結合本發(fā)明的附圖,對本發(fā)明的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0036]圖1為IEEE1588精確時鐘同步協(xié)議的在一個同步周期內的同步信息交互示意圖,圖2為IEEE802.15.4無線傳感器網(wǎng)絡標準方法的在一個同步周期內的同步信息交互示意圖,圖3、圖5為本發(fā)明實施例提供的在一個同步周期內的同步信息交互示意圖,由圖對比可看出,本發(fā)明實施例提供的同步信息交互方法更為簡單實用,可靠性也在本處進行詳細闡述。
[0037]實施例1
[0038]本申請文件中,簇頭側是主時鐘,具有參考時鐘的作用,節(jié)點側可以有多個,圖3為I個待同步節(jié)點、圖5為多個待同步節(jié)點的同步信息交互方法,節(jié)點側時鐘穩(wěn)定度差,需要與簇頭側進行時鐘校準。實際應用中,通常是一個簇頭側要和多個節(jié)點進行時鐘同步,簇頭為每一個節(jié)點分配一個時鐘同步時間段,在此時間段內完成一個同步周期任務。
[0039]如圖3-4所示,下面具體闡述本申請?zhí)峒暗?br/>【發(fā)明內容】
是如何完成一個完整的工作周期的,一個簇頭側和一個節(jié)點時鐘同步的方法流程,在一個同步周期內的時鐘同步過程為例進行說明,該方法包括:
[0040]步驟一:簇頭側的主控單元確定進行時鐘同步校準的節(jié)點序號,并向其發(fā)送同步報文信號;
[0041]步驟二:節(jié)點側成功接收到簇頭側發(fā)來的同步報文信號,并反饋確認消息給簇頭側(ACK消息);
[0042]步驟三:在步驟一和步驟二過程中,簇頭側的FPGA模塊,檢測簇頭射頻電路的發(fā)送接收指示信號,記錄上升沿到達時間,并將時間記錄到移位寄存器Rl和R2中;
[0043]步驟四:在步驟一和步驟二兩個步驟中,簇頭側的FPGA模塊將檢測到的射頻電路發(fā)送接收指示信號波形,與預設信號波形進行對比,并計算波形相似度;
[0044]對比方法選用相關檢測的方法,按照下述公式進行,并得到相關值:
[0045]R (η) = (1/Ν) Σ [x (m) y (m+n)]
[0046]其中m從O到N-1變化
[0047]R(η)為相關值,X (m), m=0-N-l,表示本地預設信號;y (m)指示信號波形;
[0048]步驟五:簇頭側將步驟四計算的相似度與預設門限G進行對比,當相似度大于門限G,則認定為發(fā)生了步驟一、步驟二這樣的同步過程;如果相似度小于門限,則認為未進行同步;
[0049]步驟六:簇頭側按照步驟五認定發(fā)生了成功的簇頭與節(jié)點同步信息傳遞時,F(xiàn)PGA將步驟三中的寄存器Rl和R2中的時間值存儲到寄存器R3、R4中,對應tl和t4 ;
[0050]步驟七:在步驟一和步驟二中,節(jié)點板FPGA模塊檢測簇頭射頻電路的發(fā)送接收指示信號,并記錄上升沿到達時間,并將時間記錄到移位寄存器R5和R6中;