Sunteți pe pagina 1din 11

Codul sursa pentru actionarea dispozitivelor

if directie then
tt:=tt+1 ;
if directie then
tt1:=tt1-1 ;

case faza of

//vine cutia
0:begin
ok:=1;
ok1:=1;
ok2:=1;
ok3:=1;
ok4:=1;
a:=a+4;
if(a>180) then

faza:=1;
end;

1:begin //urca a 2 banda in sus
ok1:=0;
ok4:=0;
b:=b+2;
if(b>30)then
faza:=2;
end;

2:begin //incepe sa curga vopseaua
d5:=d5+2;
d4:=d4+2;
if(d4>74)then
faza:=3;
end;

3:begin // se umple cutia
d5:=d5+2;
c:=c+1;
d6:=d6+1;
if(c>30)then
faza:=4;
end;

4:begin //coboara banda
b:=b-2;
d5:=d5+1;
if(b<0)then
faza:=5;
end;

//deplasare pana la presa
5:begin
ok1:=1;
a:=a+4;
a2:=a2+5;
if(a>380)then
faza:=6;
end;

//pune capac
6:begin
ok:=0;
ok2:=0;
g:=g+5;
if(g>95)then
faza:=7;
end;

//deplasare
7:begin
ok2:=1;
a:=a+4;
a1:=a1+4;
g:=g-5;
h:=h+5;
//k:=k+2;
if(a>450)then
faza:=8;
end;

//deplasare pana la carucior
8:begin
a:=a+4;
a1:=a1+4;
if(a>540)then
faza:=9;
end;

//depalasare carucior pe verticala
9:begin
ok2:=0;
p:=p+5;
if(p>27)then
faza:=10;
end;

10:begin
n:=n+5;
if(n>55)then
faza:=11;
end;
//prindere cleste
11:begin
m:=m+1;
if(m>2)then
faza:=12;
end;

//deplasare in sus pe verticala
12:begin
ok2:=1;
n:=n-5;
n1:=n1-5;
if(n<0)then
faza:=13;
end;

13:begin
p:=p-5;
p1:=p1-5;
if(p<0)then
faza:=14;
end;

//deplasare carucior dreapta
14:begin
o:=o+5;
o1:=o1+5;
if(o>200)then
faza:=15;
end;
//depalasare carucior pe verticala
15:begin
p:=p+5;
p1:=p1+5;
if(p>40)then
faza:=16;
end;

16:begin
n:=n+5;
n1:=n1+5;
if(n>50)then
faza:=17;
end;
//prindere cleste
17:begin
m:=m-1;
if(m<1)then
faza:=18;
end;

//deplasare in sus pe verticala
18:begin
n:=n-5;
if(n<0)then
faza:=19;
end;

19:begin
p:=p-5;
if(p<0)then
faza:=20;
end;

//deplasare carucior stanga
20:begin
o:=o-5;
if(o<0)then
faza:=21;
end;
end;
if faza=21 then

case faza2 of
0:begin
ok:=1;
a2:=a2+4;
if a2>400 then
faza2:=1;
end;
1:begin
ok1:=0;
b1:=b1+2;
d6:=d6-2;
if(b1>30) then
faza2:=2;
end;

2:begin //incepe sa curga vopseaua
d51:=d51+2;
d41:=d41+2;
if(d41>74)then
faza2:=3;
end;

3:begin // se umple cutia
d51:=d51+2;
c1:=c1+1;
d6:=d6+1;
if(c1>30)then
faza2:=4;
end;

4:begin //coboara banda
b1:=b1-2;
d51:=d51+1;
if(b1<0)then
faza2:=5;
end;

5:begin //deplasare pana la presa
ok1:=1;
a2:=a2+4;
a3:=a3+5;
if(a2>605)then
faza2:=6;
end;

6:begin //pune capac
ok:=0;
ok2:=0;
g1:=g1+5;
if(g1>80)then
faza2:=7;
end;

7:begin //deplasare
ok2:=1;
a2:=a2+4;
a11:=a11+4;
g1:=g1-5;
h1:=h1+5;
if(a2>650)then
faza2:=8;
end;

8:begin //deplasare pana la carucior
a2:=a2+4;
a11:=a11+4;
if(a2>752)then
faza2:=9;
end;

9:begin //depalasare carucior pe verticala
ok2:=0;
p:=p+5;
if(p>25)then
faza2:=10;
end;
10:begin
n:=n+5;
if(n>50)then
faza2:=11;
end;
//prindere cleste
11:begin
m:=m+1;
if(m>2)then
faza2:=12;
end;

//deplasare in sus pe verticala
12:begin
ok2:=1;
n:=n-5;
n11:=n11-5;
if(n<0)then
faza2:=13;
end;

13:begin
p:=p-5;
p11:=p11-5;
if(p<0)then
faza2:=14;
end;

//deplasare carucior dreapta
14:begin
o:=o+5;
o11:=o11+5;
if(o>270)then
faza2:=15;
end;
//depalasare carucior pe verticala
15:begin
p:=p+5;
p11:=p11+5;
if(p>40)then
faza2:=16;
end;

