[EtherCAT]TwinCAT扫描CIA402例程时会添加3个Axis的情况说明

现象

在SSC Tool中使用配置模板生成ECAT_CIA402例程从站协议栈和从设备描述文件xml,生成出来的协议栈和设备描述文件xml支持2个cia402轴。

但当将生成出来的从站设备描述文件xml复制到TwinCAT中,并连接烧录好cia402程序的EVK板子,进行设备扫描时,我们会发现twinCAT自动添加NC轴配置时,会添加3个Axis。

在TwinCAT中我们将Axis与设备进行绑定,会发现最多只能绑定2个Axis,会多出一个Axis没有设备可与之绑定,这是因为从设备只支持2个Axis。

原因

那为何TwinCAT扫描过程中会添加出3个Axis,这是因为SSC生成出来的从设备描述文件存在一些格式问题。

当从设备的channel支持相同的Profile,不应该同时在Devices/Device和Modules/Module下描述ProfileNo属性。

处理

可以修改xml文件:

  1. 选择移除Modules/Module下ProfileNo属性
  2. 修正Devices/Device下第2个channel的addinfo属性值从“0”到“2”(If ProfileNo = 402, Default AddInfo Value = 2 (Servo drives).)

在TwinCAT中使用更新后的xml再次进行扫描,添加NC轴的时候就会自动添加2个NC轴。
在从设备Device的Slots为其支持的2个Axis分配具体的控制模式后, 即可将其与NC轴连接。

总结

以上问题是TwinCAT在自动添加NC轴时,因为从设备xml的描述问题,认为有3个轴所以添加了3个NC轴。
通过修改从设备描述文件xml可以修正这个问题,当然也可以选择手动添加NC轴,而非自动添加。
该问题带来了一些理解上的误导,但并不影响TwinCAT与从设备之间的实际工作。

修改前后的ECAT_CIA402 xml见附件:ECAT_CIA402 xml
更多关于XML的描述规范可查询ETG网站:ETG2000.EtherCATSlaveInformationSpecification

0
0

订阅

发表回复 0

Your email address will not be published. Required fields are marked *