




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
工业机器人离线编程与仿真
工程技术分院
第一章编程仿真软件的认知
1.1工业机器人仿真技术工业机器人仿真技术通过计算机运行软件对实际的机器人系统进行仿真模拟。通过仿真软件可以在虚拟环境中设计和训练工业机器人的各种典型应用包括机器人的抛光、打磨、搬运、喷涂、涂胶、上下料、切割等应用。同时也可以充分发挥学生的创新能力。1.2RobotStudio安装1.ABB离线编程与仿真软件RobotStudioRobotStudio软件的主要功能1)在RobotStudio中可以模拟真实的使用环境,2)CAD导入。RobotStudio可以很容易地将各种主要的CAD格式导入数据,包括IGEA、STEP、VRML、VDAFS、ACIS、CATIA。通过使用此类非常精确的3D模型数据,3)自动生成路径。4)自动分析伸展能力。5)碰撞检查。确保机器人离线编程得出的程序的可用性。6)在线作业。使调试与维护工作更轻松。7)应用功能包。将机器人更好地与工艺应用进行有效的融合。8)二次开发。使机器人应用实现更多的可能,满足机器人的科研需要。工业机器人离线编程与仿真
工程技术分院
第二章搬运机器人的离线编程与仿真
1.学会机器人常用I/O板DSQC652的设置方法。2.学会机器人I/O信号的设置方法。3.学会使用软件在离线状态下进行工具数据、工件坐标数据、有效载荷的程序数据创建。4.学会机器人基本运动指令的使用。5.学会test、offs等较复杂机器人指令的应用。6.学会机器人程序模板的导入方法。7.学会使用RobotStudio仿真软件在离线状态下进行目标点示教。【学习目标】【任务描述】本次的任务是在已经构建好的工作站里面将火花塞从左侧工件托盘上搬运到右侧摆台上。在工作站配置中所使用的机器人是ABBIRB1410型机器人,并且事先已经使用Smart组件构建完成机器人所使用的工具的夹取和放置的动态效果。因此要完成搬运火花塞的操作需要进行如下的工作任务。1.I/O板卡设置;2.I/O信号设置;3.程序数据的创建;4.机器人程序的编制和调试;5.目标点的示教。2.1知识链接2.1.1标准I/O板的配置ABB工业机器人标准I/O板的型号有DSQC651、DSQC652、DSQC653、DSQC355A、DSQC377A等。不同类型的板卡具有数量不等的数字量输入、数字量输出以及模拟量输出通道。参数名称说明NameI/O板名称TypeofUnitI/O板类型ConnectedtoBusI/O板所连接的总线DeviceNetAddressI/O板在总线中的地址标准I/O板的配置参数表
2.1.2I/O信号的设置2.1知识链接
实现机器人和外部设备的通信,除了有标准I/O板以外,还需要在标准I/O板上进行I/O信号的设置。参数名称说明Name设置信号的名称TypeofSignal设置信号的类型AssignedtoDevice设定的信号所在的I/O模块DeviceMapping设定信号所占用的地址I/O信号设置参数表2.1.3机器人常用运动指令2.1知识链接1.关节运动指令MoveJ实现从p10快速运动到p20MoveJp20,v1000,fine,tool1\wobj:=wobj12.1.3机器人常用运动指令2.1知识链接(2)直线运动指令MoveL从初始位置p10沿直线运动到p20:MoveLp20,v500,z50,tool1\wobj:=wobj12.1.3机器人常用运动指令2.1知识链接(3)圆弧运动指令MoveC机器人从p10点开始,沿着p30,终点是p40:MoveLp10,v500,fine,tool1\wobj:=wobj1MoveCp30,p40,v500,z50,tool1\wobj:=wobj1(4)绝对位置运动指令MoveAbsJ2.1.3机器人常用运动指令2.1知识链接实现ABB机器人回到机械原点:PERSjointtargetjpos10:=[[0,0,0,0,30,0],[9E+09,9E+09,
9E+09,
9E+09,
9E+09,
9E+09]];MoveAbsJjpos10,v500,fine,tool1\wobj:=wobj1注意:绝对位置运动指令MoveAbsJ是机器人以单轴运行的方式运动至目标点,绝对不存在死点,运动状态完全不可控,避免在正常生产中使用此指令,常用于检查机器人零点位置。2.1知识链接2.1.4I/O控制指令(1)置位指令setsetdo1;将数字输出信号do1置位为1(2)复位指令resetresetdo1;将数字输出信号do1复位为0(3)waitDIWaitDIdi1,1;等待di1的值为1。如果di1为1,则程序继续往下执行;如果达到最大等待时间300s以后,di1的值还不为1,则机器人报警或进入出错处理程序。(4)waitDOWaitdo1,1;等待do1的值为1。如果do1为1,则程序继续往下执行,如果达到最大等待时间300s以后,do1的值还不为1,则机器人报警或进入出错处理程序。2.1知识链接2.1.5逻辑控制指令(1)While指令While条件判断指令用于在给定条件满足的情况下,一直重复执行对应的指令。如当num1>num2的条件满足的情况下,就一直执行num1:=num1-1的操作。Whilenum1>num2DOnum1:=num1-1;ENDWHILE2.1知识链接2.1.5逻辑控制指令(2)FOR指令FOR重复执行判断指令适用于一个或多个指令需要重复执行数次的情况。如重复执行例行程序Routine110次可以这样进行操作:FORiFROM1TO10DORoutine1;ENDFOR2.1知识链接2.1.5逻辑控制指令IF条件判断指令,就是根据不同的条件去执行不同的指令。条件判定的条件数量可以根据实际情况进行增加与减少。例如实现这样的要求:如果num1为1,则flag1会赋值为TRUE;如果num1为2,则flag1会赋值为FALSE。除了以上两种条件之外,则执行do1置位为1可以这样进行操作:IFnum1=1THENflag1:=TRUE;ELSEIFnum1=2THENflag1:=FLASE;ELSEsetdo1;ENDIF(3)IF指令2.1.6工具数据tooldata的定义2.1知识链接PERStooldatatool0:=[TRUE,[[0,0,0],[1,0,0,0]],[0.001,[0,0,0.001],[1,0,0,0],0,0,0]];PERS<数据类型><名称>:=[true/false,[[transofpos],[rotoforient]],[mass,cogofpos],aomoforient]true/false表示使用/未使用此工具transofpos表示相对于tool0的TCP的偏移mass表示工具的重量cogofpos表示工具的重心2.1.6工具数据tooldata的定义2.1知识链接CRobT的使用用于读取当前机器人目标点数值。先定义一个robtarget类型的数据,然后将读取的数据存入到预先定义的数据中。例如,指定工具坐标tool1,工件坐标默认,程序如下:VARrobtargetp3;p3:=CRobT(\Tool:=tool1\WObj:=wobj0);2.1.6工具数据tooldata的定义2.1知识链接Incr的使用自增运算,相当于C语言中的++,用法如下:
Incrreg1:相当于reg1=reg1+1RelTool(RelativeTool)用于添加一个相对于基准点的偏移和旋转,格式如下:RelTool(PointDxDyDz[\Rx][\Ry][\Rz])其中:Ponit是robtarget类型,为偏移和旋转的基准。Dx、Dy和Dz分别是在工具坐标系下相对于X、Y和Z轴的偏移,Rx、Ry和Rz则分别是在工具坐标系下相对于X、Y和Z轴的旋转。RelTool的使用2.1.7其他指令2.1知识链接(1)offs指令offs用于表示相对于已知目标点的偏移:offs(p1,100,110,120)(2)test指令功能同if指令非常相近,根据test后条件的不同情况执行不同的动作。TESTnum1CASE1:
flag1=TRUE;CASE2:flag1=FALSE;DEFAULT:setdo1;ENDTEST2.2搬运机器人离线编程仿真方法2.2.1配置I/O单元参数名称设定值NameBoard10TypeofUnitd652ConnectedtoBusDeviceNetDeviceNetAddress10I/O单元Unit参数表2.2.2配置I/0信号参数名称设定值NamedoGripTypeofSignalDigitalOutputAssignedtoDeviceBoard10DeviceMapping0I/0信号参数配置表2.2搬运机器人离线编程仿真方法2.2.3创建工具数据
工具数据tooldata用于描述安装在机器人第六轴上的工具的TCP、质量、重心等参数数据。TCP就是工具的中心点(ToolCenterPoint)。原始TCP点TCP设定原理:(1)首先在机器人工作范围内找一个非常精确的固定点作为参考点。(2)然后在工具上确定一个参考点(最好是工具的中心点)。(3)用手动操作机器人来定义TCP。(4)机器人为通过这四个位置点的位置数据计算求得TCP数据。参数名称设定值robholdtruetransx0y0z123rotq11q20q30q40mass1cogx0y0z60工具数据设定参数表2.2搬运机器人离线编程仿真方法2.2.3创建工具数据2.2.4创建工件坐标系2.2搬运机器人离线编程仿真方法在本工作站中需设定两个工件坐标系。分别是左右两个托盘。工件坐标的设定采用三点法进行,即设定工件坐标系的原点、x延展方向和y延展方向,根据右手定则z方向即可确定。所秉持的原则的原则是工件坐标系的x和y的延展方向尽量和大地坐标的延展方向一致。2.3知识拓展2.3.1关节运动范围的设定
在工业机器人的运动过程中,为了保证安全性,需要对机器人关轴的运动范围进行设定。2.3.2奇异点当机器人的关节轴4和轴6角度相同而轴5的角度为零时,机器人处于奇异点,设计夹具及荼站布局时应尽量避免机器人运动轨迹进入奇异点,在编程时也可以使用SingArea指令让机器人自动规划当前运动轨迹经过奇异点时的插补方式。例如:SingArea\Wrist;!允许轻微改变工具的姿态,以便通过奇异点SingArea\Off; !关闭自动插补工业机器人离线编程与仿真
工程技术分院
第三章码垛机器人的离线编程与仿真
1.学会用软件进行码垛常用I/O配置;2.学会使用软件离线进行码垛数据的创建;3.学会运用软件进行码垛程序的编写;4.学会码垛节拍优化技巧。【学习目标】【任务描述】本任务是利用机器人完成码垛任务,整个工作站由产品输入线和产品输出位组成,要求将产品输入线中的产品码到产品输出位置。主要完成以下工作任务:1.I/O板卡设置;2.I/O信号设置;3.程序数据的创建;4.机器人程序的编制和调试;5.目标点的示教。3.1知识链接3.1.1轴配置监控指令1.指令ConfL与ConfJConfL用于指定机器人在线性运动及圆弧运动过程中是否严格遵循程序中已设定的轴配置参数,影响的是Movel。ConfJ为关节线性运动过程中的轴监控开关,影响的是MoveJ。2.例如:目标点P20中,数据[1,0,1,0]是其轴配置数据。ConfL/Off;MoveLp20,v100,fine,tool0;3.1知识链接3.1.2动作触发指令动作触发指令TriggL是在线性运动过程中,在指定的位置触发事件,如置位输出信号、激活中断等。动作触发指令可以定义多种类型的触发事件,如触发信号TriggI/O、触发装置动作TriggEquip、以及触发中断TriggInt。如果触发距离的参考点是起点,则在触发距离后面添加变量\Start,例如:TriggEquipGripOpen,10\Start,0.1\DOp:=doGripOn,1;3.1知识链接3.1.2动作触发指令起点TriggLp1,v500,gunon,z50,gun1;终点10mm在此位置处GripOpen中涉及的装置动作VARtriggdataGripOpenTriggEquipGripOpen,10,0.1\DOp:=doGripOn,1;!Trigglp1,v500,GripOpen,z50,tGripper;!3.1.3中断程序3.1知识链接例如:VARintnumintnol;!定义中断数据intnolIDeleteintnol;!取消当前中断符intnol的连接,预防误触发CONNECTintnolWITHtTrap;!将中断符与中断程序tTrap连接ISignalDIdi1,1,intnol;!定义触发条件,即当数字输入信号di1为1时,触发该中断程序TRAPtTrapreg1:=reg1+1;ENDTRAP3.1.4复杂数据3.1知识链接P0:=[[0,0,0],[1,0,0,0],[0,0,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]];说明:目标点数据里面包含了四组数据,从前往后依次为TCP位置数据[0,0,0](trans)、TCP姿态数据[1,0,0,0](rot)、轴配置参数[0,0,0,0](robconf)和外部思数据[9E9,9E9,9E9,9E9,9E9,9E9](extax)。3.2码垛机器人离线编程仿真方法3.2.1配置I/O单元参数名称设定值NameBoard10TypeofUnitD652ConnectedtoBusDeviceNet1DeviceNetAddress10
I/O单元参数设置表3.2码垛机器人离线编程仿真方法3.2.2配置I/0信号序号NameTypeof
signalAssignedtounitUnitMappingI/O注释1di00_BoxInPos_RDigitalInputBoard101输入生产线产品到位信号2di03_PalletPos_RDigitalInputBoard103码盘到位信号3di07_MotorOnDigitalInputBoard107电机上电4di08_StartDigitalInputBoard108程序开始5di09_StopDigitalInputBoard109程序停止6di10_StartAtMainDigitalInputBoard1010执行主程序7di11_EstopResetDigitalInputBoard1011急停复位8do00_ClampActDigitalOutputBoard100控制夹板9do01_HooKActDigitalOutputBoard101控制钩爪10do03_PalletFull_RDigitalOutputBoard103码盘满载信号11do05_AutoOnDigitalOutputBoard105电动机上电12do06_EstopDigitalOutputBoard106急停状态13do07_CycleOnDigitalOutputBoard107运行状态14do08_ErrorDigitalOutputBoard108程序报错I/0信号参数配置表3.2码垛机器人离线编程仿真方法2.2.3配置系统输入/输出系统输入/输出信号配置表序号TypeSignalnameAction/StatusArgument注释1SystemInputdi07_MotorOnMotorson无电动机上电2SystemInputdi08_StartStartContinuous程序开始执行3SystemInputdi09_StopStop无程序停止执行4SystemInputdi10_tartAtMainStartatMainContinuous从主程序开始执行5SystemInputdi11_EstopResetResetEmergencystop无急停复位6SystemOutputdo05_AutoOnAutoOn无电动机上电状态7SystemOutputdo06_EstopEmergencystop无急停状态8SystemOutputdo07_CycleOnCycleOn无程序正在运行9SystemOutputdo08_ErrorExecutionerrorT_ROB1程序报错3.2码垛机器人离线编程仿真方法3.2.4创建工具数据工具数据表参数名称设定值robholdtruetransx0y0z527rotq11q20q30q40mass20cogx0y0z150其余参数的设定选择默认3.2码垛机器人离线编程仿真方法3.2.5创建工件坐标系在本任务中需设定工件坐标系。工件坐标的设定仍采用三点法进行。3.2.6创建载荷数据载荷数据参数表参数名称设定值mass20cogx0y0z227其余参数的设定选择默认3.3知识拓展3.3.1数组例如定义一个二维数组:numnum1{3,4}:=[[1,2,3,4][2,3,4,5][3,4,5,6]];!定义二维数组num1VARnum2:=num1{3,4};!num2被赋值为数组num1的{3,4}的值即6。对于一些常见的码垛,就可以利用数组来存放各产品的摆放位置数据,在放置程序中直接调用该数据即可。例如图3-2所示,摆放5个位置,产品600X400。3.3知识拓展3.3.1数组PERSnumnPosition{5,4}:=[[0,0,0,0],[600,0,0,0],[-100,500,0,-90],[300,500,0,-90],[700,500,0,-90]];PERSnumnCount:=1;PROCrPlace()………MoveLRelTool(p1,nPosition{nCount,1},nPosition{nCount,2},nPosition{nCount,3}\Rz:=nPosition{nCount,4}),V1000,fine,tGripper\WobjPallet_L;……ENDPROC3.3知识拓展3.3.2带参数的例行程序PROCrDraw_Square(robotargetPstart,numnLong)Movel
pStart,v100,fine,tool1;MovelOffs(pStart,nLong,0,0),v100,fine,tool1;MovelOffs(pStart,nLong,-nLong,0),v100,fine,tool1;MovelOffs(pStart,0,-nLong,0),v100,fine,tool1;Movel
pStart,v100,fine,tool1;ENDPROC
调用(机器人走以P10为起点,边长为200的正方形)PROCrDraw()rDraw_SquareP10,200;ENDPROC例:编制一个画正方形的带参数的通用程序,在这个例行程序中需要两个参数,一个正方形的顶点,一个是正方形的边长。3.3.3码垛节拍优化3.3知识拓展1.整个机器人的码垛系统布局要合理,使取件点和放件点尽可能近,优化夹具,减轻重量,减少夹具开合时间;尽可能缩短机器人空运行的时间,在保证安全的前提下,减少过渡点;合理运用MoveJ指令代替MoveL指令。2.程序中尽量少使用Waittime等待时间指令,为了保证工件可在夹具上添加反馈信号,利用WaitDI指令,当等待条件满足则立即执行。3.善于运用Trigg触发指令,使机器人在位置触发事件,这样能在机器人速度不衰减的情况下在准确执行动作。工业机器人离线编程与仿真
工程技术分院
第四章激光切割工业机器人的离线编程与仿真
1.创建工件机器人轨迹曲线;2.生成工件的机器人轨迹内曲线路径;3.调整示教机器人的目标点;4.正确使用机器人离线编程辅助工具【学习目标】【任务描述】
利用RobotStudio自动路径功能自动生成如图4-1所示的机器人激光切割的运行轨迹路径(曲面上的圆形轨迹)。离线轨迹编程的关键点在离线轨迹编程中,最重要的三步是图形曲线、目标点的调整、轴配置参数的调整。1.图形曲线(1)曲线可以先创建曲线再生成曲线,还可以去捕捉3D模型的边缘进行轨迹的创建。在创建自动路径时,可以用鼠标去捕捉边缘,从而生成机器人运动轨迹。(2)一些复杂的3D模型,在导入RobotStudio中后,某些特征会丢失,所以导入之前先绘制相关曲线,在导入后直接将已有的曲线直接转化成机器人轨迹(本例)。(3)在生成轨迹时,需要根据实际情况,选取合适的近似值参并调整参数值大小。离线轨迹编程的关键点2.目标点调整有时单用一种方法很难一次将目标点调整到位,尤其对工具姿态要求很
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度企业年会短视频拍摄制作合同
- 二零二五年度户外广告发布合作合同
- 二零二五年度草原雇佣放羊与生态补偿协议
- 二零二五年度资质借用及资源共享协议
- 2025年度施工安全协议个人责任履行细则
- 二零二五年度房地产项目销售代理与节能环保技术合作合同
- 二零二五年度休闲度假村包租合作合同
- 二零二五年度医疗行业劳动合同管理规范与医护人员保障措施
- 挂靠证件合同模板(2025年度)适用于文化创意产业
- 二零二五年度电子商务借款居间服务合同协议
- 社会救助公共基础知识题库及答案
- 《论文所用框架图》课件
- 人教版三年级下册说课标、说教材
- 2022版《义务教育科学课程标准》试题及答案
- 《民法典》背景下违约精神损害赔偿制度适用问题
- 松下机器人操作手册
- 数字电路逻辑设计(第3版)PPT全套完整教学课件
- 境外道路货物运输应急预案
- 管理学-北京师范大学中国大学mooc课后章节答案期末考试题库2023年
- 2023年司法鉴定程序通则
- 网店运营PPT全套完整教学课件
评论
0/150
提交评论