16:begin
n:=n+5;
n11:=n11+5;
if(n>45)then
faza2:=17;
end;
//prindere cleste
17:begin
m:=m-1;
if(m<1)then
faza2:=18;
end;

//deplasare in sus pe verticala
18:begin
n:=n-5;
if(n<0)then
faza2:=19;
end;

19:begin
p:=p-5;
if(p<0)then
faza2:=20;
end;

//deplasare carucior stanga
20:begin
o:=o-5;
if(o<0)then
faza2:=21;
end;
end;

end;



if faza2=21 then
case faza1 of
0:begin //pleaca carucioru in stanga
r:=r+5;
if(r>200)then
faza1:=1;
end;
1:begin //coboara primu segment
t:=t+2;
if(t>36)then
faza1:=2;
end;

2:begin //coboara al doilea segment
t1:=t1+2;
if(t1>36)then
faza1:=3;
end;

3:begin //se ridica al 2 segment dupa ce a luat cutia
t1:=t1-2;
t21:=t21-2;
n1:=n1-2;
n11:=n11-2;
if(t1<0)then
faza1:=4;
end;

4:begin //se ridica 1 segment dupa ce a luat cutia
t:=t-2;
t2:=t2-2;
p1:=p1-2;
p11:=p11-2;
if(t<0)then
faza1:=5;
end;
5:begin //se deplaseaza la dreapta dupa ce a luat cutia
r:=r-5;
r1:=r1-5;
a:=a+5;
a2:=a2+5;
a5:=a5+5;
a51:=a51+5;
if(r<0)then
faza1:=6;
end; //se lasa primu segemnt dupa ce a luat cutia
6:begin

t:=t+5;
t21:=t21+5;
p1:=p1+5;
p11:=p11+5;
if(t>180)then
faza1:=7;
end;

7:begin //se lasa 2 segemnt dupa ce a luat cutia
ok3:=0;
t1:=t1+5;
t2:=t2+5;
n1:=n1+5;
n11:=n11+5;
if(t1>190)then
faza1:=8;
end;

8:begin //se ridica al 2 segment pt al nul lovii cutia
ok3:=1;
t1:=t1-5;
if(t1<140)then
faza1:=9;
end;

9:begin //se deplaseaza cutia plina si apare cea noua
r1:=r1+5;
r2:=r2+5;
a:=a-5;
a2:=a2-5;
a5:=a5-5;
a51:=a51-5;
if(r1>275)then
faza1:=10;
end;

10:begin //se lasa a2 segment
ok3:=0;
t1:=t1+5;
if(t1>190)then
faza1:=11;
end;

11:begin //se ridica al 2 segment dupa ce a luat cutia noua
t1:=t1-5;
t31:=t31-5;
ok4:=1;
cam:=cam-5;
r1:=r1+5;
a:=a-5;
a2:=a2-5;
a5:=a5-5;
a51:=a51-5;
if(t1<0)then
faza1:=12;
end;

12:begin //se ridica 1 segment dupa ce a luat cutia noua
t:=t-5;
t3:=t3-5;

cam:=cam-5;
r1:=r1+5;
a:=a-5;
a5:=a5-5;
a2:=a2-5;
a51:=a51-5;
if(t<0)then
faza1:=13;
end;

13:begin //pleaca carucioru in stanga
r:=r+5;
r2:=r2+5;
cam:=cam-5;
r1:=r1+5;
a:=a-5;
a5:=a5-5;
a2:=a2-5;
a51:=a51-5;
if(r>200)then
faza1:=14;
end;
14:begin //coboara primu segment
t:=t+2;
t3:=t3+2;
cam:=cam-5;
r1:=r1+5;
a:=a-5;
a5:=a5-5;
a2:=a2-5;
a51:=a51-5;
if(t>36)then
faza1:=15;
end;

15:begin //coboara al doilea segment
t1:=t1+2;
t31:=t31+2;
cam:=cam-5;
r1:=r1+10;
a:=a-5;
a5:=a5-5;
a2:=a2-5;
a51:=a51-5;
if(t1>36)then
faza1:=16;
end;

16:begin //se ridica al 2 segment dupa ce a lasat cutia
t1:=t1-2;
cam:=cam-5;
r1:=r1+5;
a:=a-5;
a5:=a5-5;
a2:=a2-5;
a51:=a51-5;
if(t1<0)then
faza1:=17;
end;

17:begin //se ridica 1 segment dupa ce a lasat cutia
t:=t-2;
cam:=cam-5;
r1:=r1+5;
a:=a-5;
a5:=a5-5;
a2:=a2-5;
a51:=a51-5;
if(t<0)then
faza1:=18;
end;
18:begin //se deplaseaza la dreapta dupa ce a lasat cutia
r:=r-5;
cam:=cam-5;
r1:=r1+5;
a:=a-5;
a5:=a5-5;
a2:=a2-5;
a51:=a51-5;
ok1:=0;
ok2:=0;
if(r<0)then
faza1:=19;
end;
end;


end;

S-ar putea să vă placă și