在工业以太网领域,EtherCAT凭借高速实时性、拓扑灵活性和低成本部署优势,成为运动控制、自动化产线、伺服驱动等场景的主流通讯方案。而同步精度是衡量EtherCAT系统性能的核心指标,直接决定设备协同动作的稳定性、数据采集的准确性以及控制指令的执行效率。本文将深度拆解EtherCAT三大同步模式,重点解读分布式时钟(DC)的核心功能与运行逻辑,并结合FCE1200_STM32F405_DA模块200μs DC周期实例,详解程序执行流程与耗时细节,帮你彻底吃透EtherCAT同步技术的底层逻辑。

一、EtherCAT三大同步模式:适配不同场景的控制方案

EtherCAT协议针对不同工业控制需求,定义了Free Run(非同步)、SM-Synchronous(总线同步)、DC-Synchronous(分布式时钟同步)三种核心同步模式,三者在触发机制、同步精度、适用场景上差异显著,可根据设备类型、控制要求灵活选型。

1. Free Run模式(非同步)

Free Run是EtherCAT最基础的工作模式,全程脱离主站周期约束,属于完全非同步机制。该模式下,从站设备的过程数据处理、输入采集、输出生效等动作,均由内部硬件事件自主触发,与主站的通讯周期没有任何时间绑定关系。

  • 核心特性:无需定义主站周期性数据帧与从站本地程序的时间关联,各个Free Run从站之间的时间偏移量完全随机、无固定规律,不存在统一的时钟基准。

  • 同步短板:无同步校准机制,设备之间动作协同性差,仅适用于对实时性、同步性无要求的场景。

  • 典型应用:信号变化缓慢的模拟量I/O设备,比如温度传感器、湿度传感器、液位监测仪表等低速采集设备,这类设备无需精准同步,只需周期性采集数据即可。

图片

Free Run模式(非同步)时序图(图片来源:网络)

从时序逻辑来看,主站持续发送周期性数据帧,但各从站按照自身本地时钟独立运行,输出生效、输入采集的时机互不干扰,整体呈现“各自为政”的运行状态。

2. SM-Synchronous模式(总线同步)

SM(Sync Manager,同步管理器)同步模式,是依托EtherCAT总线帧触发的半同步机制。该模式下,从站的过程数据处理动作,由接收到主站发送的周期性过程数据帧时产生的硬件中断触发,实现了从站与主站通讯周期的初步绑定。

  • 触发逻辑:主站发送过程数据帧,数据帧沿总线拓扑依次经过各个从站,每个从站检测到数据帧到达时,立即触发SM硬件中断,启动本地数据处理、输入采集、输出控制等流程。

  • 同步误差来源:这是该模式的核心短板,也是无法满足高精度控制的关键原因。

误差一:主站发送数据帧存在固有抖动(Jitter),所有从站接收的帧信号 都会携带该抖动,导致中断触发时机偏移;

误差二:总线物理传播延时影响,拓扑末端从站接收数据帧的时间,必然  晚于近端从站,形成逐级累积的时间差,同步精度被大幅削弱。

  • 适用场景:对同步精度要求中等的常规PLC控制,比如简单的定位动作、普通电磁阀控制、流水线启停控制等场景,可满足基础协同需求。

图片

SM-Synchronous模式(总线同步)(图片来源:网络)

3. DC-Synchronous模式(分布式时钟同步)

DC-Synchronous(分布式时钟同步)是EtherCAT专为高精度实时控制设计的顶级同步模式,彻底摆脱主站抖动和总线传播延时的束缚,实现微秒级甚至纳秒级的全网设备同步,是伺服驱动、多轴运动控制、超采样IO等高端场景的必选方案。

  • 核心原理:依托分布式时钟技术,全网所有DC从站共享统一的系统时间(DC System Time),基于这个全局基准时间自主产生硬件同步中断,无需依赖总线帧到达信号触发。

  • 核心优势:同步触发事件完全独立,不受主站帧抖动、总线传输延时的影响,所有从站的同步事件(SYNC Event)在同一时刻触发,实现真正意义上的全网同步。

  • 适用场景:NC任务控制的伺服电机驱动、多轴联动机械手、高速超采样IO模块、精密检测设备等,对同步精度和实时性有极致要求的工业场景。

图片

DC-Synchronous模式(分布式时钟同步)(图片来源:网络)

