打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
ABB机器人带运动指令的中断程序
userphoto

2021.12.23

关注
为了充分利用机器人来工作,它有两种工作,一种是常规工作,那种24小时在线的,还有一种是需要时进行的。

为了方便描述,假设P10和P20是两条流水线的取料点和放料点,这是常规工作,24小时不停机。当另一个放料点准备好时,要优先把产品放在P30点,这是比较急的,有需要才做的。用中断怎样实现?

首先我们编写正常搬运程序。

当中断时要执行的程序。

中断程序。这里面是有运动指令的。

正常程序加入中断定义后。用di01为1时触发中断程序。

很显然这样写是不能完美应对的。中断发生时,并不是人为地,恰当的时候触发中断,而是很多随机性,可能在搬运过程的任何时候触发中断。

因处理完紧急事情还要回来继续“加班”,所以第一件事是要把之前做的事停下来,做好记录,回来继续做。

然后我们把它分成两种情况,一种是夹具上已有产品,另一种是夹具上没有产品。当夹具上已经有产品了,那么直接放到P30即可,如果没有产品,则去拿到产品后再放到P30。

因为已经处理好事情了,那么要恢复路径,回到中断的地方继续执行

如果出现中断后停机的情况,那么在主程序运动指令的转弯半径要进行修改。

在中断程序加入路径保存和恢复,优先要做的事。

中断程序解释

TRAP  intmove

    StopMove;   停止移动

    StorePath; 保存路径

    IF DO01= 1 THEN  如果夹具上有产品

    pnowpos := CRobT(); 读取当前位置,并保存在pnowpos

    MoveL Offs(pnowpos,0,0,50), v1000, z50, tool0; 移动到当前位置上方。

    MoveL Offs(p30,0,0,100), v1000, z50, tool0; 到达放料点上方

    MoveL p30, v100, fine, tool0; 到达放料点

    Reset DO01; 关闭夹具

    WaitTime 0.5;  缓冲一下,让夹具充分打开

    MoveL Offs(p30,0,0,100), v1000, z50, tool0; 来到放料点上方

ELSE  否则,即如果夹具上没有产品

    pnowpos := CRobT(); 读取当前位置,并保存在pnowpos

    MoveL Offs(pnowpos,0,0,50), v1000, z50, tool0; 移动到当前位置上方。

    MoveL Offs(p10,0,0,100), v1000, z50, tool0; 来到取料点上方

    MoveL p10, v100, fine, tool0; 到达取料点

    Set DO01; 打开夹具

    WaitTime 0.5;缓冲一下,让夹具充分夹紧

    MoveL Offs(p10,0,0,100), v1000, z50, tool0;来到取料点上方

    MoveL Offs(p30,0,0,100), v1000, fine, tool0;来到放料点上方

    MoveL p30, v100, fine, tool0;

    Reset DO01;关闭夹具

    WaitTime 0.5;缓冲一下,让夹具充分打开

    MoveL Offs(p30,0,0,100), v1000, fine, tool0;来到放料点上方

ENDIF

    MoveJ pnowpos, v1000, z50, tool0; 来到发生中断停下来的位置

    RestoPath; 恢复路径

    StartMove; 开始移动

ENDTRAP

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
读取及更改机器人运行速度百分比的方法
ABB机器人程序类型介绍及坐标系偏移指令应用
工业机器人程序的设计与编写如何进行?
ABB工业机器人编程-第五章
工业机器人实操应用技巧
ABB上料机器人程序注释,31#程序
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服