您好!欢迎光临工博士商城

ABB机械手配件服务商

产品:79    

咨询热线:18616599333

QQ QQ
您当前的位置:首页 » ABB机器人电机新闻中心 » ABB机器人如何自动重复指定命令及平移指令的操作
产品分类
ABB机器人电机新闻中心
ABB机器人如何自动重复指定命令及平移指令的操作
发布时间:2020-11-11        浏览次数:2054        返回列表
 ABB机器人的FOR指令和WHILE指令可构成简单的指令。

abb机器人

编写程序时,逻辑指令很重要,也是必不可少的。它们在工业机器人编程或其他编程语言中基本相同。对于初学者,请分别理解两条重复的循环逻辑指令,为编写程序奠定基础。

abb机器人

1. WHILE指令
1、WHILE指令结构定义
2、WHILE举例说明
3、WHILE无限循环

abb机器人

2. FOR指令
1、FOR指令结构定义
2、FOR举例说明
3、FOR指令要点
4、FOR指令变量i的举例说明

abb机器人

(一)ABB机器人直线上到某点指定距离的点位如何计算

abb机器人

1. 已知点Curr和点Refer,点Curr和点Refer构成直线,方向由Curr指向Refer

2. 要求Result点距离Curr为指定距离,且Result在直线Curr_Refer上,如何计算Result点位置

3. 可以计算Curr到Refer的距离,根据要求的Result到Curr的距离和Curr到Refer距离的倍率,计算Result的位置

4. 代码如下:



FUNC robtarget GetTracePoint(robtarget Current,robtarget Refer,num Dist)

!line direction: Current to Refer

!Dist: distance between Current and Return position

VAR num dis_tmp;

VAR num dx;

VAR num dy;

VAR num dz;

VAR num ratio;

VAR robtarget pResult:=[[0,0,0],[1,0,0,0],[0,0,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]];

pResult:=Current;

dx:=Refer.trans.x-Current.trans.x;

dy:=Refer.trans.y-Current.trans.y;

dz:=Refer.trans.z-Current.trans.z;



dis_tmp:=distance(Current.trans,Refer.trans);

ratio:=Dist/dis_tmp;

pResult.trans.x:=Current.trans.x+ratio*dx;

pResult.trans.y:=Current.trans.y+ratio*dy;

pResult.trans.z:=Current.trans.z+ratio*dz;

RETURN pResult;



endfunc



(二)ABB机器人平移指令

abb机器人


1、现场机器人在wobj0下有轨迹path_0,现在希望实际运行的时候,轨迹能整体沿着wobj0的x和y方向各偏移30mm,如何***快速实现?



2. 安川机器人有平移指令SFTON,使用如下:

SFTON P003 RF

//基于机器人坐标系平移p003,p003中设置平移的xyz数值

//以下轨迹均基于RF平移p003

MOVL V=290.0

MOVL V=290.0

MOVL V=290.0

SFTOF

//关闭平移



3. 对应ABB机器人RAPID指令为:PDISPSET pose100,其中pose100为pose类型数据,包括trans(xyz)和rot(q1-q4)。Pdispset的偏移和旋转均基于当前使用坐标系,即对于当前坐标系的右乘。

VAR posepose500:=[[0,0,0],[1,0,0,0]];

PROC main()

path_t1;

!原始轨迹

pose500.trans:=[30,30,0];

!设置pose500数据的xyz

PDispSet pose500;

!以下轨迹基于当前轨迹使用的坐标系偏移pose500

path_t1;

PDispOff;

!关闭偏移

ENDPROC

PROC path_t1()

reg1:=100;

MoveLp500,v100,fine,tWeldGun\WObj:=wobj0;

MoveLoffs(p500,reg1,0,0),v100,fine,tWeldGun\WObj:=wobj0;

MoveLoffs(p500,reg1,reg1,0),v100,fine,tWeldGun\WObj:=wobj0;

MoveLoffs(p500,0,reg1,0),v100,fine,tWeldGun\WObj:=wobj0;

MoveLp500,v100,fine,tWeldGun\WObj:=wobj0;

ENDPROC



4. 若机器人轨迹参考wobj1,wobj1不与wobj0平行,则使用pdispset后,轨迹偏移如下图,即偏移参考wobj1的方向。

abb机器人
分享到: 


 

联系热线:18616599333   联系人:赵经理 联系地址:上海市嘉定区南翔镇众仁路399号B栋20层2007-2012

技术和报价服务:星期一至星期六8:00-22:00 ABB机械手配件服务商