ABB机器人的程序编程_第1页
ABB机器人的程序编程_第2页
ABB机器人的程序编程_第3页
ABB机器人的程序编程_第4页
ABB机器人的程序编程_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2.3.4.6ABB 机器人的程序编程6.1任务目标?掌握常用的PAPID程序指令。?掌握基本RAPID程序编写、调试、自动运行和保存模块。6.2任务描述建立程序模块test12.24,模块test12.24下建立例行程序 main和Routine1,在main程序下进行运动指 令的基本操作练习。掌握常用的RAP ID指令的使用方法。建立一个可运行的基本 RAP ID程序,内容包括程序编写、调试、自动运行和保存模块。6.3知识储备6.3.1程序模块与例行程序RAP ID程序中包含了一连串控制机器人的指令,执行这些指令可以实现对机器人的控制操作。应用程序是使用称为 RAP ID编程语言的特定词汇

2、和语法编写而成的。RAPID是一种英文编程语言,所包含的指令可以移动机器人、设置输出、读取输入,还能实现决策、重复其他指令、构造程序、与系统操作 员交流等功能。RAP ID程序的基本架构如图所示:RAPID程序程序模块1程序数据主程序main例行程序中断程序功能程序模块2程序模块3程序模块4程序数据程序数据例行程序例行程序中断程序中断程序功能功能RAP ID程序的架构说明:1)RAP ID程序是由程序模块与系统模块组成。一般地,只通过新建程序模块来构建机器人的程序,而 系统模块多用于系统方面的控制。可以根据不同的用途创建多个程序模块,如专门用于主控制的程序模块,用于位置计算的程序模块,用于存放

3、数据的程序模块,这样便于归类管理不同用途的例行程序与数据。每一个程序模块包含了程序数据、例行程序、中断程序和功能四种对象,但不一定在一个模块中都 有这四种对象,程序模块之间的数据、例行程序、中断程序和功能是可以互相调用的。在RAPID程序中,只有一个主程序 main,并且存在于任意一个程序模块中,并且是作为整个 程序执行的起点。操作步骤:2)3)4)RAPID1.单击 程序编辑器”,查看RAP ID程序。2. 单击例行程序”,查看例行程序列表。3. 单击后退”或模块”标签查看模块列表。4. 在模块”和例行程序”视图中,可以点击 文 件”一新建”去建立模块或例行程序。6.3.2在示教器上进行指令

4、编程的基本操作ABB机器人的RAPID编程提供了丰富的指令来完成各种简单与复杂的应用。 学习RAP ID编程,领略RAPID丰富的指令集提供的编程便利性。下面就从最常用的指令开始1.打开ABB菜单,选择程序编辑器”。选中要插入指令的程序位 置,高显为蓝色。单击添加指令”,打开指 令列表。单击此按钮可切换到其他 分类的指令列表。6.4任务实施6.4.1基本 RAPID指令练习建立程序模块test12.24,模块test12.24下建立例行程序 main和Routine1,在main程序下进行运动指 令的基本操作练习。1.赋值指令“:=赋值指令用于对程序数据进行赋值。赋值可以是一个常量或数学表达式

5、。下面的操作步骤以添加一个常量赋值与数学表达式赋值说明此指令的使用:常量赋值:reg1:=5;数学表达式赋值:reg2:=reg1+4;(1)添加常量赋值指令的操作1.在指令列表中选择“:三”2. 单击更改数据类型”,选择 num数字型数据。3. 在列表中找到num并选中,然后单击确定”。4.选中 “ reg1。”5. 选中“ <EXP并蓝色高亮显示。6. 打开 编辑”菜单,选择 仅限选 定内容”。7. 通过软键盘输入数字“ 5,”然后单击确定”。8. 单击确定”。9. 在这里就能看到所增加的指令。(2 )添加带数学表达式的赋值指令的操作1.2.3.在指令列表中选择“:三” 选中 选中

6、亮。“ reg2o ”“<EX P,显示为蓝色高4.5.6.7.选中 单击 选中 亮。打开a/”reg1。“+按钮。“<EX P;显示为蓝色高编辑”菜单,选择仅限选定内容”,然后在弹出的软键盘画面中输入“4;'单击确。确认正确后,单击确定”。9.单击下方”添加指令成功。10.单击添加指令”将指令列表 收起来*提示:编程画面操作技巧 放大/缩小画面。向上/向下翻页。向上/向下移动。2.机器人运动指令机器人在空间中运动主要有关节运动(MoveJ)、线性运动(MoveL)、圆弧运动(MoveC)和绝对位置运动(MoveAbsJ)四种方式。(1)绝对位置运动指令绝对位置运动指令是机

