编程语言应用

首页 » 常识 » 预防 » 工业机器人编程之MOVEJ指令
TUhjnbcbe - 2023/6/19 21:07:00

哈喽,大家上午好呀~

在之前的文章中,相信你已经对ABB机器人的编程有了一定的了解,比如程序的框架、组成等,而今天,正式开始指令的学习吧。

对于大多数的机器人而言,编程指令使用最多的非MOVE指令莫属了,而这篇文章,则带你熟悉并掌握常用的move指令。

Movel(线性运动)

定义:机器人TCP以线性方式运动至目标点,机器人运动状态可控,运动路径保持唯一。

简单来说,就是机器人将当前TCP沿着直线运动,根据指令要求运动至目标点。

在了解了线性运动的定义后,再来看看MOVEL指令又该如何去使用?

先来看下MOVEL指令的组成:

MoveLARG,v,z50,tool0\WObj:=wobj0;

在MOVEL指令中,MOVEL是指令码,ARG则表示线性运动的目标点,v则是线性运动的速度,z50则是定位类型,tool0\WObj:=wobj0,分别表示工具和工件坐标系。

在了解了MOVEL指令的组成后,再来看看MOVEL具体的使用:

MoveLp10,v,z50,tool0\WObj:=wobj0;

其中,P10是线性运动的目标点,其数据类型是robtarget,V是速度,其数据类型是speeddata,Z50是定位类型,其中Z50代表转弯半径,另一种常用的定位类型则是fine,那么,这两种定位类型有何区别吗?

Z50:当指令中使用了Z50的定位类型,则表示在距离下一个目标点前50mm的时候,以目标点为圆心、50mm为半径做圆弧运动,换句话说,当使用了Z50后,TCP是到达不了下一个目标点的固定位置。

FINE:当指令中使用了fine的定位类型,则表示机器人的TCP会移动到目标点的位置,而不会像Z50那样提前以50mm为半径的距离离开目标点。

好,在了解了MOVEL指令后,再看看如何在程序中使用:

PROCrMove()

MoveLp10,v,z50,tool0\WObj:=wobj0;

MoveLp20,v,z50,tool0\WObj:=wobj0;

MoveLp30,v,z50,tool0\WObj:=wobj0;

MoveLp40,v,z50,tool0\WObj:=wobj0;

ENDPROC

在上述的程序中,共使用了4条MOVEL指令,则在写好指令后,下一步就是要给每个目标位置示教点位,这个动作,需要在示教器上进行进行。

通过点位的示教后,可以得到每个点位的具体数据:

PERSrobtargetp10:=[[.76,-.34,.35],[0.5,-2.E-7,0.,-1.E-7],[-1,1,-2,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];

PERSrobtargetp20:=[[.76,-.34,.35],[0.5,-2.E-8,0.,1.E-8],[-1,1,-2,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];

PERSrobtargetp30:=[[.76,.66,.35],[0.5,5.E-8,0.,-7.E-8],[0,2,-3,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];

PERSrobtargetp40:=[[.76,.66,.35],[0.5,3.E-7,0.,1.E-7],[0,2,-3,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];

在有了具体的点位之后,就可以进行动作验证了。

好,这就是关于MOVEL指令的简单用法,后续会继续介绍其他MOVE指令的运用~~~

今天《工业机器人的基础编程教程》小智就分享到这,大家可以收藏使用。

1
查看完整版本: 工业机器人编程之MOVEJ指令