ABB机器人常用指令详解-中文(四)
ABB机器人常用指令详解-中文

ABB常用指令详解-中文ABB常用指令详解-中文一、简介及背景ABB是一种先进的自动化设备,具有广泛的应用领域。
本文档将详细介绍ABB常用指令,帮助用户快速了解和掌握的操作技巧和功能。
二、基础指令1.MOVE指令:用于控制的移动,包括直线和旋转方向的移动。
2.SPEED指令:设置的运动速度。
3.HOME指令:将恢复到初始位置。
4.STOP指令:停止的运动。
5.PAUSE指令:暂停的运动,可以手动恢复。
6.WT指令:等待指定条件满足后再继续执行下一步指令。
三、高级指令1.ROBOT指令:控制的工作模式,包括自动模式和示教模式。
2.PROGRAM指令:创建、编辑和运行的程序。
3.CALL指令:调用其他程序或子程序。
4.IF指令:根据条件执行不同的操作。
5.FOR指令:循环执行一系列指令。
6.WHILE指令:在条件满足的情况下重复执行一系列指令。
四、IO指令1.SET指令:设置的输入输出状态。
2.READ指令:读取的输入输出状态。
3.WTIO指令:等待的输入输出状态满足指定条件后再继续执行。
五、系统指令1.DATE指令:获取或设置的日期。
2.TIME指令:获取或设置的时间。
3.ERROR指令:获取或清除的错误信息。
4.POSITION指令:获取当前的位置信息。
5.TOOL指令:设置或校准的工具。
6.SPEEDLIMIT指令:设置的速度限制。
六、附件本文档涉及附件如下:1.附件1:ABB常用指令示例程序2.附件2:ABB常用指令使用手册七、法律名词及注释1.:指能够自动执行任务的可编程设备。
2.指令:语句或命令,用于控制的操作。
3.输入输出(IO):用于与外部设备之间的数据传输和通信。
4.程序:包含一系列指令的有序集合。
5.条件:一种逻辑判断,用于根据不同的情况执行不同的操作。
6.工具:所用的工作设备。
ABB机器人常用指令详解-中文

MoveAbsJ [\Conc] ToJointPos [\ID] [\NoEOffs] Speed [\V] | [\T] Zone [\Z] [\Inpos] Tool [\Wobj]
相关信息:
by 张建辉, 韩鹏排版
相关信息 其它定位指令 关节目标的定义 速度的定义 Zone 数据的定义 停止点数据的定义 工具的定义 工作对象的定义 运动综述 并发的程序执行
参看 RAPID 参考手册—RAPID 概述,RAPID 摘要—运动部分 第 959 页 Jointtarget—关节位置数据 第 1010 页 speeddata—速度数据 第 1047 页 zonedata—zone 数据 第 1014 页 stoppointdata—停止点数据 第 1031 页 tooldata—工具数据 第 1039 页 wobjdata—工作对象数据 RAPID 参考手册—RAPID 概述,运动和 I/O 原理部分 RAPID 参考手册—RAPID 概述,运动和 I/O 原理—用逻辑指令同步部分
例2 MoveAbsJ p5, v2000, fine \Inpos :=inpos50, grip3; Grip3 沿着一个非线性路径运动到绝对轴位置 p5。当停止点 fine 的 50%的位置条件和 50%的速度条件满足 的时候,机器人认为它已经到达位置。它等待条件满足最多等 2 秒。参看 stoppointdata 类型的预定义数据 inpos50。
下图显示了后台运行 MoveAbsJ 指令的一些限制。
语法: MoveAbsJ [‘\’ Conc ‘,’ ] [ ToJointPos’ :=’ ] <关节目标表达式(IN)> [ ‘\’ ID ‘:=’ <identno 类型的表达式(IN)> ] [ ‘\’ NoEOffs ] ‘,’ [ Speed ‘:=’ ] <speeddata 类型的表达式(IN)> [ ‘\’ V ‘:=’ <num 类型的表达式(IN)> ] | [ ‘\’ T’ :=’ <num 类型的表达式(IN)> ] ‘,’ [‘\’ Z ‘:=” ] <num 类型的表达式(IN)> [ ‘\’ Inpos’ :=’ <stoppointdata 类型的表达式(IN)>] ‘,’ [Tool ‘:=’ ]<tooldata 类型的恒量(PERS)> [‘\’Wobj’ :=’ wobjdata 类型的恒量(PRS)> ] ‘;’
ABB机器人常用指令详解-中文

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机器人常用指令详解

