4. TwinCAT诊断工具链实战
TwinCAT 的诊断能力不是单一工具,而是一条从“系统级事件”到“过程级波形”的观测链。Event Logger 记录系统与 TwinCAT 运行时事件,ADS Monitor 观察 ADS 通信与路由,EtherCAT Diagnostics 聚焦从站与过程数据通信,Scope View 捕获高速过程信号,System Manager 则提供拓扑、状态与 I/O 映射的全局视图。理解它们各自“看什么、什么时候用、结果怎么读”,比记住菜单位置更重要。
一、五个工具的分工与观测层次
可以把诊断工具链理解为从粗到细、从慢到快的分层观测:Event Logger 面向系统事件与错误码,时间粒度较粗但覆盖面广;ADS Monitor 面向 ADS 客户端/服务器通信与路由状态;EtherCAT Diagnostics 面向 EtherCAT 主站与从站的通信质量、状态机和过程数据;Scope View 面向微秒到毫秒级的过程信号波形;System Manager 则是配置与状态的总入口,负责 I/O 映射、拓扑和从站状态查看。实际排障时,通常先用 System Manager 和 Event Logger 定位“哪一层出问题”,再用 ADS Monitor 或 EtherCAT Diagnostics 缩小范围,最后用 Scope View 验证动态行为。
二、Event Logger:先看事件,再看代码
Event Logger 是 TwinCAT 3 中记录系统级事件的工具,入口在 IDE 的 Event Logger 窗口或独立日志文件。它记录的事件来源包括 TwinCAT 系统服务、实时内核、ADS、EtherCAT 主站、PLC 运行时等。每条事件通常包含时间戳、来源、严重级别(Error/Warning/Info)、事件 ID 和描述文本。实际排障时,先按严重级别过滤 Error,再按时间窗口对齐故障发生时刻,往往能快速定位到“是 EtherCAT 从站掉线,还是 PLC 任务超时,还是 ADS 路由断开”。
例如,某设备在运行 2 小时后偶发停机,Event Logger 中出现 EtherCAT Master: Working Counter error 和 PLC: Task cycle time exceeded 两条 Error。此时不应直接改 PLC 代码,而应先看 EtherCAT 侧:Working Counter 错误通常意味着某个从站未正确响应过程数据帧,可能是线缆、终端电阻、从站供电或 DC 同步问题。Event Logger 的价值在于把“现象”与“系统事件”关联起来,避免盲目猜测。
三、ADS Monitor:通信链路的听诊器
ADS(Automation Device Specification)是 TwinCAT 内部及跨设备通信的基础协议。ADS Monitor 用于观察 ADS 通信状态,包括本机 ADS 路由表、端口监听情况、客户端连接数、超时与错误计数。当 HMI 无法读取 PLC 变量、上位机无法连接 TwinCAT、或跨设备 ADS 路由不通时,ADS Monitor 是第一站。
典型检查顺序是:先确认目标设备的 ADS 路由是否已添加(Add Route),再确认 AMS NetId 是否匹配,然后查看端口是否处于监听状态。TwinCAT 3 中 PLC 运行时通常使用 851 端口,NC 使用 500 端口,I/O 使用 300 端口。若 ADS Monitor 显示某端口连接数持续增长但不释放,可能是客户端未正确关闭连接,长期运行会导致资源耗尽。此时应检查上位机代码中 ADS 句柄的释放逻辑,而不是简单重启 TwinCAT。
四、EtherCAT Diagnostics:从站状态与通信质量
EtherCAT Diagnostics 在 System Manager 中展开 EtherCAT 主站设备后可见,主要观察三类信息:从站状态机(Init、Pre-Op、Safe-Op、Op)、通信质量(Working Counter、帧错误、丢失帧)、以及 DC 分布式时钟同步状态。从站无法进入 Op 状态是最常见的故障之一,可能原因包括:ESI 文件与从站不匹配、过程数据长度配置错误、从站供电不足、或拓扑顺序与配置不一致。
Working Counter 是 EtherCAT 诊断的核心指标。每个过程数据帧经过从站时,从站会对其读写操作递增 Working Counter。若主站期望的 Working Counter 与实际返回值不一致,说明某个从站未正确参与数据交换。例如,配置了 8 个从站,每个从站读操作期望 +1,则正常 Working Counter 应为 8;若实际为 7,说明有 1 个从站未响应。此时可逐个断开从站或查看从站诊断历史,定位具体位置。
| 诊断项 | 正常表现 | 异常表现与可能原因 |
|---|---|---|
| 从站状态 | 全部为 OP | 停留在 SAFE-OP:PDO 配置错误或 DC 未同步 |
| Working Counter | 等于期望值 | 小于期望值:从站掉线、线缆松动、终端电阻缺失 |
| 帧错误计数 | 0 或极低 | 持续增长:电磁干扰、线缆屏蔽不良、接地问题 |
| DC 同步 | 偏差 < 1 μs | 偏差大:从站不支持 DC 或参考时钟配置错误 |
五、Scope View:把动态行为看清楚
Scope View 用于记录和显示高速过程信号,采样周期可配置到微秒级,适合观察 PLC 变量、NC 轴位置/速度、I/O 信号、ADS 变量等随时间的变化。与 Event Logger 的“事件”不同,Scope View 给出的是连续波形,能揭示周期性抖动、阶跃响应、信号毛刺、轴跟随误差等动态问题。
使用 Scope View 的关键是配置记录通道和触发条件。例如,要排查某轴在换向时的跟随误差,可添加 Axis1.ActPos 和 Axis1.SetPos 两个通道,设置采样周期 1 ms,触发条件为 SetPos 变化超过阈值。记录完成后,观察两条曲线的偏差是否在允许范围内。若偏差在换向瞬间突然增大,可能是加减速参数过激或机械间隙;若偏差持续存在,则可能是编码器反馈或增益问题。Scope View 的波形是判断“动态是否正常”的直接依据,但需要结合 NC 参数和机械特性一起分析。
六、System Manager:全局视图与配置核对
System Manager 是 TwinCAT 配置的核心工具,也是诊断的起点。它提供 I/O 映射、EtherCAT 拓扑、从站状态、任务周期、路由表等全局信息。当设备行为异常时,先在 System Manager 中确认:拓扑是否与实物一致、从站是否全部 OP、I/O 变量是否链接正确、任务周期是否满足实时要求。很多“故障”其实是配置错误,例如变量链接到了错误的 I/O 通道,或任务周期设置过长导致响应迟滞。
System Manager 中的 EtherCAT 选项卡还提供从站诊断历史,可查看每个从站的错误计数和状态变化记录。结合 Event Logger 的时间戳,可以还原故障发生前后的完整过程。实际维护中,建议在设备正常运行时保存一份 System Manager 配置和 Event Logger 日志作为基线,故障时对比基线,能更快发现异常。
七、一个综合排障示例
假设某包装机在高速运行时偶发停机,HMI 显示“轴跟随误差过大”。按工具链顺序排查:第一步,打开 System Manager,确认 EtherCAT 拓扑中所有从站均为 OP,无掉线;第二步,查看 Event Logger,发现停机时刻有 NC: Following error exceeded 和 EtherCAT: DC sync error 两条记录;第三步,进入 EtherCAT Diagnostics,发现某伺服从站 DC 同步偏差在 5~10 μs 波动,超出正常范围;第四步,用 Scope View 记录该轴 SetPos 与 ActPos,观察到换向瞬间跟随误差突增到 0.5 mm,随后触发停机。综合判断:DC 同步偏差导致从站采样时刻不稳定,进而使轴在高速换向时跟随误差超限。处理措施是检查 DC 参考时钟配置和从站供电,而非修改 NC 增益。这个例子说明,工具链的价值在于把“现象”逐层还原为“可验证的根因”。