大数跨境

工业机器人点位记录坐标系的选择

工业机器人点位记录坐标系的选择 东莞机器人之家
2022-04-21
1
导读:欢迎关注广西柳州柳江甘牛人共众号:制作和转发各种资讯和文章,国家政治、经济、文化、科技、教育和工业机器人等,

欢迎关注广西柳州柳江甘牛人共众号:制作和转发各种资讯和文章,国家政治、经济、文化、科技、教育和工业机器人等,为家乡带盐!

工业机器人

点位记录坐标系的选择

20181111韦作潘

一、工业机器人坐标系

ABB工业机器人坐标系有大地坐标(world),基座标系(base),工件坐标系(wobj),工具坐标系(tool)。

1、大地坐标系:可定义机器人单元,所有其他的坐标系均与大地坐标系直接或间接相关。适用于微动控制、一般移动以及处理具有若干机器人或外轴移动机器人的工作站和工作单元。如果有多台机器人,并且需要它们相互配合工作,机器人之间需要知道对方的位置,这时候就可以建立一个世界坐标系,把多台机器人之间进行坐标系之间的关联,以机器人基座标为世界坐标系的子坐标系,就可以让每台机器人都可以通过世界坐标系换算出来其他机器人的位置,这样防止机器人之间相互碰撞和干扰。

2、基坐标系:固定于机器人基座,它是最便于机器人从一个位置移动到另一个位置的坐标系。单台机器人时候,默认的世界坐标系和基座标系是相同的、重合的。

3、工件坐标系:与工件相关,通常是最适于对机器人进行编程的坐标系。

4、工具坐标系定义机器人到达预设目标时所使用工具的位置。

5、坐标系说明

其他世界品牌工业机器人例如安川、库卡、发那科等,还有国产机器人例如华数、欢颜、新时达、广数工业机器人等,坐标系大体上相同,实质对象是相同的,只是名字不同,所以只需要把大致的名字对应上即可,当然还有一些细小的区别,在这里就不再多说其他机器人坐标系。

二、工业机器人工具坐标系和工件坐标系理解

1、ABB工业机器人工具坐标系

ABB工业机器人的工具坐标系,在机器人第六轴(或者最末端轴)有固定的工具坐标系tool0,即工具tool0的TCP和坐标系方向固定于第六轴上面。机器人工作时候需要在第六轴上面安装不同的工具,工作时候需要在不同工具上面建立不同坐标系,这些建立的工具坐标系都是以tool0为基准建立的子坐标系,其他工具坐标系的原点TCP和坐标系X、Y、Z方向的数据都是以tool0为基准的偏移量数据,这里不讲解工具坐标系如何建立。

2、工业机器人工件坐标系

ABB工业机器人的工件坐标系,在机器人的底座中心位置固定了一个基座标系wobj0,这个坐标系的原点和X、Y、Z方向可以如下图所示。机器人工作时候在不同的工作平台上面对不同的工件进行加工,最后得到产品。这些工件为加工、计算方便,可以建立对应的工件坐标系,这些工件坐标系都是以固定在机器人底座中心的基座标系wobj0为基准建立的子坐标系。下图所示单台机器人世界坐标系和机器人基座标系,基坐标系原点在机器人底座中心处,基座标系红色线和线头表示X正方向,基座标系绿色线和线头表示Y轴正方向,基座标系蓝色线和线头表示Z轴正方向。这里不讲解如何建立工件坐标系。

 记录点位坐标系选择说明和举例

1、记录点位坐标系选择通用规则(个人使用)

ABB机器人示教器中,进入手动操作界面,先切换到手动线性移动模式,坐标系统一用基座标系,工具坐标系编号和工件坐标系编号要根据点位所在移动指令所使用的工具和工件为准做选择。每次记录点位之后,可以移动机器人偏离记录点位位置,在把程序指针移至点位移动指令,单步运行验证点位是否记录正确。

例如下图移动指令指定点位pHome的Tregaskiss22deg和工件wobj0

  手动操作里面坐标系选择基座标系,工具工件要根据移动指令指定的工具Tregaskiss22deg和工件wobj0,如下图所示:

2、举例:画圆

1)画圆程序

MODULE Module1

CONST robtarget pHome:=[[1022.13,0.25,960.10],[0.0610215,0,-0.998136,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

TASK PERS wobjdata wobj1:=[FALSE,TRUE,"",[[0,0,0],[1,0,0,0]],[[0,0,0],[1,0,0,0]]];

TASK PERS tooldata tool1:=[TRUE,[[0,0,0],[1,0,0,0]],[0.5,[0,0,10],[1,0,0,0],0,0,0]];

    PERS tooldata Tregaskiss22deg:=[TRUE,[[148.62,0.25,326.31],[0.833900724,0,0.551914471,0]],[1,[0,0,100],[1,0,0,0],0,0,0]];

    PERS robtarget pYuan20:=[[877.69,-336.43,789.94],[0.00430475,-3.6595E-08,0.999991,-7.19785E-08],[-1,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

    PERS robtarget pYuan10:=[[606.42,11.94,789.94],[0.0043047,-1.13101E-08,0.999991,3.9528E-09],[0,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

    PERS robtarget pYuan40:=[[902.10,262.56,789.94],[0.00430493,1.49401E-07,0.999991,1.81244E-07],[0,1,-2,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

    PERS robtarget pYuan30:=[[1202.28,-42.94,789.94],[0.00430479,-2.40899E-08,0.999991,-2.44807E-08],[-1,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

PERS num numZCS:=4;

   

    PROC main()

        TPErase;

        TPReadNum numZCS, "Please input number for numZCS = ";

        reg1 := 1;

        MoveJ pHome, v1500, z50, Tregaskiss22deg\WObj:=wobj0;

        MoveL Offs(pYuan10,0,0,100), v1500, z50, Tregaskiss22deg\WObj:=wobj0;

        WHILE reg1 <= numZCS DO

        MoveJ pYuan10, v1500, fine, Tregaskiss22deg\WObj:=wobj0;

        MoveC pYuan20, pYuan30, v1500, z50, Tregaskiss22deg\WObj:=wobj0;

        MoveC pYuan40, pYuan10, v1500, fine, Tregaskiss22deg\WObj:=wobj0;

        reg1 := reg1 + 1;

        ENDWHILE

        MoveJ Offs(pYuan10,0,0,100), v1500, z50, Tregaskiss22deg\WObj:=wobj0;

        MoveJ pHome, v1500, z50, Tregaskiss22deg\WObj:=wobj0;

ENDPROC

ENDMODULE

(2)坐标系选择和定点位

A、点位坐标系选择

B、安全参考点pHome点记录(移动指令用工具坐标系Tregaskiss22deg、工件坐标系wobj0)

C、画圆点位yuan10记录(移动指令用工具坐标系Tregaskiss22deg、工件坐标系wobj0)

D、画圆点位yuan20记录(移动指令用工具坐标系Tregaskiss22deg、工件坐标系wobj0)

E、画圆点位yuan30记录(移动指令用工具坐标系Tregaskiss22deg、工件坐标系wobj0)

F、画圆点位yuan40记录(移动指令用工具坐标系Tregaskiss22deg、工件坐标系wobj0)

(3)仿真录像视频


4)坐标系讲解视频

 

欢迎关注广西柳州柳江甘牛人共众号

作者:韦作潘


【声明】内容源于网络
0
0
东莞机器人之家
内容 495
粉丝 0
东莞机器人之家
总阅读129
粉丝0
内容495