EtherCAT學習筆記(EtherCAT的工作原理)


1、EtherCAT的系統組成

EtherCAT是一種實時以太網技術,由一個主站設備和多個從站設備構成。具有網絡接口卡的計算機和具有以太網控制器的嵌入式設備都可以作為主站,對於PC機而言,主站一般是使用倍福公司開發的TwinCAT軟件作為主站控制器,從站使用從站控制器(ESC),如專用集成芯片ET1100或者ET1200,或者是利用FPGA技術集成EtherCAT通訊功能的IP-Core。EtherCAT物理層使用標准的以太網物理層器件,如傳輸介質通常使用100BASE-TX規范的5類UTP線纜。

2、EtherCAT的運行原理

 

 

 

如上圖所示,在一個通訊周期內,主站發送以太網數據幀到各個從站,數據幀到達從站后,每個從站根據尋址提取數據幀內對應的數據,並把反饋數據寫入到數據幀中,當數據發送到最后一個從站后返回,並通過第一個從站返回到主站。這種傳輸方式在一個周期內就可以實現數據通訊,還可以改善帶寬利用率,最大有效數據利用率可以達到90%以上。

3.EtherCAT的數據幀結構

 

如圖所示:EtherCAT的數據幀結構包括14字節的以太網幀頭,2字節的EtherCAT頭,44-1498字節的EtherCAT數據,4字節的幀校驗序列。以太網幀頭中包含6字節的目的地址,6字節的源地址和2字節的幀類型。目的地址是接收方的MAC地址,源地址是發送方的MAC地址,幀類型為0x88A4,是EtherCAT的以太網的幀類型。EtherCAT頭包括三部分:11字節的EtherCAT數據長度(所有子報文的數據長度的總和),1字節的保留位,4字節的類型(類型固定為1,表示和EtherCAT從站通訊)。每個子報文包含3部分:10字節的子報文頭,最多1486字節的數據,2字節的WKC(工作計數器,記錄子報文被從站操作的次數)。其中子報文頭可分為7個部分,詳細解釋如下表。主站設置WKC的初始值為0,當子報文被從站處理后,WKC都會增加一定的數量,當數據幀返回到主站后,主站會比較WKC的實際值和預期值是否一致,從而判斷報文是否被正確處理。

 

 

 

 

 4、EtherCAT的尋址方式

EtherCAT的數據通訊是通過主站發送EtherCAT報文讀寫從站的內部寄存器實現的。EtherCAT報文首先通過網段尋址找到從站所在的EtherCAT網段,然后通過設備地址找到報文數據對應的從站設備,再根據報文中的內存偏移地址讀寫從站設備的內部寄存器數據,從未完成數據交換。

(1)EtherCAT網段尋址:EtherCAT主站和從站網段有兩種連接方式:直連模式和開放模式。

  ①直連模式就是從站所在的EtherCAT網段用網線直接連接到主站的以太網控制器,這種模式下,主站使用廣播MAC地址,以太網幀頭的目的地址設置為0xFFFFFFFFFFFF,就可以找到EtherCAT的從站網段。

  ②在開放模式中,EtherCAT的主站和從站網段都連接到同一個標准的以太網交換機上,而且每個EtherCAT從站網段的第一個從站設備都有一個代表整個從站網段的MAC地址,這個從站成為段地址從站。在這種模式下,主站發送EtherCAT報文的時候,以太網幀頭的目的地址應該設置為目的從站網段的段地址。

(2)設備尋址:EtherCAT數據幀的子報文頭里有32位的地址區,前16位是從站設備的設備地址,后16位是該從站設備的內存偏移地址。EtherCAT報文首先根據前16位找到特定的從站設備,然后根據后16位將數據寫入相應的內存地址或者從相應的內存地址中讀出數據。設備尋址可以分為順序尋址和設置尋址。

  ①順序尋址:從站設備的地址是由物理連接順序決定的。

  ②設置尋址:從站設備的地址跟從站設備的物理連接順序無關,是系統上電初始化的時候由主站配置的,或者從站設備從自身的EEPROM配置文件中讀取出來的。

在一個EtherCAT從站網段中,每一個從站設備都有一個唯一的設備地址,用於獲取EtherCAT數據幀中相應的子報文。

5、EtherCAT的分布時鍾

EtherCAT提供分布式時鍾單元,用來同步從站設備。相比於完全同步,分布式同步時鍾具有更好的容錯性,從而保證EtherCAT從站設備同步工作的穩定性。由於每個設備的時鍾是自由運行的,所以需要利用分布時鍾進行同步。

分布時鍾同步的原理是將所有的從站設備的時鍾都同步於參考時鍾,EtherCAT將主站連接的第一個且具有分布時鍾功能的從站作為參考時鍾。為了實現各從站設備之間的准確同步控制,在EtherCAT網絡上電初始化時,會對分布時鍾初始化。通過測量和計算各從站設備的時鍾與參考時鍾之間的偏移,對從站設備時鍾進行校正,從而達到時鍾同步的目的。EtherCAT分布時鍾同步方法基於硬件校正,具有很高的准確性,同步信號抖動遠小於1us。

6、EtherCAT的通信模式

EtherCAT通信是以主從模式進行的,其中主站控制着EtherCAT的系統通信。在實際自動化控制應用中,通信數據一般可分為:時間關鍵和非時間關鍵,EtherCAT中利用周期性過程數據通信進行時間關鍵數據通信,采用非周期性郵箱通信來實現非時間關鍵數據通信。

(1)周期性過程數據通信:周期性過程數據通信通常使用現場總線內存管理單元(FMMU)進行邏輯尋址,主站可以通過邏輯讀寫命令來操作從站。周期性過程數據通信使用兩個存儲同步管理單元(SM)來保證數據交換的一致性和安全性,通信模式采用緩存模式。在緩存模式下使用三個相同大小的緩沖區,由SM統一管理,緩存模式的運行原理如圖所示:

 

(2)非周期性郵箱通信:郵箱數據通信模式只使用一個緩沖區,為保證數據不丟失,數據交換采用握手機制,即在一端完成對緩沖區數據操作后,另一端才能操作緩沖區。通過這種輪流方式進行讀寫操作,來實現郵箱數據交換。

7、EtherCAT應用層協議

 

 EtherCAT應用層直接面向應用任務,它定義了應用程序與網絡接口,為應用程序訪問網絡提供手段和服務。通常對常用協議進行簡單修改,與EtherCAT通訊協議兼容,從而可得EtherCAT多種應用層協議,主要包括EoE、CoE、SoE以及FoE等。

EtherCAT協議本身具有良好的同步特性和數據傳輸速度,非常適用於伺服系統的控制,其中CoE與SoE可實現交流伺服驅動器控制的應用層。CoE是在CANopen協議基礎上,對協議進行了一些補充。CoE完全遵從CANopen的應用行規,其中CiA402行規用於伺服和運動控制。SERCOS是一種高性能數字伺服實時通信接口協議,包含多種通信技術和設備行規。SoE是指在EtherCAT協議下運行SERCOS協議規定的伺服控制行規,使用EtherCAT協議操作SERCOS行規定義的伺服參數和控制數據

參考:https://blog.csdn.net/zhandouhu/article/details/102760231

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM