PLC INTRODUZIONE Il controllore a logica programmabile (PLC), apparso sul mercato nel 1969 su iniziativa della General Motors, è un'apparecchiatura elettronica molto simile ad un calcolatore, in grado di eseguire sequenzialmente un insieme ordinato di istruzioni scritte nella sua memoria, ma che ha raggiunto un livello elevato di affidabilità nelle applicazioni industriali dove esistono condizioni ambientali molto severe per la presenza di disturbi elettrici, alte temperature, shock meccanici e sostanze inquinanti. Il PLC sta assumendo il ruolo di componente fondamentale per la realizzazione della fabbrica automatica. Settori di applicazione che vedono ampia diffusione dei PLC sono: macchine utensili; industria automobilistica; centri di lavorazione; robotica; acciaierie; cementifici; industria chimica e alimentare; industria tessile; LOGICA CABLATA E LOGICA PROGRAMMATA Un sistema usato per automatizzare una macchina o un impianto, qualunque sia la tecnologia che si utilizza, è sempre costituito da tre parti fondamentali: la sezione di ingresso la sezione di elaborazione la sezione di uscita. Le sezioni di ingresso e di uscita svolgono prevalentemente il compito di adattare i segnali elettrici che provengono dall'impianto e quelli che vanno a comandare gli apparati azionatori. Il controllo delle condizioni che consentono la sequenza di attivazione degli organi che costituiscono la macchina è eseguito dall'automatismo, identificabile con la sezione di elaborazione. Gli automatismi si realizzano con tre tipi di tecnologie: sistemi a logica cablata (di tipo elettromeccanico) sistemi a logica cablata statica (di tipo elettronico) sistemi a logica programmata (PLC) I sistemi a logica programmata consentono una riduzione delle dimensioni ed una maggiore flessibilità dell'impianto. Il PLC è quindi economicamente competitivo soprattutto quando l'impianto è complesso oppure è soggetto a frequenti modifiche: al variare delle specifiche di funzionamento, anziché ricablare il quadro, è sufficiente riprogrammare il PLC. Il PLC, inoltre, si presenta molto compatto e con ingombro ridotto, è un'apparecchiatura completamente statica, ovvero non presenta organi meccanici in movimenti, e ciò si traduce in un'ottima affidabilità ed un'elevata sicurezza di funzionamento. CONFRONTO TRA PLC E PERSONAL COMPUTER Il PLC lavora in tempo reale. Il PLC è protetto da disturbi di natura elettromagnetica. Nei PLC si pone molta più attenzione a quegli accorgimenti atti ad aumentarne la robustezza dal momento che opereranno in ambienti industriali. Il PC deve interagire con l'uomo per cui gli organi di ingresso ed uscita sono video, tastiera, stampante ecc.. Il PLC, interfacciandosi soprattutto con sensori ed attuatori, che forniscono e richiedono segnali elettrici, necessita di un hardware particolare. Il PC fa uso di linguaggi di programmazione ad alto livello mentre i PLC dispongono di linguaggi di più facile interpretazione, con istruzioni e funzioni specifiche adatte ai controlli industriali e molto vicine alla simbologia utilizzata nella stesura di schemi elettromeccanici tradizionali. HARDWARE DEL PLC Il PLC è fondamentalmete costituito da cique parti: sezione CPU, cervello del sistema, che prende tutte le decisioni logiche; sezione di MEMORIA, supporto fisico dove sono registrate le istruzioni che costituiscono il programma applicativo e i dati necessari per funzioni ausiliarie; sezione di INGRESSO, che riceve i segnali elettrici (digitali o analogici) provenienti dall'impianto (finecorsa, pressostati, pulsanti, selettori ecc.); sezione di USCITA, che riceve i segnali prodotti dall'elaborazione e li adatta per comandare con potenze adeguate i vari organi attuatori (motori, elettrovalvole, teleruttori, frizioni, visualizzatori, lampade, ecc. ); BUS, che consente la comunicazione tra le varie sezioni. CPU Legge lo stato dei segnali di ingressi provenienti dalla macchina da controllare ed esegue, in sequenza, le istruzioni registrate in memoria. In base ai risultati dell'elaborazione, provvede ad aggiornare lo stato delle uscite del sistema. MEMORIA In generale si può pensare suddivisa in 4 parti: -2- 1) Memoria per il programma utente: contiene le istruzioni che costituiscono il programma. Come anche 2) e 3) è una memoria di tipo RAM realizzata con tecnologia CMOS. Essendo una memoria volatile, è necessario salvaguardare il contenuto nel caso di mancanza improvvisa di tensione, per cui il PLC è dotato di una batteria tampone al litio. 2) Memoria per le funzioni interne: contiene i dati necessari all'elaborazione logica e alle funzioni ausiliarie (temporizzatori, contatori e registri a scorrimento) e i risultati intermedi prodotti da operazioni aritmetiche e logiche. Può essere per esempio necessario non trasferire direttamente in uscita il risultato di una funzione logica, ma immagazzinare tale valore in memoria per poterlo utilizzare come variabile di ingresso in altre equazioni logiche. 3) Memoria per lo stato degli ingressi e delle uscite: questa zona ha un'allocazione di tipo statico, cioè i dati di I/O sono registrati sempre negli stessi indirizzi. All'inizio di ogni ciclo di scansione viene registrata un'immagine dello stato degli ingressi: tale fotografia delle condizioni di ingresso rimane immutata per tutta la durata del ciclo e una eventuale variazione dello stato di uno o più ingressi sarà rilevato solo all'inizio del ciclo successivo. Durante l'esecuzione del programma i dati vengono elaborati dall'unità centrale ed i risultati vengono memorizzati nella zona che contiene l'immagine dello stato delle uscite. 4) Memoria per il software di sistema (sistema operativo); il sistema operativo, contenuto in memoria ROM o EPROM, ha le seguenti funzioni: diagnostica del sistema; controllo della scansione e della durata del programma utente; gestione della comunicazione per collegamento con altri PLC o perferiche. L'estensione della memoria si misura in Kwords dove una word può essere di 8 o 16 bit. - SEZIONI di I/O Il PLC è un' apparecchiatura fortemente orientata all'interfacciamento con dispositivi industriali. Le sue sezioni I/O sono costituite da convertitori che svolgono la funzione di adattare i segnali provenienti dall'esterno e devono essere compatibili con una vasta gamma di segnali elettrici, che vanno dai 5V continui ai 220V alternati, dai segnali analogici a quelli digitali. I moduli hanno caratteristiche standard e si inseriscono negli slot per I/O presenti nel rack del PLC. Questi moduli offrono una elevata sicurezza operativa garantita dall'isolamento galvanico, ottenuto mediante optoisolatori, esistente tra i segnali esterni e la logica interna del PLC (allegati ...............). SOFTWARE DEL PLC INTRODUZIONE Il funzionamento del PLC è ciclico, cioè la CPU, per elaborare il programma, legge ed esegue in sequenza le istruzioni, partendo dalla prima. Dopo l'elaborazione dell'ultima istruzione, ricomincia da capo. All'inizio di ogni ciclo di scansione la CPU interroga i segnali di ingresso e li registra nella memoria immagine dello stato degli ingressi, in modo da creare una fotografia dello stato del processo. Durante tutta l'elaborazione del programma tutte le interrogazioni sul valore degli ingressi fanno riferimento a questa memoria immagine. In questo modo lo stato dei segnali di ingresso si conserva inalterato per un intero ciclo di elaborazione, cosicché i cambiamenti di segnale che si verificano durante il ciclo non possono creare disturbi. I risultati prodotti dall'elaborazione durante il ciclo sono registrati temporaneamente nella memoria immagine dello stato delle uscite. Solo al completamento del ciclo del programma il contenuto della memoria immagine è trasferito alle corrispondenti unità di uscita. Il tempo necessario per scandire un tutte le istruzioni del programma viene chiamato tempo di ciclo, parametro importante per individuare la potenza di un PLC. Per poter paragonare i tempi di ciclo di modelli diversi, ci si riferisce ad una lunghezza standard di un programma di 1024 (2^10) locazioni di memoria: l'ordine di grandezza di questi tempi va da -3- qualche msec alle decine di msec. SOFTWARE E LINGUAGGI I PLC si avvalgono di linguaggi di programmazione specifici: non si utilizzano linguaggi ad alto livello come FORTRAN, BASIC o PACAL perchè, pur facilitando la stesura dei programmi, sono troppo lenti e non garantiscono una azione immediata tra istruzione e azione del processo. I costruttori americani utilizzano linguaggi che hanno una certa somiglianza con gli schemi elettrici a relé ma con le due polarità verticali e gli elementi logici disposti su linee orizzontali. Questi linguaggi si chiamano: schema a contatti, rete ladder (a scala) o KOP. I costruttori europei propongono linguaggi che usano abbreviazioni mnemoniche delle descrizioni delle funzioni, come in un listato assembler. Questi linguaggi vengono chiamati: lista istruzioni o AWL. SCHEMA A CONTATTI (KOP) Questa simbologia rappresenta il modo con cui i contatti interni di un PLC vengono associati allo stato dell'ingresso e non implica un'analoga corrispondenza con il tipo di contatto usato esternamente; non è capace cioè di stabilire se un pulsante di ingresso è azionato oppure no ma capire se l'ingresso è aperto oppure chiuso. Il programma è una serie di linee orizzontali chiamate RUNG disposte tra due polarità verticali la sinistra delle quali rappresenta il polo caldo (fase). Il contatto ausiliario di un relé è identificato con un contatto NA che ha la stessa sigla dell'uscita (funzione di memorizzazione). - LISTA ISTRUZIONI (AWL) Un programma è composto da una sequenza di istruzioni. Una istruzione è costituita da: un codice operativo, che individua l'operazione; un operando che indica il segnale sul quale occorre operare. LISTA ISTRUZIONI STR (LD) STR NOT (LD NOT) -4- AND (AND) OR (OR) AND NOT (AND NOT) -5- OR NOT (OR NOT) AND STR (AND LD) OR STR (OR LD) TEMPORIZZATORI È una funzione interna di tutti i PLC. I temporizzatori SIEMENS sono di cinque tipi diversi • Impulso (SI) • Impulso prolungato (SV) -6- • • • Ritardo all’inserzione (SE) Ritardo all’inserzione con memoria e reset (SS) Ritardo alla disinserzione (SA) La sua identificazione avviene tramite la lettera T. IMPULSO (SI) :U E 0.0 :L KT 500.0 si stabilisce il tempo :SI T 1 lancio del temporizzatore :NOP 0 :NOP 0 necessari per la conversione KOP-AWL :NOP 0 :U T 1 si mette in AND il temporizzatore := A 1.0 L'impulso viene attivato sul fronte di salita dell'ingresso di lancio e dura per il tempo impostato. Se l'impulso dell'ingresso di lancio dura di meno del tempo stabilito, anche l'uscita torna subito a zero. IMPULSO PROLUNGATO (SV) :U E 0.0 :L KT 500.0 :SV T 2 :NOP 0 :NOP 0 :NOP 0 :U T 2 := A 1.0 Rispetto a SI cambia per il fatto che, anche se l'impulso di ingresso di lancio torna a zero, in uscita il segnale continua per tutto il tempo stabilito. RITARDO ALL’INSERZIONE (SE) :U E 0.0 :L KT 500.0 :SE T 3 :NOP 0 :NOP 0 :NOP 0 :U T 3 := A 1.0 Quando si attiva l'ingresso E 0.0, dopo un tempo stabilito si attiva il segnale. -7- RITARDO ALL’INSERZIONE CON MEMORIA E RESET (SS) :U E 0.0 :L KT 500.0 :SS T 4 :NOP 0 :NOP 0 :NOP 0 :U T 4 := A 1.0 Torna a zero solo con un impulso di reset; siccome utilizza il reset ci sono solamente due NOP (per DU e DE). RITARDO ALLA DISINSERZIONE (SA) :U E 0.0 :L KT 500.0 :SA T 5 :NOP 0 :NOP 0 :NOP 0 :U T 5 := A 1.0 DU rappresenta istante per istante la situazione del conteggio espressa in binario; DE rappresenta istante per istante la situazione del conteggio espressa in BCD. -8-