7、器人的运动使用六个轴和外轴的角度值来定义目标位置数据。操作步骤:1. 进入手动操纵”画面,确认已选 定工具坐标与工件坐标(*提示: 在添加或修改机器人的运动指令 之前,一定要确认所使用的工具坐 标与工件坐标)。2. 选中指令的位置,打开添加指 令”菜单,选择“ MoveAbs”旨令。MoveAbsJ*NoEOffs,v1000,z50,tool1Wobj:=wobj1;参数指令解析:含义目标点位置数据外轴不带偏移数据运动速度数据1000mm/s转弯区数据数据_工件坐标数据*提示:MoveAbsJ常用于机器人六个轴回到机械零点(0 °)的位置。(2)关节运动指令关节运动指令是对路径精度

8、要求不高的情况下,机器人的工具中心点 置,两个位置之间的路径不一定是直线。指令解析:MoveJ p10,v1000,z50,tool1Wobj:=wobj1;参数p10TCP从一个位置移动到另一个位含义目标点位置数据v1000运动速度数据关节运动适合机器人大范围运动时使用,不容易在运动过程中出现关节轴进入机械死点的问题。*注意:目标点位置数据定义机器人TCP点的运动目标,可以在示教器中单击修改位置”进行修改。运动速度数据定义速度(mm/s ) 转弯区数据定义转变区的大小mm。工具坐标数据定义当前指令使用的工具工件坐标数据定义当前指令使用的工件坐标(3)线性运动指令线性运动是机器人的 TCP从起

9、点到终点之间的路径始终保持为直线。一般如焊接、涂胶等应用对路径 要求高的场合使用此指令。第二个点用于圆(4)圆弧运动指令圆弧路径是在机器人可到达的控件范围内定义三个位置点,第一个点是圆弧的起点, 弧的曲率,第三个点是圆弧的终点。指令解析:MoveL p10,v1000,fi ne,tool1Wobj:=wobj1;MoveC p30, p40,v1000,z1,tool1Wobj:=wobj1;(5)运动指令的使用示例 指令:MoveL p1,v200,z10,tool1Wobj:=wobj1; MoveL p2,v100,fi ne,tool1Wobj:=wobj1;MoveJ p3,v50

10、0,fi ne,tool1Wobj:=wobj1;y200mm/s*100mm*%p2p3 qft50:0m#10mm,距离机器人的TCP从当前位置向p1点以线性运动方式前进,速度是200mm/s,转弯区数据是p1点还有10mm的时候开始转弯,使用的工具数据是tool1,工件坐标数据是 wobj1。机器人的TCP从p1向p2点以线性运动方式前进,速度是 100mm/s,转弯区数据是fine, 点稍作停顿,使用的工具数据是tool1,工件坐标数据是 wobj1。机器人的TCP从p2向p3点以关节运动方式前进,速度是 500mm/s,转弯区数据是fine, 点停止,使用的工具数据是tool1,工件

11、坐标数据是 wobj1。提示:*关于速度:速度一般最高为50000mm/s,在手动限速状态下,所有的运动速度被限速在250mm/s|机器人在p2机器人在p3参数含义p10圆弧的第一个点p30圆弧的第二个点p40圆弧的第三个点fin ez1转弯区数据3.I/O控制指令I/O控制指令用于控制I/O信号,以达到与机器人周边设备进行通信的目的。(1)Set数字信号置位指令Set数字信号置位指令用于将数字输出(DigitalOutput )置位为 “1。”Setdo1;参数含义do1数字输出信号(2) Reset数字信号复位指 令Reset数字信号复位指令用于将数字输出(DigitalOutput )置

12、位为“ 0”Resetdo1;*提示:如果在 Set、Reset指令前有运动指令 MoveJ、MoveL、MoveC、MoveAbsJ的转弯区数据,必须 使用fine才可以准确地输出I/O信号状态的变化。(3) WaitDI数字输入信号判断指令WaitDI数字输入信号判断指令用于判断数字输入信号的值是否与目标一致。WaitDIdi1,1;参数含义di1数字输入信号1判断的目标值在例子中,程序执行此指令时,等待 di1的值为1。如果di1为1,则程序继续往下执行;如果到达最 大等待时间300s (此时间可根据实际进行设定)以后, di1的值还不为1,则机器人报警或进入出错处理程 序。(4) Wa

13、itDO数字输出信号判断指令WaitDO数字输出信号判断指令用于判断数字输出信号的值是否与目标一致。WaitDOdo1,1;参数以及说明同 WaitDi指令。(5) WaitUntil信号判断指令Wait Un til信号判断指令可用于布尔量、数字量和I/O信号值的判断,如果条件到达指令中的设定值,程序继续往下执行,否则就一直等待,除非设定了最大等待时间。WaitU ntildi1=1;WaitU ntildo1=0;WaitU ntilflag=TRUE;WaitU ntil nu m1=4;参数含义flag1布尔量num1数字量RAPID中重要的组成部分。4. 条件逻辑判断指令条件逻辑判断

