- Docente: Gianluca Palli
- Crediti formativi: 6
- SSD: ING-INF/04
- Lingua di insegnamento: Italiano
- Moduli: Gianluca Palli (Modulo 1) Umberto Scarcia (Modulo 2)
- Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
- Campus: Forli
- Corso: Laurea Magistrale in Ingegneria meccanica (cod. 8771)
Conoscenze e abilità da conseguire
Al termine del corso lo studente acquisisce le conoscenze delle principali architetture tecnologiche usate per la realizzazione di sistemi di automazione, con particolare riferimento alle architetture basate su elaboratore digitale e alle relative problematiche di elaborazione "real-time". Lo studente sarà in grado di implementare i regolatori a tempo continuo su sistemi digitali, sviluppando una buona conoscenza delle tecniche e delle problematiche relative alla discretizzazione delle leggi di controllo, ed eseguire il progetto di "controlli logici" (detti anche "software per l'automazione") mediante l'utilizzo dei linguaggi della norma IEC61131-3 e di particolari metodologie di approccio.
Contenuti
Introduzione
- Automazione: definizione ed esempi
- Funzione vs. Implementazione
- Dal controllo analogico tempo continuo al controllo digitale tempo discreto
- Introduzione al controllo logico e automi a stati finiti
Controllo analogico tempo continuo
- Spazio degli stati
- Raggiungibilità, osservabilità, scomposizioni canoniche
- Linearizzazione
- Legame spazio degli stati e funzione di trasferimento
Controllo digitale tempo discreto
- Schema funzionale di un anello di controllo digitale
- Differenze principali con controlli a tempo continuo
- La trasformata Z
- Criteri per la scelta del tempo di campionamento
- Discretizzazione dei regolatori a tempo continuo
- Dalla trasformata di Laplace alla trasformata Z
- Esempio di discretizzazione di un semplice regolatore PID con metodo di Eulero in avanti
- Implementazione della equazione alle differenze su calcolatore elettronico
Controllo Logico
- Introduzione alla progettazione di controlli logici
Lo standard IEC 61131-3 - strumenti e linguaggi di programmazione
- organizzazione del software (POUs), function,s function block, program
- overview linguaggi di programmazione: LD, IL, ST, FBD, SFC
- Approfondimento del linguaggio SFC: concetti di base, sintassi e strutture, azioni, esempi
- Considerazioni sulla implementazione e sul modello di esecuzione
- costrutti avanzati: parallelismo, scelta alternativa, semafori, sincronizzazione di sequenze
- Ambiente CoDeSys
- Peculiarità di CoDeSys per la implementazione del linguaggio SFC
- Simulazione di controlli logichi
- Esempi semplici di "SFC program"
- Esempio: imbottigliatrice
Automi a stati finiti
- Progetto di automi per il controllo di macchine automatiche
- Incidenza del progetto software
- Dalle specifiche funzionali al modello formale
- Implementazione dell’automa in ambiente PLC
- Diagnostica dei malfunzionamenti
- Pattern per la riusabilità del codice
- Generic Device
Architetture e Tecnologie per i sistemi di controllo
- Schema funzionale generale per un sistema di controllo
- Relazioni tipiche tra controlli di sequenze e controlli di variabili temporali (relazioni gerarchiche)
- Schema architetturale generale per un sistema di controllo
- Componenti dello schema tecnologico generale
- Linee guida per mappare schema funzionale in schema tecnologico
- Caratteristiche generali dei microcontrollori
- Caratteristiche generali dei DSP e impieghi tipici nell'automazione
- Cenni su FPGA
- Tipologie di Elaboratori Digitali Real Time per il Controllo
- Controllori embedded
- Controllori industriali: DCS e PLC
- Cenni alle differenze tra industria di processo e industria manufatturiera
- Considerazioni generai sull'ambito di utilizzo dei controllori embedded e industiali
- Programmable Logic Controllers
- Modello di esecuzione del PLC in relazione ai sistemi operativi real time
Sistemi Real-Time
- Concetti base: correttezza temporale, hard/soft real time, real time stretto / largo
- Applicazioni ad eventi per sistemi real-time
- Classi di attività trasformazionali / reattive
- Tipologie di eventi periodici, sporadici
- Problematiche di esecuzione parallela nei sistemi real time
- schedulazione e schedulabilità RT
- task interegenti e non interagenti
- stato di un task RT rispetto alla schedulazione (ready / running / inactive / blocked)
- Algoritmi di scheduling per task trasformazionali ciclici
definizioni e tipologie (tipi di priorità, online vs offline) - algoritmi: FIFO, RMPO, EDF, cyclic executive
- condizioni sufficienti per schedulabilità mediante RMPO ed EDF, confronto tra EDF e RMPO, task di tipo armonico
- esempi di test di schedulabilità con differenti algoritmi
- Relazioni tra i Sistemi di Controllo e i Sistemi Real Time
- Sistemi Operativi per elaborazione Real Time
- Modello di esecuzione
- Approccio Time Driven (single / multi task, scelta del tempo di scansione per attività trasformazionali e pseudo-trasformazionali clicliche, tempi di scansione singoli / multipli)
- Approccio Event Driven
- Sistemi Operativi Real-Time: gestione task interagenti
- comunicazione tra task
- gestione risorse condivise: semafori
- problemi del deadlock e della inversione di priorità
Testi/Bibliografia
Bonivento, Gentili, Paoli, , "Sistemi di automazione industriale - architetture e controllo", McGraw-Hill, 2006
Bonfatti, Monari, Sampieri, "IEC 1131-3 Programming Methodology", CJ International, Le Saint Georges, France .
Chiacchio, Basile, "Tecnologie informatiche per l'automazione", seconda edizione, Mc Graw Hill
Laplante, Ovaska, "Real-Time Systems Design and Analysis: Tools for the Practitioner", Wiley, 2011
Metodi didattici
- Lezioni frontali
- Esercitazioni in laboratorio
Modalità di verifica e valutazione dell'apprendimento
Discussione dei progetti sviluppati dagli studenti
Orario di ricevimento
Consulta il sito web di Gianluca Palli
Consulta il sito web di Umberto Scarcia