『7x24小时有问必答』

在工业机器人的实战编程中,你是否遇到过这样的困境:机器人正在执行长距离移动或复杂的堆垛路径,此时外部传感器突然检测到物料滑落或安全干涉。如果仅仅依靠常规的逻辑判断,机器人必须等当前的运动指令执行完才能做出反应,这在高速生产中往往意味着碰撞或损失。

今天,我们就深入探讨 KUKA 机器人编程中的高级逻辑指令——中断编程(Interrupt Programming)与 RESUME(废弃当前运动)。
掌握了它们,你就能给机器人安装一套敏捷的“条件反射”系统。

一、 什么是中断编程?

中断(Interrupt)是指当定义的事件(如输入信号转为 TRUE)出现时,控制器立即中断当前正在运行的程序,转而处理一个预先定义好的子程序(中断程序)。
中断编程的核心步骤:
中断声明:定义触发事件和对应的处理子程序。激活/禁止:在代码中灵活启动或关闭监控。制动与处理:在中断程序中决定是停住机器人(BRAKE)还是废弃当前路径(RESUME)。

二、 核心语法:声明与激活

在 KSS 系统中,中断声明必须放在程序的指令部分(不能放在声明部分),且允许同时声明最多 32 个中断。
声明语法:INTERRUPT DECL [优先级] WHEN [事件] DO [子程序]优先级:
建议选择 1、2 或 4-39。注意 3 和 40-80 是系统预留的,不要占用。
全局性:
使用  GLOBAL关键字可以让中断在声明它的层面及以上都被识别。
开关指令:INTERRUPT ON [编号]:激活监控。INTERRUPT OFF [编号]:彻底关闭。INTERRUPT DISABLE/ENABLE:暂时禁止或重新开通已保存的中断。

三、 避险神器:RESUME 指令

如果说  BRAKE指令只是让机器人暂时停下,那么  RESUME(恢复/废弃)则是实现“应急避险”的关键。
RESUME 的作用:它会中断当前声明中断层面以下的所有运行中的子程序和运动,废弃当前的轨迹规划,让程序直接返回到声明中断的那一层面继续执行。
专家的“金律”:
层级限制:
预进指针必须在声明中断的层面以下。也就是说,运动指令必须写在子程序里,而中断声明写在主程序里。
运动禁忌:
RESUME 后的第一个运动指令如果原本是  CIRC,系统会自动按  LIN运行!务必注意由此带来的碰撞风险。
制动先行:
在中断程序中使用  RESUME之前,必须先使用  BRAKE指令停住机器人。

四、 实战应用案例:物料搜索与紧急撤回

应用场景:机器人执行寻找方块的“查找运行”。一旦传感器(输入端 27)检测到目标,立即停止寻找动作,保存当前位置并跳出查找子程序,执行后续的抓取任务。
代码逻辑示例:
DEF  MAIN()  ;主程序   INI   ;  1.  声明中断:优先级25,当IN有信号时,执行ERROR程序   INTERRUPT DECL  25  WHEN $IN==TRUE DO  ERROR()    SEARCH() ;  2.  调用子程序执行运动   ;  5.  如果执行了RESUME,程序会跳回到这里继续   IF $IN THEN        ; 执行抓取任务...    ENDIFEND

DEF  SEARCH() ;子程序   INTERRUPT ON  25  ;  3.  在子程序内激活中断   PTP HOME ...   LIN SEARCH_PATH ; 执行查找路径   WAIT SEC  0  ; 强制止住预进指针,确保RESUME生效   INTERRUPT OFF  25END

DEF  ERROR() ;中断处理程序   INTERRUPT OFF  25  ; 禁用中断,防止“按键弹跳”   BRAKE ; 立即制动机器人   $TARGET_POS = $POS_INT ; 保存识别时的坐标   RESUME ;  4.  废弃SEARCH子程序的后续动作,返回MAINEND
第一段主程序详解:
第二段SEARCH子程序详解:
第三段ERROR中断程序详解:
五、 撤回策略:更高级的避险思想
在实际生产中,仅仅跳出程序是不够的,通常还需要配套撤回策略(Retraction Strategy)。  
这意味着当故障发生时,机器人应能根据当前所处的位置,自动规划出一条不发生碰撞的路径返回初始位置(HOME),避免操作员进入围栏手动摇优盘或示教。
给撤回策略编程的要点:
在工作空间内划分不同的运动范围。
利用中断实时保存机器人的位置数据。
结合对话信息编程,让操作员在示教器上选择“返回初始位置”还是“继续过程”。

结语

中断编程与  RESUME是 KUKA 逻辑控制的精髓。它让机器人从死板的线性运行逻辑进化到了具备“环境感知-实时决策”能力的进阶阶段。在设计复杂的自动化产线时,合理运用中断能极大提高系统的安全性与柔性。
如果你在调试中遇到了“预进指针不在预期层面”的报错,或者 RESUME 无法跳转,欢迎在评论区留言交流!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码