CONTROLLORI LOGICI PROGRAMMABILI PLC Docente: Miglietta Giovanni Generalità sul PLC • I primi PLC furono introdotti sul mercato verso la fine degli anni 60. La ragione fondamentale del loro sviluppo era di cercare di eliminare gli alti costi dei controlli basati su logiche a relè. • La Bedford Associates (Bedford, MA) propose un sistema chiamato Modular Digital Controller (MODICON) alla maggiore casa automobilistica americana. Altre compagnie proposero, contemporaneamente, degli schemi basati su computer, uno dei quali era basato sul PDP-8. Il MODICON 084 fu il primo PLC ad entrare in produzione Logica cablata e logica programmabile PROGRAMMABLE LOGIC CONTROLLER O PLC • I PLC SONO DISPOSITIVI DI ELABORAZIONE DESTINATI A RIMPIAZZARE I CIRCUITI A RELÈ UTILIZZATI PER REALIZZARE L’AUTOMAZIONE DI UN IMPIANTO • I PLC SONO PRESENTI IN TUTTE LE FASI DELLA PRODUZIONE INDUSTRIALE, OVUNQUE SIA NECESSARIO UN CONTROLLO ELETTRICO DI UNA MACCHINA. Evoluzione storica IL PLC È NATO PER SOSTITUIRE SISTEMI DI AUTOMAZIONE REALIZZATI CON LOGICHE CABLATE A RELÈ QUADRI A RELÈ • CON I QUADRI A RELÈ LA FUNZIONE CHE SI VUOLE REALIZZARE È DEFINITA RIGIDAMENTE DAL TIPO DI CONTATTO DI RELÈ CHE SI UTILIZZA (NORMALMENTE APERTO O NORMALMENTE CHIUSO) E DAI SUOI COLLEGAMENTI • OGNI MODIFICA DEL CONTROLLO COMPORTA QUINDI MODIFICHE AL CABLAGGIO O UN ADEGUAMENTO DEI RELÈ • UN MODESTO VANTAGGIO DELLA SOLUZIONE A RELÈ CONSISTE NEL FATTO CHE, TRATTANDOSI DI UN COMPONENTE DI POTENZA, ESSO PERMETTE L'INTERFACCIAMENTO DIRETTO DEL CONTROLLO CON IL CAMPO • IL RELÈ È UN OGGETTO INGOMBRANTE E POCO AFFIDABILE (È COMUNQUE UN DISPOSITIVO MECCANICO E QUINDI SOGGETTO AD USURA) Caratteristiche di un PLC Numero max. I/O Tipologia moduli di I/O Criterio costruttivo (monoblocco, modulare) Massima dimensione del programma (capacità di memoria) Set di istruzioni Tempo di scansione Espandibilità Moduli speciali Periferiche Collegabilità in rete Categorie di PLC In base ai punti di input-output gestibili ed alla capacità di memoria, i PLC si suddividono nelle seguenti categorie: - Micro-PLC: fino a 64 punti di input-output digitali, memorie da 1 a 2 KB; - Piccoli PLC: da 64 a 512 punti di input-output digitali e/o analogici, memoria fino a 4 KB, connessione in rete; - Medi PLC: da 512 a 2048 punti di input-output digitali e/o analogici, memorie di decine di KB, connessione in rete e moduli speciali; - Grandi PLC: massime caratteristiche di capacità e completezza, sia hardware che software. Si hanno PLC di: · gamma bassa, quando controllano fino a 64 I/O · gamma media, quando controllano tra 64 e 512 I/O · gamma alta, quando controllano più di 512 I/O. Si dicono compatti o monoblocco i PLC che si presentano in una configurazione rigida che non può essere quasi mai modificata. Si dicono invece modulari, quelli che sono configurabili a piacere dall’utente in base alle sue esigenze. Struttura del PLC PLC Siemens SIMATIC S7-400 PLC Siemens SIMATIC S7-312 PLC Telemecanique serie Twido PLC Hitachi EH-150 PLC Telemecanique TSX Micro PLC Telemecanique TSX Premium PLC Siemens S7-300 Produttori di P.L.C. •Siemens •Allen-Bradley •Omron •Telemécanique •GE Fanuc •Toshiba •KlocknerMoeller •Mitsubishi •Matsushita •Bosh •Hitachi •Modicon I sistemi di controllo e il PLC Esempio di sistema di controllo con PLC PLC a singolo processore PLC multi-processore Rete di PLC Struttura gerarchica del SW di un PLC Comunicazione tra PLC Controllo, Supervisione Bus di Campo PLC micro-PLC, dispositivi intelligenti Sensori Bus di Dispositivi Bus di Sensori 8 bit bytes 30 messaggi 256 file BatiBus, InterBus S, CAN (DeviceNet), LONWorks InterBus S, CAN (DeviceNet), LONWorks, Profibus DP-PA-FMS, WorldFIP Profibus PA-FMS, WorldFIP, FieldBus Fondation, FieldBus IEC 61158 Ethernet, Token Bus bit Relè programmabili Zen Logo Zelio Schema a blocchi della struttura di un PLC Confronto logica cablata e logica programmata •Spazi •Tempi •Affidabilità •Consumi •Velocità •Costi Spazi PLC Logica cablata Minor ingombro Maggior ingombro L’eliminazione dei componenti elettromeccanici riduce gli spazi necessari Il cablaggio dei componenti elettromeccanici richiede maggiori spazi Tempi di esecuzione PLC Logica cablata Minori Maggiori •Eliminazione cablaggi •Eliminazione collaudi (eseguibili al banco) •Nessuna o ridotte modifiche al circuito per modifiche all’impianto •Installazione componenti •Collaudi •Eventuali modifiche all’impianto richiedono modifiche al circuito Affidabilità PLC Logica cablata Maggiore Minore •Assenza di parti meccaniche in movimento •Apparecchiature meccaniche con vita limitata Sensibile alle interferenze (richiede protezione) Insensibile alle interferenze Consumi PLC Ridotti consumi di energia Logica cablata Maggiori consumi di energia (in relazione all’impianto realizzato) Velocità PLC Minore velocità (a causa dei tempi richiesti dall’esecuzione del programma, ma sufficiente al corretto funzionamento degli impianti ) Logica cablata Maggiore velocità Costi PLC Conveniente per applicazioni non eccessivamente semplici Logica cablata Conveniente per applicazioni molto semplici Componenti fondamentali di un PLC ARMADIO (CESTELLO O RACK) - CONTIENE GLI ALTRI MODULI - ASSICURA LA CONNESSIONE ELETTRICA ATTRAVERSO IL BUS SUL FONDO DEL RACK ALIMENTATORE - ALIMENTAZIONE PER TUTTE LE SCHEDE PRESENTI NEL RACK MODULO PROCESSORE - SCHEDA A MICROPROCESSORE - CONTROLLA E SUPERVISIONA TUTTE LE OPERAZIONI ESEGUITE ALL’INTERNO DEL SISTEMA MODULI I/O - SCHEDE CHE PERMETTONO L’INTERFACCIAMENTO DEL MODULO PROCESSORE CON IL MONDO ESTERNO TERMINALE DI PROGRAMMAZIONE - QUALSIASI PERSONAL COMPUTER DOTATO DI SCHEDA PER LA COMUNICAZIONE SERIALE (RS232 / RS485) Struttura del PLC Un PLC è composto da un alimentatore, dalla CPU che in certi casi può avere interna o esterna una memoria RAM o Flash o EPROM, da un certo numero di schede di ingressi digitali e uscite digitali, e nel caso in cui sia necessario gestire grandezze analogiche, il PLC può ospitare delle schede di ingresso analogiche o di uscita analogiche. Il PLC normalmente opera in rete con altri PLC, quindi sono necessarie dei moduli/schede di comunicazione adatte al protocollo di rete già implementato sugli altri PLC. Nel caso di operazioni di movimentazione, come nel campo della robotica, il PLC ospita delle schede acquisizione controllo assi, cioè delle schede molto veloci e sofisticate che permettono di gestire spostamenti e posizionamento. Armadio (o Rack o Guida Profilata) Contiene i vari moduli assicurandone la connessione meccanica ed elettrica (tramite bus) e la schermatura. Le sue caratteristiche fondamentali sono il numero di slot, il grado di protezione, le dimensioni e il tipo di fissaggio. Modulo alimentatore Fornisce l’alimentazione stabilizzata ai moduli del rack. Le sue caratteristiche principali sono la potenza massima erogabile, la connettibilità in parallelo (per aumentare la potenza o per motivi di ridondanza), la possibilità di inviare al PLC un segnale di shutdown in caso di mancanza di alimentazione, la presenza di batterie tampone e di indicatori di stato. CPU La CPU è il cervello del PLC. La CPU è una scheda complessa basata su un microprocessore con un sistema operativo proprietario, e con una zona di memoria a disposizione del programma utente, cioè del programma di automazione. La memoria utente è spesso esterna come ad esempio nel caso di memoria EPROM. Il vantaggio di una memoria esterna è legata alla semplicità di programmazione o di modifica dello stesso. La CPU durante il funzionamento a regime, colloquia con tutte le schede connesse sul BUS del PLC, trasferendo dati e comandi sia verso il mondo esterno, sia dal mondo esterno. Una delle caratteristiche peculiari delle CPU dei PLC è la loro capacità di poter gestire le modifiche del programma di gestione del processo durante il normale funzionamento. Questa possibilità è estremamente utile nel caso di impianti che devono essere sempre attivi. Moduli di ingresso digitali I moduli di ingresso digitali sono utilizzati per il controllo di grandezze "digitali", cioè di tensioni a due valori (ad esempio 0V o 24V, oppure 0V 110V). Ogni modulo può gestire da 4 a 32, o 64 ingressi digitali differenti. I segnali dal campo vengono fatti arrivare con cavi elettrici fino alla morsettiera del modulo. Moduli di uscita digitali I moduli di uscita digitali sono utilizzati per i comandi di attuatori digitali. Ad esempio un relé è un attuatore digitale, in quanto può avere soltanto due stati stabili: diseccitato, o eccitato. Altro esempio di attuatore è una valvola digitale a due stati: aperta, chiusa. Anche nel caso di schede di uscita digitali, si possono gestire da un minimo di 4 ad un massimo di 64 uscite digitali differenti. Moduli di ingresso analogici Questo tipo di moduli di ingresso permettono il controllo di grandezze elettriche il cui valore può variare entro un intervallo. Le grandezze in gioco sono in tensione o in corrente. Ad esempio sono disponibili moduli di ingresso analogiche in corrente, con un intervallo variabile tra 4mA e 20mA. Molti produttori di PLC rendono disponibili moduli con ingressi analogici per sonde di temperatura sia Pt100 che termocoppie, T, J, K ecc. Questi moduli sono disponibili con varie risoluzioni (8-12-14-16 bit) e con 1 o più ingressi distinti disponibili in morsettiera o connettore. Moduli di uscita analogici I moduli di uscita analogici permettono di controllare degli attuatori variabili. Ad esempio è possibile comandare un motore elettrico tramite un inverter variandone la velocità da zero alla sua massima velocità. I moduli di I/O analogici realizzano anche le conversioni D/A e A/D. Schede di comunicazione Il PLC durante il suo funzionamento può comunicare con computer, con altri PLC oppure con altri dispositivi. La comunicazione con computer e altri dispositivi avviene tramite tipi di connessione standard come: • RS232 • RS422/RS485 • TCP/IP Moduli speciali Ne esistono di molti tipi. I principali sono: • moduli di I/O remoto (posti in un rack diverso da quello del PLC), • moduli per connessione in rete (per bus di campo, ethernet,...), • moduli per controllo PID, • moduli per la lettura di sensori particolari (termocoppie, encoder,…), • moduli d’interfaccia operatore (tastierini, display,…), • moduli di backup (CPU di riserva sincronizzate con quella principale, che le subentrano in caso di malfunzionamento). Terminale di programmazione Vi sono terminali di tipo dedicato che si collegano direttamente al PLC tramite una porta di comunicazione e sono dotati di una tastiera per l’inserimento delle istruzioni e di un display per il controllo del programma. Sono sempre più diffusi sistemi di sviluppo basati su PC, con cui si effettua off-line la programmazione del codice da memorizzare sul PLC. Si utilizzano dei pacchetti software appositi. I terminali PC sono connessi al PLC direttamente o via rete. Spesso consentono anche il monitoraggio del PLC durante il suo normale funzionamento. Ingressi uscite del PLC Sezione ingressi E’ l’hardware di interfaccia tra Input e CPU Pulsanti Selettori Finecorsa Fotocellule Trasduttori Circuito adattatore Morsettiera Memoria segnali CPU Sezione ingressi Gli ingressi possono essere: Digitali ed assumere solo due stati logici detti 0 – 1 o On – Off. Fronte di salita Fronte di discesa 1 0 Durata segnale Analogici ed assumere qualsiasi valore compreso tra due estremi (range) definiti t t Sezione ingressi Gli ingressi vengono collegati con opportuni morsetti di collegamento debitamente numerati e il loro stato viene monitorato con led che risultano accesi per livello di ingresso 1 e spenti per livello di ingresso 0 Ingressi Rappresentazione dei fotoaccoppiatori C o m u ne • I fotoaccoppiatori sono usati per isolare i circuiti interni dei PLC dagli ingressi, ciò consente di eliminare la possibilità che dei disturbi elettrici possano entrare direttamente nei circuiti elettrici interni del PLC. Sezione uscite E’ l’hardware di interfaccia tra CPU e Output CPU Memoria segnali Contattori Relè Elettrovalvole Circuiti elettrici Display Regolatori Circuito adattatore Morsettiera NPN PNP AGLI INGRESSI PLC AGLI INGRESSI PLC I sensori NPN devono essere connessi con un uscita al PLC input e l’altra uscita alla massa dell’alimentazione. Se i sensori non sono alimentati dal PLC, allora le masse devono essere collegate insieme. I sensori PNP devono essere connessi con un uscita alla tensione positiva e con l’altra agli ingressi del PLC. Anche in questo caso se i sensori non sono alimentati dal plc, le tensioni V+ devono essere connesse insieme. I sensori PNP sono comunemente usati in Europa. Hardware Update Digital I/O with NPN and PNP configuration selection PNP configuration Hardware Update Digital I/O with NPN and PNP configuration selection NPN configuration Sezione uscite Le uscite vengono collegate con opportuni morsetti di collegamento debitamente numerate e il loro stato viene monitorato con led che risultano accesi per livello di uscita 1 (on) e spenti per livello di uscita 0 (off) Uscite Ingressi digitali Per ingressi digitali si intendono quei morsetti del PLC ai quali può essere collegato un contatto on/off (digitale), quale un termostato, pressostato, finecorsa, pulsante, ecc. Normalmente per gli ingressi digitali si utilizza la tensione 24Vcc, quindi nel quadro con il PLC si rende necessario l'installazione di un alimentatore a loro dedicato. Per separare i circuiti interni della CPU con la tensione proveniente dall’impianto, ogni scheda di ingresso è dotata di appositi optoisolatori (detti anche fotoaccoppiatori), che resistono a differenze di potenziale anche di 1500 V (tensione di isolamento). Memoria La memoria di un PLC è organizzata per aree distinte: • area del sistema operativo (ROM), • area di lavoro del sistema operativo (RAM), • area di I/O (RAM), • area dei programmi utente (RAM durante lo sviluppo, poi PROM o EPROM), • area dei dati utente (RAM). La memoria a disposizione dei programmi utente varia tipicamente da circa mezzo kiloword a qualche centinaio di kiloword, con word di 8 o 16 bit. Le EPROM sono ormai da considerare obsolete e non vengono praticamente più usate. Sono state sostituite dalle Memorie flash o EEPROM (Electrical Erasable Programmable Read Only Memory) che possono essere cancellate elettricamente senza dover ricorrere ai raggi UV. Una memoria flash è una memoria permanente riscrivibile (EEPROM) organizzata a blocchi, ovvero un circuito semiconduttore sul quale è possibile immagazzinare dati in forma binaria mantenendoli anche in assenza di alimentazione. TSX Micro Memoria La memoria di un PLC può essere divisa in diverse aree, in base all’utilizzo che ne fa: Area del sistema operativo[2] (ROM); è quella destinata alla memorizzazione permanente dei programmi del sistema operativo. Area di lavoro del sistema operativo (RAM); è quella dedicata alla memorizzazione delle variabili temporanee utilizzate dai programmi del sistema operativo. Area di I/O (RAM); è quella nella quale sono memorizzati i valori relativi agli ingressi e i valori da assegnare le uscite. Area programmi utente [1] (RAM - PROM per il programma finale), è quella utilizzata per la memorizzazione del programma da eseguire durante la fase di controllo. Area dati utente (RAM); è quella destinata alla memorizzazione del valore delle variabili temporanee del programma utente. Area funzioni di sistema (RAM); è quella utilizzata per l'accesso alle “funzioni di sistema” definite dall'utente (timer, contatori, ecc…). [1] Il programma utente è il software che contiene le istruzioni specifiche per realizzare le operazioni necessarie per il controllo del processo → va modificato di volta in volta, in funzione delle esigenze. [2] Il sistema operativo si distingue dal programma utente, per i seguenti aspetti: è il software che si occupa di tutte le operazioni per la gestione della funzionalità di base del PLC: lettura degli ingressi, copia degli ingressi, copia delle uscite, ecc. La memoria dei PLC è organizzata in word di 8 o 16 bit. L’informazione digitale di base è il bit, una cella di memoria che può valere 0 (quando non attivo) o 1 (quando attivo). I bit vengono raggruppati a loro volta in blocchi: Principio di funzionamento del PLC Ingressi S E N S O R I Uscite HARDWARE Consensi Comandi SOFTWARE PLC A T T U A T O R I La scansione del PLC Modalità di funzionamento della CPU di un PLC La scansione del PLC e i tempi di esecuzione Il PLC ha un funzionamento di tipo sequenziale: esso esegue le funzioni programmate con ripetitività, da quando viene alimentato e messo in stato di RUN fino a quando lo si porta in stato di STOP e si toglie alimentazione. Il ciclo che esso compie viene denominato ciclo di scansione, mentre il tempo che impiega a compierlo si chiama tempo di scansione. La scansione del PLC Scansione sincrona di ingresso e di uscita LETTURA DELLO STATO DI TUTTI GLI INGRESSI RII: Registro Immagine Memorizzazione nel registroInput o immagine ingressi ELABORAZIONE SEQUENZIALE ISTRUZIONI IPI: Immagine di Processo degli Ingressi (PAE) RIO: Registro Immagine Memorizzazione risultati nelOutput o registro immagine uscite ATTIVAZIONE SEQUENZIALE IPU: Immagine di Processo delle Uscite (PAA) DI TUTTE LE USCITE Terminologia ingressi/Uscite: ↔ Eingang Output ↔ Ausgang Input Fasi di esecuzione di un programma 3a fase: fase PLC in RUN posizionamento uscite + fase di autodiagnosi: esecuzione delle operazioni di autodiagnosi Tempo del ciclo di scansione: 5÷20 ms 1a fase: fase lettura ingressi (tempo: ~1μs ad ingresso) e memorizzazione nel RII (PAE nel Siemens) 2a fase: fase elaborazione programma e aggiornamento RIO (PAA) tempo di esecuzione programma: ~1ms x 1000 istruzioni N.B.: l’aggiornamento degli Input non è in tempo reale Il PLC può vedere la variazione di un ingresso solo durante lo step di analisi degli ingressi. • Per evitare questi problemi, un ingresso dovrebbe durare per almeno 1 tempo di scansione + 1 di lettura degli ingressi. Funzione di allungamento dell’impulso IMPULSO ALLUNGAT O Funzione Interrupt il PLC interrompe ciò che sta facendo per eseguire un sottoprogramma di interrupt. Dopo che ha eseguito tale sottoprogramma, torna indietro a completare le operazioni che aveva momentaneamente sospeso per poi continuare il normale processo di scansione . La programmazione del PLC PROGRAMMAZIONE Il PLC, per operare, ha bisogno di un programma scritto dall’operatore e introdotto nella sua memoria centrale (memoria utente). Il programma viene scritto con particolari linguaggi appositamente studiati per i PLC: i così detti “linguaggi dedicati”. CONTROLLORI A LOGICA PROGRAMMABILE LINGUAGGI DI PROGRAMMAZIONE A A CONTATTI CONTATTI (Ladder, (Ladder, KOP) KOP) GRAFICI GRAFICI A A BLOCCHI BLOCCHI FUNZIONALI (Simbolici) (Simbolici) (Porte (Porte logiche, logiche, FUP) FUP) A A BLOCCHI SEQUENZIALI LINGUAGGI LINGUAGGI DI PROGRAMMAZIONE PROGRAMMAZIONE (Grafcet) (Grafcet) A A LISTA LISTA ISTRUZIONI LETTERALI LETTERALI (Alfanumerici) (Alfanumerici) (Boolean, (Boolean, AWL) AWL) EVOLUTI EVOLUTI (Basic, (Basic, ...) ...) CONTROLLORI A LOGICA PROGRAMMABILE LINGUAGGI GRAFICI • LD • FBD - FUNCTION BLOCH DIAGRAM • SCF - SEQUENTIAL FUNCTION CHART - LADDER DIAGRAM LINGUAGGI TESTUALI • IL - INSTRUCTION LIST • ST - STRUCTURATED TEXT LINGUAGGI DI PROGRAMMAZIONE Diagramma Ladder 1 2 10 10 1 = Pulsante marcia (S2) 2 = Pulsante arresto (S1) 10 = Contattore (K) CONTROLLORI A LOGICA PROGRAMMABILE LINGUAGGI DI PROGRAMMAZIONE Lista istruzioni Indirizzo Istruzione Operando 000 STR 1 001 OR 10 002 AND NOT 003 OUT 2 10 1 = Pulsante marcia (S2) 2 = Pulsante arresto (S1) 10 = Contattore (K) CONTROLLORI A LOGICA PROGRAMMABILE LINGUAGGI DI PROGRAMMAZIONE Porte logiche (S2 + K) • S1 = K S2 K ≥1 S1 & S2 = Pulsante marcia S1 = Pulsante arresto K = Contattore CONTROLLORI A LOGICA PROGRAMMABILE K LINGUAGGI DI PROGRAMMAZIONE Grafcet 1 K K Motore Motore fermo fermo S2 = Pulsante marcia S2 2 S1 = Pulsante arresto K K Motore Motore in marcia K = Contattore S1 CONTROLLORI A LOGICA PROGRAMMABILE Fine parte introduttiva LINGUAGGIO SIEMENS STEP5 / STEP7 KOP: CORRISPONDE ALLA PROGRAMMAZIONE MEDIANTE SCHEMA A CONTATTI (LD) FUP: CORRISPONDE ALLA PROGRAMMAZIONE MEDIANTE SCHEMA LOGICO (FBD) AWL: CORRISPONDE ALLA PROGRAMMAZIONE CON LISTA DI ISTRUZIONI (IL) Linguaggi di programmazione Il PLC per ottemperare ai suoi compiti deve essere programmato. La programmazione del PLC è effettuata normalmente con un PC sul quale un software specializzato permette di creare programmi da scaricare nella memoria della CPU del PLC. Questi software di programmazione possono leggere il programma direttamente dalla memoria della CPU, e visualizzare il programma sul PC. Normalmente il programma viene scritto su PC, quindi scaricato sul PLC, e salvato sul PC stesso, per ulteriori modifiche o per sicurezza. La normativa IEC 1131-3 del 1993 ha standardizzato 5 linguaggi di programmazione, di cui 3 grafici e 2 testuali. La Normativa è stata successivamente aggiornata con l'uscita della "CEI EN 61131-3" detta anche "CEI 65-40" Prima Edizione 1-giugno-1996. Linguaggi di programmazione Linguaggi grafici Ladder diagram (LD o KOP) detto Linguaggio a contatti - È il linguaggio più usato fino a pochi anni fa, in quanto era la trasposizione informatica dei circuiti elettrici usati dagli elettrotecnici. L'automazione industriale infatti era basata su sistemi a logica cablata, il PLC (controllore di logica programmabile) ha permesso di trasportare i concetti della logica cablata nel linguaggio Ladder. Il programmatore semplicemente utilizza simboli logici corrispondenti a segnali di ingresso e di uscita per implementare la logica non più cablando i relé, ma disegnando gli schemi elettrici nel software di programmazione. Function Block Diagram (FBD o FUP) detto Diagramma a blocchi funzionali Analogo ai diagrammi circuitali. Sequential Function Charts (SFC) detto Diagramma funzionale sequenziale Viene usato anche come strumento di specifica. Tale linguaggio permette di implementare facilmente una macchina (o automa) a stati finiti. Linguaggi testuali Instruction List (IL o AWL) detto Lista di istruzioni - Linguaggio di basso livello molto simile all'Assembler. Può essere facilmente ricavato dal Ladder. Structured Text (ST) detto Testo strutturato - Linguaggio di alto livello simile al C++. Linguaggio Ladder Diagram: contatti N.B.: non confondere lo stato fisico con lo stato logico del contatto Contatto rilevatore di fronte. Simbolo: ---|P|--- (fronte positivo) Il contatto rilevatore di fronte P si chiude per un solo ciclo quando il bit ad esso associato passa da 0 ad 1; resta aperto in tutti gli altri casi. ---|N|--- (fronte negativo) Il contatto rilevatore di fronte N si chiude per un solo ciclo quando il bit ad esso associato passa da 1 a 0; resta aperto in tutti gli altri casi. Linguaggio Ladder Diagram: bobine N.B.: Il valore assunto dalla bobina dipende dal RLC dell’espressione booleana alla sua sinistra. Linguaggio Ladder Diagram Regole fondamentali La corrispondenza di un programma LD (per definizione sequenziale) con una rete elettrica (per natura sede di fenomeni simultanei) non può essere totale. Per eliminare ogni possibile ambiguità a ciò conseguente, si stabiliscono quindi nella definizione di LD le regole enunciate nel seguito. Regola 1: La corrente può fluire nei contatti e nelle bobine soltanto da sinistra verso destra. Regola 2: I rung vengono esplorati dal PLC dal primo in alto all’ultimo in basso, e giunti all’ultimo si ricomincia dal primo. Di conseguenza, l’ordine dei rung è rilevante (come lo è quello delle istruzioni in un programma e come non lo è quello di collegamenti elettrici in parallelo). Regola 3: La sincronizzazione delle variabili del programma con ingressi e uscite avviene secondo il principio della copia massiva (immagine di processo): • si leggono gli ingressi (che quindi ai fini del programma restano costanti per tutto il ciclo); • si eseguono tutti i rung (a meno di salti, che vedremo poi) e si scrivono (cioè si assegna un valore a) tutte le bobine normali (ci sono anche quelle a ritenuta e anch’esse le vedremo poi), col che ogni bobina conserva il suo valore fino a che non viene riscritta in un ciclo successivo; • si aggiornano le uscite; • si ricomincia tutto da capo. Osservazione importante LD è un linguaggio che descrive il ciclo operativo del PLC, nel senso che “in un programma LD è scritta la sequenza delle cose che il PLC deve fare ad ogni ciclo”. Il Sequential Function Chart (SFC) • Formalismo grafico per la descrizione del ciclo operativo di macchine automatiche. • Definito dalla Norma IEC 61131-3 tra gli elementi comuni, ma trova diretta implementazione come linguaggio di programmazione in molti tools di sviluppo. • Facilita la scomposizione gerarchica del funzionamento della macchina e la strutturazione del programma in sotto–parti più semplici . • Evidenzia il comportamento sequenziale della macchina o di sue componenti. Note: • Linguaggio formale: Il progetto di un macchina passa attraverso una serie di passaggi (dalla analisi della commessa del cliente, la traduzione in specifiche tecniche, e la realizzazione tecnica) in cui persone con diversi profili professionali lavorano sul progetto comune. Tali persone necessitano di un linguaggio formale comune. • Approccio top-down: dove il funzionamento della macchina viene scomposto in passi fondamentali analizzati separatamente, riducendo così la complessità di ogni singolo elemento che compone, in questo caso, la logica del sistema di controllo. • Comportamento sequenziale: Descrivendo il comportamento ingresso–uscita della macchina, occorre fornire una configurazione di controllo per una qualunque combinazione degli stimoli (ingressi acquisiti dai sensori). Una descrizione ingresso-stato-uscita porta ad una descrizione molto più Fasi di programmazione del PLC 1. Studio del sistema: mediante analisi esplicativa delle operazioni o con schemi di flusso 2. Assegnazione variabili: compilare le tabelle di assegnazione INPUT, OUTPUT (indirizzamento I/O) e delle variabili interne 3. Scelta del linguaggio di programmazione 4. Scrittura del programma, codifica e trasferimento 5. Debug e archiviazione finale Indirizzamento I/O %IXY.i %QXY.i X: indirizzo del rack Y: posizione fisica del modulo nel rack i: numero della via N.B.: per il rack 0 si può omettere l’indicazione 0 1 3 5 7 TSX Micro 9 Moduli I/O a distanza o remoti 2 4 - Rack di base 6 8 10 - Rack di espansione - Slot - Modulo - N° vie del modulo - Alimentatore + CPU (modulo 0) - CPU: TSX 3722 V2.0 - I/O: DMZ 28 DTK %I1.i (i=0÷15) (modulo 1) %Q2.i (i=0÷11) (modulo 2) TSX Premium - Alimentatore: TSX PSY 2600 - CPU: TSX P5720 (TSX 5720 V1.5) (modulo 0) - I: TSX DEY 16D2 %I1.i (i=0÷15) (modulo 1) %I2.i (i=0÷15) (modulo 2) - O: TSX DSY 32T2K %Q3.i (i=0÷31) (modulo 3) Collegamento PLC - Campo PLC CAMPO CAMPO 0 Vcc + 24 Vcc Input Output %I1.0 %Q2.0 %I1.1 RII CPU RIO %I1.2 %Q2.1 %Q2.2 RS 232 cavo seriale Terminale di programmazione Si fa riferimento al PLC TSX Micro TABELLA DELLE VARIABILI Tabella I/O Sigla Tabella variabili interne Oggetti di memoria Oggetti di sistema Costanti FB predefiniti Denominazione Cablaggio esterno Indirizzo PLC 1° esercizio Comando di un impianto luci. Dati due pulsanti (PS1 e PS2), e quattro luci (LS1, LS2, LS3 e LS4), realizzare la seguente sequenza: 1. premendo PS1, si accende LS1; 2. rilasciando PS1, si accende anche LS2; 3. premendo una seconda volta PS1, si accende anche LS3; 4. rilasciando PS1, si accende anche LS4; 5. premendo una terza volta PS1, si spengono contemporaneamente LS1, LS2, LS3 e LS4. 6. Possibilità di azzerare il ciclo in qualsiasi momento premendo PS2. Utilizzando il PLC TSX Micro, in dotazione al Laboratorio di Sistemi, si richiede: • la descrizione della sequenza mediante il Grafcet; • lo schema del collegamento PLC – campo e la tabella delle variabili; • il programma in linguaggio LD con il software PL7 Pro V4.2