二、分布式时钟(DC):EtherCAT高精度同步的核心

分布式时钟(Distributed Clock,简称DC)是EtherCAT实现高精度同步的核心技术,相当于整个总线系统的“统一时钟源”。它能让所有接入总线的EtherCAT从站设备共享完全一致的系统时间,以此为基准协调各设备的任务执行、数据采集、指令输出,彻底解决总线延时和时钟偏差问题。支持分布式时钟功能的从站,被统称为DC从站。

分布式时钟的核心功能

DC模块并非单纯的时钟同步工具,而是集成了时钟校准、信号触发、时间标记、数据同步等多重能力的综合控制单元,核心功能涵盖七大维度:

  • 跨设备时钟同步:校准所有DC从站的本地时钟,消除设备间的时钟偏差,实现全网时间统一;

  • 主站同步时钟供给:为主站提供精准的同步时钟基准,保障主从站时钟协同;

  • 同步输出信号(SYNC)生成:产生全局一致的SYNC同步信号,驱动设备同步动作;

  • 输入事件精准时间标记:为数字量/模拟量输入事件打上高精度时间戳,保障数据溯源和时序准确性;

  • 同步中断触发:生成全局同步的硬件中断,统一调度从站应用程序执行;

  • 数字量输出同步更新:所有从站输出指令同时生效,避免输出时序偏差;

  • 数字量输入同步采样:全网输入信号在同一时刻采集,保证采集数据的同步性和有效性。

三、DC模式实战解析:200μs周期程序执行与耗时明细

理论结合实践才能真正掌握DC同步技术,本节以FCE1200_STM32F405_DA模块为硬件载体,针对200μs标准DC周期,拆解完整程序执行流程,并精准分析各环节运行耗时,直观展现DC模式的实时控制效率。

1.DC模式程序执行流程

图片

DC模式程序执行流程图

2. DC周期全局耗时参数

整个DC周期设定为200μs,各关键节点的耗时均经过精准校准,其中TwinCAT系统会自动将输出同步偏移时间(SYNC Shift Time for Outputs)默认设为通讯周期的30%,保证IRQ触发到Sync0同步的时间配比合理,避免时序冲突。核心全局耗时参数如下:

参数名称

耗时数值

IRQ中断脉宽

5.481μs

SYNC0同步信号脉宽

101ns

PDI_Isr程序总执行时间

19.392μs

Sync0_Isr程序总执行时间

114.55μs

IRQ触发到SYNC同步间隔

63.379μs

DC总周期

200μs

3. PDI_Isr程序细分耗时拆解

PDI_Isr是DC模式的预处理中断程序,负责总线交互前期准备,细分环节耗时精准可控,具体明细如下:

执行环节

耗时数值

读取应用层事件寄存器的值

1.862μs

复位计数器

244ns

计算总线循环周期

273.75ns

设置看门狗标志

70.750ns

处理输出过程事件

15.144μs

二次计算总线循环周期

65.25ns

处理过程数据SM事件

95ns

更新输入数据

196ns

检查循环是否超时

1.7862μs

4. Sync0_Isr程序细分耗时拆解

Sync0_Isr是DC同步的核心中断程序,决定同步控制的精度,其中应用程序同步环节占比最高,保障核心控制逻辑稳定运行,细分耗时如下:

执行环节

耗时数值

记录输入数据锁存次数

250ns

检查SM同步序列有效性

255.75ns

检查上一次输入数据读取状态

202ns

输出数据映射

94.75ns

应用程序与sync0事件同步

114.10μs

更新输入数据

2.798μs

四、总结

EtherCAT的三种同步模式覆盖了从低速非同步到高精度同步的全场景需求,而分布式时钟(DC)作为核心技术,凭借全局统一的系统时间、纳秒级同步精度,成为高端工业控制的最优解。通过FCE1200_STM32F405_DA模块的实测数据可见,200μs DC周期下,各程序环节耗时精准、时序严谨,既能满足伺服驱动、多轴运动的高速控制要求,又能保障超采样IO的数据采集精度。

实际工程部署中,建议优先选用SM-Synchronous模式,兼顾实时性和稳定性;针对复杂协同控制场景,可升级为全功能DC模式,最大化发挥EtherCAT的同步性能,打造高效、稳定的工业自动化控制系统。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