机器人技术基础及应用 课件 项目四 认识工业机器人编程语言+任务二 认识典型工业机器人编程语言_第1页
机器人技术基础及应用 课件 项目四 认识工业机器人编程语言+任务二 认识典型工业机器人编程语言_第2页
机器人技术基础及应用 课件 项目四 认识工业机器人编程语言+任务二 认识典型工业机器人编程语言_第3页
机器人技术基础及应用 课件 项目四 认识工业机器人编程语言+任务二 认识典型工业机器人编程语言_第4页
机器人技术基础及应用 课件 项目四 认识工业机器人编程语言+任务二 认识典型工业机器人编程语言_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

机器人技术基础及应用教研室:机器人技术

项目四认识工业机器人编程语言

任务二

认识典型工业机器人编程语言目录任务工单2任务提出1任务准备3任务总结5任务实施4一、任务提出任务提出

汽车领域所使用的典型工业机器人为ABB机器人和KUKA机器人。本次任务主要了解ABB机器人编程所使用的RAPID编程语言和KUKA机器人编程所使用的KRL编程语言。二、任务工单任务工单项目名称项目四

认识工业机器人编程语言任务名称任务二

认识典型工业机器人编程语言实训场地

实训设备

学号

工位号

知识目标(1)掌握RAPID编程语言。(2)掌握KRL编程语言。技能目标(1)能够注释RAPID工业机器人程序。(2)能够注释KRL工业机器人程序。素质目标(1)增长见闻、关注行业;(2)安全生产、提高效率;(3)文明生产、保证质量;(4)提升自信、服务产业。任

容1.RAPID编程语言函数类型。

2.RAPID编程语言常用数据类型。

3.RAPID编程语言常用编程指令。

4.KRL编程语言结构化编程的目的。

5.KRL编程语言常用编程指令。

三、任务准备(一)思维导图三、任务准备(二)知识详解1.认识RAPID编程语言RAPID语言是ABB机器人特有的工业机器人编程语言。具有较大的灵活性和扩展性,可支持用户自定义数据类型。RAPID语言RAPID语言支持分层编程方案,在分层编程方案中,可为特定机器人系统安装新程序、数据对象和数据类型。该方案能对编程环境进行自定义(扩展编程环境的功能),并获得RAPID编程语言的充分支持。三、任务准备(二)知识详解1.认识RAPID编程语言(1)任务与模块化RAPID应用可视为一系列任务,每一个任务包含一组模块,每一个模块包换若干数据和程序声明。RAPID模块可以分为系统模块和任务模块。三、任务准备(二)知识详解1.认识RAPID编程语言(2)函数类型

有返回值函数:返回用户定义的特定类型的数值,经常用于表达式里面。

无返回值函数:不返回任何数值,经常用于语句中

有输入值函数:用于输入用户定义好的参数,也常用于表达式中。

无输入值函数:用户不能输入参数,也常用于表达式中。三、任务准备(二)知识详解1.认识RAPID编程语言(3)常用数据类型tooldata:用于描述工具的特征。此类特征包括工具中心点(TCP)的位置和方位以及工具负载的物理特征。wobjdata:用于描述机械臂焊接、处理、于其内部移动等的工件。loaddata:用于描述附于机械臂机械界面(机械臂安装法兰)的负载。常常定义机械臂的有效负载或支配负载。robtarget:用于定义机械臂和附加轴的位置。位置数据用于定义移动机械臂和附加轴的移动指令中的位置。jointtagert:

用于确定通过指令MoveAbsJ而将机械臂和外轴移动到的位置。pos:

用于描述X、Y和Z位置的坐标(仅X、Y和Z各位置)。三、任务准备(二)知识详解1.认识RAPID编程语言(3)常用数据类型signalxx:

signalai:模拟信号输入信号

signalao:模拟信号输出信号

signaldi:数字信号输入信号

signaldo:数字信号输出信号

signalgi:数字信号输入信号组

signalgo:数字信号输出信号组三、任务准备(二)知识详解1.认识RAPID编程语言(3)常用数据类型bool:

用于逻辑值(真/假)。num:

用于数值;例如,计数器。string:用于字符串。三、任务准备(二)知识详解1.认识RAPID编程语言(4)常用编程指令移动指令MoveAbsJ:用于将机械臂和外轴移动至轴位置中指定的绝对位置。MoveJ:

当该运动无须位于直线中时,用于将机械臂迅速地从一点移动至另一点。MoveL:

用于将工具中心点沿直线移动至给定目的。MoveC:

用于将工具中心点(TCP)沿圆周移动至给定目的地。三、任务准备(二)知识详解1.认识RAPID编程语言(4)常用编程指令等待指令WaitDI:用于等待,直至已设置数字信号输入。WaitDO:

