《ABB机器人程序数据》由会员分享,可在线阅读,更多相关《ABB机器人程序数据(17页珍藏版)》请在金锄头文库上搜索。
1、ABB机器人程序数据PROC moveO ()MoveL plO, v200, fine, tPen;MoveL p20, v200, fine, tPen;MoveL p30, v200, fine, tPen;MoveL p40, v200, fine, tPen;MoveL plO, v200, fine, tPen;ENDPROCENDMODULEPROC move1()MoveL p10, v200, fine, tPen;MoveL p20, v200, Z50, tPen;MoveL p30, v200, fine, tPen;MoveL p40, v200, Z50, tPen
2、;MoveL plO, v200, fine, tPen;ENDPROCENDMODULE编程实例3:编写程序MoveL p1, v500, fine, tool1;MoveC p2, p3, v500, z20, tool1;P1、P2、P3 三点确定一个圆弧MoveC p4, p1, v500, fine, tool1;P3、P4、P1 三点确定一个圆弧如下图所示,一条MoveC指令最多只能转过240,因此不可能通过一条指令完成一个圆。编程实例4:利用MoveAbsJ让机器人返回机械原点位置提示:机械原点处轴1-6角度分别为0-0-0-0-30-0度。(轴5的角度也可以设置为 90或其他角
3、度,设为0会出现奇异点)fewrobax:raz_l :二rax_2 :二rax_3 :二0rax_4 :二 rax 5 :二编程实例5:函数Offs()Offs(pl, x, y, z)代表一个离pl点X轴偏差量为x, Y轴偏差量为y, Z轴偏 差量为z的点(坐标值的增量)。例:MoveL Offs(p1,10,100,130),V200,Z50 说明:一一一一1) 0ffs(p1,10,100,130)表示一个目标点,该目标点的X、Y、Z轴坐标值与p1点的 X、Y、Z轴坐标值相差10,100,130。2) 点Offs()是TCP的一个目标点,其坐标方向与机器人当前工件坐标系一致。比较图中A
4、点与p1点的坐标值,A点就是0ffs(p1,10,100,130)练习1:画圆使用函数Offs(),编写指令让机器人画一个圆,半径为100mm。MoveL p1, v500, fine, tool1;MoveC 0ffs(p1,100,100,0), 0ffs(p1,200,0,0), v500, fine , tool1;MoveC 0ffs(p1,100,-100,0) , p1, v500, fine, tool1;如下图所示:练习2:画矩形画一个长为100mm ,宽为50mm ,长方形。MoveL pl,vl00 .MoveL p2,vl00,.MoveL p3,vl00,.MoveL
5、 p4,vl00,.MoveL pl,vl00,.确定p2、p3、p4位置可采用Offs函数。MoveL pl,vl00,.MoveL 0ffs(pl,100,0,0),vl00,.MoveL Offs(pl ,100,-50,0),vl00,.MoveL Offs(p 1,0,-50,0)vl00,.MoveL pl,vl00,.RAPID的程序数据程序数据是在程序模块或系统模块中设定的值和定义的一些环境数据。创建的 程序数据由同一个模块或其他模块中的指令进行引用。例解:图中是关节运动指令MoveJ,调用了四个程序数据。MODULE ModulelCONST robtarge 七PROC R
6、ou七in己1Move JEND PROCplO:=374.00,0.00,630.00,()V1000 toolO;8 ENDMODULE程序数据数据类型数据类型说明plOrobtarget机器人运动目标位置数据vlOOOspeeddata机器人运动速度数据z50zonedata机器人运动转弯数据toolOtooldata机器人工作数据TCP、在示教器中查看程序数据在示教器的“程序数据”窗口可查看和创建所需要的程序数据。从列表中迭择一个数摇类塑O手鲂5Tot a3 PC-20151231VTHH?严程序数据-已用藪据类墜Jk IB IB药护装捱停止 工停止速变10M)范圉:RAPD)ZT R
7、OB1更改范围到丘clockloaddatanumrobtargettool datawobjdata例: 指令 MoveL plO, vlOOO, z50, MyTtool;其中plO, vlOOO, z50, MyTtool就是4个程序数据以P10为例,查看它的定义:I AI ,. II 0 II Sjsta3 an任务与程序複块例行程序T56T291 :1112CONST robtarget plO : = 451 92CONST 里obt:且里今己七 p20 : = $ $4 51 一 92.1如CONST robtarget p30:=451.92/155.17,829.35PROC
8、 maMoveLinDS)MoveL p30 fEND PROCvlOOO, vlOOO,z50 y MyToolWObj:=Workob z50 f MyToolWObj:=WorkbbPROC Routinel()MoveAbsJ *NoEOffs, vl000,z50, MyToolWObENDPROCENDMODULE解读:CONST robtarget P10:=451.92,155.17,829.35,.530853235561695,.499288307299979,-.55336406343795,.40 3353742740343,0,0,0,0,9E9,9E9,9E9,9E
9、9,9E9,9E9;数据的存储类型数据类型数据名称含义CONSTrobtargetP10运动目标点数据的存储类型数据类型数据名称/CON呂丁 Tobtai韻 P10:= 451.92,155.17卅29.3习, .530853235561695:.499288307299979:-.55336406343795:.403353742740343: 9E9:9E9:9E9:9E9:9E9:9E9 先要明白:1)机器人的工具坐标系是由工具中心点TCP与坐标方位组成的,TCP点就是工 具坐标系原点。2)工具坐标系的方向随腕部的移动而发生变化。3)更换夹具后必需重新定义工具坐标系;可以不更改程序,直接
10、运行。上述4组数据用来定义机器人和外部轴的目标点数据:第1、2两个数据描述工具坐标系。1、第1部分的三个数定义的是工具中心点TCP(也就是P10点,因为此时TCP移 到了目标点P10处)在当前工件坐标系内的三坐标值(X,Y,Z),单位mm;如果没 有定义工件坐标,那么就以大地坐标为基准。2、第2部分的四个数据用于描述工具坐标系的方位,它可以标示工具的姿势。3、第3部分的四个数表示的是机器人轴配置数据,是第1、4、6轴在目标点处转 的角度分区,第四个数据不用,默认为0。例如,0表示在0 -90之间、1表示在90到180之间,-1表示在-90到 -180。之间,-2表示在-180。到-270。之间
11、等(度数均以原点位置定位)。另解:机器人轴配置数据(cf1,cf4,cf6,cfx)由四个值组成。cf1,cf4,cf6分别对应的 是1、4、6轴所转角度在直角坐标系中的象限值。例如:1轴45度、4轴负10度,6轴120度,则对应的象限值为0,-1,1。cfx则为在满足前三项值时机器人最多有8种配置,对应的值为0-7:4、第4部分是定义外部轴的位置,以mm为单位,如果没有设置外部轴,就以9E+09 表示。二、数据类型这种数据是做什么用的(用来定义什么内容)ABB机器人共76种数据类型,还可以自己创建新的数据类型。三、数据的存储类型这种数据是怎么存储的(程序运行中数值会如何变化) 三种存储类型:
12、 变量VAR 可变量PERS 常量CONST我们亲自查看一下:1)变量VAR这类数据在程序执行过程中会保持当前值(随程序的运行而发生 变化),一旦程序指针移到主程序,数值会丢失。举例说明:VAR num length :=0;名称为length的数字数据VAR string name := John;名称为 name 的字符数据VAR bool finish :=FALSE;名称为finish的布尔量数据在程序中执行变量型数据的赋值,在指针复位后将恢复为初始值。2)可变量PERS这类数据在程序执行过程中会保持当前值(随程序的运行而发 生变化),但是无论程序指针如何,该数据会保持最后一次的值。可
13、变量最大的特点是,无论程序的指针如何,都会保持最后赋予的值。 举例说明:PERS num nbr :=1;名称为nbr的数字数据PERS string test := Hello;名称为 test 的字符数据在机器人执行的RAPID程序中也可以对可变量存储类型程序数据进行赋值的 操作。在程序执行以后,赋值的结果会一直保持,直到对其进行重新赋值。3)常量CONST在定义时赋初始值,在程序运行过程中不会发生变化。常量CONST常量的特点是在定义时已赋予了数值,在程序运行中不会发生变 化,除非手动修改(用指令重新赋值)。举例说明:CONST num gravity :=9.81;名称为 gravity 的数字数据CONST string greating := Hello; 名称为 greating 的字符数据注意:存储类型为常量的程序数据,不允许在程序中进行等同赋值的操作(通过某 种运算进行间接赋值),除非进行手动修改(重新赋值)。四、常用的程序数据类型根据不同的数据用途,定义了不同的程序数据类型,下表是机器