23机器人码垛现场编程

上传人:简****9 文档编号:101765687 上传时间:2019-09-29 格式:PDF 页数:22 大小:2.88MB
返回 下载 相关 举报
23机器人码垛现场编程_第1页
第1页 / 共22页
23机器人码垛现场编程_第2页
第2页 / 共22页
23机器人码垛现场编程_第3页
第3页 / 共22页
23机器人码垛现场编程_第4页
第4页 / 共22页
23机器人码垛现场编程_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《23机器人码垛现场编程》由会员分享,可在线阅读,更多相关《23机器人码垛现场编程(22页珍藏版)》请在金锄头文库上搜索。

1、工业机器人码垛现场编程工业机器人码垛现场编程 主讲:王晓勇 学习目标 学会码垛目标点示教 学会常用码垛程序编写 目录 01 02 码垛指令编程 码垛现场程序案例 1 码垛指令编程 当关闭轴配置监控后,机器人在运动过程中采取最接近当 前轴配置数据的配置到达指定目标点。 一、码垛指令编程 运动控制指令-ConfL 应用: 对机器人运行姿态进行限制与调整,程序运行时, 使机器人运行 姿态得到控制。系统默认值为 ConfLon。 实例: ConfLon; ConfLoff; 限制: 机器人冷启动,新程序载入与程序重置后,系统自动 设置为默认值。 备注 一、码垛指令编程 运动控制指令-ClkReset

2、实例 ClkReset clock; Clock:时钟名称。( Clock ) 应用:将机器人相应的时钟复位, 常用于记录循环时间或机器人跟 踪输送链。 ClkReset clock1; ClkStart Clock1; RunCycle; ClkStop Clock1; nCycleTime:=ClkRead(clock1); TPWrite “Last Cycle Time: “Num:=nCycleTime 一、码垛指令编程 运动触发指令- TriggIO TriggIO TriggData,Distance Start|TimeDop|Gop| Aop|ProcID,SetValue

3、DODelay; TriggData: 触发变量名称。(triggdata) Distance: 触发距离mm。(unm) Start: 触发起始开关。(switch) Time: 时间触发开关。(switch) Dop: 时间数字输出。(signaldo) 一、码垛指令编程 运动触发指令- TriggIO TriggIO TriggData,Distance Start|TimeDop|Gop| Aop|ProcID,SetValue DODelay; Gop : 触发组合输出。(signalgo) Aop : 触发模拟输出。( signalao) ProcID : 过程处理触发。(num)

4、 SetValue : 相应信号值。(num) DODelay : 数字输出延迟。 (num) 一、码垛指令编程 运动触发指令- TriggIO 应用 机器人可以在运动时通过触发指令精确的输出相应 信号,当前指令用于定义触发性 质,此指令必须与 其他触发指令TriggJ.TriggL.或TriggC同时使用才 有意义,同机 器人指令TriggEquip比较,多了时间 控制功能,少了外部设备触发延迟功能,通常 用于 喷涂.涂胶等行业,使用参变量Start,表示以运 动起始点触发基准点,默认为 运动终止点;使用参 变量Time,以时间来控制触发,允许最大时间为 0.5s,详见限 制;参变量Proc

5、ID,正常情况下用 户无法自行使用,此参变量用于IPM过程处理。 一、码垛指令编程 运动触发指令- TriggIO S t a r t p o i n t Triggl p1,v500,gunon,z50,gunl; 10mm End point p1 The output signal guu is set when the TCP is here 实例 VAR triggdata gunon; TriggIO gunon,10Dop:=gun,1; TriggL p1,v500,gunon,z50,gun1; 一、码垛指令编程 数据的应用 在定义程序数据时,可以将同种类型、同种用途的数值存

6、放在同一数据中, 当调用该数据时需要写明索引号来指定调用的是该数据中的哪个数值,这就是 所谓的数值。在RAPID中,可以定义一维数值、二维数组以及三维数组。 VAR num num13,4:= 1,2,3,4 5,6,7,8 9,10,11,12 ; !定义二维数组num1 Num2:=num13,2; !num2被赋值为10 例如,一维数组: VAR num num13:=5,7,9; !定义一维数组num1 Num2:=num12; !num2被赋值为7 例如,二维数组: 一、码垛指令编程 中断程序的应用: 在程序执行过程时,如果发生需要紧急处理的情况,这时就要中断当前程序的 执行,马上跳

7、到专门的程序中对紧急情况进行相应处理,处理结束后返回中断的地 方继续往下执行程序。专门用来处理紧急情况的专门程序称作中断程序(TRAP)。 ISignalDI di1,1,intnol; !定义触发条件,即当前数字输入 信号di1为1时,触发该中断程序 TRAP tTrap Reg1:=Reg1+1; ENDTRAP 例如,中断程序: VAR intnum intnol; !定义中断数据intnol Idelete intnol; !取消当前中断符intnol的连接, 预防误触发 CONNECT intnol WITH tTrap; !将中断符与中断程序tTrap连接 一、码垛指令编程 复杂程