用于等待,直至已设置数字信号输出。三、任务准备(二)知识详解1.认识RAPID编程语言(4)常用编程指令信号设定指令Set:

用于将数字信号输出信号的值设置为“1”。Reset:

用于将数字信号输出信号的值设置为“0”。三、任务准备(二)知识详解1.认识RAPID编程语言(4)常用编程指令信号设定指令Set:

用于将数字信号输出信号的值设置为“1”。Reset:

用于将数字信号输出信号的值设置为“0”。三、任务准备(二)知识详解1.认识RAPID编程语言(4)常用编程指令信号设定指令IF:

分支指令,根据是否满足条件,执行不同的指令。

格式:IF<条件语句>THEN<执行语句>ENDIF三、任务准备(二)知识详解1.认识RAPID编程语言(4)常用编程指令信号设定指令FOR:

循环指令,当一个或多个指令重复多次时,使用FOR。

格式:FOR<ID>FROM<Start>TO<End>STEP<EXP>DO<执行语句>ENDFOR三、任务准备(二)知识详解1.认识RAPID编程语言(4)常用编程指令信号设定指令WHILE:

循环指令,只要给定条件表达式评估为TRUE值,当重复一些指令时,使用WHILE。如果可能确定重复的数量,则可以使用FOR指令。

格式:WHILE<EXP>DO<执行语句>ENDWHILE三、任务准备(二)知识详解1.认识RAPID编程语言(4)常用编程指令信号设定指令TEST:

分支指令。根据表达式或数据的值,当有待执行不同的指令时,使用TEST。如果并没有太多的替代选择,则亦可使用IF...ELSE指令。

格式:TEST<EXP>:CASE<EXP><执行语句>ENDTEST三、任务准备(二)知识详解1.认识RAPID编程语言(4)常用编程指令程序调用指令PROCALL:

过程调用,用于将程序执行转移至另一个无返回值程序。

当充分执行无返回值程序后,执行原程序中的后续指令。RETURN

用于完成程序的执行。

如果程序是一个函数,则同时返回函数值。三、任务准备(二)知识详解1.认识RAPID编程语言(5)程序分析PROCmain()程序名。MoveAbsJpHome\NoEOffs,v1000,fine,mytool;!运行机器人到点pHome。MoveJp10,v1000,fine,mytool;!

运动机器人到点p10。MoveLp20,v1000,fine,mytool;!

沿直线运动机器人到点p20。MoveLp30,v1000,fine,mytool;!沿直线运动机器人到点p30。MoveLp40,v1000,fine,mytool;!

沿直线运动机器人到点p40。MoveLp50,v1000,fine,mytool;!

沿直线运动机器人到点p50MoveCp60,p70,v1000,fine,mytool;!沿圆弧运动机器人经p60到p70。三、任务准备(二)知识详解1.认识RAPID编程语言(5)程序分析MoveLp80,v1000,fine,mytool;!

沿直线运动机器人到点p80。MoveJp90,v1000,fine,mytool;!

运动机器人到点p90IFdi1=1THEN!如果输入信号di为真,则执行if内语句,否则跳出if语句。 Resetdo1;!

沿直线运动机器人到点 WaitTime1;!

等待1s。 MoveLOffs(p100,0,0,50),v1000,fine,mytool;!

机器人到点p100的z正方向50mm的位置。三、任务准备(二)知识详解1.认识RAPID编程语言(5)程序分析MoveLp100,v1000,fine,mytool;!

沿直线运动机器人到点。 Griper;!

调用抓取程序。 MoveLOffs(p100,0,0,50),v1000,fine,mytool;!机器人到点p100的z正方向50mm的位置。ENDIF!if分支程序结束。MoveJp110,v1000,fine,mytool;!

运动机器人到点p110。MoveAbsJpHome\NoEOffs,v1000,fine,mytool;!

运动机器人到点pHome。ENDPROC!程序结束。三、任务准备(二)知识详解2.认识KRL编程语言(1)结构化采用统一编程方法

通过严密的分段结构方便地解决复杂的问题。

以清晰易懂的方式展示基本方法。

提高维护、修改和扩展程序的效率。前瞻性程序规划

使复杂的任务得以分解成几个简单的分步任务。

降低编程时的总耗时。

使相同性能的组成部分得以更换。

单独开发各组成部分。三、任务准备(二)知识详解2.认识KRL编程语言(1)结构化移动指令

高效

无误

易懂

维护简便

清晰明了

具有良好的经济效益三、任务准备(二)知识详解2.认识KRL编程语言(2)常用编程指令移动指令

PTP(PointtoPoint):点到点运动,是最快的轨迹到目标点的指令。

LIN(Linear):线性运动,用于设定速度进行直线移动。

