注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ABB机器人World Zone区域检测设定 (1)ABB机器人的区域检测基础知识
9 x3 a. Z* X: [8 b8 m) |
1.1 ABB机器人区域检测----World Zone简介 World Zone是用于控制ABB机器人在进入指定区域后停止并报错或者输出一个数字输出信号。一般应用在以下三方面: 第一是当两个ABB机器人协同运动时设定保护区域防止ABB机器人互撞; 第二是在压铸机的开模/合模区域设定为World Zone防止压铸机合模压坏机器人; 第三是ABB机器人进入指定区域后,输出数字信号给外围设备。 区域检测当中一般有三种类型区域,即矩形区域、圆柱形区域和球体区域。这些区域都是在世界坐标系里面建立。World Zone区域检测监控的是机器人当前所安装工具TCP的坐标值是否在指定区域中,如果在则做相应的处理。 2 g7 V3 ^4 w- Q8 c4 g
1.2 ABB机器人仿真软件选项 ABB仿真软件中,可以在布局当中把区域检测选项选中,即608—1 World Zone,之后可以使用区域选项功能。选择之后相应的区域检查指令才会显示出来,例如WZBoxDef、WZDOSET、WZenable等。
5 \* ~1 W4 x5 b- _
(2)区域检测立体空间建立 如下为仿真软件中布局里面选择区域检测功能项目: / H: L. h' }/ y2 {
2.1 长方体区域建立:WZBoxDef 0 ~8 Q! ~7 f+ m3 i0 c0 o! F
2.1.1 长方体区域建立概述 WZBoxDef是与区域检测World Zones相关的应用指令,用在大地坐标系下设定矩形体的区域检测,设定是需要定义该虚拟矩形体的两个对角点,如图下图所示:长方体的长宽高长度不小于10mm。 2 O& c; ^& N7 J4 ~. _
2.1.2 长方体区域检测建立程序 PROC rBoxDef1() CONST pos posBox1:=[514,-190,668]; CONST pos posBox2:=[938,235,916]; VAR shapedata shapeBox1; WZBoxDefInside, shapeBox1, posBox1, posBox2; ENDPROC
. ]7 t( {9 {% Z% }3 w
说明:在程序数据当中建立pos数据类型点位posBox1和posBox2,并且把机器人移动到需要建立长方体的两个对角点,手动操作中设定好工具坐标系和坐标系以后,读取机器人当前工具TCP的pos数据X、Y、Z,输入给posBox1和posBox2。再在shapedata当中设定长方体区域名字 shapeBox1。然后在利用建立长方体区域指令WZBoxDef,以posBox1和posBox2为长方体对角点建立区域,并且指定在区域内部/Inside有效,对于建立好的区域名字命名为shapeBox1。
; h) S* L+ [; ]" \
2.2 圆柱体区域建立:WZCylDef / I6 e: J/ X) w4 }
2.2.1 圆柱形区域建立概述 WZCylDef是选项WorldZones相关的应用指令,用以在大地坐标系下设定圆柱体的区域检测,设定时需要定义该虚拟圆柱体的底面圆心、圆柱体高度、圆柱体半径三个参数。例如下图所示:半径最小值不小于5mm,高度最小值不小于10mm。 5 u& t/ o1 l9 T' T
2.2.2 建立圆柱形区域程序 PROC rCylDef1() cylH1 := 400; cylR1 := 150; posCyl1 := CPos(Tool:=tool1WObj:=wobj0); WZCylDefInside, shapeCyl1, posCyl1, cylR1, cylH1; ENDPROC
: ?: N; ]; V8 n' h }- n" E( W+ O8 p
说明:在机器人程序数据num中,建立圆柱体半径cylR1和圆柱体高度cylH1,再在pos数据类型里面建立点位posCyl1,再在shapedata当中建立圆柱形区域名字 shapeCyl1。然后利用建立圆柱形区域指令WZCylDef,以点位posCyl1为圆柱形底面圆心,圆柱体底面圆半径cylR1,和以cylH1为圆柱体高度建立圆柱体区域,对于建立起来的圆柱体区域命名为 shapeCyl1。
/ a' m& c7 E8 r' I0 x$ B8 f
2.3 球体区域建立:WZSphDef
- z* u6 T: T W9 Y/ `6 G6 }
2.3.1 球体区域概述 WZSphDef是选项WorldZones相关的应用指令,用以在大地坐标系下设定圆柱体的区域检测,设定时需要定义该虚拟球体的球心和球半径两个参数。例如下图所示:球体半径最小值不小于5mm。
3 U/ z) P3 R! o/ B \+ @) J
2.3.2 建立球体区域程序 PROC rSphDef1() sphR1 := 200; posSphCentor1 := CPos(Tool:=tool1WObj:=wobj0); WZSphDefInside, shapeSph1, posSphCentor1, sphR1; ENDPROC / X- r% J0 A/ ] x0 {
说明:在程序数据类型num中建立球体半径sphR1,再在pos数据类型中建立球心posSphCentor1。在运行时候,通过赋值指令把200赋值给球体半径sphR1,通过获取机器人当前pos点位数据CPos指令,并且赋值给点位posSphCentor1;然后通过建立球体区域指令WZSphDef,以posSphCentor1点位为球心,以sphR1为球体半径建立球体区域,并给建立的球体命名为shapeSph1。 |