重要性
在工業自動化設備中,之所以選擇匯流排,主要考慮的是通訊速度、頻寬還有就是穩定性和同步性。特別是在運控領域,微秒級別的同步,高速運動過程中的位置鎖存(飛拍、追剪等應用),那同步性是相當重要。
分散式時鐘(DC)原理
在EtherCAT匯流排網絡中,術語“分散式時鐘”是指分散式時鐘的邏輯網絡。通過使用分散式時鐘,EtherCAT實時乙太網協議能夠在非常窄的容差範圍內同步所有本地匯流排設備中的時間。如果EtherCAT從站支持分散式時鐘功能,則它包含自己的時鐘,該時鐘在打開後最初在本地運行,基于EtherCAT從站內部的獨立時鐘生成器(石英、振盪器等)。
在EtherCAT鏈中,有一個選定的EtherCAT從站,代表參考時鐘(M,見圖EtherCAT系統中的分散式時鐘),其他設備和控制器的從機時鐘(S)與之同步。因此,參考時鐘即是系統時間。如果EtherCAT主機支持分散式時鐘功能,例如Beckhoff TwinCAT EtherCAT主站,則其可自動連續處理調整和同步。為此,EtherCAT主機以短時間間隔發送一個特殊EtherCAT數據報文(具有足夠的頻率以確保從站時鐘在指定的限制內保持同步),其中EtherCAT從站與參考時鐘進入其當前時間。然後,所有其他具有從時鐘的EtherCAT從站從同一數據報中讀取該信息。
由於EtherCAT的環形結構,如果參考時鐘在拓撲上位於所有其他從站時鐘之前,這是可能的。因此,EtherCAT主設備選擇第一個具有分散式時鐘功能的EtherCAT從站作為參考時鐘。
因此,EtherCAT配置的特點是EtherCAT主機操作和管理與連接的EtherCAT從站的匯流排。其中一個EtherCAT從站包含參考時鐘(M),所有其他EtherCAT設備(即包括EtherCAT主站)代表從站時鐘(S)。
EtherCAT從站控制器(ESC)處理EtherCAT通信,尤其是EtherCAT從站中的分散式時鐘功能。這是諸如ASIC或可重編程FPGA或類似物的電子部件(晶片)。每個EtherCAT從設備都有這樣一個ESC,以確保通過EtherCAT現場匯流排在主設備和從設備之間交換循環和非循環過程數據。該ESC可以直接處理數字輸入和輸出等簡單功能,也可以通過串列/並行介面連接到EtherCAT從機中的另一個處理器,以處理更複雜的任務,如驅動控制。特別是,如果EtherCAT從站需要支持此功能,ESC會管理本地分散式時鐘功能和相關任務。
EtherCAT從站的示意圖如圖所示。ESC功能和嵌入典型EtherCAT從屬機的示例。此外,在後者中嵌入ESC及其基本功能的選擇。
信號通過轉變器從RJ45插座傳輸到PHY(物理介面)。它從編碼的乙太網信號中提取用戶數據,並將其傳輸到ESC進行處理。然後,EtherCAT電報以最小延遲(由於動態處理)通過PHY和套接字中繼到下一個EtherCAT從機。當從設備啟動時,ESC自動通過EEPROM中的配置數據對自身進行參數化。如果從設備中存在另一個CPU,則從站可以通過介面與其通信。
ESC的分散式時鐘單元在完整配置中提供以下功能(取決於設備實現):
EtherCAT從設備和主設備之間的時鐘同步
同步生成輸出信號(同步信號)
同步讀取輸入信號
輸入信號(鎖存信號)的精確時間戳
同步中斷的生成
同步性能
與立即受到通信誤差影響的完全同步通信相比,分散式同步時鐘對通信系統中的抖動具有高度的容忍度。因此,用於同步節點的EtherCAT解決方案是基于這種分散式時鐘(DC)的。
節點中時鐘的校準完全基于硬件。從第一個DC從設備開始的時間被循環地分配給系統中的所有其他設備。通過這種機制,從設備時鐘可以精確地調整到該參考時鐘。系統中產生的抖動明顯小於1μs。
由於從參考時鐘發送到從設備的時間略有延遲,因此必須測量並補償每個從設備的傳播延遲,以確保同步性和同時性。這種延遲是在網絡啟動期間測量的,如果需要,甚至是在操作期間連續測量的,以確保時鐘在彼此小於1μs的範圍內同步。
圖 : 同步性與一致性:相距電纜長度為有120米的兩個分佈系統,帶有300個節點的示波器比較
此外,高分辨率的分佈時鍾不僅可以用於同步,還可以提供數據採集的本地時間精確信息。當採樣時間非常短暫時,即使是出現一個很小的位置測量瞬時同步偏差,也會導致速度計算出現較大的階躍變化,例如,運動控制器通過順序檢測的位置計算速度便是如此。而在EtherCAT中,引入時間戳數據類型作為一個邏輯擴展,乙太網所提供的巨大頻寬使得高分辨率的系統時間得以與測量值進行連結。這樣,速度的精確計算就不再受到通訊系統的同步誤差值影響,其精度要高於基于自由同步誤差的通訊測量技術。
EtherCAT分散式時鐘優勢
EtherCAT的分散式時鐘提供了幾個優勢,使其成為工業自動化的首選。
首先,分散式時鐘實現的緊密同步提高了控制精度、準確性和整體系統性能。由於所有設備的時間都是相同的,運動控制系統可以以最小的誤差執行協調的運動。
此外,EtherCAT的分散式時鐘提供了一種經濟高效的解決方案。與其他需要額外硬件進行時間同步的協議不同,EtherCAT使用低成本的EtherCAT ESC晶片實現時間同步。這些晶片整合了分散式時鐘所需的多種功能,無需專門的卡或複雜的軟件堆棧。
EtherCAT從站同步模式
Ether CAT從站主要有以下同步模式:
(Free Run):自由運行
EtherCAT從站與EtherCAT不同步。從設備根據自己的週期自主運行,不與EtherCAT週期同步。
(Synchronous with SM event ):與SM事件同步
EtherCAT從設備與SyncManager 2(SM2)事件(如果傳輸週期性輸出)或SM3事件(如果僅傳輸週期性輸入)同步。處理經過的幀時,SyncManager會觸發SM2/SM3事件。
(Synchronous with SYNC event (distributed clocks)) :與SYNC事件(分散式時鐘)同步
EtherCAT從機與分散式時鐘系統的SYNC0或SYNC1事件同步。具體可查看文末的文獻連結。
同步模式相關的所有參數都列為EtherCAT從站設備的CoE列表中的對象。它們可以由從設備在綫讀取,也可以通過描述從設備的XML檔案離線確定。
例如,在CODESYS平台控制器中,設定伺服的同步模式,有些伺服預設是不會選擇DC模式,這個時候需要自己在圖示處選擇:
實際測試發現,部分設備伺服運行有些異常抖動,不管如何設定其他參數都無效,反而將DC項目設置成上述這個模式DC Sync0即可解決。
關於分散式時鐘,主要整理於倍福官網和其他網站(具體見下方文章連結),對於描述不恰當的地方請各位朋友留言區補充,另外,這塊理解起來比較難,如果需要詳細的瞭解和研究,請到下述連結仔細查閲:
https://www.ethercat.org/en/technology.html#1.5
https://infosys.beckhoff.com/english.php?content=../content/1033/ethercatsystem/2469062027.html&id=
https://www.toolify.ai/gpts/optimize-ethercat-systems-with-distributed-clocks-306598
https://ww2.mathworks.cn/help/slrealtime/io_ref/ethercat-distributed-clock-algorithm.html
沒有留言:
張貼留言