MC_MoveVelocity

功能块 MC_MoveVelocity
下达一个永远照特定速度移动之运动指令。
VAR_IN_OUT
B AxisIn AXIS_REF 轴的参考。
VAR_INPUT
B Execute BOOL 在上升边缘开始运动。
E ContinuousUpdate BOOL 若为 TRUE,则当功能块 (FB) 正在执行且参数值正被更新时,FB 将使用新值;若为 FALSE,则 FB 不会使用新值。
B Velocity LREAL 指定速度的值,[单位/每秒]。
E Acceleration LREAL 加速度值,单位由 MC_ProfileType 决定(马达的增加能量) [单位/每秒2] 或 [每秒]。
E Deceleration LREAL 减速度值,单位由 MC_ProfileType 决定(马达的减少能量) [单位/每秒2] 或 [每秒]。
E Jerk LREAL 加加速度值。单位由 MC_ProfileType 决定为 [单位/每秒3] 或 [每秒]。
E Direction MC_Direction 轴的移动方向,无法使用 mcShortestWay
E BufferMode MC_BufferMode 定义如何融合两功能块的速度。
VAR_OUTPUT
B InVelocity BOOL 已达到命令之速度。
E Busy BOOL 功能块尚未完成且预期将有新的输出值。
E Active BOOL 功能块正在控制轴。
E CommandAborted BOOL 命令被另一个命令中止。
B Error BOOL 功能块中出现错误的讯号。
E ErrorID MC_Error 错误识别。
  • 要停止运动,功能块 (FB) 必须被另一个发出新命令的 FB 中断。
  • 当功能块被另一个功能块中止时,讯号 InVelocity 必须重置。
  • 更多关于融合模式的运作方式之资讯请见:概念解说 > 融合运动

 

  MC_MoveVelocity  
AXIS_REF   AxisIn   Axis   AXIS_REF
BOOL   Execute   InVelocity   BOOL
BOOL   ContinuousUpdate   Busy   BOOL
LREAL   Distance   Active   BOOL
LREAL   Velocity   CommandAborted   BOOL
LREAL   Acceleration   Error   BOOL
LREAL   Deceleration   ErrorID   MC_Error
MC_Direction   Direction        
MC_BufferMode   BufferMode        
             

下图两个范例为两个 MC_MoveVelocity 功能块组合:

  1. 时序图的左侧部分说明了在 First 功能块 (FB) 完成后呼叫 Second 功能块 (FB) 的情况,若 First 到达命令速度 3000,则输出 First.InVelocity 与信号 Next 会导致 Second FB 移动到速度 2000。下一个周期 First.InVelocity 为 FALSE 且 First.CommandAborted 为 TRUE,因此第二功能块的 Execute 为 FALSE,而一旦轴到达速度 2000,Second.InVelocity 即为 TRUE。

  2. 时序图的右侧部分说明了 Second 移动功能块 (FB) 在 First FB 尚未“InVelocity”时开始执行的情况,将显示以下顺序: GO 在输入“First.Execute”处再次启动 First 运动,当 First FB 仍在加速达到速度 3000 时,因 Test 讯号启动了 Second FB 的 Run,First FB 将被中断并中止,此时 Second FB 运行并将速度减至 2000。

注意:第二 FB 处于 "mcAborting" 模式(若在缓冲模式,速度将在开始下一个功能块时达到 3000)。