CIRC(Circular):圆周运动,用于设定速度进行圆周轨迹移动。三、任务准备(二)知识详解2.认识KRL编程语言(2)常用编程指令相对运动指令

PTP_Rel(PointtoPointRelative):点到点相对运动,用于指定相对运动的起点和终点坐标。

LIN_Rel(LinearRelative):直线相对运动,用于指定相对运动的起点和终点坐标。

CIRC_Rel(CircularRelative):圆弧相对运动,用于指定圆弧运动的起点和终点坐标。三、任务准备(二)知识详解2.认识KRL编程语言(2)常用编程指令等待指令

WAIT:等待特定时间的指令。

WAITFOR:等待特定信号发生的指令。三、任务准备(二)知识详解2.认识KRL编程语言(4)常用编程指令信号设定指令

IN:输入信号的指令。

OUT:输出信号的指令,可以是开关信号或脉冲信号。三、任务准备(二)知识详解2.认识KRL编程语言(2)常用编程指令逻辑指令IF:

分支指令,用于将程序分为多个路径。IF指令会对可能为真(TRUE)或为假(FALSE)的条件进行检查,以此来判断是否执行指令。

格式:IF<条件语句>THEN<执行语句>ELSE<执行语句>ENDIF三、任务准备(二)知识详解2.认识KRL编程语言(2)常用编程指令逻辑指令SWITCH:

分支指令。若需要区分多种情况并为每种情况执行不同操作,则可用SWITCH-CASE指令达到目的。

格式:SWITCH<EXP>CASE<EXP><执行语句>ENDSWITCH三、任务准备(二)知识详解2.认识KRL编程语言(2)常用编程指令逻辑指令LOOP:

无限循环指令。每次运行完之后都会重新运行的循环,可直接用EXIT退出

格式:LOOP<执行语句>ENDLOOP三、任务准备(二)知识详解2.认识KRL编程语言(2)常用编程指令逻辑指令FOR:

计数循环指令,可以通过规定重复次数执行一个或多个指令的控制结构。

格式:FORcounter=startTOlastSTEPincrement<执行语句>ENDFOR三、任务准备(二)知识详解2.认识KRL编程语言(2)常用编程指令逻辑指令WHILE:

当型循环也被称为前测试循环。这种循环会一直重复过程,直至满足条件(conition)为止。

格式:WHILEcondition<执行语句>ENDWHILE三、任务准备(二)知识详解2.认识KRL编程语言(2)常用编程指令逻辑指令REPEAT:

直到型循环也称为后测试循环。先执行指令,在结束时测试退出循环的条件(condition)是否已经满足。

格式:REPEAT<执行语句>UNTILcondition三、任务准备(二)知识详解2.认识KRL编程语言(3)程序分析DEFMY_PROG();程序名。DECLINTn;

声明整型变量n。INI;初始化。n=10;n赋值10。PTPHOMEVel=100%DEFAULT;运行机器人到点HOME。PTPP20Vel=100%PDAT20tool[1]base[1];运行机器人到点P20。三、任务准备(二)知识详解2.认识KRL编程语言(3)程序分析SWITCHn;Switch分支语句开始CASE1;

判断n是否为“1”,如果是,执行CASE1内的语句,

;否则跳出CASE1,执行后续其他语句。PTPP21Vel=100%PDAT21tool[1]base[1];

运行机器人到点P21CASE2;判断n是否为“2”,如果是,执行CASE2内的语句,

;否则跳出CASE2,执行后续其他语句。LINP22Vel=2m/sCPDAT22tool[1]base[1];沿直线运行机器人到点P22。ENDSWITCH;Switch分支语句结束。三、任务准备(二)知识详解2.认识KRL编程语言(3)程序分析PTPP20Vel=100%PDAT20tool[1]base[1];

运行机器人到点P20。PTPHOMEVel=100%DEFAULT;

运行机器人到点HOME。END;程序结束四、任务实施1.选择题(1)(

)语言是ABB机器人特有的工业机器人编程语言,支持用户自定义数据类型。A.RAPIDB.ALC.VALD.KRL(2)RAPID语言中(

)的函数用于返回用户定义的特定类型的数值。A.无返回值B.有返回值C.无输入值D.有输入值(3)(

)数据类型规定机械臂和外轴的各单独轴位置,并以度数计。A.posB.robtargetC.jointtargetD.joint(4)移动指令(

)用于将机械臂和外轴移动至轴位置中指定的绝对位置。A.MoveCB.MoveLC.MoveJD.MoveAbsJ(5)下列不是分支指令的是(

)。A.IFB.SWITCHC.TESTD.FOR四、任务实施2.填空题(1)RAPID模块可以分为系统模块和

温馨提示

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

最新文档

评论

0/150

提交评论