Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea...

85
Sistemi e Tecnologie per l'Automazione LS Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica Laurea Specialistica in Ingegneria Elettronica e delle Telecomunicazioni Revisionato il 27/01/2009 Revisionato il 27/01/2009 Ing. Andrea Tilli DEIS - Università di Bologna Tel. 051-2093924 E-mail: [email protected] http://www-lar.deis.unibo.it/atilli

Transcript of Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea...

Page 1: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Sistemi e Tecnologie per l'Automazione LS

Controllo Logico nell’Automazione Industriale

Laurea Specialistica in Ingegneria InformaticaLaurea Specialistica in Ingegneria Elettronica e delle Telecomunicazioni

Revisionato il 27/01/2009Revisionato il 27/01/2009Revisionato il 27/01/2009

Ing. Andrea TilliDEIS - Università di Bologna

Tel. 051-2093924E-mail: [email protected]

http://www-lar.deis.unibo.it/atilli

Page 2: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 2

Sommario

PremessaControllo logico nell’automazione

→ “storicamente” visto da un punto di vista implementativo/tecnologico non funzionale

a differenza dei controlli diretti di variabili temporali (tempocontinui e tempodiscreti)

Spesso indicato come:

→ Programmazione di sistemi di controllo perl’automazione (tipicamente PLC)

→ SW per l’automazione

Page 3: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 3

Sommario

Parte 1Introduzione alla progettazione di controlli logici (o di sequenze o sequenziali)

Linee guida generali

Qualche dettaglio in più su progetto tecnologico e realizzazione

Lo standard IEC 61131-3strumenti e linguaggi di programmazione

Sequential Function Chart (SFC)concetti base

sintassi

strutture

Page 4: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 4

Sommario

Parte 2Sequential Function Chart (SFC)

esempi di utilizzo delle strutture

Altri linguaggi della norma IEC 61131-3

Da un SFC alla Programmazioneuna possibile soluzione

CoDeSysIntroduzione all’uso, Peculiarità, Esempi

Una procedura per la progettazione funzionale del controllo di sequenze

Concetto base: attuatore generalizzato

Page 5: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 5

Generalità sulProgetto di Controlli Logici

Page 6: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 6

Progettazione di Controlli LogiciIntroduzione

La progettazione del Controllo di Sequenze per un Sistema Industriale è un compito complesso

Verranno presentati, in modo intuitivo e non formale, i passi logici della soluzione

Chiarimento del compito e strutturazione del sistemaProgetto funzionale:Definizione automa per imporre la sequenza volutaProgetto implementativo/tecnologico:Elaborazione dei documenti di specificaCenni sulla realizzazione del ProgettoCollaudo del sistema di controllo e messa in funzione della macchinaStesura della documentazione

Page 7: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 7

Progettazione di Controlli LogiciChiarimento del compito e strutturazione del

sistemaDescrizione generale del sistema da automatizzareDescrizione del funzionamento che si vuole ottenereDescrizione dettagliata del sistema

Grado di automazione delle partitutto senza operatore?

Definizione di cosa misurare e di come e dove attuareInterconnessione con CONTROLLI DIRETTI DI VAR. TEMPORALI… spesso già fissato a priori….

Strutturazione della macchina in parti omogeneefunzionalmente

correlazione nel processo produttivo/operativospazialmente

collocazione fisica adiacente

Page 8: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 8

Progettazione di Controlli LogiciDescrizione del processo

impacchettatrice

AlimentazioneAlimentazionedel prodottodel prodotto

Formazione Formazione del paccodel pacco

Stesura del film e Stesura del film e movimentazione del paccomovimentazione del pacco

AvvolgimentoAvvolgimentodel paccodel pacco

SaldaturaSaldatura EspulsioneEspulsionePacco finitoPacco finito

Page 9: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 9

Progettazione di Controlli LogiciProgetto Funzionale

Dalla descrizione di funzionamentoDalla struttura di massima

Grado di automazioneDove attuare e misurareInterconnessione con CONTROLLI DIRETTI

Definizione di Automa o di Automi interagenti per imporre la sequenza volutaMa:

Quale linguaggio per descriverlo?Vedi dopo

Documento fondamentaleSpesso omesso…

NB: il progetto del controllo logico, in senso stretto, finirebbe qui…

Page 10: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 10

Progettazione di Controlli Logici: il seguito

Elaborazione dei documenti di specifica delle parti(Inizio del Progetto Implementativo)

Cruciale per la buona riuscita del progetto

Mappatura su architettura Hardware/Software dei compitiINSIEME ALLA MAPPATURA DI CONTROLLI DIRETTI

Scelta dei sistemi di elaborazione e mappatura degli automi

Riprogrammabili o cablati?

Scelta di dettaglio dei sensori e degli attuatori

Scelta dei sistemi di comunicazione

… eventuale loop col progetto funzionale…

Già accennato all’inizio del corso

Page 11: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 11

Progettazione di Controlli Logici: il seguito

Elaborazione dei documenti di specifica(Inizio del Progetto Implementativo)

Lavoro di gruppoDiverse persone che si occupano delle diverse parti

