MC_GroupStop

功能块 MC_GroupStop
命令控制的运动停止并将轴组状态转换为 GroupStopping,其中断所有正在执行中的功能块,当轴组处于 GroupStopping 状态时,没有其他功能块可以在同一个轴组上执行任何运动,当轴组到达速度零时,Done 输出将立即设为 TRUE。只要 Execute 为 TRUE 或未达到速度零,轴组将维持在 GroupStopping 状态,而一旦 Done 为 TRUE 且 Execute 为 FALSE,轴组就会进入GroupStandBy 状态。此命令仅可由 MC_GroupDisable 中止。
VAR_IN_OUT
B GroupIn AXES_GROUP_REF 轴组的参考,参考以零为起点,最多可有 32 个轴组。
VAR_INPUT
B Execute BOOL 在上升边缘开始动作。
E Deceleration LREAL 减速度值,单位由 MC_ProfileType 决定,为 [单位/每秒2] 或 [每秒]。
E Jerk LREAL 加加速度值。单位由 MC_ProfileType 决定,为 [单位/每秒3] 或 [每秒]。
VAR_OUTPUT
B Done BOOL 所有轴停止。
E Busy BOOL 功能块未结束。
E CommandAborted BOOL 命令使用 MC_Power 停止以停用轴组中的一个或多个轴,状态变更为 GroupDisabled。
B Error BOOL 功能块中出现错误的讯号。
E ErrorID MC_Error 错误识别。
  • 每个轴都以最快速度减速。
  • Deceleration 设为零,导致的动作为供应商特定的。
  • 若函式在 MoveXxx 命令期间发送,则使用每个轴的速度/加速度/减速度/加加速度值,而不会使用此函式中指定的值,轴组运动曲线不超过每个轴的安全运动曲线。
  • 发送 MC_GroupStop 以取消轴组与主站装置的所有同步。

 

  MC_GroupStop  
AXES_GROUP_REF   GroupIn   Group   AXES_GROUP_REF
BOOL   Execute   Done   BOOL
LREAL   Deceleration   Busy   BOOL
LREAL   Jerk   CommandAborted   BOOL
        Error   BOOL
        ErrorID   MC_Error
             

 

MC_GroupStop 的典型时序图可见以下,包含相关的状态及状态转换。

以下范例说明使用 MC_MoveLinearRelative 组合的行为。

a) 线性运动中的轴组使用 MC_GroupStop 下降,轴组停在原路径。

b) 只要 MC_GroupStop 参数 “Execute” = TRUE,轴组即拒绝运动命令,FB MC_MoveLinearRelative 回报错误,表示 MC_GroupStop 命令忙碌。此错误属 FB 错误,因此轴组不会移动到 GroupErrorStop 状态。

在第三 “Exe1” 上升边缘轴组将开始下一个运动。

以下范例说明 MC_GroupStop 与两个 MC_MoveLinearAbsolute 的组合之行为,其以定义的连续路径速度融合:

t0) MyAxesGroup 轴组上的两个 FB MC_MoveLinearAbsolute 被下达命令,第一个 FB 立即变为启动状态,MyAxesGroup 开始从实际位置 (20.0; 20.0) 向第一个目标位置移动。

t1) 工具中心点开始在混合轮廓(Lin1 混合到 Lin2)上移动后不久,于 mcAborting 缓冲模式下发送一个 FB MC_GroupStop,轴组状态从 GroupMoving 变更为 GroupStopping;MyAxesGroup 减速直到速度为零,而轴组的终点保持在轮廓上。

注意:虽然 MyAxesGroup 的路径速度在停止时不断减低,但由于 MyAxesGroup 的给定路径和运动学转换,轴组中的单轴在减速开始到轴组停止过程间可能会加速。

t2) MyAxesGroup 来到 Standstill 状态,FB MC_GroupStopDone 输出已设定,因 FB MC_GroupStopExecute 输入仍设定著,轴组将停留在 GroupStopping 状态。

t3)FB MC_GroupStopExecute 输入已重置,FB MC_GroupStop 的所有输出已重置,轴组状态变更为 GroupStandby。

 

MyAxesGroup 之路径

 

MC_GroupStop 与两个 MC_MoveLinearAbsolute 的组合范例