SFC r l · programmazione dei PLC nello standard IEC 1131-3 con il ... (Ladder Logic) per poter...

48
Stefano Panzieri SFC - 1 Reti e Sistemi per l’Automazione SFC Sequential Functional Chart

Transcript of SFC r l · programmazione dei PLC nello standard IEC 1131-3 con il ... (Ladder Logic) per poter...

Stefano Panzieri SFC - 1

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

SFC

Sequential Functional Chart

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 2

Sequential Functional Chart

◊ Nel 1975 nasce il GRAFCET◊ GRAPHe de Coordination Etapes Transitions

◊ Nel 1987 è stato adottato come standard internazionale dall’IEC (Comitato Elettrotecnico Internazionale)

◊ Recentemente compreso tra i possibili linguaggi di programmazione dei PLC nello standard IEC 1131-3 con il nome di Sequential Functional Chart (SFC)

◊ Specifico per il controllo dei sistemi ad eventi discreti

◊ Spesso tradotto in un linguaggio a più basso livello (Ladder Logic) per poter essere eseguito su un PLC

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 3

Grafi di stato

◊ Una macchina a stati è particolarmente indicata per la rappresentazione di un programma che svolga funzioni di coordinamento e sequenziamento di azioni elementari

0 1

1,1

0,0

0,1

1,0

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 4

Elementi base di un SFC

◊ Fase◊ Tappa, passo

◊ Condizione invariante del sistema che viene modificata all’occorrenza di un determinato evento

◊ Inattiva: vuota

◊ Attiva: pallino

◊ Xn: marker di fase ◊ True o False

◊ Fase iniziale◊ Doppia cornice

(fase) (azione) (azione)

5 apri valvola 3

10

20 apri valvola 2

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 5

Elementi di base di un SFC

◊ Transizione◊ Tn

◊ Rappresenta una condizione per il passaggio da una fase a quella successiva

◊ Arco orientato◊ Collega tra loro le fasi stabilendone la sequenza ed è sempre

interrotto da una transizione

◊ L’orientamento è indicato con una freccia, omessa se verso il basso

T32 (ok AND T>20) OR NOT abilita

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 6

Importante

◊ Tra due fasi collegate da un arco orientato c’è sempre una transizione

◊ Tra due transizioni c’è sempre almeno una fase

◊ Definizioni◊ Fase a monte di T2

◊ Fase a valle di T2

10

20

T1

T2

T3

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 7

Esempio di SFC

2

5

7

6 3

4

8

accendi

spegni

1

fun1T1

fun2T2

fun3T3

fun4T4

fun8T8

fun7T7

fun6T6

fun9T9

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 8

Regole di evoluzione

◊ Condizione di un SFC◊ L’insieme delle fasi attive

◊ Per definire superabile una transizione◊ Tutte le fasi a monte devono

essere attive

◊ La condizione associata deve essere vera

◊ Se una transizione è superabile:◊ Viene superata

◊ Tutte le fasi a monte vengono disattivate

◊ Tutte le fasi a valle vengono attivate

42 56

71

T23 Ok AND t >20

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 9

Ambiguità #1

◊ La durata delle attivazioni e disattivazioni è considerata infinitamente piccola

◊ Se più transizioni diventano superabili nello stesso istante, esse sono tutte superate contemporaneamente

◊ Differente dalle reti di Petri asincrone nelle quali le transizioni sono superate in sequenza

◊ In certe versioni dell’SFC si supera solo la transizione a priorità più elevata

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 10

Ambiguità #2

◊ Se una fase deve essere attivata e disattivata questa rimane attiva

13

12

11

T4

T5

11

12

13

Fun4 ( = 1 )

Fun5 ( = 1 )

T4

T5

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 11

Esempio del nastro trasportatore

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 12

Sequenze in parallelo

◊ Doppia linea se:◊ Più fasi convergono in una stessa transizione

◊ Più fasi succedono ad una transizione

13 25

615141

T22

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 13

Differenze con le reti di Petri

◊ SFC

◊ Lo stato di una fase di un

SFC è booleano:

◊ Attivo-Disattivo

◊ Tutte le transizioni

simulatenamente

superabili sono superate

◊ Le condizioni di transizione

possono dipendere dallo

stato delle singole fasi

◊ PETRI

◊ Lo stato di una fase è un

numero intero

◊ Numero di attivazioni (marker)

◊ Le transizioni superabili sono

superate con una sequenza

che potrebbe anche non

