Strumenti Utente

Strumenti Sito


introduzione_ai_plc

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
introduzione_ai_plc [2017/03/15 10:18] – [Automazione] adminintroduzione_ai_plc [2021/04/15 09:35] (versione attuale) – [Programmare i PLC] admin
Linea 15: Linea 15:
 ===== Logica cablata e logica programmabile ===== ===== Logica cablata e logica programmabile =====
  
-Un sistema di automazione può essere anche molto complesso e il suo controllo, un tempo affidato a circuiti progettati apposta per svolgere una specifica funzione è sempre più spesso affidato a dispositivi digitali a microprocessore. Queste due soluzioni alternative vengono dette:+Un sistema di automazione può essere anche molto complesso e il suo controllo, un tempo affidato a circuiti progettati per svolgere una specifica funzioneè sempre più spesso affidato a dispositivi digitali a microprocessore. Esistono dunque due soluzioni alternative:
   * **logica cablata**   * **logica cablata**
   * **logica programmabile**   * **logica programmabile**
-La logica cablata ha ancora senso per applicazioni molto semplici, ad esempio l'azionamento marcia-arresto di un motore; in questo caso il comando è affidato a dispositivi come relè e temporizzatori installati in un quadro e collegati opportunamente secondo una determinata logica. La stessa funzione può essere svolta sostituendo tutti i componenti con un dispositivo digitale, come un PLC o un microcontrolloreprogrammato opportunamente. Questa soluzione presenta una serie di vantaggi e svantaggi che è bene evidenziare: +La logica cablata ha ancora senso per applicazioni molto semplici, come un azionamento marcia-arresto di un motore. In questo caso il comando è affidato a dispositivi come relè e temporizzatori installati in un quadro e collegati in modo da realizzare una certa logica. La stessa funzione però può essere svolta sostituendo tutti i componenti con un dispositivo digitale un PLC o un microcontrollore programmato opportunamente. Questa seconda soluzione presenta molti vantaggi:
-  * il sistema è più complicato da utilizzare e richiede una formazione specifica((la logica cablata è facilmente comprensibile da tutti gli operatori del settore, anche non specializzati))+
   * le possibilità offerte dalla logica programmabile sono molto maggiori, sia in termini di complessità che di velocità   * le possibilità offerte dalla logica programmabile sono molto maggiori, sia in termini di complessità che di velocità
   * i consumi, l'usura e l'affidabilità sono nettamente migliori   * i consumi, l'usura e l'affidabilità sono nettamente migliori
-  * la flessibilità del sistema è molto maggioreapportare modifiche o estendere il sistema comporta la sola riscrittura del programma invece che la realizzazione di un nuovo circuito e l'installazione di nuovi componenti+  * ingombri e cablaggi sono molto ridotti 
 +  * la flessibilità del sistema è molto maggioreapportare modifiche o estendere il sistema comporta la sola riscrittura del programma invece che la realizzazione di un nuovo circuito e l'installazione di nuovi componenti
   * i costi di sviluppo sono bassi perché si utilizzano componenti standard e la progettazione coinvolge prevalentemente la parte software   * i costi di sviluppo sono bassi perché si utilizzano componenti standard e la progettazione coinvolge prevalentemente la parte software
 +  * la supervisione del sistema e l'interfacciamento con dispositivi digitali semplificano la gestione
 +  * il debugging e la messa a punto sono molto più semplici
  
 +Di contro un sistema a logica programmabile è più complicato da utilizzare e richiede una formazione specifica, mentre la logica cablata è facilmente comprensibile da tutti gli operatori del settore, anche non specializzati.
 ===== Il PLC ===== ===== Il PLC =====
  
