MC_MoveContinuousAbsolute

功能块 MC_MoveContinuousAbsolute
命令控制的运动至指定的绝对位置,并以指定的速度结束。
VAR_IN_OUT
B AxisIn AXIS_REF 轴的参考。
VAR_INPUT
B Execute BOOL 在上升边缘开始运动。
E ContinuousUpdate BOOL 若为 TRUE,则当功能块 (FB) 正在执行且参数值正被更新时,FB 将使用新值;若为 FALSE,则 FB 不会使用新值。
B Position LREAL 运动的命令位置 [每秒](正或负)。
B Velocity LREAL 最大速度值 [单位/每秒]。
B EndVelocity LREAL 结束速度值,为带正负号的值,[每秒]。
E Acceleration LREAL 加速度值,单位由 MC_ProfileType 决定为 [单位/每秒2] 或 [每秒]。
E Deceleration LREAL 减速度值,单位由 MC_ProfileType 决定为 [单位/每秒2] 或 [每秒]。
E Jerk LREAL 加加速度值。单位由 MC_ProfileType 决定为 [单位/每秒3] 或 [每秒]。
E Direction MC_Direction 轴的移动方向。
E BufferMode MC_BufferMode 定义如何融合两功能块的速度。
VAR_OUTPUT
B InEndVelocity BOOL 已达到指令位置且依要求的结速速度执行。
E Busy BOOL 功能块尚未完成且预期将有新的输出值。
E Active BOOL 功能块正在控制轴。
E CommandAborted BOOL 命令被另一个命令中止。
B Error BOOL 功能块中出现错误的讯号。
B ErrorID MC_Error 错误识别。
  • 若到达命令位置且没有新的运动命令置入缓冲,则轴继续以指定的 EndVelocity 执行。
  • 连续的运动状态代表其不会自己停止。
  • EndVelocity 小于 Velocity,轴将在到达命令位置后使用 EndVelocity 执行;若 EndVelocity 大于 Velocity,轴将使用 Velocity 执行。
  • 若在这些功能块上使用了 BufferMode,则此功能块可由 MC_MoveAbsoluteMC_MoveVelocity 的组合来替换。
  • 目前 MC_MoveContinuousAbsolute 无法倒转轴的方向。

 

  MC_MoveContinuousAbsolute  
AXIS_REF   AxisIn   Axis   AXIS_REF
BOOL   Execute   InEndVelocity   BOOL
BOOL   ContinuousUpdate   Busy   BOOL
LREAL   Position   Active   BOOL
LREAL   Velocity   CommandAborted   BOOL
LREAL   EndVelocity   Error   BOOL
LREAL   Acceleration   ErrorID   MC_Error
LREAL   Deceleration        
LREAL   Jerk        
MC_Direction   Direction        
MC_BufferMode   BufferMode        
             

MC_MoveContinuousAbsolute 的一个使用案例为直线切割器:

一线性轴,带有用于切割工件的雷射装置。

在切割过程中,雷射必须以固定速度移动,无法容许加速或减速阶段,切割完成后雷射必须回到其等待位置。

此可透过功能块 MC_MoveContinuousAbsolute 以下列方式达成:

 

由 xStartCuttingCycle 的上升边缘开始,MC_MoveContinuousAbsolute 之实例 "mca" 会将轴以 lrFastVelocity 移动至 lrStartCutPos,当再次到达 lrStartCutPos 时以 lrCutVelocity 速度负方向返回,此时 InEndVelocity 已设定好,雷射已开启,因无其他运动功能块干扰此运动,MC_MoveContinuousAbsolute 将以当前速度持续以负方向移动,在轴超过位置 lrEndPos 后,雷射关闭,MC_MoveAbsolute 实例 “ma” 将轴高速移动到其闲置位置: