Professional Documents
Culture Documents
WHILE TRUE DO
SetDO Ready,1;
IF P1Avil = 1 THEN
SetDO Ready,0;
JengaBlock1SortPath;
WHILE P1Avil = 1 DO
ENDWHILE
ENDIF
IF P2Avil = 1 THEN
SetDO Ready,0;
JengaBlock2SortPath;
WHILE P2Avil = 1 DO
ENDWHILE
ENDIF
IF P3Avil = 1 THEN
SetDO Ready,0;
JengaBlock3SortPath;
WHILE P3Avil = 1 DO
ENDWHILE
ENDIF
ENDWHILE
ENDPROC
PROC Letgo()
SetDO Vacuum,0;
SetDO Release,1;
WaitDI VacSense,1;
SetDO Release,0;
ENDPROC
PROC Pickup()
SetDO Vacuum,1;
SetDO Release,0;
WaitDI VacSense,0;
SetDO Release,0;
ENDPROC
PROC JengaBlock1SortPath()
MoveL Home_pose,v200,fine,Hull_EndEffector\WObj:=Table;
MoveL PickupBlockTarget,v200,fine,Hull_EndEffector\WObj:=Table;
Pickup;
MoveL Bin_Target_10,v200,fine,Hull_EndEffector\WObj:=Table;
Letgo;
Page 1 of 2
MoveL Home_pose,v200,fine,Hull_EndEffector\WObj:=Table;
ENDPROC
PROC JengaBlock2SortPath()
MoveL Home_pose,v200,fine,Hull_EndEffector\WObj:=Table;
MoveL PickupBlockTarget,v200,fine,Hull_EndEffector\WObj:=Table;
Pickup;
MoveL Bin_Target_20,v200,fine,Hull_EndEffector\WObj:=Table;
Letgo;
MoveL Home_pose,v200,fine,Hull_EndEffector\WObj:=Table;
ENDPROC
PROC JengaBlock3SortPath()
MoveL Home_pose,v200,fine,Hull_EndEffector\WObj:=Table;
MoveL PickupBlockTarget,v200,fine,Hull_EndEffector\WObj:=Table;
Pickup;
MoveL Bin_Target_30,v200,fine,Hull_EndEffector\WObj:=Table;
Letgo;
MoveL Home_pose,v200,fine,Hull_EndEffector\WObj:=Table;
ENDPROC
ENDMODULE
Page 2 of 2