程序停止指令
1.指令与功能
程序停止指令用来停止程序的自动运行,RAPID 程序可通过终止(或停止)、退出、移动停止、系统停止 4 种方式,结束程序的自动运行。由于程序一旦停止,系统将无法再进行程序数据的处理,因此,程序停止指令均无程序数据;但部分指令可增加指令添加项,以实现不同的控制目的。
RAPID 程序停止指令的名称及编程格式见表 5.1-2,指令的编程要求和示例如下。
2.程序停止
RAPID 程序可以通过程序终止指令 Break、程序停止指令 STOP 两种方式停止。程序停止时,系统将保留程序的执行状态信息,操作者可通过示教器的程序启动按钮 START 重新启动程序,程序重启后,系统可继续执行停止指令后续的指令。
① 程序终止。利用程序终止指令 Break 停止程序时,系统将立即停止机器人、外部轴移动,并结束程序的自动运行,以便操作者进行所需要的测量检测、作业检查等工作。被终止的程序可通过示教器的程序启动按钮 START 重新启动,以继续执行后续指令。
② 程序停止。利用程序停止指令 STOP 停止程序时,系统将完成当前的移动指令,在机器人、外部轴停止后,结束程序的自动运行。指令可通过添加项\No Regain 或\All Move Tasks,选择以下停止方式之一。
\No Regain:停止点检查功能无效,数据类型 switch。使用添加项\No Regain,程序重启时将不检查机器人、外部轴的当前位置是否为程序停止时的位置,而直接执行后续的指令。不使用添加项时,程序重启时将检查机器人、外部轴的当前位置,如机器人、外部轴已经不在程序停止时的位置,示教器上将显示操作信息,由操作者可选择是否先使机器人、外部轴返回程序停止时的位置。
\All Move Tasks:所有任务停止,数据类型 switch。使用添加项时,可停止所有任务中的程序运行;不使用添加项时,仅停止指令所在任务的程序运行。
程序终止指令 Break、停止指令 STOP 的编程示例如下。
Move J p0, v1000, z30, tool1 ;
Break ; // 程序终止,机器人立即停止
Move J p1, v1000, fine, tool1 ;
Stop ; // 程序停止,到达 p1 后停止
……
3.程序退出
程序退出不但可结束程序的自动运行,还将退出程序循环。程序一旦退出,将立即停止机器人及外部轴的移动,并清除运动轨迹及全部未完成的动作,系统无法再通过示教器的程序启动按钮 START,继续执行后续的指令。
RAPID 程序可以通过退出程序指令 Exit、退出循环指令 Exit Cycle 两种方式退出。
① 退出程序。利用程序退出指令 Exit 退出程序时,系统将立即结束当前程序的自动运行,并清除全部执行状态数据;程序的重新启动必须重新选择程序,并从主程序的起始位置开始重新运行。
② 退出循环。利用退出循环指令 Exit Cycle 退出程序时,系统将立即结束当前程序的自动运行,并返回到主程序的起始位置;但变量或***数据的当前值、运动设置、打开的文件及路径、中断设定等不受影响。因此,如系统选择了程序连续执行模式,便可直接通过示教器的程序启动按钮 START,重新启动主程序。
程序退出指令 Exit、退出循环指令 Exit Cycle 的编程示例如下。
……
IF di0 = 0 THEN
Exit ; // 退出程序
ELSE
Exit Cycle ; // 退出循环
ENDIF
ENDPROC
4.移动停止
移动停止指令可以暂停或结束当前指令的机器人和外部轴移动,运动停止后,系统可继续执行后续其他指令,机器人和外部轴的移动可通过指令恢复。机器人和外部轴是否处于移动停止状态,可通过 RAPID 函数命令 Is Stop Move Act 检查,如果处于移动停止状态,命令的执行结果将为 TRUE,否则为 FALSE。
移动暂停指令 StopMove、恢复移动指令 StartMove 也经常用于后述的程序中断控制,以便进行程序轨迹的存储、恢复及重启,有关内容可参见第 5.2 节。
RAPID 程序可以通过移动暂停指令 StopMove、移动结束指令 StopMoveReset 两种方式停止机器人和外部轴运动。
① 移动暂停。移动暂停指令 StopMove 可暂停当前指令的机器人和外部轴移动,运动停止后,系统可继续执行后续其他指令;指令中的剩余行程可通过恢复移动指令 StartMove 恢复。指令可通过以下添加项选择停止方式。
\Quick:快速停止,数据类型 switch。不使用添加项时,机器人、外部轴为正常的减速停止;使用添加项后,机器人、外部轴以动力制动的形式快速停止。
\AllMotionTasks:所有任务停止,数据类型 switch。该添加项仅用于非移动任务,使用添加项时,可停止同步执行所有任务中的机器人、外部轴运动。
② 移动结束。移动结束指令 StopMoveReset 将暂停当前指令的机器人和外部轴的移动,并清除剩余行程;运动恢复后,将启动下一指令的机器人和外部轴移动。指令添加项的含义与移动暂停指令 StopMove 相同。
移动暂停指令 StopMove、移动结束指令 StopMoveReset 的编程示例如下。
IF di0 = 1 THEN
Stop Move ; // 移动暂停
Wait DI di1, 1 ;
StartMove ; // 移动恢复
ELSE
Stop Move Reset ; // 移动结束
ENDIF
……
5.系统停止
系统停止指令 System Stop Action 可通过添加项选择控制系统的程序停止方式,添加项的含义如下。
\Stop:正常停止,数据类型 switch。使用该添加项时,系统将结束程序的自动运行和机器人、外部轴移动;程序可以按照正常操作重启。
\Stop Block:程序段结束,数据类型 switch。使用该添加项时,系统将结束程序的自动运行和机器人、外部轴移动;程序重启时,必须重新选定重启的指令(程序段)。
\Halt:伺服关闭,数据类型 switch。使用该添加项时,系统在结束程序的自动运行和机器人、外部轴移动的同时,将关闭伺服;程序重启时,必须重新启动伺服。
移动暂停指令 Stop Move、移动结束指令 Stop Move Reset 的编程示例如下。
IF di0 = 1 THEN
System Stop Action \Stop ; // 正常停止
ELSE
System Stop Action \Halt ; // 伺服关闭
ENDIF
了解更多库卡机器人知识欢迎点击咨询:库卡机器人集成
……
- 下一篇:库卡机器人的程序跳转与指针复位指令
- 上一篇:库卡机器人如何编辑程序等待指令