sensori/attuatori

elaboratori e implementazione SW

Elaboratori “cablati”

specifiche chiare e non ambigue

interfacce ben definite

Page 12: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 12

Progettazione di Controlli Logici: il seguitoRealizzazione del Progetto

Hardwareacquisto ⇒ controllori industrialiacquisto + progettazione di parti specificheprogettazione completa

Software applicativo Va progettato/realizzato secondo l’automa risultante dal progetto funzionaleDeve tenere in conto delle caratteristiche dell’arch. HW

Elaboratore:- Risorse computazionali- S.O. RT Event Driven o Time Driven?

Applicazione reattiva o ciclica pseudotrasformazionale?Caratteristiche dei sensori/attuatoriCaratteristiche del sistema di comunicazione/interfacciamentoCaratteristiche degli elaboratori per controllo diretto

Page 13: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 13

Progettazione di Controlli Logici: il seguitoRealizzazione del Progetto

Software applicativo (continuazione)Seguire regole generali per progetto/sviluppo SW per uso professionale/industriale

realizzazionegruppo di lavoro

manutenzione, aggiornamento, riutilizzonoi o altre persone

Attività cruciale

Page 14: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 14

Progettazione di Controlli Logici: il seguitoCollaudo del sistema di controllo e messa in

funzione dell'impiantoFase costosa e delicata

realizzata da altre personerealizzata presso il clienteesigenze di avvio della produzione

tempi e costi dipendono fortemente dalla qualità della fase di progettazione

meglio investire tempo e risorse sulla progettazione che spendere poi nel collaudo e nella messa in servizio

Nella pratica industriale raramente viene seguita questa filosofia per diverse motivazioni, solitamente

non tecniche

Page 15: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 15

Progettazione di Controlli Logici: il seguitoStesura della documentazione

La documentazione è parte integrante e fondamentale di un progetto industriale

un progetto non è completato finché non è corredato da adeguata documentazione

La predisposizione della documentazione va effettuata congiuntamente con lo sviluppo di ogni fase della progettazioneTecniche di progettazione che intrinsecamente producono documentazione sono da privilegiare

CADprogrammazione strutturataSFC(GEMMA)

Page 16: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 16

Progettazione di Ctrl Logici: torniamo all’automaStrumenti di modellazione per il controllo di

sequenze

Come rappresentare l’automa o l’insieme di automi?

Obiettivi della rappresentazione:Elevato potere espressivoComplessità ridottaFacile leggibilitàIndipendenza dall’implementazione

Page 17: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 17

Progettazione di Ctrl Logici: torniamo all’automaStrumenti di modellazione per il controllo di

sequenze:Possibili soluzioni:

descrizione letterale (a parole)lunga, imprecisa, troppo personale

descrizione puramente logicatroppo particolareggiatalegata alla tecnologia implementativa

diagrammi temporalipesantecarenza nella descrizione degli elementi sequenziali

Page 18: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 18

Progettazione di Ctrl Logici: torniamo all’automaStrumenti di modellazione per il controllo di

sequenze:Possibili soluzioni:

diagramma degli statiMolto interessanteConcetto di stato esplicito

Rappresentazione concentrata ed efficace della situazione operativa raggiunta in funzione del passatoRestringe analisi dell’informazione: solo ciò che è interessante in una data condizione operativa

Soluzione “tipo reti logiche”: strumento idoneo per sistemi di modesta complessità perché troppo particolareggiatoIdoneo anche per sistemi complessi con una opportuna ridefinizione del concetto di stato…. SFC…

Page 19: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 19

Lo standard IEC 61131-3

Page 20: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 20

Lo Standard IEC 61131-3

SCOPODefinire linguaggi standard per la programmazione di PLCStimolare una normalizzazione della sintassi dei linguaggi di programmazione per l'automazione

ConsiderazioniParte della norma IEC61131 (1993, recepita in Italia nel 1996, revisione in 2003): standardizzazione PLCIEC61131-1: Definizione PLCIEC61131-2: Architettura HW/SW dei PLC (Real-time Time Driven)IEC61131-3: Linguaggi di programmazione per implementare su PLC i controlli di sequenze

Page 21: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 21

Lo Standard IEC 61131-3

5 linguaggi proposti:Grafici: SFC, LD, FBDTestuali: ST, ILCinque sono tanti!Stesura della norma condizionata dalla precedente pratica industriale…

Linguaggi molto diversi tra loroTengono conto in modo diverso delle caratteristiche del PLC:

Esecuzione sequenzialePLC sistema tipicamente monoprocessore (modello della macchina di Von Neumann)

S.O. Real Time, Time Driven: “ciclo while intrinseco”

Page 22: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 22

Lo Standard IEC 61131-3

Comunque:Tra i diversi linguaggi proposti nella norma ve ne è uno (SFC) che mostra:- elevata potenza espressiva- elevata semplicità e leggibilità

potenziale… necessario corretto utilizzo- scarso legame con l’implementazione

solo in alcuni punti non fondamentali…- NB: addirittura nella norma è tenuto separato dagli altri linguaggi