comprenderle tutte

◊ Le condizioni sono solo

segnali esterni

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 14

Variabili di Ingresso

◊ Ingresso semplice◊ La variabile dell’SFC assume

lo stesso valore (binario) del segnale del sensore

◊ Ingresso a fronte◊ La variabile dell’SFC vale 1

solo in corrispondenza di un fronte di salita (A) o di discesa (A )

t

Segnale A

Variabile A

tA

A

A

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 15

Variabili Temporali

◊ Indicata con t/Xn/d◊ t: variabile temporale

◊ Xn: marker associato alla fase

◊ d: durata della temporizzazione

◊ Assume il valore 0 all’istante iniziale

◊ Rimane 0 quando Xn si attiva

◊ Diventa 1 dopo l’intervallo d

◊ Torna a 0 se la fase si disattiva

tNOT t/Xn/d

t/Xn/d

Xn

dd d

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 16

Esempio utilizzo var. temporale

◊ Preriscaldamento

◊ Watchdog timer

33

34

Scalda motore

parti

t/X33/20sT33

2221 allarme

2 Fuori carrello

t/X2/2sT22Uscito AND NOT t/X2/2sT21

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 17

Watchdog di un ciclo globale

A

101

102 allarme

1 100

Ripristino

sicurezzaT103

t/X101/30sT102X1 AND

NOT

t/X101/30s

T101

X2T100

f15T15

2 B

15 L

f14T14

f1T1

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 18

Tipi di Azioni

◊ Continua◊ Uscita che deve valere 1 per tutta la durata di attivazione della

fase

◊ Non cambia valore se associata a due fasi consecutive

3 A

22 At

A

X22

X3

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 19

Tipi di Azioni

◊ Condizionata

◊ Contiene una condizione di attivazione ulteriore a quella relativa alla fase a cui è associata

3 A

tA

C

X3C

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 20

Tipi di Azioni

3 A

tA

X3NOT t/X3/d

t/X3/d

d

◊ Limitata nel tempo (Condizionata)

◊ Limitata nel tempo se la condizione è una variabile temporale

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 21

Tipi di Azioni

◊ Ritardata

◊ La condizione è data da una variabile temporale associata alla stessa fase a cui è associata l’azione

3 A

tA

X3t/X3/d

t/X3/d

d

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 22

Tipi di Azioni

◊ Impulsiva (limitata nel tempo ad una sola scansione)◊ Dura un tempo infinitamente piccolo

◊ Si indica con A*

◊ Esempi:

◊ Aggiornamento di un contatore

◊ Attivazione di un timer

◊ Calcolo numerico

3 A*

tA*

X3

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 23

Tipi di Azioni

◊ Memorizzata◊ Lo stato della variabile associata permane anche quando la

fase viene disattivata

◊ SET

◊ RESET

3 SET A

46 RESET At

A

X46

X3

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 24

Strutture Classiche

◊ Scelta

2111

1

cond2T2cond1T1

2111

1

cond2T2cond1*cond2T12

cond1T1

◊ Scelta non ambigua

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 25

Strutture Classiche

◊ Convergenza

24

9

T23

18

T15

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 26

Strutture Classiche

◊ Parallelismo

3111

5

T1

21

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 27

Strutture Classiche

◊ Sincronizzazione

3115

100

T33

29

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 28

Strutture Classiche

◊ Mutua esclusione (semaforo) con priorità

71

86

85

72

25

35

34

26

100

T21

T13 T43

T51

cond1not cond1 and cond2

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 29

Strutture Classiche

◊ Sincronizzazione locale

48

45

47

46

T21

T22

T2325

22

24

23

T4

T5

T8

200

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 30

Struttura Errata

◊ Scelta con Sincronizzazione◊ T20 sarà difficilmente superabile ;-)

2111

1

T2T1

2

14 27

T20

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 31

Struttura Ambigua

2111

1

2

14 27

T1

T27T14

◊ Parallelismo con convergenza

◊ La fase 2 rischia di essere attivata due volte

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 32

Esempi: Trapano automatico

4

3 D

S

5 O

2 SET R D

1

6 D

7 S

8 RESET R

yT9

x AND mT2

p AND yT1

xT3

mT4

aT5

t/X5/2sT6

bT7

aT8

b

m

a

y

x

O

S

D

R

p

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 33

Macrofase

◊ Macrofase e relativa espansione

6

4

5M30

I

30

U

30

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 34

Macroazioni

