机器人碰撞后回退距离设定

[复制链接]
查看31056 | 回复0 | 昨天 17:48 | 显示全部楼层 |阅读模式




video: https://mp.weixin.qq.com/mp/readtemplate?t=pages/video_player_tmpl&action=mpvideo&auto=0&vid=wxv_1493122998390816771

[img=315.04395pt,211.52953pt]https://mmbiz.qpic.cn/mmbiz_png/RZ5RadbLaf45Wxd8EIvZOCPMagxkgGC1QRy8qy0HQfSalgXyibb19gFlUFOSu96IFzvNWq1cRprTCuw2doAjOibw/640?wx_fmt=png[/img]

1. ABB机器人标配Motion Supervision功能,即机器人碰撞后会迅速回退一段距离并停止运动。



2. 如果添加了613-1 Collision Detection功能,则可以修改碰撞的灵敏度(百分比数值,数值越大,机器人越不灵敏)

[img=432.0pt,324.0pt]https://mmbiz.qpic.cn/mmbiz_png/RZ5RadbLaf45Wxd8EIvZOCPMagxkgGC19m8mTBqlxLcJJLzPmP4Th5pBjq2zam4AkB9OM6dGDw1ibgp6Ek674Xg/640?wx_fmt=png[/img]

3. 通常机器人发生碰撞后会停止运行,若现场希望机器人碰撞后回退一段距离,给出提示后自动继续运行,如何实现?

4. 进入控制面板-配置-主题-controller,选择General Rapid

[img=432.0pt,324.0pt]https://mmbiz.qpic.cn/mmbiz_png/RZ5RadbLaf45Wxd8EIvZOCPMagxkgGC1nYAntibJNmc3cRjfQYfM1nqvna49ylldnvjsk6CtILy6iawO8Eia7zsqw/640?wx_fmt=png[/img]

将CollisionErrorHandling参数改为Yes(默认是No),重启机器人生效

[img=432.0pt,324.0pt]https://mmbiz.qpic.cn/mmbiz_png/RZ5RadbLaf45Wxd8EIvZOCPMagxkgGC118CA8htuywYOxHnXkZ8X6CwLAMPY9AJdv3dxf9hcm203ia48icBhTIqg/640?wx_fmt=png[/img]

此时机器人若发生碰撞,则机器人会自动后退一段距离(默认是碰撞前75ms时长的轨迹),回退记忆可以在 motion的motion supervision中的Collision Detection Memory设置(最长0.5s,默认0.075)

[img=361.55048pt,419.3085pt]https://mmbiz.qpic.cn/mmbiz_png/RZ5RadbLaf45Wxd8EIvZOCPMagxkgGC1aWO0AwmXjZAX4ZFOf0TJ3iaIWib4gNYnPFM1rSFxF2QlLuUPkECThIrQ/640?wx_fmt=png[/img]

例如插入如下代码,机器人在发生碰撞时,会回退0.5s的轨迹,并停止2s等待人工移走产品,之后继续运行

PROCRoutine1()       MoveL pstart10,v100,z10,tool0;       MoveL pstart20, v100, z10, tool0;       !pstart20位置低于碰撞位置,机器人发生碰撞       MoveL pstart10,v100,z10,tool0;   ERROR       TEST ERRNO       CASE ERR_COLL_STOP:           TPWrite "coll_stop!!";           waittime 2;           StartMove;ENDTEST       RETRY;ENDPROC
为保证安全,也可在机器人自动回退后再认为设定移动一段安全距离。在人工移走产品后继续走到碰撞位置并继续运行。
PROCRoutine1()       MoveL pstart10,v100,z10,tool0;       MoveL pstart20, v100, z10, tool0;       MoveL pstart10,v100,z10,tool0;   ERROR       TEST ERRNO      CASE ERR_COLL_STOP:           TPWrite "coll_stop!!";           StorePath;           ptmp:=CRobT(Tool:=tool0);           !读取当前位置           MoveL offs(ptmp,0,0,10),v10,fine,tool0WObj:=wobj0;           !沿z方向抬升10mm           waittime 2;           !等待人工处理           MoveL offs(ptmp,0,0,0),v10,fine,tool0WObj:=wobj0;           !回到碰撞位置(产品已经移走)           RestoPath;           StartMove;       ENDTEST       RETRY;   ENDPROC


********************************


本帖子中包含更多资源

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

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

本版积分规则