BUONO PER LA RAPPRESENTAZIONE FUNZIONALE DEL CONTROLLO DI SEQUENZE

Insieme ad alcuni costrutti particolari (Function Blocks, FB), che vedremo in seguito

Page 23: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 23

Lo Standard IEC 61131-3

In seguito (in questo gruppo di lucidi):

Carrellata dei 5 linguaggi

Cenni a tipi di dato e organizzazione del SW secondo la IEC 61131-3

Approfondimento dell’SFC

Page 24: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 24

Lo Standard IEC 61131-3Linguaggio a contatti (Ladder Diagram, LD)

AND( )

E1.0 E1.1 A4.01

( )OR

E1.2

E1.1

A4.12

V+V+ VV--

GraficoRiprende schemi a relayRegole base:

Flusso di potenza da sxverso dxEsecuzione da alto verso bassoFeedback: rete sincrona

NB: Allontanamento da schema a relay:- no esecuzione parallela- no corse critiche- no ambiguità su percorsi

Page 25: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 25

Lo Standard IEC 61131-3Schemi a blocchi funzionali logici

(Function Block Diagram, FBD)

&E1.0E1.1

A4.01

>= 1A4.1

E1.2

E1.12( )( )

( )( )

GraficoRiprende reti logiche cablateRegole base:

Flusso di segnaleEsecuzione dall’alto al bassoFeedback: rete sincrona

NB: Allontanamento da rete logica pura:- no esecuzione parallela- no corse critiche

Page 26: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 26

Lo Standard IEC 61131-3Testo Strutturato

(Structured Text, ST)

…….if (fine_corsa)

thenmotore := off;

else motore := on;

end_if;…….

TestualePseudo Pascal

Costrutti evolutiRegole base:

Nessuna particolareRegole di sviluppo:

Per implementare Ctrldi sequenze: no loop di attesa evanti(sfrutta mappatura in task pseudotrasf. Ciclici, tipica di RTOS time-driven )

Page 27: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 27

Lo Standard IEC 61131-3Lista di istruzioni (Instruction List, IL)

……….LD ENABLEANDN FINE_CORSASTR MOTORE………..

TestualePseudo AssemblyRegole base:

Istruzioni monooperando con uso dell’accumulatore(current result, IL register)

Regole di sviluppo:Per implementare Ctrldi sequenze: no loop di attesa eventi(sfrutta mappatura in task pseudotrasf. Ciclici, tipica di RTOS time-driven )

Page 28: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 28

Lo Standard IEC 61131-3Sequential Function Chart

11

22

33

44

55

StepStep/Fasi/Fasi

TransizioniTransizioni

CondizioniCondizioniper laper la

transizionetransizione

GraficoRappresentazione a diagrammi a stati “evoluto”:

Piu’ step attivi…..

Linguaggio “incompleto”: transizioni e azioni definite per mezzo degli altri Livello di astrazione e capacità rappresentativa elevataDeriva da Grafcet

Page 29: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 29

Lo Standard IEC 61131-3Tipi di Dato

Per tutti e 5 i linguaggiSimili ad altri linguaggi (C, Pascal, etc.):

INT, DINT, REAL, LREAL…Tipi particolari:

Gestione di stringhe di bit:BOOL, BYTE, WORD…

Rappresentativi di date e tempiTIME, DATE, TOD, DT

Indicatore di tipo generico:Per raggruppare diversi tipi:

ANY, ANY REAL…

Manuale Codesys (in seguito) o Libro Bonfatti et al. per dettagli

PeculiaritPeculiaritàà del PLCdel PLC

Page 30: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 30

Lo Standard IEC 61131-3Organizzazione del SW

Obiettivo:Organizzare l’architettura del SW PLCStimolare approccio Top-Down Modularità e Riutilizzo Legato all’implementazione, ma utile anche per progetto funzionale…

Program Organization Units (POUs):FUNCTIONFUNCTION BLOCKPROGRAM

Vedi Libro Bonfatti et al. per approfondimenti

Page 31: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 31

Lo Standard IEC 61131-3Organizzazione del SW

FUNCTIONSProcedure prive di memoria che dati certi IN producono un OUTInvocazione/definizione in linguaggi grafici o testualiPredefinite o customPredefinite:Sono parte degli operatori base di IL, FBD, STSono blocchi particolari per LD

Uso di EN e ENO per garantire “flusso di corrente” in caso di IN-OUT non booleani

EsempiADD, TRUNC, SHL, MAX, GE…Funzioni per ottenere il tempo di sistema

Ma allora i task possono sapere il tempo…. Ma non possono sapere come sarà allocato il tempo CPU.

Manuale Codesys (in seguito) o Libro Bonfatti et al. per dettagli

Page 32: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 32

Lo Standard IEC 61131-3Organizzazione del SW

FUNCTION BLOCKSProcedure con memoria che dati certi IN e lo stato producono uno o più OUTInvocazione/definizione in linguaggi grafici o testualiDiverse Istanze (diversi set di dati di memoria, stato)Predefinite o customEsempi di Predefinite:

