Quando una macchina deve avviare un motore, controllare un sensore o fermarsi in sicurezza, la logica di comando deve essere leggibile anche da chi si occupa di manutenzione. È proprio questo il punto di forza del ladder PLC, un linguaggio grafico che traduce il funzionamento dei vecchi circuiti a relè in istruzioni eseguite dal controllore programmabile. Qui mostro come si legge, quali elementi usa, come applicarlo a una macchina automatica e dove lascia spazio ad altri linguaggi.
La logica Ladder diventa semplice quando si ragiona per condizioni e azioni
- Contatti e bobine rappresentano rispettivamente condizioni logiche e comandi.
- Il PLC esegue il programma secondo un ciclo di scansione, aggiornando ingressi e uscite.
- La disposizione in serie equivale a un AND, quella in parallelo a un OR.
- Timer, contatori e interblocchi permettono di gestire sequenze industriali concrete.
- Per applicazioni complesse conviene affiancare il Ladder a Structured Text o Function Block Diagram.
Che cos’è il ladder PLC e perché è ancora così usato
Il linguaggio Ladder, chiamato anche Ladder Diagram o LD, è un linguaggio grafico per programmare i controllori logici programmabili. La sua forma ricorda uno schema elettrico: due linee verticali delimitano la rete e le istruzioni vengono disposte su righe orizzontali, dette rung.
Il vantaggio non è solo estetico. Un tecnico può osservare una condizione, seguire il percorso logico e capire rapidamente perché un’uscita è attiva o inattiva. Questa leggibilità spiega perché il Ladder resti molto diffuso su linee di produzione, macchine utensili, impianti di movimentazione e sistemi di confezionamento.
Il linguaggio rientra nella norma IEC 61131-3, che definisce diversi linguaggi per i PLC, tra cui Ladder Diagram, Function Block Diagram e Structured Text. La sintassi precisa cambia da un produttore all’altro, ma i concetti fondamentali restano simili.
Il PLC non interpreta il disegno come farebbe un elettricista davanti a un circuito alimentato. Esegue invece le istruzioni durante il proprio ciclo di scansione. In termini semplici, legge gli ingressi, valuta la logica, aggiorna le uscite e ripete il processo. Un ciclo può durare da frazioni di millisecondo a decine di millisecondi, in base al modello del controllore e alla complessità del programma.
Come si legge una rete Ladder
Contatti e bobine
Il contatto normalmente aperto verifica se una variabile è vera. Se il pulsante di avvio è attivo, per esempio, il contatto consente alla logica di proseguire. Il contatto normalmente chiuso esegue il controllo opposto e viene spesso usato per condizioni di arresto o blocco.
La bobina si trova generalmente a destra della rete e rappresenta l’azione risultante. Può comandare un’uscita fisica, una memoria interna, un timer o un altro elemento del programma. Io consiglio di usare nomi chiari come Motore_Avanti o Pressione_OK, invece di indirizzi poco leggibili come una semplice sigla numerica.
Serie e parallelo
Più contatti in serie formano una condizione AND. Tutte le condizioni devono essere vere perché la bobina venga attivata. I rami paralleli formano invece una condizione OR, perché basta che sia vero uno dei percorsi.
|--[ Avvio ]--[/ Stop ]--[/ Emergenza ]--+--------( Motore )--|
| |
|--[ Motore ]----------------------------+
In questo esempio il motore parte quando viene premuto il pulsante di avvio, purché Stop ed Emergenza non siano attivi. Il ramo parallelo con il contatto Motore mantiene il comando dopo il rilascio del pulsante. Questa tecnica è chiamata autoritenuta.
La stessa rete mostra anche un limite importante. In un impianto reale l’arresto di emergenza non dovrebbe dipendere soltanto dalla logica ordinaria del PLC. Per funzioni di sicurezza servono componenti e architetture adeguate, come relè di sicurezza o safety PLC, secondo la valutazione dei rischi della macchina.
Dalla logica al movimento della macchina