-Un PLC (//programmable logic controller// o //controllore a logica programmabile//) è un particolare tipo di computer utilizzato nel campo dell'automazione industriale specializzato nel controllo dei processi produttivi.  +Un PLC (//programmable logic controller// o //controllore a logica programmabile//) è un tipo di computer utilizzato nel campo dell'automazione industriale specializzato nel controllo dei processi produttivi.  
  
-I compiti svolti da un PLC vanno dal realizzare semplici sequenze di operazioni al controllo delle movimentazioni alla realizzazione di sofisticati [[wpi>Sistema_di_controllo_distribuito|sistemi di controllo distribuiti]] dove più controllori scambiano informazioni e collaborano nella gestione di sistemi complessi.+I compiti svolti da un PLC vanno dal realizzare semplici sequenze di operazioni al controllo delle movimentazioni alla realizzazione di sofisticati [[wpi>Sistema_di_controllo_distribuito|sistemi di controllo distribuiti]]dove più PLC collaborano nella gestione di sistemi complessi scambiandosi informazioni.
  
-I primi PLC sono stati sviluppati dalla General Motors alla fine degli anni '60 per sostituire relè e timer nelle linee di produzione dell'industria automobilistica rivoluzionando un settore checaratterizzato da singoli impianti che richiedono frequenti aggiornamenti, richiedeva un nuovo cablaggio per ogni modifica con tempi, costi, ed errori conseguenti. Il passaggio ad una soluzione a microprocessore, che ha semplificato la progettazione e manutenzione, migliorato l'efficienza e abbassato i costi, è stato possibile perché i PLC erano in grado di offrire quelle caratteristiche di affidabilità, robustezza e prestazioni che un computer tradizionale non poteva garantire. +I primi PLC sono stati sviluppati dalla General Motors alla fine degli anni '60; il loro compito era sostituire i circuiti in logica cablata, con relè e timernelle linee di produzione dell'industria automobilistica. In quel settore l'avvento del PLC è stata una vera rivoluzione perché nelle linee di assemblaggiocaratterizzate da impianti che richiedono frequenti aggiornamenti, la soluzione in logica cablata richiedeva un nuovo cablaggio e l'installazione di nuovi componenti per ogni modifica con tempi, costi, ed errori conseguenti. Il passaggio ad una soluzione a microprocessore ha semplificato la progettazione e la manutenzione, migliorato l'efficienza e abbassato i costi. Questa soluzione però richiedeva l'uso di computer specializzati, con caratteristiche di affidabilità, robustezza e prestazioni che un computer tradizionale non poteva garantire. 
  
-Il PLC non è l'unica soluzione a microprocessore per l'automazione ma risulta la più conveniente se il sistema è progettati su misura soggetto a frequenti modifiche. In questo caso i costi di sviluppo e manutenzione sono minori perché il PLC offre:+Il PLC non è l'unica soluzione a microprocessore per l'automazione ma risulta la più conveniente se il sistema è progettato su misura in un unico esemplare ed è soggetto a frequenti modifiche. In questo caso i costi di sviluppo e manutenzione sono minori perché il PLC offre:
   * una soluzione hardware standardizzata e già pronta per l'uso   * una soluzione hardware standardizzata e già pronta per l'uso
   * componentistica robusta, testata ed affidabile   * componentistica robusta, testata ed affidabile
   * un sistema facile da installare e interfacciare   * un sistema facile da installare e interfacciare
   * un sistema facile da utilizzare e programmare   * un sistema facile da utilizzare e programmare
-Le soluzioni alternative - microcontrollore o PC - risultano invece convenienti quando:+Le soluzioni alternative - microcontrollore o PC - risultano invece convenienti quando:
   * si producono un numero di esemplari che consente di ammortizzare il costo di sviluppo (produzione di massa)   * si producono un numero di esemplari che consente di ammortizzare il costo di sviluppo (produzione di massa)
   * non sono previste modifiche o aggiornamenti successivi   * non sono previste modifiche o aggiornamenti successivi
   * sono richieste prestazioni elevate   * sono richieste prestazioni elevate
- 
 ===== Differenze tra PLC e PC ===== ===== Differenze tra PLC e PC =====
  
-I PLC sono computer a tutti gli effetti: eseguono programmi e hanno un'architettura hardware con microprocessore,  memoria di massa memoria RAM, ingressi uscite e bus di comunicazione. Tuttavia, rispetto ad un normale PC, si differenziano sia per l'hardware che per il software.+I PLC sono computer a tutti gli effetti: eseguono programmi e hanno un'architettura hardware conmicroprocessore, memoria di massamemoria RAM, ingressi e uscite, bus di comunicazione. Tuttavia, rispetto ad un normale PC, si differenziano sia per l'hardware che per il software.
  
 L'hardware di un PLC: L'hardware di un PLC:
-  * ha prestazioni nettamente inferiori a quelle di un PC +  * usa componentistica con prestazioni nettamente inferiori a quelle di un PC 
-  * è progettato per lavorare in ambienti industriali con valori critici di umidità, temperatura, vibrazioni disturbi, blackout +  * è progettato per lavorare in ambienti industriali (umidità, temperatura, vibrazionidisturbi, blackout) 
-  * è particolarmente robusto e progettato per durare molti anni +  * è particolarmente robusto e fatto per durare molti anni 
-  * è facilmente interfacciabile con ingressi e uscite sia digitali che analogiche  +  * è facilmente interfacciabile (ingressi e uscite sia digitali che analogiche) 
-  * è predisposto per funzionare in rete con altri dispositivi attraverso protocolli e standard specifici per applicazioni industriali+  * è predisposto per funzionare in rete con altri dispositivi secondo protocolli e standard specifici per applicazioni industriali
  
 Il software di un PLC si distingue per: Il software di un PLC si distingue per:
   * il sistema operativo che gestisce l'hardware, diverso da quello di un PC, ma estremamente affidabile e //real-time//, cioè in grado di garantire una risposta alle sollecitazioni in ingresso entro un tempo massimo   * il sistema operativo che gestisce l'hardware, diverso da quello di un PC, ma estremamente affidabile e //real-time//, cioè in grado di garantire una risposta alle sollecitazioni in ingresso entro un tempo massimo
-  * la facilità di programmazione, perché si usa un linguaggio  grafico derivato dagli schemi funzionali che è facile da imparare e interpretare e perché esistono strumenti per il debugging, la simulazione e supervisione durante il funzionamento del PLC+  * la facilità di programmazione, perché si usa un linguaggio  grafico derivato dagli schemi funzionali che è facile da imparare e interpretare e perché esistono strumenti per il debugging, la simulazione e supervisione del funzionamento del PLC
  
 ===== Caratteristiche hardware del PLC ===== ===== Caratteristiche hardware del PLC =====
Linea 69: Linea 71:
   * una memoria di lavoro volatile (RAM)    * una memoria di lavoro volatile (RAM) 
   * una di programma (ROM, flash, EEPROM) non volatile   * una di programma (ROM, flash, EEPROM) non volatile
-  * schede di ingresso e uscita sia digitali che analogiche+  * schede di ingresso e uscitasia digitali che analogiche
   * una porta di comunicazione   * una porta di comunicazione
  
-Le caratteristiche dei componenti non sono nemmeno paragonabili a quelle di un PC - valori tipici potrebbero essere 1 MB di memoria di programma, 100 KB di memoria di lavoro e una CPU da 100 MHz - ma le prestazioni risultano adeguate perché, come per i microcontrollori, i compiti da svolgere sono molto semplici e non richiedono grandi potenze di calcolo. +Le caratteristiche dei componenti non sono nemmeno paragonabili a quelle di un PC - valori tipici potrebbero essere 1 MB di memoria di programma, 100 KB di memoria di lavoro e una CPU da 100 MHz - ma le prestazioni risultano adeguate perché i compiti da svolgere sono semplici e non richiedono grandi potenze di calcolo. 
  
 Le possibilità di interfacciamento in ingresso e uscita sono il vero punto di forza dei PLC. Di solito sono disponibili: Le possibilità di interfacciamento in ingresso e uscita sono il vero punto di forza dei PLC. Di solito sono disponibili:
-  * molti ingressi digitali, sotto forma di contatti a 24V DC((isolati con fotoaccoppiatori)+  * molti ingressi digitali (di solito a 24V) 
-  * pochi di ingressi analogici che accettano tensioni da 0 a 10 Volt (o correnti da 4 a 20 mA) con una risoluzione di 10bit +  * pochi di ingressi analogici che accettano tensioni da 0 a 10 Volt (o correnti da 4 a 20 mA)
   * molte uscite digitali, a relé o a transistor   * molte uscite digitali, a relé o a transistor
   * poche (o nessuna) uscite analogiche   * poche (o nessuna) uscite analogiche
Linea 85: Linea 87:
  
 La porta di comunicazione, che usa un bus e dei protocolli specifici per automazione industriale (ad esempio il [[wp>Fieldbus]]) su un mezzo fisico (in genere Ethernet), consente lo scambio di informazioni: La porta di comunicazione, che usa un bus e dei protocolli specifici per automazione industriale (ad esempio il [[wp>Fieldbus]]) su un mezzo fisico (in genere Ethernet), consente lo scambio di informazioni:
-    * tra PLC e PLC +  * tra PLC e PLC 
-    * tra PLC e PC +  * tra PLC e PC 
-    * via web+  * via web
  
  
Linea 100: Linea 102:
   * generare report e analisi del processo   * generare report e analisi del processo
  
-I compiti più semplici possono essere affidati a lampade, spie e pulsantiere; in alternativa si impiegano display LCD, pannelli touchscreen o sistemi [[wpi>SCADA]] anche molto sofisticati dove il controllo e la supervisione avvengono su uno o più  computer collegati in rete che eseguono programmi dedicati. Un'ulteriore soluzione è offerta dalla funzionalità webserver che è disponibile nei PLC più recenti. +I compiti più semplici possono essere affidati a lampade, spie e pulsantiere altrimenti si impiegano display LCD, pannelli touchscreen o sofisticati sistemi [[wpi>SCADA]] dove il controllo e la supervisione sono demandati a computer collegati in rete con software dedicati. PLC più recenti offrono anche la funzionalità webserver per svolgere queste funzioni
 ===== Programmare i PLC ===== ===== Programmare i PLC =====
  
-Per programmare un PLC è necessario usare un PC, collegato ad esso con un cavo Ethernet, con installato il software proprietario del produttore del PLC (ambiente di sviluppo). Purtroppo non c'è compatibilità tra i vari produttori, né per il software che permette la programmazione né per i linguaggi, che si diversificano leggermente tra loro.+Per programmare un PLC è necessario collegarlo a un computer con un cavo Ethernet e usare il software proprietario del produttore del PLC (ambiente di sviluppo) installato su PC. Purtroppo non c'è compatibilità tra i vari produttori perché sia il software per la programmazione che i linguaggi si diversificano leggermente tra loro.
  
 L'ambiente di programmazione per PLC offre molte funzionalità:  L'ambiente di programmazione per PLC offre molte funzionalità: 
Linea 113: Linea 114:
   * monitoraggio dell'esecuzione del programma (utile sia per ricerca dei guasti che per la supervisione)   * monitoraggio dell'esecuzione del programma (utile sia per ricerca dei guasti che per la supervisione)
  
-Un programma per PLC può essere scritto usando quattro diversi linguaggi di programmazione. Questi linguaggi, che sono standardizzati anche se restano le incompatibilità tra produttori, seguono approcci diversi per affrontare lo stesso problema. Quello più utilizzato è il //ladder// (o schema a contatti), un linguaggio grafico che si è affermato perché è il più semplice da imparare e interpretare. I programmi somigliano agli schemi funzionali con relè e timer che i progettisti con un background elettrico (e non informatico) ben conoscono. Gli altri linguaggi sono:+Un programma per PLC può essere scritto usando cinque diversi linguaggi di programmazione. Questi linguaggi standardizzati anche se restano le incompatibilità tra produttori - permettono di usare approcci diversi per affrontare il medesimo problema. Il linguaggio più utilizzato è il //ladder//, un linguaggio grafico che si è affermato perché è il più semplice da imparare e interpretare. I programmi infatti somigliano agli schemi funzionali con relè e timer che i progettisti con un background elettrico (e non informatico) ben conoscono. Gli altri linguaggi sono:
   * lo //structured text//, un linguaggio strutturato simile al BASIC o al C   * lo //structured text//, un linguaggio strutturato simile al BASIC o al C
-  * il //function block diagram//, un linguaggio grafico che fa uso delle funzioni logiche tipiche dell'algebra di boole+  * il //function block diagram//, un linguaggio grafico che fa uso delle funzioni logiche tipiche dell'algebra di Boole
   * l'//instruction list//, un linguaggio simile all'assembler   * l'//instruction list//, un linguaggio simile all'assembler
-  * il //sequential flow chart//, un meta-linguaggio dove si rappresentano  graficamente la sequenza delle operazioni da svolgere (sistemi a stati finiti)+  * il //sequential flow chart//, un meta-linguaggio dove si rappresenta graficamente la sequenza delle operazioni da svolgere (tipo sistemi a stati finiti)((questo linguaggio non è disponibile per i nostri PLC))
 ===== Esecuzione dei programmi ===== ===== Esecuzione dei programmi =====
  
-I programmi per PLC prevedono una esecuzione ciclica di una serie di istruzioni (un po' come avviene per i microcontrollori). Il cosiddetto //ciclo di scansione//, ripetuto all'infinito, prevede questa sequenza di operazioni: +I programmi per PLC prevedono sempre una esecuzione ciclica di una serie di istruzioni (un po' come avviene per i microcontrollori). Il cosiddetto //ciclo di scansione//, ripetuto all'infinito, prevede questa sequenza di operazioni: 
-  *  +  * attivazione delle uscite in base a quanto contenuto nell'area di memoria detta //immagine di processo delle uscite// elaborata nel ciclo precedente 
-    * attivazione delle uscite in base a quanto contenuto nell'area di memoria detta //immagine di processo delle uscite// elaborata nel ciclo precedente ( +  * acquisizione degli ingressi e loro memorizzazione nell'area di memoria detta //immagine di processo degli ingressi// (che non cambierà fino al ciclo successivo) 
-    * acquisizione degli ingressi e loro memorizzazione nell'area di memoria detta //immagine di processo degli ingressi// (che non cambierà fino al ciclo successivo) +  * elaborazione delle istruzioni del programma 
-    * elaborazione in sequenza delle istruzioni del programma +  * aggiornamento dell'//immagine di processo delle uscite//
-    * aggiornamento dell'//immagine di processo delle uscite//+
  
-Il tempo impiegato per completare la sequenza viene detto //scan time// e la sua durata, pur non essendo costante((dipende dalla complessità del programma e dagli eventi che possono verificarsi)) è sempre inferiore a un tempo massimo, come previsto in tutte le applicazioni real-time((nel caso in cui il ciclo super questo limite il PLC si arresta e segnala l'errore)). +Il tempo impiegato per completare la sequenza viene detto //scan time// e la sua durata, pur non essendo costante((dipende dalla complessità del programma e dagli eventi che possono verificarsi)) è sempre inferiore a un tempo massimo, come previsto in tutte le applicazioni real-time((un [[wpi>Watchdog]] controlla il tempo di ciclo e  arresta il PLC segnalando l'errore se si supera il tempo massimo consentito)). 
  
 ===== Riferimenti ===== ===== Riferimenti =====
Linea 136: Linea 136:
 Documentazione prodotta a scuola: Documentazione prodotta a scuola:
   * {{ ::st_1200_eserciziario_ferraro.pdf |Eserciziario del Prof. Ferraro (2013)}}   * {{ ::st_1200_eserciziario_ferraro.pdf |Eserciziario del Prof. Ferraro (2013)}}
 +
 +Dal testo di quarta di sistemi, modulo H sul PLC:
 +  * H1 e H2: generalità sull'automazione, architettura del PLC, ciclo di scansione e hardware (ripetizione di quanto detto in questa pagina)
 +  * H3: programmazione del PLC S7-1200 (molto utile, tutte le istruzioni principali)
 +  * H4: esercizi con esempi e applicazioni 
 +
  
 Dal sito di Siemens: Dal sito di Siemens:
introduzione_ai_plc.txt · Ultima modifica: 2021/04/15 09:35 da admin