《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信与网络 > 设计应用 > 基于误差映射的无线传感器网络同步精度测试方法
基于误差映射的无线传感器网络同步精度测试方法
来源:电子技术应用2013年第4期
汪付强1,2,吴晓明1,2,李 刚1,2
1.山东省计算中心,山东 济南 250014; 2.山东省计算机网络重点实验室,山东 济南250014
摘要: 传统的时间同步精度测试方法使用查询的方式需要占用无线网络资源,有可能影响系统正常运行。为此设计了基于误差映射的同步精度测试方法。通过使用FPGA对节点对应端口变化监测获得节点间时间同步误差的变化,从而避免了对无线通信资源的占用。实验结果表明,与传统方法相比,该方法可以获得更加实时的测量结果,而且使用更加灵活、方便。
中圖分類號: TP393.1
文獻標識碼: A
文章編號: 0258-7998(2013)04-0016-03
Measurement method of synchronization precision for wireless sensor networks based on error mapping
Wang Fuqiang1,2,Wu Xiaoming1,2,Li Gang1,2
1.Shandong Computer Science Center, Ji′nan 250014,China; 2.Shandong Provincial Key Laboratory of Computer Network, Ji′nan 250014,China
Abstract: The traditional way of time synchronization precision measurement by inquiring methods that require wireless communication resources may affect the normal operation of the system. So a synchronization precision measurement method is designed based on synchronization error mapping. The real time synchronization error is get from monitoring changes of the corresponding node port status through FPGA to avoid the consumption of wireless communication resources. The experimental results show that, compared with the traditional inquiring measurement method, the method can gain more real-time measurement result, and more flexible and convenient use.
Key words : wireless sensor network;time synchronization;precision measurement;error mapping

    時間同步無線傳感器網(wǎng)絡(luò)的一項基礎(chǔ)支撐技術(shù)。在無線傳感器網(wǎng)絡(luò)的應(yīng)用中,如果沒有空間和時間信息,傳感器節(jié)點采集的數(shù)據(jù)是沒有任何意義的。準確的時間同步是實現(xiàn)傳感器網(wǎng)絡(luò)自身協(xié)議的運行、定位、多傳感器數(shù)據(jù)融合、移動目標的跟蹤以及基于睡眠/偵聽模式的節(jié)能機制等技術(shù)的基礎(chǔ)[1-2]。

    現(xiàn)有的時間同步方法(如RBS、TPSN、DTMS、FTSP等[3-5]),面臨的一個共同問題是如何準確地測量時間同步算法的同步性能,尤其是同步精度性能。盡管無線傳感器網(wǎng)絡(luò)的時間同步技術(shù)已經(jīng)由單跳網(wǎng)絡(luò)發(fā)展到多跳,但如何準確地測量節(jié)點間的同步誤差問題仍然沒有得到很好的解決。因此很多算法在實現(xiàn)過程中都主動避開這個問題,而采用軟件仿真的方法評估時間同步性能。但軟件仿真的方法對于晶體振蕩源、報文傳輸延遲等模型的建立難度較大,而且并不能真實反映實際運行過程中出現(xiàn)的其他問題對同步精度性能的影響[6]。
    本文提出了基于同步誤差映射的時間同步精度測試方法,該方法將固定時刻各節(jié)點間的時間差映射到物理時間的差異上,并通過節(jié)點內(nèi)輸出端口的狀態(tài)翻轉(zhuǎn)在用戶端獲得實時的時間同步誤差。實際實驗測試表明,該方法不僅簡單易行,而且能夠?qū)崟r、準確地獲得節(jié)點間的同步誤差。
