A机器人RAPID程序指令与功能简述
ABB机器人RAPID常用指令详解-中文(3)

ABB机器⼈RAPID常⽤指令详解-中⽂(3)Grip3的TCP沿直线运动到停⽌点p5。
当停⽌点fine的50%的位置条件和50%的速度条件满⾜的时候,机器⼈认为它到达了⽬标点。
它等条件满⾜最多等两秒,参看stoppointdata数据类型的预定义数据inpos50。
例3 MoveL \Conc, *, v2000, z40, grip3;Grip3的TCP直线运动到存储在指令中的位置。
当机器⼈移动的时候,后续的逻辑指令开始执⾏。
例4 MoveL start, v2000, z40, grip3 \WObj:=fixture;Grip3的TCP直线运动到位置start,位置在fixture的对象坐标系统中指定。
语法:MoveL _[ ’\’ 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)> ] _[ ’\’ Corr ]’;’相关信息:1.97.MoveLDO-直线移动机器⼈并且在转⾓处设置数字输出⽤途:MoveLDO(直线运动数字输出)⽤来直线移动TCP到指定的⽬标点。
ABB 机器人 RAPID 常用指令详解-中文(4)

在RAPID 程序中,静态的WorldZone 不能被解除并再次激活,或者进行擦除。
在RAPID 程序中,临时的WorldZone 可以被解除(WZDisable),再次激活(WZEnable)或者擦除(WZFree)。
语法:WZDOSet[[‘\’Temp] | [‘\’Stat]’,’][WorldZone’:=’]<wztemporary 类型的变量或者恒量(INOUT)>[‘\’Inside] | [‘\’Before] ‘,’[Shape’:=’]<shapedata 类型的变量(V AR)>’,’[Signal’:=’]<signaldo 类型的变量(V AR)>’,’[SetV alue’:=’]<dionum 类型的表达式(IN)>’;’相关信息:1.231.WZEnable—激活临时WorldZone 监视用途:WZEnable(WorldZone 使能)用来重新激活对临时WorldZone 的监视,该WorldZone 之前定义用来停止运动或者设定输出。
基本范例:该指令的基本范例说明如下:例1 V AR wztemporary wzone;…PROC …WZLimSup \Temp, wzone, volume;MoveL p_pick, v500, z40, tool1;WZDisable wzone;MoveL p_place, v200, z30, tool1;WZEnable wzone;MoveL p_home, v200, z30, tool1;ENDPROC当往p_pick 移动的时候,检测到机器人TCP 的位置,这样它就不能进入特定的空间wzone。
当进入p_place 的时候没有进行这个监视,但是在移动到p_home 的时候重新激活。
项目:WZEnable WorldZoneWorldZone:数据类型:wztemporarywztemporary 类型的变量或者恒量,包含要激活的WorldZone 的标识符。
ABB 机器人 RAPID 常用指令详解-中文(3)

Grip3的TCP沿直线运动到停止点p5。
当停止点fine的50%的位置条件和50%的速度条件满足的时候,机器人认为它到达了目标点。
它等条件满足最多等两秒,参看stoppointdata数据类型的预定义数据inpos50。
例3 MoveL \Conc, *, v2000, z40, grip3;Grip3的TCP直线运动到存储在指令中的位置。
当机器人移动的时候,后续的逻辑指令开始执行。
例4 MoveL start, v2000, z40, grip3 \WObj:=fixture;Grip3的TCP直线运动到位置start,位置在fixture的对象坐标系统中指定。
语法:MoveL _[ ’\’ 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)> ] _[ ’\’ Corr ]’;’相关信息:1.97.MoveLDO-直线移动机器人并且在转角处设置数字输出用途:MoveLDO(直线运动数字输出)用来直线移动TCP到指定的目标点。
ABB 机器人 RAPID 常用指令详解-中文(1)

