I Controllori a Logica Programmabile
I Controllori a Logica Programmabile I Controllori a Logica Programmabile sono dispositivi elettronici nati per la gestione dei processi di automazione industriale. Concepiti per sostituire la tradizionale logica cablata. Inutili altri dispositivi tradizionali nell’automazione industriale quali temporizzatori e contatori.
I Controllori a Logica Programmabile Caratteristiche ricercate: robustezza e affidabilità pari a quelle dei dispositivi elettromeccanici che andava a sostituire e integrare macchina solida in grado di operare in un ambiente nel quale sarebbe stata sottoposta a urti e vibrazioni oltre a variazioni di temperatura e umidità notevoli durante il funzionamento.
I Controllori a Logica Programmabile E ancora… Semplicità di installazione e programmazione anche a operatori abituati a lavorare con l’elettromeccanica tradizionale. Soluzioni vincenti: robuste morsettiere per il collegamento dei dispositivi di campo sviluppo di linguaggi di programmazione che consentissero di operare il più possibile come con i tradizionali schemi elettrici (ladder diagram)
I Controllori a Logica Programmabile
I Controllori a Logica Programmabile Nei primi PLC interfacciamento problematico. Programmazione classica di allora: Ladder tracciato a mano, trasformato – ancora a mano – in listato, caricato nel PLC attraverso tastiera. Collegamento a stampante: possibile per lettura programma in memoria. Limitate capacità grafiche delle stampanti hanno imposto lo sviluppo della simbologia semplificata ancora oggi in uso.
I Controllori a Logica Programmabile Struttura base del PLC La struttura minima di un PLC comprende una sezione di alimentazione, una sezione CPU comprensiva di memoria RAM e ROM, uno o più moduli di ingresso e uscita digitali. IERI: diffusione di PLC “compatti” e difficilmente espandibili. OGGI: diffusione di PLC “modulari” con possibilità di scelta di quanti Ingressi/Uscite occorrono.
I Controllori a Logica Programmabile Possibile inoltre costruire “su misura” la macchina scegliendo tra: Ingressi digitali o analogici con diverse gamme di tensione (o corrente) di ingresso Uscite digitali a relè oppure open-collector Uscite analogiche in tensione o corrente Moduli speciali (ad esempio contatori veloci)
I Controllori a Logica Programmabile Il “contenitore” dei moduli si chiama rack. Sul fondo del rack è presente un BUS di dati. Di norma è possibile collegare tra loro più rack in modo da aumentare il numero di ingressi e uscite disponibili: di regola è sufficiente una sola CPU posta nel primo rack ma occorre un alimentatore per rack.
I Controllori a Logica Programmabile Sezione alimentazione Ha il compito di adattare la tensione di alimentazione a quella dell’elettronica a bordo delle varie componenti del PLC. Di norma fornisce l’alimentazione anche per i componenti collegati ai suoi ingressi. Le uscite spesso si affidano invece a sorgenti esterne (causa potenze maggiori). Sorgenti standard: rete 230 V 50 Hz, 24 Vca, 24 Vdc. La scelta del tipo di alimentazione va fatta sulla base delle caratteristiche dell’impianto che deve essere automatizzato.
I Controllori a Logica Programmabile Sezione CPU Cuore (o cervello) della macchina. Contiene: microprocessore (la CPU vera e propria, ovvero il cervello della macchina) memoria di programma, quella dove è presente il programma utente la memoria con l’immagine degli ingressi e delle uscite, dei registri dei temporizzatori e contatori.
I Controllori a Logica Programmabile La CPU si occupa di dialogare con tutte le schede presenti nel PLC, analizzare lo stato degli ingressi e aggiornare lo stato delle uscite secondo quanto contenuto nel programma utente. Una delle peculiarità delle CPU di ultima generazione è quella di consentire le modifiche di programma anche con PLC in RUN: questo permette, con le opportune cautele, di intervenire su impianti che, per la natura del ciclo di lavorazione, non possono essere arrestati. Di solito il modulo CPU contiene anche le schede di interfaccia che permettono al PLC di dialogare con i dispositivi di programmazione (tipicamente PC con software dedicato) e tra PLC.
I Controllori a Logica Programmabile Moduli di ingresso digitali (Digital Input) Accettano informazioni digitali (aperto-chiuso). Di norma a 8, 16 o 32 ingressi. Numerazione più adottata per 8 bit: da 0 a 7. Con i moduli a 16 bit da 0 a 15 oppure suddivisione in due blocchi, da 0 a 7 e ancora da 0 a 7: in questo caso un ulteriore prefisso numerico consente di distinguere i due blocchi in fase di programmazione.
I Controllori a Logica Programmabile Con riferimento al blocco raffigurato a lato che rappresenta un modulo a 16 ingressi digitali della Siemens serie S7-300, occorre assegnare un indirizzo numerico al modulo stesso (ad esempio 140). I primi 8 ingressi assumeranno allora la numerazione da I140.0 a I140.7 e i successivi 8 da I141.0 a I141.7.
Esempio di modulo di Input digitale a 32 ingressi
I Controllori a Logica Programmabile Moduli di uscita digitali (Digital Output) Le uscite digitali comandano attuatori quali bobine dei contattori, le bobine delle elettrovalvole, le lampade di segnalazione, piccoli servomotori, ecc. Le uscite digitali appartengono a due grandi famiglie: le uscite a relè e le uscite open collector.
I Controllori a Logica Programmabile Uscite a relè: sono quelle più robuste elettricamente ma più delicate meccanicamente. Quando il modulo del PLC ha a disposizione poche uscite il costruttore può mettere a disposizione entrambe le estremità del contatto: in questo modo ciascuna uscita può alimentare un circuito a tensione differente; molto più spesso invece le uscite presentano un morsetto comune, pertanto le stesse possono alimentare unicamente attuatori che prelevano la tensione di alimentazione dalla stessa sorgente. Questo genere di uscite può pilotare attuatori che assorbono correnti dell’ordine di qualche ampère che però non devono richiedere frequenti azionamenti pena l’invecchiamento precoce del modulo del PLC.
I Controllori a Logica Programmabile Generalmente si preferisce non pilotare direttamente i carichi con i relè ma interporre dei relè ausiliari: in questo modo, in caso di c.to c.to del carico non si rischia il danneggiamento del relè posto all’interno del modulo del PLC (con conseguente sostituzione di tutto il modulo e danno economico elevato) ma di quello posto esternamente che, generalmente di costo contenuto, può essere facilmente sostituito.
I Controllori a Logica Programmabile Uscite a relè con optoisolatore
I Controllori a Logica Programmabile Le uscite open collector prevedono che il carico sia posto tra il positivo dell’alimentazione e il collettore di un transistor (o di un circuito più complesso che comunque può essere assimilato nel comportamento a un transistor). Quando il PLC fornisce corrente alla base del transistor (di valore tale da portarlo in saturazione) tra collettore ed emettitore la resistenza diventa praticamente nulla e il carico viene regolarmente alimentato.
I Controllori a Logica Programmabile
I Controllori a Logica Programmabile Tale configurazione circuitale presenta vita meccanica infinita ma risulta essere più delicata dal punto di vista elettrico: la corrente massima che questi transistors possono sopportare arriva in genere a un massimo di una cinquantina di milliampère. Nel caso la corrente richiesta dagli attuatori sia superiore a questo limite risulta necessario inserire degli amplificatori di corrente esterni.
I Controllori a Logica Programmabile Moduli di ingresso analogici (Analog Input) “Leggono” un valore in ingresso che può assumere valori compresi tra due limiti e trasformare questa informazione in valore digitale con risoluzioni dell’ordine degli 8, 10, 12, 16 o più bit. Sensori interfacciabili: sonde di temperatura, trasduttori di posizione, di forza, ecc. Esistono moduli pilotati in tensione e in corrente: per la tensione lo standard più diffuso è quello che prevede che all’ingresso possa essere applicato un segnale compreso tra 0 e 10 V, mentre per la corrente gli standard più diffusi sono lo 0-16 mA e il 4-20 mA.
I Controllori a Logica Programmabile Moduli di uscita analogici (Analog Output) Sono moduli nati per pilotare attuatori che lavorano con grandezze variabili: tipico esempio è il pilotaggio di un inverter il quale, a sua volta, gestisce il funzionamento di un motore asincrono. Relativamente alle risoluzioni e alle tipologie di pilotaggio vale quanto detto per gli ingressi analogici.
I Controllori a Logica Programmabile Moduli speciali Esistono poi moduli di tipo speciale che vengono impiegati per applicazioni particolari. Contatori veloci: quando necessita gestire il conteggio di eventi che si presentano con frequenza superiore a quella che il PLC può acquisire (il PLC ha tempi di reazione dell’ordine dei millisecondi) si può demandare il conteggio a questi moduli speciali che lavorano in modo indipendente rispetto al clock del PLC e forniscono lo stato di avanzamento su richiesta della CPU. Modulo PID: modulo idoneo a gestire regolazioni di tipo proporzionale-integrativo-derivativo.
I Controllori a Logica Programmabile Modalità operativa del PLC 1. Nel momento in cui il PLC passa dalla modalità di STOP, durante la quale si può modificare il programma in memoria, entra in modalità RUN azzera innanzitutto un timer interno chiamato “Watch Dog” quindi esegue lettura dello stato degli ingressi e compila la tabella dell’immagine degli ingressi che viene posta in una zona di memoria dedicata.
I Controllori a Logica Programmabile 2. Inizia poi la lettura ed esecuzione sequenziale di tutte le istruzioni memorizzate nel programma (scansione o ciclo) utilizzando per la sua analisi logica l’immagine degli ingressi presente in memoria. Eventuali variazioni dello stato degli ingressi durante la scansione verranno pertanto presi in considerazione solo al ciclo successivo. I risultati delle elaborazioni permettono di aggiornare una seconda tabella, quella dell’immagine delle uscite, conservata anche questa in una apposita area di memoria. Una ulteriore area di memoria si occupa infine di mantenere memorizzato il valore di tempo trascorso dei temporizzatori e il valore di conteggio raggiunto dai contatori.
I Controllori a Logica Programmabile 3. Al termine della scansione il PLC aggiorna lo stato delle uscite fisiche leggendo nella tabella dell’immagine lo stato che queste devono assumere. Ora il ciclo riparte dalla lettura dello stato degli ingressi.
I Controllori a Logica Programmabile Il “Watch Dog” è un timer che valuta, in base alla complessità del programma e al numero di istruzioni contenute, il tempo che dovrebbe trascorrere tra l’inizio della scansione e il suo termine. Nel caso in cui la scansione richieda più tempo del previsto significa che si è manifestato un problema e il Watch Dog provvede ad arrestare il PLC segnalando la presenza dell’errore.
I Controllori a Logica Programmabile I tempi ciclo (scansione) dipendono dalla lunghezza del programma presente nella memoria del PLC; i tempi di durata della scansione possono variare da un minimo di alcuni millisecondi (tipicamente 5-10) a un massimo di un centinaio di millisecondi.
I Controllori a Logica Programmabile Debug Una peculiarità delle ultime generazioni di PLC è quella di poter fare in tempo reale l’analisi del comportamento del programma in corso di testing. Mentre il programma è in esecuzione, connettendo secondo le indicazioni del produttore il PC al PLC è possibile vedere il “flusso di energia” nel ladder diagram, verificare lo stato degli ingressi, controllare in tempo reale il valore di conteggio raggiunto da temporizzatori e contatori. E’ possibile inoltre “forzare” lo stato di ingressi e uscite, ovvero modificarne lo stato logico (e quindi, ad esempio, attivare o disattivare un’uscita) cliccando direttamente sul simbolo presente nel ladder diagram.
I Controllori a Logica Programmabile Simulazione Accanto alla modalità di debug spesso i produttori del software mettono anche a disposizione degli ambienti di simulazione: il programma viene allora caricato in un PLC virtuale e viene data la possibilità di attivare gli ingressi programmati al fine di testare il comportamento del programma realizzato. Nella modalità di simulazione alcune funzionalità potrebbero non essere disponibili: ad esempio nei PLC Siemens non è possibile simulare il comportamento dei PLC connessi in rete.
I Controllori a Logica Programmabile Gestione Slave dei PLC Si ha quando i PLC sono connessi in una rete informatica. I singoli PLC gestiranno delle automazioni localizzate mentre sarà demandato ad altri sistemi (ad esempio PC) il coordinamento delle macchine inserite in rete. Se il PLC opera in rete con altri PLC, sono necessarie delle schede di comunicazione adatte al protocollo (ovvero le regole di scambio delle informazioni in rete) già implementato sugli altri PLC.
I Controllori a Logica Programmabile Le schede di comunicazione possono essere comprese nella struttura base del PLC (modulo CPU) oppure realizzate sotto forma di moduli di dimensione standard. Protocollo di comunicazione più diffuso è il protocollo TCP/IP (quello classico utilizzato dai PC connessi in rete). Possono essere presenti poi protocolli proprietari, ovvero sviluppati dalla singole aziende produttrici di PLC e che consentono di mettere in rete tra loro solo PLC dello stesso produttore.
I Controllori a Logica Programmabile Nei PLC Siemens della serie S7-300 sono disponibili sia l’interfaccia MPI (protocollo proprietario di Siemens) che Profinet (nome assegnato da Siemens all’interfaccia TCP/IP).
I Controllori a Logica Programmabile Linguaggi di programmazione I PLC attualmente vengono programmati attraverso softwares dedicati che funzionano su sistemi Windows, come ad esempio, per la Siemens, il software Tia Portal. Di norma i programmi vengono realizzati su PC, vengono poi compilati (cioè trasformati da un linguaggio simbolico a un linguaggio macchina) e caricati nel PLC. Per motivi di sicurezza non è possibile effettuare l’operazione inversa, ovvero prelevare il programma dal PLC e decompilarlo all’interno del PC: questo permetterebbe a qualsiasi utente di modificare il programma, ricaricarlo nella macchina e rimettere in servizio l’impianto con il rischio di provocare danni.
I Controllori a Logica Programmabile Ladder diagram (LD o KOP) detto Linguaggio a contatti o diagramma a scaletta - È il linguaggio più usato per la sua affinità con gli impianti di automazione elettromeccanica tradizionali. Presenta però delle limitazioni per l’impiego in applicazioni più complesse. (Pensiamo al confronto con il linguaggio di programmazione C dove istruzioni come IF, FOR, WHILE, SWITCH permettono un maggior grado di automazione)
I Controllori a Logica Programmabile Function Block Diagram (FBD o FUP) detto Diagramma a blocchi funzionali – E’ un linguaggio di programmazione grafico che permette di effettuare una programmazione che ricorda molto l’impiego delle porte logiche.
I Controllori a Logica Programmabile Instruction List (IL o AWL) detto Lista di istruzioni – E’ il primo linguaggio adottato per la programmazione del PLC ed è facilmente ricavabile dal ladder del programma: ciascun simbolo e funzione sono associati a una determinata istruzione.
I Controllori a Logica Programmabile Va infine segnalato che l’orientamento delle aziende produttrici di PLC è quello di implementare anche altri linguaggi di programmazione (es. Visual Basic, C++, ecc.) in modo tale da renderne la programmazione sempre più congeniale all’allargamento della platea degli utilizzatori di questo strumento.
I Controllori a Logica Programmabile Micro PLC (relè elettronici) Sono macchine presentano un numero di ingressi e uscite ridotto, non sono di struttura modulare, nascono comunque per essere installati su guida DIN e presentano una memoria di programma di dimensioni inferiori rispetto ai fratelli maggiori. Per la loro programmazione i produttori mettono a disposizione un software che, interfacciando il PC col Micro PLC, permette il caricamento del programma (precedentemente trasformato in maniera trasparente in codice macchina) e il monitoraggio in tempo reale del suo funzionamento.
I Controllori a Logica Programmabile Al fine poi di consentire a qualsiasi installatore la programmazione del modulo senza necessariamente impiegare un PC, esistono versioni di questi PLC dotate di schermo LCD e tastierino: sul display è possibile disegnare direttamente lo schema ladder associato all’automazione che si desidera realizzare. Attualmente un Micro PLC con 6/8 ingressi e 4 uscite viene commercializzato tra i 100 e i 150 Euro.