CIA402从会到不会——位置模式(3)
详细了解EtherCAT中的COE协议,以及CIA402各个模式控制的细节
周期同步位置模式 —— Cyclic Synchronous Position Mode
周期同步位置模式为各类实时总线下最常见的控制模式。
在该模式(CSP)下,上位机会规划好运动路径并根据总线周期定时发送PDO数据。
在传送每一笔PDO时,会同时传送目标位置(target position)和控制指令(controlword)的数据至驱动器。此外,速度补偿(velocity offset)和扭矩补偿(torque offset)可作为速度及扭矩前馈控制设定。
控制框图

控制框图可以大而全的让我们了解到CSP模式所用到的各种参数及以及他们之间的关系。
可以明确当我们需要使用CSP模式对驱动器进行位置控制时,需要给定什么参数,以及会得到什么反馈。
操作步骤
第一步:设定操作模式:OD 6060h = 08 (周期同步位置模式)
第二步:设定目标位置:OD 607Ah(目标位置,单位:PUU)(PUU指经过伺服电子齿轮比转换后的单位)
第三步:(该步骤可以在设定参数之前)伺服使能,即让伺服进入运行状态。
需要对OD 6040h(控制字)做如下操作:0x06 -> 0x07 -> 0x0F(参考《CIA402从会到不会——状态机》部分内容。)
第四步:读取驱动器信息,判断运行状态。
读取驱动器信息:
读取OD 6064h 取得电机位置回授。
读取OD 6041h 取得驱动器的状态。
位置规划模式 —— Profile Position Mode
位置规划模式为常见的伺服进行位置控制的模式。
在该模式下,上位机(指控制器)会在动作开始之前,通过指定的OD(对象字典)告知驱动器目标位置、目标速度与加速度等相关的参数,然后再下发动作指令。
在指令触发到到达目标位置这中间的运动规划,都由驱动器内部自行规划,上位机不参与其中。
控制框图

控制框图可以大而全的让我们了解到PP模式所用到的各种参数及以及他们之间的关系。
可以明确当我们需要使用PP模式对驱动器进行位置控制时,需要给定什么参数,以及会得到什么反馈。
操作步骤
第一步:设定操作模式:OD 6060h = 0x01 (位置规划模式)
第二步:设定目标位置:OD 607Ah(目标位置,单位:PUU)(PUU指经过伺服电子齿轮比转换后的单位)
第三步:设定速度命令:OD 6081h(目标速度,单位:PUU/s)
第四步:设定加速时间斜率:OD 6083h(单位:ms)
第五步:设定减速时间斜率:OD 6084h(单位:ms)
第六步:(该步骤可以在设定参数之前)伺服使能,即让伺服进入运行状态。
需要对OD 6040h(控制字)做如下操作:0x06 -> 0x07 -> 0x0F(参考《CIA402从会到不会——状态机》部分内容。)
第七步:设置命令生效时机(OD 6040h bit5)和命令类型(OD 6040h bit6)。
第八步:触发位置命令(OD 6040h bit4)
第九步:读取驱动器信息,判断运行状态。
读取驱动器信息:
读取OD 6064h 取得电机位置回授。
读取OD 6041h 取得驱动器的状态。
命令是否立即生效
在位置规划模式下,有两种命令生效指令,“立即生效”或“非立即生效”,可通过OD 6040h bit 5将进行设定。
Bit4 ~ Bit6 各操作模式下的定义
| 位 | Profile Position Mode (位置规划模式) |
Homing Mode (原点复归模式) |
其他模式 |
|---|---|---|---|
| bit4 | 命令触发(上升沿有效) | 原点复归(上升沿有效) | - |
| bit5 | 0:命令非立即生效 1:命令立即生效 |
- | - |
| bit6 | 0:绝对位置命令 1:相对位置命令 |
- | - |
非立即生效命令(OD 6040h bit5设为0)
在未开启立即生效功能的情况下,若当前运动命令仍在执行 (尚未完成),即使新的命令被触发,伺服仍会继续执行当前的运动命令。只有在当前命令执行完成后,新的命令才会被伺服认证并执行。

立即生效命令(OD 6040h bit5设为1)
在开启立即生效功能的情况下,若当前运动命令仍在执行 (尚未完成),一旦伺服接收到新的命令触发,伺服会立即打断当前的命令,并执行新的命令。

相关OD对象列表
| 索引 | 名称 | 数据类型 | 读写权限 |
|---|---|---|---|
| 6040h | Controlword(控制字) | UINT16 | RW |
| 6041h | Statusword(状态字) | UINT16 | RO |
| 6060h | Modes of operation(操作模式) | INT8 | RW |
| 6061h | Modes of operation display(操作模式显示) | INT8 | RO |
| 6064h | Position actual value(实际位置) | INT32 | RO |
| 607Ah | Target position(目标位置) | INT32 | RW |
| 6081h | Profile velocity(目标速度) | INT32 | RW |
| 6083h | Profile acceleration(目标加速度) | INT32 | RW |
| 6084h | Profile deceleration(目标减速度) | INT32 | RW |