5.1RAPID程序建立的基本操作
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MoveJ p10, v1000, z50, tool1\Wobj:=wobj1;
关节运动 关节运动适合机器人大范围运动时使用,不容易在运动过 程中出现关节轴进入机械死点的问题。目标点位置数据定义机 器人TCP点的运动目标,可以在示教器中单击“修改位置”进行 修改。运动速度数据定义速度(mm/s),转弯区数据定义转变 区的大小mm,工具坐标数据定义当前指令使用的工具,工件坐 标数据定义当前指令使用的工件坐标。
3.WaitDI数字输入信号判断指令 WaitDI数字输入信号判断指令用于判断数字输入信号的值 是否与目标一致,di1数字输入信号。 WaitDI di1, 1; 程序执行此指令时,等待di1的值为1。如果di1为1,则程 序继续往下执行;如果到达最大等待时间300s(此时间可 根据实际进行设定)以后,di1的值还不为1,则机器人报 警或进入出错处理程序。 4.WaitDO数字输出信号判断指令 WaitDO数字输出信号判断指令用于判断数字输出信号的值 是否与目标一致。 WaitDO do1, 1; 参数以及说明同WaitDi指令。
1.绝对位置运动指令 绝对位置运动指令是机器人的运动使用六个轴和外轴的角 度值来定义目标位置数据。 操作步骤如下:
MoveAbsJ jpos10 \NoEOffs, v1000, z50,tool1\Wobj:=wobj1;
MoveAbsJ指令解析
2.关节运动指令 关节运动指令是对路径精度要求不高的情况下,工业机 器人的工具中心点TCP从一个位置移动到另一个位置,两个 位置之间的路径不一定是直线。
5.1 RAPID程序建立基本操作 5.1.1 RAPID程序结构 RAPID程序中包含了一连串控制机器人的指令, 执行这些指令可以实现对ABB工业机器人的控制操作。 应用程序是使用称为RAPID编程语言的特定词汇和语 法编写而成的。RAPID是一种英文编程语言,所包含 的指令可以移动机器人、设置输出、读取输入,还能 实现决策、重复其他指令、构造程序、与系统操作员 交流等功能。 RAPID程序的基本架构
3.线性运动指令 线性运动是机器人的TCP从起点到终点之间的 路径始终保持为直线。一般如焊接、涂胶等应用 对路径要求高的场合使用此指令。
线性运动
4.圆弧运动指令 圆弧路径是在机器人可到达的控件范围内定义三个位置点, 第一个点是圆弧的起点,第二个点用于圆弧的曲率,第三个点是 圆弧的终点
MoveL p10, v1000, fine, tool1\Wobj:=wobj1; MoveC p30, p40, v1000, z1, tool1\Wobj:=wobj1;
机器人:/list/?351_1.html
5.1.2建立RAPID程序
5.2基本RAPID程序指令
ABB工业机器人提供了多种编程指令可以完成工业机器人 在焊接、码垛、搬运等各种应用。下面将从最常用的指令开始 学习RAPID编程。
5.2.1 赋值指令
5.2.6其他的常用指令 1.ProcCall调用例行程序指令 通过使用此指令在指定的位置调用例行程序。
2.RETURN返回例行程序指令 RETURN返回例行程序指令,当此指令被执行时,则马上结束 本例行程序的执行,返回程序指针到调用此例行程序的位置。
当di1=1时,执行RETURN指令,程序指针返回到调用 Routine2的位置并继续向下执行Set do1这个指令。 3. WaitTime时间等待指令 WaitTime时间等待指令,用于程序在等待一个指定的 时间以后,再继续向下执行 WaitTime 4; Reset do1; 等待4s以后,程序向下执行Reset do1指令。
5.WaitUntil信号判断指令 WaitUntil信号判断指令可用于布尔量、数字量和I/O信号值的 判断,如果条件到达指令中的设定值,程序继续往下执行,否 则就一直等待,除非设定了最大等待时间。flag1为布尔量型数 据,num1数字型数据。 WaitUntil di1 = 1; WaitUntil do1 = 0; WaitUntil flag = TRUE; WaitUntil num1 = 8; 5.2.5 条件逻辑判断指令 条件逻辑判断指令用于对条件进行判断后,执行相应的操作, 是RAPID中重要的组成部分。 pact IF紧凑型条件判断指令 Compact IF紧凑型条件判断指令用于当一个条件满足了以后, 就执行一句指令。 IF flag1 = TRUE Set do1; 如果flag1的状态为TRUE,则do1被置位为1。
3.FOR重复执行判断指令 FOR重复执行判断指令,是用于一个或多个指令需要重 复执行次数的情况 FOR i FROM 1 TO 6 DO Routine1; ENDFOR 例行程序Routine1,重复执行6次。 4.WHILE条件判断指令 WHILE条件判断指令,用于在给定条件满足的情况下, 一直重复执行对应的指令。 WHILE num1>num2 DO num1:=num1-1; ENDWHILE 当num1>num2的条件满足的情况下,就一直执行 num1:=num1-1的操作。
RAPID程序的架构说明:
1、RAPID程序是由程序模块与系统模块组成。一般地,只通 过新建程序模块来构建机器人的程序,而系统模块多用于系统方 面的控制。 2、可以根据不同的用途创建多个程序模块,如专门用于主控 制的程序模块,用于位置计算的程序模块,用于存放数据的程序 模块,这样便于归类管理不同用途的例行程序与数据。 3、每一个程序模块包含了程序数据、例行程序、中断程序和 功能四种对象,但不一定在一个模块中都有这四种对象,程序模 块之间的数据、例行程序、中断程序和功能是可以互相调用的。 4、在RAPID程序中,只有一个主程序main,并且存在于任意 一个程序模块中,并且是作为整个RAPID程序执行的起点。
2.IF条件判断指令 IF条件判断指令,就是根据不同的条件去执行不同的指令。 指令解析: IF num1=1 THEN flag:=TRUE; ELSEIF num1=2 THEN flag1:=FALSE; ELSE Set do1; ENDIF 如果num1为1,则flag1会赋值为TRUE。如果num1为2,则 flag1会赋值为FALSE。除了以上两种条件之外,则执行do1 置位为1。条件判定的条件数量可以根据实际情况进行增加 与减少。
赋值指令是用于对编程时的程序数据进行赋值, 符号 “:=”,赋值对象是常量或数学表达式。 常量赋值:reg1:=17; 数学表达式赋值:reg2:=reg1+8;
添加常量赋值指令的操作如下
(2)添加带数学表达式的赋值指令的操作
5.2.2工业机器人常用运动指令
工业机器人在空间中常用运动指令主要有关节运动(MoveJ)、 线性运动(MoveL)、圆弧运动(MoveC)和绝对位置运动MoveAbsJ) 四种方式。
5.2.4
I/O控制指令
I/O控制指令用于控制I/O信号,以达到与机器人周边设 备进行通信的目的。 1.Set数字信号置位指令 Set数字信号置位指令用于将数字输出(Digital Output) 置位为“1”, do1数字输出信号。 Set do1; 2.Reset数字信号复位指令 Reset数字信号复位指令用于将数字输出(Digital Output)置位为“0”。 如果在Set、Reset指令前有运 动指令MoveJ、MoveL、MoveC、MoveAbsJ的转弯区数据, 必须使用fine才可以准确地输出I/O信号状态的变化。 Reset.3 运动指令的使用示例
运动速度一般最高为50000mm/s,在手动限速状态下,所有的 运动速度被限速在250mm/s。fine指机器人TCP达到目标点,在目 标点速度降为零。工业机器人动作有所停顿然后再向下运动,如 果是一段路径的最后一个点,一定要为fine。转弯区数值越大, 机器人的动作路径就越圆滑与流畅。