I sistemi automatici di regolazione e controllo Per meglio comprendere cosa è un PLC e a cosa serve iniziamo con alcuni concetti e definizioni riguardanti il contesto in cui questi dispositivi operano. Definiamo quindi sistema un insieme di parti meccaniche, pneumatiche, idrauliche, elettriche ed elettroniche assemblate e connesse fra loro in modo da ottenere un'entità unica che funzioni in un determinato modo. Corrispondono a questa definizione numerosi dispositivi non solo di uso industriale, ma anche comune, quali elettrodomestici, veicoli, computer, ecc. Definiamo ora sistema automatico un sistema in grado di compiere una successione di azioni senza l'intervento esterno, ossia in modo autonomo. Si parla inoltre di: regolazione quando un sistema svolge azioni tese ad ottenere dei valori prefissati delle grandezze caratteristiche di un processo; di comando quando il sistema esegue delle semplici azioni per ottenere un determinato effetto; di controllo quando, oltre alla funzione di comando, il sistema verifica l'esecuzione dell'azione impartita. I termini controllo e comando spesso sono usati per indicare la stessa azione e la confusione deriva dall'errata traduzione che viene fatta dei termini to control e controller che in inglese esprimono il concetto di comando, ma sono stati tradotti con controllare e controllore che in italiano esprimono il concetto di “verifica”. Quindi i controller più esattamente sono dispositivi di comando e controllo allo stesso tempo. In ogni sistema automatico si possono individuare due o tre parti costituenti: Segnali ingresso Logica di comando Attuatori Segnali uscita Segnali ingresso Logica di comando Attuatori Segnali uscita Trasduttori Anello APERTO – OPEN Loop Retroazione - Feedback Campo - Field Anello CHIUSO – CLOSED Loop L'unità di comando invia dei segnali (elettrici) agli attuatori; è detta anche logica perché gestisce prevalentemente segnali ON/OFF ed esegue su di essi delle operazioni booleane, ossia logiche (AND, OR, NOT). Può ricevere anche dei segnali dall'esterno (da operatore macchina, o altri sistemi automatici con cui interagisce) o inviare segnali in uscita. Ad esempio una macchina semiautomatica riceve il segnale di avvio ciclo dall'esterno (operatore) per poi eseguire il ciclo in autonomia; a fine ciclo emette un segnale in uscita di fine ciclo. Gli attuatori sono tutti i dispositivi che producono un'azione fisica: cilindri e motori pneumatici e oleodinamici, motori elettrici, lampade segnalazione, generatori calore, ecc. Nel blocco degli attuatori sono compresi anche gli azionamenti, ossia quei dispositivi che adattano i segnali elettrici provenienti dall'unità di comando agli attuatori (relè, elettrovalvole, driver motori, ecc.) I trasduttori sono dispositivi elettrici o elettronici che trasformano le grandezze fisiche rilevate dal campo (field) in segnali elettrici; il campo è la zona controllata, ossia la macchina o l'impianto. Ne deriva che i trasduttori si trovano spesso a stretto contatto con gli attuatori e sono di molteplice natura e tipo: di posizione, velocità, accelerazione, forza, temperatura, umidità, pressione, portata, ecc. Osservazioni: Dalle definizioni prima date ne deriva che i sistemi di regolazione e controllo sono del tipo ad anello chiuso, mentre i comandi sono ad anello aperto. Nei sistemi ad anello chiuso la sequenza delle operazioni è scandita dai segnali di retroazione, oltre che dai segnali in ingresso; in quelli ad anello aperto invece le sequenze sono temporizzate oltre che comandate dall'esterno. Concentriamo ora la nostra attenzione sull'unità di comando; analizziamo un semplicissimo sistema di controllo di un cilindro pneumatico che esegue il seguente ciclo: START dall'esterno per la corsa di avanzamento e ritorno automatico. Pur nella sua estrema semplicità è questo un sistema automatico a tutti gli effetti: Cilindro = attuatore, finecorsa = trasduttori, collegamenti (cavi) = logica di comando. Lo schema elettrico a lato realizza il suddetto funzionamento mediante dei collegamenti fra trasduttori ed azionamento dell'attuatore Sistemi a logica programmabile – Appunti per il corso di Sistemi e Automazione a cura Prof. A. Del Sole Pag. 1 / 6 (elettrovalvola). Possiamo osservare che tale circuito mette in atto le seguenti espressioni logiche che rappresentano matematicamente il funzionamento del circuito: A+ = Start * a 0 ; A- = a1; ossia una porta logica AND ed una YES. Poiché ciò è ottenuto mediante dei semplici collegamenti elettrici la logica di comando realizzata è detta: logica cablata. Il PLC Vediamo ora come lo stesso risultato può essere ottenuto mediante un dispositivo a logica programmabile (PLC - Programmable Logic Controller). I collegamenti non sono più diretti fra trasduttori ed attuatori, ma entrambi questi elementi vengono collegati al PLC: i trasduttori ed il pulsante di Start (comando esterno) ai morsetti di ingresso; gli attuatori a quelli di uscita. I collegamenti tra i segnali in ingresso (input) e quelli in uscita (output) viene realizzato dal PLC sulla base del programma caricato dall'utente. In tale programma quindi, mediante un opportuno linguaggio di programmazione vengono scritte le espressioni logiche che rappresentano il funzionamento del circuito. Anche se per un semplicissimo automatismo come questo l'utilizzo del PLC può sembrare una inutile complicazione, oltre che un aumento dei costi rispetto a dei semplici cavi elettrici, in realtà molti sono i vantaggi del PLC rispetto alla logica cablata, anche per piccoli impianti costituiti da pochi attuatori e trasduttori. Infatti il mercato oggi offre a costi contenuti i micro-PLC (8-10 Inputs; 4-8 Outputs) facili da programmare con linguaggi grafici, che portano i vantaggi della logica cablata anche per piccole applicazioni; tant'è che molto più spesso si usano i PLC nella building automation (automazione degli edifici) per comandare impianti di condizionamento, di illuminazione, serramenti. I vantaggi sono: cablaggi semplificati, maggiore affidabilità, possibilità di modificare il ciclo via software senza intervenire sull'impianto (flessibilità), elevata disponibilità di contatori, timer, memorie senza aggiungere elementi elettromeccanici all'impianto, possibilità di simulare preventivamente, via software, il funzionamento dell'impianto, interfaccia uomo-macchina facilitata grazie all'uso di pannelli operatore. I grossi PLC industriali inoltre permettono di svolgere calcoli aritmetici, di essere collegati in rete per la gestione integrata di grossi impianti produttivi, di estendere, mediante il bus di campo, il proprio campo d'azione anche a centinaia di metri di distanza. Prima di passare alla programmazione è necessario analizzare come è costituito all'interno un PLC, le parti che lo compongono e capire il suo funzionamento. Il mercato oggi offre possibilità di configurazioni molto diverse che possiamo raggruppare in due categorie: PLC monoblocco: così detti perché comprendono in unico corpo tutte le parti costituenti e quindi hanno un numero fisso e limitato di ingressi ed uscite. Trattasi solitamente di PLC di gamma medio bassa con potenzialità limitate; però sono economici, semplici da installare e programmare, pur garantendo la gestione di macchine anche abbastanza complesse. PLC modulari: vengono composti sulla base di un telaio (rack) dotato di alimentatore e di una serie di vani in cui vengono inseriti i vari moduli (CPU, Schede I / O, ecc.). Il collegamento fra detti moduli avviene mediante un bus per la trasmissione dell'alimentazione e dei dati fra componenti e CPU. L'evidente vantaggio di questi è che vengono composti e configurati in base Sistemi a logica programmabile – Appunti per il corso di Sistemi e Automazione a cura Prof. A. Del Sole Pag. 2 / 6 all'impianto da controllare, come n° di ingressi e di uscite funzioni speciali di stampa, comunicazione, controllo motori, ecc. Monoblocco o modulare che sia un PLC è sempre costituito secondo il seguente schema funzionale, che quindi può ritenersi valido per buona parte di essi, se dotati di soli ingressi ed uscite ON/OFF. Il cuore del sistema è l'unità centrale o CPU (Central Processing Unit); trattasi di un microprocessore che elabora le istruzioni del programma utente leggendo i dati nella memoria degli ingressi, eseguendo su di essi le operazioni logiche e scrivendo i risultati nella memoria delle uscite. La CPU inoltre, dovendo gestire il funzionamento di tutto il sistema svolge ulteriori compiti: controllo delle schede di ingresso ed uscita, esecuzione di temporizzazioni e conteggi, esecuzione di operazioni matematiche, memorizzazioni intermedie di dati, gestione di porte di comunicazione ausiliarie, ecc. E' chiaro che, essendo molteplici i compiti da svolgere, risulta importante per le prestazioni di tutto il sistema la velocità di elaborazione del processore le cui prestazioni si evolvono parallelamente a quelle dei PC. La CPU per svolgere i suoi compiti ha bisogno di opportuni supporti di memoria in cui salvare le informazioni. Vi sono diversi tipi di memorie elettroniche: RAM (Random Access Memory) è una memoria caratterizzata dal permettere l'accesso diretto a qualunque indirizzo di memoria in modo veloce; è riscrivibile e volatile, ossia perde il contenuto se non alimentata (spegnimento PLC). Per renderla non volatile occorre alimentarla con una pila tampone (RAM tamponata). Tale memoria è impiegata per via della sua velocità in lettura e scrittura come memoria di lavoro e memoria dati; la volatilità in tal caso non è un problema in quanto tali dati vengono aggiornati in continuazione durante il funzionamento e quindi anche all'avvio. Per usi particolari che richiedono il salvataggio dei dati anche in caso di interruzione dell'alimentazione elettrica si ricorre alle RAM tamponate. ROM (Read Only Memory) è una memoria di sola lettura, permanente, che non può essere modificata. Viene utilizzata nel PLC per contenere il Sistema Operativo, insieme di programmi che ne permettono il funzionamento, che quindi non può essere modificato dall'utente. EPROM (Erasable Programmable Read Only Memory), è una memoria di sola lettura cancellabile tramite raggi ultravioletti e riprogrammabile con un apposito programmatore. Per essere riprogrammata deve quindi essere rimossa dal dispositivo in cui è installata; ormai tecnicamente superata dalla: EEPROM (Electrically Erasable Programmable Read Only Memory), memoria non volatile per la quale le operazioni di scrittura, cancellazione e riscrittura hanno luogo elettricamente, senza rimuoverla dalla sua sede. E' quindi usata per memorizzare quei dati che devono essere mantenuti quando viene tolta l'alimentazione elettrica, ma che possono essere modificati. E' idonea per contenere il programma utente che non si può cancellare allo spegnimento; è paragonabile al hard disk dei PC. Il programma utente comunque per poter essere letto velocemente dalla CPU, viene da questa copiato in un'area della RAM all'avvio del PLC. Si stanno diffondendo ultimamente anche le FLASH EPROM più veloci delle precedenti (usate in tutte le schede di memoria e pen drive oramai diffusissime) La scheda o modulo Ingressi collega il PLC ai trasduttori dell'impianto automatico; riceve da questi i segnali (generalmente tensioni a 24V c.c.) e li trasforma in bit della memoria dati in ingresso (0=tensione assente, 1=tensione presente). E' importante che vi sia esatta corrispondenza biunivoca fra morsetti Sistemi a logica programmabile – Appunti per il corso di Sistemi e Automazione a cura Prof. A. Del Sole Pag. 3 / 6 della scheda e bit della memoria, per questo vi è un opportuno circuito di indirizzamento. La scheda o modulo Uscite collega il PLC agli attuatori mediante gli azionamenti; essa svolge un compito simmetrico rispetto alla precedente: legge infatti i bit della memoria dati in uscita e li trasforma in segnali elettrici (tensioni) da inviare ai relativi morsetti; fornisce quindi alimentazione ai dispositivi collegati (elettrovalvole, relè, lampade, ecc.). Ovviamente alle uscite del PLC si possono collegare solo dispositivi di bassa tensione e potenza perché questi risultano tutti a carico dell'alimentatore. Una precisazione a tal proposito: nei micro-PLC spesso ad ogni uscita è associato un piccolo relè, interno al PLC stesso, che viene eccitato quando è attiva l'uscita relativa. In questo modo alimentando opportunamente il relè si possono comandare anche carichi di potenza elevata (es. 230V – 10A) senza nessun aggravio per l'alimentatore; ciò da molta flessibilità applicativa a questi piccoli dispositivi. Le schede di ingresso ed uscita rappresentano quindi l'interfaccia fra la logica interna del PLC ed i dispositivi del campo; queste vedono da un lato l'elettronica interna che opera a 5V e correnti dell'ordine dei μA e dall'altro i dispositivi dell'impianto che operano a 24V, ma anche a 48, 110, 230 Volt e che possono generare disturbi e sovratensioni a più alto livello, essendo il campo, dal punto di vista elettrico ed elettromagnetico, un vero e proprio campo di battaglia. Per tale motivo tali interfacce non effettuano solo un semplice collegamento ma devono anche adattare e filtrare i segnali che ricevono per non danneggiare l'elettronica interna, isolando l'ambiente esterno da quello interno. Si pensi all'ambiente di una biblioteca assorto e silenzioso e ad uno stadio di calcio nel corso di un infuocato derby, se fossero in diretta comunicazione cosa resterebbe dei libri e degli studiosi !!! A tale scopo sono dotate per ogni ingresso/uscita di un optoisolatore (detto anche fotoaccoppiatore), componente elettronico che permette di trasferire un segnale fra due circuiti mantenendo l'isolamento galvanico (ossia elettrico) fra gli stessi. Viene realizzato normalmente accoppiando otticamente un LED con un elemento fotosensibile (fotodiodo). Le accensioni del LED legate al segnale in ingresso vengono rilevate dal fotodiodo ottenendo il trasferimento dell'informazione da un circuito all'altro senza che vi sia continuità elettrica. Procedendo con l'analisi dello schema vediamo la presenza di un alimentatore che può essere sia interno al PLC che esterno e che fornisce tensioni e correnti necessarie al funzionamento di tutti i circuiti interni e, come abbiamo visto, anche di tutti i dispositivi collegati alle uscite. L'interfaccia di programmazione è una porta mediante la quale il PLC può essere collegato e colloquiare con il dispositivo di programmazione. Quest'ultimo, sempre più diffusamente, è un normale PC nel quale si esegue un apposito programma fornito dal costruttore del PLC. Mediante questo possiamo non solo scrivere il programma e caricarlo nel PLC per la sua esecuzione, ma possiamo anche effettuare una simulazione del suo funzionamento prima di caricarlo, possiamo stamparlo, salvarlo su Hard Disk, ecc. Grazie allo schema semplificato finora analizzato del hardware possiamo capire il funzionamento del PLC basato su un ciclo di lavoro della CPU che viene ripetuto in continuazione quando si trova in modalità RUN; l'alternativa a questa è la modalità STOP nella quale non viene eseguito nessun ciclo. Tale ciclo di lavoro è chiamato scansione e si può meglio descrivere con un diagramma di flusso. ACQUISIZIONE STATO INGRESSI Rilevamento della presenza di segnali in ingresso ed impostazione dei bit dell'Immagine ingressi ELABORAZIONE DEL PROGRAMMA Esecuzione in successione delle operazioni logiche ed aritmetiche ed allocazione dei risultati nelle Memorie interne e nell'Immagine Uscite AGGIORNAMENTO STATO USCITE Attivazione o disattivazione delle uscite in base al valore dei rispettivi bit Sistemi a logica programmabile – Appunti per il corso di Sistemi e Automazione a cura Prof. A. Del Sole Pag. 4 / 6 La scansione appena descritta è detta sincrona per ingressi ed uscite in quanto gli ingressi vengono letti contemporaneamente, così come contemporaneamente vengono aggiornate le uscite alla fine dell'elaborazione del programma; rappresenta lo standard con cui lavorano i PLC. Questa, per quanto possono essere veloci i processori che costituiscono la CPU, comporta comunque un lasso di tempo fra la lettura degli ingressi e l'aggiornamento delle uscite, legato al tempo di elaborazione del programma che a sua volta dipende dalla lunghezza dello stesso. Ne consegue che il PLC presenta un ritardo (5 ms basso, 100 ms medio-alto) fra l'arrivo di un segnale e l'attivazione di un'uscita a questo collegata. Quando tale ritardo non è compatibile col processo da controllare si ricorre a PLC che hanno degli ingressi veloci (interrupt) con la capacità di interrompere il normale svolgimento del programma, eseguire le operazioni ad essi collegate con rapido aggiornamento di relative uscite e successiva ripresa dello svolgimento del programma principale. Finora abbiamo sempre parlato di segnali, sia in ingresso che in uscita di tipo ON/OFF; sono questi segnali digitali, in quanto rappresentabili mediante un bit, ossia un numero binario (digitale = numerico – digit = cifra). Per un elaboratore numerico non vi sono quindi difficoltà a trattare tali segnali. Spesso però nei sistemi automatici sono presenti dei segnali analogici, ossia che variano con continuità nel tempo assumendo un numero indefinito di valori. Per poter essere elaborati dal PLC detti segnali devono essere digitalizzati, ossia trasformati in una sequenza di valori numerici; tale funzione viene svolta dalle schede di ingresso analogiche dotate di particolari circuiti integrati detti convertitori A/D. Vediamo in cosa consiste, semplificando e schematizzando, questo processo di digitalizzazione, aiutandoci col grafico a lato. Innanzitutto il segnale analogico è rappresentato da una tensione o una corrente che deve essere compresa entro un determinato intervallo; nel nostro caso una tensione 0-10 V. Tale intervallo viene suddiviso dal convertitore in un numero finito di sotto-intervalli in base alla sua risoluzione, ossia in base al numero di bit di cui dispone: 8 bit, 28=256 livelli, 10 bit = 1024 livelli. Ogni livello di tensione viene rappresentato mediante un numero binario. Anche il tempo viene suddiviso in intervalli in base alla frequenza di campionamento: ad esempio 8 kHz significa 8000 volte al secondo, quindi l'intervallo di tempo è pari a 1/8000 = 125 μs. In sostanza: ad ogni intervallo di tempo il convertitore legge il segnale analogico in ingresso (campionamento) e lo approssima al più vicino livello (quantizzazione); emette quindi in uscita un numero binario corrispondente al livello di quantizzazione attribuito al segnale in quell'istante. Osservazioni: il segnale analogico in ingresso può assumere infiniti valori entro l'intervallo ammesso, per questo è detto continuo; il segnale digitale in uscita invece può assumere solo un numero finito (limitato) di valori, per questo è detto discreto. Il segnale digitalizzato è un'approssimazione del segnale analogico; tale approssimazione migliora all'aumentare della risoluzione e della frequenza di campionamento. Il convertitore emette continuamente in uscita dei valori, anche se il segnale in ingresso non varia. Poiché la rapidità con cui possono variare i segnali analogici è di diversi ordini di grandezza inferiore rispetto alla rapidità con cui convertitori e CPU operano, se la scheda ha diversi ingressi analogici si usa un solo convertitore per tutti. È necessario quindi un dispositivo, detto multiplexer che ciclicamente commuta l'ingresso del convertitore con i diversi ingressi della scheda. La CPU che comanda il multiplexer “sa” a quale ingresso corrispondono i bit in uscita dal convertitore in un determinato istante. Sistemi a logica programmabile – Appunti per il corso di Sistemi e Automazione a cura Prof. A. Del Sole Pag. 5 / 6 Lavoro analogo ma opposto svolgono le schede di uscita analogiche che mediante il convertitore D/A ed il demultiplexer permettono quindi al PLC di produrre dei segnali analogici mediante i quali ottenere: variazione n° di giri di un motore, posizionamento di assi, regolazione della forza di un attuatore, ecc. Concludo questa sintetica trattazione sul PLC riportando la definizione che ne danno le norme CEI EN 61131 (insieme di norme riguardanti tali dispositivi e la loro programmazione): Sistema elettronico a funzionamento digitale, destinato all'uso industriale, che utilizza una memoria programmabile per l'archiviazione interna di istruzioni orientate all'utilizzatore per l'implementazione di funzioni specifiche, come quelle logiche, di sequenziamento, di temporizzazione, di conteggio e di calcolo aritmetico, per controllare, mediante ingressi e uscite sia digitali che analogiche, vari tipi di macchine e processi. Sia il PLC che le periferiche associate sono progettati in modo da poter essere facilmente integrati in un sistema di controllo industriale e utilizzati in tutte le funzioni previste. Sistemi a logica programmabile – Appunti per il corso di Sistemi e Automazione a cura Prof. A. Del Sole Pag. 6 / 6