CNC vs PLC: cosa controllano, come si programmano e quando usarli
Sielco Sistemi —
In reparto è comune trovare un CNC e un PLC che lavorano fianco a fianco, eppure i due controllori risolvono problemi molto diversi. Un CNC (Controllo Numerico Computerizzato) gestisce il movimento preciso e coordinato degli assi macchina, mentre un PLC (Programmable Logic Controller) gestisce la logica discreta, la sequenza e la sicurezza delle apparecchiature circostanti. Capire chiaramente i ruoli di CNC e PLC è il primo passo per progettare una macchina o una linea affidabile, e per sapere quando introdurre un livello di supervisione come Winlog Evo sopra entrambi.
Cos’è un CNC e cosa controlla
Un CNC, basato sui principi del controllo numerico, traduce un programma pezzo (G-code) in movimenti coordinati di assi servo, mandrini e cambio utensile su macchine utensili come torni, fresatrici e frese a controllo numerico. Il suo compito è il movimento: interpolare traiettorie, controllare l’avanzamento e la velocità del mandrino, e gestire le correzioni utensile con la precisione richiesta dalla lavorazione. I controlli CNC di produttori come Fanuc o la linea Sinumerik di Siemens sono progettati appositamente per questo tipo di controllo del moto ad alta velocità e alta precisione, radicalmente diverso dall’elaborazione logica generica.
Poiché il firmware CNC è ottimizzato per il controllo servo ad anello chiuso, in genere esegue un proprio kernel real-time separato dalla logica di automazione generale, con feedback da encoder e righe ottiche misurati in micron. Per questo motivo i controlli CNC vengono raramente utilizzati per gestire nastri trasportatori, barriere di sicurezza o sequenze di impianto: la loro architettura è ottimizzata per l’accuratezza continua del percorso, non per la scansione di centinaia di I/O discreti ogni pochi millisecondi.
Cos’è un PLC e cosa controlla
Un PLC è progettato per il controllo discreto e sequenziale: legge ingressi digitali e analogici da sensori, esegue logica a relè (ladder) o structured text, e pilota uscite come relè, valvole e teleruttori motore. I PLC di produttori come Siemens e Rockwell Automation (Allen-Bradley) sono la spina dorsale di nastri trasportatori, linee di confezionamento e interblocchi di sicurezza. Poiché i PLC espongono i propri dati tramite protocolli standard, una piattaforma SCADA come Winlog Evo può collegarsi ad essi tramite un’ampia gamma di driver di comunicazione per centralizzare la supervisione.
Un PLC moderno gestisce anche il livello di sicurezza di una macchina o linea: arresti di emergenza, barriere fotoelettriche, ripari interbloccati e protezione dai sovraccarichi motore sono in genere cablati su moduli PLC certificati per la sicurezza o controllori di sicurezza dedicati. Questo comportamento deterministico e basato su regole è ciò che rende i PLC la scelta corretta ogni volta che la priorità è la sequenza ripetibile piuttosto che il movimento continuo su percorso.
CNC vs PLC: differenze chiave (assi, movimento, logica, linguaggi di programmazione)
Il modo più chiaro per rispondere alla domanda “qual è la differenza tra CNC e PLC?” è confrontare ciò per cui ciascuno è ottimizzato. Un CNC è costruito attorno all’interpolazione multi-asse, alla pianificazione avanzata delle traiettorie e al G-code, e in genere chiude anelli servo veloci in tempo reale. Un PLC è costruito attorno alla logica a ciclo di scansione, alla gestione degli I/O e a diagrammi ladder o linguaggi IEC 61131-3, privilegiando una sequenza deterministica e certificata per la sicurezza rispetto alla precisione di movimento. In sintesi, la differenza tra CNC e PLC è movimento contro logica: uno dà forma al pezzo, l’altro orchestra il processo che lo circonda.
Anche i linguaggi di programmazione riflettono questa suddivisione. I programmi pezzo CNC sono scritti principalmente in G-code e M-code, focalizzati su geometria, percorsi utensile e parametri di taglio. I programmi PLC, invece, sono generalmente scritti in ladder diagram, function block diagram o structured text secondo lo standard IEC 61131-3, focalizzati su logica booleana, temporizzatori, contatori e macchine a stati. Un tecnico esperto in un linguaggio non può leggere automaticamente l’altro, motivo per cui i costruttori di macchine mantengono di solito programmatori CNC e programmatori PLC distinti, oppure si affidano a integratori che padroneggiano entrambe le discipline.
Integrazione CNC + PLC in una linea/macchina
Nella maggior parte delle macchine reali, il CNC e il PLC non sono concorrenti ma partner. Il PLC gestisce tipicamente le funzioni ausiliarie della macchina — ripari, refrigerante, cambio pallet, bloccaggio pezzo — e scambia segnali di handshake con il CNC per avviare o interrompere un ciclo di lavorazione. Sovrapporre un sistema SCADA a questa coppia, utilizzando Winlog Evo, permette agli operatori di visualizzare lo stato del programma CNC, gli allarmi PLC e i contatori di ciclo in un’unica dashboard, e di registrare questi dati storicamente per l’analisi OEE e manutentiva.
Quando scegliere CNC o PLC
La scelta raramente è aut-aut: serve un CNC ogni volta che un processo richiede un movimento assi coordinato e interpolato in modo continuo — fresatura, tornitura, rettifica, taglio — e un PLC ogni volta che il processo è dominato da logica discreta, temporizzazione e sequenza. Molti costruttori di macchine combinano entrambi sotto un unico livello supervisionale HMI/SCADA, così gli operatori non devono interagire con due filosofie di controllo separate. Come regola generale, se la domanda è “che forma deve assumere questo pezzo?” siamo nel territorio del CNC; se la domanda è “cosa deve succedere dopo, e solo se è sicuro?” siamo nel territorio del PLC.
Errori comuni e domande frequenti
L’errore più frequente è cercare di far svolgere a un controllore il compito dell’altro — ad esempio implementare un’interpolazione di movimento complessa nella logica PLC invece che in un vero CNC, o viceversa. Un altro problema comune è trattare CNC e PLC come isole isolate invece di integrarne i dati in un sistema di supervisione condiviso, il che rende la diagnostica e la tracciabilità molto più difficili del necessario. Standardizzare su driver ben documentati e su una piattaforma come Winlog Evo evita entrambi i problemi.
Vuoi vedere i dati CNC e PLC unificati in un’unica vista di supervisione? prova la web demo di Winlog Evo, consulta i driver di comunicazione supportati, oppure contatta Sielco Sistemi per una valutazione su misura.
FAQ
- Qual è la differenza tra CNC e PLC?
- Il CNC controlla il movimento assi coordinato e interpolato in modo continuo sulle macchine utensili tramite G-code, mentre il PLC controlla la logica discreta, la sequenza e la sicurezza tramite diagrammi ladder o linguaggi IEC 61131-3. In sintesi, il CNC dà forma al pezzo e il PLC orchestra il processo che lo circonda.
- Un PLC può sostituire un CNC, o viceversa?
- Non in modo efficace. Un PLC non dispone dell’interpolazione servo in tempo reale necessaria per una lavorazione multi-asse precisa, e un CNC non è progettato per la logica discreta generica, la temporizzazione e il sequenziamento di sicurezza di un’intera linea. Ciascuno è progettato per il proprio compito specifico, motivo per cui vengono normalmente usati insieme e non come sostituti.
- Come comunicano CNC e PLC sulla stessa macchina?
- La maggior parte delle coppie CNC-PLC scambia segnali di handshake: il PLC segnala al CNC quando le funzioni ausiliarie (ripari, bloccaggio, refrigerante) sono pronte, e il CNC riporta al PLC lo stato del programma e il completamento del ciclo. Un livello SCADA come Winlog Evo può quindi leggere entrambi i lati tramite driver di comunicazione dedicati per fornire una vista unificata.
- Quali linguaggi di programmazione si usano per CNC e PLC?
- I programmi CNC sono scritti principalmente in G-code e M-code, focalizzati su percorsi utensile e parametri di taglio. I programmi PLC sono generalmente scritti in ladder diagram, function block diagram o structured text secondo lo standard IEC 61131-3, focalizzati su logica booleana, temporizzatori e contatori.
- Come si inserisce Winlog Evo in un ambiente con CNC e PLC?
- Winlog Evo si colloca sopra i controllori CNC e PLC come livello di supervisione, collegandosi a entrambi tramite driver di comunicazione per mostrare stato del programma, allarmi e contatori di ciclo in un’unica dashboard, e per registrare questi dati storicamente per l’analisi OEE e manutentiva.