11/12/2009
Analisi di modelli GRAFCET tramite
generazione automatica dell’automa
temporizzato equivalente
Cristiano Poddie
Tesi di laurea specialistica in
Ingegneria Elettronica
Università degli Studi di Cagliari – DIEE
ENS Cachan - LURPA
Relatori:
Prof. J.M. ROUSSEL
Prof. Alessandro Giua
Indice
Analisi di modelli GRAFCET tramite generazione
automatica dell’automa temporizzato equivalente

Introduzione
•
•
•
•

Il grafo delle configurazioni stabili accessibili
•
•
•
•

Definizione
Configurazioni
Evoluzioni
Costruzione del GASC
- Albero delle configurazioni accessibili
Automa temporizzato
•
•

PLC, SFC e GRAFCET
Presentazione del problema
Differenze tra GRAFCET e automa temporizzato
Approccio utilizzato
Costruzione
Analisi
Conclusioni
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
2
Introduzione
PLC, SFC e GRAFCET

PLC
•

SFC
•

Controllore a logica
programmabile
- Utilizzato nell’industria per il
controllo dei processi produttivi
Linguaggio di programmazione
- Linguaggio grafico, concetto di
stato, causa, effetto,
temporizzazioni
- Deriva dal linguaggio GRAFCET
GRAFCET
•
Linguaggio di modellazione
- Descrive il comportamento di un
sistema
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
3
Introduzione
Presentazione del problema
 Obiettivo
• Stabilire un metodo che consenta di descrivere il comportamento di un grafcet tramite
un automa temporizzato equivalente
 Motivazioni
• GRAFCET
- linguaggio di modellazione molto completo e semplice da usare ma per il quale
non sono disponibili molti strumenti di analisi
• Automa temporizzato
- formalismo ampiamente studiato e per il quale sono disponibili diversi mezzi di
analisi
 Approccio utilizzato
• Modellazione realizzata tramite grafcet
• Generazione automatica dell’automa temporizzato
• Analisi dell’automa temporizzato ottenuto
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
4
Introduzione
Differenze GRAFCET/automa temporizzato
 Grafcet
• Più fasi attive simultaneamente
• Scatto simultaneo di più transizioni
• Approccio orientato alla condizione o
all’evento
• Differenti forme e applicazioni delle
temporizzazioni
 Automa temporizzato
• Solo uno stato attivo
• Un solo evento per volta
• Approccio orientato solo agli eventi
• Temporizzazioni: guardie, invarianti e
reset
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
5
Introduzione
Approccio utilizzato:
Passaggio per un modello intermedio
 Perché un modello intermedio?
• Per semplificare il meccanismo di costruzione
- Ricercare gli stati stabili raggiungibili e le evoluzioni del grafcet
- Rappresentare gli stati e le evoluzioni tramite l’automa temporizzato
 Informazioni contenute nel modello intermedio
• Informazioni necessarie all’analisi delle evoluzioni del grafcet
- Situazioni, uscite emesse successioni di scatti simultanei di transizioni
• Informazioni necessarie per l’automa temporizzato
- Eventi, guardie, invarianti e operazioni sugli orologi
 Modello utilizzato
• Estensione del grafo delle situazioni stabili accessibili
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
6
Grafo delle Configurazioni Stabili Accessibili
Grafo delle Configurazioni Stabili Accessibili (GASC)

Composizione
•

Macchina mono-stato
- Stato: configurazione stabile del
grafcet
- Evoluzione: passaggio da una
configurazione stabile ad
un’altra
- Tempo: livello logico
Configurazione del Grafcet
•
•
•
•
Situazione del grafcet
- Insieme di fasi attive
Stato delle temporizzazioni
- Insieme di temporizzazioni
scadute
Stato delle uscite
- Insieme delle uscite attive
Condizione di invarianza
Set di fasi attive
Set di
temporizzazioni
scadute
Set di uscite attive
Condizione di
invarianza
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
7
Grafo delle Configurazioni Stabili Accessibili
GASC: Evoluzioni

Configurazione del grafcet
•
•
•

Situazione del grafcet
Stato delle temporizzazioni
Stato delle uscite
Evoluzioni tra le configurazioni
•
•
•
Condizione di evoluzione
- Condizione (o evento) che devono
rispettare gli ingressi e le
temporizzazioni
Dettaglio dell’evoluzione
- Lista ordinata degli insiemi di
transizioni che scattano
Operazioni sugli orologi
Operazioni sugli
orologi
Lista ordinata di
insiemi di transizioni
Causa
dell’evoluzione
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
8
Grafo delle Configurazioni Stabili Accessibili
Costruzione del GASC
 Tecnica proposta
• Costruire l’albero delle configurazioni
accessibili (TAC) per ogni
configurazione stabile raggiungibile
- Radice: configurazione stabile da
analizzare
- Nodo: configurazione raggiunta da
analizzare
- Foglia: configurazione stabile
raggiungibile
TAC
GASC
• Riportare sul GASC le evoluzioni
stabili
- Tra radici e foglie
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
9
Albero delle configurazioni accessibili
TAC: Radice

Informazioni date
•

Configurazione stabile da analizzare
Informazioni da calcolare
•
•
•
•
Transizioni che possono scattare
Insiemi di transizioni che possono
scattare simultaneamente (con la
relativa condizione)
- per ogni insieme un evoluzione
Evoluzioni dovute al tempo
Condizione di invarianza
- Condizione booleana su ingressi
e temporizzazioni per cui la
configurazione è stabile
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
10
Albero delle configurazioni accessibili
TAC: nodo intermedio

