Pick and Place Robot (KR 16-2 KS)
Pick and Place Robot (KR 16-2 KS)
WAIT SEC 2
$OUT[34]= =FALSE
END
DEF PICK_CUPS
INI
LIN_REL {-Z 300}
WAIT SEC 2
$OUT[33]= =TRUE
LIN_REL {Z 300}
END
DEF PLACE_CUPS
INI
LIN_REL {-Z ROW*400}
WAIT SEC 2
$OUT[33]= =FALSE
LIN_REL {Z ROW*400}
END
FOR ROW = 1 TO 4
FOR POST = 1 TO 12
WAIT FOR $IN[33]==TRUE ;Get signal ON from PLC
WAIT SEC 2
PTP P1 CONT Vel=0.2m/s PDAT1 Tool[1] Base[1]
PICK_CARTON()
PTP P2 CONT Vel=0.2m/s CPDAT1 Tool[1] Base[1]
IF ROW=1
IF POST>=1 AND POST<=3 THEN
LIN_REL {X 560}
LIN_REL {Y 735}
LIN_REL {-X HOR_DIS}
HOR_DIS = HOR_DIS + 280
IF POST=3 THEN
HOR_DIS=0
ENDIF
ENDIF
IF POST>=4 AND POST<=6 THEN
LIN_REL {X 560}
LIN_REL {Y 630}
LIN_REL {-X HOR_DIS}
HORI_DIS = HOR_DIS + 280
IF POST=6 THEN
HOR_DIS=0
ENDIF
ENDIF
IF POST>=7 AND POST<=9 THEN
LIN_REL {X 560}
LIN_REL {Y 420}
LIN_REL {-X HOR_DIS}
HOR_DIS = HOR_DIS + 280
IF POST=9 THEN
HOR_DIS=0
ENDIF
ENDIF
IF POST>=10 AND POST<=12 THEN
LIN_REL {X 560}
LIN_REL {Y 210}
LIN_REL {-X HORI_DIS}
HOR_DIS = HOR_DIS + 280
IF POST=12 THEN
HOR_DIS=0
ENDIF
ENDIF
PLACE_CARTON()
PTP {A4 0}
LIN_REL {z 300}
END
DEF PLACE_CARTON()
INI
VER_DIS = ROW*500
LIN_REL {-z VER_DIS}
WAIT SEC 2
$OUT[34]==False
LIN_REL {z VER_DIS}
END