Bistabili: SR, RSEdge-detection: R_TRIG, F_TRIGCounters: CTU, CTD, CTUDTimers: TP, TON, TOFF

Manuale Codesys (in seguito) o Libro Bonfatti et al. per dettagli

BasateBasate susu peculiaritpeculiaritàà del PLCdel PLC

Page 33: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 33

Lo Standard IEC 61131-3Organizzazione del SW

PROGRAMSInsieme di unità e/o istruzioni costituiscono l’implementazione del controllo di sequenze di una macchina/impianto o una parte rilevante di essoMacro unità

In generale racchiuderà più Functions e Function Blocks

Manuale Codesys (in seguito) o Libro Bonfatti et al. per dettagli

Page 34: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 34

Lo Standard IEC 61131-3Considerazioni sui linguaggi

Linguaggi testuali IL e ST:Implementazione Ctrl. Seq fortemente legate alla struttura RT time-driven del PLC Leggibilità media per ST e bassa per IL

Linguaggi grafici LD e FBD:Legati a tecnologie implementative, diverse da PLCRegole aggiuntive per adattare a “PLC”

esecuzione non parallelaIn ogni caso: poco astratti e poco leggibili

IL, ST, LD, FBD poco adatti alla rappresentazione funzionale del controllo di sequenze

Page 35: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 35

Lo Standard IEC 61131-3Considerazioni sui linguaggi

SFC:Evoluzione di diagramma a stati

Vantaggi dell’uso esplicito del concetto di statoAlto grado di astrazioneSemplicità e leggibilità

Parallelismo e SincronismoNessuna tecnologia di riferimento (o quasi)

Rare le regole legate a implementazione su PLCVedremo in seguito

E’ ADATTO PER IL PROGETTO FUNZIONALE DEI CONTROLLI DI SEQUENZE

NB: SFC incompleto nella definizione di azioni e condizioni di transizione:si consiglia uso di ST

Page 36: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 36

Lo Standard IEC 61131-3Precisazione: SFC vs. Grafcet

SFC deriva da GrafcetGrafcet nasce in FranciaGrafcet normato in IEC60848 (1988 e poi 2002)

Formalismo Grafcet ancora più astratto da di SFC rispetto a implementazione→ Ma non trova utilizzo diretto negli ambienti di sviluppo

comuni in automazione

Per questo, in tale corso, si sceglie di presentare SFC come strumento funzionale di rappresentazione del controllo logico

Page 37: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 37

Sequential Function Chart

Page 38: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 38

Sequential Function ChartDa tenere a mente che:

Si analizzano le regole per SFC definite nella norma IEC 61131-3

Legame con PLC (anche se blando)SFC deriva da formalismo chiamato Grafcet (IEC60848)

Alcune discrepanze tra i dueNella presentazione si evidenzieranno

La norma in alcuni casi non è precisaI vari ambienti di sviluppo IEC61131-3 presentano deroghe rispetto alla norma

Ottica: utilizzo di SFC per modellazione e progetto funzionale del controllo logico

Maggiore astrazione possibile rispetto a qualunque implementazione (anche PLC) Non è importante il rigoroso rispetto di IEC61131-3

Page 39: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 39

Sequential Function ChartConcetti base

Stato (fase, tappa, passo)l’evoluzione temporale del funzionamento di un impianto complesso è descrivibile mediante una successione temporale di situazioni operative più semplici (fasi), nelle quali solo un sottoinsieme dei comandi e delle misure è attivo

Definizione di Stato (fase, tappa, passo)Uno stato rappresenta una condizione operativa della macchina (odi una parte di essa) che ne definisce il comportamentoA ogni stato sono associati uno o più algoritmi di controllo (Azioni), diversi da quelli associati agli altri Stati

In generale, durante il tempo di permanenza in uno Stato le uscite del controllo (comandi) possono variare in risposta alle variazioni degli ingressi (sensori) o allo scorrere del tempo (es. in dipendenza dal controllo diretto di variabili continue)

Page 40: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 40

Sequential Function ChartConcetti base

Transizioniil verificarsi di un particolare evento forza il passaggio (Transizione) da uno stato a un altro statoUn evento rappresenta l’occorrenza di una particolare condizione

Definizione di TransizioneMediante le transizioni si realizza il controllo logico tra un passo/i e il successivo/ipossibilità di evoluzione da uno Stato ad un altro

non tutti gli Stati ammettono tra loro una Transizionead ogni Transizione è associata una Condizione logica che deve essere verificata affinché la Transizione avvenga

Page 41: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 41

Sequential Function ChartConcetti base

Condizioni (di transizione)Il verificarsi di una condizione corrisponde all’evento che determina il passaggio ad un altro stato

La condizione dipende da segnali di ingresso, dall’evoluzione del tempo, da variabili interne, ecc.

La sintassi per definire gli Stati, le Transizioni, le Azioni e le Condizioni di transizione è molto precisa

SFC è simile a un automale Condizioni vengono espresse con espressioni booleane o una lista di istruzioni (in ST, IL) o con reti a relè o logiche (in LD, FBD)Le Azioni vengono espresse in un qualsiasi linguaggio:

