MC_MoveAdditive
功能
该功能块根据指定的参数对运动轴执行叠加运动,与MC_MoveRelative的功能非常类似, 但是有些微的差别。 MC_MoveAdditive虽然也是移动相对位置,但是不会叠加速度,只是替换原有的速度,即添加距离。
- Execute 信号由FALSE变为TRUE时,根据传入的运动相关信息,进行轴的插补运动(相对运动),运动完成后 Done 信号变为 true。
输入参数与返回值
参数 | 类别 | 数据类型 | 功能 |
---|---|---|---|
Axis | 输入输出 | AXIS_REF | 轴对象的引用ID |
Execute | 输入 | BOOL | 执行触发信号,上升沿触发 |
ContinuousUpdate | 输入 | BOOL | 是否持续更新 |
Distance | 输入 | REAL | 相对距离 |
Velocity | 输入 | REAL | 速度 |
Acceleration | 输入 | REAL | 加速度 |
Deceleration | 输入 | REAL | 减速度 |
Jerk | 输入 | REAL | 加减速度的变化率 |
BufferMode | 输入 | MC_BUFFER_MODE | 执行模式:0,1,2,3,4,5, 见下面的详细说明 |
Done | 输出 | BOOL | 是否完成 |
Busy | 输出 | BOOL | 当前功能是否正处于工作状态 |
Active | 输出 | BOOL | 是否处于运动状态 |
CommandAborted | 输出 | BOOL | 执行的命令是否被终止 |
Error | 输出 | BOOL | 是否故障 |
ErrorID | 输出 | WORD | 错误的ID号 |
信息
MC_BUFFER_MODE: 当轴尚在运动时,该运动请求的执行方式
- 0 放弃当前运动;
- 1 缓冲当前指令;
- 2 速度混合以两指令的低速度为准;
- 3 速度混合以当前指的速度值为准;
- 4 速度混合以新指令的速度值为准;
- 5 速度混合以两指令的高速度为准
用法示例
MC_MOVEADDITIVE_0(Axis:=IN1, Execute:=IN2, ContinuousUpdate:=TRUE, Distance:=IN3,
Velocity:=IN4, Acceleration:=IN5, Deceleration:=IN6, Jerk:=IN7, BufferMode:=IN8,
Done >=OUT1, Busy >=OUT2, Active >=OUT3, CommandAborted >=OUT4, Error >=OUT5, ErrorID >=OUT6);