基于IEEE 1588的時鐘同步技術在分布式系統中的應用
以太網技術的高速發展為分布式系統在工業領域的廣泛應用創造了條件。以太網具有成本低、可靠性高、傳輸速度快、通用性強、開放性好、發展潛力大等優點。但以太網也存在網絡的確定性、實時性不強等缺陷。隨著系統日益龐大復雜,分布化程度越來越高,對時鐘同步的要求也逐步提高,雖然隨著帶寬的不斷提高以及采用星形網絡拓撲結構等減少沖突可能的技術的應用,以太網的確定性、實時性有一定程度的提高,但由于以太網自身沖突檢測的載波幀聽多路訪問(CSMA/CD)機制,設備層和I/O層的數據采集與傳輸問題,以及TCP及UDP上的誤差檢測及翻譯障礙等,以太網的實時性問題并未得到根本解決。仍不能滿足精確定時的要求。
網絡測量和控制系統的精密時鐘同步協議標準IEEE1588適用于以太網、CAN總線和PROFIBUS等。IEEE 1588的基本功能是使分布式網絡內所有從時鐘與主時鐘保持同步,該標準定義一種精確時間協議PTP(Precision rime Protocol),用于對標準以太網或其他采用多播技術的分布式總線系統中的傳感器、執行器以及其他終端設備中的時鐘進行微秒級同步。早期的網絡時間協議(NTP)只有軟件,而PTP協議同時使用硬件和軟件,從而獲得更精確的定時同步。PTP針對相對本地化、網絡化的系統,子網或內部組件相對穩定的環境,特別適合于分布式系統在工業自動化方面的應用。
2 時鐘同步原理
理論上,為每個系統節點配備GPS模塊可得到精確的時間,這樣系統中所有節點的時鐘就和標準時間一致。從而達到同步;但分布式系統中節點數量大,GPS設備成本高、能耗大,且結構復雜,抗屏蔽性差,且出于安全性考慮排除大規模使用GPS的時鐘同步方式。而基于以太網的IEEE 1588是通過在分布式系統各節點間交換時間報文的方法達到整個系統的時間同步。IEEE 1588通過交換報文來確定主時鐘(Master)和從時鐘(Slave)之間的時間偏移及報文傳輸的網絡延遲。圖1為IEEE 1588原理圖。

由圖1可知,主時鐘的節點按照定義的間隔時間(缺省是2 s)周期性地向網絡上所有從時鐘節點發送“同步報文”(Sync),同時主時鐘節點記錄同步報文實際發送的時間戳,并在隨后的“跟進報文”(Follow-up)中傳送該精確時間戳TM1。這樣,對傳遞和接收的測量與標準時間戳的傳播可以分開。網絡上所有其他從時鐘節點收到上述報文后,記錄同步報文的接收時間戳TS1,TS1和TM1的偏差中不但包含主從時鐘的時間偏差,還包含未知的報文傳輸延遲,分布式系統中每個節點在網絡中所處位置、布線方式、布線長度以及目前網絡技術中的固有問題,也將造成測控數據在傳輸過程中的不同延遲。因此需要進一步測量并消除該傳輸延遲。與偏移測量不同,延遲測量是不規則進行的,從時鐘節點按照定義的間隔時間(缺省值是4~60 s之間的隨機值)向主時鐘節點發送一個“延遲請求”(Dclay Request)報文,同時記錄該報文的實際發送時間,作為精確的發送時間戳TS2,而主時鐘接收到該報文時也記下接收時刻的精確時間戳TM2,并將該時間戳在隨后的“延遲響應”(Delay Response)報文中發送給相應的從時鐘節點。假設網絡延遲是對稱的,則有以下兩式:

式中,τ為報文的傳輸延遲,△為從時鐘相對主時鐘的偏差。
由式(1)和式(2)可求得:

根據偏差△,調整從時鐘,實現對時。
評論