lista di istruzioni (in ST, IL), variabili booleane, reti logiche (in FBD) o a relè (LD)

nnStatoStato

mm

TransizioneTransizioneCondizioneCondizione

azioni

azioni

Page 42: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 42

pistone pneumatico

testa di timbratura

oggetto da timbrare

Sequential Function ChartConcetti base

Esempio - timbratrice automatica

Page 43: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 43

attesa pezzo 1

Sequential Function ChartConcetti base

Esempio - timbratrice automaticatre stati

nessun comando

Page 44: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 44

pezzo presente

1

2

Sequential Function ChartConcetti base

Esempio - timbratrice automaticatre stati

Page 45: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 45

esecuzione timbratura

1

2

Sequential Function ChartConcetti base

Esempio - timbratrice automaticatre stati

comandopistone avanti

Page 46: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 46

timbratura o.k.

1

2

3

Sequential Function ChartConcetti base

Esempio - timbratrice automaticatre stati

Page 47: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 47

evacuazione pezzo

1

2

3

Sequential Function ChartConcetti base

Esempio - timbratrice automaticatre stati

Comando pistone indietro

Comando evacuazione

pezzo

Page 48: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 48

1

2

3

timbro su

Sequential Function ChartConcetti base

Esempio - timbratrice automaticatre stati

Page 49: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 49

attesa pezzo 1

2

3

Sequential Function ChartConcetti base

Esempio - timbratrice automaticatre stati

nessun comando

Esecuzione ciclica dei passi

Page 50: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 50

Sequential Function ChartSintassi

Statiad ogni stato vanno associate le Azioni da eseguire quando quello stato è attivo

algoritmo di controllo attivo quando il sistema si trova in quello statoÈ possibile non definire alcuna azione associata allo stato (stato di attesa)

due stati vanno sempre separati da una transizioneTransizioni

partono da uno stato ed arrivano ad un altro statodi solito sono indicate mediante linee verticali, ma è opportuno indicare i collegamenti con frecce per evitare ambiguità

ad ogni transizione va associata una sola Condizione che ne determina l’attivazione (passaggio ad un nuovo stato)due transizioni successive non separate da uno stato sono proibite

Page 51: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 51

Sequential Function ChartRegole di evoluzione

Stato attivo/inattivoSe lo stato è attivo le sue azioni vengono eseguitePossono esistere più stati attivi contemporaneamente

SFC è più generale rispetto ai diagrammi a stati classici (automi)Il nome “stato” non è propriamente corretto dal punto di vista della teoria dei sistemiLo stato dell’SFC (nel senso della teoria dei sistemi) è l’insieme degli stati attivi

InizializzazioneOccorre definire gli stati attivi all’avviamento

stati inizialigli stati iniziali possono essere più di uno

si indicano con due quadretti uno dentro l’altropossono non essere i primi stati di uno schema

GRAFCET consente più step iniziali Norma IEC61131-3 e Codesys prevedeno UN SOLO STEP INIZIALE PER PROGRAMMA O FB in SFC- Aggirabile con costrutto di parallelismo (vedi dopo)…. Cmq brutto!

Page 52: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 52

Sequential Function ChartRegole di evoluzione

Abilitazione delle transizioniuna transizione si dice Abilitata quando TUTTI gli stati precedenti alla transizione sono attivi

Vengono testate SOLO le transizioni Abilitateuna transizione diventa Attiva quando contemporaneamente

è Abilitatala Condizione associata è vera

Page 53: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 53

Sequential Function ChartRegole di evoluzione

La transizione Attiva determina il cambio di stato Lo stato precedente (o gli stati precedenti) diventa inattivo

(e le azioni associate vengono interrotte) lo stato successivo (o gli stati successivi) viene attivato

(e le azioni associate vengono eseguite) Se più transizioni diventano attive contemporaneamente, sono superate simultaneamente Il tempo di attivazione di una transizione (e del cambio di stato) e il tempo di esecuzione di uno stato possono essere considerati istantanei (astrazione)

Nell’implementazione pratica non sono nulli, ma dipendono dalla capacità computazionale dell’elaboratore

Page 54: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 54

Sequential Function ChartVariabili associate ad uno stato in SFC

Step flag: Statename.xindica che lo stato "Statename" è attivo

variabile logica che assume il valore “vero” (1) per tutto il tempo di permanenza nello stato

Step time: Statename.tindica il tempo trascorso dall’attivazione dello stato "Statename"

variabile timer inizializzata a zero all'entrata nello stato, contiene l'indicazione del tempo trascorso dall'entrata nello statoall'uscita dallo stato rimane costante (al valore pari al tempo di permanenza nello stato)

Queste variabili possono essere utilizzate in ogni linguaggio

la sintassi di definizione dei nomi associati agli stati dipende dalla specifica implementazione dello standard

Page 55: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 55

Sequential Function ChartAzioni associate ad uno stato

m

n

Qm Am Vm

Qualificatore dell'azione

Azione da eseguire

Variabile logica (opzionale) che indica l’avvenuta esecuzione dell’azione

Qm Am Vm

Action Am:Num:=Num+1……

end_action

di solito descritta a parte

