關于工業網絡的精密時序問題解析
工業網絡連接工廠內的機器、機器人、傳感器、 執行器、控制器和計算機,以便于指令和數據的交換,從而同步它們的工作。網絡中機器的同步操作需要每個機器都有相同的“精密時間”。每臺機器上的精密時間 保證了網絡中事件的相對順序。缺乏精確的時間可能會導致機器和機器人操作順序混亂CONTROL ENGINEERING China版權所有,這反過來可能導致產品質量差、重要信息丟失、甚至發生災難性的事故。本文探討了工業網絡中的精密時序的必要性,以及各種應用和機制所需的時間精度來確保以太網網絡中的時序精確性。
工業網絡
傳統的工業網絡使用專有的、特定供應商提供的網絡技術連接工廠內的機器和計算機。專有的網絡技術導致不同廠商機器之間的互操作困難,從而導致成本提高。然而,在過去的二十年,人們喜歡將應用廣泛的以太網技術用于工廠內的機器互連。在20世紀80年代和90年代,辦公網絡的急速發展使得開放的以太網技術獲得了廣泛采用。以太網解決方案的規模和成熟性促成了行業標準的建立,實現了不同廠商設備之間的互操作性、提供了大量的技術人才、降低了設備成本和總擁有成本。
以太網網絡技術提供了前所未有的的可擴展性和購買可承受能力,但是它有一個嚴重的缺陷。為了保持網絡連接和設備的高利用率從而能降低成本,以太網技術采用基于需要的通信資源分配方式。從技術角度來看,這是被稱為“異步”或“盡力而為”的通信方式。如上所述CONTROL ENGINEERING China版權所有,工業網絡的一個關鍵的需求是將精密時間分發到所有節點。在工廠中使用以太網進 行機器同步的首要挑戰是建立一個機制,在不可預知的異步網絡中準確地分發精密時序。這個可預測的精密時序分發機制被稱為“精密時序協議(PTP),這將在 本文后面討論。PTP由IEEE標準“IEEE1588” (在不可預知的網絡中,可預測的維護精密時間的另一個術語)定義,并且目前由該標準進行維護。
相反,傳統的工業網絡中使用一個同步通信機制或一個單獨的專用網絡,實現所有機器的精密時間的分發。這兩種機制都需要分配專用的資源來建立兩個節點之間的通信,從而導致了較低的設備利用率、降低了網絡的可擴展性以及更高的總成本。異步以太網網絡中的精密時間分發所面臨的挑戰如圖1所示?! ?/P>

圖1:通過網絡的精密時間分發
時鐘準確性和精度
幾乎所有的現代化機器、傳感器、 執行器和計算機都有本地數字時鐘。然而,這些本地時鐘是基于晶振的,隨著時間的推移,由于環境變化(溫度和濕度)和晶體老化而產生偏移。因此控制工程網版 權所有,在網絡中的本地時鐘需要定期使用一個非常精密的主時鐘或參考時鐘進行同步。主時鐘是一個GPS接收機或者銣或銫時鐘。由于節點之間的通信速度成倍 增長,需要精度更高的時鐘來維持網絡中事件的相對順序。圖2說明了時鐘準確性和精度的概念。時鐘準確性測量了與整個網絡參考時鐘之間的時間差。時鐘精密表 示測量到時間的可重復性?! ?/P>

圖2:時鐘準確性和精度的定義
由于網絡中機器之間通信速度從Kbps增加到Mbps、Gbps和萬兆比特每秒,連續事件之間的時間間隙變得微不足道。過去,工業時鐘需要毫秒級的精度;但是,隨著通信速度越來越快,工業時鐘需要微秒甚至納秒級的精度(圖3)?! ?/P>
圖3:隨數據速率的增加時鐘精度要求成倍增長
表1(下頁)列出了不同類型網絡的精度要求。辦公網絡(局域網)僅需一到十毫秒的本地時鐘精度。毫秒級的時鐘精密度可以使用稱為網絡時序協議(NTP)的軟件協議很容易地實現,該協議適用于操作系統(Windows和Linux)和局域網,實現了辦公設備的互連。傳統的工業網絡要求本地機器時鐘與參考時鐘(或主時鐘)相差不到0.1微秒。傳統的工業網絡使用獨立的布線來分發參考時間并同步本地時鐘。新的數據密集型工業網絡要求極具成本效益的以太網網絡具有納秒級的時鐘精度。精密時序協議2.0版(PTP v2.0)設計用于為“盡力而為”型的以太網網絡提供納秒級的時鐘精度。PTP v2.0通過盡可能地接近網絡接口,在硬件中實現時間戳和同步算法,從而實現納秒級的時鐘精度。
表1:各種應用所需的時鐘精度

精密時序協議2.0版(IEEE 1588 2.0版)
精密時序協議(PTP)的目的是在不需要一個單獨且昂貴的時序網絡的情況下,同步機器上的本地時鐘。PTP是一個自下而上協作的協議,其中本地 節點相互通信(通過消息交換)來發現它們中的主時鐘并且互相同步。由于PTP在數據網絡中工作,交換機、路由器和操作系統都有不同程度的延時,它為“時序 數據包”排列優先級或創建特定的隊列,其中包含同步的信息。為了消除操作系統和服務器引入的延遲,協議處理在硬件(FPGA或ASSP)中實現,并對時序 數據包使用硬件時間戳。
精密時序協議的特性是使用協作的消息交換算法,從時鐘計算與主時鐘之間的“時間偏移”和“傳輸延遲”。圖4說明了PTP的消息流,以確定“時鐘 偏移”和“傳輸延遲”。由于每個從時鐘都要計算兩個變量——偏移和延遲——主從時鐘需要交換兩組消息。首先,主時鐘定時地(通常每秒一次)向所有從時鐘廣 播時間同步數據包。其次,每個從時鐘向主時鐘發送“延遲請求”消息以確定“傳輸延遲”。兩組消息交換得到兩個線性方程,從而確定“從時鐘偏移”和“傳輸延 遲”?! ?/P>

圖4:確定主從時鐘之間偏移的機制
FPGA實現
實現精密時序協議要求在數據包一到達網絡接口卡(NIC)時就進行捕捉并標記時間戳。納秒級精度的分布式時鐘也需要在硬件中以最小變化執行各種 同步步驟。帶有SERDES功能的現場可編程門陣列(FPGA)器件,如LatticeECP3FPGA器件提供了眾多的優勢,實現更接近網絡接口的精密 時序協議:
1.高速串行接口(SERDES),迅速捕捉時序數據包;
2.靈活和準確的時鐘電路(PLL);
3.精度可以根據系統要求進行調整;
4.用于存儲時序數據包的FIFO隊列,可以在FPGA結構中靠近高速I/O模塊處實現;
5.FPGA中的嵌入式硬件或軟件處理器,也可以用于實現精密時序協議;
6.不占用主CPU的外部PTP處理功能;
7.不斷發展的精密時序協議可以在靈活的FPGA平臺上實現輕松升級。
總結
工業環境中主流以太網網 絡的迅速普及需要使用精密時序技術來同步機器和機器人。精密時序協議(IEEE1588)提供了從亞微秒到納米秒級的同步精度。PTP的軟件實現提供了亞 微秒級以上的精度。時間戳和同步算法(PTP V2.0)的硬件實現可提供高達納秒級的精度。隨著通信數據傳輸速率的增加,所需的時序精度呈指數增長。PTP v2.0能夠滿足最先進的數控機床的嚴格時序要求。
評論