1、工业机器人课件第5章-轨迹规划与编程2通用计算机语言:汇编语言、C语言、Pasical语言、Fortran语言等。写起来麻烦,可读性差。机器人的基本操作并不多,如手爪的开闭等,是反复使用的。开发了各种机器人专用语言开发了各种机器人专用语言-机器人语言机器人语言机器人语言-人与机器人的交流-软件部分正朝着统一、标准化发展正朝着统一、标准化发展7.5 7.5 工业机器人编程工业机器人编程7.5.17.5.1工业机器人编程方式工业机器人编程方式1.1.示教方式编程示教方式编程示教编成是一项成熟的技术,它是目前大多数工业机器人的编程方式。示教:示教:操作者必须把机器人终端移动至目标位置,并把此位置对应
2、的机器人关节角度信息记录进内存储器的过程。再现:再现:当要求复现这些运动时,顺序控制器从内存读出相应位置,机器人就可重复示教时的轨迹和各种操作。这种方法编制程序是在机器人现场进行的直接示教直接示教(手把手示教):用户使用安装在机器人手臂内的操纵杆(Joystick),按给定运动顺序示教动作内容。示教方式示教方式间接示教间接示教(示教盒示教):利用装在示教盒上的按钮驱动机器人按需要的顺序进行操作。机器人每一个关节对应着示教盒上的一对按钮,以分别控制该关节正反方向的运动。是是目前广泛使用的一种示教编程方式目前广泛使用的一种示教编程方式。p关节坐标系(Joint Coordinates)p直角坐标系
3、(Rectangular Coordinates)p工具坐标系(Tool Coordinates)p用户坐标系(User Coordinates)操作者可以选择在不同坐标系下示教。例如:p 编程占用机器人的作业时间;p 很难规划复杂的运动轨迹以及准确的直线运动;p 难以与传感信息札配合;p 难以与其它操作同步。示教编程的优点示教编程的优点只需要简单的设备和控制装置即可进行、操作简单,易于掌握;而且示教再现过程很快,示教之后马上即可应用。缺点:缺点:2 2机器人语言编程机器人语言编程用专用的机器人语言来描述机器人的动作轨迹。实现了计算机编程,并可以引入传感信息,从而提供一个更通用的方法来解决人一
4、机器人通讯接口问题。3 3离线编程离线编程离线编程是在专门的软件环境支持下用专用或通用程序在离线情况下进行机器人轨迹规划编程的一种方法。离线编程程序通过支持软件的解释或编译产生目标程序代码,最后生成机器人路径规划数据。7.6.2 MOTOMAN 7.6.2 MOTOMAN 机器人编程语言机器人编程语言机器人一般采用插补的方式进行运动控制,主要有关节插补、直线插补、圆弧插补和自由曲线插补。MOVJ 关节插补:关节插补:在机器人未规定采取何种轨迹运动时,使用关节插补,以最高速度的百分比来表示再现速度,关节插补的效率最高;MOVL直线插补:直线插补:机器人以直线轨迹运动,缺省单位为cm/min。直线
5、插补常被用于焊接区间等的作业区间,且机器人在移动过程中自动改变手腕位置;MOVC圆弧插补:圆弧插补:机器人沿着用圆弧插补示教的三个程序点执行圆弧轨迹运动,再现速度的设定与直线插补相同;MOVS自由曲线插补:自由曲线插补:对于有不规则形状的曲线,使用自由曲线插补,再现速度的设定与直线插补相同;示教焊接工件图举例示教焊接工件图举例 行命 令内 容 说 明0000NOP 程序开始0001MOVJ VJ=25.00移到待机位置 程序点1 0002MOVJ VJ=25.00移到焊接开始位置附近 程序点20003MOVJ VJ=12.5移到焊接开始位置 程序点30004ARCON焊接开始0005MOVL
6、V=50移到焊接结束位置 程序点40006ARCOF焊接结束0007MOVJ VJ=25.00移到不碰触工件和夹具的位置 程序点50008MOVJ VJ=25.00移到待机位置 程序点60009END程序结束 项目项目3 3 弧焊机器人示教编程弧焊机器人示教编程n弧焊机器人焊接时是按照事先编辑好的程序来进行的,这个程序一般是由操作人员按照焊缝形状示教机器人并记录运动轨迹而形成的。n机器人的程序由主程序、子程序及程序数据构成。在一个完整的应用程序中,一般只有一个主程序,而子程序可以是一个,也可以是多个。【学习目标】n知识目标知识目标n1掌握机器人各轴的运动规律;n2掌握弧焊机器人系统中各部分的功
7、能;n3熟悉示教器结构及操作界面与按键功能。n技能目标技能目标n1能使用示教器操纵杆熟练控制机器人各轴的运动;n2能使用示教器快速找到并打开所需要选项。一、示教与再现一、示教与再现n“示教”就是机器人学习的过程,在这个过程中,操作者要手把手教会机器人做某些动作,机器人的控制系统会以程序的形式将其记忆下来。n机器人按照示教时记忆下来的程序展现这些动作,就是“再现”过程。n示教再现机器人的工作原理如图3-1所示。【知识准备知识准备】n1基本运动指令及其应用基本运动指令及其应用n常用基本运动指令有:MoveL、MoveJ、MoveCnMoveL:直线运动。nMoveJ:关节轴运动。nMoveC:圆周
8、运动。三、编程指令及应用三、编程指令及应用n(1)直线运动指令的应用 n直线由起点和终点确定,因此在机器人的运动路径为直线时使用直线运动指令MoveL,只需示教确定运动路径的起点和终点。n例如,MoveL p1,v100,z10,tool1;(直线运动起始点程序语句)np1:目标位置。nv100:机器人运行速度。q修改方法:将光标移至速度数据处,回车,进入窗口;选择所需速度。nz10:转弯区尺寸。q修改方法:将光标移至转弯区尺寸数据处,回车,进入窗口;选择所需转弯区尺寸,也可以进行自定义。ntool1:工具坐标。小贴士:转弯区尺寸小贴士:转弯区尺寸 nfine指机器人TCP达到目标点(见图3-
9、3中的P2点),在目标点速度降为零。机器人动作有停顿,焊接编程时,必须用fine参数。nzone指机器人TCP不达到目标点,而是在距离目标点一定长度(通过编程确定,如z10)处圆滑绕过目标点,如图3-3中的P1点。图图3-3 转转弯区尺寸弯区尺寸n例1:使机器人沿长100mm、宽50mm的长方形路径运动n采用offs函数进行精确确定运动路径的准确数值。n机器人的运动路径如图3-4所示,机器人从起始点P1,经过P2、P3、P4点,回到起始点P1。图图3-4 长长方形路径方形路径n为了精确确定p1、p2、p3、p4点,可以采用offs函数,通过确定参变量的方法进行点的精确定位。noffs(p,x,
10、y,z)代表一个离p1点X轴偏差量为X,Y轴偏差量为y,Z轴偏差量为z的点。n将光标移至目标点,按“Enter”键,选择Func,采用切换键选择所用函数,并输入数值。如P3点程序语句为:n MoveL Offs(P1,100,50,0),V100,fine,tool1与Z轴距离与X轴距离与Y轴距离起始点n机器人长方形路径的程序如下:nMoveL OffsP1,V100,fine,tool1 P1nMoveL Offs(P1,100,0,0),V100,fine,tool1 P2nMoveL Offs(P1,100,50,0),V100,fine,tool1 P3nMoveL Offs(P1,0
11、,50,0),V100,fine,tool1 P4nMoveL OffsP1,V100,fine,tool1 P1n(2)圆弧运动指令的应用 n圆弧由起点、中点和终点三点确定,使用圆弧运动指令MoveC,需要示教确定运动路径的起点、中点和终点。圆弧运动路径如图3-5所示。图图3-5 圆圆弧运弧运动动路径路径n起点为P0,也就是机器人的原始位置,使用MoveC指令会自动显示需要确定的另外两点,即中点和终点,程序语句如下:nMoveC p1,p2,v100,z1,tool1n与直线运动指令MoveL一样,也可以使用offs函数精确定义运动路径。n例2:如图3-6所示,令机器人沿圆心为P点,半径为8
12、0mm的圆运动:图图3-6 整整圆圆路径路径n程序如下:nMoveJ p,v500,z1,tool1;nMoveL offs(p,80,0,0),v500,z1,tool1;nMoveC offs(p,0,80,0),offs(p,-80,0,0),v500,z1,tool1;nMoveC offs(p,0,-80,0),offs(p,80,0,0),v500,z1,tool1;nMoveJ p,v500,z1,tool1n2输入输出指令输入输出指令nDo指机器人输出信号,di指输入机器人信号n输入输出信号有两种状态:“1”为接通;“0”为断开。n1)设置输出信号指令 Set do1n2)复位
13、输出信号指令 Reset do1n3)输出脉冲信号指令 PulseDO do1n3.通信指令(人机对话)通信指令(人机对话)n1)清屏指令 TPErasen2)写屏指令 TPWrite Stringq其中 String在示教器显示屏上显示的字符串。每一个写屏指令最多可显示80个字符。n4程序流程指令程序流程指令q判断执行指令IF q循环执行指令WHILEn循环指令运行时,机器人循环直到不满足判断条件后,才跳出循环指令,执行后面的指令。n5机器人停止指令机器人停止指令nStop指令:指令:机器人停止运行,软停止指令,直接在下一句指令启动机器人;nExit指令:指令:机器人停止运行,并且复位整个运
14、行程序,将程序指针移至主程序第一行。下次运行程序时,机器人程序必须从头开始。n6赋值指令赋值指令nDate :=ValueqDate:指被赋值的数据qValue:指该数据被赋予的值。n7.等待指令等待指令nWaitTime Timeq等待指令是让机器人运行到该程序是等待一段时间(Time 机器人等待的时间)。四、新建与加载程序四、新建与加载程序n新建与加载一个程序的步骤如下:新建与加载一个程序的步骤如下:n(1)在主菜单下,选择程序编辑器;n(2)选择任务与程序;n(3)若创建新程序,按新建,然后打开软件盘对程序进行命名;若编辑已有程序,则选加载程序,显示文件搜索工具;n(4)在搜索结果中选择
15、需要的程序,按确认,程序被加载,如图3-7所示。为了给新程序腾出空间,可以先删除先前加载的程序。图图3-7 机器人程序机器人程序n 例行程序有不同的语句组成,如运动指令,等待指令等。每句指令又由不同的变量组成,变量视它们自己的类型,可改变或省略。n程序中各指令的含义如图3-8所示。如如图图3-8 机器人程序中指令含机器人程序中指令含义义A-直线运动指令名称 B-点位被隐藏的数值 C-可定义的运动速度D-可定义的运动点类型(精确点)E-有效工具n(1)调节运行速度 n在开始运行程序前,为了保证操作人员和设备的安全,应将机器人的运动速度调整到75%。速度调节方法如下:q1)按快捷键;q2)按速度模
16、式键,显示如图3-9所示的快捷速度调节按钮;q3)将速度调整为75%或50%;q4)按快捷菜单键关闭窗口。图图3-9 快捷速度快捷速度调节调节n(2)运行程序 n运行刚才打开的程序,先用手动低速,单步执行,再连续执行。q运行时是从程序指针指向的程序语句开始,图3-10的“A”指示的即为程序指针。运行步骤如下:n1)将机器人切换至手动模式n2)按住示教器上的使能键n3)按单步向前或单步向后,单步执行程序。执行完一句即停止。图图3-10 程序指程序指针针n(2)按OK,关闭对话框,示教器上显示生产窗口,如图3-12所示;图图3-12 机器人自机器人自动动运行运行时时的生的生产产窗口窗口n(3)按马
17、达上电/失电按钮激活电机;n(4)按连续运行键开始执行程序;n(5)按停止键停止程序;n(6)插入钥匙,运转模式返回手动状态。随着机器人学和计算机技术的不断发展,回前已形成了高度自动化的生产系统。这些系统和CADCAM技术的结合,其发展已形成了不可避兔的趋势,这就是所谓的CAD/CAMROBOTICS体化。在这样的一体化的系统中,由于机器人工作环境的复杂性,对机器人及其工作环境乃至生产过程的计算机仿真是必不可少的。机器人仿真系统的住务,就是在不接触实际机器人及其工作环境的情况下,通过图形技求,提供一个和机器人进行交互作用的虚拟环境。7.77.7 工业机器人离线编程工业机器人离线编程 与在变线示
18、教编程相比,离线编程系统具有如下优点:与在变线示教编程相比,离线编程系统具有如下优点:(1)减少机器人不工作的时间,当对下一个任务进行编 程时,机器人可仍在生产线上工作。(2)使编程者远离危险的工作环境。(3)使用范围广,离线编程系统可以对各种机器人进行编程。(4)便于和CADCAM系统结合,做到CAD/CAMROBOTICS 一体化。(5)可使用高级计算机编程语言对复杂任务进行编程。(6)便于修改机器人程序。q 完整的机器人离线编程系统包括q 用户接口q 机器人系统的三维几何建模q 运动学计算q 轨迹规划q 三维图形动态仿真q 通讯及后处理、误差的校正等。离线编程系统的基本组成离线编程系统的基本组成机器人离线编程系统的结构框图谢谢观看