abb机器人常用指令详解本文主要是关于abb机器人的相关介绍,并着重对abb机器人常用指令进行了详尽的阐述。
abb机器人常用指令详解MoveExtJ:移动一个或者多个没有TCP的机械单元MoveExtJ jpos10,vrot10,z50;意思是移动旋转外部轴到关节位置jpos10,速度10°/秒,zone数据z50.MoveExtJ\Conc,jpos20,vrot10\T:=5,fine\InPos:=inpos20;意思是5秒钟外部轴移动到关节位置jpos20.程序立即向前执行,但是外部轴停止在位置jpos20,直到inpos20的收敛性标准满足。
如上图所示:MoveLp1,v200,z10,tool1\Wobj:wobj1;机器人的TCP从当前位置向p1点以线性运动方式前进,速度是200mm/s,转弯区数据是10mm,距离p1点还有10mm 的时候开始转弯,使用的工具数据是tool1,工件坐标数据是wobj1.MoveL p2,v100,fine,tool1\Wobj:=wobj1;机器人的TCP从p1点向p2点以线性运动方式前进,前进速度是100mm/s,转弯区数据是fine,机器人在p2点稍作停顿,使用的工具数据是tool1,工件坐标数据是wobj1.MoveJ p3,v500,fine,tool1\Wobj:=wobj1;机器人的TCP从p2向p3点以关节运动方式前进,速度是500mm/s,转弯区数据是fine,机器人在p3点停止,使用的工具数据是tool1,工件坐标数据是wobj1.关于速度:速度一般最高只有v5000;在手动限速状态下,所有的运动速度被限速在250mm/s。
关于转弯区:fine指机器人TCP到达目标点,在目标点速度降为零,机器人动作有所停顿后再向下一目标点运动,如果是一段路径的最后一个点一定要为fine;转弯区数值越大,机器人的动作路径就越圆滑和流畅。
ABB机器人标准指令详解

运动控制指令-VelSet
实例:
VelSet 50,800; MoveL p1,v1000,z10,tool1; MoveL p2,v1000\V:=2000,z10,tool1; MoveL p3,v1000\T:=5,z10,tool1; VelSet 80,1000; MoveL p1,v1000,z10,tool1; MoveL p2,v5000,z10,tool1; MoveL p3,v1000\V:=2000,z10,tool1; MoveL p4,v1000\T:=5,z10,tool1; 500 mm/s 800 mm/s 10 s 800 mm/s 1000 mm/s 1000 mm/s 6.25 s
计数指令-Clear Clear Name;
Name: 数据名称。
( num )
应用: 将一个数字数据的值归零,可以用赋值指令 替代。
实例:
Clear reg1;
等同于
reg1:=0;
2019/2/5
计数指令-Incr
Incr Name;
Name: 数据名称。
( num )
应用: 在一个数字数据值上增加 1,可以用赋值指 令替代,一般用于产量计数。
运动控制指令 计数指令 程序运行停止指令 计时指令 通信指令 中断运动指令 故障处理指令 运动触发指令
2019/2/5
运动控制指令
AccSet
VelSet
ConfJ SingArea
SoftAct
2019/2/5
ConfL PathResol
SoftDeact
运动控制指令-AccSet AccSet Acc, Ramp;
2019/2/5
运动控制指令-SoftAct
ABB机器人实际应用总结归纳中的指令说明