se semplice può essere riportata nel blocco stesso

• A ogni stato possono essere associati uno o più blocchi di azione• Il qualificatore determina le regole di esecuzione dell’azione • Si può scegliere liberamente il linguaggio con cui programmare le azioni (ST, LD, IL, FBD) tra i diversi linguaggi disponibili

Page 56: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 56

Sequential Function ChartAzioni associate ad uno stato

Qualificatori dell'azioneStabiliscono l’intervallo temporale di esecuzione dell’azione

N Non Stored eseguita finché lo stato è attivoP Pulsed eseguita solo una volta quando lo stato è

attivatoS Set eseguita finché il qualificatore R non è

eseguito (azione memorizzata)R Reset termina l'azione memorizzata (S)L time Limited termina esecuzione dopo un certo tempo

(se lo stato rimane attivo)D time Delayed inizia esecuzione dopo un certo tempo

(se lo stato rimane attivo)SD Stored/Delayed inizia azione Set dopo un certo tempoDS Delayed/Stored inizia azione Set se lo stato rimane attivo

per un certo tempoSL Stored/time-Limited inizia azione Set e la termina dopo un

certo tempoIn c

ombi

nazi

one

con

R

Page 57: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 57

Sequential Function ChartTipi di Azioni

nAzione PAzione Ppulsatapulsata

m

nAzione NAzione Nnon memorizzatanon memorizzata

m

n

Azione A

Azione A

N

Nt

t

n Azione APA

A

eseguita solo una volta quando lo stato è attivato

eseguita in tutti gli stati a cui è associata

Nota su legame con implementazione Nota su legame con implementazione RT: RT: PseudoPseudo--TrasfTrasf. Ciclica!!!. Ciclica!!!

Page 58: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 58

Sequential Function ChartTipi di Azioni

m

Azione S/RAzione S/Rmemorizzatamemorizzata

m

n

Azione A

Azione A

S

R

t

n

A

• si ottiene lo stesso comportamento con azioni N in tutti i blocchi compresi fra m (incluso) e n (escluso)• è importante garantire che l’evoluzione del diagramma porti all’attivazione dello stato n

Page 59: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 59

Sequential Function ChartTipi di Azioni

Azione DAzione Dritardataritardata n Azione AD

t=3

3

n

tA

Azione LAzione Ltemporizzatatemporizzata

t5 5

nn Azione ALt=5

m Azione ALt=5

m

A

• L’esecuzione di azioni D e L può essere realizzata (in modo equivalente) con azioni N condizionate all’evoluzione della variabile temporale “stato.t”

3

termina esecuzione dopo un certo tempo (se lo stato rimane attivo)

inizia esecuzione dopo un certo tempo (se lo stato rimane attivo)

Page 60: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 60

Sequential Function Chart

Regole per l’esecuzione delle azioniL’esecuzione delle azioni è condizionata allo stato di una rete logica, dipendente dal tipo di qualificatore

Q identifica l’esecuzione dell’azioneLe variabili S, R, ecc. sono associate a un passo

FF SRSR Q

SR Q&

Q Qualificatori Set e Reset

R TRIGCLK QP

QQualificatore Pulsed

Flip flop set/reset

Rilevatore del fronte di salita

Page 61: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 61

Sequential Function Chart

Regole per l’esecuzione delle azioniL’esecuzione delle azioni è condizionata allo stato di una rete logica, dipendente dal tipo di qualificatore

Q identifica l’esecuzione dell’azione

TONINPT Q

Dt

Q Qualificatore time Delayed

TONINPT Q

Lt

Q&Q Qualificatore time Limited

Timer On: l’uscita Q diventa vera se IN rimane vero per un tempo PT (se IN èfalso, Q è falso)

Operatore logico And

Page 62: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 62

Sequential Function Chart

Regole per l’esecuzione delle azioniL’esecuzione delle azioni è condizionata allo stato di una rete logica, dipendente dal tipo di qualificatore

Q identifica l’esecuzione dell’azione

TONINPT Q

SDR Q

Qualificatore Stored Delayed

TONINPT Q

DSt Q

Qualificatore Delayed Stored

FF SRSR Q

t

FF SRSR QR

inizia azione Set dopo un certo tempo

inizia azione Set se lo stato rimane attivo per

un certo tempo

Page 63: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 63

Sequential Function Chart

Regole per l’esecuzione delle azioniL’esecuzione delle azioni è condizionata allo stato di una rete logica, dipendente dal tipo di qualificatore

Q identifica l’esecuzione dell’azione

TONINPT Q

SLR

Q

Qualificatore Stored time Limited

FF SRSR Q

t

&Q

inizia azione Set e la termina dopo un certo tempo

Page 64: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 64

No No

Sequential Function ChartStrutture di collegamento

Scelta alternativa

5

7 8 10 9

Parallelismo

5

7 8 10 9

Page 65: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 65

No No

Sequential Function ChartStrutture di collegamento

Convergenza

5

7 8 10 9

Sincronizzazione

5

7 8 10 9

Page 66: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 66

Sequential Function ChartStrutture di collegamento

