机械专业综合课程设计说明书--玻璃搬运工业机器人离线编程与虚拟仿真
玻璃搬运工业机器人离线编程与虚拟仿真机械专业综合课程设计说明书 玻璃搬运工业机器人离线编程与虚拟仿真 学院(系):机电信息工程学院 专 业:机械设计制造及其自动化 2目录 第一章、搬运工作站任务描述和构成.1 第二章、轴配置监控指令 .5 第三章、运动触发指令.6 第四章、复杂程序数据赋值.7 第五章、转弯半径的选取.8 第六章、玻璃搬运任务实施.10 第七章、录制机器人作业虚拟仿真视频.251第一章 、搬运工作站任务描述和构成1、 搬运工作站任务描述 采用工业机器人进行玻璃搬运,能大大提高玻璃生产线的产能,定位精度,降低不良率和人工成本。 汽车玻璃搬运工作站布局如下图所示。系统利用IRBl41O机器人将汽车玻璃从 侧的工装支架I二搬运至另侧,本工作站中已经预设搬运动作效果,需要依次完成1/0配置、程序数据创建、目标点示教、程序编写及调试,最终完成整个汽车玻璃的搬运过程。 2、 搬运工作站的构成 搬运工作站由机器人、夹具、围栏、工作台、底座、控制器、玻璃组成。各部件如下图所示: (1)机器人 (2)夹具 (3)围栏 (4)工作台 (5)底座 (6)控制器 (7)玻璃第二章 、轴配置监控指令 轴配置监控指令指定机器人在线性运动及圆弧运动过程中是否严格遵循程序中已设定的轴配置参数。默认情况下轴配置监控是打开的,当关闭轴配置监控后,机器人在运动过程中采取最接近当前轴配置数据的配置到达指定目标点。 例如 目标点P10中, 数据【1,0,1,0】就是此目标点的轴配置数据。CONST robtarget P10=1,0, 1,0,9E9,9E9,9E9,9E9,9E9,9E9 ; PR()C rMove() ConfL Off; MoveL p10,v1000,fine,tool();ENDPR()C 机器人自动匹配一组最接近当前各关节轴姿态的轴配置数据移动至目标点P10, 到达该点时,轴配置数据不一定为程序中指定的1,0, 1,0. 在某些应用场合,如离线编程创建目标点或手动示教相邻两目标点间轴配置数据相差较大时,在机器人运动过程中容易出现报誓 “轴配置错误” 而造成停机,此种情况下,若对轴配置要求较高, 则 一 般通过添加中间过渡点,若对轴配置要求不高,则可通过指令 ConfL Off关闭轴监控,使机器人自动匹配可行的轴配置来到达指定目标点。第三章 、运动触发指令 在线性运动过程中,在指定位置准确地触发事件(如置位输出信号、 激活中断等)。可以定义多种类型的触发事件,如Triggl/()(触发信号)、TriggEquip(触发装置动作)、Trigglnt(触发中断)等。在准确的位置触发机器人夹具的动作, 通常采用此种类型的触发事件。 VAR Tiggdata GripOpen; !定义触发数据 GripOpen 定义触发事件GripOpen 在距离指定目标点前10mm处,并提前0.1S(用于抵消设备动作延迟时间)触发指定事件将数字输出信号doGrip()n置为1。 !执行指令 TriggL 例如,在控制吸盘夹具动作过程中,在吸取产品的需要提前打开真空,在放置产品时需要提前释放真空,为了能够准确地触发吸盘夹具的动作,通常采用TriggL指令来对其进行精准控制 。 第四章 、复杂程序数据赋值 多数类型的程序数据均是组合型数据, 即里面包含了多项数值或字符串。可以对其中的任何一项参数进行赋值。 常见的目标点数据如下所示 :PERSrobtarget pI 0 :=0,0,0,I,0,0,0,0,0,0,0,9E9,9E9,9E9,9E9,9E9,9E9;PERSrobtarget p20 ·=I00,0,0),0,0,I,OJ, 1,0,I,0,9E9,9E9,9E9,9E9,9E9,9E9),目标点数据里面包含了四组数据,依次为TCP位置数据trans: 0,0,0、TCP姿态数据rot: 1,0,0,1、轴自己置数据robconf: 1,0,1,0、 外部轴数据extax 9E9,9E9,9E9,9E9,9E9,9E9我们可以分别对该数据的各项数值或者数值组进行操作, 如p1O.trans.x:=p20.trans.x+50,p10.trans.y:=p20.trans.y-50,p1O.trans.z:=p20.trans.z+ I00,p1O.rot:=p20.rotpIO.robconf:=p20.robcon f,赋值后,则p1O为PERS robtarget p10=150,-50,100),0,0,1,0, 1,0, 1,0),9E9,9E9,9E9,9E9,9E9,9E9。 第五章 、转弯半径的选取 在机器人运行轨迹过程中 经常会有一些中间过渡点,例如拾取正上方位置点、放置正上方位置点,绕开障碍物而设置的一些位置点,机器人在该位置不会触发具体事件。在运动至这些位置点时,应将转弯半径设置得相应大一些, 这样可以减少机器人在转角时的速度衰减,可使机器人运行轨迹更加圆滑, 可有效提升机器人节拍。但是转弯半径不是越大越好,需要根据当前运动指令实际运行的距离来设置,设置的转弯半径数值不可大于运动指令运行的距离, 否则会出现 “转弯路径故障” 等警告。例如 在拾取放置动作过程中,机器人在拾取和放置之前需要先移动至其正上方处, 之后竖直上下对工件进行拾取放置动作。程序如下 :MoveJ pPrepick,vEmptyMax,z50,tGripper;MoveL pPick, vEmptyMin, fine,tGripper;Set doGripper .MoveJ pPreplace,vLoadMax,z50,tGripper;MoveL pPplace, vLoadMin, fine,tGripper;Set doGripper 在机器人TCP运动至pPrepick和pPrepplace点位的运动指令中写人转弯半径z50,这样机器人可在此两点处以半径为50mm的轨迹圆滑过渡, 速度衰减较小,但在pPick和pPlace点位处需要置位夹具动作, 所以一般情况下使用fine,即完全到达该目标点处再控制夹具动作。 在机器人运行轨迹过秤申, 经常会有一些中间过渡点, 例如拾取正上方位置点、 放置正上方位置点、 绕开障碍物而设置的一些位置点, 机器人在该位置不会触发具体事件。在运动至这些位置点时, 应将转弯半径设置得相应大一些, 这样可以减少机器人在转角时的速度衰减, 可使机器人运行轨迹更加圆滑, 可有效提升机器人节拍。 但是转弯半径不是越大越好, 需要根据当前运动指令实际运行的距离来设置, 设置的转弯半径数值不可大于运动指令运行的距离, 否则会出现 “转弯路径故障” 等警告。例如 在拾取放置动作过程中,机器人在拾取和放置之前需要先移动至其正上方处, 之后竖直上下对工件进行拾取放置动作。程序如下 :MoveJ pPrepick,vEmptyMax,z50,tGripper;MoveL pPick, vEmptyMin, fine,tGripper;Set doGripper .MoveJ pPreplace,vLoadMax,z50,tGripper;MoveL pPplace, vLoadMin, fine,tGripper;Set doGripper 在机器人TCP运动至pPrepick和pPrepplace点位的运动指令中写人转弯半径z50,这样机器人可在此两点处以半径为50mm的轨迹圆滑过渡, 速度衰减较小, 但在pPick和pPlace点位处需要置位夹具动作, 所以一般情况下使用fine, 即完全到达该目标点处再控制夹具动作。 9第六章 、玻璃搬运任务实施 双击附件“ST_GlassCarry”压缩包文件,如图所示: 根据解压向导的相关提示解压该工作站,解压完成之后可进行仿真运行,查看该机器人工作站的运行情况,如图所示: 继续点击下一个 :10点击下一个:11点击完成:点击仿真:点击播放: 播放完成: 仿真过程中, 机器人控制吸盘夹具动作进行拾取放置, 将汽车玻璃从右侧支架搬运至左侧, 完成之后, 可重置该工作站, 机器人及玻璃全部复位。 复位 只可复位至上次开始前的状态。 恢复己保存状态可复位至之前已保存的状态。 点击“显示例行程序:即可显示对应程序,注解如下:MODULE MainMoudle PERS tooldata tGripper:=TRUE,0,0,208,0.707107,0,0,0.707107,1,0,0,120,1,0,0,0,0,0,0;!定义工具数据tGripper PERS loaddata LoadEmpty:=0.001,0,0,0.001,1,0,0,0,0,0,0;!定义空载时的有效载荷数据, 得序白也可直接使用系统默认空载数据 load() PERS loaddata LoadFull:=0.1,0,0,5,1,0,0,0,0,0,0;!定义有效载荷数据 PERS robtarget pHome:=870,0,987,1.57E-07,0,1,0,0,0,0,0,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;!定义机器人工作原理pHome PERS robtarget pPickBase:=985.653,210.818,637.932,-2.94E-07,-0.704489,0.709714,1.89E-07,0,0,2,0,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;!定义拾取玻璃基准位置, 价于右侧支架最上层玻璃仿置处