当前位置:文档之家› ABB搬运机器人培训说明书

ABB搬运机器人培训说明书

MODULE MainModuleTASK PERS tooldataTCP_Spindle:=[TRUE,[[291.33,167.604,132.752],[1,0,0,0]],[0.1,[1,1,1],[1,0,0,0],0,0,0]];PERS pos ActualPos:=[9E+09,9E+09,9E+09];PERS pos ActualPos2:=[9E+09,9E+09,9E+09];PERS pos HomePos:=[9E+09,9E+09,9E+09];PERS pos ActualPosTemp:=[9E+09,9E+09,9E+09];PERS pos p1010Pos:=[9E+09,9E+09,9E+09];CONST robtarget pHome:=[[795.85,6.37,1648.16],[0.00603037,0.708691,-0.705406,0.0111058],[0,-1,-1,0],[9E+09,9E+09,9E +09,9E+09,9E+09,9E+09]];CONST robtargetpActualPos:=[[482.2,2.35,1142.99],[0.011582,0.00662,-0.999867,0.009436],[0,0,-1,0],[9E+09,9E +09,9E+09,9E+09,9E+09,9E+09]];CONST robtargetphome1:=[[1058.60,81.29,1173.72],[0.707289,0.032109,0.705328,-0.0349896],[-1,0,-1,1],[9E+09 ,9E+09,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp1010:=[[826.29,1139.54,986.43],[0.510404,-0.498693,0.483949,0.506544],[0,1,-2,0],[9E+09,9E +09,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp1030:=[[826.30,1139.53,981.11],[0.510403,-0.498694,0.483955,0.506537],[0,1,-2,0],[9E+09,9E +09,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp1050:=[[826.25,653.95,981.08],[0.51037,-0.498771,0.483993,0.506459],[0,1,-2,0],[9E+09,9E+0 9,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp1070:=[[9E+09,9E+09,9E+09],[0.651074,-0.278836,0.649575,0.276414],[0,0,-1,1],[9E+09,9E+0 9,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp1090:=[[9E+09,9E+09,9E+09],[0.651074,-0.278836,0.649575,0.276414],[0,0,-1,1],[9E+09,9E+0 9,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp1110:=[[500.55,-1594.16,1287.39],[0.00607319,0.708728,-0.705367,0.0111581],[-1,-1,-2,0],[9E +09,9E+09,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp1130:=[[500.58,-1614.22,1648.18],[0.00603701,0.708694,-0.705403,0.0111083],[-1,-1,-2,0],[9E +09,9E+09,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp2010:=[[9E+09,9E+09,9E+09],[0.651074,-0.278836,0.649575,0.276414],[0,0,-1,1],[9E+09,9E+0 9,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp2030:=[[9E+09,9E+09,9E+09],[0.651074,-0.278836,0.649575,0.276414],[0,0,-1,1],[9E+09,9E+0 9,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp2110:=[[9E+09,9E+09,9E+09],[0.651074,-0.278836,0.649575,0.276414],[0,0,-1,1],[9E+09,9E+0 9,9E+09,9E+09,9E+09,9E+09]];CONST robtargetp2130:=[[9E+09,9E+09,9E+09],[0.651074,-0.278836,0.649575,0.276414],[0,0,-1,1],[9E+09,9E+0 9,9E+09,9E+09,9E+09,9E+09]];PROC main()ClearI_O;IF CurrentPos(pHome,tool0) = TRUE THENSet do_pHome;ENDIFIF di_auto=1 THENAutoMoveHome;ENDIF!Program 1 类型1 搬运IF di_ProgBit=1 and di_auto=1 and di_Start=1 THENAutoroutine1;ENDIF!Program 2 类型2搬运IF di_ProgBit=2 and di_auto=1 and di_Start=1 THENAutoroutine2;ENDIF!Auto Return Home 自动回原位程序,已经取消。

!IF di_Robt_At_Phome=0 and di_manual=1 and di_Returnhome=1 and di_Closed=1 anddi_Type1_Plug=1 then!Auto_Return_Home;!Endif!类型1原位放件,原位→总装托盘上,原位→测试托盘上。

IF di_manual=1 and di_Tool_Check=1 and di_Robt_At_Phome=1 and di_Type1_TAPut=1 thenAuto_Put_Type1_TA;EndifIF di_manual=1 and di_Tool_Check=1 and di_Robt_At_Phome=1 and di_Type1_HTPut=1 thenAuto_Put_Type1_HT;EndifENDPROCPROC Autoroutine1() !自动循环模式下工件类型1搬运If di_TA_Ready=1 and di_HT_Ready=1 and di_Tool_Check=0 then !判断条件,总装准备就绪,测试准备就绪,机器人夹爪上无件。

Set do_Type1_Working;Type1_Carry; !调用搬运程序Reset do_Type1_Working;Waittime 0.5;endifENDPROCPROC Autoroutine2() !自动模式下工件类型2搬运Set do_Type2_Working;Type2_Carry;MoveJ pHome, v10, fine, tool0;Reset do_Type2_Working;Waittime 0.5;ENDPROCPROC Type1_Carry() !类型1搬运程序Reset do_pHome; !复位PHome 信号WaitDI di_Tool_Check, 0; !等待PLC→“ABB机器人夹具上无件”MoveJ Offs(p1030,0,-500,0), v50, z0, tool0; !圆弧插补以速度V50MM/S,Z0为精度半径到达P1030 Y轴偏移-500mm点。

WaitDI di_Open, 1; !等待PLC→ABB “夹具松开到位”信号WaitDI di_Type1_Pull_Pin, 1;!等待PLC→ABB “1.3类型拔销到位”信号MoveL p1030, v50, fine, tool0; !直线插补的运行方式走到P1030点位。

MoveL p1010, v50, fine, tool0;!直线插补的运行方式走到P1010点位。

Set do_TA_Type1_Pos_Reache; !给PLC发送“总装线类型1取件位”到位。

WaitDI di_Closed, 1; !等待夹具夹紧到位。

WaitDI di_Type1_Plug, 1; !等待1.3插销气缸到位Reset do_TA_Type1_Pos_Reache; !复位“总装线类型1取件位”到位信号。

Waittime 0.5;MoveL Offs(p1010,0,0,300), v50, z0, tool0; !直线插补的运行方式移动到P1010 Z轴方向+300点位,也就是取件位的正上方位置。

!take the speed changing box to phomeMoveJ phome, v50, z20, tool0; !回原位点,此时已经取件完成,再在去放件位。

MoveL OFFS(p1110,0,0,200), v50, z0, tool0; !去放件位P1110 Z轴方向+200点位,也就是在放件位的上方MoveL p1110, v50, fine, tool0; !直线运行到P1110点,也就是放件位Set do_HT_Type1_Pos_Reache; !置位ABB→PLC 机器人到达“测试线类型1放件位”到达WaitDI di_Open, 1; !等待夹具松开到位。

WaitDI di_Type1_Pull_Pin, 1; !等待夹具1.3拔销到位Reset do_HT_Type1_Pos_Reache; !复位ABB→PLC 机器人到达“测试线类型1放件位”到达Waittime 0.5;MoveL OFFS(p1110,0,-20,0), v50, z0, tool0; !直线走到P1110 Y轴-20点位。

此处是为了防止夹具挂到工件,将夹具平移一下。

相关主题