ABB 机器人RAPID 常用指令详解-中文1.88.MoveAbsJ—把机器人移动到绝对轴位置用途:MoveAbsJ(绝对关节移动)用来把机器人或者外部轴移动到一个绝对位置,该位置在轴定位中定义。
使用实例:终点是一个单一点对于IR6400C 中的不明确的位置,例如携带超过机器人范围的工具运动。
MoveAbsJ 指令中机器人的最终位置,既不受工具或者工作对象的影响,也不受激活程序更换的影响。
但是机器人要用到这些数据来计算负载、TCP 速度和转角点。
相同的工具可以被用在相邻的运动指令中。
机器人和外部轴沿着一个非直线的路径移动到目标位置。
所有轴在同一时间运动到目标位置。
该指令只能被用在主任务T_ROB1 中,或者在多运动系统中的运动任务中。
基本范例:该指令的基本范例说明如下。
也可参看第207 页更多范例。
例1 MoveAbsJ p50, v1000, z50, tool2;机器人将携带工具tool2 沿着一个非线性路径到绝对轴位置p50,以速度数据v1000 和zone 数据z50。
例2 MoveAbsJ *, v1000\T:=5, fine, grip3;机器人将携带工具grip3 沿着一个非线性路径到一个停止点,该停止点在指令中作为一个绝对轴位置存储(用*标示)。
整个运动需要5 秒钟。
项目:MoveAbsJ [\Conc] ToJointPos [\ID] [\NoEOffs] Speed [\V] | [\T] Zone [\Z] [\Inpos] Tool [\Wobj][\Conc]:并发事件数据类型:switch当机器人正在移动的时候执行的后续指令。
该项目通常不使用,但是当和外部设备通讯、不需要同步的时候可以用来缩短循环周期。
当使用项目\Conc 的时候,连续运动指令的数量限制为5。
在包含StorePath-RestoPath 的程序段中不允许包含项目\Conc 的运动指令。
如果该项目忽略并且ToJointPos 不是一个停止点,在机器人到达程序zone 之前一段时间后续指令就开始执行了。
RAPID程序指令与功能

":=" - Assigns a value
BitClear - Clear a specified bit in a byte or dnum data
BitSe or dnum data
BookErrNo - Book a RAPID system error number
變量指令
賦值指令 := WaitTime WaitUntil WaitDI WaitDO comment Load UnLoad Start Load Wait Load CancelLoad CheckProgRef Save EraseModule TryInt OpMode RunMode 變量功能
GetDataVal - Get the value of a data object
GetSysData - Get system data
GetTrapData - Get interrupt data for current TRAP
GOTO - Goes to a new instruction
ClearIOBuff - Clear input buffer of a serial channel
ClearRawBytes - Clear the contents of rawbytes data
ClkReset - Resets a clock used for timing
ClkStart - Starts a clock used for timing
CorrDiscon - Disconnects from a correction generator
CorrWrite - Writes to a correction generator
常用RAPID程序指令说明

5.3 常用RAPID程序指令说明ABB机器人的RAPID编程提供了丰富的指令来完成各种简单与复杂的应用。
接着下来,我们就从最常用的指令开始学习RAPID编程,领略RAPID丰富的指令集为我们提供的编程便利性。
下面我们先来看看在示教器进行指令编辑的基本操作:打开ABB菜单,选择“程序编辑器”。
选中要插入指令的程序位置,高显为蓝色。
点击“添加指令”打开指令列表。
点击此按钮可切换到其它分类的指令列表。
5.3.1 赋值指令“:= ”赋值指令是用于对程序数据进行赋值,赋值可以是一个常量或数学表达式。
我们就以添加一个常量赋值与数学表达式赋值进行说明此指令的使用:常量赋值:reg1 := 5;数学表达式赋值:reg2 := reg1+4;在指令列表中选择“:=”点击“更改数据类型….”,选择num数字型数据。
在列表中找到“num”并选中,然后点击“确定”。
选中“reg1”。
选中“<EXP>”并蓝色高亮显示。
打开“编辑”菜单,选择“仅限选定内容”。
通过软键盘输入数字“5”,然后点击“确定”。
点击“确定”。
在这里就能看到所增加的指令。
下面我们来看看添加带数学表达式的赋值指令的操作:在指令列表中选择“:=”。
选中“reg2”。
选中“<EXP>”,显示为蓝色高亮。
选中“reg1”。
点击“+”选中“<EXP>”,显示为蓝色高亮。
打开“编辑”菜单,选择“仅限选定内容”。
通过软键盘输入数字“4”,然后点击“确定”。
点击“确定”。
点击“下方”。
添加指令成功。
点击“添加指令”将指令列表收起来。
编程画面操作技巧放大/缩小画面向上/向下翻页向上/向下移动5.3.2 机器人运动指令机器人在空间中进行运动主要是四种方式,关节运动(MOVEJ),线性运动(MOVEL),圆弧运动(MOVEC)和绝对位置运动(MOVEABSJ)。
下面我们就来看看如何使用与设定这些运动指令。
➢绝对位置运动指令选择“手动操纵”。
ABB 机器人 RAPID 常用指令详解-中文(1)

