配色: 字号:
ABB工业机器人编程-第六章
2020-06-18 | 阅:  转:  |  分享 
  
ABB工业机器人编程6.1程序数据介绍程序数据是在程序模块或系统模块中设定值和定义一些环境数据。创建的程序数据由同一个模块或其它模块中
的指令进行引用。如图所示,虚线框中是一条常用的机器人关节运动的指令(MoveJ),并调用了4个程序数据。图中所使用的程序数据的
说明见表第六章ABB机器人程序数据程序数据的建立一般可以分为两种形式,一种是直接在示教器中的程序数据画面中建立程序数据,另一种
是在建立程序指令时,同时自动生成对应的程序数据。在任务中将完成直接在示教器中的程序数据画面中建立程序数据的方法。是以建立布尔数据(
BOOL)和数字数据(NUM)为例子进行说明。任务6-2建立程序数据的操作第六章ABB机器人程序数据6.2.1.建立程序
数据bool任务6-2建立程序数据的操作1.单击左上角主菜单按钮。2.选择“程序数据”。第六章ABB机器人程序数据6.2.
1.建立程序数据bool任务6-2建立程序数据的操作3.选择数据类型“bool”。4.单击“显示数据”。第六章ABB机器
人程序数据6.2.1.建立程序数据bool任务6-2建立程序数据的操作5.单击“新建…”。第六章ABB机器人程序数据6.
2.1.建立程序数据bool任务6-2建立程序数据的操作6.单击此按钮进行名称的设定。7.单击下拉菜单选择对应的参数。8.单
击“确定”完成设定。第六章ABB机器人程序数据任务6-2建立程序数据的操作6.2.1.建立程序数据bool数据设定参数及
说明见表第六章ABB机器人程序数据6.2.2.建立程序数据num任务6-2建立程序数据的操作1.单击左上角主菜单按钮。2.
选择“程序数据”。第六章ABB机器人程序数据6.2.2.建立程序数据num任务6-2建立程序数据的操作3.选择数据类型“n
um”。4.单击“显示数据”。第六章ABB机器人程序数据6.2.2.建立程序数据num任务6-2建立程序数据的操作5.单击
“新建…”。第六章ABB机器人程序数据至此,大家就掌握了建立程序数据的基本方法,以及相关参数的定义与设定方法。6.2.2.建立
程序数据num任务6-2建立程序数据的操作6.单击此按钮进行名称的设定。7.单击下拉菜单选择对应的参数。8.单击“确定”完成设
定。第六章ABB机器人程序数据在这里,大家一起学习程序数据的程序数据的类型分类与存储类型这两个主题,以便大家能对程序数据有一个
认识,并能根据实际的需要选择程序数据。任务6-3程序数据类型与分类6.3.1.程序数据的类型与分类ABB机器人的程序数据共有
100个左右,并且可以根据实际情况进行程序数据的创建,为ABB机器人的程序设计带来了无限的可能。在示教器中的“程序数据”窗口,你就
可查看和创建你所需要的程序数据以下就一些常用的程序数据进行详细的说明,为下一步程序编程做好准备。第六章ABB机器人程序数据任务
6-3程序数据类型与分类说明:VAR表示存储类型为变量。num表示声明的数据是数字型数据(存储的内容为数字)。6.3.2.程
序数据的存储类型a.变量VAR变量型数据在程序执行的过程中和停止时,会保持当前的值。但如果程序指针复位或者机器人控制器重启,数值会
恢复为声明变量时赋予的初始值。举例说明:VARnumlength:=0;名称为length的变量型数值数据VARstr
ingname:="Tom";名称为name的变量型字符数据VARboolfinished:=FALSE;名称为
finished的变量型布尔量数据。在程序编辑窗口中的显示如图所示:Key在声明数据时,可以定义变量数据的初始值。如:length
的初始值为0,name的初始值为Tom,finished初始值为FALSE。任务6-3程序数据类型与分类6.3.2.程序数据
的存储类型在机器人执行的RAPID的程序中也可以对变量存储类型程序数据进行赋值的操作,如图所示。说明:在程序中执行变量型程序数据的
赋值,在指针复位或者机器人控制器重启后,都将恢复为初始值。任务6-3程序数据类型与分类说明:PERS表示存储类型为可变量。
6.3.2.程序数据的存储类型b.可变量PERS无论程序的指针如何变化,无论机器人控制器是否重启,可变量型的数据都会保持最后赋予
的值。举例说明:PERSnumnumb:=1;名称为nbr的数值数据PERSstringtext:="Hell
o";名称为text的字符数据。在程序编辑窗口中的显示如图所示:任务6-3程序数据类型与分类6.3.2.程序数据的存储类型
在机器人执行的RAPID的程序中也可以对可变量存储类型程序数据进行赋值的操作,如图所示。在程序执行以后,赋值的结果会一直保持到下一
次对其进行重新赋值,如图所示。任务6-3程序数据类型与分类说明:存储类型为常量的程序数据,不允许在程序中进行赋值的操作。6.3
.2.程序数据的存储类型c.常量CONST常量的特点是在定义时已赋予了数值,并不能在程序中进行修改,只能手动修改。举例说明:C
ONSTnumgravity:=9.81;名称为gravity的数值数据CONSTstringgreating:
="Hello";名称为greating的字符数据在程序编辑窗口中的显示如图所示:根据不同的数据用途,定义了不同的程序数据。现
在来学习ABB机器人系统常用的程序数据。任务6-4常用程序数据说明6.4.1.数值数据numnum用于存储数值数据;例如,
计数器。num数据类型的值可以为:整数;例如,-6小数;例如,3.46也可以指数的形式写入:例如,2E3(=210^3=200
0),2.6E-2(=0.026)。整数数值,始终将-8388607与+8388608之间的整数作为准确的整数储存。小数数值仅为近
似数字,因此,不得用于等于或不等于对比。若为使用小数的除法和运算,则结果亦将为小数。以下示例介绍了数值数据num:将整数3赋值给名
称为count1的数值数据第六章ABB机器人程序数据任务6-4常用程序数据说明以下示例介绍了逻辑值数据bool:6.4.2
.逻辑值数据boolbool用于存储逻辑值(真/假)数据,即bool型数据值可以为TRUE或FALSE。示例中,首先判断coun
t1中的数值是否大于100,如果是大于100,则向highvalue赋值TRUE,否则赋值FALSE。第六章ABB机器人程序数
据以下示例介绍了字符串数据string任务6-4常用程序数据说明6.4.3.字符串数据stringstring用于存储字符串
数据。字符串是由一串前后附有引号("")的字符(最多80个)组成,例如,"Thisisacharacterstring"。
如果字符串中包括反斜线(\),则必须写两个反斜线符号,例如,"Thisstringcontainsa\\characte
r"。将startweldingpipe1赋值给text,运行程序后,在示教器中的操作员窗口将会显示startweldin
gpipe1这段字符串。第六章ABB机器人程序数据以下示例介绍了位置数据robtarget任务6-4常用程序数据说明C
ONSTrobtargetp16:=[[600,600,226.3],[1,0,0,0],[1,1,
0,0],[11,12.3,9E9,9E9,9E9,9E9]];6.4.4.位置数据robtargetrobt
arget(robottarget)用于存储机器人和附加轴的位置数据。位置数据的内容是在运动指令中机器人和外轴将要移动到的位置。
位置p16定义如下:机器人在在工件坐标系中的位置:x=600、y=600、z=226.3mm工具的姿态与工件坐标系的方向一致。机器
人的轴配置:轴1和轴4位于90-180°,轴6位于0-90°。附加逻辑轴a和b的位置以度或毫米表示(根据轴的类型)。未定义轴c到轴
f。robtarget由4个部分组成,如表第六章ABB机器人程序数据任务6-4常用程序数据说明以下示例介绍了关节位置数据j
ointtarget。6.4.6.关节位置数据jointtargetjointtarget用于存储机器人和附加轴的每个单独轴的角度
位置。通过moveabsj可以使机器人和附加轴运动到jointtarget关节位置处。CONSTjointtargetcali
b_pos:=[[0,0,0,0,0,0],[0,9E9,9E9,9E9,9E9,9E9]];通过
数据类型jointtarget,在calib_pos存储了机器人的机械原点位置,同时定义外部轴a的原点位置0(度或毫米),未定义外
轴b到f。jointtarget由2个部分组成,如表第六章ABB机器人程序数据任务6-4常用程序数据说明以下示例介绍了速度
数据speeddata。6.4.6.速度数据speeddataspeeddata用于存储机器人和附加轴运动时的速度数据。速度数据定
义了工具中心点移动时的速度,工具的重定位速度,线性或旋转外轴移动时的速度。VARspeeddatavmedium:=[1
000,30,200,16];使用以下速率,定义了速度数据vmedium:TCP速度为1000mm/s。工具的重定位
速度为30度/秒。线性外轴的速度为200mm/s。旋转外轴速度为16度/秒。speeddata由4个部分组成,如表第六章
ABB机器人程序数据zonedata由7个部分组成,如表任务6-4常用程序数据说明6.4.7.转角区域数据zonedata
zonedata用于规定如何结束一个位置,也就是在朝下一个位置移动之前,机器人必须如何接近编程位置。可以以停止点或飞越点的形式来终
止一个位置。停止点意味着机械臂和外轴必须在使用下一个指令来继续程序执行之前达到指定位置(静止不动)。飞越点意味着从未达到编程位置,
而是在达到该位置之前改变运动方向。以下示例介绍了转角区域数据zonedata。VARzonedatapath:=[FAL
SE,26,40,40,10,36,6];通过以下数据,定义转角区域数据path:?TCP路径的区域半径为26m
m。?工具重定位的区域半径为40mm(TCP运动)。?外轴的区域半径为40mm(TCP运动)。如果TCP静止不动,或存在大
幅度重新定位,或存在有关该区域的外轴大幅度运动,则应用以下规定:?工具重定位的区域半径为10度。?线性外轴的区域半径为36m
m。?旋转外轴的区域半径为6度。第六章ABB机器人程序数据任务6-5坐标系轴坐标系 机器人每个轴均可以独立地正向或反向移
动。世界坐标系世界坐标系是一个固定定义的直角坐标系,默认世界坐标系与机器人基坐系重合。机器人基坐标系机器人足部坐标系是一个固
定定义的直角坐标系,位于机器人底部。工具坐标系、法兰坐标系 工具坐标系是一个直角坐标系,位于工具上。法兰坐标系固定于机器人法兰上
,原点为机器人法兰中心,它是TOOL的参考。工件坐标系 工件坐标系是一个直角坐标系,用来说明工件的加工位置。第六章ABB机器
人程序数据任务6-5坐标系工具坐标系工具中心点(TCP)基坐标系工件坐标系第六章ABB机器人程序数据任务6-5坐标系什
么是坐标系?其作用是什么?第六章ABB机器人程序数据任务6-5坐标系坐标系的建立是为了描述空间中一点的位置,速度和姿态。+
Z左图就是一个3维坐标系,空间任意一点可以由x,y,z的值表示出来+Y-X+X-Y-Z第六章ABB机器人程序数据任务6-5
坐标系笛卡尔空间zyx第六章ABB机器人程序数据任务6-5坐标系笛卡尔空间下的坐标系之间的联系可以分解为2个部分:平移和旋
转,对应的是其三维坐标和姿态ZBXBZA平移OB旋转OAYAYBXA第六章ABB机器人程序数据任务6-5坐标系笛卡尔空间下
的x-y-z欧拉角姿态表示法,对应工具示教里的A,B,C将坐标系的姿态旋转拆分成3个步骤得到ZBXBOB旋转YB第六章ABB机
器人程序数据任务6-5坐标系第一步:将坐标系{A}绕XA旋转A后得到最终坐标系{B1}ZAZB1YB1YA?XAXB1第六章
ABB机器人程序数据任务6-5坐标系第二步:将坐标系{B1}绕YB1旋转B后得到最终坐标系{B2}ZAZB1ZB1YB2YB
1ZB2YB1?YAXB2XB1XAXB1第六章ABB机器人程序数据任务6-5坐标系第三步:将坐标系{B2}绕ZB2旋转C
后得到最终坐标系{B3}ZB1YB3YB2YB2ZB2YB1ZB2ZB3XB3XB2XB2XB1第六章ABB机器人程序数据任务
6-5坐标系结论:{B}相对于{A}的关系可以表示为(x,y,z,A,B,C),其中x,y,z表示平移,A,B,C
代表旋转ZBXBZAOBOAYAYBXA第六章ABB机器人程序数据任务6-5关节坐标系?第六章ABB机器人程序数据任
务6-5基标系何时使用:当需要将可预测的运动轻而易举地转化为控制杆运动时,可以在基坐标系中进行微动控制。在许多情况下,基坐
标系是使用最为方便的一种坐标系,因为它对工具、工件或其它机械单元没有依赖性。第六章ABB机器人程序数据任务6-5大地标系何
时使用:例如,有两个机器人,一个安装于地面,一个倒置,机器人的基坐标系也将上下颠倒。如果在倒置机器人的基坐标系中进行微动控制,
则很难预测移动情况。此时可选择共享大地坐标系。第六章ABB机器人程序数据任务6-5工具标系什么是工具坐标系?为什么要建立
工具坐标系?第六章ABB机器人程序数据任务6-5工具坐标系工具坐标系标定了工具相对于法兰(指的是末端最后第6轴的法兰凸缘盘
)的位置和姿态,这里特别注意,姿态一定不能遗漏。意义:确定工具坐标系,才能使机器人明白自己该如何运动让工具到达指定的位置并摆出相应
的姿态法兰第六章ABB机器人程序数据任务6-5工具坐标系工具坐标系是一个直角坐标系,原点位于工具上。第六章ABB机器人
程序数据任务6-5工具标系TCP为加上工具后工具的末端点。机器人的工作其实就是实现TCP点在空间中完成预定或指定的运动轨迹。
机器人工具座标系是由工具中心点TCP与座标方位组成。机器人联动运行时,TCP是必需的。1)Reorient重定位运动(
姿态运动)机器人TCP位置不变,机器人工具沿座标轴转动,改变姿态。2)Linear线性运动机器人工具姿态不变,机器
人TCP沿座标轴线性移动。机器人程序支持多个TCP,可以根据当前工作状态进行变换。机器人工具被更换,重新定义TCP后,可
以不更改程序,直接运行。第六章ABB机器人程序数据TOOL0TCPTCP任务6-5工具标系第六章ABB机器人程序数据任
务6-5工件坐标系什么是工件坐标系?为什么要建立工件坐标系?第六章ABB机器人程序数据任务6-5工件坐标系定义:用户自
定义坐标系:用户定义的固定的工作台坐标系或工件坐标系World坐标系:固定的直角(笛卡尔)坐标系,该坐标系是默认的,不能修改的。既
然已经有world坐标系,为什么还要设计用户自定义的坐标系?第六章ABB机器人程序数据任务6-5工件坐标系场景一:使用W
orld坐标系,量化工作台上两点的位置相对于坐标系{0}发现A,B点位置测量有难度很难直接在空间中得到所要的参数BA第六章AB
B机器人程序数据任务6-5工件坐标系场景二:使用用户自定义坐标系,量化工作台上两点的位置相对于坐标系{A}发现A点就是(0,
0,0)由于与A和B在同一平面上,B点位置就能很容易量测相对于坐标系{A}发现A点就是(0,0,0)由于与A和B在同一平面上,B点
位置就能很容易量测ZBYAX第六章ABB机器人程序数据任务6-6三个关键程序数据的设定在进行正式的编程之前,就需要构建起必
要的机器人编程环境,其中有三个必须的程序数据(工具数据TOOLDATA,工件坐标WOBJDATA,负荷数据LOADDATA)就需要
在编程前进行定义。接下来,我们就来学习这三个程序数据的组成及设定方法。6.6.1工具数据TOOLDATA工具数据Tooldata
是用于描述安装在机器人第六轴上的工具的TCP,重量,重心等参数数据。默认工具(tool0)的工具中心点(ToolCenter
Ponit)位于机器人安装法兰的中心,如图。图中的A点就是原始的TCP点。不同的机器人应用就可能配置不同的工具,比如说弧焊的机器
人就使用弧焊枪作为工具,而用于搬运板材的机器人就会使用吸盘式的夹具作为工具,如图第六章ABB机器人程序数据任务6-6三个关
键程序数据的设定6.6.1工具数据TOOLDATAa.TOOLDATA数据组成tooldata用于描述工具(例如,焊枪或夹具)的
特征。此类特征包括工具中心点(TCP)的位置和方位以及工具负载的物理特征。tooldata由3个部分组成,如表说明:如果是使用固定
工具,则定义的工具坐标系是相对于世界坐标系。任务6-6三个关键程序数据的设定6.6.1工具数据TOOLDATAa.TOOLD
ATA数据组成以下示例介绍了工具数据tooldata工具数据gripper定义内容如下:机械臂正夹持着工具。TCP所在点沿着工具坐
标系X方向偏移97.4mm,沿工具坐标系Z方向偏移223.1mm。工具的X方向和Z方向相对于腕坐标系Y方向旋转46°。工具重量为
6kg。重心所在点沿着腕坐标系X方向偏移23mm,沿腕坐标系Z方向偏移76mm。可将负载视为一个点质量,即不带转矩惯量。第六章
ABB机器人程序数据任务6-6三个关键程序数据的设定工具中心点的设定原理如下:首先在机器人工作范围内找一个非常精确的固定点作
为参考点。然后在工具上确定一个参考点(最好是工具的中心点)。通过之前学习到的手动操纵机器人的方法,去移动工具上的参考点以最少四种不
同的机器人姿态尽可能与固定点刚好碰上。(为了获得更准确的TCP,我们在以下的例子中使用六点法进行操作,第四点是用工具的参考点垂直于
固定点,第五点是工具参考点从固定点向将要设定为TCP的X方向移动,第六点是工具参考点从固定点向将要设定为TCP的Z方向移动。)机器
人就可以通过这四个位置点的位置数据计算求得TCP的数据,然后TCP的数据就保存在TOOLDATA这个程序数据中被程序进行调用。6.
6.1工具数据TOOLDATAb.TOOLDATA数据的设定第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b
.TOOLDATA数据的设定1.单击左上角主菜单按钮2.选择“手动操纵”。第六章ABB机器人程序数据任务6-6三个关键程序
数据的设定b.TOOLDATA数据的设定3.选择“工具坐标”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b
.TOOLDATA数据的设定4.点击“新建”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDAT
A数据的设定5.对工具数据属性进行设定后,点击“确定”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TO
OLDATA数据的设定6.选中tool1后,点击“编辑”菜单中的“定义”选项。第六章ABB机器人程序数据任务6-6三个关键
程序数据的设定b.TOOLDATA数据的设定7.选择“TCP和Z,X”方法设定TCP。第六章ABB机器人程序数据任务6-6
三个关键程序数据的设定b.TOOLDATA数据的设定8.选择合适的手动操纵模式。9.按下使能键,使用摇杆使工具参考点去靠上固定点,
作为第一个点。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定10.选中点1,点击
“修改位置”,将点1位置记录下来。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定
11.工具参考点以此姿态靠上固定点。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设
定12.选中点2,点击“修改位置”,将点2位置记录下来。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TO
OLDATA数据的设定13.工具参考点以此姿态靠上固定点。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.T
OOLDATA数据的设定14.选中点3,点击“修改位置”,将点3位置记录下来。第六章ABB机器人程序数据任务6-6三个关键
程序数据的设定b.TOOLDATA数据的设定15.工具参考点以此姿态靠上固定点。第六章ABB机器人程序数据任务6-6三个关
键程序数据的设定b.TOOLDATA数据的设定16.选中点4,点击“修改位置”,将点4位置记录下来。第六章ABB机器人程序数据
任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定17.工具参考点以此姿态靠上固定点。第六章ABB机器人程序数
据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定18.选中延伸点X,点击“修改位置”,将延伸点X位置记录下来。
第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定19.单击”是”,完成设定第六章
ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定20.选中延伸点Z,点击“修改位置”,将延
伸点Z位置记录下来。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定21.点击“确
定”,完成设定。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定22.对误差进行确
认,当然是越小越好了,但也要以实际验证效果为准。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDA
TA数据的设定23.接着设置tool1的重量和重心。选中tool1,然后打开编辑菜单选择“更改值”。第六章ABB机器人程序数据
任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定Key此页面显示的内容就是TCP定义时生成的数据。24.点击箭头
向下翻页。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定25.在此页面中,根据实
际情况设定工具的重量mass(单位:kg)和重心位置数据(此重心是基于tool0的偏移值,单位:mm),然后点击“确定”。第六章
ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定26.选中tool1,点击“确定”。第六
章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定27.动作模式选定为“重定位”。坐标系
选定为“工具”。工具坐标选定为“tool1”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDAT
A数据的设定28.使用摇杆将工具参考点靠上固定点,然后在重定位模式下手动操纵机器人,如果TCP设定精确的话,你可以看到工具参考点与
固定点始终保持接触,而机器人会根据你的重定位操作改变着姿态。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定以图
中的搬运薄板的真空吸盘夹具为例,重量是26kg,重心在默认tool0的Z正方向偏移260mm,TCP点设定在吸盘的接触面上,从默认
tool0上的Z正方向偏移了300mm。6.6.1工具数据TOOLDATAb.TOOLDATA数据的设定如果使用的的搬运的夹具,
一般的工具数据设定方法如下:第六章ABB机器人程序数据在示教器中的设定如下:任务6-6三个关键程序数据的设定b.TOOLD
ATA数据的设定1.选择“工具坐标”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的
设定2.点击“新建”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定3.根据需要
设定数据的属性,一般是不用修改的。4.点击“初始值”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOO
LDATA数据的设定5.TCP点设定在吸盘的接触面上,从默认tool0上的Z正方向偏移了300mm,在此画面中设定对应的数值。接着
点击黄色箭头向下翻页。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.TOOLDATA数据的设定6.此工具重
量是26kg,重心在默认tool0的Z正方向偏移260mm,在画面中设定对应的数值,然后点击“确定”,设定完成。第六章ABB机
器人程序数据工件坐标系对应工件:它定义工件相对于大地坐标系(或其它坐标系)的位置。机器人可以拥有若干工件坐标系,或者表示不同
工件,或者表示同一工件在不同位置的若干副本。对机器人进行编程时就是在工件坐标系(图6-14~图6-16)中创建目标和路径。这带
来很多优点:1.重新定位工作站中的工件时,您只需更改工件坐标系的位置,所有路径将即刻随之更新。2.允许操作以外轴或传送导轨移动的工
件,因为整个工件可连同其路径一起移动。任务6-6三个关键程序数据的设定6.6.2工件坐标数据WOBJDATA第六章ABB机
器人程序数据Key:A是机器人的大地坐标,为了方便编程为第一个工件建立了一个工件坐标B,并在这个工件坐标B进行轨迹编程。如果台子上
还有一个一样的工件需要走一样的轨迹,那你只需要建立一个工件坐标C,将工件坐标B中的轨迹复制一份,然后将工件坐标从B更新为C,则无需
对一样的工件重复的轨迹编程了。Key:在工件坐标B中对A对象进行了轨迹编程。如果工件坐标的位置变化成工件坐标D后,只需在机器人系统
重新定义工件坐标D,则机器人的轨迹就自动更新到C了,不需要再次轨迹编程了。因A相对于B,C相对于D的关系是一样,并没有因为整体偏移
而发生变化。任务6-6三个关键程序数据的设定6.6.2工件坐标数据WOBJDATAa.WOBJDATA数据组成如果在运动指令中
指定了工件,则目标点位置将基于该工件坐标系。优势如下:?便捷地手动输入位置数据,例如离线编程,则可从图纸获得位置数值。?轨迹程
序可以根据变化,快速重新使用。例如,如果移动了工作台,则仅须重新定义工作台工件坐标系即可。?可根据变化对工件坐标系进行补偿。利
用传感器来获得偏差数据来定位工件。以下示例介绍了工件数据wobjdata:PERSwobjdatawobj1:=[FALS
E,TRUE,"",[[300,600,200],[1,0,0,0]],[[0,200,30],[1
,0,0,0]]];工件数据wobj1定义内容如下:机械臂未夹持着工件。使用固定的用户坐标系。用户坐标系不旋转,且在大地
坐标系中用户坐标系的原点为x=300、y=600和z=200mm。目标坐标系不旋转,且在用户坐标系中目标坐标系的原点为x=0、y=
200和z=30mm。wobjdata由6个部分组成,如表任务6-6三个关键程序数据的设定6.6.2工件坐标数据WOBJDAT
Ab.WOBJDATA数据的设定在对象的平面上,只需要定义三个点,就可以建立一个工件坐标。1.X1、X2确定工件坐标X正方向。2.
Y1确定工件坐标Y正方向。3.工件坐标系的原点是Y1在工件坐标X上的投影。工件坐标符合右手定则以下就是建立工件坐标的操作步骤任务6
-6三个关键程序数据的设定b.WOBJDATA数据的设定1.单击左上角主菜单按钮2.选择“手动操纵”。第六章ABB机器人程
序数据任务6-6三个关键程序数据的设定b.WOBJDATA数据的设定3.选择“工件坐标”。第六章ABB机器人程序数据任务6
-6三个关键程序数据的设定b.WOBJDATA数据的设定4.点击“新建”。第六章ABB机器人程序数据任务6-6三个关键
程序数据的设定b.WOBJDATA数据的设定5.对工件数据属性进行设定后,点击“确定”。第六章ABB机器人程序数据任务6-6
三个关键程序数据的设定b.WOBJDATA数据的设定6.选中wobj1后,点击“编辑”菜单中的“定义”选项。第六章ABB机器
人程序数据任务6-6三个关键程序数据的设定b.WOBJDATA数据的设定7.用户方法选择“3点”。第六章ABB机器人程序数
据任务6-6三个关键程序数据的设定b.WOBJDATA数据的设定8.手动操作机器人的工具参考点靠近定义工件坐标系的X1点。第六
章ABB机器人程序数据任务6-6三个关键程序数据的设定b.WOBJDATA数据的设定9.选中用户点X1,点击“修改位置”,
将点X1位置记录下来。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.WOBJDATA数据的设定10.手动操
作机器人的工具参考点靠近定义工件坐标系的X2点。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.WOBJDA
TA数据的设定11.选中用户点X2,点击“修改位置”,将点X2位置记录下来。第六章ABB机器人程序数据任务6-6三个关键程
序数据的设定b.WOBJDATA数据的设定12.手动操作机器人的工具参考点靠近定义工件坐标系的Y1点。第六章ABB机器人程序数
据任务6-6三个关键程序数据的设定b.WOBJDATA数据的设定13.选中用户点Y1,点击“修改位置”,将点Y1位置记录下来。
第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.WOBJDATA数据的设定14.点击“确定”,完成设定。第六
章ABB机器人程序数据任务6-6三个关键程序数据的设定b.WOBJDATA数据的设定15.对自动生成的工件坐标数据进行确认
后,点击“确定”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.WOBJDATA数据的设定16.选中wob
j1,点击“确定”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.WOBJDATA数据的设定17.动作模式
选定为“线性”。坐标系选定为“工件坐标”。工件坐标选定为“wobj1”。第六章ABB机器人程序数据任务6-6三个关键程序数
据的设定b.WOBJDATA数据的设定18.设定手动操纵画面项目如图中所示,使用线性动作模式,体验新建立的工件坐标。第六章AB
B机器人程序数据对于搬运应用的机器人,应该正确设定夹具的重量、重心TOOLDATA以及搬运对象的重量和重心数据LOADDATA。任
务6-6三个关键程序数据的设定6.6.3有效载荷数据LOADDATA第六章ABB机器人程序数据任务6-6三个关键程序
数据的设定以下示例介绍了载荷数据loaddata:6.6.3有效载荷数据LOADDATAa.LOADDATA数据组成loadda
ta用于设置机器人轴6上安装法兰的负载载荷数据。载荷数据常常定义机器人的有效负载或抓取物的负载(通过指令GripLoad或Mech
UnitLoad来设置),即机器人夹具所夹持的负载。同时将loaddata作为tooldata的组成部分,以描述工具负载。PERS
loaddatapiece1:=[6,[60,0,60],[1,0,0,0],0,0,0];载荷数据
piece1定义内容如下:重量6kg。重心为x=60,y=0和z=60mm,相对于工具坐标系。有效负载为一个点质量loadda
ta由6个部分组成,如表载荷数据loaddata的创建如下:任务6-6三个关键程序数据的设定b.LOADDATA数据的设定1.
单击左上角主菜单按钮2.选择“手动操纵”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.LOADDATA数
据的设定3.选择“有效载荷”。第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.LOADDATA数据的设定4.
点击“新建”第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.LOADDATA数据的设定5.根据需要设定数据的
属性,一般是不用修改的。6.点击“初始值”第六章ABB机器人程序数据任务6-6三个关键程序数据的设定b.LOADDATA数
据的设定7.对有效载荷的数据根据实际的情况进行设定。8.点击“确定”第六章ABB机器人程序数据在RAPID编程中,需要对有效载
荷的情况进行实时的调整,如图任务6-6三个关键程序数据的设定b.LOADDATA数据的设定A.夹具夹紧。指定当前搬运对象的重量
和重心load1。B.夹具松开。将搬运对象清除为load0第六章ABB机器人程序数据程序数据数据类型说明p10robtarge
t机器人运动目标位置数据v1000speeddata机器人运动速度数据z50zonedata机器人运动转弯数据tool0toold
ata机器人工具数据TCP数据设定参数说明名称设定数据的名称范围设定数据可使用的范围存储类型设定数据的可存储类型任务设定数据所在的
任务模块设定数据所在的模块例行程序设定数据所在的例行程序维数设定数据的维数初始值设定数据的初始值组件描述transtranslat
ion数据类型:pos工具中心点的所在位置(x、y和z),单位为mm。存储当前工具中心点在当前工件坐标系的位置。如果未指定任何工件
坐标系,则当前工件坐标系为大地坐标系。rotrotation数据类型:orient工具姿态,以四元数的形式表示(q1、q2、q3和
q4)。存储相对于当前工件坐标系方向的工具姿态。如果未指定任何工件坐标系,则当前工件坐标系为大地坐标系。robconfrobot
configuration数据类型:confdata机械臂的轴配置(cf1、cf4、cf6和cfx)。以轴1、轴4和轴6当前四分之
一旋转的形式进行定义。将第一个正四分之一旋转0到90°定义为0。组件cfx的含义取决于机械臂类型。extaxexternalax
es数据类型:extjoint附加轴的位置对于旋转轴,其位置定义为从校准位置起旋转的度数。对于线性轴,其位置定义为与校准位置的距离
(mm)。组件描述robaxrobotaxes数据类型:robjoint机械臂轴的轴位置,单位:度。将轴位置定义为各轴(臂)从轴
校准位置沿正方向或反方向旋转的度数。extaxexternalaxes数据类型:extjoint附加轴的位置对于旋转轴,其位置定
义为从校准位置起旋转的度数。对于线性轴,其位置定义为与校准位置的距离(mm)。v_oriexternalaxes数据类型:num
TCP的重定位速度,单位:度/秒。如果使用固定工具或协同的外轴,则是相对于工件的速率。v_leaxvelocitylinear
externalaxes数据类型:num线性外轴的速度,单位:mm/s。v_leaxvelocityrotationalex
ternalaxes数据类型:num旋转外轴的速率,单位:度/秒。组件描述v_tcpvelocitytcp数据类型:num工具
中心点(TCP)的速度,单位:mm/s。如果使用固定工具或协同的外轴,则是相对于工件的速率。组件描述finepfinepoint
数据类型:bool规定运动是否以停止点(fine点)或飞越点结束。?TRUE:运动随停止点而结束,且程序执行将不再继续,直至机械
臂达到停止点。未使用区域数据中的其他组件数据。?FALSE:运动随飞越点而结束,且程序执行在机械臂达到区域之前继续进行大约100
ms。pzone_tcppathzoneTCP数据类型:numTCP区域的尺寸(半径),单位:mm。根据以下组件pzone_
ori...zone_reax和编程运动,将扩展区域定义为区域的最小相对尺寸。pzone_oripathzoneorient
ationDatatype:num有关工具重新定位的区域半径。将半径定义为TCP距编程点的距离,单位:mm。数值必须大于pzo
ne_tcp的对应值。如果低于,则数值自动增加,以使其与pzone_tcp相同。pzone_eaxpathzoneextern
alaxes数据类型:num有关外轴的区域半径。将半径定义为TCP距编程点的距离,以mm计。数值必须大于pzone_tcp的对应
值。如果低于,则数值自动增加,以使其与pzone_tcp相同。zone_orizoneorientation数据类型:num工具
重定位的区域半径大小,单位:度。如果机械臂正夹持着工件,则是指工件的旋转角度。zone_leaxzonelinearexter
nalaxes数据类型:num线性外轴的区域半径大小,单位:mm。zone_reaxzonerotationalextern
alaxes数据类型:num旋转外轴的区域半径大小,单位:度。组件描述robholdrobothold数据类型:bool定义机
械臂是否夹持工具:?TRUE:机械臂正夹持着工具。?FALSE:机械臂未夹持工具,即为固定工具。tframetoolfr
ame数据类型:pose工具坐标系,即:?TCP的位置(x、y和z),单位:mm,相对于腕坐标系(tool0)。?工具坐标
系的方向,相对于腕坐标系。tloadtoolload数据类型:loaddata机械臂夹持着工具:工具的负载,即:?工具的质量
(重量),单位:kg。?工具负载的重心(x、y和z),单位:mm,相对于腕坐标系。?工具力矩主惯性轴的方位,相对于腕坐标系
。?围绕力矩惯性轴的惯性矩,单位:kgm2。如果将所有惯性部件定义为0kgm2,则将工具作为一个点质量来处理。固定工具:用
于描述夹持工件的夹具的负载:?所移动夹具的质量(重量),单位:kg?所移动夹具的重心(x、y和z),以mm计,相对于腕坐标
系。?所移动夹具力矩主惯性轴的方位,相对于腕坐标系。?围绕力矩惯性轴的惯性矩,单位:kgm2。如果将所有惯性部件定义为0kgm2,则将夹具作为一个点质量来处理。组件描述robholdrobothold数据类型:bool定义机械臂是否夹持工件:?TRUE:机械臂正夹持着工件,即使用了固定工具。?FALSE:机械臂未夹持工件,即机械臂夹持工具。ufproguserframeprogrammed数据类型:bool规定是否使用固定的用户坐标系:?TRUE:固定的用户坐标系。?FALSE:可移动的用户坐标系,即使用协调外轴。也用于MultiMove系统的半协调或同步协调模式。ufmecuserframemechanicalunit数据类型:string与机械臂协调移动的机械单元。仅在可移动的用户坐标系中进行指定(ufprog为FALSE)。指定系统参数中所定义的机械单元名称,例如,orbit_a。uframeuserframe数据类型:pose用户坐标系,即当前工作面或固定装置的位置:?坐标系原点的位置(x、y和z),以mm计。?坐标系的旋转,表示为一个四元数(q1、q2、q3和q4)。如果机械臂正夹持着工具,则在大地坐标系中定义用户坐标系(如果使用固定工具,则在腕坐标系中定义)。对于可移动的用户坐标系(ufprog为FALSE),由系统对用户坐标系进行持续定义。oframeobjectframe数据类型:pose目标坐标系,即当前工件的位置:?坐标系原点的位置(x、y和z),以mm计。?坐标系的旋转,表示为一个四元数(q1、q2、q3和q4)。在用户坐标系中定义目标坐标系。组件描述mass数据类型:num负载的重量,单位:kg。cogcenterofgravity数据类型:pos如果机械臂正夹持着工具,则有效负载的重心是相对于工具坐标系,单位:mm。如果使用固定工具,则有效负载的重心是相对于机械臂上的可移动的工件坐标系。aomaxesofmoment数据类型:orient矩轴的方向姿态。是指处于cog位置的的有效负载惯性矩的主轴。如果机械臂正夹持着工具,则方向姿态是相对于工具坐标系。如果使用固定工具,则方向姿态是相对于可移动的工件坐标系。ixinertiax数据类型:num负载绕着X轴的转动惯量,单位:kgm2。转动惯量的正确定义,则会合理利用路径规划器和轴控制器。当处理大块金属板等时,该参数尤为重要。所有等于0kgm2的转动惯量ix、iy和iz均指一个点质量。iyinertiay数据类型:num负载绕着Y轴的转动惯量,单位:kgm2。有关更多信息,请参见ix。izinertiaz数据类型:num负载绕着Z轴的转动惯量,单位:kgm2。有关更多信息,请参见ix。
献花(0)
+1
(本文系新用户82639...原创)