上周的分享已經介紹了整個參考設計的概況和相關硬件資源。那么,本次會從軟件工程角度進行分享。首先來了解EtherCAT Slave工作流程。
EtherCAT Slave工作流程
EtherCAT共有四種工作模式:
1.Free Run模式:
每個從站的應用層(如控制器)獨立運行,與EtherCAT總線的周期無關。
優點:實現簡單,適用于對同步要求不高的場景。
缺點:無法保證所有設備同步運行,可能導致控制誤差。
2.SM Sync模式
(SyncManager Synchronization)
使用SyncManager的事件觸發機制來同步數據處理。
從站在接收到新的過程數據后觸發中斷或事件,通知應用層處理。
適用于中等同步要求的場景。
所有從站的內部時鐘通過主站進行同步,達到納秒級精度。
從站在精確的時間點處理數據,確保整個系統同步。
適用于高精度運動控制、測量系統等場景。
4.Mailbox模式
用于非周期性數據通信,如參數配置、診斷信息等。
通信通過Mailbox通道進行,通常與CoE、FoE、SoE等協議結合使用。
不是過程數據同步模式,但常與其他模式配合使用。
在伺服控制應用中,出于對實時性能的考慮,我們選用基于DC模式+Mailbox模式相結合,在DC模式下,所有的Slave節點會進行時鐘同步校準,Master會根據用戶設定,周期性的收發數據給到所有的從站節點,并且會在完成數據交互后的某一時刻,在所有從站節點上產生Sync信號,用于系統同步。
其中,同步周期時間,和從站節點完成數據交互后至產生sync之間的時間,通常稱為shift time,都需要根據實際環路傳輸延遲和主站處理時間來確定。該參考設計,EtherCAT的同步周期設定為250us,sync信號的shift time為50us。
下圖為從站的整個工作流程圖:

當片內的EtherCAT從站控制器接收到來自主站的數據,并處理完成后,CM33核會觸發PDI中斷。在該中斷內會完成兩件事情:
1.基于Cia402協議完成電機指令提取的相關操作,
2.將提取到的指令通過MU,從CM33核下發給CM7核。隨后會在設定的時間后產生sync信號,將該信號連接至XBAR,通過相關配置,在兩個ARM核會各自產生中斷,CM33處理EtherCAT相關狀態機,更新電機狀態;CM7核下發電機指令,通過MU反饋電機狀態。
得益于靈活的XBAR外設,EtherCAT從站控制器sync信號能夠直接通過總線連接至片內外設,觸發中斷,擁有更短的觸發延遲,能夠確保整個系統擁有更好的同步性,在一顆芯片上即可完成所有同步配置,方便客戶開發。
EtherCAT從站節點的整個工作流程,涉及到了靈活的XBAR使用。
下篇進一步跟大家介紹如何利用XBAR與以及相關外設去同步電機控制模塊與EtherCAT模塊。
-
總線
+關注
關注
10文章
3040瀏覽量
91656 -
同步電機
+關注
關注
2文章
271瀏覽量
26382 -
ethercat
+關注
關注
19文章
1507瀏覽量
45160
原文標題:不止于連接:i.MX RT1180 驅動 EtherCAT
文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
恩智浦i.MX RT1180 EtherCAT外設中SM FMMU功能介紹及應用
恩智浦MCU方案 單顆i.MX RT1180實現EtherCAT+伺服控制
恩智浦i.MX RT1180跨界MCU助力下一代伺服控制系統
在恩智浦i.MX RT1180跨界處理器上如何實現1588協議同步
恩智浦i.MX RT1180跨界MCU驅動EtherCAT的工作流程
評論