当前所在位置:首页 > 技术知识 > EtherCAT

技术知识

北京盟通科技是工业自动化领域的高科技企业,依托于核心团队多年的海外和行业经验,致力实时现场总线技术及工业通讯技术的推广

EtherCAT抓包分析及故障排除示例

发布时间:2023-03-13

在EtherCAT网络通讯过程中,网络分析和故障排除是开发中必要的一环,但EthaerCAT网络数据包十分复杂,且数据包数量多,数据实时性强。由于这些特性的存在,使得对EtherCAT网络进行分析诊断变得不是件容易的事情。今天,本文就从网络分析和故障排除的角度,演示如何通过软硬件搭配的形式完成对EtherCAT网络的分析。

一、借助专业的硬件进行数据帧分析

EtherCAT网络是一个实时性非常强的网络,网络中的数据帧往往在微秒级,通过抓包分析某个周期的数据。然而如果采用不具备单独时钟的硬件对数据进行抓包,数据包的时间戳将是抓到上位机的系统时间,这就使得数据包的时间戳并不是真实的时间,在对网络进行实时分析是就存在了诸多不便。我们建议客户采用专业的,具有独立时钟的TAP硬件来为数据帧实时的打上时间戳,便于客户对EtherCAT网络进行精确的分析。



 

 

具体的操作流程如下:

我们需要在网络拓扑中,将TAP插入主站和第一个从站之间来抓取数据。TAP也可以插入从站和从站之间,当前版本的EC-Inspector只支持在主从之间插入TAP

将网络数据帧写入PCAP文件。其中,离线分析支持PcapNg文件。

抓取时可以设置触发条件,例如:

▶在检测到任何错误的情况下停止

▶在特定的输入/输出被改变的情况下停止

▶在检测循环过程数据交换中的WKC错误停止


二、基于网络配置文件(ENI)EtherCAT协议的分析和解码


如果您想要更快的了解我们的EC-Inspector软件使用方式,您可以直接观看我们的视频,更快的了解EC-Inspector的工作方式。

 

EC-Inspector可以通过导入已知的网络拓扑文件(ENI文件)来解析网络中实时的数据包信息。该方式可以使用户无需指导快速上手分析EtherCAT网络中的各种信息。


 

为什么EC-Inspector可以通过ENI文件来解析数据包呢?因为ENI文件是EtherCAT技术规范的一部分 (ETG.2100)ENI文件中记录了所有从站的定义,如:循环周期、PDO变量、PDO映射等信息。所有的EtherCAT主站都依据ENI文件作为网络拓扑进行通讯,因此,在ENI文件中可以说集成了整个EtherCAT网络的所有配置信息。有了这些配置信息EC-Inspector基于这些信息对数据包进行解析,就可以快速、准确、无误的为用户提供每个从站的数据帧信息了。


 

只知道了网络中设备的信息,仍然不足以解析数据包。EC-Inspector中集成了EtherCAT网络数据包的组包方式,完全按照协议标准进行数据解析。在用户界面上无需查看繁琐的数据帧软件会自行解析。EC-Inspector对网络数据均已经解析完毕。


 

三、如何在线监控分析网络中数据变量


EC-Inspector中添加变量至Watch List中,即可在watch list标签页下的Chart窗口查看数据的变化。支持所有数据类型、符号、偏移。并且支持对每个从站数据的过滤,在一个图表中最多支持显示500个变量。并且支持这些将据和图表保存为文件。


 

我们可以设置一个或几个变量,当变量的值满足某一条件时停止图表的活动。这种场景可以在长时间运行中抓取EtherCAT网络中错误的表现,并通过这些冻结的图表分析成因。


 

四、如何分析从站的运行状态


基于寄存器AL状态我们可以对从站状态进行评估(0x0130)。同样,可以根据每个从站的错误计数器(ESC0x300寄存器寄存器到0x313)来检查从站运行是否正常。(注意:只有当主服务器请求寄存器时,寄存器的值才能被捕获。从控制器错误寄存器中读取值后即可进行数据的分析。可能发生以下错误情况:当两个设备之间的物理连接中断时,对应的链路丢失计数器将会增加。



数据帧发生错误将导致无效帧计数器包括CRC错误计数器和RX错误计数器增加。


 

其中,硬件错误可以分为两种类型:


CRC错误=帧问题:


▶循环冗余检查整个以太网帧的错误。

▶只能在帧内出现(校验和只对以太网帧进行验证)

CRC错误计数器(无效帧计数器的低字节)


RX错误=传输问题:


▶个别符号错误(特定硬件编码无效)

▶可以发生在帧内部和帧外部(每个物理接口在帧之间传输空闲符号)

RX错误计数器(无效帧计数器的高字节)


五、对于整个从站网络运行状态的辨别和分析


EC-Inspector具备全网络拓扑的图形化视图,我们可以从端口颜色反映连接质量:灰色=/黄色=警告/红色=错误。右侧是整个EtherCAT网络的数据的记录和统计,所有从站的错误计数器和端口信息都在这里展示。

六、快照留存和数据处理步骤


如果您想要对从站进行历史数据的分析,也可以按照快照形式来对数据进行留存和回溯分析。快照操作方式如下图:


步骤1:定义捕获设置

 

步骤2:拍摄快照


步骤3:选择“Capture File for diagnostic

 

步骤4:评估数据


 

七、每个网络周期数据的分步处理


有些情况下,我们需要对整个EtherCAT网络下,某些特定的周期进行逐一的分析。EC-Inspector具备这样的功能,只需要你导入在网络运行时留存的数据包文件(完整的数据文件)和ENI文件。即可精确到某一周期来复现从站的状态。


 

当然,我们可以利用这样的回溯机制,来进行过去某段时间的从站数据帧变化的统计和检测。精确到周期;精确到某一从站的某一变量的详细变化。