Dipartimento di Ingegneria Elettrica ed Elettronica
Università di Cagliari, Italy


Insegnamento: Automi e reti di Petri
Crediti/Ore: 5 crediti, 50 ore
Docente: Alessandro Giua - email: giua@unica.it
Ufficio: DIEE pad B, 3º piano.   Tel: 070-675-5751
Pagina web: https://www.alessandro-giua.it/UNICA/ARP

Il corso intende fornire un insieme di strumenti formali per la modellistica, la verifica e il controllo dei sistemi ad eventi discreti logici. Tra gli argomenti trattati: automi deterministici e non deterministici, espressioni e linguaggi regolari, controllo supervisivo, osservatori e diagnosi di guasto, reti di Petri, controllo mediante posti monitor.

Il corso si è tenuto dal 2001 al 2018. I contenuti della prima parte del corso (automi e linguaggi; controllo supervisivo) sono offerti a partire dal 2020 nel nuovo corso Analysis and Control of Cyber-physical Systems (in inglese).


Programma

  1. Presentazione del corso. (lezioni: 2 ore )
    Introduzione ai sistemi ad eventi discreti e loro classificazione.
  2. Automi e linguaggi (lezioni: 10 ore, esercitazioni: 6 ore)
    Introduzione alla teoria dei linguaggi formali. Automi finiti deterministici (AFD). Automi finiti non deterministici (AFN). Determinazione di un AFD equivalente ad un dato AFN. Minimizzazione di un AFD. Espressioni regolari. Calcolo dell'espressione regolare equivalente ad un dato AFD. Diagnosi mediante automi (cenni).
  3. Controllo supervisivo (lezioni: 6 ore, esercitazioni: 2 ore) 8 ore Definizione di sistema e proprietà. Operatori su linguaggi e su automi: sincronizzazione, proiezione e composizione concorrente. Supervisore funzione e supervisore sistema. Proprietà del supervisore. Verifica delle proprietà di un supervisore. Specifiche sul linguaggio e sullo stato. Sintesi di supervisori.
  4. Reti di Petri (lezioni: 12 ore, esercitazioni: 4 ore) 16 ore Introduzione alle reti posto/transizione (P/T). Dinamica delle reti P/T. Esempi di modellazione. Proprietà delle reti P/T: raggiungibilità, limitatezza e conservatività, ripetitività, reversibilità, vivezza. Albero e grafo di raggiungibilità: costruzione e analisi. Albero e grafo di copertura: costruzione e analisi. Analisi mediante l'equazione di stato e insieme potenzialmente raggiungibile. Matrice di incidenza e invarianti di una rete: algoritmo per il calcolo degli invarianti, analisi mediante invarianti della conservatività, ripetitività e raggiungibilità. Classi di reti di Petri: macchine a stati, grafi marcati e reti a scelta libera.
  5. Controllo mediante reti di Petri (lezioni: 4 ore, esercitazioni: 2 ore) 6 ore Specifiche sullo spazio di stato di una rete mediante GMEC, controllo mediante posti monitor e sintesi di monitor in presenza di transizioni incontrollabili.

Testo adottato: A. Di Febbraro, A. Giua Sistemi ad eventi discreti, McGraw-Hill, 2002. Ristampa corretta 2011. Disponibile print-on-demand.

Altro materiale: A. Giua. Notes on the Fault Diagnosis and Diagnosability of Discrete Event Systems. 2016.


Prove intermedie


Esercitazioni


Software

  • Toolbox MATLAB per automi [AUTOMI.ZIP]
  • Software DESUMA per automi (University of Michigan). Il programma DESUMA si può scaricare dalla pagina [http://www.eecs.umich.edu/umdes/toolboxes.html] cliccando sulla voce "DESUMA Software". Bisogna inserire alcuni dati (nome e indirizzo email) per poter scaricare l'eseguibile. Le istruzioni per l'installazione si possono trovare alla pagina:[http://www.eecs.umich.edu/umdes/instructions.html].
  • Petri Net Toolbox [Petri.zip]
    • Istruzioni: (1) Salvare Petri.zip e estrarre la cartella Petri; (2) Aprire MATLAB e cambiare directory portandosi nella cartella Petri con il comando >>cd (nome_path)/Petri ; (3) Dare il comando >>help contents per vedere un elenco delle funzioni.
      N.B: Una rete di Petri è definita dalle due matrici Pre, Post e dalla marcatura iniziale. P.e., la rete in figura 4.16 del libro si definisce coi comandi: Pre= [1 0 0; 0 1 1; 0 0 0]; Post=[0 1 0; 1 0 0; 0 0 1]; M0 = [1 1 0]'.
    • Manuale in italiano sull'uso della funzione [plottree] (2003)
    • Manuale in [italiano / inglese] sull'uso delle funzioni per il controllo mediante GMEC (2001)
    • Manuale in italiano sull'uso della funzione [monitordesign] (2003)
    • Descrizione dei [bachi] conosciuti del pacchetto Petri Net Toolbox (2002)
    • [Es8] del 2002 relativa al Petri Net Toolbox.