- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
工业机器人离线编程;课程主要内容;学习情境2:数控系统显示画面及操作;学习目标;任务描述;4.1知识储备——高级指令;示例:
CONSTrobtargetp10:=*.*.*].[**,**],[1,0,1,0],[9E9,9E9,9E9,9E9,9E9,9E9]];!目标点p10中,数据[1,0,1,0]就是此目标点的轴配置数据
ConfL\Off;
MoveLp10,v1000,fine,tool0;
在某些应用场合,如离线编程创建目标点或手动示教相邻两目标点间轴配置数据相差较大时,在机器人运动过程中容易出现报警“轴配置错误”而造成停机。此种情况下,若对轴配置要求较高,则一般通过添加中间过渡点;若对轴配置要求不高,则可通过指令ConfL\Off关闭轴监控,使机器人自动匹配可行的轴配置来到达指定目标点。;ConfJ用法与ConfL相同,只不过前者为关节线性运动过程中的轴监控开关,影响的是MoveJ;而后者为线性运动过程中的轴监控开关,影响的是MoveL;在搬运过程中,为了提高节拍时间,在控制吸盘夹具动作过程中,吸取物品时需要提前打开真空,在放置物品时也需要提前释放真空。为了能够准确地触发吸盘夹具动作,通常采用动作触发指令TiggL来实现控制。
动作触发指令TriggL是在线性运动过程中,在指定的位置触发事件,如置位输出信号和激活中断等。动作触发指令可以定义多种类型的触发事件,如触发信号Tiggl/O、触发装置动作TriggEquip,以及触发中断TiggInt。;VARtriggdataGripOpen;
TriggEquipGripOpen,10,0.1\DOp:=doGripOn,1;
TriggLpl,v500,GripOpen,z50,tGripper;
如果触发距离的参考点是起点,则在触发距离后面添加变量\Start,例如:
TriggEquipGripOpen,10Start,0.1\DOp:=doGripOn,l;;在RAPID程序执行过程中,如果发生需要紧急处理的情况,这时就要求工业机器人中断当前正在执行的程序,程序指针PP马上跳转到专门的程序中对紧急的情况进行相应处理,处理结束后程序指针PP返回原来被中断的地方,继续往下执行程序。专门用来处理紧急情况的专门程序,被称为中断程序(TRAP)。
中断程序经常用于出错处理、外部信号响应等实时响应要求高的场合。;示例:
PROCrIntall()!用于初始化的例行程序
VARintnumintnol;!定义中断数据intnol
IDeleteintnol;!取消当前中断符intnol的连接,预防误触发
CONNECTintnolWITHtTrap;!将中断符与中断程序tTrap连接
ISignalDIdil,1,intnol;!定义触发条件,即当数字输人信号dil为1时,触发该中断程序
ENDPROC
TRAPtTrap!中断程序
regl:=reg1+1;
ENDTRAP
;在ABB工业机器人的RAPID编程中的功能(FUNCTION)可以看作带返回值的例行程序,并可以将其封装成为一个指定功能的模块,使用时值需要输入指定类型的数据就可以返回一个值存放到对应的程序数据。;示例:
FUNCboolCurrentPos(robtargetComparePos,INOUTtooldataTCP)
!检测目标点功能程序,带有两个参数,比较目标点和所使用的工具数据
VARnumCounter:=0;!定义数字型数据Counter
VARrobtargetActualPos;!定义目标点数据ActualPos
ActualPos:=CRobT(\Tool:=tGripper\WObj:=wobj0);
!利用CRobT功能读取当前机器人目标位置并赋值给ActualPos
IFActualPos.trans.xComparePos.trans.x-25ANDActualPos.trans.x
ComparePos.trans.x+25Counter:=Counter+1;
IFActualPos.trans.yComparePos.trans.y-25ANDActualPos.trans.y
ComparePos.trans.y+25Counter:=Counter+1;;IFActualPos.trans.zComparePos.trans.z-25ANDActualPos.trans.z
ComparePos.trans.z+25Counter:=
文档评论(0)