stateflow book for robotok - unipi.it · stateflow book for robotok version none created by unknown...
TRANSCRIPT
Stateflow Book for
robotok
Version none
Created by Unknown
Generated 17-Dec-2004 12:52:41
Stateflow Version 6.0 (R14) dated Apr 30 2004, 06:19:14
Table of Contentsrobotok 1
Report on target 1Chart 2
posiziona 6Report on transitions 7
Report on transitions 13Report on data 28
i
Machine robotok (M1)
Created 11-May-2004 16:45:59
Creator Unknown
Version none
Charts robotok/ChartC1 p2
TARGET sfun (Trgt-1)
Parent robotokM1 p1
Description Default Simulink S-Function Target.
robotok 1
CHART Chart (C1)
Machine robotokM1 p1
standby/
waitDx/
turnDx/en:T0=t;alfa0=angle;du:angle=alfa0+V0*(t-T0);
turnSx/en:T0=t;alfa0=angle;du:angle=alfa0-V0*(t-T0);
waitSx/
posiziona
caricaRastrellieraen:sensore=1;ex:pezzoA=500;pezzoB=500;stato=1;
posSicurezzaen:sensore=0;ex:dx=1;sx=0;accendi=0;
suRastrellieraen:pezzo=1;verifica=0;
waiten:verifica=1;
pezzoAfferratoen:pezzo=0;stato=2;ex:dx=1;sx=0;
waitTavolaen:verifica=1;
suTavolaen:verifica=0;pezzo=1;
lasciatoen:pezzo=0;stato=3;dx=0;sx=1;ex:statoR=1;
ruotaTavola90en:verifica=0;tipopezzo=1;rifT=1.57;
posSicurezzaRSen:tipopezzo=0;
ruotaTavola180en:statoR=3;tipopezzo=0;rifT=4.71
Saldaturaen:p=0;pezzo=0;pos=10;pos1=10.1;rifS=0;ciclo=ciclo+1;
FineSaldaturaen:attendi=1;
RSsuTavolaen:verifica=0;pezzo=1;
waitRSen:verifica=1;
waitSaldaturaen:attendi=0;
punti1234en:attendi=1;pos=rifS;pos1=pos+0.1;
punto5en:attendi=1;pos=rifS;
AzzeraPinzaen:attendi=0;rifR=0;statoS=2;
prelievoAssemblatostatoS=3;ex:dx=1;sx=0;
prelevaen:statoS=4;ex:dx=1;sx=0;
waitNastroen:verifica=1;
suNastroen:verifica=0;pezzo=1;statoS=5;
lascioSuPalleten:pezzo=0;dx=0;sx=1;rif=4.71
ruotaTavola0en:rifT=0;
waitRitornoen:verifica=1;
resetTavolaen:stato=1;statoR=0;statoS=0;
invioPalleten:accendi=1;ciclo=0;
[dx==1]
[sx==1]
[angle>=alfa0+rif]
[dx==0]
[sx==1]
[angle<=alfa0-rif]
[sx==0]
[dx==1]
[(statoR==0)&(pezzoA>4)&(pezzoB>4)]/rif=1.57
[(pezzoA<5)&(pezzoB<5)]
[caricata==1]
[(statoS==0)&((stato==3)|(stato==1))&(angle>=1.57)&(angle<=1.58)&(tipopezzo==0)]
[posOk==1]
[contrPezzo==1]
[mantieni==1]/rif=3.14
[((stato==2)|(statoS==2)|(statoS==3))&(angle>=3.14)&(angle<=3.15)]
[posOk==1]
[(stato==2)&(contrPezzo==1)]
/rif=3.14;
[(angleT>=4.71)&(angleT<=4.72)]
[(statoR==1)&(tipopezzo==0)]
[(statoR==0)|(statoR==2)]
[(angleT>=1.57)&(angleT<=1.58)]/statoR=2;
[p==4]/rifS=rifS-5;
[(statoS==1)|(statoR==3)]/rifR=1.57
[((tipopezzo==1)|(statoS==5))&(angle<=0.01)]
[tipopezzo==0]{pezzoA=pezzoA-1}
[tipopezzo==1]{pezzoB=pezzoB-1}
[(statoS==1)&(angleRS>=1.57)&(angleRS<=1.58)]
[(fatto==1)&(pinza<=pos)]{p=p+1}
[p==5]/rifS=0
[contrPezzo==1]
[(statoS==0)&(angleRS>=1.57)&(angleRS<=1.58)]/statoS=1;
[(statoS==1)&(posOk==1)]
[p<4]/rifS=rifS+5;
[(fatto==1)&(p>=0)&(pinza>=pos)&(pinza<=pos1)]{p=p+1}
[(fatto==1)&(pinza<=0)]
[angleRS<=0]
[(statoS==2)&(posOk==1)]
[statoS==2]
/rif=3.14
[(statoS==3)&(contrPezzo==1)]
[ciclo==2]/rif=3.71
[(statoS==4)&(ciclo==1)&(angle>=4.71)&(angle<=4.72)]
[posOk==1]
[contrPezzo==1]
[mantieni==0]
[spegni==1]
[angleT<=0]
[posOk==1]
[(statoR==1)&(pezzoA>4)&(pezzoB>4)]
[statoS==5]
[ciclo==1]
[ciclo==2]
[ciclo==1]/rif=4.71
[ciclo==1]/rif=4.71
[ciclo==2]/rif=3.71
[(statoS==4)&(ciclo==2)&(angle>=3.71)&(angle<=3.72)]
S10 p6
S2 p3 S1 p3 S16 p7 S3 p3
S19 p8S31 p12 S32 p12 S30 p11
S7 p5
S20 p9
S5 p4
S23 p10S28 p11
S22 p9
S18 p8
S34 p13
S33 p12
S29 p11
S17 p8
S21 p9
S27 p10
S9 p5
S6 p4S4 p4
S8 p5
T29 p18
T33 p19
T20 p15
T59 p26T60 p27
T41 p21
T57 p26
T51 p24
T23 p16
T43 p22
T62 p27
T44 p22
T36 p20
T49 p24T46 p23
T64 p28
T45 p23
T35 p20
T42 p21
T53 p25
T47 p23
T15 p13
T34 p20
T28 p18T17 p13
T24 p16
T22 p15T30 p18
T40 p21
T48 p24
T54 p25T37 p20
Data T0D5 p28 V0D6 p28
alfa0D7 p28 appD33 p29
cicloD35 p29 dxD3 p29
pD28 p29 pezzoAD10 p30
pezzoBD11 p30 posD25 p30
pos1D26 p30 rifD12 p30
statoD18 p31 statoRD19 p31
statoSD30 p31 sxD2 p31
tipopezzoD20 p31 caricataD8 p29
posOkD14 p30 contrPezzoD15 p29
mantieniD17 p29 angleTD22 p28
angleRSD24 p28 pinzaD27 p30
fattoD31 p29 spegniD36 p31
angleD4 p28 sensoreD9 p31
verificaD13 p31 pezzoD16 p30
rifTD21 p31 rifRD23 p30
attendiD29 p29 rifSD32 p30
accendiD34 p28
States posizionaS10 p6 caricaRastrellieraS2 p3 posSicurezzaS1 p3
suRastrellieraS16 p7 waitS3 p3 pezzoAfferratoS19 p8
waitTavolaS31 p12 suTavolaS32 p12 lasciatoS30 p11
ruotaTavola90S7 p5 posSicurezzaRSS20 p9 ruotaTavola180S5 p4
SaldaturaS23 p10 FineSaldaturaS28 p11 RSsuTavolaS22 p9
waitRSS18 p8 AzzeraPinzaS34 p13 prelievoAssemblatoS33 p12
prelevaS29 p11 waitNastroS17 p8 suNastroS21 p9
lascioSuPalletS27 p10 ruotaTavola0S9 p5 waitRitornoS6 p4
resetTavolaS4 p4 invioPalletS8 p5
robotok 2
STATE posSicurezza (S1)
Parent ChartC1 p2
posSicurezzaen:sensore=0;ex:dx=1;sx=0;accendi=0;
[(statoR==0)&(pezzoA>4)&(pezzoB>4)]/rif=1.57
[(pezzoA<5)&(pezzoB<5)]
[caricata==1][((tipopezzo==1)|(statoS==5))&(angle<=0.01)]
[spegni==1]
[(statoR==1)&(pezzoA>4)&(pezzoB>4)]
[statoS==5]
[ciclo==1]
(For context see C1 p2)Trans In T19T19 p14 T16C1 p2 T20T20 p15 Trans Out T25T25 p17 T21T21 p15 T17T17 p13
T15T15 p13 T22T22 p15 T24T24 p16
STATE caricaRastrelliera (S2)
Parent ChartC1 p2
caricaRastrellieraen:sensore=1;ex:pezzoA=500;pezzoB=500;stato=1;
[(pezzoA<5)&(pezzoB<5)]
[caricata==1]
(For context see C1 p2)Trans In T21T21 p15 Trans Out T19T19 p14
STATE wait (S3)
Parent ChartC1 p2
waiten:verifica=1;
[(statoS==0)&((stato==3)|(stato==1))&(angle>=1.57)&(angle<=1.58)&(tipopezzo==0)]
[posOk==1]
[(angleT>=4.71)&(angleT<=4.72)]
[(angleT>=1.57)&(angleT<=1.58)]/statoR=2;
[(statoS==0)&(angleRS>=1.57)&(angleRS<=1.58)]/statoS=1;
(For context see C1 p2)Trans In T26T26 p17 T18T18 p14 T29T29 p18 Trans Out T27T27 p17
T23T23 p16
robotok/Chart 3
STATE resetTavola (S4)
Parent ChartC1 p2
resetTavolaen:stato=1;statoR=0;statoS=0; [posOk==1]
[ciclo==1]
[ciclo==2]
(For context see C1 p2)Trans In T28T28 p18 Trans Out T22T22 p15 T30T30 p18
STATE ruotaTavola180 (S5)
Parent ChartC1 p2
ruotaTavola180en:statoR=3;tipopezzo=0;rifT=4.71
[(angleT>=4.71)&(angleT<=4.72)][(statoR==1)&(pezzoA>4)&(pezzoB>4)]
(For context see C1 p2)Trans In T17T17 p13 Trans Out T18T18 p14
STATE waitRitorno (S6)
Parent ChartC1 p2
waitRitornoen:verifica=1;
[angleT<=0]
[posOk==1]
(For context see C1 p2)Trans In T34T34 p20 Trans Out T28T28 p18
robotok/Chart 4
STATE ruotaTavola90 (S7)
Parent ChartC1 p2
ruotaTavola90en:verifica=0;tipopezzo=1;rifT=1.57;
[(statoR==1)&(tipopezzo==0)] [(angleT>=1.57)&(angleT<=1.58)]/statoR=2;
(For context see C1 p2)Trans In T31T31 p18 Trans Out T29T29 p18
STATE invioPallet (S8)
Parent ChartC1 p2
invioPalleten:accendi=1;ciclo=0;
[spegni==1]
[ciclo==2]
(For context see C1 p2)Trans In T30T30 p18 Trans Out T15T15 p13
STATE ruotaTavola0 (S9)
Parent ChartC1 p2
ruotaTavola0en:rifT=0;
[angleT<=0]
[statoS==5]
(For context see C1 p2)Trans In T24T24 p16 Trans Out T34T34 p20
robotok/Chart 5
STATE posiziona (S10)
Parent ChartC1 p2
posiziona
standby/
waitDx/
turnDx/en:T0=t;alfa0=angle;du:angle=alfa0+V0*(t-T0);
turnSx/en:T0=t;alfa0=angle;du:angle=alfa0-V0*(t-T0);
waitSx/
[dx==1]
[sx==1]
[angle>=alfa0+rif]
[dx==0]
[sx==1]
[angle<=alfa0-rif]
[sx==0]
[dx==1]
[(statoR==0)&(pezzoA>4)&(pezzoB>4)]/rif=1.57[(statoS==0)&((stato==3)|(stato==1))&(angle>=1.57)&(angle<=1.58)&(tipopezzo==0)]
[mantieni==1]/rif=3.14
[((stato==2)|(statoS==2)|(statoS==3))&(angle>=3.14)&(angle<=3.15)]
/rif=3.14;
[((tipopezzo==1)|(statoS==5))&(angle<=0.01)]
/rif=3.14
[ciclo==2]/rif=3.71
[(statoS==4)&(ciclo==1)&(angle>=4.71)&(angle<=4.72)]
[ciclo==1]/rif=4.71
[ciclo==1]/rif=4.71
[ciclo==2]/rif=3.71
[(statoS==4)&(ciclo==2)&(angle>=3.71)&(angle<=3.72)]
S13 p6 T7 p7T8 p7
(For context see C1 p2)Substates standbyS10 p6 turnDxS10 p6 turnSxS13 p6 waitDxS10 p6 waitSxS10 p6
Trans In T25T25 p17 T52T52 p25 T55T55 p26 Trans Out T26T26 p17 T56T56 p26 T20T20 p15
T46T46 p23 T45T45 p23 T40T40 p21 T35T35 p20 T37T37 p20
T48T48 p24 T54T54 p25
STATE turnSx (S13)
Parent posizionaS10 p6
turnSx/en:T0=t;alfa0=angle;du:angle=alfa0-V0*(t-T0);
[sx==1]
[sx==1]
[angle<=alfa0-rif]
(For context see S10 p6)Trans In T9S10 p6 T5S10 p6 Trans Out T8T8 p7
robotok/Chart/posiziona 6
TRANSITION T7
Parent posizionaS10 p6
[angle>=alfa0+rif]
waitDx/
turnDx/en:T0=t;alfa0=angle;du:angle=alfa0+V0*(t-T0);
(For context see S10 p6)Source turnDxS10 p6 Dest waitDxS10 p6
TRANSITION T8
Parent posizionaS10 p6
[angle<=alfa0-rif]
turnSx/en:T0=t;alfa0=angle;du:angle=alfa0-V0*(t-T0);
waitSx/
(For context see S10 p6)Source turnSxS13 p6 Dest waitSxS10 p6
STATE suRastrelliera (S16)
Parent ChartC1 p2
suRastrellieraen:pezzo=1;verifica=0;
[contrPezzo==1]
[(statoR==0)|(statoR==2)]
(For context see C1 p2)Trans In T32T32 p19 Trans Out T39T39 p21
robotok/Chart 7
STATE waitNastro (S17)
Parent ChartC1 p2
waitNastroen:verifica=1;
[posOk==1](For context see C1 p2)Trans In T38C1 p2 Trans Out T42T42 p21
STATE waitRS (S18)
Parent ChartC1 p2
waitRSen:verifica=1;
[(statoS==1)&(angleRS>=1.57)&(angleRS<=1.58)]
[(statoS==1)&(posOk==1)]
[angleRS<=0]
[(statoS==2)&(posOk==1)]
(For context see C1 p2)Trans In T41T41 p21 T44T44 p22 Trans Out T43T43 p22 T36T36 p20
STATE pezzoAfferrato (S19)
Parent ChartC1 p2
pezzoAfferratoen:pezzo=0;stato=2;ex:dx=1;sx=0;
[contrPezzo==1]
[mantieni==1]/rif=3.14
[mantieni==0]
(For context see C1 p2)Trans In T39T39 p21 T47T47 p23 Trans Out T52T52 p25 T47T47 p23
robotok/Chart 8
STATE posSicurezzaRS (S20)
Parent ChartC1 p2
posSicurezzaRSen:tipopezzo=0;
[(statoS==1)|(statoR==3)]/rifR=1.57
[(statoS==1)&(angleRS>=1.57)&(angleRS<=1.58)]
[(statoS==0)&(angleRS>=1.57)&(angleRS<=1.58)]/statoS=1;
[(statoS==2)&(posOk==1)]
[statoS==2]
(For context see C1 p2)Trans In T33T33 p19 T36T36 p20 Trans Out T41T41 p21 T23T23 p16 T49T49 p24
STATE suNastro (S21)
Parent ChartC1 p2
suNastroen:verifica=0;pezzo=1;statoS=5;
[posOk==1]
[contrPezzo==1]
(For context see C1 p2)Trans In T42T42 p21 Trans Out T53T53 p25
STATE RSsuTavola (S22)
Parent ChartC1 p2
RSsuTavolaen:verifica=0;pezzo=1;
[contrPezzo==1]
[(statoS==1)&(posOk==1)]
(For context see C1 p2)Trans In T43T43 p22 Trans Out T51T51 p24
robotok/Chart 9
STATE Saldatura (S23)
Parent ChartC1 p2
Saldaturaen:p=0;pezzo=0;pos=10;pos1=10.1;rifS=0;ciclo=ciclo+1;
FineSaldaturaen:attendi=1;
waitSaldaturaen:attendi=0;
punti1234en:attendi=1;pos=rifS;pos1=pos+0.1;
punto5en:attendi=1;pos=rifS;
AzzeraPinzaen:attendi=0;rifR=0;statoS=2;
[p==4]/rifS=rifS-5;
[(fatto==1)&(pinza<=pos)]{p=p+1}
[p==5]/rifS=0
[contrPezzo==1]
[p<4]/rifS=rifS+5;
[(fatto==1)&(p>=0)&(pinza>=pos)&(pinza<=pos1)]{p=p+1}
[angleRS<=0]
S24 p10
(For context see C1 p2)Substates punti1234S24 p10 punto5S23 p10 waitSaldaturaS23 p10
Trans In T51T51 p24 Trans Out T57T57 p26
STATE punti1234 (S24)
Parent SaldaturaS23 p10
Label punti1234en:attendi=1;pos=rifS;pos1=pos+0.1;
Trans In T10S23 p10 Trans Out T11S23 p10
Data appD1 p29
STATE lascioSuPallet (S27)
Parent ChartC1 p2
lascioSuPalleten:pezzo=0;dx=0;sx=1;rif=4.71
[contrPezzo==1]
(For context see C1 p2)Trans In T53T53 p25 Trans Out T50C1 p2
robotok/Chart 10
STATE FineSaldatura (S28)
Parent ChartC1 p2
FineSaldaturaen:attendi=1;
[p==5]/rifS=0
[(fatto==1)&(pinza<=0)]
(For context see C1 p2)Trans In T57T57 p26 Trans Out T62T62 p27
STATE preleva (S29)
Parent ChartC1 p2
prelevaen:statoS=4;ex:dx=1;sx=0;
[(statoS==3)&(contrPezzo==1)](For context see C1 p2)
Trans In T64T64 p28 Trans Out T58C1 p2
STATE lasciato (S30)
Parent ChartC1 p2
lasciatoen:pezzo=0;stato=3;dx=0;sx=1;ex:statoR=1;
[(stato==2)&(contrPezzo==1)]
[tipopezzo==0]{pezzoA=pezzoA-1}
[tipopezzo==1]{pezzoB=pezzoB-1}
(For context see C1 p2)Trans In T63T63 p27 Trans Out T59T59 p26 T60T60 p27
robotok/Chart 11
STATE waitTavola (S31)
Parent ChartC1 p2
waitTavolaen:verifica=1;
[((stato==2)|(statoS==2)|(statoS==3))&(angle>=3.14)&(angle<=3.15)]
[posOk==1]
(For context see C1 p2)Trans In T56T56 p26 Trans Out T61T61 p27
STATE suTavola (S32)
Parent ChartC1 p2
suTavolaen:verifica=0;pezzo=1;
[posOk==1]
[(stato==2)&(contrPezzo==1)]
[(statoS==3)&(contrPezzo==1)]
(For context see C1 p2)Trans In T61T61 p27 Trans Out T63T63 p27 T64T64 p28
STATE prelievoAssemblato (S33)
Parent ChartC1 p2
prelievoAssemblatostatoS=3;ex:dx=1;sx=0;
[statoS==2]
/rif=3.14
(For context see C1 p2)Trans In T49T49 p24 Trans Out T46T46 p23
robotok/Chart 12
STATE AzzeraPinza (S34)
Parent ChartC1 p2
AzzeraPinzaen:attendi=0;rifR=0;statoS=2;
[(fatto==1)&(pinza<=0)]
[angleRS<=0]
(For context see C1 p2)Trans In T62T62 p27 Trans Out T44T44 p22
TRANSITION T15
Parent ChartC1 p2
Label [spegni==1]
[spegni==1]
caricaRastrellieraen:sensore=1;ex:pezzoA=500;pezzoB=500;stato=1;
posSicurezzaen:sensore=0;ex:dx=1;sx=0;accendi=0;
waitRitornoen:verifica=1;
resetTavolaen:stato=1;statoR=0;statoS=0;
invioPalleten:accendi=1;ciclo=0;
[(pezzoA<5)&(pezzoB<5)]
[caricata==1]
[angleT<=0]
[posOk==1][statoS==5]
[ciclo==1]
[ciclo==2]
(For context see C1 p2)Source invioPalletS8 p5 Dest posSicurezzaS1 p3
TRANSITION T17
Parent ChartC1 p2
robotok/Chart 13
[(statoR==1)&(pezzoA>4)&(pezzoB>4)]
ruotaTavola180en:statoR=3;tipopezzo=0;rifT=4.71
[((tipopezzo==1)|(statoS==5))&(angle<=0.01)]
(For context see C1 p2)Source posSicurezzaS1 p3 Dest ruotaTavola180S5 p4
TRANSITION T18
Parent ChartC1 p2
Label [(angleT>=4.71)&(angleT<=4.72)]
[(angleT>=4.71)&(angleT<=4.72)]
waiten:verifica=1;
[(statoS==0)&((stato==3)|(stato==1))&(angle>=1.57)&(angle<=1.58)&(tipopezzo==0)]
[(statoR==1)&(pezzoA>4)&(pezzoB>4)]
(For context see C1 p2)Source ruotaTavola180S5 p4 Dest waitS3 p3
TRANSITION T19
Parent ChartC1 p2
[caricata==1]
posSicurezzaen:sensore=0;ex:dx=1;sx=0;accendi=0;
(For context see C1 p2)Source caricaRastrellieraS2 p3 Dest posSicurezzaS1 p3
robotok/Chart 14
TRANSITION T20
Parent ChartC1 p2
Label [((tipopezzo==1)|(statoS==5))&(angle<=0.01)]
[((tipopezzo==1)|(statoS==5))&(angle<=0.01)]
ruotaTavola180en:statoR=3;tipopezzo=0;rifT=4.71
[(angleT>=4.71)&(angleT<=4.72)][(statoR==1)&(pezzoA>4)&(pezzoB>4)]
(For context see C1 p2)Source posizionaS10 p6 Dest posSicurezzaS1 p3
TRANSITION T21
Parent ChartC1 p2
[(pezzoA<5)&(pezzoB<5)]
caricaRastrellieraen:sensore=1;ex:pezzoA=500;pezzoB=500;stato=1;
posSicurezzaen:sensore=0;ex:dx=1;sx=0;accendi=0;
(For context see C1 p2)Source posSicurezzaS1 p3 Dest caricaRastrellieraS2 p3
TRANSITION T22
Parent ChartC1 p2
[ciclo==1]
caricaRastrellieraen:sensore=1;ex:pezzoA=500;pezzoB=500;stato=1;
posSicurezzaen:sensore=0;ex:dx=1;sx=0;accendi=0;
(For context see C1 p2)Source resetTavolaS4 p4 Dest posSicurezzaS1 p3
robotok/Chart 15
TRANSITION T23
Parent ChartC1 p2
Label [(statoS==0)&(angleRS>=1.57)&(angleRS<=1.58)]/statoS=1;
[(statoS==0)&(angleRS>=1.57)&(angleRS<=1.58)]/statoS=1;
waiten:verifica=1;
ruotaTavola90en:verifica=0;tipopezzo=1;rifT=1.57;
posSicurezzaRSen:tipopezzo=0;
[(angleT>=1.57)&(angleT<=1.58)]/statoR=2;
[(statoS==1)&(angleRS>=1.57)&(angleRS<=1.58)]
[(statoS==2)&(posOk==1)]
(For context see C1 p2)Source posSicurezzaRSS20 p9 Dest waitS3 p3
TRANSITION T24
Parent ChartC1 p2
Label [statoS==5]
[statoS==5]
ruotaTavola0en:rifT=0;
waitRitornoen:verifica=1;
[ciclo==1]
(For context see C1 p2)Source posSicurezzaS1 p3 Dest ruotaTavola0S9 p5
robotok/Chart 16
TRANSITION T25
Parent ChartC1 p2
[(statoR==0)&(pezzoA>4)&(pezzoB>4)]/rif=1.57
posiziona
(For context see C1 p2)Source posSicurezzaS1 p3 Dest posizionaS10 p6
TRANSITION T26
Parent ChartC1 p2
[(statoS==0)&((stato==3)|(stato==1))&(angle>=1.57)&(angle<=1.58)&(tipopezzo==0)] waiten:verifica=1;
ruotaTavola180en:statoR=3;tipopezzo=0;rifT=4.71
[posOk==1]
[(statoR==1)&(tipopezzo==0)]
[(statoR==0)|(statoR==2)]
[(statoS==1)|(statoR==3)]/rifR=1.57(For context see C1 p2)
Source posizionaS10 p6 Dest waitS3 p3
TRANSITION T27
Parent ChartC1 p2
[posOk==1]
robotok/Chart 17
(For context see C1 p2)Source waitS3 p3 Dest J1C1 p2
TRANSITION T28
Parent ChartC1 p2
[posOk==1]
(For context see C1 p2)Source waitRitornoS6 p4 Dest resetTavolaS4 p4
TRANSITION T29
Parent ChartC1 p2
[(angleT>=1.57)&(angleT<=1.58)]/statoR=2;
waiten:verifica=1;
ruotaTavola90en:verifica=0;tipopezzo=1;rifT=1.57;(For context see C1 p2)
Source ruotaTavola90S7 p5 Dest waitS3 p3
TRANSITION T30
Parent ChartC1 p2
[ciclo==2]
invioPalleten:accendi=1;ciclo=0;(For context see C1 p2)
Source resetTavolaS4 p4 Dest invioPalletS8 p5
TRANSITION T31
Parent ChartC1 p2
[(statoR==1)&(tipopezzo==0)]
ruotaTavola90en:verifica=0;tipopezzo=1;rifT=1.57;
robotok/Chart 18
(For context see C1 p2)Source J1C1 p2 Dest ruotaTavola90S7 p5
TRANSITION T32
Parent ChartC1 p2
[(statoR==0)|(statoR==2)]
suRastrellieraen:pezzo=1;verifica=0;
[(statoS==1)|(statoR==3)]/rifR=1.57
(For context see C1 p2)Source J1C1 p2 Dest suRastrellieraS16 p7
TRANSITION T33
Parent ChartC1 p2
Label [(statoS==1)|(statoR==3)]/rifR=1.57
[(statoS==1)|(statoR==3)]/rifR=1.57
suRastrellieraen:pezzo=1;verifica=0;
pezzoAfferratoen:pezzo=0;stato=2;ex:dx=1;sx=0;
ruotaTavola90en:verifica=0;tipopezzo=1;rifT=1.57;
posSicurezzaRSen:tipopezzo=0;
[(statoR==1)&(tipopezzo==0)]
[(statoS==2)&(posOk==1)]
(For context see C1 p2)Source J1C1 p2 Dest posSicurezzaRSS20 p9
robotok/Chart 19
TRANSITION T34
Parent ChartC1 p2
[angleT<=0]
ruotaTavola0en:rifT=0;
waitRitornoen:verifica=1;
(For context see C1 p2)Source ruotaTavola0S9 p5 Dest waitRitornoS6 p4
TRANSITION T35
Parent ChartC1 p2
[(statoS==4)&(ciclo==1)&(angle>=4.71)&(angle<=4.72)]
(For context see C1 p2)Source posizionaS10 p6 Dest J2C1 p2
TRANSITION T36
Parent ChartC1 p2
[(statoS==2)&(posOk==1)]
posSicurezzaRSen:tipopezzo=0;
waitRSen:verifica=1;
[(statoS==1)&(angleRS>=1.57)&(angleRS<=1.58)]
[(statoS==1)&(posOk==1)]
(For context see C1 p2)Source waitRSS18 p8 Dest posSicurezzaRSS20 p9
TRANSITION T37
Parent ChartC1 p2
[(statoS==4)&(ciclo==2)&(angle>=3.71)&(angle<=3.72)]
[(statoS==4)&(ciclo==1)&(angle>=4.71)&(angle<=4.72)]
(For context see C1 p2)Source posizionaS10 p6 Dest J2C1 p2
robotok/Chart 20
TRANSITION T39
Parent ChartC1 p2
[contrPezzo==1]
pezzoAfferratoen:pezzo=0;stato=2;ex:dx=1;sx=0;
(For context see C1 p2)Source suRastrellieraS16 p7 Dest pezzoAfferratoS19 p8
TRANSITION T40
Parent ChartC1 p2
[ciclo==1]/rif=4.71
posiziona
[ciclo==2]/rif=3.71
(For context see C1 p2)Source J3C1 p2 Dest posizionaS10 p6
TRANSITION T41
Parent ChartC1 p2
[(statoS==1)&(angleRS>=1.57)&(angleRS<=1.58)]
posSicurezzaRSen:tipopezzo=0;
waitRSen:verifica=1;
(For context see C1 p2)Source posSicurezzaRSS20 p9 Dest waitRSS18 p8
TRANSITION T42
Parent ChartC1 p2
robotok/Chart 21
[posOk==1]
waitNastroen:verifica=1;
suNastroen:verifica=0;pezzo=1;statoS=5;
(For context see C1 p2)Source waitNastroS17 p8 Dest suNastroS21 p9
TRANSITION T43
Parent ChartC1 p2
[(statoS==1)&(posOk==1)]
RSsuTavolaen:verifica=0;pezzo=1;
waitRSen:verifica=1;
(For context see C1 p2)Source waitRSS18 p8 Dest RSsuTavolaS22 p9
TRANSITION T44
Parent ChartC1 p2
Label [angleRS<=0]
[angleRS<=0]
posSicurezzaRSen:tipopezzo=0;
Saldaturaen:p=0;pezzo=0;pos=10;pos1=10.1;rifS=0;ciclo=ciclo+1;
RSsuTavolaen:verifica=0;pezzo=1;
waitRSen:verifica=1;
waitSaldaturaen:attendi=0;
punti1234en:attendi=1;pos=rifS;pos1=pos+0.1;
punto5en:attendi=1;pos=rifS;
[p==4]/rifS=rifS-5;
[(statoS==1)&(angleRS>=1.57)&(angleRS<=1.58)]
[(fatto==1)&(pinza<=pos)]{p=p+1}
[p==5]/rifS=0
[contrPezzo==1]
[(statoS==1)&(posOk==1)]
[p<4]/rifS=rifS+5;
[(fatto==1)&(p>=0)&(pinza>=pos)&(pinza<=pos1)]{p=p+1}
(For context see C1 p2)Source AzzeraPinzaS34 p13 Dest waitRSS18 p8
robotok/Chart 22
TRANSITION T45
Parent ChartC1 p2
[ciclo==2]/rif=3.71
posiziona
(For context see C1 p2)Source J3C1 p2 Dest posizionaS10 p6
TRANSITION T46
Parent ChartC1 p2
Label /rif=3.14
/rif=3.14
waitDx/
turnSx/en:T0=t;alfa0=angle;du:angle=alfa0-V0*(t-T0);
waitSx/
posiziona
waitTavolaen:verifica=1;
suTavolaen:verifica=0;pezzo=1;
prelevaen:statoS=4;ex:dx=1;sx=0;
[sx==1]
[sx==1]
[angle<=alfa0-rif]
[sx==0]
[dx==1]
[((stato==2)|(statoS==2)|(statoS==3))&(angle>=3.14)&(angle<=3.15)]
[posOk==1]
[(stato==2)&(contrPezzo==1)]
[(statoS==3)&(contrPezzo==1)]
[ciclo==2]/rif=3.71
[ciclo==1]/rif=4.71
[ciclo==2]/rif=3.71
(For context see C1 p2)Source prelievoAssemblatoS33 p12 Dest posizionaS10 p6
TRANSITION T47
Parent ChartC1 p2
[mantieni==0]
pezzoAfferratoen:pezzo=0;stato=2;ex:dx=1;sx=0;
robotok/Chart 23
(For context see C1 p2)Source pezzoAfferratoS19 p8 Dest pezzoAfferratoS19 p8
TRANSITION T48
Parent ChartC1 p2
[ciclo==1]/rif=4.71
posiziona
[ciclo==2]/rif=3.71
(For context see C1 p2)Source J4C1 p2 Dest posizionaS10 p6
TRANSITION T49
Parent ChartC1 p2
Label [statoS==2]
[statoS==2]
posiziona
pezzoAfferratoen:pezzo=0;stato=2;ex:dx=1;sx=0;
lasciatoen:pezzo=0;stato=3;dx=0;sx=1;ex:statoR=1;
FineSaldaturaen:attendi=1;
AzzeraPinzaen:attendi=0;rifR=0;statoS=2;
prelievoAssemblatostatoS=3;ex:dx=1;sx=0;
[mantieni==1]/rif=3.14
[(stato==2)&(contrPezzo==1)]
/rif=3.14;[tipopezzo==0]{pezzoA=pezzoA-1}
[tipopezzo==1]{pezzoB=pezzoB-1}
[mantieni==0]
(For context see C1 p2)Source posSicurezzaRSS20 p9 Dest prelievoAssemblatoS33 p12
TRANSITION T51
Parent ChartC1 p2
robotok/Chart 24
[contrPezzo==1]
Saldaturaen:p=0;pezzo=0;pos=10;pos1=10.1;rifS=0;ciclo=ciclo+1;
RSsuTavolaen:verifica=0;pezzo=1;
[(statoS==1)&(posOk==1)]
(For context see C1 p2)Source RSsuTavolaS22 p9 Dest SaldaturaS23 p10
TRANSITION T52
Parent ChartC1 p2
[mantieni==1]/rif=3.14
posiziona
(For context see C1 p2)Source pezzoAfferratoS19 p8 Dest posizionaS10 p6
TRANSITION T53
Parent ChartC1 p2
[contrPezzo==1]
suNastroen:verifica=0;pezzo=1;statoS=5;
lascioSuPalleten:pezzo=0;dx=0;sx=1;rif=4.71
(For context see C1 p2)Source suNastroS21 p9 Dest lascioSuPalletS27 p10
TRANSITION T54
Parent ChartC1 p2
[ciclo==2]/rif=3.71
posiziona
[ciclo==1]/rif=4.71
(For context see C1 p2)Source J4C1 p2 Dest posizionaS10 p6
robotok/Chart 25
TRANSITION T55
Parent ChartC1 p2
/rif=3.14;
posiziona
(For context see C1 p2)Source J5C1 p2 Dest posizionaS10 p6
TRANSITION T56
Parent ChartC1 p2
[((stato==2)|(statoS==2)|(statoS==3))&(angle>=3.14)&(angle<=3.15)]
waitTavolaen:verifica=1;
(For context see C1 p2)Source posizionaS10 p6 Dest waitTavolaS31 p12
TRANSITION T57
Parent ChartC1 p2
[p==5]/rifS=0
Saldaturaen:p=0;pezzo=0;pos=10;pos1=10.1;rifS=0;ciclo=ciclo+1;
FineSaldaturaen:attendi=1;
(For context see C1 p2)Source SaldaturaS23 p10 Dest FineSaldaturaS28 p11
TRANSITION T59
Parent ChartC1 p2
[tipopezzo==0]{pezzoA=pezzoA-1}
lasciatoen:pezzo=0;stato=3;dx=0;sx=1;ex:statoR=1;
(For context see C1 p2)Source lasciatoS30 p11 Dest J5C1 p2
robotok/Chart 26
TRANSITION T60
Parent ChartC1 p2
[tipopezzo==1]{pezzoB=pezzoB-1}
(For context see C1 p2)Source lasciatoS30 p11 Dest J5C1 p2
TRANSITION T61
Parent ChartC1 p2
[posOk==1]
waitTavolaen:verifica=1;
suTavolaen:verifica=0;pezzo=1;
(For context see C1 p2)Source waitTavolaS31 p12 Dest suTavolaS32 p12
TRANSITION T62
Parent ChartC1 p2
[(fatto==1)&(pinza<=0)]
FineSaldaturaen:attendi=1;
AzzeraPinzaen:attendi=0;rifR=0;statoS=2;
(For context see C1 p2)Source FineSaldaturaS28 p11 Dest AzzeraPinzaS34 p13
TRANSITION T63
Parent ChartC1 p2
[(stato==2)&(contrPezzo==1)]
lasciatoen:pezzo=0;stato=3;dx=0;sx=1;ex:statoR=1;
(For context see C1 p2)Source suTavolaS32 p12 Dest lasciatoS30 p11
robotok/Chart 27
TRANSITION T64
Parent ChartC1 p2
[(statoS==3)&(contrPezzo==1)]
waitTavolaen:verifica=1;
suTavolaen:verifica=0;pezzo=1;
prelevaen:statoS=4;ex:dx=1;sx=0;
(For context see C1 p2)Source suTavolaS32 p12 Dest prelevaS29 p11
DATA LOCAL double T0 (D5)
Parent ChartC1 p2
DATA LOCAL double V0 (D6)
Parent ChartC1 p2
Init Val 0.5
DATA OUTPUT double accendi (D34)
Parent ChartC1 p2
DATA LOCAL double alfa0 (D7)
Parent ChartC1 p2
DATA OUTPUT double angle (D4)
Parent ChartC1 p2
DATA INPUT double angleRS (D24)
Parent ChartC1 p2
DATA INPUT double angleT (D22)
Parent ChartC1 p2
robotok/Chart 28
DATA LOCAL double app (D1)
Parent punti1234S24 p10
DATA LOCAL double app (D33)
Parent ChartC1 p2
DATA OUTPUT double attendi (D29)
Parent ChartC1 p2
DATA INPUT double caricata (D8)
Parent ChartC1 p2
DATA LOCAL double ciclo (D35)
Parent ChartC1 p2
DATA INPUT double contrPezzo (D15)
Parent ChartC1 p2
DATA LOCAL double dx (D3)
Parent ChartC1 p2
DATA INPUT double fatto (D31)
Parent ChartC1 p2
DATA INPUT double mantieni (D17)
Parent ChartC1 p2
DATA LOCAL double p (D28)
Parent ChartC1 p2
robotok/Chart 29
DATA OUTPUT double pezzo (D16)
Parent ChartC1 p2
DATA LOCAL double pezzoA (D10)
Parent ChartC1 p2
DATA LOCAL double pezzoB (D11)
Parent ChartC1 p2
DATA INPUT double pinza (D27)
Parent ChartC1 p2
DATA LOCAL double pos (D25)
Parent ChartC1 p2
DATA LOCAL double pos1 (D26)
Parent ChartC1 p2
DATA INPUT double posOk (D14)
Parent ChartC1 p2
DATA LOCAL double rif (D12)
Parent ChartC1 p2
DATA OUTPUT double rifR (D23)
Parent ChartC1 p2
DATA OUTPUT double rifS (D32)
Parent ChartC1 p2
robotok/Chart 30
DATA OUTPUT double rifT (D21)
Parent ChartC1 p2
DATA OUTPUT double sensore (D9)
Parent ChartC1 p2
DATA INPUT double spegni (D36)
Parent ChartC1 p2
DATA LOCAL double stato (D18)
Parent ChartC1 p2
DATA LOCAL double statoR (D19)
Parent ChartC1 p2
DATA LOCAL double statoS (D30)
Parent ChartC1 p2
DATA LOCAL double sx (D2)
Parent ChartC1 p2
DATA LOCAL double tipopezzo (D20)
Parent ChartC1 p2
DATA OUTPUT double verifica (D13)
Parent ChartC1 p2
robotok/Chart 31
INDEX
ChartsChartC1 p2
StatesAzzeraPinzaS34 p13
caricaRastrellieraS2 p3
FineSaldaturaS28 p11
invioPalletS8 p5
lasciatoS30 p11
lascioSuPalletS27 p10
pezzoAfferratoS19 p8
posizionaS10 p6
posSicurezzaS1 p3
posSicurezzaRSS20 p9
prelevaS29 p11
prelievoAssemblatoS33 p12
punti1234S24 p10
punto5S23 p10
resetTavolaS4 p4
RSsuTavolaS22 p9
ruotaTavola0S9 p5
ruotaTavola180S5 p4
ruotaTavola90S7 p5
SaldaturaS23 p10
standbyS10 p6
suNastroS21 p9
suRastrellieraS16 p7
suTavolaS32 p12
turnDxS10 p6
turnSxS13 p6
waitS3 p3
waitDxS10 p6
waitNastroS17 p8
waitRitornoS6 p4
waitRSS18 p8
waitSaldaturaS23 p10
waitSxS10 p6
waitTavolaS31 p12
Events
DataaccendiD34 p28
alfa0D7 p28
angleD4 p28
angleRSD24 p28
angleTD22 p28
appD1 p29
appD33 p29
attendiD29 p29
caricataD8 p29
cicloD35 p29
contrPezzoD15 p29
dxD3 p29
fattoD31 p29
mantieniD17 p29
pD28 p29
pezzoD16 p30
pezzoAD10 p30
pezzoBD11 p30
pinzaD27 p30
posD25 p30
pos1D26 p30
posOkD14 p30
rifD12 p30
rifRD23 p30
rifSD32 p30
rifTD21 p31
sensoreD9 p31
spegniD36 p31
statoD18 p31
statoRD19 p31
statoSD30 p31
sxD2 p31
T0D5 p28
tipopezzoD20 p31
V0D6 p28
verificaD13 p31
robotok/Chart 32