【EtherCAT电机板】CiA402增加cst模式

发布于:2024-06-17 ⋅ 阅读:(28) ⋅ 点赞:(0)

在EtherCAT电机板上实现cst功能,在xml中增加cst相关pdo,在402程序增加cst模式。

1、XML配置修改

       cst模式需要用到目标转矩和反馈实际转矩PDO,结合CiA402手册,这两个PDO对应的索引号分别为:0x6071(Target torque)、0x6077(Torque actual value)

1)更改索引

增加变量对应于输出映射索引0x1600和0x1a00的,因此需要更改对应据类型:

增加第5SubItem,重新修改数据类型的BitSize

2)更改数据字典对象表

增加0x6071和0x6077数据索引,已有:

   更改0x1A00数据对象--输出映射表TxPDO增加SubIndex005,索引号为10007760,其中“6077”代表Torque actual value映射索引号,“00”代表索引6077的第0位SubIdx,“10”代表数据大小,16位。注意:在xml中写的顺序与实际不同。同时修改相应的BitSize=16+32*5=176.

   更改0x1600数据对象--输出映射表RxPDO增加SubIndex005,索引号为10007160,其中“6071”代表Target torque映射索引号,“00”代表索引6071的第0位SubIdx,“10”代表数据大小,16位。注意:在xml中写的顺序与实际不同。同时修改相应的BitSize=16+32*5=176.

3)定义PDO传输

修改TxPDO:

修改RxPDO:

2、STM32程序更改

在cia402appl.h中修改对象描述,包括更改本地存储变量、表项描述、对象名字以及对象描述。

1)更改本地存储变量

更改0x1600本地存储变量

更改1600结构体

更改0x1A00本地存储变量

更改0x1A00结构体

2)更改表项描述

更改0x1600表项描述

更改0x1A00表项描述

3)更改对象描述

需要特别注意数据要与子索引最大值相对应。

4)应用层程序更改

在APPL_InputMapping()中更改:

在APPL_Application()更改

在CiA402_DummyMotionControl()中增加cst应用程序。

3、测试验证

利用TwinCAT主站更新xml,并带电机进行cst模式测试:

设定运行模式modeofoperation=10,给定TargetTorque一定值,观察电机变化。

EtherCAT开发学习板:https://shop461235811.taobao.com