ABB 机器人RAPID 常用指令详解-中文1.88.MoveAbsJ—把机器人移动到绝对轴位置用途:MoveAbsJ(绝对关节移动)用来把机器人或者外部轴移动到一个绝对位置,该位置在轴定位中定义。
使用实例:终点是一个单一点对于IR6400C 中的不明确的位置,例如携带超过机器人范围的工具运动。
MoveAbsJ 指令中机器人的最终位置,既不受工具或者工作对象的影响,也不受激活程序更换的影响。
但是机器人要用到这些数据来计算负载、TCP 速度和转角点。
相同的工具可以被用在相邻的运动指令中。
机器人和外部轴沿着一个非直线的路径移动到目标位置。
所有轴在同一时间运动到目标位置。
该指令只能被用在主任务T_ROB1 中,或者在多运动系统中的运动任务中。
基本范例:该指令的基本范例说明如下。
也可参看第207 页更多范例。
例1 MoveAbsJ p50, v1000, z50, tool2;机器人将携带工具tool2 沿着一个非线性路径到绝对轴位置p50,以速度数据v1000 和zone 数据z50。
例2 MoveAbsJ *, v1000\T:=5, fine, grip3;机器人将携带工具grip3 沿着一个非线性路径到一个停止点,该停止点在指令中作为一个绝对轴位置存储(用*标示)。
整个运动需要5 秒钟。
项目:MoveAbsJ [\Conc] ToJointPos [\ID] [\NoEOffs] Speed [\V] | [\T] Zone [\Z] [\Inpos] Tool [\Wobj][\Conc]:并发事件数据类型:switch当机器人正在移动的时候执行的后续指令。
该项目通常不使用,但是当和外部设备通讯、不需要同步的时候可以用来缩短循环周期。
当使用项目\Conc 的时候,连续运动指令的数量限制为5。
在包含StorePath-RestoPath 的程序段中不允许包含项目\Conc 的运动指令。
如果该项目忽略并且ToJointPos 不是一个停止点,在机器人到达程序zone 之前一段时间后续指令就开始执行了。
ABB 机器人 RAPID 常用指令详解-中文(1)

ABB 机器人RAPID 常用指令详解-中文1.88.MoveAbsJ—把机器人移动到绝对轴位置用途:MoveAbsJ(绝对关节移动)用来把机器人或者外部轴移动到一个绝对位置,该位置在轴定位中定义。
使用实例:终点是一个单一点对于IR6400C 中的不明确的位置,例如携带超过机器人范围的工具运动。
MoveAbsJ 指令中机器人的最终位置,既不受工具或者工作对象的影响,也不受激活程序更换的影响。
但是机器人要用到这些数据来计算负载、TCP 速度和转角点。
相同的工具可以被用在相邻的运动指令中。
机器人和外部轴沿着一个非直线的路径移动到目标位置。
所有轴在同一时间运动到目标位置。
该指令只能被用在主任务T_ROB1 中,或者在多运动系统中的运动任务中。
基本范例:该指令的基本范例说明如下。
也可参看第207 页更多范例。
例1 MoveAbsJ p50, v1000, z50, tool2;机器人将携带工具tool2 沿着一个非线性路径到绝对轴位置p50,以速度数据v1000 和zone 数据z50。
例2 MoveAbsJ *, v1000\T:=5, fine, grip3;机器人将携带工具grip3 沿着一个非线性路径到一个停止点,该停止点在指令中作为一个绝对轴位置存储(用*标示)。
整个运动需要5 秒钟。
项目:MoveAbsJ [\Conc] ToJointPos [\ID] [\NoEOffs] Speed [\V] | [\T] Zone [\Z] [\Inpos] Tool [\Wobj][\Conc]:并发事件数据类型:switch当机器人正在移动的时候执行的后续指令。
该项目通常不使用,但是当和外部设备通讯、不需要同步的时候可以用来缩短循环周期。
当使用项目\Conc 的时候,连续运动指令的数量限制为5。
在包含StorePath-RestoPath 的程序段中不允许包含项目\Conc 的运动指令。
如果该项目忽略并且ToJointPos 不是一个停止点,在机器人到达程序zone 之前一段时间后续指令就开始执行了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
RAPID程序指令与功能简述程序执行的控制
变量指令
运动设定
运动控制
*:这些功能需要选项“Path recovery”配合。
注:这些功能需要选项“Independent movement”配合。
注:这些功能需要选项“Path offset or RobotWare-Arc sensor”配合。
注:这些功能需要选项“Path recovery”配合。
注:这些功能需要选项“Path recovery”配合。
注:这些功能需要选项“Conveyor tracking”配合。
注:这些功能需要选项“Sensor synchronization”配合。
*:此功能需要选项“Collision detection”配合。
输入/输出信号的处理
通信功能
1. 示教器上人机界面的功能
中断程序
系统相关的指令
数学运算
说明:本文档摘自《工业机器人实操与应用技巧》一书。