这个功能块位于函数库 ⇘ SM3_Basic.library。用于控制一个轴运动一个相对位置,此位置是最近的 ⇘ 分离轴状态下运动到的位置。最常用的位置命令是通过 MC_MoveAdditive 运动中止的位置。如果功能块激活 ⇘ 连续运动,特定的附加运动将会被增加到当前轴上被进行处理。
类型 |
初始值 |
描述 |
|
---|---|---|---|
VAR_IN_OUT |
|||
Axis |
AXIS_REF |
|
映射到轴,参阅 ⇘ AXIS_REF_SM3 |
VAR_INPUT |
|||
Execute |
BOOL |
FALSE |
此输入的一个上升沿将启动功能块的处理 |
Distance |
LREAL |
0 |
运动的相对位置 (以unit [u]为单位) |
Velocity |
LREAL |
0 |
最大速度值 (通常为正值) (不是必须指定) [u/s] |
Acceleration |
LREAL |
0 |
最大加速度值 (通常为正值) (不是必须指定)[u/s2] |
Deceleration |
LREAL |
0 |
最大减速度值 (通常为正值) (不是必须指定) [u/s2] |
VAR_OUTPUT |
|||
Done |
BOOL |
FALSE |
TRUE,如果命令位置达到 |
Busy |
BOOL |
FALSE |
TRUE,如果功能块的处理没有完成 |
CommandAborted |
BOOL |
FALSE |
TRUE,如果命令被另一个命令中断 |
Error |
BOOL |
FALSE |
功能块内部发生错误信号 |
ErrorID |
SMC_ERROR |
0 |
错误ID,参阅 ⇘ SMC_Error |
示例:
以下表格中显示了两个功能块 MC_MoveAdditive的实例连接 ("First" 和"Second") 并且轴是位于连续控制模式下:
时间动态分析的左半部分中实例 "Second" 是在实例 "First"之后进行的调用。当第一个命令达到位置 6000 (并且速度为0),输出Done将会启动"Second" 的处理并达到位置10000。
时间动态分析的右半部分中说明启动 "Second" 时 "First " 仍旧在进行处理。在这种情况下第一个运动控制被打断并且会被Test信号终止,并按照 "First"速度进行处理。当附加一个距离 4000 在原来的位置 60000上,第二个功能块将轴移动到位置10000。