Cos’è meglio utilizzare per applicazioni d’automazione industriale, una scheda Arduino oppure un PLC? Come mai Arduino non è così diffuso in certe fabbriche come il classico controllore logico programmabile? Esistono delle soluzioni miste per automazione?
Benvenuto su questo sito dedicato all’automazione industriale, oggi ci occupiamo di controllori, e lo facciamo confrontando il conosciutissimo Arduino con il classico PLC.
Ecco gli argomenti di oggi:
Automazione industriale e controllo di processo.
Cos’è Arduino e cos’è un PLC.
Come sono fatti i PLC e come sono fatte le schede programmabili come Arduino.
Interfacciamento con le apparecchiature da campo di Arduino e dei PLC.
Come si programmano i PLC e come si programma Arduino.
Le apparecchiature basate su Arduino più vicine al PLC.
Assistenza tecnica ufficiale e comunità dedicate ai PLC e ad Arduino.
Automazione industriale e controllo di processo.
Quando parliamo d’automazione industriale, nel senso stretto della definizione, ci riferiamo al controllo di macchinari e processi produttivi, in settori che vanno dal food processing al packaging, dal petrolchimico al farmaceutico, dalla logistica ai trasporti, e così via.
Ci sono poi applicazioni d’automazione piccole e soluzioni per automazione domestica, oggi sempre più orientate alla connessione (IoT).
In molti casi chi si avvicina al mondo dell’automazione si domanda se sia possibile sfruttare le schede programmabili come Arduino, o se sia meglio orientarsi direttamente verso i controllori PLC, ampiamente diffusi nell’industria.
Cerchiamo oggi di fare chiarezza, analizzando le due soluzioni, descrivendo innanzi tutto cosa è una scheda programmabile come Arduino, e cosa invece è un PLC.
Cos’è Arduino e cos’è un PLC.
Arduino nasce come soluzione open source per makers, ovvero appassionati che amano creare circuiti e soluzioni altamente personalizzate, completamente programmabili a piacimento, utilizzando solitamente il linguaggio C/C++.
Il plc invece nasce come dispositivo per controllo industriale, dedicato soprattutto alle applicazioni dove si devono svolgere azioni ripetitive.
Dal punto di vista del controllo di processo, Arduino e PLC oggi potrebbero tranquillamente essere intercambiabili, tuttavia come vedremo nei prossimi paragrafi, le cose non sono così semplici, e oggi il PLC è ancora il preferito per sistemi d’automazione industriale.
Come sono fatti i PLC e come sono fatte le schede programmabili come Arduino.
Come possiamo vedere nell’immagine sopra, quando acquistiamo un Arduino o una scheda programmabile simile, ci viene fornita la scheda “nuda”; in alcuni casi possiamo comprare dei kit o dei boundles, i quali comprendono anche involucri di plastica o di metallo, connettori e cavetti.
Un classico PLC commerciale invece arriva sotto forma di apparecchiatura completa, fornita di una morsettiera a vite o a molla, in alcuni casi provvisto di display (come nel caso di questo modello LOGO! Siemens), tasti funzione e led di segnalazione stato ingressi, uscite, e di diagnostica.
Se ci orientiamo su Arduino dobbiamo per forza pensare a come gestire i vari pin aggiungendo delle morsettiere, e tutto ciò che si rende necessario per renderlo funzionale.
Interfacciamento con le apparecchiature da campo di Arduino e dei PLC.
Nell’automazione industriale è necessario interfacciare il controllore con le apparecchiature da campo, tra queste attuatori elettrici o pneumatici, sensori digitali, sensori analogici e attuatori continui.
Ci sono poi tutte le apparecchiature che vengono collegate in rete, per esempio in Modbus RTU o TCP/IP, oppure in PROFINET o EthernetIP.
L’industria automatizzata ha negli anni adottato segnali standard, per facilitare l’integrazione delle apparecchiature con i controllori.
Mentre i PLC di praticamente tutte le marche lavorano con ingressi e uscite digitali a 24 volt continui, e segnali analogici 0-10V o 4-20mA (anche 0-20mA), Arduino gestisce segnali 0-5V, questo implica l’utilizzo di dispositivi di interfaccia per trasformare questi segnali in segnali accettati dalle apparecchiature industriali.
Anche altre schede programmabili come le ESP32 utilizzano segnali a basso voltaggio (3.3V), e necessitano di interfacce per lavorare nell’industria.
Tra i dispositivi di interfacciamento per i segnali di Arduino trovano posto relè e optoisolatori (o optoaccoppiatori), driver per MOSFET e circuiti con transistors, o ancora circuiti partitori di tensione.
Ecco nell’immagine sotto un modulo con 4 relè pilotabili a 5V e un dispositivo opto isolatore a 8 canali.
Alla luce di quanti appena descritto, si comprende come un PLC (anche un piccolo Logo! Siemens) risulta immediatamente utilizzabile nell’industria, mentre con soluzioni alternative come quella offerta da Arduino e altre schede programmabili sia necessario procedere a “vestire” l’apparecchio per renderlo compatibile con le altre apparecchiature.
Come si programmano i PLC e come si programma Arduino.
Tra le altre cose che differenziano Arduino da un PLC c’è il fatto che esso viene programmato attraverso la porta USB, mentre ormai tutti i PLC si possono programmare utilizzando la porta ETHERNET integrata.
É possibile programmare Arduino attraverso la ethernet, ma la procedura per poterlo fare è laboriosa, dato che questo non è il sistema nativo di programmazione di queste schede.
I PLC si programmano nei linguaggi definiti nella IEC 61131-3, tra cui il Ladder, quello a blocchi di funzione, e quello di testo strutturato, mentre Arduino si programma principalmente in C/C++.
Oggi ci sono anche software che permettono di programmare Arduino nei linguaggi definiti nella IEC 61131-3 (open PLC, Arduino PLC IDE), questi ambienti però sono meno specializzati di quelli offerti dai produttori di PLC veri e propri; per esempio non possiedono un simulatore integrato che permette di testare il programma senza apparecchiatura, direttamente nel software di programmazione.
Nell’immagine sotto vediamo l’ambiente di programmazione LOGO! Siemens con linguaggio a blocchi di funzione, e l’ambiente IDE di Arduino, con uno sketch scritto in C/C++
Le apparecchiature basate su Arduino più vicine al PLC.
Nel corso degli anni sono nati apparecchi basati su Arduino che vengono predisposti per incontrare meglio le esigenze della classica automazione industriale, tra questi troviamo OPTA Finder, Controllino, e Portenta Machine Control.
Questi dispositivi offrono segnali più compatibili con l’industria, dal punto di vista però della programmazione non si discostano dalle classiche schede programmabili.
Il costo di questi apparecchi sale notevolmente, infatti devono contenere componenti come schede di rete, relè a stato solido o meccanici, varie porte di comunicazione, morsettiere e così via; tutto questo finisce per far diventare queste soluzioni costose almeno quanto quelle basate su PLC.
Nell’immagine che segue possiamo vedere in alto a sinistra il modello OPTA della Finder, a destra il Controllino, e in basso la nuova Portenta Machine Control.
Assistenza tecnica ufficiale e comunità dedicate ai PLC e ad Arduino.
L'assistenza tecnica offerta da Arduino e quella offerta dalle case produttrici dei PLC più diffusi, presentano differenze significative, principalmente legate alla natura open-source di Arduino e alla complessità industriale dei PLC.
Arduino, essendo una piattaforma open-source, si affida principalmente a una vasta comunità online di sviluppatori e appassionati per il supporto tecnico, questo significa che l'assistenza è spesso gratuita, ma può variare in termini di rapidità e profondità.
D'altra parte, grandi produttori come Siemens, Schneider, Omron, Rockwell e altri, offrono un servizio di assistenza tecnica professionale e a pagamento, con tecnici specializzati e documentazione dettagliata; questa assistenza è solitamente più rapida e completa.
Nel valutare la scelta della soluzione da adottare, bisogna tener presente quanto sia necessario poter contare su un servizio di supporto rapido ed efficace, per evitare fermi macchina che molto spesso si rilevano molto costosi.