PLC工程师:ABB机器人编程实用技巧,多项案例!

今日分享ABB机器人Pdisp 轨迹偏移使用、单工位多次预约程序、在robotstudio创建两台机器人的socket连接、双工位预约程序、与相机通讯的Socket收发数据处理与提取、如何创建数组等编程技巧 , 感兴趣的小伙伴尽快收藏!
1
PART
ABB机器人Pdisp 轨迹偏移使用
1.如果有下图两个产品 , 已经完成了右边产品轨迹 , 左边产品估计一样 , 如何快速生成左边轨迹(左边产品可能有平移和旋转) 。
PLC工程师:ABB机器人编程实用技巧,多项案例!
文章图片

文章图片
2.完成右边轨迹示教Path_30 , 如上图 。起点为Target_20 。
3. 完成左边起点的示教 , 为Target_ref_start,如下图 。
注:如果左边产品轨迹有旋转 , 示教的Target_ref_start相对于左边产品的姿态要和Target_20相对于右边产品的姿态一致(此处左边产品旋转了30° , 示教的角度z方向也旋转了30°)
PLC工程师:ABB机器人编程实用技巧,多项案例!
文章图片

文章图片
4) 插入指令如下
MoveJ pHome,v1000,z100,tWeldGunWObj:=wobj0;//移动到Home位置
PLC工程师:ABB机器人编程实用技巧,多项案例!
文章图片

文章图片
Path_30;//运行右边产品轨迹
MoveJpHome,v1000,z100,tWeldGunWObj:=wobj0;//回到Home
MoveJTarget_ref_start,v1000,fine,tWeldGunWObj:=wobj0;//走到左边产品起点
ConfJOff;//因为使用偏移 , 关闭轴配置监控 , 否则有可能使用原配置参数导致位置走不到而报错 ConfLOff; //因为使用偏移 , 关闭轴配置监控 , 否则有可能使用原配置参数导致位置走不到而报错
PDispOnRot,Target_20,tWeldGun;//设定当前位置和Target_20的偏差关系(包括平移和旋转) , 因为此时机器人停在Target_ref_start起点 , 即设定左边轨迹和右边轨迹的整体偏移关系 。使用 ot表示平移和旋转均计算 。如果不使用 ot , 则只使用平移 , 旋转不计算
Path_30;//运行原有轨迹 , 此时轨迹参考坐标移动关系 , 机器人实际走左边产品轨迹
PDispOff;//轨迹完成 , 关闭平移关系
MoveJ pHome,v1000,z100,tWeldGunWObj:=wobj0;
2
PART
ABB机器人单工位多次预约程序
1.机器人有程序如下:
PLC工程师:ABB机器人编程实用技巧,多项案例!
文章图片

文章图片
2.工艺过程如下:
机器人在home等待 。有人按过di信号 , 机器人开始执行 。人工可以一次性多次预约 , 即如果人工一次性按过3次 , 机器人执行三次 。
3.我们通过中断来实现 。
4.中断的意义为 , 机器人后台在不断扫描(类似PLC) , 和机器人前台运动不冲突 。后台实时扫描到信号就会去执行设定的中断程序 , 中断程序里没有运动指令 , 前台机器人不停 , 不影响运动
5.新建一个例行程序 , 取名tr_1,注意:类型选中断(trap)
PLC工程师:ABB机器人编程实用技巧,多项案例!
文章图片

文章图片
6.进入中断程序 , 插入指令如下 , 即当机器人执行中断程序时 , 给reg1记录次数加1
PLC工程师:ABB机器人编程实用技巧,多项案例!
文章图片

文章图片
7.进入主程序 , 设置中断及对应的io信号
37行的意思是 , 任何时候di_1信号0变1 , 就会触发执行tr_1中断程序 , 即置flag1为true
35-37行程序只要运行过一遍即可 , 类似于设置开关 , 不需要反复运行