14、指令用于对条件进行判断后,执行相应的操作,是(1) CompactIF紧凑型条件判断指 令CompactIF紧凑型条件判断指令用于当一个条件满足了以后,就执行一句指令。IFflag仁TRUESetdo1;如果flag1的状态为TRUE则do1被置位为1。(2) IF条件判断指令IF条件判断指令,就是根据不同的条件去执行不同的指令。 指令解析:IFnu m1=1THENflag:=TRUE;ELSEI Fnu m1=2THENflag1:=FALSE;ELSESetdol;ENDIF如果num1为1,贝U flag1会赋值为TRUE如果num1为2,则flag1会赋值为FALSE除了以上两种条

15、件之外,则执行 do1置位为1.*条件判定的条件数量可以根据实际情况进行增加与减少。(3) FOR重复执行判断指令FOR重复执行判断指令,是用于一个或多个指令需要重复执行次数的情况FORiFROM1TO10DORouti ne1;ENDFOR例行程序Routine1,重复执行10次。(4) WHILE条件判断指令WHILE条件判断指令,用于在给定条件满足的情况下,一直重复执行对应的指令。WHILE num1> nu m2DOnu m1:=nu m1-1;ENDWHILE当num1>num2的条件满足的情况下,就一直执行num1:=num1-1的操作。5.其他的常用指令(1) Pro

16、cCal 1调用例行程序指 令通过使用此指令在指定的位置调用例行程序。1.选中“<SMT:为要调用的例行 程序的位置。2.在添加指令的列表中,选择“ ProcCa指令。3.选中要调用的例行程序Routi ne1,然后单击确定”4.调用例行程序指令执行的结 果。(2) RETURN返回例行程序指令RETURN返回例行程序指令,当此指令被执行时,则马上结束本例行程序的执行,返回程序指针到调用 此例行程序的位置。当di1=1时,执行RETURN指令,程序指针返回到调用Routine2的位置并继续向下执行 Setdo1这个指令。(3) WaitTime时间等待指令WaitTime时间等待指令,用

17、于程序在等待一个指定的时间以后,再继续向下执行WaitTime4;Resetdo1;等待4s以后,程序向下执行 Resetdo1指令。TP ReadNum TP ReadFK TP Write 禾口6.4.2常用RAPID指令的使用方法1. 用户输入两个数字,按钮选择一个运算符,屏幕输出运算结果(使用IF指令)2. 用户输入一个 0-100 的分数值,程序输出 A(90-100)、B(80-89)、C(60-79)、D (0-60)四个评级。(IFELSEIF 语句的使用)3. 使用 WHILE或FOR循环,计算1+2+3+99+100的结果。4. RAPID编程中的功能(FUNCTION)的

18、使用介绍使用自定义功能,自己实现Ofs功能和Abs功能(需掌握带参数的功能、功能返回值以及复杂数据的赋值方法,随堂联系Practise10-1 ,需要教师指导)。功能Abs:功能Offs:5. 掌握中断程序的使用(1) 使用di信号触发中断程序,每次触发,均使系统用户变量reg1进行+1的操作,当reg1>10时,将reg1 重置为1。(2) 使用ITimer指令进行定时间隔为 1s的中断触发,每次触发使系统用户变量reg2进行+1的操作,当 reg2>10时,将reg2重置为1。6.4.3建立一个可运行的基本RAPID程序在之前的章节中,已大概了解RAP ID程序编程的相关操作及

19、基本的指令。现在就通过一个实例来体验一下ABB机器人便捷的程序编辑。编制一个程序的基本流程是这样的:1) 确定需要多少个程序模块。多少个程序模块是由应用的复杂性所决定的,比如可以将位置计算、程 序数据、逻辑控制等分配到不同的程序模块,方便管理。2) 确定各个程序模块中要建立的例行程序,不同的功能就放到不同的程序模块中去,如夹具打开、夹 具关闭这样的功能就可以分别建立成例行程序,方便调用与管理。1.建立RAPID程序实例(事前准备建立board10和di1)1. 确定工作要求: 机器人空闲时,在 位置点pHome等 待。如果外部信号 di1输入为1时,机 器人沿着物体的一 条边从p10到p20

20、走一条直线,结束 以后回到pHome 点。2. ABB菜单中,选 择“程序编辑器”。3. 单击“取消”(如果系统中不存在程 序的话会出现此对 话框)。4.打开文件”菜单, 选择新建模块”。Q此应用比较简单,所以只需建 一个程序模块就足 够了。5.单击是”进行确 定。6.定义程序模块的 名称后,单击“确 定 。Q程序模块的名称可以根据需要 自己定义,以方便 管理。7.选中 “ Modulel,” 单击“显示模块”。8.单击例行程序”。9.打开“文件”,单 击“新建例行程 序”。10.首先建立一个 主程序main,然后 单击“确定”,根据 第9、10步骤建立 相关的例行程序。rHome用于机器人

