1 / 27

Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente

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.

rollin
Download Presentation

Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. Indice Analisi di modelli GRAFCET tramite generazione automatica dell’automa temporizzato equivalente • Introduzione • PLC, SFC e GRAFCET • Presentazione del problema • Differenze tra GRAFCET e automa temporizzato • Approccio utilizzato • Il grafo delle configurazioni stabili accessibili • Definizione • Configurazioni • Evoluzioni • Costruzione del GASC • Albero delle configurazioni accessibili • Automa temporizzato • Costruzione • Analisi • Conclusioni

  3. Introduzione PLC, SFC e GRAFCET • PLC • Controllore a logica programmabile • Utilizzato nell’industria per il controllo dei processi produttivi • SFC • 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

  4. 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

  5. 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 Introduzione Differenze GRAFCET/automa temporizzato

  6. 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

  7. 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 temporizzazioni scadute Set di fasi attive Set di uscite attive Condizione di invarianza

  8. 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 Lista ordinata di insiemi di transizioni Causa dell’evoluzione Operazioni sugli orologi

  9. TAC GASC 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 • Riportare sul GASC le evoluzioni stabili • Tra radici e foglie

  10. 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

  11. 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

  12. 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

  13. 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

  14. 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à

  15. 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

  16. Grazie per la vostra attenzione

  17. Approfondimenti Esempio pratico (1) • Sistema di distribuzione acqua • Un serbatoio • 6 valvole • 2 pompe • Comportamento • 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

  18. 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

  19. Approfondimenti TON sugli ingressi F 1 a tF t1 1s/a T 2 tTa a ∙ 1sec/X1 V tTb a 1s/a ← XV ∙ a + XT ∙ a ∙ 1sec/X1 tV a

  20. Approfondimenti Non simultaneità tra eventi di ingresso ed eventi dovuti alle temporizzazioni • p.d.f.: probability density function • e: evento ‘variazione degli ingressi’ • 1s/Xi: temporizzazione sulla fase i • hi: orologio associato alla fase i p.d.f.(e) t 1s/Xi t hi (sec) 1 t T(A) T(A+1)

  21. 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

  22. Approfondimenti Esempio di utilizzo di UPPAAL (2) Grafo delle configurazioni stabili raggiungibili

  23. Approfondimenti Esempio di utilizzo di UPPAAL (3) Automa temporizzato equivalente

  24. Approfondimenti Esempio di utilizzo di UPPAAL (4) • Linguaggio UPPAAL • Implementazione di query • Query implementate • Raggiungibilità degli stati • Possibilità di evoluzione • Presenza di deadlock

  25. Approfondimenti Esempio di utilizzo di UPPAAL (5) GASC semplificato

  26. 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.

  27. Approfondimenti Definizione formale del Grafo delle Configurazioni Stabili Accessibili

More Related