ABB机器人实际应用总结归纳中的指令说明(一)ABB机器人指令
1、JOINT指令:Joint指令是ABB机器人操作中最基本的指令,它用
来控制ABB机器人的运动。
Joint指令不仅要求用户指定机器人的力矩,
还要求用户指定机器人的关节转动角度以及机器人到达目标位置的时间。
2、POS指令:Pos指令用来控制ABB机器人在空间位置上的运动,以
及机器人的末端位置。
Pos指令要求用户指定机器人到达目标位置的速度,机器人的最大运动速度,机器人的到达目标位置的最短时间。
3、LINE指令:Line指令用来控制ABB机器人沿一条直线路径的运动。
Line指令要求用户指定机器人运动的起点和终点,以及机器人的最大运
动速度和到达目标位置的最短时间。
4、CYCLE指令:Cycle指令用来控制ABB机器人同一条轨迹多次运动
的指令,可以设置循环次数,指定循环运动的参数,如运动速度,运动的
起始点和终点,以及机器人的到达目标位置的最短时间。
5、WAIT指令:Wait指令用来控制ABB机器人暂停一段时间,在
Wait指令中,用户可以指定暂停时间的长短,也可以指定机器人在暂停
时间内运动的参数,如运动速度等。
6、IF指令:If指令用来控制ABB机器人在满足特定条件时执行特定
操作。
ABB机器人标准指令详解

ABB机器人标准指令详解一、 RAPID程序控制指令1、1程序开始/结束控制指令1) PROGRAM START/END1、指令格式: PROGRAM <程序名> <属性> ;2、描述:此指令标识一个机器人程序的开始或结束。
在这里,<程序名>是你给程序取的名字,<属性>是可选的,表示程序的属性(如:INTERLOCK, NO_INTERLOCK, NOPROGRAM等)。
2) JOB START/END1、指令格式: JOB <作业名> <属性> ;2、描述:此指令标识一个作业的开始或结束。
在这里,<作业名>是你给作业取的名字,<属性>是可选的,表示作业的属性(如:INTERLOCK, NO_INTERLOCK, NOPROGRAM等)。
1、2程序转移指令1) GOTO1、指令格式: GOTO <行号>;2、描述:此指令将程序执行转移到指定的行号。
2) GOSUB1、指令格式: GOSUB <行号>;2、描述:此指令将程序执行转移到指定的行号,并在返回时继续执行当前行。
3) RETURN1、指令格式: RETURN;2、描述:此指令将程序执行从 GOSUB转移到父程序,并从 GOTO转移到原程序行。
1、3条件判断指令1) IF/THEN/ELSE/ENDIF;1、指令格式: IF <条件> THEN <表达式> ELSE <表达式> ENDIF;2、描述:如果满足条件<条件>,则执行 THEN后面的表达式;否则执行 ELSE后面的表达式。
2) CASE/ESAC/ENDCASE;1、指令格式: CASE <变量> IN <表达式1> / <表达式2> /... / ENDCASE;2、描述:此指令根据变量<变量>的值选择要执行的表达式。
ABB机器人常用指令详解-中文