1 相關(guān)研究
    參考文獻[3]提出了用無線報文觸發(fā)誤差的測量方法,并對RBS算法進行了測量。參考文獻[5]使用無線報文觸發(fā)的測量方法對FTSP進行了測試。這種方法會對無線節(jié)點程序的正常運行產(chǎn)生過多的干擾,并占用無線通信資源,測量的實時性與網(wǎng)絡(luò)規(guī)模成反比。參考文獻[6]提出了有線中斷信號觸發(fā)的誤差測量方法,并將觸發(fā)時間通過有線集中處理,盡管這種方法不依賴節(jié)點無線通信,但會受到節(jié)點的外部中斷響應(yīng)時間的影響。參考文獻[7]提出了建立時間同步仿真模型的方法,但這種方法只適用于特定的無線傳感器網(wǎng)絡(luò)節(jié)點,模型的普遍性不強。
2 同步精度測試原理
    無線傳感器網(wǎng)絡(luò)時間同步的精度算法研究、安全相關(guān)研究、能量有效相關(guān)研究等的最終目的都是獲得滿足用戶需求的穩(wěn)定的時間同步。因此,對同步誤差的準確實時測試是檢測時間同步算法實現(xiàn)效果的根本性手段。

    (1)時鐘偏移:在時刻t節(jié)點的時間偏移為t-T(t)。對于不同的節(jié)點A和節(jié)點B,在t時刻的時間偏移為:TA(t)-TB(t)。
    (2)同步誤差:同步誤差是時鐘偏移的絕對值。時鐘偏移的絕對值為絕對同步誤差,相對時鐘偏移的絕對值為相對同步誤差。
    因此,為了獲得節(jié)點間的同步誤差,必須在相同的時刻同時獲得各個節(jié)點的本地時間,而如何達到同時性恰恰是當前進行同步誤差精度測量的難點之一。
2.2 典型的同步誤差測量方法
    目前比較典型的同步誤差測試都是通過在固定時刻同時向無線節(jié)點發(fā)送觸發(fā)信號的方式進行同步誤差查詢。由于節(jié)點間時間很難在完全相同的時刻獲得并進行對比,因此測試不同節(jié)點間同步誤差需要第三方協(xié)助,并在固定時刻獲得同步時間的值進行對比[6]。圖1是常用的時間同步誤差測試原理圖。在物理時間t時刻,由第三方發(fā)起時間觸發(fā)信號(Trigger),并且在相同的時刻到達節(jié)點1和節(jié)點2。節(jié)點1和節(jié)點2分別記錄二者的時間T1(t)和T2(t),通過獲取T1(t)和T2(t)進行誤差運算完成t時刻的誤差值測定。

    采用第三方觸發(fā)的方式進行節(jié)點同步誤差測試主要有兩種方式,如圖2和圖3所示。通過串口或者無限的方式發(fā)送觸發(fā)信號,信號在有線或者無線的傳輸延遲極小而且信號同時并行傳輸,在誤差允許范圍內(nèi)可以認為觸發(fā)信號到達兩節(jié)點無時差。節(jié)點1和節(jié)點2記錄觸發(fā)信號到達時間并通過無線或有線方式最終將時間數(shù)據(jù)傳送到上位機,上位機通過對時間數(shù)據(jù)處理可以獲得兩個節(jié)點在t時刻的同步誤差。使用無線觸發(fā)的優(yōu)點是測試節(jié)點的規(guī)模不受上位機串口個數(shù)的影響,可以進行大規(guī)模同步精度測試,缺點是同步查詢過程需要消耗額外的無線鏈路資源,在鏈路資源相對緊張的網(wǎng)絡(luò)中無法實時獲得節(jié)點間的同步誤差數(shù)據(jù)。

