You are on page 1of 2

PROC rutina4()

VAR num brojac:=0;

VAR num broj_ponavljanja:=0;

VAR num offsX:=0;

VAR num offsY:=0;

VAR num offsZ:=0;

VAR num broj_redova:=0;

VAR num broj_kolona:=0;

VAR num broj_nivoa:=0;

TPErase;

TPWrite "Aplikacija Pick and Place";

TPReadNum broj_ponavljanja,"Molimo Vas unesite broj ponavljanja:";

SetDO DO_CLOSE_GRIPPER,0;

MoveJ Home_position,v1000,fine,Gripper_vakuum;

PulseDO\PLength:=0.5,DO_POKRENI_TRAKU;

FOR brojac FROM 1 TO broj_ponavljanja DO

WaitDI DI_KUTIJA_SPREMNA,1;

SetDO DO_POKRENI_TRAKU,0;

!Uzimanje kutije sa trake

MoveJ offs(Tacka_na_kutiji_10,0,0,300),v1000,z50,Gripper_vakuum\WObj:=wobj0;

MoveL Tacka_na_kutiji_10,v150,fine,Gripper_vakuum;

WaitTime 1;

SetDO DO_CLOSE_GRIPPER,1;

waitDI DI_close_gripper,1;

!Ostavljanje kutije

TEST brojac

CASE 1,2,3:

OffsX:=(brojac-1)*150;

Offsy:=0;

OffsZ:=0;

CASE 4,5,6:
OffsX:=(brojac-4)*150;

OffsY:=125;

OffsZ:=0;

CASE 7,8,9:

OffsX:=(brojac-7)*150;

OffsY:=250;

OffsZ:=0;

CASE 10,11,12:

OffsX:=(brojac-10)*150;

OffsY:=375;

OffsZ:=0;

DEFAULT:

TPWrite "Prekoracen je broj ponavljanja";

GOTO Kraj;

ENDTEST

MoveL offs(Tacka_na_kutiji_10,0,0,300),v300,z50,Gripper_vakuum;

MoveJ offs(Tacka_na_stolu_10,0,0,300),v1000,z50,Gripper_vakuum\WObj:=wobj0;

MoveL Offs(Tacka_na_stolu_10,OffsX,OffsY,OffsZ),v150,fine,Gripper_vakuum;

WaitTime 1;

SetDO DO_CLOSE_GRIPPER,0;

waitDI DI_close_gripper,0;

MoveLDO offs(Tacka_na_stolu_10,OffsX,OffsY,OffsZ+300),v300,z50,Gripper_vakuum,
DO_POKRENI_TRAKU,1;

MoveJ offs(Tacka_na_kutiji_10,0,0,300),v1000,z50,Gripper_vakuum\WObj:=wobj0;

TPWrite "Premjesteno je: "\Num:=brojac;

TPWrite "Kutija";

ENDFOR

Kraj:

MoveAbsJ [[0,0,0,0,0,0],[9E09,9E09,9E09,9E09,9E09,9E09]],v1000,fine,Gripper_vakuum;

TPWrite "Program zavrsen";

ENDPROC

You might also like