
EtherCAT通信支持DC(Distributed Clocks)Sync模式,關于EtherCAT Distributed Clocks更多細節,請復制以下鏈接在瀏覽器中打開查看相關說明:
https://infosys.beckhoff.com/content/1033/ethercatsystem/2469112587.html?id=8613091072690561919
RX72M的手冊中ESC Specifications表明RX72M中的ESC模塊支持Distributed Clocks。以下是Twincat配置RX72M使用DC模式的參考步驟,在有多個RX72M板子時,參考時鐘設置為物理掃描拓撲中第一個具有DC功能的RX72M板子即可。如下實物圖,因為所有從站都使用了DC功能,因此參考時鐘設置為掃描出來的物理拓撲中第一個RX72M板子(最右側板子,從主站出來的第一個從設備)。

圖1RX72M EtherCAT I/O Demo外觀圖

圖2RX72M ESC Specifications
請參考本文對主站(以TwinCAT為例)進行DC Mode設定。
首先,在TwinCAT中,打開已有的(或新建)TwinCAT Project,將Operation Mode從默認的SM-Synchron切換到DC-Synchron,具體的操作界面是:I/O → Device * (EtherCAT) → Box 1 (Renesas EtherCAT RX72M) → DC → Operation Mode → DC-Synchron,如下圖所示:

圖3切換Operation Mode至DC-Synchron
然后,通過重啟TwinCAT使得剛才的配置生效。
重啟TwinCAT的第一種方法如下所示:

圖4 通過TwinCAT菜單重啟TwinCAT
也可以通過下面的按鈕重啟TwinCAT:

圖5 通過快捷方式重啟TwinCAT
配置完成后,按照以下步驟確認當前設備工作在DC Sync模式下。
打開DC配置查看細節,具體路徑為Box 1 → DC → Advanced Settings,在新開啟的Advanced Settings窗口中,確認Operation Mode是DC-Synchron。通常默認Enable SYNC 0,Disable SYNC1。Sync Unit Cycle (μs) 中的值是發送DC Sync信號的時間間隔/周期。

圖6 檢查DC Sync細節
接下來,我們通過Wireshark捕獲EtherCAT的通信數據,確認當前已啟用DC Sync模式。在進行捕獲前,必須按照以下步驟設定。
打開I/O → Devices → Device * (EtherCAT) → Adapter Tab,勾選Promiscuous Mode (use with Wireshark only),則可以通過Wireshark捕獲TwinCAT主站和從站之間的EtherCAT通信數據。
請通過以下鏈接下載Wireshark并在本地安裝:
https://www.wireshark.org/download.html

圖7 Promiscuous Mode in TwinCAT
當DC Sync使能時,通過Wireshark捕獲的EtherCAT通信數據包含ARMW(Auto Increment Read Multiple Write),如下圖所示:

圖8 DC使能時數據幀中包含ARMW
作為對照,當DC Sync未使能時,通過Wireshark捕獲的EtherCAT通信數據則不包含ARMW,如下圖所示。

圖9 DC未開啟時數據幀中不包含ARMW
關于ARMW的更多細節,請復制以下鏈接到瀏覽器中打開查看文檔的內容:
https://www.ethercat.org/download/documents/EtherCAT_Device_Protocol_Poster.pdf
-
mcu
+關注
關注
146文章
17889瀏覽量
361726 -
瑞薩
+關注
關注
36文章
22375瀏覽量
87836
原文標題:在TwinCAT中配置RX72M使能DC Mode
文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
瑞薩FUSA參考板使用指南(RX72N-RX72N參考板)符合SIL3標準的功能安全平臺軟件PLSW軟件使用教程

TwinCAT3 EtherCAT抓包 | 技術集結

STM32CubeMX在配置DCMI的腳位時,在Mode的選項中, 只有8bits, 10bits與12bits, 為何沒有14bits?
在S32K3x4中使用EMAC模塊的RMII模式時,為什么需要將MII_RX_CLK配置為25MHz?
STM32F107的USART2為什么進不了中斷?
STM32L431在STOP2模式下能否將串口的RX配置成EXTI喚醒呢?
ads6422配置為DDR2模式時只有DC0N,DC0P有輸出,DC1N和DC1P沒有輸出,為什么?
ads131a02發送16位的使能AD通道命令時就會返回錯誤狀態,報告F_FRAME錯誤即沒有足夠的時鐘,如何解決?
你用的升壓芯片使能關斷是“真關斷”嗎?

評論