运动伺服开启 (MSO)
此信息适用于
CompactLogix
5370、ControlLogix
5570、Compact GuardLogix
5370、GuardLogix
5570、Compact GuardLogix
5380、CompactLogix
5380、ControlLogix
5580、GuardLogix
5580 和 ControlLogix 5590 控制器。在适用情况下会注明 controller 的差异。运动伺服开启 (MSO) 指令用于激活指定轴的驱动放大器并激活轴的伺服控制环。
架构 | 标准 | 安全 |
|---|---|---|
CompactLogix 5370、ControlLogix 5570、Compact GuardLogix 5370 和 GuardLogix 5570 控制器 | 是 | 否 |
Compact GuardLogix 5380、CompactLogix 5380、ControlLogix 5580、GuardLogix 5580 和 ControlLogix 5580 控制器 | 是 | 否 |
可用语言
梯形图

功能块
此指令不可用于功能块中。
结构化文本
MSO(Axis,MotionControl);
操作数
梯形图和结构化文本
操作数 | 类型 CompactLogix 5370, Compact GuardLogix 5370, Compact GuardLogix 5380, CompactLogix 5380 | 类型 ControlLogix 5570、GuardLogix 5570、ControlLogix 5580、GuardLogix 5580,以及 ControlLogix 5590 控制器 | 格式 | 说明 |
|---|---|---|---|---|
Axis | AXIS_CIP_DRIVE | AXIS_CIP_DRIVE AXIS_GENERIC AXIS_GENERIC_DRIVE AXIS_SERVO AXIS_SERVO_DRIVE
小贴士:
仅
ControlLogix 5570 和 GuardLogix 5570 控制器支持 AXIS_GENERIC。 | 标签 | 要对其执行操作的轴的名称。对于支持 REF_TO 运动数据类型的控制器,支持的轴操作数类型可以替换为等效的 REF_TO 类型。 |
Motion Control | MOTION_INSTRUCTION | 标签 | 用于访问指令状态参数的结构。 |
有关结构化文本中表达式语法的详细信息,请参阅结构化文本语法。
助记符 | 说明 |
|---|---|
.EN (Enable) Bit 31 | 梯级出现假到真跳变时,该位置位,并在伺服消息事务完成且梯级跳变为假之前保持置位状态。 |
.DN (Done) Bit 29 | 轴伺服动作成功使能且驱动器使能和伺服激活状态位置位后,该位置位。 |
.ER (Error) Bit 28 | 该位置位时,表明指令检测到错误,例如指定的轴未配置等。 |
说明
MSO 指令可直接激活驱动器,使能与物理伺服轴相关的已配置伺服环。该指令可用于程序中的任意位置,但不可在轴运动时使用。如果尝试执行该操作,则 MSO 指令会生成“轴运动中”错误。
MSO 指令通过激活驱动器和相关伺服环自动使能指定的轴。对于非 CIP 轴,得到的轴状态称为“伺服控制”状态。对于 CIP 轴,得到的轴状态称为“运行”状态。
该指令最常见的用途是在指定轴的当前位置激活其伺服环,为给定运动做准备。
重要提示:
由于指令执行需要多个近似更新才能完成请求,因此可能需要执行多次扫描。完成 (.DN) 位不会立即置位,而仅在请求完成后置位。
在此跳变指令中,每次要执行该指令时,继电器梯形图都会将梯级输入条件由清零切换为置位。
影响数学状态标志
否
严重/轻微故障
没有特定于此指令的故障。如果将未初始化的引用或类型不正确的引用传递给轴操作数,则可能发生严重故障。有关操作数相关的故障,请参阅 通用属性。
执行
梯形图
条件/状态 | 执行的操作 |
|---|---|
预扫描 | .EN、.DN 和 .ER 设置为假。 |
梯级输入条件为假 | 如果 .DN 或 .ER 位为真,则 .EN 位设置为假。 |
梯级输入条件为真 | .EN 位设置为真,指令执行。如果 EN 位设置为假,则不执行任何动作。 |
后扫描 | 不适用 |
结构化文本
条件/状态 | 执行的操作 |
|---|---|
预扫描 | 请参见“梯形图”表中的“预扫描”行 |
正常执行 | 请参见“梯形图”表中的“梯级输入条件为假”行,然后参见“梯级输入条件为真”行。 |
后扫描 | 请参见“梯形图”表中的“后扫描”行。 |
错误代码
有关运动指令,请参阅 运动错误代码 .ERR。
扩展错误代码
“扩展错误代码”针对许多指令通用的“错误代码”提供指令特定的附加信息。有关运动指令,请参阅 运动错误代码 .ERR。以下扩展错误代码有助于在 MSO 指令收到伺服消息故障 (12) 错误消息时确定问题所在。
扩展错误代码(十进制) | 相关错误代码(十进制) | 含义 |
|---|---|---|
对象模型冲突 (12) | SERVO_MESSAGE_FAILURE (12) | 轴关闭。 |
过程根据请求终止 (15) | SERVO_MESSAGE_FAILURE (12) | 使能输入切换错误。(SERCOS) |
设备所处状态不正确 (16) | SERVO_MESSAGE_FAILURE (12) | 动作的设备状态错误。(SERCOS) |
MSO 状态位变化
轴内部状态位
位名称 | 状态 | 含义 |
|---|---|---|
ServoActionStatus | 真 | 轴处于伺服控制状态,伺服环处于激活状态。 |
DriveEnableStatus | 真 | 轴驱动器使能输出处于激活状态。 |
运动状态位
无
示例
示例 1
梯形图

结构化文本
MSO(myAxis, myMotionControl);
示例 2
继电器梯形图

结构化文本
MSO(Axis_01,MSO_1);
提供反馈