EtherCAT三种同步方式
自由运行模式 (Free Run:非同步运行)
自由运行模式通过应用程序控制器的本地计时器中断启动。本地周期从通信周期或主站周期独立出来单独运行。

SM2事件同步模式(Synchronous with SM2 Event)
由于从站的处理与SM2事件周期相对应,因此从站的处理保持与SM2事件同步。运行时使用本地周期时间直到收到SM2事件。由于有些伺服驱动器中的Output绝对有效,因此无法执行SM3事件同步。

DC模式(SYNC0事件同步)
SYNC0事件收信后开始从站的本地周期。在下一个SYNC0中断发生前,过程数据帧必须被从站完全接收。Calc and Copy Time中包括数据帧收信与SYNC0事件间的最小时间差。

通信时序介绍
自由运行模式
自由运行模式就是每个slave根据自己的时间中断(未同步的timer)来处理EtherCAT数据,跟主站的运行周期其他从站的周期以及EtherCAT帧的到达时间都没关系。通信时序如图 2.1所示:

图 2.1 自由运行模式通信时序

SM2事件同步模式
SM2事件同步模式就是slave根据SM2或者SM3 event来处理EtherCAT帧数据的读写(也就是slave一收到EtherCAT数据就会触发SM event),但是由于有些设备SM3一直是输出有效,因此有些设备的SM3不能用来作为同步信号。通信时序如图 2.2所示:

图 2.2 SM2同步模式通信时序

DC模式
DC模式就是高精度的时间同步模式(与第一个有DC的slave同步),该模式会将第一个有DC的slave的时间作为system time,然后再用这个system time来作为所有设备的参考时间(加上传输延时,抖动等等时间误差)来生成SYNC0或者SYNC1同步信号。该模式要求主站有很强的实时性能,因为某些slave要求在该模式下时间抖动不超过100us,否则会有Sync Error报警。通信时序如图 2.3所示:

图 2.3 DC同步模式通信时序