楊玉景,黃藝文,李太華,代學(xué)武
(西南大學(xué) 電子信息工程學(xué)院,重慶 400715)
作為分布式系統(tǒng)的重要組成部分,時(shí)間的同步是對(duì)時(shí)間敏感的工業(yè)無線網(wǎng)絡(luò)的關(guān)鍵支撐技術(shù)。時(shí)間同步[1]是解決無線傳感器網(wǎng)絡(luò)系統(tǒng)可靠性和穩(wěn)定性難題的關(guān)鍵,是一個(gè)將所有節(jié)點(diǎn)各自不同的局部時(shí)間統(tǒng)一校準(zhǔn)的過程。作為一種全新的信息獲取和處理技術(shù),無線傳感器網(wǎng)絡(luò)[2]以其功耗低、成本低、分布式和自組織的特點(diǎn)帶來了一場(chǎng)信息感知的變革。其眾多應(yīng)用都依賴于時(shí)間同步,如TDMA調(diào)度[3]、數(shù)據(jù)融合[4]、面向波束成形的多節(jié)點(diǎn)協(xié)同技術(shù)[5]、基于TOF(time of flight)定位技術(shù)[6]等。因此,獲取高精度的時(shí)間同步,改善同步性能,是無線傳感器網(wǎng)絡(luò)相關(guān)領(lǐng)域的研究熱點(diǎn)和難點(diǎn)。IEEE 1588 精確時(shí)間同步協(xié)議(precision time synchronization protocol,PTP)[7],在一定條件下,其時(shí)間同步的精度可控制在微秒級(jí),且操作簡(jiǎn)單、對(duì)帶寬的要求相對(duì)較低,因此在同步精度和功耗上能夠較好地實(shí)現(xiàn)平衡,更適合應(yīng)用在通信帶寬及能量受限的無線傳感器網(wǎng)絡(luò)設(shè)備上[8]。
本研究在先前的工作中已將PTP協(xié)議應(yīng)用于無線傳感器網(wǎng)絡(luò),同時(shí)采用卡爾曼濾波器(Kalman filter,KF)進(jìn)行優(yōu)化,以提高PTP協(xié)議在無線傳感器網(wǎng)絡(luò)下的時(shí)間同步性能。工作中主要分析了在單跳環(huán)境下PTP時(shí)間同步精度與時(shí)鐘戳的不確定性和延遲抖動(dòng)之間的數(shù)量關(guān)系[9]。單跳仿真實(shí)驗(yàn)結(jié)果顯示:相對(duì)于無KF優(yōu)化的PTP協(xié)議,基于KF優(yōu)化的PTP協(xié)議在同步精度和穩(wěn)定性上均呈現(xiàn)明顯優(yōu)勢(shì)。在實(shí)際網(wǎng)絡(luò)中,從節(jié)省能源及易于部署的角度出發(fā),一般采用多跳網(wǎng)絡(luò)進(jìn)行通信。在多跳無線傳感器網(wǎng)絡(luò)[10]中,各節(jié)點(diǎn)既可以是數(shù)據(jù)的終端節(jié)點(diǎn),也可以成為網(wǎng)絡(luò)的路由節(jié)點(diǎn)。如何將PTP協(xié)議應(yīng)用于多跳無線傳感器網(wǎng)絡(luò)以提高時(shí)間同步的精度有突破性的實(shí)際意義[11]。因此本文重點(diǎn)研究如何在多跳無線傳感器網(wǎng)絡(luò)下實(shí)現(xiàn)高精度的時(shí)間同步。
本文嘗試通過構(gòu)建由5個(gè)節(jié)點(diǎn)組成的二跳同步網(wǎng)絡(luò),從動(dòng)力學(xué)角度出發(fā),突破傳統(tǒng)以通信協(xié)議為研究核心的模式,通過采用狀態(tài)空間模型來描述時(shí)間同步的過程,將理論分析與軟件仿真相結(jié)合,進(jìn)而利用均勻采樣和濾波技術(shù)來抑制觀測(cè)噪聲,以提高時(shí)間同步的精度,并應(yīng)用于無線傳感器網(wǎng)絡(luò)中,以驗(yàn)證基于KF優(yōu)化的精確時(shí)間同步協(xié)議在多跳無線傳感器網(wǎng)絡(luò)中的拓展性和適應(yīng)性。
PTP協(xié)議[7]是不同節(jié)點(diǎn)時(shí)鐘間的同步協(xié)議,其基本原理是:子節(jié)點(diǎn)通過與父節(jié)點(diǎn)[12]交換包含時(shí)間標(biāo)記信息的時(shí)間戳,計(jì)算出2級(jí)節(jié)點(diǎn)間的時(shí)鐘偏移θ,從而估計(jì)出父節(jié)點(diǎn)的時(shí)間,并調(diào)整子節(jié)點(diǎn)的本地時(shí)鐘使其與父節(jié)點(diǎn)的時(shí)鐘保持同步。PTP協(xié)議的時(shí)間戳交換過程如圖1所示。
圖1中t0和t1為一次同步中父時(shí)鐘與子時(shí)鐘的時(shí)間戳;t2和t3為緊接著的下一次延遲請(qǐng)求報(bào)文傳輸?shù)倪^程中,子時(shí)鐘與父時(shí)鐘的時(shí)間戳??紤]到兩時(shí)鐘間傳輸時(shí)延的不對(duì)等性,定義:
(1)
式(1)描述了時(shí)間同步協(xié)議中時(shí)間戳交換過程中父子時(shí)鐘標(biāo)記之間的關(guān)系。其中:k代表第k次的時(shí)間同步過程, dfs代表數(shù)據(jù)包從父時(shí)鐘到子時(shí)鐘的傳播時(shí)延,dsf代表數(shù)據(jù)包從子時(shí)鐘到父時(shí)鐘的傳播時(shí)延。
圖1 PTP協(xié)議時(shí)間戳交換過程Fig.1 Timing diagram of message exchange by PTP
將θ視為未知量,求解方程組(1),可得:
(2)
式(2)描述了父子時(shí)鐘的時(shí)鐘偏移如何從時(shí)間戳的信息中獲取的過程,是時(shí)鐘偏移的觀測(cè)方程。
式中:Δd是均值為0且方差為σd2/2的高斯隨機(jī)變量,描述了傳輸時(shí)延的不對(duì)等性。由于在嵌入式系統(tǒng)中存在著中斷處理延遲等造成的時(shí)間戳的不確定性,因此在父子節(jié)點(diǎn)時(shí)鐘的觀測(cè)值ti(i=0,1,2,3)中,同樣存在著由于時(shí)鐘值讀取帶來的誤差Δti(i=0,1,2,3)。其中Δt0和Δt3是父時(shí)鐘時(shí)間戳標(biāo)記的不確定性, Δt1和Δt2是子時(shí)鐘時(shí)間戳標(biāo)記的不確定性。由此θ的觀測(cè)方程為
θF[k]=[(t1[k]-t0[k])-(t3[k]-t2[k])]/2+vθF
(3)
式中:vθF是θ的觀測(cè)噪音,定義為
vθF[k]=Δt1+Δt2/2-Δt0+Δt3/2+Δd
由于時(shí)間延遲始終是個(gè)正數(shù),所以Δt1和Δt2的均值不為零,故vθF的均值也不為0,其值是Δt1和Δt2均值之和。假設(shè)在一個(gè)同步周期([k])內(nèi)vθF保持不變,則時(shí)鐘偏移率[k]可以從式(4)中計(jì)算出來,故[k]的觀測(cè)方程為
(4)
同理得αF[k]的觀測(cè)噪音的方差:
需要注意的是,由于αF[k]是從θ的觀測(cè)值中得到的,所以觀測(cè)噪音vθF與vαF耦合,其協(xié)方差為
假設(shè)通過父子節(jié)點(diǎn)的同步信息包交換所獲取的時(shí)間戳信息是絕對(duì)精確可靠的,則如上所述,計(jì)算所得的時(shí)鐘偏移(offset)和時(shí)鐘偏移率(skew)的觀測(cè)值可以直接用于矯正子節(jié)點(diǎn)的本地時(shí)鐘,以實(shí)現(xiàn)節(jié)點(diǎn)間的時(shí)間同步。實(shí)際上,由于在同步信息包交換過程中存在著很多不確定性的因素,獲取得到的時(shí)間信息通常是不精確、不可靠的。因此,需要通過濾波器對(duì)其進(jìn)行預(yù)處理。在已建立的同步協(xié)議模型的基礎(chǔ)上,再加以卡爾曼濾波器方程以實(shí)現(xiàn)遞歸估計(jì)器。
由式(3)和式(4)可以得到觀測(cè)方程:
(5)
將狀態(tài)轉(zhuǎn)移方程:
和觀測(cè)方程(5)寫成矩陣形式,以建立時(shí)鐘同步的狀態(tài)空間模型:
(6)
綜上,可用公式來描述卡爾曼濾波器的迭代算法過程,式(7)、(8)為預(yù)測(cè)過程式,式(9)、(10)、(11)為更新過程:
(7)
P(k|k-1)=AP(k-1)AT+R
(8)
K(k)=P(k|k-1)HT[HP(k|k-1)HT+S]-1
(9)
(10)
P(k)=[1-K(k)]P(k|k-1)
(11)
多跳同步原理如圖2所示。本實(shí)驗(yàn)中,為更好的模擬真實(shí)情形,構(gòu)造了由5個(gè)節(jié)點(diǎn)組成的二跳同步網(wǎng)絡(luò),以驗(yàn)證不同協(xié)議模式下的多跳同步性能。
在不同的觀測(cè)噪聲變化下,主要分析了父子時(shí)鐘之間時(shí)鐘偏移和時(shí)鐘偏移率的估計(jì)誤差平均值與標(biāo)準(zhǔn)差的變化趨勢(shì)。在如下的仿真實(shí)驗(yàn)中,時(shí)鐘模型(式(6))是用來仿真不精確時(shí)鐘,其最小步長(zhǎng)是10-6s,遠(yuǎn)小于時(shí)鐘同步周期ΔΤ(ΔΤ=0.1 s),ΔΤ同時(shí)也是KF進(jìn)行迭代算法的周期。觀測(cè)噪聲(σSTS,即子時(shí)鐘做時(shí)間標(biāo)記的不確定性)的變化區(qū)間為[10-8,10-4][13],反應(yīng)了不同時(shí)間標(biāo)記機(jī)制所引起的時(shí)延。當(dāng)σSTS較小時(shí)對(duì)應(yīng)了基于硬件的時(shí)間標(biāo)記,此情形下的offset主要受初始θ0和頻率偏移的影響;當(dāng)σSTS較大時(shí)則對(duì)應(yīng)于基于軟件的時(shí)間標(biāo)記。衡量時(shí)間同步的精確度,則是通過時(shí)鐘偏移的偏移估計(jì)誤差和時(shí)鐘扭曲率估計(jì)誤差來衡量,在實(shí)驗(yàn)中分別對(duì)應(yīng)于估計(jì)誤差的均值和估計(jì)誤差的方差。
圖2 多跳同步拓?fù)浣Y(jié)構(gòu)Fig.2 Multi-hop synchronization topology
兩跳同步誤差對(duì)比仿真實(shí)驗(yàn)方案如表1所示。
表1 兩跳同步仿真實(shí)驗(yàn)方案
圖3、圖4反映了隨觀測(cè)噪聲σSTS(即子節(jié)點(diǎn)時(shí)鐘標(biāo)記不確定性的標(biāo)準(zhǔn)差)的變化,時(shí)鐘偏移和時(shí)鐘偏移率的估計(jì)誤差平均值,在4種方案下的變化趨勢(shì)。
圖3 時(shí)鐘偏移估計(jì)誤差的平均值 Fig.3 Means of clock offset estimation errors
由圖3可知,隨σSTS的增加,4種方案下的時(shí)鐘偏移估計(jì)誤差的均值變化均呈增加趨勢(shì)。但基于KF優(yōu)化的PTP算法的均值明顯小于無KF優(yōu)化的PTP算法。無KF優(yōu)化的PTP算法,二跳子節(jié)點(diǎn)中offset的均值明顯大于一跳,且同步誤差的傳遞性較明顯。基于KF優(yōu)化的PTP算法,二跳子節(jié)點(diǎn)中offset均值與一跳相差不大,且在一跳的均值上下呈現(xiàn)細(xì)微擺動(dòng),故其同步誤差的傳遞性不明顯。
圖4 時(shí)鐘偏移率估計(jì)誤差的平均值Fig.4 Means of clock skew estimation errors
由圖4可知,隨σSTS的增加,在無KF優(yōu)化的PTP算法下子時(shí)鐘偏移率估計(jì)誤差的均值變化呈顯著增大趨勢(shì),但在KF優(yōu)化的PTP算法下,則表現(xiàn)出相對(duì)穩(wěn)定的趨勢(shì),其值明顯小于無KF優(yōu)化的PTP算法。在無KF優(yōu)化的PTP算法下,其二跳子節(jié)點(diǎn)中skew的均值大于一跳子節(jié)點(diǎn)的值,故同步估計(jì)誤差的傳遞性較明顯;基于KF優(yōu)化的PTP算法,其二跳子節(jié)點(diǎn)中skew的均值略大于一跳子節(jié)點(diǎn)的值,故其估計(jì)誤差的傳遞性不明顯。
圖5、圖6反應(yīng)了隨觀測(cè)噪聲(即σSTS的變化,時(shí)鐘偏移和時(shí)鐘偏移率同步估計(jì)誤差的標(biāo)準(zhǔn)差在4種方案下的變化趨勢(shì)。
圖5 時(shí)鐘偏移估計(jì)誤差的標(biāo)準(zhǔn)差Fig.5 Standard deviation of clock offset estimation errors
由圖5可知,隨σSTS的增加,4種方案下的時(shí)鐘偏移估計(jì)誤差的標(biāo)準(zhǔn)差均呈增加趨勢(shì),但基于KF優(yōu)化的PTP算法的值明顯小于無KF優(yōu)化的PTP算法。無KF優(yōu)化的PTP算法,二跳子節(jié)點(diǎn)中offset的標(biāo)準(zhǔn)差大于一跳,故其同步估計(jì)誤差的傳遞性較明顯?;贙F優(yōu)化的PTP算法,二跳子節(jié)點(diǎn)中offset的標(biāo)準(zhǔn)差與一跳相差不大,故其同步估計(jì)誤差的傳遞性不明顯。
圖6 時(shí)鐘偏移率估計(jì)誤差的標(biāo)準(zhǔn)差Fig.6 Standard deviation of clock skew estimation errors
由圖6可知,隨σSTS的增加,時(shí)鐘偏移率估計(jì)誤差標(biāo)準(zhǔn)差在無KF優(yōu)化下呈明顯增加趨勢(shì)。但在KF優(yōu)化的PTP算法下,則呈相對(duì)穩(wěn)定趨勢(shì),明顯小于無KF優(yōu)化的PTP 算法。無KF優(yōu)化的PTP算法,二跳子節(jié)點(diǎn)中skew的標(biāo)準(zhǔn)差大于一跳同步子節(jié)點(diǎn)的值,且同步估計(jì)誤差的傳遞性較明顯;基于KF優(yōu)化的PTP算法,二跳子節(jié)點(diǎn)中skew的標(biāo)準(zhǔn)差略大于對(duì)應(yīng)一跳的值,故其同步估計(jì)誤差的傳遞性不明顯。
上述實(shí)驗(yàn)結(jié)果表明:在4種方案下,子節(jié)點(diǎn)的時(shí)鐘偏移和時(shí)鐘偏移率估計(jì)誤差的均值和標(biāo)準(zhǔn)差的變化趨勢(shì)反映了不同協(xié)議模式下的同步精度和穩(wěn)定性的變化規(guī)律[14]?;诳柭鼮V波器(KF)優(yōu)化的PTP算法,其性能在精度和穩(wěn)定性上均優(yōu)于無KF優(yōu)化的PTP算法,且在多跳同步中性能更優(yōu)。
在多跳環(huán)境中,基于KF優(yōu)化的PTP算法的時(shí)鐘偏移和時(shí)鐘偏移率的估計(jì)誤差在精度和穩(wěn)定性上具有明顯優(yōu)勢(shì),能表現(xiàn)出較好的同步性能。當(dāng)觀測(cè)噪聲較小(即σSTS時(shí),基于KF優(yōu)化的PTP算法在單跳網(wǎng)絡(luò)中的同步優(yōu)勢(shì)不明顯,而在多跳網(wǎng)絡(luò)環(huán)境中,時(shí)間同步優(yōu)勢(shì)明顯;隨觀測(cè)噪聲(即σSTS的逐步增大,基于KF優(yōu)化的PTP算法在單跳和多跳同步中的優(yōu)勢(shì)均顯著。由此可知,基于KF優(yōu)化的PTP算法在觀測(cè)噪聲較大或同步跳數(shù)較多的無線傳感器網(wǎng)絡(luò)中能表現(xiàn)出良好的同步性能。由此說明,卡爾曼濾波器在同步過程中通過濾除同步噪聲的干擾,抑制同步誤差的傳遞,從而進(jìn)一步有利于同步網(wǎng)絡(luò)的擴(kuò)展。
通過對(duì)基于KF優(yōu)化的PTP時(shí)間同步算法進(jìn)行理論的分析、建模和仿真,并與單跳仿真結(jié)果對(duì)比分析可以得出如下實(shí)驗(yàn)結(jié)論:在多跳同步網(wǎng)絡(luò)中,基于卡爾曼濾波器優(yōu)化的精確時(shí)間同步協(xié)議,同步誤差控制在微秒級(jí)、誤差傳遞性較小且具有較好的穩(wěn)定性,表現(xiàn)出優(yōu)異的同步性能及良好的適應(yīng)性并為在真實(shí)物理環(huán)境下配置無線傳感器網(wǎng)絡(luò)的相關(guān)參數(shù)提供了合理參考。
參考文獻(xiàn):
[1]SUNDARARAMAN B, BUY U, KSHEMKALYANI A D. Clock synchronization for wireless sensor networks: a survey [J]. Ad Hoc Networks, 2005, 3(3): 281-323.
[2]AKYILDIZ I F, SU W, SANKARASUBRAMANIAM Y, et al. Wireless sensor networks: a survey[J]. Computer Networks, 2002, 38 (4): 393-422.
[3]WEI Zhu. TDMA frame synchronization of mobile stations using a radio clock signal for short range communications[C]//Proceedings of the 1994 IEEE 44th Vehicular Technology Conference. 1994, 3: 1878-1882.
[4]BROKMAN G, MARCH B, ROMHILD D, et al. Integrated multi-sensors for indusial humidity measurement[C]//Proceedings of the IEEE International Conference on Multisensor Fusion and Integration for Intelligent Systems. [S.l.], 2001: 201-203.
[5]MUDUMBAI R, BARRIAC G, MADHOW U. On the feasibility of distributed beamforming in wireless networks[J]. IEEE Transactions on Wireless Communications, 2007, 6(5): 1754-1763.
[6]CAPKUN S, CAGALJ M, SRIVASTAVA M. Secure localization with hidden and mobile base stations[C]//Proceedings of 25th IEEE International Conference on Computer Communications. Barcelona, Spain, 2006: 1-10.
[7]EIDSON J C, FISCHER M, WHITE J. IEEE 1588 standard for a precision clock synchronization protocol for networked measurement and control systems[S]// IEC 61588(E):2004—IEEE Std. 1588(E), 2002.
[8]Karaki J N, Mustafa R , Kamal A E. Data aggregation and routing in Wireless Sensor Networks: Optimal and heuristic algorithms[J]. Computer Networks, 2009, 53(7): 945-960.
[9]HAMITON B R, MA X, ZHAO Q, et al. Aces: adaptive clock estimation and synchronization using Kalman filtering[C]//Proc IEEE ISPCS. Ann Arbor, USA, 2008: 127-130.
[10]袁曉光,楊萬海,史林. 多跳無線傳感器網(wǎng)絡(luò)決策融合[J].系統(tǒng)工程與電子技術(shù), 2009, 31(4): 976-981.
YUAN Xiaoguang, YANG Wanhai, SHI Lin. Decision fusion in multi-hop wireless sensor networks[J]. Systems Engineering and Electronics, 2009, 31(4): 976-981.
[11]葉玲,李太華,代學(xué)武.無線傳感器網(wǎng)網(wǎng)絡(luò)環(huán)境下基于卡爾曼濾波的PTP協(xié)議[J].智能系統(tǒng)學(xué)報(bào), 2012, 7(6): 518-524.
YE Ling, LI Taihua, DAI Xuewu. Kalman filtering for precision time synchronization in wireless sensor networks[J]. CAAI Transactions on Intelligent Systems, 2012, 7(6): 518-524.
[12]ZENG Y, HU B, LIU S. Vector Kalman filter using multiple parents for time synchronization in multi-hop sensor networks[C]//Proc of the IEEE SECON. San Francisco, USA, 2008: 413-421.
[13]BARENDT N, CORRELL K, BARNICKY M. Servo design considerations for software-only implementations of precision time protocol[C]//ISPCS. Zurich, Switzerland, 2005: 10-12.
[14]MILLS D L. Internet time synchronization: the network time protocol[M]. IEEE Computer Society Press, 1994: 25-36.