IEEE1588和高精度時間同步的方法
*時鐘的分級(clock_stratum)
時鐘的級數代表時鐘的質量,這個分級是有定義的,每個時鐘都應標上它的級別,在最佳主時鐘算法中它作為時鐘質量的標志進行計算。時鐘分級的定義如表1所示:

*時鐘標識符(Clock identifier)
時鐘標識符指示時鐘內在的和可期待的絕對精度及起始時間,時鐘標識符值也是表示時鐘性能的參數,也是在最佳主時鐘算法中要參與運算的參數。時鐘標識符的定義如下表所示:(表2見書)
*時鐘變量(clock_variance)
在1588協議中時鐘變量是不斷實時測量和計算的值,用于表征時鐘當時的品質。這個值是通過Allan均方差公式得到,Allan方差式原用于振蕩器頻率的統計誤差計算,這里用于表示時間的統計誤差。(公式見書)
s2PTP是多次測量的均方差值,這里xk,xk+1,xk+2是在時間tk,tk+ t,tk+2 t 時刻所作的時間殘差測量,t是測量的間隔時間,N是測量的次數。從公式可看出這是統計方差式,公式已排除任何穩定的對稱的誤差,時鐘的漂移并不會影響 方差s2PTP,時鐘的不規則跳動直接影響s2PTP值。
s2PTP值再經過取對數,乘以常數和滯環處理才成為運算中使用的時鐘變量clock_variance。
*最佳主時鐘算法概要
最佳時鐘算法(Best Master Clock Algorithm-簡稱BMC算法)由兩部分組成:一是數據組比較算法,比較兩組數據的優劣,可能一組是代表本地時鐘的缺省特性的數據,一組代表從某端口接收的同步報文所包含的信息。這個比較算法一是要對各種數據組進行比較。二是根據數據組比較結果計算每個端口的推薦狀態(主站、從站、待機、未校正、只聽、禁止、初始化、故障狀態)。
BMC算法是在每個時鐘的每個端口本地運行的,它規定數據比較的順序和判據,所使用的數據除上面提到的時鐘級,時鐘標識符,時鐘變量外還有路徑長度、是不是邊界時鐘等條件。通過比較可得到每個時鐘的每個端口當時應取的狀態。
如對一個典型的具有N個端口的時鐘C0的BMC算法:
-對每一個端口r,比較從連接到這個端口通信路徑上的其它時鐘的端口接收的合格的Sync報文的數據組,通過數據組比較算法決定這個端口的最佳報文Erbest。
-對C0的N個端口比較各端口的Erbest,決定時鐘C0的最佳報文Ebest。
-對C0的N個端口的每一個,根據Ebest,Erbest和缺省數據組D0,用BMC狀態決定算法和應用端口的狀態機決定端口的狀態。
對于PTP子域中每個時鐘,每一個端口都運行BMC算法,這個運算是連續不斷的,因此能適應時鐘和端口的變化。并且1588的BMC算法是分散在每個時鐘,每個端口,是獨立運行的,因此更容易實現。
7 結束語
在當今經濟技術高度發展,系統規模空前巨大,分散控制和網絡化的時代,分散時鐘的同步越加重要,自2002年1588協議出現后,特別是它可能達到的高精度和較低的開銷為人們實現這個要求提供了現實可行的途徑。1588協議是建立在網絡基礎上的,但它并不需要為時鐘傳遞建立特別的網絡,實現1588協議只需在原有網絡上添加時間同步報文,這些報文只占用少量網絡資源,它們只是和控制數據包或其他信息包共享網絡。由于以上原因高精度時間同步已成為當前工業控制領域的熱點,相信國內業界也會給予足夠重視。
參考文獻
1,The Application of IEEE 1588 to a Distributed Motion Control System
Kendal R.Harris, Sivaram Balasubramanian, Anatily Moldovansky
Rockwell Automation
2, Time Synchronization for Ethernet
Raif Messerschmidt
3, CIP Sync, Time Synchronisation for CIP Network.Ken Harris,Steve Zuponicic.Rockwell Automation
4, Recent Advances in IEEE 1588 Technology and its Application.John C. Eidson.Agilent Technology
5,IEC61588 Standard- 2004. Precision clock synchronization protocol for networked measurement and control system



評論