Scelta alternativa (anche detta: divergenza singola)Più transizioni collegate allo stesso passoIl flusso segue UN SOLO percorsoÈ importante definire in modo esplicito condizioni mutualmente esclusiveper definire precedenze e evitare ambiguità

Garanzia logica sui segnali a prescindere dal loro significato fisico e applicativo

Evitare comportamenti impredicibili per disturbiIEC61131-3 non chiara in merito

Se più condizioni vere si attiva solo la transizione più a sxCodesys fa così

Oppure il sistema genera errore Addirittura in IsaGraf si attivavano più step!!!!

⇒ Meglio mutua esclusione esplicita imposta da progettistaOBBLIGATORIO NEI PROGETTI D’ESAME!!!!!

Convergenza (singola)Tipicamente serve per chiudere la diramazione di più percorsi generati da una scelta alternativa

Page 67: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 67

Sequential Function ChartStrutture di collegamento

Parallelismo (divergenza doppia)Da una singola transizione a più passiI passi diventano simultaneamente attivi

Sincronizzazione (convergenza doppia)Da più passi a una sola transizioneQuando tutti i passi precedenti sono attivi e la condizione è vera, i passi precedenti vengono disattivati e il passo successivo diventa attivoN.b. affinché la transizione sia abilitata, è necessario che TUTTI i passi precedenti siano attivi (se ciò non accade si ha deadlock).

Page 68: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 68

Sequential Function ChartMutua esclusione fra scelte alternative

5

7 8 10

Tx Ty Tz

Tx

Tz

Ty Tx’

Tz’

Ty’

Ty’=TyTz’=Tz and not TyTx’=Tx and not (Ty or Tz)

Definizione di scelte alternativePriorità fra scelte

Per assegnare una prioritàdecrescente a Ty, Tz, Tx, si sostituiscono le condizioni con

Page 69: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 69

Sequential Function ChartMutua esclusione fra scelte alternative

5

7 8 10

Tx’ Ty’ Tz’

Tx

Tz

Ty Tx’

Tz’

Ty’

Ty’=TyTz’=Tz and not(Ty or Tx)Tx’=Tx and not(Ty or Tz)Tx-z=Tx and Tz and notTy

Definizione di scelte alternativeSe è necessario fare azioni di Step 7 e Step 10 in paralleloquando Tx e Tz vere e Ty falsa

Tx-z

7 10

Tx-z

Page 70: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 70

Sequential Function ChartStrutture di collegamento: errori

1

32

6 7

T12 T13

T67

1

32

6 7

T12

T68 T68

8

Errore: scelta alternativa con sincronizzazione! (deadlock) Ambigua: parallelismo con convergenza

Page 71: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 71

Sequential Function ChartStr. di collegamento: corretto uso di Parallelismo

Regole di buon progetto (VINCOLANTI PER PROG. D’ESAME!!!)Se derogate dovete convincere il docente che è comunque “pulito”

Non vincolato dalla normaCodesys aiuta fornendo costrutto di parallelismo molto bloccato

Ma non per tutti i casi

PARALLELISMO N-RAMI CHIUSO DA SINCRONISMO(ANCHE CON ALTRI PAR O SINC INTERMEDI)

1

32

6 7

T12

T688

1

32

6 7

T12

PARALLELISMO N-RAMI CICLICI SEPARATI(CON EVENTUALI SINCR O PAR A MONTE DEI CICLI)

Page 72: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 72

Sequential Function ChartStrutture di collegamento speciali

Mutua Esclusione tra Sequenze

Sequenze da rendereSequenze da renderemutuamente esclusivemutuamente esclusivead es. agiscono sulla ad es. agiscono sulla

stessa parte di impiantostessa parte di impiantocon azioni diversecon azioni diverse

4

8

T3-4

3

9

11

17

T10-11

10

18

(T10-11) * (T3-4) = 0non basta

Page 73: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 73

Sequential Function ChartStrutture di collegamento speciali

Mutua Esclusione tra Sequenze

4

8

T3-4

3

9

11

17

T10-11

10

18

errore

(T10-11) * (T3-4) = 0non basta

Non basta garantire la mutua esclusione (es. sostituendo T10-11 con “T10-11 and not(T3-4))”

Page 74: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 74

Sequential Function ChartStrutture di collegamento speciali

Mutua Esclusione tra Sequenze

3

4

8

9

T3-4

10

11

17

18

(T10-11) & not(3.x & T3-4)

S Semaforo

Sincronizzazione

Sblocco

Il semaforo Il semaforo deve esseredeve essere stato inizialestato inizialeAttenzione: vincoli della Attenzione: vincoli della normanorma……

Page 75: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 75

Sequential Function ChartStrutture di collegamento speciali

Sincronizzazione di sequenze indipendenti

10

11

12

13

4

5

6

3

Punto di sincronizzazioneT4-5

T12-13

sequenza 1sequenza 1

sequenza 2sequenza 2La sequenza 2 non può andare oltreLa sequenza 2 non può andare oltrelo stato 12 finchlo stato 12 finchéé la sequenza 1 nonla sequenza 1 nonha completato il controllo relativo ha completato il controllo relativo

