寸天睿
(楚雄師范學院信息科學與技術(shù)學院,云南 楚雄 675000)
?
基于卡爾曼濾波的TDM網(wǎng)絡時鐘同步方法研究*
寸天睿
(楚雄師范學院信息科學與技術(shù)學院,云南 楚雄 675000)
網(wǎng)絡時鐘同步是TDM網(wǎng)絡中必須要考慮的關鍵問題,其中采用IEEE1588時鐘同步協(xié)議的軟件同步方法在高精度同步場合應用廣泛。如果時鐘同步過程中鏈路不對稱會引入時間數(shù)據(jù)偏差問題,采用同步補償?shù)姆椒◤囊欢ǔ潭壬细倪M了時間同步精度,但該類方法沒有考慮環(huán)境噪聲的問題,容易造成TDM網(wǎng)絡不穩(wěn)定。本文提出一種基于卡爾曼濾波的TDM網(wǎng)絡時間間接補償方法,對時鐘同步獲取的信息先進行卡爾曼濾波降噪處理,然后再通過頻率調(diào)整進行時間間接補償,在提高同步精度的同時,提升了TDM網(wǎng)絡的穩(wěn)定性。
TDM網(wǎng)絡;卡爾曼濾波;時鐘同步
在時分復用(Time Division Multiplexing, TDM)的網(wǎng)絡中必須要考慮的一個關鍵問題就是網(wǎng)絡時間同步。在TDM網(wǎng)絡中通常每個通信節(jié)點都包含一個時鐘,各個通信節(jié)點按照時間順序有序的向網(wǎng)絡中發(fā)送數(shù)據(jù),降低時鐘同步誤差是維持整個網(wǎng)絡穩(wěn)定運行的關鍵。目前時鐘同步的常用方案有使用時鐘同步協(xié)議進行軟件方式同步和硬件方式同步兩種,其中采用IEEE1588時鐘同步協(xié)議的軟件同步方法在高精度同步場合應用很廣泛,如無線傳感器中網(wǎng)絡的時鐘同步[1],以太網(wǎng)中的時鐘同步[2]和城域網(wǎng)中的時鐘同步[3]等。但是,由于IEEE1588協(xié)議本身并沒有考慮通信鏈路噪聲,鏈路對稱性問題和時間戳標記誤差對時間數(shù)據(jù)帶來的影響,因此需要對時鐘進行補償調(diào)整。
針對時鐘同步過程中鏈路不對稱引入的時間數(shù)據(jù)偏差問題,文獻[4]和文獻[5]通過修改協(xié)議中計算時間偏差的方式來提高同步精度;針對時間戳標記誤差,文獻[6]和文獻[7]通過設計高速硬件電路來減少由軟件執(zhí)行引入的誤差。這些方式從一定程度上改進了同步精度,但沒有考慮環(huán)境噪聲的干擾。針對環(huán)境噪聲的問題,文獻[8]引入卡爾曼濾波器對接收到的時鐘偏差進行濾波預處理從而提高時間同步數(shù)據(jù)精度,文獻[9]在文獻[8]的基礎上使用卡爾曼濾波,同時對時鐘偏差和頻率數(shù)據(jù)進行濾波處理,大大提高了同步精度。然而以上的方法采用的都是時鐘偏差直接補償?shù)姆绞?,這種補償方式在時分復用的控制網(wǎng)絡中會帶來時間補償后的突變,造成系統(tǒng)運行不穩(wěn)定[10,11]。因此如何對時鐘同步過程進行數(shù)據(jù)濾波降噪處理和合理的補償是生產(chǎn)實際中TDM網(wǎng)絡能否穩(wěn)定運行的關鍵之一。
本文提出一種基于卡爾曼濾波的頻率間接補償方法。對同步協(xié)議獲取的時間偏差采用卡爾曼濾波提高偏差精度然后對計時時鐘管理單元的計時頻率進行調(diào)整,達到間接補償時間偏差的目的,提高時鐘同步的精度和系統(tǒng)的穩(wěn)定性。本文研究首先對IEEE1588時鐘同步模型及傳統(tǒng)的直接同步補償方式進行說明并闡述存在的問題;然后對基于卡爾曼濾波的頻率間接補償進行研究;再次通過仿真分析證明本文提出方法的有效性;最后對全文所做的工作進行小結(jié)。
2.1 TDM時鐘同步模型和誤差分類
時鐘同步誤差可歸為三類,時間偏差,頻率偏差和頻率漂移[12],時鐘時間偏移示意圖如圖1。將從時鐘在時刻Tn讀取的時間值記為C(t),將在時刻n的默認準確參考時間值記為T(n)=t。并定義以下誤差表示方式,如無特殊說明,后續(xù)將沿用這種表示方式:
(1)時間偏差:時鐘時間與標準參考時間的偏差,令θ(t)表示時間偏差則有:
θ(t)=C(t)-t
(1)
(2)頻偏率:通常采用頻偏率來衡量頻率偏移程度[15]。則頻偏率γ計算如式(2),其中fT為標準頻率值,fi為從節(jié)點時鐘頻率值。
(2)
(3)頻率漂移:由所處環(huán)境的改變而造成的長期的頻率改變。本文采取的補償機制在每個短時間周期內(nèi)進行,所以相對來說長時間發(fā)生的頻率漂移可視為常量,本文不做討論。
圖1 網(wǎng)絡時鐘時間偏移示意圖
為分析方便,本文引入狀態(tài)變量模型對節(jié)點時鐘進行分析和描述,狀態(tài)變量模型在很多先前的研究中被采用,如參考文獻[9]、[13]中采用狀態(tài)變量模型對時鐘進行建模。時鐘補償主要針對時間和頻率這兩個變量,文獻[14]采用兩個狀態(tài)變量的模型進行分析,這種模型也是嵌入式系統(tǒng)時鐘管理模塊分析中常采用的數(shù)學模型,本文也采用這種模型進行分析。時鐘管理模塊的輸出電壓由式(3)給定,其中fT是編程設定的時鐘計數(shù)頻率,Φ0是初始相位,Φ(t)是影響時間精度的隨機過程,為不失一般性可設Φ(t)期望E[Φ(t)]=Φ0。
(3)
由于相位噪聲對基于IEEE1588協(xié)議的時鐘同步方法沒有影響[15],從而得到時間偏差的離散遞歸表達式(4),其中ΔT=Tn-Tn-1。
θ(n+1)=θ(n)+γ(n)ΔT
(4)
θ(n+1)=θ(n)+γ(n)ΔT+ωθ(n)
(5)
γ(n+1)=γ(n)+ωγ(n)
(6)
2.2直接時差補償機制
直接時差補償機制在計算出時鐘偏差后直接對從時鐘時間進行加減補償,其補償流程如圖2示。這種補償方式是IEEE1588定義的補償方案,該方案用主從時鐘節(jié)點交換數(shù)據(jù)報文計算出的時鐘偏差值對從節(jié)點時鐘值進行直接加減。在文獻[11]等研究中采用通過增加冗余節(jié)點,設計硬件時戳發(fā)生器等方案對計算出的時鐘偏差進行直接補償。近年來由于卡爾曼濾波算法在各個領域的廣泛應用,在[9]、[10]等文獻中采用卡爾曼濾波對計算出的時間偏差先濾波,進行偏差準確性評估和預測后再直接補償,通過仿真驗證效果良好。
圖2 網(wǎng)絡時鐘同步直接時差補償流程圖
但是,在分布式網(wǎng)絡控制系統(tǒng)中,直接補償將會使從節(jié)點時鐘產(chǎn)生突變和較大的波動,出現(xiàn)“時間快進”和“時間逆流”等不穩(wěn)定現(xiàn)象[10][11]。文獻[10]提出通過IEEE1588協(xié)議得出時間偏差后對時鐘頻率進行補償?shù)臐u進補償方法,但是沒有考慮對獲得的時間偏差進行降低噪聲的處理,對漸進式補償只提出展望沒有具體實現(xiàn)。在實際網(wǎng)絡控制系統(tǒng)中,由于各個受控器件嚴格按照時序響應命令并采取相應調(diào)整行為,而時鐘經(jīng)過直接補償產(chǎn)生突變將會造成系統(tǒng)不穩(wěn)定。
圖3 時鐘直接補償示意圖
3.1卡爾曼濾波的特性
目前,很多專家學者對卡爾曼濾波技術(shù)在時鐘同步補償中的應用進行了研究。如在文獻[16]中對卡爾曼濾波在全球定位系統(tǒng)時鐘同步中的補償進行了研究。在文獻[17]中對卡爾曼濾波技術(shù)在無線網(wǎng)絡時鐘同步中進行頻率跟隨進行了研究,在文獻[18]中對將卡爾曼濾波用于網(wǎng)絡時間協(xié)議中進行數(shù)據(jù)預處理提高系統(tǒng)穩(wěn)定性進行了研究。
通過對已有文獻的研究,可以歸納得出卡爾曼濾波的三個重要特性:
(1) 當被跟隨信號的方差呈高斯分布時卡爾曼濾波是最優(yōu)估計方法。在文獻[19]中已證明由于時鐘變動疊加導致的偏差近似服從高斯分布。
(2) 卡爾曼濾波增益決定了濾波器的帶寬。可以通過合理的選擇濾波參數(shù),在測量噪聲的同時不改變?yōu)V波延遲。
(3) 卡爾曼濾波算法可以通過軟件和硬件方式實現(xiàn)且實現(xiàn)容易。
圖4 卡爾曼濾波頻率間接時差補償流程圖
基于以上三點特性,下節(jié)將使用卡爾曼濾波方法對時間偏差進行更精確的估計和補償。
3.2卡爾曼濾波頻率間接時鐘補償機制
對時間誤差的直接補償會使時間突變造成TDM網(wǎng)絡系統(tǒng)運行不穩(wěn)定,如上節(jié)所述,由式(5)時間偏差和頻率偏差的關系可知,對時間偏差的調(diào)節(jié)也可以通過頻偏比進行調(diào)節(jié),綜合頻偏和時間偏差值對從節(jié)點的記時時鐘管理單元計數(shù)頻率進行調(diào)節(jié),即當從節(jié)點時鐘慢于主時鐘時,加快從節(jié)點計數(shù)頻率,使其時鐘頻率加快,在下一個同步時鐘周期到達時盡量縮小時間偏差;當從節(jié)點時鐘快于主時鐘時,降低從節(jié)點時鐘計時器計數(shù)頻率,使其計數(shù)頻率減慢,等待主時鐘節(jié)點跟近。考慮到時鐘偏差的精確度對整個補償過程至關重要,所以下文提出一種采用卡爾曼濾波估計的間接時差補償方法,對得到的時差和頻偏先進行卡爾曼濾波提高數(shù)據(jù)準確度,然后對時鐘管理模塊計數(shù)頻率進行間接補償調(diào)整,調(diào)整結(jié)束后的值再返回到系統(tǒng)中進行新一輪的卡爾曼濾波和調(diào)整,整個補償機制示意圖如圖4所示。
為了達到主從時鐘同步,在時刻n將時差校正uθ(n)和頻偏率校正uγ(n)輸入式(5)和式(6)所建立的狀態(tài)時鐘模型可得式(7)和式(8)。
θ(n+1)=θ(n)-uθ(n)+[γ(n)-uγ(n)]·ΔT+ωθ(n)
(7)
γ(n+1)=γ(n)-uγ(n)+v(n)
(8)
由于有干擾的存在,時差和頻偏信息存在誤差,本文采用卡爾曼濾波方法對頻率補償進行濾波預處理。將上述兩式合并寫成矩陣形式如式(9):
x(n)=Ax(n-1)+Bu(n-1)+ω(n-1)
(9)
其中:u(n)=[uθ(n),uγ(n)]T是輸入向量,x(n)=[θ(n) γ(n)]T是狀態(tài)向量,矩陣A和B分別為式(10)和(11),ΔT為IEEE1588同步報文Sync的報文間隔:
(10)
(11)
定義θM(n)為時刻n時的測量時間偏差,如式(12)。其中γM(n)是時刻n時的測量頻偏率。則有:
(12)
由此,可以定義卡爾曼濾波測量方程如式(13):
z(n)=Hx(n)+v(n)
(13)
定義了上述方程后,就可以得出卡爾曼濾波的五個方程[20],這五個方程在很多介紹卡爾曼濾波的教材中都有講述。
(14)
P(n|n-1)=AP(n-1)AT+Q
(15)
卡爾曼濾波增益為式(16):
K(n)=P(n|n-1)[P(n|n-1)+R]-1
(16)
卡爾曼濾波校正過程方程可以定義為式(17)和式(18):
(17)
P(n)=[I-K(n)]P(n|n-1)
(18)
其中R是二階測量噪聲協(xié)方差矩陣,根據(jù)θM(n)和 γM(n)關系有:
(19)
(20)
通過時鐘同步協(xié)議進行同步報文交換,得到時刻n時候從時鐘與主時鐘的時間偏差θM(n),則如果期望從時鐘在主時鐘經(jīng)歷固定周期△T到達n+1時達到同步,則從時鐘時鐘管理單元計時頻率fs按式(21)設置為:
(21)
所以從時鐘節(jié)點的頻率補償值Δfs設置為式(22):
(22)
將式(15)帶入得到化簡后的頻率補償式(23)。
(23)
θM(n)通過時間同步交換同步報文獲得的時間戳計算得到,得到θM(n)后計算得出頻偏比的測量值γM(n),經(jīng)過卡爾曼濾波輸出的評估值γ(n)作為調(diào)整參考,根據(jù)式(23)對從節(jié)點時鐘進行頻率調(diào)整,從而減少時間偏差,由于環(huán)境中溫度,電磁干擾等噪聲的存在,頻率的調(diào)整不能一步到位,整個頻率調(diào)整過程循環(huán)往復,逐漸趨向主時鐘頻率,從而到達間接補償時間偏差的目的。
(1)時鐘偏差直接補償與時鐘偏差頻率補償
圖5 直接補償與頻率補償?shù)臅r鐘偏差
對時鐘采取時鐘偏差直接補償和時鐘偏差頻率間接補償后的對比如圖5示。在仿真開始的前200ms由于沒有進行時鐘補償,主從時鐘偏差值越來越大。從200ms開始,每隔100ms分別對時鐘偏差進行直接補償和頻率補償,整個仿真過程中加入了噪聲干擾,因此時鐘偏差值存在小幅抖動。
如圖5所示直接時鐘補償在每次補償時由于直接調(diào)整從時鐘的時間值,造成時間突變,同時由于沒有調(diào)整時鐘頻率,主從時鐘偏差在每次補償結(jié)束逐漸拉大。頻率補償方式通過調(diào)整時鐘計數(shù)頻率的方式進行補償。每次補償后,從時鐘時間值連續(xù)變化,主從時鐘時間偏差漸近的縮小,每一個補償周期的時鐘偏差與上一個補償周期的時間偏差范圍相比越來越小。
對比兩種補償方式可以看出,頻率補償方式雖然沒有直接補償時差調(diào)整速度快,但在400ms時,經(jīng)過4次補償后,時鐘偏差變化范圍已經(jīng)小于0.2ms,而直接補償在400ms后的時鐘偏差變化范圍還在1.8ms上下浮動。因此頻率補償?shù)臅r鐘同步的精度得到了很大提高。同時由于頻率補償?shù)臅r間變化過程是連續(xù)的,能保證存在時間觸發(fā)事件的通信網(wǎng)絡穩(wěn)定運行。
(2)無卡爾曼濾波時鐘頻率補償與卡爾曼濾波時鐘頻率補償
仿真對比了加入卡爾曼濾波和沒有加入卡爾曼濾波的頻率補償方式的時鐘偏差,由于在整個過程中加入了噪聲干擾,時鐘偏差值存在小幅抖動,如圖6所示。仿真前200ms由于沒有進行時鐘補償,主從時鐘偏差越來越大。從200ms開始每隔100ms對時鐘偏差值分別進行卡爾曼濾波處理后的頻率補償和不經(jīng)過卡爾曼濾波的頻率補償,兩種情況都能使從時鐘以漸近的方式縮小與主時鐘的時鐘偏差。但引入卡爾曼濾波對時鐘偏差值進行降噪處理后,時鐘差值的精度得到了提高,使得補償結(jié)果相比沒有引入卡爾曼濾波更為精確,整個時鐘偏差的變化趨勢更為平滑。
圖6 有無爾曼濾波的頻率補償時鐘偏差
本文對TDM網(wǎng)絡中的精確時鐘同步技術(shù)做了深入的研究。分析了直接時鐘補償對TDM網(wǎng)絡運行帶來不穩(wěn)定的原因并提出一種采用卡爾曼濾波的時鐘頻率間接補償方法。該方法通過對同步獲取的信息進行濾波處理降低噪聲干擾,提高了時差數(shù)據(jù)的準確性,然后對時鐘計數(shù)頻率進行補償,通過這種方式間接改進時鐘偏差,在提高時鐘同步準確度的同時保證了系統(tǒng)的穩(wěn)定性。
[1] Sung H., Kyeong P., Doo-Seop E.. Energy-efficient and rapid time synchronization for wireless sensor networks[J]. IEEE Transactions on Consumer Electronics, 2010, 56(04): 2258―2266.
[2] Chenglong Q., Feng J.. Research and design of industrial Ethernet switch based on IEEE1588 standard[A]. IEEE International Conference on Advanced Power System Automation and Protection[C]. 2011.
[3] Alcatel L., Murray H.. A synchronization algorithm for packet[J]. Communications. IEEE Transactions on Communications, 2011,59(04):1142―1153.
[4]Shuai L.. An enhanced IEEE 1588 time synchronization for asymmetric communication link in packet transport network[C]. IEEE Communication Letters, 2010, 14(08): 764―766.
[5]Simanic N.. Compensation of asymmetrical latency for ethernet clock synchronization[A]. International IEEE Symposium on Precision Clock Synchronization for Measurement Control and Communication (ISPCS)[C], 2011.
[6]Wenjun H.. Hardware-based solution of precise time synchronization for Networked Control System[A]. IEEE International Conference on Electronics, Communications and Control[C], 2011.
[7]Yang K.. A new design for precision clock synchronization based on FPGA[A]. 16th IEEE-NPSS Conference on Real Time[C], 2009.
[8]Bletsas L.. Evaluation of Kalman filtering for network time keeping[J]. IEEE Transactions on Ultrasonics, Ferroelectrics and Frequency Control, 2005, 52(09): 1452―1460.
[9]Giorgi G.. Performance analysis of kalman-filter-based clock synchronization in IEEE 1588 networks[J]. IEEE Transactions on Instrumentation and Measurement, 2011, 60(08):2902―2909.
[10]張建斌. 基于工業(yè)以太網(wǎng)的列車通信網(wǎng)絡研究[D]. 北京: 北京交通大學, 2011.
[11]Weidong Y.. IEEE1588 clock servo algorithm[A]. 9th International Conference on Electronic Measurement & Instruments[C], 2009.
[12] Aziz M.. The use of ethernet for single on-board train network[A]. IEEE International Conference on Networking, Sensing and Control[C], 2008.
[13] Scheiterer L.. Synchronization performance of the precision time protocol in industrial automation networks[J]. IEEE Transactions on Instrumentation and Measurement, 2009, 58(06): 1849―1857.
[14] Fuchs E.. The future of silicon photonics: not so fast insights from 100G ethernet LAN transceivers[J]. IEEE Journal of Lightwave Technology, 2011, 29(15): 2319―2326.
[15]喬英忍. 世界鐵路動車組的技術(shù)進步水平和展望[J]. 國外鐵道車輛, 2007, 44(03): 7―8.
[16] Zuohu L.. High Precision Clock Synchronization and Control Based on GPS[A]. IEEE International Conference on Electrical and Control Engineering[C], 2010.
[17] Abubakari L., Hedayat A.. IEEE 1588 style synchronization over wireless link[A]. IEEE International Symposium on Precision Clock Synchronization for Measurement, Control and Communication[C], 2008.
[18] Aziz M.. The use of ethernet for single on-board train network[A]. IEEE International Conference on Networking, Sensing and Control[C], 2008.
[19]Ferrari P.A distributed instrument for performance andysis of real-time ethernet networks[J]. IEEE Transactions on Industrial Informatics, 2008,4(01):16―25.
[20]Welch G., Bishop G.. An introduction to the kalman filter[Z]. Department of Computer Science, University of North Carolina, July 2006.
(責任編輯 劉洪基)Research on the Clock Synchronization Method of TDM Network Based on Kalman Filter
CUN Tianrui
(SchoolofInformationScience&Technology,ChuxiongNormalUniversity,Chuxiong, 675000,YunnanProvince)
The important issue of the TDM network is precise time synchronization. The software synchronization method using the IEEE1588 clock synchronization protocol is widely used in the high precision synchronization.If the link of the time synchronization process is asymmetrical, it will introduce time data deviation. Using synchronous compensation method will improve time accuracy to a certain extent, but this method does not consider the problem of environmental noise which is easy to cause the network system instability. This paper presents a method of TDM network clock indirect compensation based on Kalman filter. The information of the time synchronization is firstly denoised by Kalman filter, then clock is adjusted by the frequency indirectly to compensate the time. This method can both improve the time synchronous accuracy and enhance the stability of TDM network.?
TDM network; Kalman filter; time synchronization
2016 - 05 - 26
寸天睿(1987―),男,碩士,助教,主要研究方向:網(wǎng)絡計算。
TP393.01
A
1671 - 7406(2016)09 - 0057 - 08