Informazioni date
•
•

Configurazione raggiunta
Variazioni di ingressi e
temporizzazioni per cui è stata
raggiunta la configurazione
Informazioni da calcolare
•
•
Transizioni che possono scattare
Insiemi di transizioni che possono
scattare
•
Condizione di stabilità
- Per le situazioni raggiunte
almeno parzialmente stabili
Foglia
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
11
Automa temporizzato
Automa temporizzato: costruzione

Stato
•

Per ogni configurazione stabile uno stato
dell’automa temporizzato
- Invariante ← Condizione di stabilità
sulle temporizzazioni
Transizione
•
Per ogni evoluzione del GASC una
transizione dell’automa temporizzato
- Condizione di transizione ←
condizione di evoluzione sugli
ingressi
- Guardia:
• associare ad ogni espressione
d/Xi una guardia xi ≥ d
• Associare ad ogni espressione
d/Xi la guardia xi < d
- Associare, se necessario, dei reset
per gli orologi
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
12
Automa temporizzato
Analisi dell’automa
 Studio della raggiungibilità
• Verificare tramite software dedicato (per esempio UPPAAL) la
raggiungibilità degli stati dell’automa
• Verificare quali evoluzioni possono essere effettuate dall’automa
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
13
Automa temporizzato
Semplificazione del GASC
•
•
•
Se uno stato non è raggiungibile dall’automa eliminare la configurazione dal
GASC
Se un’evoluzione non può essere effettuata dall’automa eliminare il relativo arco
dal GASC
Condizione necessaria e sufficiente per la raggiungibilità
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
14
Conclusioni
Conclusioni

Grafo delle Configurazioni Stabili Accessibili
•

Rappresentazione completa ma compatta
- Solo le configurazioni stabili sono riportate
- Tutte le informazioni sulle possibili evoluzioni sono riportate
Risultati di questo lavoro
•
•
•
Un approccio per l’analisi di grafcet temporizzati
- Visione logica del tempo
• Grafo delle Configurazioni Stabili Raggiungibili
- Visione fisica del tempo
• Costruzione dell’automa temporizzato e analisi del grafo delle regioni
Un algoritmo per ottenere automaticamente il GASC
- Implementato su Python e attualmente in uso presso il laboratorio LURPA
Probabile pubblicazione nel corso dell’anno 2010
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
15
Grazie per la vostra attenzione
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
16
Approfondimenti
Esempio pratico (1)

Sistema di distribuzione
acqua
•
•
•

Comportamento
•
•

Un serbatoio
6 valvole
2 pompe
Le pompe si alternano ogni 24 ore
Temporizzazioni nell’avvio pompe e
apertura valvole
Analisi
•
•
•
Le operazioni vengono eseguite
nell’ordine richiesto?
Esistono situazioni di pericolo?
Analisi manuale impossibile
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
17
Approfondimenti
Esempio pratico (2)

Modello in GRAFCET
•

Analisi manuale impossibile
Risultati ottenuti con
l’algoritmo utilizzato
•
•
•
•
•
32 configurazioni raggiungibili
Nessuna instabilità
670 evoluzioni possibili
Nessuna situazione di pericolo
Tempo impiegato: 15 secondi
circa su P4 2,4GHz
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
18
Approfondimenti
TON sugli ingressi
F
1
t1
a
tF
1s/a
T
2
a ∙ 1sec/X1
tTa
V
1s/a ← XV ∙ a + XT ∙ a ∙ 1sec/X1
tV
tTb
a
a
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
19
Approfondimenti
Non simultaneità tra eventi di ingresso ed eventi dovuti
alle temporizzazioni
•
•
p.d.f.(e)
p.d.f.: probability density
function
e: evento ‘variazione degli
ingressi’
t
1s/Xi
•
1s/Xi: temporizzazione sulla
fase i
•
hi: orologio associato alla fase i
t
hi (sec)
1
T(A)
T(A+1)
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
t
20
Approfondimenti
Esempio di utilizzo di UPPAAL (1)
Grafcet analizzato
•
•
specifiche:
- O2 deve essere emessa
- O2 e O3 non devono mai
essere emesse
simultaneamente
Impossibile un’analisi
manuale
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
21
Approfondimenti
Esempio di utilizzo di UPPAAL (2)
Grafo delle configurazioni stabili raggiungibili
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
22
Approfondimenti
Esempio di utilizzo di UPPAAL (3)
Automa temporizzato equivalente
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
23
Approfondimenti
Esempio di utilizzo di UPPAAL (4)
 Linguaggio UPPAAL
• Implementazione di query
 Query implementate
• Raggiungibilità degli stati
• Possibilità di evoluzione
• Presenza di deadlock
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
24
Approfondimenti
Esempio di utilizzo di UPPAAL (5)
GASC semplificato
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
25
Approfondimenti
Esempio di GRAFCET con instabilità totale
Instabilità totale
• Lo stesso insieme di transizioni scatta
due volte
 Costruzione dell’albero delle
configurazioni accessibili
• Nella costruzione individuiamo la
seguente sequenza:
- <{t3}, {t2}, {t1}, {t2}>
• L’instabilità totale viene riportata
all’analista insieme alla causa.
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
26
Approfondimenti
Definizione formale del Grafo delle Configurazioni Stabili
Accessibili
Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente
27
Scarica

Slides - Dipartimento di ingegneria elettrica ed elettronica