allo stato 4allo stato 4

Non basta condizionare T12Non basta condizionare T12--1313a T4a T4--5 perch5 perchéé dopo che Seq.1 dopo che Seq.1 èè uscitauscita

da S4 la T4da S4 la T4--5 può diventare falsa5 può diventare falsa

Page 76: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 76

Sequential Function ChartStrutture di collegamento speciali

Sincronizzazione di sequenze indipendenti

S Semaforo

4

5

6

3

T4-5

10

11

12

13

T12-13

La sequenza 2 non può andare oltreLa sequenza 2 non può andare oltrelo stato 12 lo stato 12 finchfinchèè la sequenza 1 nonla sequenza 1 nonha completato il controllo relativo ha completato il controllo relativo

allo stato 4allo stato 4

sequenza 1sequenza 1

sequenza 2sequenza 2

Il semaforo Il semaforo non non èè uno stato inizialeuno stato iniziale

Page 77: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 77

Sequential Function ChartMutua Esclusione e Blocco

tramite Semaforo di parti di SFCCollegamento con quanto detto in Sistemi RT e su non interazione applicazioni?Mutua esclusione e blocco a livello di controllo (cioè a livello funzionale) non di risorse di elaborazione, attuazione e misura

La deadline di azione che puo essere ritardata da mutua esclusione deve essere specificata in modo congruente a livello funzionale

Page 78: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 78

Sequential Function ChartMutua Esclusione e Blocco

tramite Semaforo di parti di SFCCollegamento con schema funzionale?Tipicamente gestito inuna unica funzione di controlloMa se si dividesse?

Controllori cooperanti?Si

Piccola deroga al modello generale

Per la gestione implemetativasi tenta di non avere variazioni

Soprattutto su time-drivenVariabile semaforo condivisa!

Page 79: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 79

Sequential Function ChartMutua Esclusione e Blocco

tramite Semaforo di parti di SFCO.S. Real Time può dare infrastrutture?

Normalmente no task interagenti non graditi per schedulazione

Se rimango all’interno di una funzione (task) no problemi di concorrenza (li gestisce il progettista)Se divido in piu’ task con variabile condivisa per semaforo

Attenzione sezioni criticheSe mappo ctrl seq in task pseudotraf. ciclici (normale per TimeDriven, spesso anche per Event Driven):modello di esecuzione imposto a progetto per evitare concorrenza (es: task in seq su stesso Ts per time Driven)

CoDeSys?Costruire semaforo per seq. mutuamente esclusive è complesso

Vincoli grafici

Page 80: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 80

Sequential Function ChartStrutture speciali

MacrostatoRappresenta un insieme di stati e transizioni

4

42

43

41

stato iniziale

stato finale

4

6

3

Page 81: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 81

Sequential Function Chart

Strutture speciali: Macrostatoper consentire una rappresentazione più sintetica è possibile raggruppare pezzi di SFC in un macrostato:

All’ingresso nel macrostato, viene eseguito lo stato inizialeViene eseguita la successione degli stati nel macrostato secondo le regole standard di SFCL’esecuzione del macrostato termina all’uscita dallo stato finale (si continua l’esecuzione dello schema SFC)

La transizione in uscita dal macrostato è abilitata solo se è stato raggiunto lo stato terminale dentro il macrostato

No cicliIn Grafcet: definizione chiaraIn IEC61131-3: definizione non chiara

Azione di step definita in SFC Gestione in Codesys e non chiarissima

Page 82: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 82

Sequential Function ChartStrutture speciali

Macroazioni - Forzatura

4

6

3

ForzareSFCX:{Y}

10

11

12

SFCX

=1=1

=1

Y= set 11

10

11

12

SFCX

aa

bb

cc

Page 83: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 83

Sequential Function ChartStrutture speciali

Macroazioni - Forzatura in Sospensione

4

6

3

ForzareSFCX:{}

10

11

12

SFCX

Y= vuoto

=1

=1

=1

10

11

12

SFCX

aa

bb

cc

Page 84: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Ing. Andrea Tilli - Sistemi e Tecnologie per l'Automazione LS Controllo Logico 1 84

Sequential Function ChartStrutture speciali

Macroazioni - Forzatura in Blocco nello stato attuale

4

6

3

ForzareSFCX:{*}

10

11

12

SFCX

Y= *

10

11

12

SFCX

aa

bb

cc

aa**NOT1NOT1

aa**NOT1NOT1

aa**NOT1NOT1

Page 85: Sistemi e Tecnologie per l'Automazione LS · Controllo Logico nell’Automazione Industriale Laurea Specialistica in Ingegneria Informatica ... (modello della macchina di Von Neumann)

Laurea Specialistica in Ingegneria InformaticaLaurea Specialistica in Ingegneria Elettronica e delle Telecomunicazioni

Ing. Andrea TilliDEIS - Università di Bologna

Tel. 051-2093924E-mail: [email protected]

http://www-lar.deis.unibo.it/atilli

Sistemi e Tecnologie per l'Automazione LS

Controllo Logico nell’Automazione IndustrialeFINE