3. 轴指令(omron 机器自动化控制器)——>MC_MoveRelative
机器自动化控制器——第三章 轴指令 5
- MC_MoveRelative
- 变量
- ▶输入变量
- ▶输出变量
- ▶输入输出变量
- 功能说明
- ▶指令详情
- ▶时序图
- ▶重启运动指令
- ▶多重启动运动指令
- ▶异常
MC_MoveRelative
- 指定自指令当前位置起的移动距离,进行定位。
指令 | 名称 | FB/ FUN | 图形表现 | ST表现 |
---|---|---|---|---|
MC_MoveRelative | 相对值定位 | FB | MC_MoveRelative_instance ( Axis := 《参数》 , Execute := 《参数》 , Distance := 《参数》 , Velocity := 《参数》 , Acceleration := 《参数》 , Deceleration := 《参数》 , Jerk := 《参数》 , BufferMode := 《参数》 , Done => 《参数》 , Busy => 《参数》 , Active => 《参数》 , CommandAborted => 《参数》 , Error => 《参数》 , ErrorID => 《参数》 ); |
变量
▶输入变量
输入变量 | 名称 | 数据类型 | 有效范围 | 初始值 | 内容 |
---|---|---|---|---|---|
Execute | 启动 | BOOL | TRUE, FALSE | FALSE | 在上升沿开始指令。 |
Distance | 移动距离 | LREAL | 负数、正数、“0” | 0 | 指定自指令当前位置起的移动距离。 单位为[指令单位]。 *1 |
Velocity | 目标速度 | LREAL | 正数 | 0 | 指定目标速度。*2 单位为[指令单位/s] 。*1 |
Acceleration | 加速度 | LREAL | 正数或“0” | 0 | 指定加速度。 单位为[指令单位/s2]。*1 |
Deceleration | 减速度 | LREAL | 正数或“0” | 0 | 指定减速度。 单位为[指令单位/s2]。*1 |
Jerk | 跃度 | LREAL | 正数或“0” | 0 | 指定跃度。 单位为[指令单位/s3]。*1 |
BufferMode | 缓存 模式选择 | _eMC_ BUFFER_ MODE | 0: _mcAborting 1: _mcBuffered 2: _mcBlendingLow 3: _mcBlendingPrevious 4: _mcBlendingNext 5: _mcBlendingHigh | 0 *3 | 指定多重启动运动指令时的动作。 0:中断 1:等待 2:以低速合并 3:以前一个速度合并 4:以后一个速度合并 5:以高速合并 |
- 1.关于指令单位,请参阅“NJ/NX系列CPU单元用户手册运动控制篇(SBCE-363)”或“NY系列工业用平板电脑/工业用台式电脑用户手册运动控制篇(SBCE-379)”的“单位转换设定”。
- 2.请务必设定目标速度。不作设定就执行动作,将发生异常。
- 3.有效范围为枚举体的变量,其实际初始值不是数值,而是枚举元素。
▶输出变量
输出变量 | 名称 | 数据类型 | 有效范围 | 内容 |
---|---|---|---|---|
Done | 完成 | BOOL | TRUE, FALSE | 指令执行完毕时变为TRUE。 |
Busy | 执行中 | BOOL | TRUE, FALSE | 接收指令后变为TRUE。 |
Active | 控制中 | BOOL | TRUE, FALSE | 控制中变为TRUE。 |
CommandAborted | 执行中断 | BOOL | TRUE, FALSE | 指令中止时,变为TRUE。 |
Error | 错误 | BOOL | TRUE, FALSE | 发生异常时变为TRUE。 |
ErrorID | 错误代码 | WORD | *1 | 发生异常时,输出错误代码。16#0000为正常。 |
- 1.请参阅“A-1错误代码一览(P.A-2)”。
► 输出变量的反映时间
变量 | 变为TRUE的时间 | 变为FALSE的时间 |
---|---|---|
Done | 定位完成后 | • Execute为TRUE时,与Execute的FALSE同时 • Execute为FALSE时,1个周期后 |
Busy | Execute的上升沿 | • Done变为TRUE时 • Error变为TRUE时 • CommandAborted变为TRUE时 |
Active | 开始指令后 | • Done变为TRUE时 • Error变为TRUE时 • CommandAborted变为TRUE时 |
CommandAborted | • 利用其它指令多重启动运动指令(中断),中止本 指令时 • 因发生异常,中止本指令时 • 发生异常过程中,启动本指令时 • 执行MC_Stop指令中,启动本指令时 | • Execute为TRUE时,与Execute的FALSE同时 • Execute为FALSE时,1个周期后 |
Error | 本指令的启动条件或输入参数中含有异常因素时 | 异常已解除时 |
▶输入输出变量
输入输出变量 | 名称 | 数据类型 | 有效范围 | 内容 |
---|---|---|---|---|
Axis | 轴 | _sAXIS_REF | - | 指定轴。 *1 |
- 1.请使用在SysmacStudio的轴基本设定画面中创建的用户定义变量的轴变量名称(默认“MC_Axis”)或系统定义变量的轴变量名称(_MC_AX[],_MC1_AX[],_MC2_AX[])。
功能说明
- 指定自指令当前位置起的移动距离,进行定位。
- 在Execute(启动)的上升沿,开始相对定位的动作。
- 可在输入变量中指定Velocity(目标速度)、Acceleration(加速度)、Deceleration(减速度)、Jerk(跃度)。
- 相对定位的动作示例如下所示。
- 将加速度、或减速度指定为“0”并启动后,不作加减速而达到目标速度。
- 减速度为“0”时的动作示例如下所示。
- 需要平稳加减速时指定Jerk(跃度)。
- 指定Jerk(跃度)后的动作示例如下所示。
- 关于Jerk(跃度)的详情,请参阅“NJ/NX系列 CPU单元 用户手册 运动控制篇(SBCE-363)”或“NY系列 工业用平板电脑/工业用台式电脑 用户手册 运动控制篇(SBCE-379)”。
▶指令详情
- 计数模式为[旋转模式]时,指定超出轴参数的[环计数器下限设定值]~[环计数器上限设定值]的相对距离范围的Distance(移动距离),可实现环多圈定位。
- 指令当前位置为“-20”、Distance(移动距离)指定为“300”时的动作示例如下所示。
- 将Distance(移动距离)指定为“0”并启动后,轴不发生移动,但是Done(完成)将变为TRUE。
- 使用注意事项
- 定位完成前重启相对值定位时,请注意以下几点。
- 如果在MC功能模块重启前定位已完成,则表现为常规的指令启动。
- 常规指令启动时,在以指令启动时的位置为基准的相对位置进行定位。
- 重启指令时,在以原指令启动时的位置为基准的相对位置进行定位。
► 到位检查
- 根据轴参数的[到位宽度]、[到位检查时间]的设定,进行本指令的到位检查。
▶时序图
- 在启动Execute(启动)的同时,Busy(执行中)变为TRUE。
- 在下一个周期Active(控制中)变为TRUE。
- 达到Distance(移动距离)、定位完成时,Done(完成)变为TRUE。
- 利用其它指令中止本指令时,CommandAborted(执行中断)变为TRUE,Busy(执行中)、Active(控制中)变为FALSE。
▶重启运动指令
- 在定位动作中变更输入变量,再次将Execute(启动)设为TRUE,可变更本指令的动作。
- 重启运动指令可变更的输入变量有Distance(移动距离)、Velocity(目标速度)、Acceleration(加速度)、Deceleration(减速度)。
- 重启时的Distance(移动距离)的起点,并非重启时的指令当前位置,而是最初启动本指令的指令当前位置。
- 在变更Distance(移动距离)和Velocity(目标速度)的同时两次重启运动指令时的动作示例如下所示。
- 使用注意事项
- 即使需要变更Distance(移动距离)以外的输入参数时,也必须在Distance(移动距离)中代入与原指令相同的数值,然后重启指令。
- 例如,如果将Distance(移动距离)的值变更为“0”并重启指令,则将初次启动时的Distance(移动距离)设为“0”并重启指令。
- 因此返回到原来的开始位置。
- 如下图所示。
- 重启运动指令的详情,请参阅“NJ/NX系列 CPU单元 用户手册 运动控制篇(SBCE-363)”或“NY系列 工业用平板电脑/工业用台式电脑 用户手册 运动控制篇(SBCE-379)”。
▶多重启动运动指令
- 多重启动运动指令的详情,请参阅“NJ/NX系列 CPU单元 用户手册 运动控制篇(SBCE-363)”或“NY系列 工业用平板电脑/工业用台式电脑 用户手册 运动控制篇(SBCE-379)”。
► 其它指令执行中的本指令启动
- 对当前正在执行的指令启动本指令,可切换或缓存到本指令。
- 各轴可缓存到1个。
- 多重启动运动指令时的Distance(移动距离)的起点为,启动本指令,Active(控制中)变为TRUE时的指令当前位置。
- 多重启动时的本指令的动作由BufferMode(缓存模式选择)指定。
缓存模式选择 | 说明 |
---|---|
中断 | 立即中止当前正在执行的指令,切换为本指令。 轴的动作方向因指令切换而反转时,根据轴参数中的“反转时动作”进行反转。 |
等待 | 当前正在执行的指令正常完成后,已缓存的本指令自动启动。 |
合并 以低速合并 以前一个速度合 并 以后一个速度合 并 以高速合并 | 以当前正在执行的指令到达目标位置时的速度(中继速度)为启动速度,连续使已缓存的本 指令动作。变更当前正在执行的指令的动作,确保以中继速度到达目标位置。中继速度的 指定方法分为如下4种。 |
当前正在执行的目标速度与已缓存的目标速度中,以速度较低者为中继速度。 | |
以当前正在执行的目标速度为中继速度。 | |
以已缓存的本指令的目标速度为中继速度。 | |
当前正在执行的目标速度与已缓存的目标速度中,以速度较高者为中继速度。 |
- 关于BufferMode(缓存模式选择),请参阅“NJ/NX系列 CPU单元 用户手册 运动控制篇(SBCE-363)”或“NY系列 工业用平板电脑/工业用台式电脑 用户手册 运动控制篇(SBCE-379)”。
► 本指令执行中的其它指令启动
- 对本指令进行多重启动运动指令时,可选择中断、等待、合并
▶异常
- 在执行本指令中发生异常时,Error(错误)变为TRUE,轴停止动作。
- 可查看ErrorID(错误代码)的输出值,了解发生异常的原因。
► 发生异常时的时序图
► 错误代码
- 关于指令发生的异常,请参阅“A-1 错误代码一览(P.A-2)”。