例1 MoveAbsJ *, v2000\V:=2200, z40 \Z:=45, grip3; Grip3 沿着一个非线性路径运动到一个存储在指令中的一个绝对轴位置。执行的运动数据为 v2000 和 z40。 TCP 的速度大小是 2200mm/s,zone 的大小是 45mm。
by 张建辉, 韩鹏排版
该项目必须使用在多运动系统中,如果并列了同步运动,则不允许在其他任何情况下使用。 指定的 ID 号在所有协同的程序任务中必须相同。该 ID 号保证在 routine 中运动不会混乱。 如果并列了同步运动,不允许在其他任何情况下使用。 Speed: 数据类型:speeddata 应用到运动中的速度数据。速度数据定义 TCP、工具再定位和外部轴的速度。 [ \V]: 速度 数据类型:num 该项目用来在指令中直接指定 TCP 的速度,单位 mm/s。它代替速度数据中指定的相应的速度。 [\T]: 时间 数据类型:num 该项目用来指定机器人和外部轴运动的总时间,单位秒。它代替相应的速度数据。 Zone: 数据类型:zonedata 运动的 zone 数据。它描述产生的转角路径的大小。 [ \Z]: Zone 数据类型:num 该项目用来在指令中直接指定机器人 TCP 的位置精度。转角路径的长度以毫米为单位给出,它代替 zone 数据中指定的 zone。 [\Inpos ]: 到位 数据类型:stoppointdata(停止点数据) 改项目用来指定机器人 TCP 在停止点位置的收敛性判别标准。该停止点数据代替在 zone 参数中指定的 zone。 Tool: 数据类型:tooldata 运动过程中所使用的工具。TCP 是运动到指定目标的点。 [\Wobj ]:
如果该项目忽略并且 ToJointPos 不是一个停止点,在机器人到达程序 zone 之前一段时间后续指令就开始执
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序执行: 关节空间的定义存储在 shapedata 类型的变量中(项目 Shape),以后在 WZLimSup 或者 WZDOSet 指令中
使用。 如果和 WZHomeJointDef 指令一起还使用了 WZDOSet,当所有带关节空间监视的、激活的轴即将进入或者
激活 WorldZone 限位监视
第 633 页 WZLimSup—激活 WorldZone 限位监视
激活 World Zone 数字输出设置 第 617 页 WZDOSet—激活 World Zone 来设置数字输出。
解除 WorldZone
第 615 页 WZDisable—解除临时 WorldZone
临时 WorldZone 数据
第 1045 页 wztemporary—临时 WorldZone 数据
激活 WorldZone 限位监视
第 633 页 WZLimSup—激活 WorldZone 限位监视
激活 World Zone 数字输出设置 第 617 页 WZDOSet—激活 World Zone 来设置数字输出。
by 张建辉, 韩鹏排版
相关信息:
相关信息
参看
World Zones
《RAPID 参考手册—RAPID 概述》运动和 I/O 原理—World Zone 部分
World Zone 形状
第 1004 页 shapedata—World Zone 形状数据部分
临时 WorldZone 数据
第 1045 页 wztemporary—临时 WorldZone 数据
信号进入水平
《技术参考手册—系统参数》I/O 主题—信号类型—进入等级部分
1.231.WZEnable—激活临时 WorldZone 监视
用途:
WZEnable(WorldZone 使能)用来重新激活对临时 WorldZone 的监视,该 WorldZone 之前定义用来停止运 动或者设定输出。
基本范例:
该指令的基本范例说明如下:
例 1 VAR wztemporary wzone; … PROC …
by 张建辉, 韩鹏排版
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 的时候重新激活。 项目:
数据类型:switch 定义 MiddleJointVal +/- DeltaJointVal 范围外的关节空间(反关节空间)。 Shape: 数据类型:shapedata 存储定义的关键空间的变量(系统的私有数据 private)。 MiddleJointVal: 数据类型:jointtarget 关节坐标系中即将定义的关节空间的中心位置。为每一个机器人轴和外部轴指定(对于旋转轴来说单位是 度数,对于线形轴来说单位是毫米)。在绝对关节中指定(对于外部轴来说,不是在偏移坐标系 EoffsSet-EoffsOn 中)。对于某些轴来说 9E9 就是说轴不应该去理会。在编程中,不激活的外部轴也会给出 9E9。 DeltaJointVal: 数据类型:jointtarget 在关节坐标系中,从关节空间的中心位置算起的+/-偏移位置。对于每一个要管理的轴来说,该数值必须大 于 0。 下图说明旋转轴的关节空间的定义。
激活 WorldZone
第 621 页 WZEnable—激活临时 WorldZone 监视
1.233.WZHomeJointDef—定义关节 home 位的 WorldZone
用途:
WZHomeJointDef(World Zone home 关节定义)用来为机器人和外部轴在关节坐标中定义一个 world zone,
用来作为一个 Home 或者服务位置。
基本范例:
该指令的基本范例说明如下:
例 1 VAR wzstationary home;
…
PROC power_on( ) VAR shapedata joint_space; CONST jointtarget home_pos := [ [ 0, 0, 0, 0, 0, -45], [0, 9E9, 9E9, 9E9, 9E9, 9E9] ]; CONST jointtarget delta_pos := [ [2, 2, 2, 2, 2, 2], [5, 9E9, 9E9, 9E9, 9E9, 9E9] ]; …
WZEnable
[WorldZone’:=’]<wztemporary 类型的变量或者恒量(INOUT)>’;’
相关信息:
相关信息
参看
World Zones
《RAPID 参考手册—RAPID 概述》运动和 I/O 原理—World Zone 部分
World Zone 形状
第 1004 页 shapedata—World Zone 形状数据部分
WZHomeJointDef \Stat, home \Inside, joint_space, do_home, 1; ENDPROC 定义并激活一个静态 world zone home,当所有机器人轴和外部轴 extax.eax_a 在程序执行或者点动过程中处 于关节位置 home_pos(每一个轴在+/-delta_pos 范围内),home 把信号 do_home 设为 1。Shapedata 类型的数据 变量 joint_space 用来从指令 WZHomeJointDef 指令传送到 WZDOSet 指令。 项目:
WZHomeJointDef [\Inside] | [\Outside] Shape MiddleJointVal DeltaJointVal [\Inside]:
数据类型:switch
by 张建辉, 韩鹏排版
定义 MiddleJointVal +/- DeltaJointVal 范围内的关节空间。 [\Outside]:
静态 WorldZone
第 1043 页 wzstationary—静态 WorldZone 数据
定义球形 World Zone
第 636 页 WZSphDef—定义球形 World Zone。
定义箱体形状的 World Zone
第 611 页 WZBoxDef—定义箱体形状的 World Zone。
3.44.shapedata—World Zone 形状数据
用途:
Shapedata 用来描述 World Zone 的几何形状。 描述:
World Zone 可以定义为四个不同的几何形状: l 直立的箱体,所有的边都平行于 world 坐标系,由 WZBoxDef 指令定义。 l 一个球体,由 WZSphDef 指令定义。 l 一个圆柱体,平行于 world 坐标系的 z 轴,由 WZCylDef 指令定义。 l 机器人和/或外部轴的关节的一个空间区域,由指令 WZHomeJointDef 或者 WZLimJointDef 定义。 World Zone 的几何形状由预览指令中的一个定义,World Zone 的动作由指令 WZLimSup 和 WZDOSet 定义。 基本范例:
在 RAPID 程序中,静态的 WorldZone 不能被解除并再次激活,或者进行擦除。 在 RAPID 程序中,临时的 WorldZone 可以被解除(WZDisable),再次激活(WZEnable)或者擦除(WZFree)。 语法:
WZDOSet [[‘\’Temp] | [‘\’Stat]’,’] [WorldZone’:=’]<wztemporary 类型的变量或者恒量(INOUT)> [‘\’Inside] | [‘\’Before] ‘,’ [Shape’:=’]<shapedata 类型的变量(VAR)>’,’ [Signal’:=’]<signaldo 类型的变量(VAR)>’,’ [SetValue’:=’]<dionum 类型的表达式(IN)>’;’
WZEnable WorldZone WorldZone:
数据类型:wztemporary wztemporary 类型的变量或者恒量,包含要激活的 WorldZone 的标识符。 程序执行: 临时 WorldZone 被再次激活。注意,当创建 WorldZone 的时候,它是自动激活的。如果被 WZDisable 指令 解除后,它只是需要重新激活。 限制: 只有临时的 WorldZone 可以被解除或者再激活,静态的 WorldZone 总是激活的。 语法:
解除 WorldZone
第 615 页 WZDisable—解除临时 WorldZone
擦除 WorldZone
第 623 页 WZFree—擦除临时 WorldZone 监视
by 张建辉, 韩鹏排版
1.232.WZFree—擦除临时 WorldZone 监视 用途:
WZFree(WorldZone 释放)用来擦除临时 WorldZone 的定义,之前定义用来停止运动或者设定输出的。 基本范例:
定义圆柱形状 World Zone
第 613 页 WZCylDef—定义圆柱形状的 World Zone。
定义关节 home 位的 World Zone 第 625 页 WZHomeJointDef—定义关节 home 位的 World Zone。
激活 WorldZone 限位监视
第 633 页 WZLimSup—激活 WorldZone 限位监视