Il modo più utile per imparare è collegare ogni rete a un comportamento fisico. In una macchina per lavorazioni meccaniche, ad esempio, il ciclo potrebbe iniziare solo quando il pezzo è presente, il riparo è chiuso e la pressione pneumatica ha raggiunto il valore richiesto.
Avvio condizionato
Una rete di avvio può combinare tre ingressi in serie: pezzo presente, riparo chiuso e pressione disponibile. Se anche una sola condizione viene meno, il comando viene negato. Il risultato è semplice da diagnosticare e riduce il rischio di avviare una fase con il pezzo posizionato male.
Timer e ritardi
Un timer TON, cioè un temporizzatore con ritardo all’eccitazione, attiva il proprio stato dopo un intervallo prestabilito. Può servire per mantenere una pinza chiusa per 800 millisecondi prima di avviare la lavorazione, oppure per attendere 3 secondi dopo l’accensione di un ventilatore.
Il tempo non va scelto a intuito. Deve derivare dal comportamento del sistema, dai tempi meccanici e dai margini necessari per evitare falsi segnali. Un ritardo eccessivo rallenta la produzione, mentre uno troppo breve può generare movimenti incompleti.
Leggi anche: Componenti PLC: Guida pratica alla scelta giusta
Contatori e sequenze
Un contatore CTU incrementa il valore ogni volta che rileva un evento, come il passaggio di un pezzo. Può fermare la linea dopo 50 cicli, attivare una richiesta di manutenzione o comandare un cambio formato. Per sequenze più articolate, conviene organizzare il programma per fasi e stati, evitando di affidarsi a una lunga catena di contatti difficili da seguire.
Nella pratica trovo particolarmente efficace separare la logica in blocchi distinti: gestione degli ingressi, consenso al ciclo, movimento, allarmi e reset. Questa suddivisione rende più veloce la ricerca del guasto, soprattutto quando la macchina deve essere ripristinata durante un fermo produttivo.
Quando scegliere Ladder, Structured Text o FBD
Non esiste un linguaggio migliore in assoluto. La scelta dipende dalla natura del controllo, dalla piattaforma del costruttore e dalle competenze di chi dovrà fare assistenza. Per la logica discreta e gli interblocchi, il Ladder resta spesso la scelta più immediata.
| Linguaggio | Punto di forza | Uso tipico | Limite principale |
|---|---|---|---|
| Ladder Diagram | Leggibilità per tecnici elettrici e manutentori | Ingressi, uscite, consensi, allarmi e interblocchi | Può diventare dispersivo con algoritmi matematici complessi |
| Structured Text | Compattezza e flessibilità nel calcolo | Ricette, formule, array, regolazioni e gestione dati | Richiede maggiore familiarità con la programmazione testuale |
| Function Block Diagram | Riutilizzo visivo di funzioni e blocchi | Controllo analogico, PID, comunicazioni e moduli riutilizzabili | Può occupare molto spazio nei progetti estesi |
Per una piccola automazione con pochi sensori e attuatori userei volentieri solo Ladder. Su una macchina con calcoli di posizionamento, gestione ricette e comunicazione con sistemi MES, preferisco una soluzione mista. Il Ladder mantiene visibili le condizioni operative, mentre lo Structured Text gestisce le parti più algoritmiche.
Gli errori che rendono fragile un programma Ladder
Il primo errore è usare la stessa bobina in più reti senza una precisa strategia. Quando diversi rung scrivono sulla stessa variabile, il valore finale dipende dall’ordine di esecuzione e diventa difficile capire chi abbia realmente comandato l’uscita.
Un altro problema frequente riguarda il reset. Un allarme dovrebbe indicare chiaramente la causa, mentre il reset dovrebbe riportare la macchina in uno stato definito. Premere un pulsante e far ripartire tutto senza verificare sensori, posizione degli assi e condizioni di sicurezza è una scorciatoia che prima o poi presenta il conto.
Per progettare una logica più affidabile, io seguo questo percorso:
- Definisco gli ingressi, le uscite e gli stati della macchina.
- Disegno la sequenza operativa prima di scrivere i rung.
- Assegno nomi descrittivi a variabili, timer e allarmi.
- Separo consenso al ciclo, comandi di movimento e gestione degli errori.
- Provo ogni fase in simulazione o in condizioni controllate.
- Verifico il comportamento dopo spegnimento, riavvio e perdita di un sensore.
La documentazione fa una differenza enorme. Un commento come “attesa chiusura pinza prima della foratura” è molto più utile di un generico “timer 3”. Anche una struttura ordinata delle reti riduce i tempi di diagnosi e rende il progetto più semplice da modificare.
La regola pratica per iniziare con il linguaggio Ladder
Chi comincia dovrebbe pensare a ogni rete come a una frase logica: se accade questo e non accade quello, allora esegui questa azione. È un approccio più solido del copiare simboli senza comprendere il ciclo della macchina.
Il Ladder dà il meglio di sé quando la logica è discreta, visibile e legata a condizioni fisiche. Per un impianto di automazione meccanica ben progettato, la combinazione di nomi chiari, interblocchi, timer dimensionati correttamente e gestione ordinata degli allarmi conta più della quantità di istruzioni utilizzate.
In definitiva, imparare questo linguaggio significa imparare a descrivere il comportamento di una macchina in modo controllabile. Quando il programma resta leggibile anche mesi dopo la messa in servizio, il risultato non è soltanto un PLC funzionante, ma un impianto più facile da manutenere e più affidabile nel tempo.