Ingegneria e Tecnologie dei Sistemi di Controllo ... · Da un SFC alla Programmazione ... Îlegata...
Transcript of Ingegneria e Tecnologie dei Sistemi di Controllo ... · Da un SFC alla Programmazione ... Îlegata...
Ingegneria e Tecnologie Ingegneria e Tecnologie dei dei
Sistemi di ControlloSistemi di Controllo
Programmazione di sistemi di Programmazione di sistemi di controllo industriale (PLC)controllo industriale (PLC)
PARTE 1Prof.Prof. Alberto Alberto TonielliTonielli, , Ing.Ing. Andrea TilliAndrea Tilli
DEIS DEIS –– Alma Alma MaterMater StudiorumStudiorum UniversitUniversitàà di Bolognadi BolognaEE--Mail: Mail: atonielliatonielli, [email protected], [email protected]
Revisionato: 14/11/2004
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 22
SommarioSommario
Parte 1Parte 1Progettazione di controlli sequenzialiProgettazione di controlli sequenziali
un esempioun esempio
Lo standard IEC 1131Lo standard IEC 1131strumenti e linguaggi di programmazionestrumenti e linguaggi di programmazione
SequentialSequential functionalfunctional chartchart (SFC)(SFC)concetti baseconcetti base
sintassisintassi
strutturestrutture
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 33
SommarioSommario
Parte 2Parte 2SequentialSequential functionalfunctional chartchart (SFC)(SFC)
esempi di utilizzo delle struttureesempi di utilizzo delle strutture
Strumenti per la gestione delle eccezioniStrumenti per la gestione delle eccezioniGEMMAGEMMA
Un linguaggio testuale di basso livelloUn linguaggio testuale di basso livelloAWLAWL
dai diagrammi a relais alla programmazionedai diagrammi a relais alla programmazione
caratteristiche del linguaggiocaratteristiche del linguaggio
Da un SFC alla ProgrammazioneDa un SFC alla Programmazioneuna possibile soluzioneuna possibile soluzione
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 44
Progettazione di Controlli SequenzialiProgettazione di Controlli Sequenziali
IntroduzioneIntroduzioneLa progettazione del Software di Automazione per un La progettazione del Software di Automazione per un Sistema Industriale Sistema Industriale èè un compito complessoun compito complessoLa metodologia generale di soluzione esula dagli scopi di La metodologia generale di soluzione esula dagli scopi di questo corsoquesto corsoMediante un esempio verranno presentati i passi logici Mediante un esempio verranno presentati i passi logici della soluzionedella soluzione
Chiarimento del compito e strutturazione del sistemaChiarimento del compito e strutturazione del sistemaElaborazione dei documenti di specificaElaborazione dei documenti di specificaRealizzazione del ProgettoRealizzazione del ProgettoCollaudo del sistema di controllo e messa in funzione della Collaudo del sistema di controllo e messa in funzione della macchinamacchinaStesura della documentazioneStesura della documentazione
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 55
Progettazione di Controlli SequenzialiProgettazione di Controlli Sequenziali
Chiarimento del compito e strutturazione del sistemaChiarimento del compito e strutturazione del sistemaDescrizione generale della macchina da automatizzareDescrizione generale della macchina da automatizzareDescrizione del funzionamentoDescrizione del funzionamentoDescrizione dettagliata della macchinaDescrizione dettagliata della macchina
liste sensoriliste sensoriliste liste attuatoriattuatori
Strutturazione della macchina in parti omogeneeStrutturazione della macchina in parti omogeneefunzionalmente funzionalmente
correlazione nel processo produttivocorrelazione nel processo produttivospazialmentespazialmente
collocazione fisica adiacentecollocazione fisica adiacenteGrado di automazione delle partiGrado di automazione delle parti
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 66
Progettazione di Controlli SequenzialiProgettazione di Controlli Sequenziali
Descrizione del processo produttivoDescrizione del processo produttivoimpacchettatriceimpacchettatrice
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
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 77
Progettazione di Controlli SequenzialiProgettazione di Controlli Sequenziali
Elaborazione dei documenti di specificaElaborazione dei documenti di specificaCruciale per la buona riuscita del progettoCruciale per la buona riuscita del progetto
Distribuzione Hardware/Software dei compitiDistribuzione Hardware/Software dei compiti
Scelta dei sensori e degli Scelta dei sensori e degli attuatoriattuatori
Lavoro di gruppoLavoro di gruppospecifiche chiare e non ambiguespecifiche chiare e non ambigue
interfacce ben definiteinterfacce ben definite
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 88
Progettazione di Controlli SequenzialiProgettazione di Controlli Sequenziali
Realizzazione del ProgettoRealizzazione del ProgettoHardwareHardware
acquistoacquistoacquisto + progettazione di parti specificheacquisto + progettazione di parti specificheprogettazione completaprogettazione completa
SoftwareSoftwarenormalmente va progettatonormalmente va progettatosoftware per uso industrialesoftware per uso industriale
realizzazionerealizzazionegruppo di lavorogruppo di lavoro
manutenzione, aggiornamento, riutilizzomanutenzione, aggiornamento, riutilizzonoi o altre personenoi o altre persone
Controllo digitale diretto, Controllo digitale diretto, controllo di sequenzecontrollo di sequenze
AttivitAttivitàà crucialecruciale
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 99
Progettazione di Controlli SequenzialiProgettazione di Controlli Sequenziali
Collaudo del sistema di controllo e messa in funzione Collaudo del sistema di controllo e messa in funzione dell'impiantodell'impianto
Fase costosa e delicataFase costosa e delicatarealizzata da altre personerealizzata da altre personerealizzata presso il clienterealizzata presso il clienteesigenze di avvio della produzioneesigenze di avvio della produzione
tempi e costi dipendono fortemente dalla qualittempi e costi dipendono fortemente dalla qualitàà della della fase di progettazionefase di progettazione
meglio investire tempo e risorse sulla progettazione che spendermeglio investire tempo e risorse sulla progettazione che spendere e poi nel collaudo e nella messa in serviziopoi nel collaudo e nella messa in servizio
Nella pratica industriale raramente viene seguita questa Nella pratica industriale raramente viene seguita questa filosofia per diverse motivazioni, solitamente non filosofia per diverse motivazioni, solitamente non
tecnichetecniche
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 1010
Progettazione di Controlli SequenzialiProgettazione di Controlli Sequenziali
Stesura della documentazioneStesura della documentazioneLa documentazione La documentazione èè parte integrante e fondamentale di parte integrante e fondamentale di un progetto industrialeun progetto industriale
un progetto non un progetto non èè completato finchcompletato finchéé non non èè corredato da adeguata corredato da adeguata documentazionedocumentazione
La predisposizione della documentazione va effettuata La predisposizione della documentazione va effettuata congiuntamente con lo sviluppo di ogni fase della congiuntamente con lo sviluppo di ogni fase della progettazioneprogettazioneTecniche di progettazione che intrinsecamente Tecniche di progettazione che intrinsecamente producono documentazione sono da privilegiareproducono documentazione sono da privilegiare
CADCADprogrammazione strutturataprogrammazione strutturataSFCSFCGEMMAGEMMA
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 1111
Progettazione di Controlli SequenzialiProgettazione di Controlli Sequenziali
Strumenti di modellazione per il controllo logico Strumenti di modellazione per il controllo logico descrizione letterale (a parole)descrizione letterale (a parole)
lunga, imprecisa, troppo personalelunga, imprecisa, troppo personaledescrizione puramente logicadescrizione puramente logica
troppo particolareggiatatroppo particolareggiatalegata alla tecnologia legata alla tecnologia implementativaimplementativa
diagrammi temporalidiagrammi temporalicarenza nella descrizione degli elementi sequenzialicarenza nella descrizione degli elementi sequenzialinon consente di mettere in evidenza sequenze simultaneenon consente di mettere in evidenza sequenze simultanee
diagramma degli statidiagramma degli statistrumento idoneo per sistemi di modesta complessitstrumento idoneo per sistemi di modesta complessitàà perchperchéétroppo particolareggiatotroppo particolareggiatoidoneo con una opportuna idoneo con una opportuna ridefinizioneridefinizione del concetto di statodel concetto di stato
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 1212
Lo Standard IEC 1131Lo Standard IEC 1131--33
Strumenti software standardizzati per la descrizione e la Strumenti software standardizzati per la descrizione e la progettazione del ciclo operativo di macchine ed progettazione del ciclo operativo di macchine ed
impiantiimpiantiscoposcopo
stimolare una normalizzazione della sintassi dei linguaggi di stimolare una normalizzazione della sintassi dei linguaggi di programmazione per l'automazioneprogrammazione per l'automazione
obiettiviobiettiviprogrammazione strutturataprogrammazione strutturatamodularitmodularitàà del softwaredel softwareriusabilitriusabilitàà del softwaredel softwareportabilitportabilitàà del codice tra macchine diversedel codice tra macchine diversesemplicitsemplicitàà di programmazionedi programmazionetempi e costi di sviluppo ridottitempi e costi di sviluppo ridotti
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 1313
Lo Standard IEC 1131Lo Standard IEC 1131--33
Linguaggi di Programmazione Grafici Linguaggi di Programmazione Grafici SequentialSequential FunctionalFunctional ChartChart (SFC)(SFC)
Rappresentazione a diagrammi a stati Rappresentazione a diagrammi a stati ““evolutoevoluto””ProgettazioneProgettazione delle sequenze di Controllodelle sequenze di Controllo
11
22
33
44
55
StatiStati
TransizioniTransizioni
CondizioniCondizioniper laper la
transizionetransizione
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 1414
Lo Standard IEC 1131Lo Standard IEC 1131--33
Linguaggi di Programmazione graficiLinguaggi di Programmazione graficiLinguaggio a contatti (Linguaggio a contatti (LadderLadder DiagramDiagram))
AND( )
E1.0 E1.1 A4.01
( )OR
E1.2
E1.1
A4.12
V+V+ VV--
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 1515
Lo Standard IEC 1131Lo Standard IEC 1131--33
Linguaggi di Programmazione graficiLinguaggi di Programmazione graficiSchemi a blocchi funzionali (Schemi a blocchi funzionali (FunctionFunction Block Block DiagramDiagram))
&E1.0E1.1
A4.01
>= 1A4.1
E1.2
E1.12
V+V+ VV--
( )( )
( )( )
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 1616
Lo Standard IEC 1131Lo Standard IEC 1131--33
Linguaggi di Programmazione testualiLinguaggi di Programmazione testualiTesto Strutturato (Testo Strutturato (pseudopseudo--PascalPascal))
…………..ifif (fine_corsa)(fine_corsa)
thenthenmotore := off;motore := off;
else else motore := on;motore := on;
end_ifend_if;;…………..
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 1717
Lo Standard IEC 1131Lo Standard IEC 1131--33
Linguaggi di Programmazione testualiLinguaggi di Programmazione testualiLista di istruzioni (Lista di istruzioni (InstructionInstruction list)list)
………………..AND FINE_CORSAAND FINE_CORSASET MOTORESET MOTOREANDN FINE_CORSAANDN FINE_CORSARESET MOTORERESET MOTORE……………….. ..
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 1818
Lo Standard IEC 1131Lo Standard IEC 1131--33
ConsiderazioniConsiderazioniSFC strumento di piSFC strumento di piùù alto livello rispetto agli altrialto livello rispetto agli altri
Da utilizzare per il Da utilizzare per il progetto del sistema di gestione progetto del sistema di gestione delldell’’automazioneautomazioneGli altri strumenti sono piGli altri strumenti sono piùù implementativiimplementativi
Se SFC non Se SFC non èè direttamente direttamente ““compilabilecompilabile””Per la gestione di sezioni particolariPer la gestione di sezioni particolari
Attenzione: i linguaggi grafici sono indipendenti dal Attenzione: i linguaggi grafici sono indipendenti dal modello modello implementativoimplementativo, mentre i testuali ne risentono, mentre i testuali ne risentono
Modello Modello implementativoimplementativo: HW + S.O. : HW + S.O. RealReal TimeTimeEsEs: Attesa evento, divisione in processi : Attesa evento, divisione in processi
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 1919
Strumento per la Progettazione di Controlli SequenzialiStrumento per la Progettazione di Controlli Sequenziali
SequentialSequential FunctionalFunctional ChartChartFormalismo gerarchicamente superiore agli altri Formalismo gerarchicamente superiore agli altri linguaggilinguaggi
serve per serve per progettare il controllo sequenzialeprogettare il controllo sequenzialegli altri linguaggi, a discrezione del progettista, servono per gli altri linguaggi, a discrezione del progettista, servono per implementare il controlloimplementare il controllo
Descrizione e progettazione del ciclo operativo di Descrizione e progettazione del ciclo operativo di macchine ed impiantimacchine ed impiantiassimilabile ad un diagramma degli statiassimilabile ad un diagramma degli statiindipendente dalla tecnologia utilizzata per indipendente dalla tecnologia utilizzata per ll’’implementazioneimplementazione
formalismo astrattoformalismo astrattosemplifica la rappresentazione stimolando la semplifica la rappresentazione stimolando la scomposizione in sottoproblemiscomposizione in sottoproblemi
in ogni situazione operativa solo un sottoinsieme delle in ogni situazione operativa solo un sottoinsieme delle informazioni informazioni èè indispensabile per il controlloindispensabile per il controllo
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 2020
Strumenti Software Strumenti Software -- SFCSFC
Concetti baseConcetti baseStato (fase, tappa, passo)Stato (fase, tappa, passo)
ll’’evoluzione temporale del funzionamento di un impianto evoluzione temporale del funzionamento di un impianto complesso complesso èè descrivibile mediante una descrivibile mediante una successione temporale di successione temporale di situazioni operative pisituazioni operative piùù semplicisemplici (fasi), nelle quali solo un (fasi), nelle quali solo un sottoinsieme dei comandi e delle misure sottoinsieme dei comandi e delle misure èè attivoattivo
definizione di Statodefinizione di Statouno Stato uno Stato èè una condizione operativa della macchina alla quale una condizione operativa della macchina alla quale èèassociato un ben preciso associato un ben preciso algoritmo di controllo (Azioni)algoritmo di controllo (Azioni), diverso , diverso da quelli associati agli altri Stati. da quelli associati agli altri Stati. il verificarsi di un particolare evento forza il il verificarsi di un particolare evento forza il passaggio passaggio (Transizione)(Transizione) ad un altro Statoad un altro Statoin generale, durante il tempo di permanenza in uno Stato in generale, durante il tempo di permanenza in uno Stato ((codizionecodizione di di stato attivostato attivo) le uscite del controllo (comandi) ) le uscite del controllo (comandi) possono variare in risposta alle variazioni degli ingressi (senspossono variare in risposta alle variazioni degli ingressi (sensori) ori) o allo scorrere del tempoo allo scorrere del tempo
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 2121
Strumenti Software Strumenti Software -- SFCSFC
Concetti baseConcetti baseTransizioniTransizioni
possibilitpossibilitàà di di evoluzioneevoluzione da uno Stato ad un altroda uno Stato ad un altronon tutti gli Stati ammettono tra loro una Transizionenon tutti gli Stati ammettono tra loro una Transizionead ogni Transizione ad ogni Transizione èè associata una Condizione che deve essere associata una Condizione che deve essere verificata affinchverificata affinchéé la Transizione avvengala Transizione avvenga
Condizioni (di transizione)Condizioni (di transizione)evento che determina il passaggio ad un altro statoevento che determina il passaggio ad un altro stato
La sintassi per definire gli Stati, le Transizioni e le La sintassi per definire gli Stati, le Transizioni e le Condizioni Condizioni èè molto precisamolto precisa
nn StatoStato
mm
TransizioneTransizioneCondizioneCondizione
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 2222
pistone pneumatico
testa di timbratura
oggetto da timbrare
Strumenti Software Strumenti Software -- SFCSFC
Concetti baseConcetti baseEsempio Esempio -- timbratrice automaticatimbratrice automatica
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 2323
attesa pezzonessuna azione
1
Strumenti Software Strumenti Software -- SFCSFC
Concetti baseConcetti baseEsempio Esempio -- timbratrice automaticatimbratrice automatica
tre statitre stati
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 2424
pezzo presente
1
2
Strumenti Software Strumenti Software -- SFCSFC
Concetti baseConcetti baseEsempio Esempio -- timbratrice automaticatimbratrice automatica
tre statitre stati
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 2525
esecuzione timbraturacomando pistone avanti
1
2
Strumenti Software Strumenti Software -- SFCSFC
Concetti baseConcetti baseEsempio Esempio -- timbratrice automaticatimbratrice automatica
tre statitre stati
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 2626
timbratura o.k.
1
2
3
Strumenti Software Strumenti Software -- SFCSFC
Concetti baseConcetti baseEsempio Esempio -- timbratrice automaticatimbratrice automatica
tre statitre stati
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 2727
evacuazione pezzocomando evacuazione pezzo
comando pistone indietro
1
2
3
Strumenti Software Strumenti Software -- SFCSFC
Concetti baseConcetti baseEsempio Esempio -- timbratrice automaticatimbratrice automatica
tre statitre stati
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 2828
1
2
3
timbro su
Strumenti Software Strumenti Software -- SFCSFC
Concetti baseConcetti baseEsempio Esempio -- timbratrice automaticatimbratrice automatica
tre statitre stati
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 2929
attesa pezzonessun comando
1
2
3
Strumenti Software Strumenti Software -- SFCSFC
Concetti baseConcetti baseEsempio Esempio -- timbratrice automaticatimbratrice automatica
tre statitre stati
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 3030
Strumenti Software Strumenti Software -- SFCSFC
SintassiSintassiStatiStati
ad ogni stato vanno associate le ad ogni stato vanno associate le AzioniAzioni da intraprendere quando da intraprendere quando si si èè in quello stato in quello stato
algoritmo di controllo attivo quando il sistema si trova in quelalgoritmo di controllo attivo quando il sistema si trova in quello lo statostato
due stati vanno sempre separati da una transizionedue stati vanno sempre separati da una transizioneATTENZIONE: in un diagramma a ATTENZIONE: in un diagramma a ““runrun timetime”” ci possono essere ci possono essere pipiùù ““stati stati attviattvi””
pipiùù generale rispetto a diagrammi a stati classici (automi)generale rispetto a diagrammi a stati classici (automi)il nome il nome ““statostato”” non non èè proprio corretto dal punto di vista della proprio corretto dal punto di vista della teoria dei sistemiteoria dei sistemi
Lo stato dellLo stato dell’’SFC (nel senso della teoria dei sistemi) SFC (nel senso della teoria dei sistemi) èè ll’’insieme insieme degli stati attivi degli stati attivi I I ““quadratiniquadratini”” vengono detti comunque vengono detti comunque ““statistati”” con con ““abuso di abuso di notazionenotazione””
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 3131
Strumenti Software Strumenti Software -- SFCSFC
SintassiSintassiTransizioniTransizioni
ad ogni transizione va associata una sola ad ogni transizione va associata una sola CondizioneCondizione che ne che ne determina ldetermina l’’attivazione (passaggio ad un nuovo stato)attivazione (passaggio ad un nuovo stato)due transizioni successive non separate da uno stato sono due transizioni successive non separate da uno stato sono proibiteproibite
CollegamentiCollegamentipartono da uno stato ed arrivano ad un altro statopartono da uno stato ed arrivano ad un altro statodi solito linee verticali, ma di solito linee verticali, ma èè opportuno indicare i collegamenti opportuno indicare i collegamenti con frecce per evitare ambiguitcon frecce per evitare ambiguitàà
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 3232
Strumenti Software Strumenti Software -- SFCSFC
Regole di evoluzioneRegole di evoluzioneInizializzazioneInizializzazione
Occorre definire gli Occorre definire gli stati attivistati attivi allall’’avviamentoavviamentostati inizialistati iniziali
gli stati iniziali possono essere pigli stati iniziali possono essere piùù di uno di uno concetto di stato in senso lato... concetto di stato in senso lato...
si indicano con due quadretti uno dentro lsi indicano con due quadretti uno dentro l’’altroaltropossono non essere i primi stati di uno schemapossono non essere i primi stati di uno schema
Abilitazione delle transizioniAbilitazione delle transizioniuna transizione si dice una transizione si dice AbilitataAbilitata quando lo stato di partenza quando lo stato di partenza èèattivoattivouna transizione una transizione non Abilitatanon Abilitata non viene testatanon viene testatauna transizione diventa una transizione diventa AttivaAttiva quando quando èè Abilitata eAbilitata e la Condizione la Condizione associata associata èè veravera. . la transizione la transizione AttivaAttiva determina il determina il cambio di statocambio di stato. Il controllo . Il controllo relativo allo stato precedente viene interrotto e viene attivatorelativo allo stato precedente viene interrotto e viene attivatoquello relativo allo stato successivoquello relativo allo stato successivo
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 3333
Strumenti Software Strumenti Software -- SFCSFC
Tipi di AzioniTipi di Azioni
n Azione A
Condizione n
C
A
Azione condizionataAzione condizionata
m
n
Azione A
Azione A
m
n
A
Azione continuaAzione continua
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 3434
Strumenti Software Strumenti Software -- SFCSFC
Tipi di AzioniTipi di Azioni
Azione temporizzataAzione temporizzatalimitata nel tempolimitata nel tempoTxTx = Timer n. x= Timer n. xn = stato triggern = stato triggerd = duratad = durata
n Azione A
n
A
TxNOT (Tx/n/d)
d
Azione temporizzataAzione temporizzataritardataritardata
n Azione A
n
C
A
Tx/n/d
d
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 3535
Strumenti Software Strumenti Software -- SFCSFC
Tipi di AzioniTipi di AzioniAltri tipi di azione:Altri tipi di azione:
P, S, R P, S, R ……. Esercitazioni ISAGRAF . Esercitazioni ISAGRAF
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 3636
No No
Strumenti Software Strumenti Software -- SFCSFC
Strutture di collegamentoStrutture di collegamento
Scelta alternativa Parallelismo
MutuamenteMutuamenteesclusiveesclusive
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 3737
No No
Strumenti Software Strumenti Software -- SFCSFC
Strutture di collegamentoStrutture di collegamento
SincronizzazioneConvergenza
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 3838
Strumenti Software Strumenti Software -- SFCSFC
Strutture di collegamentoStrutture di collegamento
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
(T3-4)*(T10-11)=0non basta
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 3939
Strumenti Software Strumenti Software -- SFCSFC
Strutture di collegamentoStrutture di collegamento
Mutua Esclusione tra Sequenze
4
8
T3-4
3
9
11
17
T10-11
10
18
(T3-4)*(T10-11)=0non basta
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 4040
Strumenti Software Strumenti Software -- SFCSFC
Strutture di collegamentoStrutture di collegamentoMutua Esclusione tra Sequenze
3
4
8
9
T3-4
10
11
17
18
T10-11
S Semaforo
Sincronizzazione
Sblocco
Il semaforo Il semaforo deve esseredeve essere stato inizialestato iniziale
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 4141
Strumenti Software Strumenti Software -- SFCSFC
Strutture di collegamentoStrutture di collegamentoSincronizzazione 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 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
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
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 4242
Strumenti Software Strumenti Software -- SFCSFC
Strutture di collegamentoStrutture di collegamento
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 2Sincronizzazione di sequenze indipendenti
Il semaforo Il semaforo non non èè uno stato inizialeuno stato iniziale
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 4343
Strumenti Software Strumenti Software -- SFCSFC
Strutture specialiStrutture specialiMacrostati
4
6
3 10
11
12
13
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 4444
Strumenti Software Strumenti Software -- SFCSFC
Strutture specialiStrutture specialiMacroazioni - Forzatura
4
6
3
ForzareSFCX:{Y}
10
11
12
SFCX
=1=1
=1
Y= set 11
10
11
12
SFCX
aa
bb
cc
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 4545
Strumenti Software Strumenti Software -- SFCSFC
Strutture specialiStrutture specialiMacroazioni - Forzatura in Sospensione
4
6
3
ForzareSFCX:{}
10
11
12
SFCX
Y= vuoto
=1
=1
=1
10
11
12
SFCX
aa
bb
cc
Prof. A. Tonielli, Prof. A. Tonielli, Ing.Ing. A. A. TilliTilli -- DEIS DEIS -- UnivUniv. di Bologna. di Bologna Programmazione per PLCProgrammazione per PLC 4646
Strumenti Software Strumenti Software -- SFCSFC
Strutture specialiStrutture specialiMacroazioni - 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
Ingegneria e Tecnologie Ingegneria e Tecnologie dei dei
Sistemi di ControlloSistemi di Controllo
Programmazione di sistemi di Programmazione di sistemi di controllo industriale (PLC)controllo industriale (PLC)
PARTE 1 - FINEProf.Prof. Alberto Alberto TonielliTonielli, , Ing.Ing. Andrea TilliAndrea Tilli
DEIS DEIS –– Alma Alma MaterMater StudiorumStudiorum UniversitUniversitàà di Bolognadi BolognaEE--Mail: Mail: atonielliatonielli, [email protected], [email protected]