21、回等待位。rini tAll 初始化。rMoveRoutine 存放 直线运动路径。11. 选择 “ rHome;' 然后单击“显示例 行程序”。12. 到芋动操纵”菜 单内,确认已选中 要使用的工具坐标与工件坐标。13. 回到程序编辑 器,单击“添加指 令”,打开指令列 表。选中“ <SMT>” 为插入指令的位I置,在指令列表中 选择“ MoveJ ”。14. 双击“ *,”进入指 令参数修改画面。"15.通过新建或选 择对应的参数数 据,设定为图中所 示的数值。16. 选择合适的动 作模式,使用摇杆 将机器人运动到图 中的位置,作为机 器人的空闲等待 点。17

22、. 选中“pHome目 标点,单击“修改 位置”,将机器人的 当前位置数据记录 下来。18. 单击修改”进行 确认。19. 单击“例行程 序”标签。20. 选中 “ rinitAII例 行程序。21. 在此例行程序 中,加入在程序正 式运行前,需要作 初始化的内容,如 速度限定、夹具复 位等。具体根据需 要添加。在此例行 程序rInitAll中只增 加了两条速度控制 的指令(在添加指 令列表的Setting类 别中)和调用了回 等待位的例行程序rHome。22.单击“例行程 序”标签。23. 选择“ rMoveRoutine ”例行程序,然后单 击“显示例行程 序”。24. 添加 “ Move

23、J指令,并将参数设定 为图中所示。25. 选择合适的动 作模式,使用摇杆 将机器人运动到图 中的位置,作为机 器人的p10点。26. 选中“p10”点, 单击“修改位置”, 将机器人的当前位 置记录到p10中 去。27. 添加 “ MoveL指 令,并将参数设置 为如图所示。28. 选择合适的动 作模式,使用摇杆 将机器人运动到图 中的位置,作为机 器人的p20点。29. 选中“p20”点, 单击“修改位置”, 将机器人的当前位I置记录到p20中 去。单击“例行程 序”标签。30. 选中“ main主 程序,进行程序执 行主体架构的设 定。31. 在开始位置调 用初始化例行程 序。32. 添加

24、“ WHILE' 指令,并将条件设定为“ TRUE。33. 添加“If指令到 图中所示位置。Q使用WHILE指令构建一个死循 环的目的在于将初 始化程序与正常运 行的路径程序隔离 开。初始化程序只 在一开始时执行一 次,然后就根据条 件循环执行路径运 动。34. 选中 “<EXP, 然后打开“编辑” 菜单,选择“ ABG ”。35.使用软键盘输 入“ di=1 ”,然后单 击“确定”。Q此处不能直 接判断数字输出信 号的状态,如 do1=1,这是错误 的,要使用功能 DOutput()。36.在IF指令的循 环中,调用两个例 行程序rMoveRoutine 和 rHome。在选中

25、IF指令的下 方,添加WaitTime 指令,参数是0.3s。主程序解读:1) 首先进入初始化 程序进行相关初始 化的设置。2) 进行WHILE的死循环,目的是将 初始化程序隔离 开。3)如果di1=1,则机器人执行对应的 路径程序。4)等待0.3s的这个指令的目的是防 止系统CPU过负荷 而设定的。2.对RAPID程序进行调试一一PHome在完成了程序的编辑以后,接下来的工作就是对这个程序进行调试,调试的目的有以下两个:1)检查程序的位置点是否正确。2)检查程序的逻辑控制是否有不完善的地方。1. 打开调试” 菜单,选择“ P移至例行 程序”。2. 选中“ rHome ”例 行程序,然后 单击

26、“确定”。3. PP是程序 指针(黄色小 箭头)的简 称。程序指针 永远指向将 要执行的指 令。所以图中 的指令将会 是被执行的 指令。4. 左手按下使 能键,进入“电动机开 启”状态。 按以下“单步37. 打开调试”菜 单。单击检查程序”, 对程序的语法进行 检查。38. 单击确定”完 成。如果有错,系 统会提示出错的具 体位置与建议操 作。3.对RAP ID程序进行调试rMoveRouti ne向前”按键, 并小心观察 机器人的移 动。Q在按下程序停止”键 后,才可以松 开使能键。5. 在指令左侧 出现一个小 机器人,说明 机器人已到 达pHome这 个等待位置。6. 机器人回到 了 pHome 这 个等待位置。1. 打开调试”菜 单,选择“P移至 例行程序”,选中“ rMoveRouti ne ”例行程序,然后 单击“确定”。2. 单步进行调试 运动指令的位置 是否合适。3. 机器人TCP点 从p10到p20进 行线性运动。4. 选中要调试的指令

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论