8、序数据赋值: 多数类型的程序 数据均是组合型数 据,即里面包含了 多项数值或字符串。 可以对其中的任何 一项参数进行赋值。 例如常见目标点数据: PERS robtarget p10:=0,0,0,1,0,0,0,0,0,0,0,9e9, 9e9, 9e9, 9e9, 9e9, 9e9; PERS robtarget p20:=100,0,0,0,0,1,0,1,0,1,0,9e9, 9e9, 9e9, 9e9, 9e9, 9e9; 目标点数据里面包含了四组数据,从前往后依次为TCP位置数据,TCP姿态 数据,轴配置数据,外部轴数据,可以分别对该数据的各项数值进行操作 P10.trans.x:

9、=p20.trans.x+50; P10.trans.y:=p20.trans.y+50; P10.trans.z:=p20.trans.z+50; P10.rot:=p20.rot; P10.robconf:=p20.robconf; 二、码垛现场程序案例: MODULE MainMoudle PERS tooldata tGripper:=TRUE,0,0,160,1,0,0,0,1,1,0,1,1,0,0,0,0,0,0; PERS robtarget pHome:=1518.35057503,0,877.822906024,0,0,1,0,0,0,0,0,9E9,9E9,9E9,9E9

10、,9E9,9E9; PERS robtarget pPick:=1518.360445356,- 11.456071507,523.888125175,0,0.000000009,1,0,-1,0,-1,0,9E9,9E9,9E9,9E9,9E9,9E9; PERS robtarget pPlaceBase:=- 285.531972806,1859.243453208,99.429150272,0,0.000000358,1,0,1,0,1,0,9E9,9E9,9E9, 9E9,9E9,9E9; PERS robtarget pPlace:=314.468,1859.24,99.4292,0

11、,3.58E- 07,1,0,1,0,1,0,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09; PERS robtarget pActualPos:=1518.36,-11.4561,877.823,1.81232E-06,-1.16415E-08,- 1,-1.36561E-08,-1,0,-1,0,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09; PERS bool bPalletFull:=FALSE; PERS num nCount:=1; 二、码垛现场程序案例: PROC Main() rInitAll; WHILE TRUE DO I

12、F bPalletFull=FALSE THEN rPick; rPlace; ELSE WaitTime 0.3; ENDIF ENDWHILE ENDPROC 二、码垛现场程序案例: PROC rInitAll() pActualPos:=CRobT(tool:=tGripper); pActualPos.trans.z:=pHome.trans.z; MoveL pActualPos,v500,fine,tGripperWObj:=wobj0; MoveJ pHome,v500,fine,tGripperWObj:=wobj0; bPalletFull:=FALSE; nCount:=1

13、; Reset doGripper; ENDPROC 二、码垛现场程序案例: PROC rPick() MoveJ Offs(pPick,0,0,300),v2000,z50,tGripperWObj:=wobj0; WaitDI diBoxInPos,1; MoveL pPick,v500,fine,tGripperWObj:=wobj0; Set doGripper; WaitDI diVacuumOK,1; MoveL Offs(pPick,0,0,300),v500,z50,tGripperWObj:=wobj0; ENDPROC 二、码垛现场程序案例: PROC rPlace() r

14、Position; MoveJ Offs(pPlace,0,0,300),v2000,z50,tGripperWObj:=wobj0; MoveL pPlace,v500,fine,tGripperWObj:=wobj0; Reset doGripper; WaitDI diVacuumOK,0; MoveL Offs(pPlace,0,0,300),v500,z50,tGripperWObj:=wobj0; rPlaceRD; ENDPROC 二、码垛现场程序案例: PROC rPlaceRD() Incr nCount; IF nCount=11 THEN nCount:=1; bPall

15、etFull:=TRUE; MoveJ pHome,v1000,fine,tGripperWObj:=wobj0; ENDIF ENDPROC 二、码垛现场程序案例: PROC rPosition() TEST nCount CASE 1: pPlace:=RelTool(pPlaceBase,0,0,0Rz:=0); CASE 2: pPlace:=RelTool(pPlaceBase,- 600,0,0Rz:=0); CASE 3: pPlace:=RelTool(pPlaceBase,100,- 500,0Rz:=90); CASE 4: pPlace:=RelTool(pPlaceBase,-300,- 500,0Rz:=90); CASE 5: pPlace:=RelTool(pPlaceBase,-700,- 500,0Rz:=90); CASE 6: pPlace:=RelTool(pPlaceBase,100,-100,- 250Rz:=90); CASE 7: pPlace:=RelTool(pPlaceBase,-300,-100,- 250Rz:=90); CASE 8: pPl

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号