代码
'/***************************机器初始化*******************************/
*ALL_INIT: '复位(信号,变量及位置初始化)
'复位信号
SPEED 50
RESET DO2(7,1,2,3,0)
DO(27)=0
'工作参数
SPEED_H!=100
SPEED_M!=80
S_L!=10
CONTPLS 10000
SAFE_H!=10
'定义变量
ASTEP!=0 '机器人运行步骤
YANGJI!=0
YINJI!=0
GEZHI!=0
ZHU!=0
'回到原点
P1000=WHRXY '当前点
LOC3(P1000)=0
MOVE L,P1000
WAIT ARM
IF LOC1(P1000)>330 AND LOC2(P1000)>-10 THEN ''/阴极区域回原点/MOVE L,YIN_PUT_GUODU_1,VEL=SPEED_H! '阴极过渡位MOVE L,YANG_PUT_GUODU_4,VEL=SPEED_H! MOVE L,YANG_PUT_GUODU_3,VEL=SPEED_H!
ELSEIF LOC1(P1000)<-196 AND LOC1(P1000)>-436 AND LOC2(P1000)>600 THEN ''/原点区域回原点/MOVE L,HOME,VEL=SPEED_H! '阳极过渡位
ELSEIF LOC1(P1000)<330 AND LOC1(P1000)>=-196 AND LOC2(P1000)>600 THEN ''/原点区域回原点/IF LOC4(P1000)<-150 THENMOVE P,G_Z_PUT_H,S=S_L!MOVE L,YANG_PUT_GUODU_4,VEL=SPEED_H!MOVE L,YANG_PUT_GUODU_3,VEL=SPEED_H!ELSEMOVE L,YANG_PUT_GUODU_3,VEL=SPEED_H!ENDIF
ELSEIF LOC1(P1000)<-436 AND LOC2(P1000)>20 THEN ''/阳极区域回原点/IF LOC2(P1000)<433 THENMOVE L,YANG_PUT_GUODU_1,VEL=SPEED_H! '阳极过渡位MOVE L,YANG_PUT_GUODU_2,VEL=SPEED_H!ELSEMOVE L,YANG_PUT_GUODU_2,VEL=SPEED_H!ENDIF
ENDIF
MOVE L,HOME,VEL=SPEED_H! ''/吸盘有料抛料/
WAIT ARM
IF DI(25)=1 THENBASE_HIGH=YANG_PUT_HBASE_LOW=YANG_PUT_HLOC3(BASE_LOW)=LOC3(BASE_LOW) +20
'---------------------------------------------MOVE L,YANG_PUT_GUODU_3,VEL=SPEED_H!,CONTMOVE L,BASE_LOW,VEL=SPEED_H!,CONTWAIT ARMDO(25)=0 DELAY 200MOVE L,YANG_PUT_H,VEL=SPEED_M!,CONTMOVE L,YANG_PUT_GUODU_3,VEL=SPEED_H!,CONT
ENDIF
IF DI(26)=1 THENBASE_HIGH=G_Z_PUT_HBASE_LOW=G_Z_PUT_HLOC3(BASE_LOW)=LOC3(BASE_LOW)+20
'---------------------------------------------MOVE L,YANG_PUT_GUODU_3,VEL=SPEED_M!MOVE L,YANG_PUT_GUODU_4,VEL=SPEED_M!MOVE P,BASE_LOW,S=S_L!WAIT ARMDO(26)=0 '机器人真空吸 DELAY 200MOVE L,G_Z_PUT_H,VEL=SPEED_M!MOVE P,YANG_PUT_GUODU_4,S=S_L!MOVE L,YANG_PUT_GUODU_3,VEL=SPEED_M!
ENDIF
MOVE L,HOME,VEL=SPEED_H!
DO(27)=1
HOLD
'/***************************机器初始化*******************************/
'/********************************************************************/
'/*****************************主程序*********************************/
'/********************************************************************/
*MAIN:
'/****************************取料流程********************************/
'---------------------------阳极取料流程------------------------------
IF YANGJI!=0 AND DI(20)=1 AND ASTEP!=0 THEN
'---------------------------------------------DO(27)=0 BASE_HIGH=YANG_PICKLOC3(BASE_HIGH)=0BASE_LOW=YANG_PICKLOC3(BASE_LOW)=LOC3(BASE_LOW) - SAFE_H! BASE=YANG_PICKMOVE L,YANG_PUT_GUODU_2,VEL=SPEED_H!,CONTMOVE L,YANG_PUT_GUODU_1,VEL=SPEED_H!,CONTMOVE L,BASE_HIGH,VEL=SPEED_H!,CONTMOVE L,BASE_LOW,VEL=SPEED_H!,CONTMOVE L,BASE,VEL=SPEED_M!WAIT ARMDO(20)=1DO(25)=1 '机器人真空吸 DELAY 300WAIT DI(25)=1WAIT DI(20)=0MOVE L,BASE_LOW,VEL=SPEED_M!,CONTMOVE L,BASE_HIGH,VEL=SPEED_H!,CONTMOVE L,YANG_PUT_GUODU_1,VEL=SPEED_H!,CONTMOVE L,YANG_PUT_GUODU_2,VEL=SPEED_H!,CONTWAIT ARMYANGJI!=1DO(20)=0ASTEP!=1MOVE L,HOME,VEL=SPEED_H!DO(27)=1
ENDIF
'---------------------------阳极取料流程------------------------------
'---------------------------阳极放料流程------------------------------
IF YANGJI!=1 AND DI(23)=1 AND ASTEP!=1 THEN
'---------------------------------------------BASE_HIGH=YANG_PUT_HLOC3(BASE_HIGH)=0BASE_LOW=YANG_PUT_HLOC3(BASE_LOW)=LOC3(BASE_LOW) + SAFE_H! LOC3(YANG_PUT)=29 + (ZHU!*3+1)MOVE L,YANG_PUT_GUODU_3,VEL=SPEED_H!,CONTMOVE L,BASE_HIGH,VEL=SPEED_M!,CONTMOVE L,BASE_LOW,VEL=SPEED_H!,CONTMOVE L,YANG_PUT,VEL=SPEED_M!WAIT ARMDO(25)=0 '机器人真空吸 DELAY 200WAIT DI(25)=0MOVE L,BASE_LOW,VEL=SPEED_M!,CONTMOVE L,BASE_HIGH,VEL=SPEED_H!WAIT ARMDO(23)=1WAIT DI(23)=0DO(23)=0ASTEP!=2YANGJI!=0
ENDIF
'---------------------------阳极放料流程------------------------------
'--------------------------取阴极和隔纸流程------------------------------
IF YINJI!=0 AND GEZHI!=0 AND DI(21)=1 AND DI(22)=1 AND ASTEP!=2 THEN
'---------------------------------------------BASE_HIGH=YIN_PICKLOC3(BASE_HIGH)=0BASE_LOW=YIN_PICKLOC3(BASE_LOW)=LOC3(BASE_LOW) - SAFE_H! BASE=YIN_PICKMOVE L,YIN_PUT_GUODU_1,VEL=SPEED_H!,CONTMOVE L,BASE_HIGH,VEL=SPEED_H!,CONTMOVE L,BASE_LOW,VEL=SPEED_H!,CONTMOVE L,BASE,VEL=SPEED_M!WAIT ARMDO(21)=1DO(22)=1DO(25)=1 '机器人真空吸DO(26)=1 DELAY 200WAIT DI(25)=1WAIT DI(26)=1WAIT DI(21)=0 WAIT DI(22)=0MOVE L,BASE_LOW,VEL=SPEED_M!,CONTMOVE L,BASE_HIGH,VEL=SPEED_H!,CONTWAIT ARMYINJI!=1GEZHI!=1ASTEP!=3DO(21)=0DO(22)=0MOVE L,YIN_PUT_GUODU_1,VEL=SPEED_H!ENDIF
'--------------------------取阴极和隔纸流程------------------------------'---------------------------阴极放料流程------------------------------
IF YINJI!=1 AND DI(23)=1 AND ASTEP!=3 THEN
'---------------------------------------------BASE_HIGH=YIN_PUT_HLOC3(BASE_HIGH)=0LOC3(BASE_LOW)=LOC3(YIN_PUT_H)LOC3(BASE_LOW)=LOC3(BASE_LOW) + SAFE_H! LOC3(YIN_PUT)=29 + (ZHU!*3+2)MOVE L,YANG_PUT_GUODU_4,VEL=SPEED_H!,CONTMOVE L,BASE_HIGH,VEL=SPEED_H!,CONTMOVE L,YIN_PUT,VEL=SPEED_M!WAIT ARMDO(25)=0 '机器人真空吸 DELAY 200WAIT DI(25)=0MOVE L,BASE_HIGH,VEL=SPEED_H!,CONTWAIT ARMYINJI!=0ASTEP!=4
ENDIF
'---------------------------阴极放料流程------------------------------'---------------------------隔纸放料流程------------------------------
IF GEZHI!=1 AND ASTEP!=4 THEN
'---------------------------------------------BASE_HIGH=G_Z_PUT_HLOC3(BASE_HIGH)=0BASE_LOW=G_Z_PUT_HLOC3(BASE_LOW)=LOC3(BASE_LOW) + SAFE_H! LOC3(G_Z_PUT)=29 + (ZHU!*3+3)MOVE P,BASE_HIGH,S=S_L!,CONTMOVE L,G_Z_PUT,VEL=SPEED_M!WAIT ARMDO(26)=0 '机器人真空吸 DELAY 200WAIT DI(26)=0MOVE L,BASE_HIGH,VEL=SPEED_H!,CONTMOVE P,YANG_PUT_GUODU_4,S=S_L!MOVE L,YANG_PUT_GUODU_3,VEL=SPEED_H!MOVE L,HOME,VEL=SPEED_H!WAIT ARMDO(23)=1GEZHI!=0ASTEP!=0WAIT DI(23)=0DO(23)=0ZHU!=ZHU!+1IF ZHU!=11 THENZHU!=0ENDIF
ENDIF
'---------------------------隔纸放料流程------------------------------
GOTO *MAIN:
'/*****************************主程序*********************************/
'/********************************************************************/
本文发布于:2024-02-04 05:45:33,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170700336852752.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |