机器自动化控制器------第三章 轴指令 13
MC_ResetFollowingError
- 对指令当前位置和反馈当前位置的偏差进行复位。
指令 | 名称 | FB/ FUN | 图形表现 | ST表现 |
---|---|---|---|---|
MC_ResetFollowingError | 偏差 计数器 复位 | FB | ![]() |
MC_ResetFollowingError_instance ( Axis :=《参数》 , Execute :=《参数》 , BufferMode :=《参数》 , Done =>《参数》 , Busy =>《参数》 , Active =>《参数》 , CommandAborted =>《参数》 , Error =>《参数》 , ErrorID =>《参数》 ); |
变量
▶输入变量
输入变量 | 名称 | 数据类型 | 有效范围 | 初始值 | 内容 |
---|---|---|---|---|---|
Execute | 启动 | BOOL | TRUE, FALSE | FALSE | 在上升沿开始指令。 |
BufferMode | 缓存 模式选择 | eMC_BUFFER MODE | 0: _mcAborting | 0 *1 | 指定多重启动运动指令时的动作。 0:中断 |
-
- 有效范围为枚举体的变量,其实际初始值不是数值,而是枚举元素。
▶输出变量
输出变量 | 名称 | 数据类型 | 有效范围 | 内容 |
---|---|---|---|---|
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为正常。 |
-
- 请参阅 "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_ResetFollowingError指令多重启 动运动指令(中断),中断本指令时 • 因发生异常,中止本指令时 • 发生异常过程中,启动本指令时 | • Execute为TRUE时,与Execute的FALSE同时 • Execute为FALSE时,1个周期后 |
Error | 本指令的启动条件或输入参数中含有异常因素时 | 异常已解除时 |
▶输入输出变量
- 1.请使用在Sysmac Studio的轴基本设定画面中创建的用户定义变量的轴变量名称(默认 "MC_Axis***")或系统定义变量的 轴变量名称(_MC_AX[], _MC1_AX[], _MC2_AX[*])。
输入输出变量 | 名称 | 数据类型 | 有效范围 | 内容 |
---|---|---|---|---|
Axis | 轴 | _sAXIS_REF | - | 指定轴。 *1 |
功能说明
- 利用本指令,可在周期同步位置模式下,使MC功能模块的指令当前位置和反馈当前位置的偏差为"0"。
- 检测出Execute(启动)的上升沿时,将该时的反馈当前位置作为新的目标位置,赋予指令位置。
- 例如,如下图所示,在发生位置偏差的接触动作中启动本指令时,朝相反方向发出位置指令,使位置偏差为"0"。
- 对于发生位置偏差的指令,CommandAborted(指令中断)变为TRUE,指令中止执行。
- 将位置偏差设为"0"时,利用轴参数设定的最高速度,发出位置指令。
- 最大加速度、最大减速度不适用。
- 到达新的目标位置而完成指令时,输出变量"Done(完成)"变为TRUE。
- 本指令朝与发生位置偏差的动作相反的方向发出位置指令,但是不适用于轴参数的"反转时动作"。
- 使用注意事项
- 请在轴速度较低的状态下启动本指令。
- 本指令朝上一指令(接触方向)相反方向赋予指令值。
- 因此,如果在轴速度较高的状态下启动本指令,可能对机器造成冲击。
- 对于垂直轴等需要持续施加扭矩的轴使用本指令时,请确认在启动本指令后不会发生扭矩不足现象后再使用。
- 使用NX系列脉冲输出单元时,脉冲输出单元连接的伺服驱动器内的偏差无法复位。
- 详情请参阅"NX系列 位置接口单元 用户手册(SBCE-374)"。
- 针对同步控制的主轴使用本指令时
对于同步控制的主轴,并且将指令位置作为同步数据使用的情况下,针对主轴启动本指令时,从轴 根据齿轮比和凸轮数据变量进行反转。
敬请注意。
有关对于主轴的注意事项,请参阅"同步控制的主轴及辅轴的注意事项(P.1-6)"。
▶指令详情
- 下面对指令详细说明。
► 可使用轴和启动条件
- 伺服轴或虚拟伺服轴可用于如下场合。
- 单轴的位置控制中MC_MoveVelocity(速度控制)指令同步控制中 编码器轴、虚拟编码器轴则会发生启动时异常。
► 轴变量的状态
- 轴变量的状态Status.Stopping(减速停止中)变为TRUE。
► 在控制模式切换中启动本指令
- 执行MC_TorqueControl(转矩控制)指令或MC_SyncMoveVelocity(周期性同步速度控制)指令时,如果在执行控制模式变为位置控制模式的指令,实际切换至位置控制模式之前的时间段内启动本指令,则根据CPU单元的版本,偏差为"0"的时间如下所示。
► Ver.1.10以上版本的CPU单元时
- 切换至位置控制模式后,将指令当前位置和反馈当前位置的偏差设为"0"。
► Ver.1.09以下版本的CPU单元时
- 启动本指令时,将指令当前位置和反馈当前位置的偏差设为"0"。
- 控制模式切换的详情请参阅"MC_TorqueControl(P.3-305)"及"MC_SyncMoveVelocity(P.3-360)"。
▶时序图
- 启动MC_MoveAbsolute(绝对值定位)指令后,在接触状态下启动本指令时的时序图如下所示。
▶重启动运动指令
- 无法重启本指令。
- 重启后,将发生"无法重启运动指令(错误代码:543B Hex)"错误。
▶多重启运动指令
- 多重启动运动指令的详情,请参阅"NJ/NX系列 CPU单元 用户手册 运动控制篇(SBCE-363)"或"NY系列 工业用平板电脑/工业用台式电脑 用户手册 运动控制篇(SBCE-379)"。
► 其它指令执行中的本指令启动
- 对当前正在执行的指令启动本指令,可切换或缓存到本指令。
- 各轴可缓存到1个。
- 多重启动时的本指令的动作由BufferMode(缓存模式选择)指定。
缓存模式选择 | 说明 |
---|---|
中断 | 立即中止当前正在执行的指令,切换为本指令。 |
- 关于BufferMode(缓存模式选择),请参阅"NJ/NX系列 CPU单元 用户手册 运动控制篇(SBCE-363)"或"NY系列 工业用平板电脑/工业用台式电脑 用户手册 运动控制篇(SBCE-379)"。
► 与MC_Stop(强制停止)指令的关系
- MC_Stop(强制停止)指令执行中启动MC_ResetFollowingError(偏差计数器复位)指令时,MC_Stop(强制停止)指令的Done变为TRUE,执行MC_ResetFollowingError(偏差计数器复位)指令。
► 本指令执行中的其它指令启动
- 本指令执行中处于减速停止中。
- 因此,请启动可在减速停止中多重启动的指令。
- 对于无法启动的指令,本指令的CommandAborted(执行中断)变为TRUE。
► 与MC_Stop(强制停止)指令的关系
- MC_ResetFollowingError(偏差计数器复位)指令执行中启动MC_Stop(强制停止)指令时,MC_ResetFollowingError(偏差计数器复位)指令的CommandAborted(执行中断)变为TRUE,执行MC_Stop(强制停止)指令。
- 但是,MC_Stop(强制停止)指令的减速度不适用,表现为立即停止。
▶异常
- 本指令执行中发生异常时,立即停止,CommandAborted(执行中断)变为TRUE。
- 此外,启动本指令时检测到异常时,Error(错误)变为TRUE。
- 可查看ErrorID(错误代码)的输出值,了解发生异常的原因。
- 启动MC_MoveAbsolute(绝对值定位)指令后,在接触状态下启动本指令发生异常时的时序图如下所示。
► 错误代码
- 关于指令发生的异常,请参阅"A-1 错误代码一览(P.A-2)"。