You are on page 1of 3

MODULE MainModule

CONST robtarget p10:=[[236.53,417.06,461.00],[0.320442,-0.467434,0.80248


6,0.186652],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p20:=[[438.23,1.31,106.08],[0.0203131,9.57268E-05,-0.999
793,-0.000667479],[0,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget p30:=[[304.16,-260.11,180.68],[0.0017182,-0.347716,-0.93
7597,-0.001480087],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
VAR robtarget p40;!objeto 1 do desenho
VAR robtarget p50;
VAR robtarget p60;
VAR robtarget p70;
VAR robtarget p80;
VAR robtarget p90;
VAR robtarget p100;
VAR robtarget p110;
CONST string figura3:="Circulo";
CONST string figura4:="Quadrado";
CONST string figura1:="Tringulo";
CONST string figura2:="Retngulo";
CONST string figura5:="Todos";
VAR num figura:=0;
VAR num tempo;
VAR clock timeclock;
CONST robtarget p120:=[[339.35,43.98,189.93],[0.0604626,-0.960774,0.112655,-
0.246104],[0,0,2,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

PROC main()
!DEFINE O PONTO DE pick EM RELAO AO P30
p40:=Offs(p30,0,100,0);!figura 1
p60:=Offs(p40,0,-100,0);!figura 2
p80:=Offs(p40,-100,0,0);!figura 3
p100:=Offs(p80,0,-100,0);!figura 4

!define o ponto de place em relao ao p40
p50:=Offs(p120,0,200,0);
p70:=Offs(p50,0,200,0);
p90:=Offs(p50,0,200,0);
p110:=Offs(p90,0,200,0);


!MOVE PARA O PONTO DE SEGURANA
MoveJ p10, v1000, z50, tool0;
MoveJ p20, v1000, z50, tool0;
MoveJ p120, v1000, z50, tool0;

TPWrite "Programa feito em maio de 2014";
TPReadFK figura, "Escolha a figura:", figura1, figura2, figura3, figura4
, figura5;

TEST figura

CASE 1:
ClkReset timeclock;
ClkStart timeclock; pick p40;
WaitTime 3; place p50;
WaitTime 3; ClkStop timeclock;
TPWrite "O tempo do ciclo : "\Num := ClkRead(timeclock);
TPErase; TPWrite "Voc escolheu o circulo!";
WaitTime 400;

CASE 2:

ClkReset timeclock;
ClkStart timeclock;
pick p60;
WaitTime 3;
place p70;
WaitTime 3;
ClkStop timeclock;
TPWrite "O tempo do ciclo : "\Num := ClkRead(timeclock);
TPErase;
TPWrite "Voc escolheu o quadrado!";
WaitTime 400;

CASE 3:

ClkReset timeclock; ClkStart timeclock; pick p80;
WaitTime 3; place p90; WaitTime 3;
ClkStop timeclock;
TPWrite "O tempo do ciclo : "\Num := ClkRead(timeclock);
TPErase;
TPWrite "Voc escolheu o tringulo!";
WaitTime 400;
CASE 4:
ClkReset timeclock;
ClkStart timeclock;
pick p100;
WaitTime 3;
place p110;
WaitTime 3;
ClkStop timeclock;
TPWrite "O tempo do ciclo : "\Num := ClkRead(timeclock);
TPErase; TPWrite "Voc escolheu o retngulo!";
WaitTime 400;

CASE 5:

ClkReset timeclock;
ClkStart timeclock; pick p40;
WaitTime 3; place p50;
WaitTime 3; pick p60;
WaitTime 3; place p70;
WaitTime 3; pick p80;
WaitTime 3; place p90;
WaitTime 3; pick p100;
WaitTime 3; place p110;
WaitTime 3; ClkStop timeclock;
TPWrite "O tempo do ciclo : "\Num := ClkRead(timeclock);
TPErase; TPWrite "Voc escolheu Todos!";
WaitTime 400;

DEFAULT:

TPWrite "ESCOLHA EQUIVOCADA";

ENDTEST

ENDPROC

PROC pick (robtarget ponto)
MoveL ponto, v1000, z50, tool0;
WaitTime 3;
MoveL Offs(ponto,0,0,-100), v2500, fine, tool0;
!ativar atuador
WaitTime 3;
MoveL ponto, v1000, z50, tool0;
ENDPROC

PROC place (robtarget ponto)
MoveL ponto, v1000, z50, tool0;
WaitTime 3;
MoveL Offs(ponto,0,0,-100), v2500, fine, tool0;
!ativar atuador
WaitTime 3;
MoveL ponto, v1000, z50, tool0;
ENDPROC
ENDMODULE

You might also like