◊ Forzatura◊ Indica l’insieme delle fasi da attivare in un SFC

◊ Valida per tutta la durata della fase associata a meno che non sia impulsiva

4Forzare

G2:{12} 12 A

13 B

a

b

c

11

12 A

13 B

a

b

c

11X4

X4

X4

G2

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 35

Macroazioni

4Forzare

S2:{ } 12 A

13 B

a

b

c

11

12 A

13 B

a

b

c

11X4

X4

X4

Sospensione

Disattiva tutte le fasi in un SFC

S2

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 36

Macroazioni

◊ Bloccaggio

◊ Arresta l’esecuzione di un SFC

4Forzare

S2:{* } 12 A

13 B

a

b

c

11

12 A

13 B

a AND NOT X4

11

b AND NOT X4

c AND NOT X4

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 37

SFC Gerarchico per il controllo del Trapano Automatico

11Forzare

SFC2:{ }

12 S

STOP

10

RESET

a

RESET R

R

13Forzare

SFC2:{1}

T12

=1T13

T11

T10

4

3 D

S

5 O

2 SET R D

1

6 D

7 S

8 RESET R

yT9

x AND mT2

p AND yT1

xT3

mT4

aT5

t/X5/2sT6

bT7

aT8

SFC1 SFC2

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 38

Esempio Taglierina Automatica

Un dispositivo è composto da un nastro trasportatore su cui è disposto un film omogeneo che deve essere tagliato da una taglierina verticale.Il nastro trasportatore è attuato da un motore lineare. Un sensore ottico rileva un segno presente sul film indicante quando è necessario tagliare, mentre due sensori di inizio e fine corsa indicano la posizione della taglierina.

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 39

Esempio Taglierina Automatica

◊ I requisiti funzionali prevedono che:◊ Quando il sensore ottico rileva il segno sul film, deve essere

effettuato il taglio;

◊ Quando la taglierina esegue il taglio, il nastro trasportatore deve essere fermo;

◊ Quando la taglierina viene riportata in condizione di riposo, il nastro trasportatore può essere riattivato

◊ Tre sono i possibili stati ammissibili:◊ Nastro trasportatore acceso, taglierina a riposo;

◊ Nastro trasportatore fermo, taglierina scende per eseguire il taglio;

◊ Nastro trasportatore fermo, taglierina risale

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 40

Esempio Taglierina Automatica

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 41

ESEMPIO Distributore Automatico

◊ Si consideri una macchina distributrice di bibite che sia in grado di riconoscere monete da 0.1, 0.2 e 0.5 Euro e di erogare tre differenti tipi di bibita, A, B e C. La bibita A costa 0.6 Euro, la bibita B ne costa 0.8 e la bibita C costa 1 Euro.

◊ La macchina è dotata di display, sul quale viene visualizzata la stringa “Inserire Monete” fino a quando il cliente non inserisce una prima moneta, dopodichè viene visualizzato l’importo totale inserito. L’utente ha a disposizione i pulsanti di selezione di ciascuna bibita e un pulsante di espulsione monete, con il quale può annullare l’operazione. La macchina infatti non dà resto!

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 42

ESEMPIO Distributore Automatico

◊ Il riconoscimento della moneta viene effettuato da un sottosistema di scansione, il quale fornisce al sistema di controllo principale quattro soli segnali logici: Moneta 01, Moneta 02, Moneta 05, Non Valida. Ad ogni nuova moneta riconosciuta viene aggiornata la somma memorizzata e la mon- eta viene messa in uno scompartimento di pre-incasso, mentre se la moneta non `e valida viene immediatamente espulsa.

◊ Se l’utente preme un tasto di selezione bibita e l’importo introdotto `e sufficiente, la bibita richiesta viene espulsa e le monete vengono incassate definitivamente.La durata minima di apertura degli sportelli di

contenimento bibite e monete della macchina è: 300 ms per lo sportello

dello scomparto dell’ultima moneta inserita; 1 s per lo sportello dello

scomparto di pre-cassa; 2 s per lo sportello degli scomparti contenenti le

bibite.

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 43

ESEMPIO Distributore Automatico

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 44

ESEMPIO Distributore Automatico

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 45

ESEMPIO Girello Automatico

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 46

ESEMPIO Girello Automatico

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 47

ESEMPIO Cella Robotizata

Reti e

Sis

tem

i per

l ’Auto

mazio

ne

Stefano Panzieri SFC - 48

ESEMPIO Cella Robotizata