2.3 基于誤差映射的時間同步誤差測試方法
    通過對上一節(jié)測試方法的分析可知,當前同步精度測試方法都是在固定時刻讀取不同節(jié)點的時間,從而獲得節(jié)點間的同步誤差,如圖4中的AB/CD部分。對于基準時間,有T=t,故圖中ACD為等腰直角三角形,可以得到AC=CD。如果能夠得到點A和點C之間的時間差值Δt,就可以獲得測試節(jié)點在t+Δt時刻的同步誤差ΔT′=Δt。這樣可以將同步誤差的測試轉(zhuǎn)換為對Δt的測量:在相同的邏輯時間T時刻對應(yīng)不同的物理時間的差值。與傳統(tǒng)方法不同,這里將t+Δt時刻的同步誤差映射到兩個節(jié)點邏輯時間分別到達T2時,二者在物理時間的差異,如圖4中的AC,也就是通過測試物理時間t和t+Δt時刻的差異反映測試節(jié)點在t+Δt時刻與基準時間的同步誤差。

    同步誤差的測試頻率取決于節(jié)點內(nèi)I/O變化的頻率,節(jié)點間可以進行較高頻率I/O端口操作從而獲得實時性較高的同步誤差采集。相對于無線觸發(fā)查詢方法,本文的方法不占用無線通信資源,對無線網(wǎng)絡(luò)的正常運行不產(chǎn)生影響,可以更準確、實時地反映時間同步的運行效果。
3 實驗平臺
    根據(jù)以上所述方法建立實驗平臺,測試了8路同步誤差數(shù)據(jù)采集,周期為20 ms,測得如圖6所示同步誤差曲線圖。如果需要長時間的歷史數(shù)據(jù)分析,則可以通過歷史記錄做進一步分析。通過同步誤差測試平臺可以對同步算法效果進行實時跟蹤分析,有利于提高算法設(shè)計效率。

    對目前應(yīng)用廣泛的FTSP算法進行測試,分別使用本文所述平臺和傳統(tǒng)的無線查詢方式測試,獲得圖7所示對比圖。查詢方式一般使用30 s查詢間隔(如參考文獻[5]中對5×12規(guī)模節(jié)點),而且占用無線通信資源,隨著規(guī)模的增大需要延長查詢時間,很難直觀反映同步誤差的實時變化,如圖7中菱形點相對較稀疏。而采用本文所述方法的測試平臺不占用無線通信資源,可以實現(xiàn)快速誤差采集。經(jīng)過測試可以在50 ms采集周期下工作而不影響網(wǎng)絡(luò)正常運行,為同步設(shè)計過程中實時監(jiān)測誤差變化提供有力工具。
    本文提出的基于誤差映射的測量方法將傳統(tǒng)的固定時刻的誤差映射到物理時刻的差值,并通過FPGA的高速采集功能獲得實時的同步誤差。在對典型時間同步協(xié)議的測試過程中顯示了其高精度和實時性的優(yōu)勢,具備了完全的工程實用性。
參考文獻
[1] 楊卓靜,孫宏志,任晨虹.無線傳感器網(wǎng)絡(luò)應(yīng)用技術(shù)綜述[J].中國科技信息,2010(13):127-129.
[2] 于海斌,曾鵬.智能無線傳感器網(wǎng)絡(luò)系統(tǒng)[M].北京:科學(xué)出版社,2006.
[3] ELSON J,GIROD L,ESTRIN D.Fine-grained network time synchronization using reference broadcasts[C].Proceedings of  the Fifth Symposium on Operating Systems Design and  Implementation(OSDI’02),New York,2002:147-163.
[4] RHEE I K,LEE J,KIM J,et al.Clock synchronization in  wireless sensor networks:an overview[J].Sensors,2009,9(1):56-85.
[5] MAROTI M,KUSY B,SIMON G,et al.The flooding time synchronization protocol[C].Proceedings of the 2nd international  conference on Embedded networked sensor systems,2004:39-49.
[6] 徐朝農(nóng),徐勇軍.無線傳感器網(wǎng)絡(luò)同步誤差測量方法[J].計算機工程,2011,37(5):115-117.
[7] Xu Chaonong,Zhao Lei,Xu Yongjun,et al.Simsync:a time  synchronization simulator for sensor networks[J].ACTA  Automatica Sinica,2006,32(6):1008-1014.
[8] SOMMER P,WATTENHOFER R.Gradient clock synchro nization in wireless sensor networks[C].In 2009 International Conference on Information Processing in Sensor Networks,2009:37-48.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。

相關(guān)內(nèi)容