运动伺服关闭 (MSF)
此信息适用于
CompactLogix
5370、ControlLogix
5570、Compact GuardLogix
5370、GuardLogix
5570、Compact GuardLogix
5380、CompactLogix
5380、ControlLogix
5580、GuardLogix
5580 和 ControlLogix 5590 控制器。在适用情况下会注明 controller 的差异。运动伺服关闭 (MSF) 指令用于禁用指定轴的驱动器输出并禁用轴的伺服环。
重要提示:
如果在轴处于运动状态时执行 MSF 指令,轴将凭惯性实现不受控的停止。
架构 | 标准 | 安全 |
|---|---|---|
CompactLogix 5370、ControlLogix 5570、Compact GuardLogix 5370 和 GuardLogix 5570 控制器 | 是 | 否 |
Compact GuardLogix 5380、CompactLogix 5380、ControlLogix 5580、GuardLogix 5580 和 ControlLogix 5590 控制器 | 是 | 否 |
可用语言
梯形图

功能块
此指令不可用于功能块中。
结构化文本
MSF (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 | MOTION_INSTRUCTION | 标签 | 用于访问指令状态参数的结构。 |
有关结构化文本中表达式语法的详细信息,请参阅结构化文本语法。
MOTION_INSTRUCTION 结构
助记符 | 说明 |
|---|---|
.EN (Enable) Bit 31 | 梯级出现假到真跳变时,该位置位,并在伺服消息事务完成且梯级跳变为假之前保持置位状态。 |
.DN (Done) Bit 29 | 当轴的伺服动作被成功禁用且驱动器使能位和伺服激活状态位清零时,此位置位。 |
.ER (Done) Bit 28 | 该位置位时,表明指令检测到错误,例如指定的轴未配置等。 |
说明
MSF 指令用于立即、直接地关闭驱动器输出并禁用所有物理伺服轴上的伺服环。对于非 CIP motion,这会将轴置于“运动状态指令”部分所述的“轴就绪”状态。对于 CIP motion,这会将轴置于“运动状态指令”部分所述的“已停止”状态。此外,MSF 指令将禁用在执行时可能处于激活状态的所有运动轨迹规划器。MSF 指令不需要使用参数 - 仅需输入或选择所需的轴即可。
如果目标轴在可用轴列表中不存在,则该轴尚未配置,不能运行。可使用标签编辑器创建和配置新轴。
必须手动使轴运动时,可使用 MSF 指令关闭伺服动作。即使伺服动作关闭,也将继续跟踪位置。再次启动伺服环后,可通过运动伺服开启 (MSO) 指令在新位置对轴进行闭环控制。
轴停止行为因驱动器类型而异。在某些情况下,轴凭惯性停止;在其他情况下,轴将使用驱动器的可用停止转矩减速停止。
对于非 CIP motion,要成功执行 MSF 指令,目标轴必须配置为“伺服”轴。如果不满足此条件,则指令发生错误。对于虚拟轴,由于伺服动作和驱动器使能状态始终强制为真,因此如果轴类型为“虚拟”,则指令发生错误。对于“消费型”轴数据类型,由于仅生产型控制器可更改消费型轴的状态,因此指令也会发生错误。
重要提示:
由于指令执行需要多个近似更新才能完成请求,因此可能需要执行多次扫描。完成 (.DN) 位不会立即置位,而仅在请求完成后置位。
此外,对于 CIP motion,MSF 指令支持取消运动驱动启动 (MDS) 指令。这包括将 MDS“正在处理”(.IP) 位清零,以及将运动状态属性中的 DirectVelocityControlStatus 位和 DirectTorqueControlStatus 位清零。
在此跳变指令中,每次要执行该指令时,继电器梯形图都会将梯级输入条件由清零切换为置位。
主轴驱动速度控制 (MDSC) 和 MSF 指令
如果在主轴驱动模式下发出 MSF 指令,系统将关闭伺服环。
在伺服环已关闭的轴上,主轴驱动轴控制 (MDAC) 指令的 IP 位不会发生状态变化。
轴随伺服环关闭而停止时,MDAC 指令的 AC 位复位。
影响数学状态标志
否
严重/轻微故障
没有特定于此指令的故障。如果将未初始化的引用或类型不正确的引用传递给轴操作数,则可能发生严重故障。有关操作数相关的故障,请参阅 通用属性。
执行
梯形图
条件 | 梯形图操作 |
|---|---|
预扫描 | .EN、.DN 和 .ER 位清零。 梯级输出条件设置为假。 |
梯级输入条件为假 | 如果 .DN 或 .ER 位为真,.EN 位清零。 |
梯级输入条件为真 | 如果 .DN 或 .ER 位为真,.EN 位设置为假 |
后扫描 | 梯级输出条件设置为假。 |
结构化文本
条件/状态 | 执行的操作 |
|---|---|
预扫描 | 请参见“梯形图”表中的“预扫描”行 |
正常执行 | 请参见“梯形图”表中的“梯级输入条件为假”行,然后参见“梯级输入条件为真”行。 |
后扫描 | 请参见“梯形图”表中的“后扫描”行。 |
错误代码
有关运动指令,请参阅 运动错误代码 .ERR。
扩展错误代码
“扩展错误代码”针对许多指令通用的“错误代码”提供指令特定的附加信息。
MSF 状态位变化
轴状态位
位名称 | 状态 | 含义 |
|---|---|---|
ServoActionStatus | 假 | 轴处于伺服关闭状态,伺服环处于未激活状态。 |
DriveEnableStatus | 假 | 轴驱动器使能输出处于激活状态。 |
运动状态位
位名称 | 状态 | 含义 |
|---|---|---|
AccelStatus | 假 | 轴未处于加速状态。 |
DecelStatus | 假 | 轴未处于减速状态。 |
MoveStatus | 假 | 轴未处于运动状态。 |
JogStatus | 假 | 轴未处于点动状态。 |
GearingStatus | 假 | 轴未处于传动状态。 |
HomingStatus | 假 | 轴未处于归零状态。 |
StoppingStatus | 假 | 轴处于停止状态。 |
PositionCamStatus | 假 | 轴未进行位置凸轮传动。 |
TimeCamStatus | 假 | 轴未进行时间凸轮传动。 |
PositionCamPendingStatus | 假 | 轴没有待处理的位置凸轮。 |
TimeCamPendingStatus | 假 | 轴没有待处理的时间凸轮。 |
GearingLockStatus | 假 | 轴未处于齿轮锁定状态。 |
PositionCamLockStatus | 假 | 轴未处于凸轮锁定状态。 |
DirectVelocityControlStatus | 假 | 轴不受直接速度控制。 |
DirectTorqueControlStatus | 假 | 轴不受直接转矩控制。 |
示例
输入条件为真时,控制器将禁用伺服驱动器,轴伺服环由 Axis0 配置。
梯形图

结构化文本
MSF(myAxis, myMotionControl);
继电器梯形图

结构化文本
MSF(Axis_01,MSF_1);
提供反馈