ABB 机器人 RAPID 常用指令详解中文2Word格式.docx
《ABB 机器人 RAPID 常用指令详解中文2Word格式.docx》由会员分享,可在线阅读,更多相关《ABB 机器人 RAPID 常用指令详解中文2Word格式.docx(32页珍藏版)》请在冰豆网上搜索。
例如,当不要求与外部设备通讯和外部设备和机器人通讯同步的时候,这个项目也很有用。
使用项目\Conc的时候,连续的运动指令的数量限制为5个。
在包括StorePath—RestorePath的程序段中不允许使用带有\Conc项目的运动指令。
如果不使用该项目,并且ToPoint不是停止点,在机器人到达程序zone之前一段时间后续指令就开始执行
了。
在多运动系统中的坐标同步运动中不能使用该项目。
ToJointPos:
到达关节位置数据类型:
jointtarget
外部轴的绝对目标轴位置。
定义为一个命名的位置或者直接存储在指令中(在指令中用*标记)。
[\ID]:
同步ID数据类型:
identno该项目必须使用在多运动系统中,如果并列了同步运动,则不允许在其他任何情况下使用。
指定的ID号在所有协同的程序任务中必须相同。
该ID号保证在routine中运动不会混乱。
如果并列了同步运动,不允许在其他任何情况下使用。
Speed:
数据类型:
speeddata应用到运动中的速度数据。
速度数据定义旋转或者线性外部轴的速度。
[\T]:
时间数据类型:
num
该项目用来指定外部轴运动的总时间,单位秒。
它代替相应的速度数据。
Zone:
数据类型:
zonedata
运动的zone数据。
它定义停止点或者飞点。
如果是飞点它描述线性或者旋转外部轴的减速度或者加速度。
[\Inpos]:
到位数据类型:
stoppointdata(停止点数据)
该项目用来指定机器人TCP在停止点位置的收敛性判别标准。
该停止点数据代替在zone参数中指定的
zone。
程序执行:
线性或者旋转外部轴按照编程的速度移动到编程的点。
更多范例:
CONSTjointtargetj1:
=[[9E9,9E9.9E9.9E9.9E9.9E9],[0,9E9,9E9,9E9,9E9,9E9]];
CONST
j2:
=[[9E9,9E9.9E9.9E9.9E9.9E9],[30,9E9,9E9,9E9,9E9,9E9]];
j3:
=[[9E9,9E9.9E9.9E9.9E9.9E9],[60,9E9,9E9,9E9,9E9,9E9]];
speeddata
j4:
=[[9E9,9E9.9E9.9E9.9E9.9E9],[90,9E9,9E9,9E9,9E9,9E9]];
rot_ax_speed:
=[0,0,0,45];
MoveeExtJj1,rot_ax_speed,fine;
MoveeExtJj2,rot_ax_speed,z20;
MoveeExtJj3,rot_ax_speed,z20;
MoveeExtJj4,rot_ax_speed,fine
在该例子中,旋转独立轴移动到轴位置0,30,60和90度,移动速度为45度/秒。
语法:
MoveExtJ[‘\’Conc‘,’]
[ToJointPos’:
=’]<
jointtarget类型的表达式(IN)>
[‘\’ID‘:
=’<
identno类型的表达式(IN)>
]’,’
[Speed‘:
speeddata类型的表达式(IN)>
[‘\’T‘:
num类型的表达式(IN)>
]‘,’
[Zone‘:
zonedata类型的表达式(IN)>
[‘\’Inpos‘:
stoppointdata类型的表达式(IN)>
]‘;
’
相关信息:
相关信息
参看
其他位置指令
RAPID参考手册-RAPID概述,RAPID摘要-运动部分
关节目标(jointtarget)的定义
第959页jointtarget-关节位置数据
速度的定义
第1010页speeddata—速度数据
Zone数据的定义
第1047页zonedata—zone数据
运动综述
RAPID参考手册—RAPID概述,运动和I/O原理部分
当前程序执行
RAPID参考手册-RAPID概述,运动和I/O原理部分
1.93.MoveJ-通过关节移动移动机器人
当运动不必是直线的时候,MoveJ用来快速将机器人从一个点运动到另一个点。
机器人和外部轴沿着一个非直线的路径移动到目标点,所有轴同时到达目标点。
该指令只能用在主任务T_ROB1中,或者在多运动系统中的运动任务中。
也可参看第228页更多指令。
例1MoveJp1,vmax,z30,tool2;
工具tool2的TCP沿着一个非线性路径到位置p1,速度数据是vmax,zone数据是z30。
例2MoveJ*,vmax\T:
=5,fine,grip3;
工具grip3的TCP沿着一个非线性路径运动到存储在指令中的停止点(用*标记)。
整个运动需要5秒钟。
MoveJ[\Conc]ToPoint[\ID]Speed[\V]|[\T]Zone[\Z][\Inpos]Tool[\WObj][\Conc]:
switch当机器人运动的同时,后续的指令开始执行。
例如,当不要求与外部设备通讯或外部设备和机器人通讯同步的时候,这个项目也很有用。
如果不使用该项目,并且ToPoint不是停止点,在机器人到达程序zone之前一段时间后续指令就开始执行了。
ToPoint:
robtarget机器人和外部轴的目标位置。
应用到运动中的速度数据。
速度数据定义TCP、工具重新定向或者外部轴的速度。
[\V]:
速度数据类型:
该项目用来在指令中直接指定TCP的速度,单位mm/s。
它用来代替速度数据中相应的速度。
它描述产生的转角路径的大小。
[\Z]:
Zone数据类型:
该项目用来在指令中直接指定机器人TCP的位置精度。
转角路径的长度单位是mm,它代替zone数据中相
应的zone。
Tool:
tooldata
当机器人运动的时候使用的工具。
TCP是移动到指定的目标点的那个点。
[\Wobj]:
工作对象数据类型:
wobjdata
指令中机器人位置相关到的工作对象(坐标系)。
该项目可以忽略,如果忽略的话,位置相关到世界坐标系。
另一方面,如果使用了静态TCP或者并列了外部轴,该项目必须指定。
程序执行:
机器人TCP用轴角度插补移动到目标点。
也就是说每一个轴都使用一个固定的轴速度并且所有轴同时到达
目标点,所走的是一个非线性的路径。
总的来说,TCP按照大约的编程速度运动(无论是否并列了外部轴)。
在TCP运动的同时,工具重新定向,外部轴也在运行。
如果不能达到工具重新定向或者外部轴的编程的速度,TCP的速度将降低。
当运动路径转到下一段的时候,通常会产生转角路径。
如果在zone数据中指定了停止点,只有当机器人和外部轴到达合适的位置的时候,程序执行才会继续。
如何使用改指令的更多范例说明如下:
例1MoveJ*,v2000\V:
=2200,z40\Z:
=45,grip3;
工具grip3的TCP沿着一个非线性路径移动到存储在指令中的位置。
运动执行数据被设定为v2000和z40;
TCP
的速度和zone大小分别是2200mm/s和45mm。
例2MoveJp5,v2000,fine\Inpos:
=inpos50,grip3;
工具grip3的TCP沿非线性路径移动到停止点p5。
当停止点fine的50%的位置条件和50%的速度条件满足的时候,机器人认为它已经到达该点。
它等待条件满足最多等2秒。
参考stoppointdata类型的预定义数据inpos50。
例3MoveJ\Conc,*,v2000,z40,grip3;
工具grip3的TCP沿着一个非线性移动到指令中存储的位置。
当机器人移动的时候,后续逻辑指令开始执行。
例4MoveJstart,v2000,z40,grip3\WObj:
=fixture;
工具grip3的TCP沿着一个非线性的路径到位置start。
该位置在fixture的对象坐标系统中指定。
MoveJ
[’\’Conc’,’]
[ToPoint’:
=’]<
robtarget类型的表达式(IN)>
’,’_[’\’ID’:
identno类型的表达式(IN)>
]’,’_
[Speed’:
speeddata类型的表达式(IN)>
_[’\’V’:
num类型的表达式(IN)>
]_
|[’\’T’:
num类型的表达式(IN)>
]’,’_[Zone’:
zonedata类型的表达式(IN)>
_
[’\’Z‘:
num类型的表达式(IN)>
[’\’Inpos’:
stoppointdata类型的表达式(IN)>
]‘,’_
[Tool’:
tooldata类型的恒量(PERS)>
[’\’WObj’:
wobjdata类型的恒量(PERS)>
]’;
RAPID参考手册-RAPID概述,RAPID摘要-运动部分
停止点数据的定义
第1014页stoppointdata-停止点数据
工具的定义
第1031页tooldata—工具数据
工作对象的定义
第1039页wobjdata—工作对象数据
RAPID参考手册-RAPID概述,运动和I/O原理-坐标系部分
并发的程序执行
RAPID参考手册—RAPID概述,运动和I/O原理—用逻辑指令同步部分
1.94.MoveJDO-通过关节运动移动机器人在转角设定数字输出
MoveJDO(关节运动数字输出)在运动不必是直线的时候用来快速把机器人从一个点移动到另一个点。
在转
角路径的中间位置,指定的数字输出信号被置位/复位。
机器人和外部轴沿着一个非线性的路径移动到目标位置。
所有轴在同一时间到达目标位置。
该指令只能用在主任务T_ROB1中,或者在多运动系统中的运动任务中。
基本范例:
该指令的基本范例说明如下:
例1MoveJDOp1,vmax,z30,tool2,do1,1;
工具tool2的TCP沿着一个非线性路径移动到目标位置p1,速度数据vmax和zone数据z30。
在p1的转角路径的
中间位置,输出信号do1被置位。
MoveJDOToPoint[\ID]Speed[\T]ZoneTool[\WObj]SignalValue
同步ID
机器人运动时所使用的工具。
TCP就是移动到目标点的那个点。
Signal:
signaldo要改变的数字输出信号的名称。
Value:
dionum期望的信号数值(0或者1)。
参考指令MoveJ,可以得到关节运动的更多信息。
在飞点的转角路径的中间位置,数字输出信号置位/复位,如下图所示。
下图说明在转角路径MoveJ指令的数字输出信号的置位/复位。
对于停止点,我们推荐使用“正常”的编程顺序,即MoveJ+SetDO。
但是当在指令MoveJDO中使用停止点、当机器人到达停止点的时候,数字输出信号置位/复位。
在执行模式继续逐步向前而不是逐步向后时,指定的I/O信号被置位/复位。
MoveJDO_
robtarget类型的表达式(IN)>
_[’\’T’:
num类型的表达式(IN)>
]’,’_
[Zone’:
zonedata类型的表达式(IN)>
’,’_[Tool’:
wobjdata类型的恒量(PERS)>
]’,’_[Signal’:
signaldo类型的变量(VAR)>
]‘,’_
[Value‘:
dionum类型的表达式(IN)>
通过关节运动移动机器人
第226页MoveJ-通过关节运动移动机器人
1.95.MoveJSync-通过关节运动移动机器人,并且执行一个RAPID程
序
MoveJSync(同步关节移动)用来在不要求直线运动的时候把机器人从一个点快速移动到另一个点。
在目
标点的转角路径的中间位置,指定的RAPID程序开始运行。
在运动过程中,相对于圆周的方向通常保持不变。
该指令只能用在主任务T_ROB1,或者多运动系统的运动任务中。
该指令的基本范例说明如下。
例1MoveJSyncp1,vmax,z30,tool2,“proc1”;
工具tool2的TCP沿着一个非线性路径移动到位置p1,速度数据vmax,zone数据z30。
在p1的转角路径
的中间位置程序proc1开始执行。
MoveJSyncToPoint[\ID]Speed[\T]ZoneTool[\WObj]ProcName
robtarget机器人和外部轴的目标点。
ProcName:
程序名称数据类型:
string
在目标点的转角路径的中间位置要执行的RAPID程序的名称。
参考指令MoveJ,可以得到关节运动的更多信息。
当TCP到达MoveJSync指令的目标点的转角路径的中间位置时,指定的RAPID程序开始执行,如下图所示。
对于停止点,我们推荐使用“正常”的编程顺序,即MoveJ+其他RAPID指令。
下表描述了在不同执行模式下指定的RAPID程序的执行:
执行模式
RAPID程序的执行
继续或者循环
按照该描述
逐步向前
在停止点
逐步向后
一点也不执行
限制:
当程序停止后,从连续执行或循环执行切换到逐步向前或者向后将导致错误。
该错误告诉用户模式切换将
导致路径上的执行队列的RAPID程序的执行错误。
指令MoveJSync不能用在TRAP层次上。
指定的RAPID程序不能用逐步执行测试。
MoveJSync
’,’
[’\’ID’:
identno类型的表达式(IN)>
[’\’T’:
]’,’
[’\’Z‘:
wobjdata类型的恒量(PERS)>
[ProcName‘:
string类型的表达式(IN)>
RAPID参考手册-RAPID概述,运动和I/O