Generalità sui PLC PDF
Document Details
Uploaded by AccessibleJadeite8896
Tags
Summary
This document provides an overview of Programmable Logic Controllers (PLCs). It details their functionalities, advantages, and applications in industrial automation. The text also discusses various types of PLCs, focusing on different programming aspects and their role in modern industrial processes. The document is likely part of a course material.
Full Transcript
OSS: Il presente documento deve essere intregato con le slide del corso GENERALITÀ SUI PLC Il termine PLC è l'acronimo dell'inglese Programmable Logic Controller ( Controllore logico Programmabile ). Il termine "logico" è un pò riduttivo delle potenzia...
OSS: Il presente documento deve essere intregato con le slide del corso GENERALITÀ SUI PLC Il termine PLC è l'acronimo dell'inglese Programmable Logic Controller ( Controllore logico Programmabile ). Il termine "logico" è un pò riduttivo delle potenzialità del PLC perchè mette in evidenza solo una parte delle prestazioni che questo può fornire: i PLC , oltre alle funzioni strettamente logiche (AND,OR,NOT etc.) sono in grado di eseguire conteggi, temporizzazioni, comparazioni, calcoli numerici, ed altre operazioni di manipolazioni di dati in formato bit, byte, word (come ad esempio operazioni di SHIFT, TEST su BIT, ed altre). I più evoluti tra essi oramai possono essere paragonati a dei veri e propri Personal Computer, per cui si potrebbe anche chiamarli IPC (Personal Computer Industriali). Una definizione abbastanza adeguata di PLC è la seguente: "Un PLC è un dispositivo o sistema digitale elettronico che utilizza una memoria programmabile per memorizzare informazioni o istruzioni, atte a realizzare specifiche funzioni, finalizzate al controllo di sistemi combinatori e sequenziali per la gestione di macchine e processi, quali: operazioni logico-aritmetiche, temporizzazioni, conteggi, comparazioni, codifiche, decodifiche". In altre parole, un PLC può essere definito come uno speciale elaboratore, di tipo industriale, (Avente cioè caratteristiche ben precise che gli consentono di lavorare con assoluta affidabilità in un ambiente difficile e gravoso, come può esserlo un ambiente industriale, per la presenza notevole di disturbi elettrici, vibrazioni, ampie variazioni di temperatura ed umidità, polveri etc.) concepito per risolvere problemi di controllo ed automazione e che si differenzia dal PC soprattutto per quanto riguarda il linguaggio di programmazione (che non deve essere particolarmente complesso, per far si che possa essere utilizzato da tecnici che non hanno conoscenze orientate all'elettronica ed all'informatica) e l'interfacciamento con i dispositivi esterni. CAMPO DI UTILIZZO DEI PLC La necessità dell'industria di produrre a "qualità costante" e sempre più elevata, di rendere flessibile la capacità produttiva e migliorare la produttività per poter essere competitiva nelle attuali condizioni di mercato, spinge verso un'automazione che interessa tutti i livelli del processo produttivo.Si va cioè verso la "fabbrica automatica" ed il PLC sta assumendo in quest'ultima il ruolo di componente fondamentale. Non esiste ormai settore di produzione, trasformazione o controllo in cui non si trovano o non siano possibili applicazioni del controllore a logica programmabile. I PLC delle ultime generazioni non hanno più soltanto le caratteristiche originali di semplici "sequenziatori" , ma stanno assumendo quelle di "calcolatori di processo" con compiti di controllo e supervisione del processo produttivo visto che è possibile dotarli della possibilità di comunicare con altri PLC e PC ed inoltre presentano delle interfacce utente sempre più sofisticate. VANTAGGI DELL'USO DEL PLC Il PLC presenta una serie di vantaggi, rispetto alla logica cablata realizzata con componenti elettromeccanici e pneumatici, che lo rendono sicuramente e fortemente competitivo; i più importanti di questi vantaggi sono : − maggiore economicità sia nella fase di realizzazione del sistema di comando sia nella fase di gestione dello stesso, in particolare riguardo ad eventuali ampliamenti e/o modifiche. − ampliamenti al sistema di comando possono essere fatti semplicemente " aggiungendo " i componenti e limitandosi al loro collegamento fisico senza dover modificare quello delle altre apparecchiature. − modifiche al ciclo di automazione possono essere apportate semplicemente intervenendo sul "programma" e lasciando inalterati i collegamenti fisici. Pag. 1 di 31 Questo tempo può essere ragionevolmente ridotto al minimo in quanto è possibile "testare" e mettere a punto il programma eseguendo delle prove "al banco" su uno stesso PLC dotato di opportuni simulatori. − apparecchiature standard Il PLC si può intendere come una apparecchiatura "General Purpose" (è l'utente che decide per quale applicazione specifica verrà utilizzato) e con "possibilità di Ampliamento". − recupero e reimpiego dello stesso PLC qualora non fosse più necessaria l'applicazione a cui era stato inizialmente destinato. − assenza di parti in movimento e quindi ridotta usura e manutenzione e lunga vita dei componenti − ingombro ridotto − minimo consumo − maggior sicurezza poichè nella maggior parte dei casi si hanno tensioni di max 30 V e di conseguenza impossibilità di incidenti folgoranti. − possibilità di produrre facilmente la stampa dei programmi − possibilità di autodiagnosi dei guasti − possibilità di inserimento in reti di controllo centralizzate Pag. 2 di 31 CONTROLLO DI UN PROCESSO CON PLC Per poter controllare una macchina od un processo (a volte identificati con il termine CAMPO), il PLC deve acquisirne lo stato istante per istante ed in base alle istruzioni scritte nella propria memoria, determinare se devono o meno essere apportate delle modifiche allo stato attuale delle uscite. Per acquisire lo stato attuale del processo vengono collegati agli "ingressi" del PLC tutte quelle apparecchiature che possono fungere da "sensori" del sistema ("datori" di segnali) quali ad es. : pulsanti, finecorsa, fotocellule, interruttori, contatti ausiliari di relè, telerruttori, relè termici, ecc. Per "attuare" quanto è stato determinato dall'elaborazione del programma, alle uscite del PLC sono collegate tutte quelle apparecchiature atte a realizzare quanto necessario per l’esecuzione del processo (attuatori), che possono essere, a seconda di come viene realizzato l'automatismo, di tipo pneumatico, oleodinamico od elettromeccanico od anche misto, come ad es. : relè, telerruttori, elettrovalvole, lampade di segnalazione, suonerie, cilindri pneumatici od oleodinamici, valvole elettropneumatiche etc. Figura 2 Interazione fra PLC e Campo ARCHITETTURA DI UN SISTEMA A PLC Figura 3 Schema a blocchi di un PLC Pag. 3 di 31 Come si è visto, il compito principale di un PLC è quello di acquisire informazioni e dati provenienti dal sistema controllato, elaborarli in base ad un programma [che quindi non è altro che una serie di istruzioni tramite cui viene definito come si dovrà comportare la macchina (processo) al verificarsi di eventi o situazioni ben definite] ed emettere, verso il sistema controllato, il risultato di tale elaborazione che costituisce ciò che va fatto in quel momento da parte degli organi preposti all'esecuzione del processo. Per far ciò il PLC è dotato, oltre che di moduli d'ingresso e di uscita (I/O) , di un'unità centrale di elaborazione (CPU), che costituisce il cuore del sistema e sovrintende a tutte le operazioni necessarie al funzionamento del sistema, di MEMORIA per memorizzare il cosidetto sistema operativo del PLC, il programma utente ed i risultati intermedi dell'elaborazione, di un ALIMENTATORE per alimentare tutte le varie parti costituenti il PLC ed infine di un SISTEMA BUS per permettere i collegamenti fra le varie parti che compongono il sistema. Oltre a ciò, il PLC deve poter comunicare con il mondo esterno ed è quindi dotato della possibilità di collegarsi con delle periferiche per permettere il dialogo uomo-macchina, per comunicare con altri PLC, per permettere l'utilizzo di memorie di massa e per fornire documentazione cartacea. L'ALIMENTATORE La CPU necessita di alimentazione ad una tensione continua e stabilizzata di pochi volt (solitamente 5). Altri circuiti richiedono una tensione di 12 0 24 V sempre in corrente continua. L'unità centrale di un PLC è equipaggiata pertanto con un alimentatore in cui sono raggruppati tutti i dispositivi necessari per fornire tale alimentazione quali : − TRASFORMATORI ; − RADDRIZZATORI (Convertitori C.A./C.C.) − STABILIZZATORI. Si può considerare parte dell'alimentatore anche il dispositivo che commuta sulla batteria tampone, in assenza di alimentazione dalla rete, per salvare il contenuto della RAM. -LA CPU La CPU (Central Processing Unit o Unità Centrale) è la parte più importante del PLC di cui costituisce "l'intelligenza". Essa è l'unità di governo del sistema ed il suo elemento centrale è un componente integrato denominato Microprocessore. Il microprocessore racchiude in sè tutte le funzioni di calcolo e controllo del processore centrale di un normale calcolatore. La sua caratteristica più importante è la programmabilità che ha consentito il grande passo in avanti dalla logica cablata alla logica programmabile. Attualmente i microprocessori utilizzati come CPU dei controllori programmabili sono molto vari in quanto non esiste una qualsiasi forma di standardizzazione. Ogni costruttore impiega il microprocessore che ritiene più adatto alle prestazioni che vuole fornire al suo sistema. Si hanno PLC con livelli di potenza diversificati, partendo da quelli che utilizzano microprocessori ad 8 bit (8080 , Z80), a quelli ad 8/16 bit (8086 , 8088), fino ai più moderni e potenti che utilizzano microprocessori a 16/32 bit (68000 , 68020 , 80286, 80386). Pag. 4 di 31 IL SISTEMA BUS Il sistema bus è un insieme di collegamenti interni per la trasmissione e lo scambio di segnali, tensione d'alimentazione e potenziali di massa. Lo scambio di segnali tra il microprocessore e le schede d'ingresso e d'uscita avviene quindi tramite il sistema bus. Il bus è suddiviso in più gruppi di segnali: - bus degli indirizzi, tramite il quale si può accedere agli indirizzi delle singole schede; - bus dati, tramite il quale i dati possono essere letti dalle schede d'ingresso o trasferiti alle schede d'uscita; - bus di comando, tramite il quale vengono gestiti i segnali di comando e controllo dello svolgimento delle funzioni all'interno del controllore. LA MEMORIA Il PLC ha bisogno di memoria sia per il proprio sistema operativo sia per la memorizzazione del programma utente sia per l'elaborazione dei dati intermedi durante l'esecuzione del programma. Di solito il costruttore utilizza, per la memorizzazione del sistema operativo, una memoria di tipo ROM (Read Only Memory), che ha appunto le caratteristiche di essere non volatile e di non poter essere modificata visto che è una memoria di sola lettura. Il programma utente , al contrario, deve poter essere modificato in quanto la sua stesura è demandata all'utente che lo adatterà alle sue esigenze iniziali e, qualora fosse necessario, lo modificherà in seguito a nuove esigenze. Lo stesso si può dire riguardo la memoria necessaria per la memorizzazione dei risultati intermedi in quanto sulla stessa il PLC effettuerà continuamente operazioni di lettura e scrittura. Quindi, sia per il programma utente che per la memorizzazione dei risultati intermedi, il costruttore fornisce il PLC di una memoria di tipo RAM (Random Access Memory) che può essere letta e riscritta. La dimensione della RAM utente è uno dei parametri che caratterizza maggiormente un PLC in quanto da essa dipende la lunghezza del programma che può essere gestito dal PLC. Per PLC di piccola taglia, attualmente, si hanno memorie utente che hanno dimensione da tre a quattro Kbyte, a cui corrisponde la capacità di memorizzare programmi di circa mille istruzioni. Ovviamente in PLC di taglia superiore la dimensione della RAM varia proporzionalmente con la complessità del set di istruzioni del linguaggio di programmazione proprio del PLC e con le dimensioni, prevedibilmente superiori, dei programmi necessari per gestire automatismi complessi. Pag. 5 di 31 ASPETTO FUNZIONALE DELLE MEMORIE DEL PLC In base al loro impiego, le memorie in un PLC si possono distinguere in : − memoria di sistema, − memoria di programma, − memoria dati. LA MEMORIA DI SISTEMA : Come già detto, la memoria di sistema serve a conservare tutte quelle particolari istruzioni che servono per la gestione ed il controllo del funzionamento della CPU e che pertanto costituiscono un vero e proprio SISTEMA OPERATIVO del PLC. Dato che il suo contenuto è di primaria importanza per il controllore, vengono utilizzate delle memorie di tipo ROM, per evitare la sua involontaria cancellazione. Nulla vieta comunque che sia PROM o EPROM, purchè non accessibile all'utente. LA MEMORIA DI PROGRAMMA : È la memoria destinata a contenere le istruzioni che costituiscono il programma eseguibile dal PLC. Per svolgere tale funzione essa deve essere accessibile all'utente (a cui è demandata la stesura del programma stesso) e viene quindi realizzata con memorie di tipo RAM. LA MEMORIA DATI : È anche detta MEMORIA DI LAVORO e prevede due sezioni distinte: i FLAG ed i REGISTRI ; − I FLAG (o MERKER) Si tratta di una certa quantità di memoria in formato WORD o DOUBLE WORD che può essere indirizzata anche in formato BYTE od a singoli BIT e che può essere utilizzata dall'utente per memorizzare risultati intermedi durante l'elaborazione del programma. Tali risultati possono essere successivamente utilizzati in altre parti del programma. I singoli BIT di queste memorie possono essere "SETTATI" (cioè posti al valore logico 1) o "RESETTATI" (cioè posti al valore logico 0). − I REGISTRI Si tratta di memoria di tipo RAM che viene utilizzata per svolgere determinate funzioni durante l'esecuzione del programma. Solitamente si ha almeno un registro di LAVORO in cui vengono memorizzati i risultati delle singole operazioni di tipo logico-aritmetico che vengono svolte dalla CPU istruzione dopo istruzione, un registro AUSILIARIO che interviene solo in particolari situazioni, un registro di STACK che serve per la memorizzazione di risultati intermedi quando il registro di lavoro deve essere utilizzato per altre elaborazioni ed infine un registro di STATO. Pag. 6 di 31 LA SEZIONE DI INPUT/OUTPUT DI UN PLC La sezione di I/O di un PLC riveste particolare importanza per quanto concerne la valutazione delle prestazioni dello stesso, è usuale accennare innanzitutto alla quantità di punti di ingresso e di uscita quando si parla delle caratteristiche di un PLC. Questo comunque non è l'unico parametro di riferimento per la scelta di un PLC, infatti bisognerà tenere conto di altre caratteristiche come ad es. la velocità di esecuzione di un ciclo di programma, la possibilità di eseguire calcoli, la dimensione della RAM utente, ecc. Non esistono quindi dei parametri di riferimento assoluti per valutare la scelta di un PLC rispetto ad un altro, ma ciò dovrà essere fatto di volta in volta in funzione ovviamente del rapporto PRESTAZIONI/PREZZO in riferimento alle specifiche dell'impianto da gestire. UNITÀ D'INGRESSO Le informazioni provenienti dal processo controllato possono essere semplicemente definite come "segnali in ingresso". Questi segnali sono ovviamente di tipo elettrico e dovranno essere trattati in modo che siano riconoscibili dalla CPU. Il compito delle schede d'ingresso (come poi, in senso inverso, faranno anche le schede d'uscita) è quello di consentire il dialogo tra il PLC ed il gruppo di potenza, o , per essere più precisi, per permettere al PLC di acquisire i comandi e lo stato degli attuatori del suddetto gruppo. Tali segnali possono essere sia segnali di tipo binario, caratterizzati dalla possibilità di assumere due soli valori (" 1 logico" e " 0 logico"), a prescindere dalla natura iniziale del segnale, che potrebbe essere anche di tipo analogico o comunque un segnale instabile nel tempo, ma lo si vuole trattare come segnale "digitale binario", caratterizzato quindi da due soli stati possibili : assenza di tensione o presenza di tensione. I segnali possono essere anche di tipo analogico, quindi variabili nel tempo dentro un prefissato intervallo di valori, in questo caso devono preventivamente essere trattati da appositi convertitori A/D prima di essere elaborati dalla CPU. SCHEDE D'INGRESSO DIGITALI. Nel caso di segnali da trattare come segnali di tipo ON/OFF le schede d'ingresso devono essere in grado di "capire" quando il segnale in ingresso è da considerare ON e quando è da considerare OFF, quando si tratta di un disturbo ed inoltre di isolare galvanicamente la CPU dall'esterno in modo che eventuali sbalzi di tensione o sovraccarichi od addirittura corto circuiti non danneggino la stessa. Uno dei compiti svolti dalle schede d'ingresso è quello di adattare il livello e le caratteristiche del segnale. Infatti, mentre la tensione di funzionamento interna del PLC è una tensione bassa (di solito 5 V), i segnali possono presentarsi con livelli di tensione diversi ( 24, 48, 110, 220 V ). La prima operazione svolta dalle schede di ingresso consiste nella messa in forma o squadratura del segnale. Per determinare con certezza se il segnale è ON oppure OFF, di solito le schede d'ingresso sono costruite in modo che il segnale esterno viene riconosciuto tale entro un intervallo di valori prefissato. Ad es. si consideri un segnale a 24 V come in fig. 4 Figura 4 Esempio di fasce di livello per riconoscere le variazioni dello stato di un ingresso Per evitare di acquisire false informazioni dovute a disturbi indotti dal mondo esterno si effettua un filtraggio delle informazioni parassite, viene cioè valutato non solo il livello logico del segnale, ma anche la sua durata. Tanto maggiore è questo ritardo tanto più grande risulta l'immunità ai disturbi. Pag. 7 di 31 OSS: Paragrafo facoltativo. non richiesto per l'esame TECNICA DEL MULTIPLEXAGGIO DEGLI INGRESSI IN UN CONTROLLORE PROGRAMMABILE Spesso si presenta la necessità di collegare agli ingressi di un PLC dei segnali numerici opportunamente codificati. Uno dei codici più usati per questo scopo è il codice BCD. Usando questo codice, se si vuole inserire dei valori numerici con un certo numero di cifre, occorreranno un numero di ingressi digitali pari a quattro per ogni cifra che costituisce il valore numerico da inserire. Per cui, se si vuole inserire un valore numerico compreso tra 0 e 9999, si devono utilizzare quattro codificatori (CONTRAVES) ognuno dei quali occupa quattro ingressi (migliaia, centinaia, decine, unità). In totale servono quindi 16 ingressi da destinare esclusivamente all'acquisizione del valore da inserire. È possibile ridurre questo numero utilizzando una tecnica di multiplexaggio degli ingressi come quella indicata in fig. 5, in cui si collegano i 16 segnali provenienti dai codificatori, disaccoppiandoli con dei diodi, a 4 ingressi del PLC. Questa soluzione richiede una gestione software un pò più sofisticata, permette però di risparmiare complessivamente il 50 % di punti di I/O necessari. Sono infatti necessari 4 ingressi e 4 uscite invece di 16 ingressi. Figura 5 Esempio di MULTIPLEXAGGIO degli ingressi in un PLC per l’introduzione di valori numerici. Pag. 8 di 31 SCHEDE D'INGRESSO ANALOGICHE Esistono in commercio dei sensori analogici (termocoppie, resolver, ecc.) che forniscono, in relazione al livello di un liquido in un serbatoio, alla temperatura di un forno, alla pressione in una tubazione etc., un segnale variabile con continuità entro due limiti. I valori di questi segnali sono standardizzati; valori tipici sono : ± 50 mV, ± 1 V, ± 5 V, ± 10 V, 0..10 V, 0..20 mA, ± 20 mA, +4..20 mA. Per rendere possibile l'elaborazione da parte del PLC del valore del segnale in ingresso, qualunque esso sia, bisogna convertire il segnale analogico variabile in un segnale digitale comprensibile alla CPU. Figura 6 Convertitore ANALOGICO/DIGITALE ad 8 BIT. La precisione del convertitore dipende dal numero di bit che è in grado di elaborare, cioè dalla sua "risoluzione" ed anche dalla sua "accuratezza". Il numero di bit solitamente va da un minimo di 8 a 10, 12 bit. Con 8 bit è possibile elaborare 28 = 256 combinazioni, con 10 bit 210 = 1024 combinazioni e con 12 bit 212 = 4096 combinazioni. Il PLC ha un'immagine a gradini della grandezza come quella di fig. 7 Figura 7 Immagine digitale di una grandezza analogica. Pag. 9 di 31 Se ad es. si ha una temperatura variabile da Tmin a Tmax e si utilizza un sensore che fornisce un valore in tensione da 0 a 10 V ( 0 V = Tmin e 10 V = Tmax ) ed il convertitore è ad 8 bit, si ha una risoluzione di 10/256 = 0.039 V a cui corrisponderà un valore di temperatura dato da: (Tmax-Tmin)/256. Se ad es. l'intervallo di variazione della temperatura è di 100 °C la risoluzione del convertitore analogico/digitale sarà di 100/256=0.39 °C. Con un ADC a 10 bit la risoluzione sarebbe di 100/1024=0.0976 °C. Se si avesse un ADC a 12 bit la risoluzione diventerebbe di 100/4096=0.0244 °C. Maggiore quindi è il numero di bit, maggiore sarà la fedeltà con la quale il convertitore trasformerà il segnale analogico in segnale digitale. Le schede analogiche possono avere diversi ingressi, per ridurre i costi si ricorre alla tecnica del multiplexer, che consente di commutare i diversi ingressi su di un unico convertitore, questo determina però un leggero aumento del tempo di acquisizione dei dati. Figura 8 Principio di funzionamento di un MULTIPLEXER a quattro ingressi. Anche nelle schede analogiche la CPU riceve i segnali digitali mediante l'interposizione di optoisolatori. SCHEDE D'USCITA DIGITALI I moduli o schede d'uscita rappresentano sostanzialmente la interfaccia tra l'elaborazione del programma attuata dalla CPU del PLC e gli attuatori che costituiscono il sistema di comando verso l'impianto controllato. Per quanto concerne il numero di uscite presenti su ogni scheda di uscita valgono le stesse considerazioni fatte per le schede di ingresso. Si definisce "tempo di emissione dell'uscita" l'intervallo di tempo che intercorre tra l'istante cui appare un'immagine d'uscita nella memoria del PLC e quello in cui viene raggiunta la soglia di tensione a cui corrisponde l'effettiva attivazione dell'uscita. Per le uscite a relè questo tempo dipende principalmente dal tempo di salita dei relè, che varia da due a più decine di millisecondi, mentre per le uscite statiche (a transistor) tale tempo è decisamente più breve. Le tensioni più frequentemente utilizzate sono 24 o 48 V, si possono comunque avere tensioni diverse. La corrente che ogni singola uscita è in grado di erogare va da 100 mA a 2 A. SCHEDE D'USCITA ANALOGICHE Le schede di uscita analogiche svolgono, in senso inverso, le stesse funzioni delle schede di ingresso analogiche. Operano cioè una conversione digitale-analogica (D/A) dei valori, elaborati dal PLC così come definito da programma, che devono essere trasmessi all'attuatore collegato alla scheda, il quale è costruito per ricevere un segnale analogico in tensione od in corrente. Vale tutto quanto già detto a proposito delle schede d'ingresso analogiche. Pag. 10 di 31 PERIFERICHE Il controllore programmabile per poter dialogare con il mondo esterno (per essere programmato, per i controlli diagnostici, per la stampa dei programmi su carta, per l'emissione di segnali d'allarme, per la messa a punto del programma ed altre funzioni) necessita di particolari apparecchiature denominate unità periferiche, quali ad es. : − consolle di programmazione ; − memorie di massa ; − simulatori ; − programmatori di EPROM ; − interfaccia per stampanti e plotter ; − moduli di collegamento per personal computer ; − unità di servizio (chiavi elettroniche). I DISPOSITIVI DI PROGRAMMAZIONE Il PLC trasmette segnali alle schede d'uscita in funzione dei valori acquisiti dalle schede d'ingresso ed elaborati secondo le istruzioni contenute nel programma utente che è allocato in memoria. È quindi indispensabile un'interfaccia che permetta il dialogo tra l'operatore e la macchina in modo da rendere possibile la immissione del programma elaborato dal programmatore ed una serie di altre funzioni più o meno sofisticate. Le funzioni fondamentali che un dispositivo di programmazione deve garantire sono : − scrittura del programma nella memoria del PLC; − lettura del programma già residente in memoria; − modifica del programma; − ricerca di istruzioni del programma; − compilazione del programma. Tra le funzioni superiori dei dispositivi di programmazione rientra ad es. il : Funzionamento ON-LINE ed OFF-LINE I piccoli modelli possono operare solo ON-LINE, cioè collegati al PLC. La capacità di operare OFF-LINE, propria delle unità più evolute, consente al programmatore di scrivere e testare i programmi " al banco ", in condizioni sicuramente migliori di quelle che si avrebbero sull'impianto ed inoltre in tempi che non dipendono dallo stato di realizzazione dell'impianto, nel caso di un impianto nuovo o comunque, in caso di modifiche da apportare ad un impianto già in funzione, l'attività di messa a punto del programma non comporta la fermata dell'impianto MODULI DI COLLEGAMENTO PER PERSONAL COMPUTER Per mezzo di opportune interfacce è possibile collegare il PLC a calcolatori con i quali potrà scambiare informazioni. Con un collegamento in rete si possono svolgere per mezzo di un calcolatore funzioni come : − controllo della produzione ; − raccolta e gestione di dati relativi al processo ; − rilevamento degli eventuali guasti ; − supervisione e controllo dei processi produttivi mediante sinottici dell'impianto visualizzati su monitor ; − forzatura degli ingressi e delle uscite ; − controllo e modifica a distanza e del programma e di alcuni parametri come valori di conteggi e temporizzazioni. Pag. 11 di 31 FUNZIONAMENTO BASE DEI PLC Il PLC , così come i computer, è in grado di elaborare solamente informazioni espresse dai due livelli logici 1 e 0. Di conseguenza tutte le informazioni fornite ad un PLC, siano dati od istruzioni, devono essere espresse tramite combinazioni di questi due stati o livelli logici. Spesso il livello logico 1 viene indicato con la lettera H (dall'inglese HIGH cioè livello ALTO) ed il livello logico 0 con la lettera L (dall'inglese LOW, cioè livello BASSO). La rappresentazione di dati ed istruzioni in termini di 0 ed 1 logici prende il nome di rappresentazione binaria. Un'informazione, nella forma comprensibile al PLC, si può presentare nella seguente forma : 0011 1010 1100 1110 Come si vede, la precedente espressione binaria è costituita da più bit. Una sequenza del genere prende il nome di " PAROLA ". In particolare si tratta di una parola a 16 bit, che si riferirà ad un PLC che opera in parallelismo 16, in grado cioè di elaborare dati espressi, al massimo, con 16 bit. -FUNZIONAMENTO SEQUENZIALE Caratteristica base di tutti i sistemi di elaborazione dati è il funzionamento sequenziale, che è da intendersi come "fare una cosa alla volta , una dopo l'altra". Il funzionamento sequenziale dei sistemi a PLC porta a due considerazioni importanti : 1) l'elaborazione di un programma richiede un certo tempo che può essere più o meno lungo, a seconda del numero e del tipo di istruzioni che lo compongono. 2) l'elaborazione sequenziale delle istruzioni comporta anche il fatto che, qualora si abbiano nel programma delle istruzioni che portano alla elaborazione di risultati in contraddizione fra loro, si possono creare delle situazioni di incertezza già in fase di programmazione. -TEMPO DI ESECUZIONE DELLE ISTRUZIONI Per tempo di esecuzione di un'istruzione si intende il tempo che intercorre tra l'istante in cui l'istruzione stessa viene letta dalla memoria, sfruttando l'indirizzo che in quel momento è contenuto nel contatore di programma (Program Counter), e l’istante in cui, dopo che la stessa è stata decodificata ed eseguita, la CPU inizia la fase di lettura dell'istruzione successiva. Tali durate sono molto varie fra di loro, ad es. la lettura di un ingresso può essere eseguita anche in un solo microsecondo, mentre caricare un contatore può richiedere anche 600 microsec. A seconda dei modelli, per una stessa marca di PLC, ed ancora di più per PLC di marca diversa, la stessa istruzione può richiedere tempi molto diversi per essere eseguita. A volte addirittura in un dato PLC viene eseguita in un tempo fino a mille volte superiore a quello necessario in altro PLC. -TEMPO DI CICLO (O DI SCANSIONE) Per TEMPO DI CICLO si intende il tempo necessario per eseguire tutte le istruzioni che costituiscono il programma. -TEMPO DI REAZIONE Supponendo che un ingresso venga esaminato una sola volta per ciclo, per TEMPO DI REAZIONE del PLC si intende la somma del tempo di ritardo nell'acquisizione della variazione e la durata del ciclo. Il tempo di reazione è variabile in quanto dipende dal momento in cui si verifica la variazione dell'ingresso. Pag. 12 di 31 IL CONCETTO DI CICLO NEI PLC Una caratteristica fondamentale dei PLC è il funzionamento sequenziale della CPU. Le istruzioni che costituiscono il programma vengono eseguite una alla volta, una dopo l'altra tranne ovviamente i casi in cui si incontrano delle istruzioni di salto che impongono una variazione a questa sequenza. Alla fine del programma, svolte alcune operazioni di sistema, si ricomincia dalla prima istruzione. TIPI DI CICLI In relazione ai cicli ed alla gestione dell'input-output i PLC si differenziano sostanzialmente nel fatto che i valori degli ingressi e delle uscite vengono letti e scritti (aggiornati) direttamente od indirettamente tramite una memoria. Nel caso in cui l'accesso è diretto, si ha un modo di funzionamento che si avvicina molto al concetto di risposta del sistema agli eventi in tempo reale (prendere in considerazione i fenomeni nel momento stesso in cui avvengono ed agire subito di conseguenza). Nel caso di utilizzo di una memoria intermedia, l'acquisizione dello stato degli ingressi viene fatta contemporaneamente in un certo istante (ad es. prima di eseguire il ciclo) e questo valore viene mantenuto invariato in memoria per tutta la durata del ciclo anche se nel frattempo alcuni o tutti gli ingressi hanno modificato il loro stato. Per cui, sinteticamente, le fasi di acquisizione dati, elaborazione ed emissione dei risultati vengono svolte con la seguente sequenza temporale : Figura 9 Sequenza temporale di esecuzione delle varie fasi del ciclo di un PLC. I costruttori di PLC hanno impostato modalità diverse di attuazione dei cicli in riferimento ai due momenti fondamentali di "acquisizione degli ingressi" ed "aggiornamento delle uscite". I tipi di ciclo che si trovano più comunemente sono i seguenti : -CICLO SINCRONO IN INGRESSO ED IN USCITA È il ciclo tipico in cui si fa uso dei registri di "immagine degli ingressi" e di "immagine delle uscite". Il PLC legge tutti gli ingressi contemporaneamente all'inizio del ciclo e crea in memoria (ovvero nel registro a ciò dedicato) una immagine del processo relativa all'istante in cui è stato acquisito il valore di ogni singolo ingresso. Tale immagine rimane invariata per tutta la durata del ciclo anche se, durante l'esecuzione dello stesso, alcuni ingressi dovessero modificare il loro stato. Le varie fasi eseguite da un PLC, funzionante con questo tipo di ciclo, sono descritte in figura 10 : Pag. 13 di 31 Figura 10 Fasi di un ciclo SINCRONO IN INGRESSO ED IN USCITA. Autore: p.i. Tudisco Giuseppe Pag. 14 di 31 - CICLO SINCRONO IN INGRESSO ED ASINCRONO IN USCITA Come nel ciclo precedente, gli ingressi sono acquisiti contemporaneamente all'inizio del ciclo, si ha quindi anche in questo caso un registro di immagine degli ingressi. Le uscite invece vengono aggiornate non appena viene elaborato un risultato (ovvero non appena un risultato da assegnare ad un'uscita è disponibile, questo viene subito emesso all'esterno e l'uscita interessata viene aggiornata) secondo lo schema descritto in figura 11 : Figura 11 Fasi di un ciclo SINCRONO IN INGRESSO ED ASINCRONO IN USCITA. Pag. 15 di 31 -CICLO ASINCRONO IN INGRESSO ED IN USCITA L'organizzazione di questo ciclo è basata sulla elaborazione delle sequenze di istruzioni una per una. Viene letto un ingresso (o più ingressi se nella sequenza ne compaiono più di uno), lo si usa in una data funzione, si elabora il valore dell'uscita, viene aggiornata l'uscita ed infine si passa alla sequenza successiva, così come è descrittto in fig. 12 : Figura 12 Fasi di un ciclo ASINCRONO IN INGRESSO ED IN USCITA. CONSIDERAZIONI SUI TIPI DI CICLO Il primo tipo di ciclo che abbiamo visto è tipico dei PLC di basso livello. Il secondo è scarsamente diffuso. Il terzo è addottato in PLC di buon livello. Comunque sia questa è soltanto una schematizzazione dei tipi di ciclo dei PLC, in commercio si possono trovare soluzioni le più diverse. Pag. 16 di 31 I LINGUAGGI DI PROGRAMMAZIONE DEI PLC Programmare un PLC significa molto semplicemente trasferire in esso una sequenza di istruzioni (programma) in un linguaggio di programmazione opportunamente codificato, e di solito proprio del PLC che si sta utilizzando, tramite delle periferiche dedicate a questo scopo (unità di programmazione). Il compito del PLC, come si è già visto, sarà quello di determinare lo stato delle uscite, ad esso collegate, in funzione dello stato degli ingressi, secondo le relazioni stabilite dal programma che il PLC esegue. IL PLC può essere programmato a svolgere una certa sequenza di operazioni, più o meno complessa, sulla base dell'insieme delle funzioni elementari da esso eseguibili (operazioni logiche, conteggi, comparazioni, temporizzazioni, etc), in altre parole sulla base del SET di istruzioni di cui è dotato. Tramite questo set di istruzioni, appartenenti ad un determinato linguaggio di programmazione, l'utente imposta la soluzione del problema sotto forma di programma, cioè di una lista di istruzioni appartenenti al set base del linguaggio. È del tutto ovvio, a questo punto, capire che disponendo di linguaggi di programmazione con un set base di istruzioni diverso, la soluzione dello stesso problema dipenderà dalle possibilità offerte dai diversi linguaggi. Una volta che si sono acquisite le tecniche fondamentali di programmazione, non è comunque pensabile di passare da un linguaggio di programmazione di un PLC ad un'altro in maniera immediata ed automatica. Sarà sempre necessario avere una buona conoscenza del linguaggio di programmazione e quindi delle possibilità che questo offre, per poter sfruttare appieno le potenzialità del PLC stesso. Molti PLC ancora oggi posseggono un solo specifico linguaggio di programmazione. Ciò è del tutto comprensibile ed accettabile se si pensa ad un PLC appartenente alla cosiddetta fascia bassa, di prestazioni limitate, in grado di gestire un numero limitato di punti di I/O. Con il crescere della potenza del PLC, l'unicità del linguaggio di programmazione diventa un limite non più accettabile. Visto che il PLC deve operare in un contesto di automazione industriale, la sua capacità di espressione funzionale deve essere omogenea con le esigenze di automazione industriale. Basti pensare che i più elementari problemi da risolvere nell'ambito dell'automazione industriale sono del tipo : " se il tal contatto è chiuso e contemporaneamente quell'altro contatto è aperto, allora attiva la tal uscita". I linguaggi attualmente in uso si possono considerare appartenenti a due categorie ben precise, cioè quella dei linguaggi grafici e quella dei linguaggi letterali. La differenza fra questi due tipi consiste essenzialmente nella modalità di rappresentazione visiva delle combinazioni logiche che costituiscono le varie sequenze in cui è suddiviso un programma : in quelli grafici si fa uso di simboli grafici mentre in quelli letterali si fa uso di codici letterali mnemonici cui è attribuita una determinata funzione. È da precisare che vi sono due scuole di pensiero, quella americana e quella tedesca. Per la scuola americana, i linguaggi per PLC sono : − Ladder diagram o linguaggio a contatti o linguaggio a relè od, ancora, schema a contatti; − Boolean Mnemonics, o linguaggio booleano; − Functional Block, o linguaggio a blocchi funzionali o diagramma funzionale o schema funzionale; − HLL (High Level Language) o linguaggio ad alto livello. Per linguaggio ad alto livello si intendono quelli dei calcolatori, che potrebbero essere usati anche dai PLC. Per ora l'unico esempio degno di nota è il BASIC. Alla scuola americana appartengono costruttori come la Allen-Bradley, la Gould Electronics, la Texas Instruments, la Reliance, la Westinghouse. Pag. 17 di 31 Nell'ambito della scuola tedesca, la primogenitura spetta alla Siemens che ha sviluppato un suo linguaggio di programmazione denominato STEP-5 che prevede tre forme di rappresentazione di un programma : − KOP Il classico linguaggio a contatti, il ladder diagram degli americani; − FUP (o FBS) Definito anche come schema logico o schema funzionale o functional blocks; − AWL Definito anche come lista d'istruzioni, si potrebbe chiamarlo anche linguaggio simbolico, in quanto fa uso di particolari simboli, parzialmente mnemonici, per descrivere le istruzioni e quindi le funzioni desiderate. La notazione tedesca per indicare i tre tipi di linguaggi fondamentali in uso per i PLC si va diffondendo sempre di più, grazie anche ad altri costruttori, come la Klöckner-Moeller, che hanno apportato innovazioni significative nei loro prodotti. Vediamo alcuni dettagli di questi linguaggi : - LADDER (o KOP) Figura 13 simboli grafici del linguaggio a contatti. Appartiene alla categoria dei linguaggi grafici perchè si presenta in maniera simile ad uno schema elettrico funzionale, con delle semplici modifiche rispetto a quest'ultimo : − le linee che rappresentano l'alimentazione vengono disegnate verticalmente invece che orizzontalmente; − i simboli dei contatti NA, dei contatti NC e delle bobine vengono semplificati come si vede in fig.13 (in realtà c'è da considerare che il significato attribuito a questi simboli è quello di rappresentare se in una determinata istruzione, l'operando che interviene è stato programmato negato o non negato e ciò può comportare confusione perchè non viene tenuto conto se il contatto del sensore collegato a quel determinato ingresso è un NA od un NC.) − In questo tipo di linguaggio, per rappresentare lo stato dell’operando, viene valutato il livello logico della funzione e non il livello fisico del sensore collegato all’operando che è interessato (ad es. un ingresso in cui c'è presenza di tensione o assenza di tensione). Tra l’altro è da ricordare che l’operando di un’istruzione può essere una memoria o un’uscita. − il flusso di potenza va da sinistra verso destra ; − il flusso logico va dall'alto verso il basso ; − ogni circuito è disegnato in posizione orizzontale invece che verticale. Pag. 18 di 31 Figura 14 Schema elettrico funzionale del circuito di comando per la teleinversione di un motore asincrono trifase. Con tali regole, lo schema funzionale di fig. 15a si trasforma nel diagramma a contatti di fig. 15b. Figura 15a Schema logico equivalente della fig. 14 Figura 15b Ladder Diegram equivalente della fig. 15a Come si può vedere è evidente il motivo per cui si è scelto il nome di diagramma ladder, la forma assunta dai programmi scritti con questo linguaggio ricorda proprio una scala a pioli. Pag. 19 di 31 - FUP Anche questo è un linguaggio di tipo grafico, la differenza rispetto al KOP sta nel fatto che i simboli utilizzati per rappresentare le funzioni logiche, non sono più dei contatti bensì dei blocchi logici. Figura 16 Programma in linguaggio FUP - AWL I linguaggi letterali (o liste d'istruzioni o linguaggi simbolici o AWL) utilizzano una serie di parole (codici letterali mnemonici) che identificano ognuna una determinata funzione logica (AND, OR, NOT, ecc.), allo stesso modo si possono rappresentare temporizzatori, contatori, comparatori, ecc. I due programmi visti precedentemente in FUP ed in KOP, si presentano sotto la seguente forma in listato AWL del linguaggio di programmazione SUCOSOFT S-30 della Klöckner-Moeller: IMPIANTO DI TELEINVERSIONE DI UN M.A.T. PASSANDO PER LA POSIZIONE DI ALT: 000 L I0.1 SB1 PULSANTE DI MARCIA AVANTI (NA) 001 O Q0.1 KM MARCIA AVANTI 002 ANQ0.2 KM MARCIA INDIETRO 003 A I0.0 SB2 PULSANTE DI ARRESTO (NC) 004 = Q0.1 KM MARCIA AVANTI 005 L I0.2 SB3 PULSANTE DI MARCIA INDIETRO (NA) 006 O Q0.2 KM MARCIA INDIETRO 007 ANQ0.1 KM MARCIA AVANTI 008 A I0.0 SB2 PULSANTE DI ARRESTO (NC) 009 = Q0.2 KM MARCIA INDIETRO Figura 17 lista istruzioni (AWL) del programma per la teleinversione di un motore asincrono trifase. Pag. 20 di 31 ORGANIZZAZIONE DELLA PRODUZIONE SOFTWARE PER PLC SEQUENZA PER LA PROGRAMMAZIONE La prima fase per la programmazione di un PLC che deve gestire un qualunque impianto di automazione industriale od applicazioni diverse, è quella dell'ANALISI FUNZIONALE del problema da risolvere. In questa prima fase non interessa quello che sarà il contenuto del programma, il quale deve essere visto come una scatola nera di cui interessa sapere ciò che vi entra, le elaborazioni che deve effettuare e ciò che ne dovrà uscire. In pratica bisogna definire : − Qual'è il punto di partenza, cioè quanti, quali e di che tipo sono i segnali in ingresso, con quali caratteristiche, con quale durata e con quale significato ; − L'esatta definizione e descrizione del funzionamento dell'impianto anche nei minimi particolari, perchè in base a ciò si dovrà definire le elaborazioni che il PLC (ovvero il programma che deve essere scritto) dovrà svolgere. − Qual'e' il punto di arrivo vale a dire i segnali che dovranno essere forniti al processo : come , quando, in che forma, con quale durata. − A queste fasi segue quella della definizione della " Lista di Occupazione degli I/O " ; questa lista è importante per il programmatore perchè gli permette di sapere in quale determinato ingresso è collegato il tal sensore ed in quale uscita è collegato il talaltro attuatore. Il modo di come si descrive il funzionamento dell'impianto può essere diverso a seconda di come ognuno è abituato a lavorare, cioè si può ricorrere ad es. ad uno o più diagrammi di flusso, se il processo è costituito da più fasi di lavorazione, e quindi fare una descrizione di massima sulla relazione che esiste tra ogni fase e poi delle descrizioni dettagliate di ogni fase. Oppure si può fare una pura descrizione discorsiva sequenziale del funzionamento dell'impianto precisando dettagliatamente tutte le prescrizioni che devono essere rispettate e le varie modalità di comportamento richieste in situazioni particolari. In altri termini, bisogna dire cosa si deve fare, non come lo si vuole o lo si deve fare. Subito dopo la lista di occupazione degli I/O si può eventualmente fare anche una lista di assegnazione delle variabili interne (memorie a disposizione dell'utente) che si intende utilizzare per scopi particolari o comunque definibili già prima di iniziare la stesura del programma, come per es. quali memorie si utilizzeranno per memorizzare dei valori di conteggio, quali per memorizzare situazioni particolari del processo ecc. Solo dopo tutto questo lavoro di preparazione è possibile iniziare la stesura del programma che verrà fatta tenendo conto soprattutto di quanto è scritto nella descrizione del funzionamento dell'impianto in relazione alla successione temporale delle varie fasi. Dopo avere scritto il programma si può analizzare le possibilità di ottimizzarlo e minimizzarlo per renderlo il più efficiente possibile. E' importante inserire dei commenti e delle osservazioni che rendano il programma più chiaro e leggibile. Pag. 21 di 31 TEST E SIMULAZIONE Dopo che il programma è stato sviluppato, bisogna passare alla fase di correzione e messa a punto dello stesso. Ciò può essere fatto trasferendo il programma nella memoria del PLC ed eseguendolo simulando l'azionamento dei sensori tramite un opportuno simulatore. La simulazione permette di analizzare il comportamento del PLC di fronte alle varie situazioni che si possono presentare nella realtà e verificare quindi se il programma è rispondente con quanto si vuole fare. Dopodichè si può passare alla fase successiva che è quella della documentazione dei programmi. DOCUMENTAZIONE DEI PROGRAMMI La qualità di un programma è determinata anche dalla qualità della sua documentazione. E' estremamente errato pensare che un programma è finito quando si è caricato lo stesso sulla macchina e questa funziona correttamente. Non è detto che, in futuro, chi dovrà individuare ed eliminare la causa di eventuali mal funzionamenti od apportare modifiche al programma, sia la stessa persona che ha scritto il programma. In una situazione del genere, un programma che non presenta la necessaria documentazione ovvero che questa sia poco chiara e leggibile rende il programma stesso poco più che carta straccia. Il tempo che il tecnico incaricato dovrebbe passare a verificare il programma istruzione per istruzione, equivarrebbe probabilmente a quello occorrente per la riscrittura ex novo del programma di gestione dell'impianto. La documentazione è da ritenersi quindi una parte integrante ed estremamente importante di un programma. Il software è un prodotto che va documentato, collaudato, reso leggibile ed utilizzabile. COMPLETEZZA DELLA DOCUMENTAZIONE La documentazione non si può limitare alla semplice stampa del programma nel linguaggio di programmazione utilizzato, ma deve avere a corredo tutta una serie di documenti che, in fase di modifica del programma, mettano chi deve eseguire queste modifiche, nelle condizioni di poter operare senza incertezze ed in maniera rapida e veloce. Perchè ciò sia possibile, la documentazione deve prevedere, in linea di massima, almeno le seguenti parti : − Descrizione di massima dell'impianto ; − Lista di occupazione degli I/O ; − Lista delle memorie interne, dei temporizzatori, dei contatori, ecc., che sono stati utilizzati nel programma ; − Il listato completo del programma ; − La cross reference degli operandi e delle funzioni utilizzate ; Descrizione di massima dell'impianto : E' necessario quantomeno redigere uno schema completo dei collegamenti completandolo con una descrizione del funzionamento dell'impianto. Lista di occupazione I/O : Da questa lista deve essere possibile ricavare tutte le informazioni che riguardano i sensori e gli attuatori collegati al PLC ed anche informazioni riguardo le unità di funzione (memorie, contatori, registri, ecc.) utilizzati all'interno del programma. Pag. 22 di 31 Per compilare questa lista e documentarla, è sufficiente l'uso di una tabella organizzata su più colonne come quella dell'esempio in fig. 18 PLC K&M-PS3 TABELLA DI ASSEGNAZIONE I/O SIMBOLO OPERANDO NA/NC DESCRIZIONE SENSORE/ATTUATORE SB1 I0.0 NC Pulsante di Arresto SB2 I0.1 NA Pulsante di Marcia avanti SB3 I0.2 NA Pulsante di Marcia indietro KM1 Q0.1 Marcia Avanti KM2 Q0.2 Marcia Indietro Figura 18 Esempio di Tabella Assegnazione I/O Listato del programma : Il listato del programma deve essere completo di commenti esplicativi che ne facilitano la comprensione, altrimenti risulterebbe del tutto insufficiente qualunque sia il linguaggio di programmazione utilizzato. Le unità di programmazione più diffuse permettono ormai con facilità sia la programmazione che la stampa dei programmi nei diversi linguaggi disponibili per quel tipo di PLC. Cross reference : Per cross reference s'intende una lista di riferimento che consente di indicare, per ogni operando (ingresso, uscita, memoria) tutti i punti del programma in cui viene utilizzato, consentendo quindi una ricerca a colpo d'occhio del punto di programma in cui bisogna eventualmente intervenire. Pag. 23 di 31 INSTALLAZIONE, MANUTENZIONE E RICERCA GUASTI Per l'installazione di un PLC bisogna distinguere tra l'installazione dell'HARDWARE e l'installazione del SOFTWARE. INSTALLAZIONE DELL'HARDWARE : Si ricorda che per l'installazione di un PLC, bisogna attenersi alle norme CEI 44-5 (1985) fasc. 729: "Equipaggiamenti elettrici di macchine industriali. Parte 1: norme generali". E' necessario considerare diversi aspetti, come la corretta installazione, la protezione contro i disturbi di natura elettrica, ed infine le caratteristiche ambientali, allo scopo di garantire un corretto funzionamento, la sicurezza del personale e dell'impianto stesso. E' sempre importante leggere il manuale d'installazione fornito con il PLC, in quanto vi possono essere delle prescrizioni particolari che tengono conto delle caratteristiche tipiche del controllore che si sta installando. I controllori programmabili devono essere protetti dalle sovratensioni che possono generarsi sia negli ingressi che nelle uscite. Le unità d'ingresso sono munite al loro interno di accoppiatori ottici (optoisolatori) , i quali evitano che una sovratensione possa danneggiare i circuiti interni del PLC. Per quanto riguarda le uscite, se queste non sono già protette dai cortocircuiti, bisogna prevedere l'installazione di fusibili extrarapidi sulle stesse. Inoltre è da considerare sempre qual'è la potenza elettrica massima che una unità di uscita è in grado di comandare , sommando le potenze dei singoli carichi (relè, contattori, ecc.) ed individuando nel ciclo della macchina qual'è il numero massimo di uscite che si trovano ad essere attivate contemporaneamente. Se il valore di potenza così ottenuto supera quello massimo ammissibile dal PLC occorrerà prevedere l'utilizzo di contattori o relè di potenza per amplificare la potenza massima erogabile dal PLC. Bisogna sempre predisporre un dispositivo d'emergenza per togliere tensione ai carichi d'uscita in caso di necessità ed un dispositivo per togliere tensione alle macchine non in funzione, per interventi sulle stesse, tramite dei sezionatori a relè. MISURE PER LA PROTEZIONE DAI DISTURBI ELETTRICI Per garantire la protezione dai disturbi elettrici, che non agiscono sull'hardware ma sul software e possono determinare mal funzionamenti del controllore, è opportuno fissare il PLC su di una piastra metallica collegata a terra. Per quanto riguarda il cablaggio dei conduttori, deve essere realizzato separando i conduttori di alimentazione del controllore e del circuito di potenza dai conduttori dei segnali di I/O, prevedendo la loro sistemazione in canaline separate oppure, se ciò non è possibile, schermando singolarmente i cavi in corrente alternata. La stessa cosa va fatta per i conduttori di collegamento dei segnali analogici rispetto ai segnali digitali : se sono alloggiati nella stessa canalina, si dovranno schermare i cavi di collegamento dei segnali analogici. Bisogna procurarsi un unico punto di riferimento di massa per il collegamento al morsetto di massa sul PLC. Occorre anche separare il cablaggio per corrente alternata da quello per corrente continua ed evitare di collocare i conduttori vicino a disturbi elettrici particolarmente forti. Vanno rispettate la sezione e la lunghezza massima dei conduttori che è indicata nei manuali del controllore. Se nell'armadio in cui è alloggiato il PLC vi sono dei contattori o dei relè con bobine comandate da contatti elettromeccanici, si può rendere necessaria l'installazione di gruppi RC spegniarco in parallelo alle bobine. E' da evitare l'installazione di lampade fluorescenti all'interno dell'armadio. Pag. 24 di 31 INSTALLAZIONE SOFTWARE L'installazione del software richiede procedure diverse a seconda dell'unità di programmazione che è stata usata per la programmazione e che si usa per l'immissione del programma sul PLC, del supporto utilizzato per la memorizzazione ed il trasporto del programma (EPROM, Floppy Disk, Nastro Magnetico). Il programma può essere installato sul PLC generalmente da: − direttamente da tastiera o consolle di programmazione collegando le stesse al controllore; − copia del programma da una EPROM, su cui è stato caricato precedentemente, alla RAM del controllore; − sostituzione della RAM della CPU con una EPROM: − copia da un floppy disk alla RAM del PLC tramite un computer collegato allo stesso od una unità di videoprogrammazione: − copia del programma da un nastro magnetico alla RAM. Queste procedure variano anche a seconda del costruttore, per cui ci si rifà alla manualistica fornita con il PLC per ottenere le informazioni necessarie. Le operazioni di installazione del software non presentano di norma difficoltà , in quanto si tratta di operazioni semplici da effettuare, sia che si eseguano da unità di programmazione, sia da PC; in entrambi i casi si dispone di un menù di comandi di facile comprensione ed utilizzo. MANUTENZIONE E RICERCA GUASTI Oltre ad una corretta installazione, è necessario che venga fatta periodicamente una adeguata manutenzione. Tutti i PLC , pur con certe differenze, hanno delle funzioni di test ed autodiagnosi dei guasti o mal funzionamenti (test sul funzionamento del microprocessore, sulla memoria, sul livello della batteria, ecc.) che permettono una ricerca dei guasti guidata e quindi di individuare l'anomalia più velocemente. La funzionalità degli I/O si può controllare tramite i led indicatori per ogni punto di I/O. Nelle apparecchiature più sofisticate è possibile visualizzare sulle unità di programmazione un insieme di informazioni sulla natura dello specifico guasto. La manutenzione ordinaria, che di norma dovrebbe essere fatta con frequenza almeno semestrale o maggiore se le condizioni ambientali lo impongono, serve a prevenire una serie di guasti soprattutto per quanto riguarda la parte relativa alle circuiterie di collegamento dei sensori e degli attuatori, ponendo cura ad es. ai seguenti punti : -controllo delle viti di fissaggio ; -verifica del corretto inserimento dei cavi di collegamento nei rispettivi morsetti e che le viti degli stessi siano correttamente serrate ; -controllare la carica della batteria che a seconda del tipo che viene usato ha una durata che varia da due anni a cinque anni (batterie al litio). E' utile riportare su di una apposita targhetta la data in cui la stessa dovrà essere sostituita. E' consigliabile tenere a magazzino delle unità di I/O di ricambio, che sono le parti del PLC più soggette a guasti, semprechè il PLC sia costruito in modo da permetterne la rapida sostituzione. Per le eventuali misure di controllo che si dovessero rendere necessarie, è opportuno l'uso di un multimetro, digitale od analogico che sia, dotato di una elevata impedenza d'ingresso. A volte le cause di guasto o di anomalie di funzionamento, possono essere la temperatura o l'umidità, per cui è opportuno disporre di un igrometro ed un termometro. Pag. 25 di 31 LA SCELTA ED IL DIMENSIONAMENTO DEL CONTROLLORE PROGRAMMABILE Bisogna considerare diversi fattori per arrivare a definire qual'è, tra i PLC presenti in commercio, quello che soddisfa maggiormente le proprie esigenze. E' opportuno considerare i seguenti punti : − numero e tipo di segnali che si devono elaborare (cioè numero di I/O) − tipo e volume dell'elaborazione che deve svolgere il PLC (Kbyte memoria RAM utente e dati) − tempo di ciclo del PLC − tipo di sensori ed attuatori − tipo di morsettiere e cablaggi − tipo di memorie installabili − caratteristiche ambientali − possibilità di dialogo con altri PLC o con PC − assistenza tecnica − vita operativa − linguaggi di programmazione − costo delle apparecchiature − costo delle interruzioni del funzionamento dell'impianto. Vi sono alcuni criteri di massima che è possibile seguire per individuare il prodotto che meglio si adatta alle proprie esigenze, tra questi possiamo distinguere criteri funzionali, tecnologici, operativi ed infine criteri economici. Pag. 26 di 31 CRITERI FUNZIONALI Si valuta innanzitutto la qualità e la quantità delle funzioni che il PLC può svolgere. Un aspetto prioritario è sicuramente quello del numero e del tipo di ingressi e di uscite necessari, i quali potranno essere di tipo analogico o digitale a seconda ovviamente del tipo di segnali presenti nell'impianto. Visto l'alto costo degli I/O analogici è da valutare con attenzione se questi sono veramente indispensabili o se è possibile utilizzare semplicemente dei rivelatori di soglia. Se i segnali sono di tipo numerico in formato BCD si possono utilizzare degli ingressi e delle uscite digitali per la loro elaborazione (ad es. con la tecnica del multiplexaggio degli ingressi come già visto), od ancora, se si hanno dei segnali in formato ASCII sarà necessario che il PLC abbia delle porte di comunicazione standard tipo RS232C o RS422 per poter essere collegato con stampanti , calcolatori, etc. Dopo aver definito il tipo, si stabilirà il numero degli I/O necessari tenendo eventualmente conto di futuri ampliamenti dell'impianto prevedendo una certa riserva e scegliendo un PLC che è espandibile. Subito dopo si dovrà passare a definire le funzioni e la quantità di memoria necessari. Per quanto riguarda le funzioni, se dovessero servire (come avviene nella maggioranza dei casi) delle temporizzazioni, si dovrà valutare il loro numero e la risoluzione che viene loro richiesta; nel caso dei contatori si dovrà valutare il valore massimo di conteggio e la frequenza massima di conteggio. Se dovessero servire delle elaborazioni di tipo matematico si dovrà prestare attenzione alle capacità di calcolo offerte dal linguaggio di programmazione di cui il PLC è dotato (comparazioni, operazioni aritmetiche, potenze, radici quadrate, funzioni trigonometriche, etc.). E' importante inoltre valutare, per il processo da gestire, l'importanza della velocità del tempo di ciclo, del tipo di ciclo, della velocità dell'acquisizione dello stato degli ingressi e della generazione dei segnali in uscita. CRITERI TECNOLOGICI Ci sono dei criteri tecnologici da tenere presenti per scegliere il PLC adatto all'ambiente in cui dovrà operare, ambiente inteso sia in senso fisico sia in senso di apparecchiature ad esso collegate. Innanzitutto è necessario considerare le caratteristiche dei sensori, elettronici od elettromeccanici che siano. Nel caso di sensori di tipo elettromeccanico si dovrà valutare ad es. l'effetto rimbalzo dei contatti, nel caso di sensori di tipo elettronico il tipo di alimentazione (NPN, PNP, AC, etc.); se l'alimentazione viene prelevata dal PLC oppure da un alimentatore esterno, la possibilità di collegamento contemporaneo di più sensori, etc. Ovviamente tutte queste informazioni saranno disponibili nei cataloghi forniti dalle varie case costruttrici. Per gli attuatori bisogna distinguere tra le uscite a relè e quelle statiche. Le uscite a relè non pongono problemi per quanto riguarda i valori di tensione e corrente, invece la loro durata ed il loro tempo di risposta possono essere non adeguati. Le uscite statiche non forniscono un isolamento galvanico e questo può costituire un notevole svantaggio in impianti in cui per motivi di sicurezza deve esserci. Oltre a questo richiedono dei valori di tensione più precisi rispetto alle uscite a relè, sono però più affidabili e presentano un tempo di risposta inferiore. Può anche presentarsi l'esigenza che il PLC debba essere in grado di gestire unità di I/O remote, qualora si abbiano sensori dislocati in punti dello stabilimento distanti fra loro. Se le interruzioni dell'erogazione dell'energia elettrica dovessero presentarsi con frequenza, è preferibile scegliere un PLC che possa contenere il programma in una memoria non volatile. Per quanto riguarda il cablaggio, va posta attenzione alla necessità di utilizzare cavi schermati per i collegamenti dei sensori ed è preferibile anche utilizzare delle morsettiere staccabili, che in caso di guasto al PLC permetteranno di sostituirlo senza dover scollegare tutte le apparecchiature, con risparmio di tempo per la sostituzione e conseguente riduzione del tempo di fermo impianto. Pag. 27 di 31 Infine va considerato con attenzione il tipo, il dimensionamento ed il raffreddamento dell'armadio che dovrà contenere il PLC, sia in funzione dello smaltimento del calore prodotto dallo stesso sia in funzione dell'ambiente in cui si trova ad operare (temperature elevate, agenti chimici, pericolo di esplosioni od incendi per la presenza di sostanza infiammabili o detonanti, vibrazioni etc.). CRITERI OPERATIVI L'operatività di un PLC inizia dalla fase di programmazione dello stesso per continuare con il collaudo e la messa in funzione, con la normale conduzione, con la manutenzione ed infine con la possibilità di ampliamenti o modifiche all'impianto senza eccessive difficoltà sia per le modifiche fisiche all'impianto sia per le modifiche da apportare al programma. E' necessario quindi, perchè il PLC abbia una buona operatività, che tutte queste fasi siano condotte nel modo migliore. La scelta quindi dovrà indirizzarsi su PLC che siano in grado di soddisfare quanto più possibile queste esigenze. CRITERI ECONOMICI Non sempre un risparmio nel momento dell'acquisto di un'apparecchiatura si rivela tale nel tempo in quanto ci sono altri costi che, in futuro, possono rivelarsi maggiori se non si considerano alcune cose già in fase di progetto, come la sostituzione di unità o di parti di unità guaste. In relazione ai costi legati alle interruzioni del funzionamento dell'impianto, occorre considerare la disponibilità delle parti di ricambio non solo nel luogo in cui è stata costruita la macchina, ma anche dove la macchina sarà installata ed anche l'addestramento del personale addetto alla programmazione ed alla manutenzione. In particolare, valutando esigenze presenti e future, bisognerà preferire PLC che potranno essere estesi ed aggiornati in futuro, con la capacità di poter essere collegati ad altri PLC od a dei calcolatori e che abbiano un'assistenza adeguata (facilità di reperire parti di ricambio, valida documentazione tecnica, corsi di formazione). Pag. 28 di 31 OSS: Paragrafo facoltativo. non richiesto per l'esame AFFIDABILITÀ, DISPONIBILITÀ, SICUREZZA DEI CONTROLLORI PROGRAMMABILI AFFIDABILITÀ Per affidabilità di un comando elettronico si intende la capacità di soddisfare, in un determinato periodo di tempo ed entro certi limiti, alle esigenze richieste dalla sua finalità applicativa. Una misura dell'affidabilità di un dispositivo è data dall'indice di guasto A dato da : A=n/(N*t) dove n = numero di guasti nel tempo t N = numero iniziale di dispositivi Il comportamento dei dispositivi elettronici rispetto ai guasti può essere suddiviso in tre fasi : 1. nella prima fase si hanno i cosiddetti "guasti precoci", dovuti a difetti di fabbricazione e difetti dei materiali. In questa fase l'indice di guasto decresce rapidamente dopo un periodo di funzionamento iniziale relativamente breve. 2. nella seconda fase si hanno i cosiddetti "guasti casuali", il cui livello si mantiene costante , se sono state rispettate le previste prescrizioni tecniche. 3. l'ultima fase è quella in cui, superato un certo tempo di funzionamento, l'indice di guasto comincia a crescere. Ciò avviene comunque con gradualità. DISTRIBUZIONE DEI GUASTI Negli impianti realizzati con controllori programmabili si ha grosso modo una distribuzione dei guasti come quella di fig. 19 Figura S Distribuzione dei guasti in un sistema gestito da PLC. Come si può vedere la grande maggioranza dei guasti si verifica all'esterno del controllore programmabile (circa il 95 %) cioè nelle apparecchiature del " CAMPO " e nei loro collegamenti (trasduttori, regolatori, attuatori, cablaggi ecc.). Solo una piccola parte dei guasti avviene nei circuiti elettronici del PLC (circa il 5 %) e questa parte si suddivide ulteriormente in : − guasti dell'unità centrale (il 10 %, cioè lo 0.5 % del totale dei guasti) egualmente suddivisi tra l'unità di governo, la memoria, il sistema bus e l'alimentazione. Pag. 29 di 31 OSS: Paragrafo facoltativo. non richiesto per l'esame − guasti nelle unità periferiche (circa il 90 %, cioè il 4.5 % del totale dei guasti). DISPONIBILITÀ La disponibilità, indicata con la lettera "V", è la probabilità di avere un sistema funzionante in un dato momento e viene valutata nel seguente modo: V = MTBF / ( MTBF + MTTR ) dove : MTBF = Mean Time Between Failure cioè tempo medio tra due guasti ; MTTR = Mean Time To Repair cioè tempo medio di riparazione. Come risulta evidente, la disponibilità ideale, V = 1, non è raggiungibile praticamente in quanto è sempre presente un residuo di guasti. Ci si può avvicinare a questo valore ricorrendo a comandi realizzati con criteri di ridondanza. Un modo di aumentare la disponibilità è quello di ridurre al minimo i tempi di "fuori servizio", prevedendo cioè delle appropriate misure in modo che le operazioni di ricerca guasti e le riparazioni vengano effettuate nel minore tempo possibile. CONSIDERAZIONI SULLA SICUREZZA NEL CAMPO DEI PLC Una prima distinzione da fare è quella tra guasti attivi e guasti passivi. Un guasto è passivo se non si manifesta subito, attivo invece quando si manifesta subito. Entrambi possono essere pericolosi o non pericolosi. Un guasto attivo e pericoloso è ad esempio il cortocircuito tra i conduttori di un pulsante di marcia (o in genere di un sensore che ha il compito di abilitare l'attivazione di un'uscita) che provoca l'azionamento non voluto dell'uscita. Un guasto passivo non pericoloso è l’interruzione di un conduttore di collegamento di un pulsante di marcia che impedirà di avviare il motore ma nella stragrande maggioranza dei casi non crea situazioni di pericolo. Sia il cortocircuito tra due conduttori di collegamento di un sensore, sia l’interruzione di un conduttore possono provocare dei guasti attivi e/o passivi entrambi pericolosi o non pericolosi a seconda che si verifichino sui conduttori di collegamento di un contatto NA o NC. Altro fattore importante ai fini della sicurezza è l'isolamento dei conduttori. Si pensi ad un cortocircuito sullo stesso conduttore, che pur essendo di solito scarsamente considerato, è un guasto che può provocare situazioni di pericolo : nel caso in cui un difetto d'isolamento su di un conduttore provochi il cortocircuito di un contatto NA, se in conseguenza di ciò si ha l'attivazione di una lampada o di un segnale acustico per quanto sia sgradito non è sicuramente pericoloso, ma se viene cortocircuitato un pulsante di marcia, ciò determinerà l'azionamento indesiderato del motore corrispondente con ovvio pregiudizio della sicurezza. Nel primo caso si avrebbe un guasto attivo ma non pericoloso nel secondo un guasto attivo pericoloso. Si ritiene che l’interruzione di un conduttore (ad es. per un morsetto allentato) si possa verificare con maggiori probabilità rispetto al cortocircuito tra due conduttori, ragion per cui nella scelta dei contatti da utilizzare (NA o NC) si dovranno adottare gli accorgimenti che danno maggior garanzie di sicurezza. Un'importante regola che è assolutamente da rispettare ai fini della sicurezza contro le interruzioni dei conduttori di collegamento delle apparecchiature di comando è quella di usare sempre dei contatti NA per la apparecchiature che hanno il compito di attivare delle uscite (abilitare dei movimenti) e dei contatti NC per le apparecchiature che hanno il compito di disattivare le uscite (arresto di movimenti). Per quanto il PLC possa essere considerato un'apparecchiatura che elabora delle informazioni, agisce comunque in ambiente industriale ed i guasti che possono creare situazioni di pericolo è indifferente che avvengano all'interno od all'esterno dello stesso. Pag. 30 di 31 OSS: Paragrafo facoltativo. non richiesto per l'esame − Un errore di trasmissione dati all'interno del PLC potrebbe provocare l'attivazione di un'uscita invece di un'altra, bisogna adottare particolari accorgimenti perchè il sistema di controllo soddisfi le prescrizioni normative in termini di sicurezza. − I comandi che riguardano i circuiti di sicurezza devono agire su componenti elettromeccanici indipendenti dal PLC. Un esempio di come realizzare i collegamenti del circuito di sicurezza di un sistema gestito da PLC è rappresentato in fig. 20: Figura 20 Esempio di alimentazione di un PLC rispettando criteri di sicurezza. Nel modo descritto in fig. 20, l'azionamento di un comando di arresto provoca cioè la disattivazione del contattore i cui contatti di potenza, aprendosi, provocano l'interruzione del circuito di alimentazione del PLC stesso ed eventualmente anche della sezione degli ingressi e delle uscite se quest'ultime sono alimentate separatamente. Pag. 31 di 31