Il linguaggio stesso può essere visto come un insieme di connessioni tra pedine logiche (contatti) e attuatori (bobine). Se è possibile tracciare un percorso tra il lato sinistro del ramo e l’output, attraverso contatti asserted (true o “closed”), il ramo è true e il bit di archiviazione della bobina di uscita è asserted (1) o true. Se non è possibile tracciare alcun percorso, l’uscita è falsa (0) e la “bobina” per analogia ai relè elettromeccanici è considerata “diseccitata”. L’analogia tra proposizioni logiche e lo stato del contatto relè è dovuta a Claude Shannon.,

La logica ladder ha contatti che creano o interrompono circuiti per controllare le bobine. Ogni bobina o contatto corrisponde allo stato di un singolo bit nella memoria del controllore programmabile. A differenza dei relè elettromeccanici, un programma ladder può riferirsi a un numero qualsiasi di volte allo stato di un singolo bit, equivalente a un relè con un numero indefinitamente elevato di contatti.,

I cosiddetti “contatti” possono riferirsi agli ingressi fisici (“hard”) al controllore programmabile da dispositivi fisici come pulsanti e finecorsa tramite un modulo di ingresso integrato o esterno, o possono rappresentare lo stato dei bit di memoria interna che possono essere generati altrove nel programma.

Ogni gradino del linguaggio ladder ha tipicamente una bobina all’estrema destra. Alcuni produttori possono consentire più di una bobina di uscita su un gradino.,

  • Ingresso Rung: checkers (contatti)
    • —— Contatto normalmente aperto, chiuso ogni volta che la bobina corrispondente o un ingresso che lo controlla è eccitato. (Contatto aperto a riposo)
    • —— Contatto normalmente chiuso (“non”), chiuso ogni volta che la bobina corrispondente o un ingresso che lo controlla non è eccitato. (Contatto chiuso a riposo)
  • Rung output: attuatori (bobine)
    • —( )— Bobina normalmente inattiva, eccitata ogni volta che il suo rung è chiuso., (Inattivo a riposo)
    • —(\)— Bobina normalmente attiva (“non”), eccitata ogni volta che il suo gradino è aperto. (Attivo a riposo)

La “bobina” (uscita di un gradino) può rappresentare un’uscita fisica che aziona un dispositivo collegato al controllore programmabile, o può rappresentare un bit di memoria interna da utilizzare altrove nel programma.

Un modo per ricordarli è immaginare le pedine (contatti) come un ingresso a pulsante e gli attuatori (bobine) come un’uscita a lampadina., La presenza di una barra all’interno delle pedine o degli attuatori indicherebbe lo stato predefinito del dispositivo a riposo.

ANDEdit logico

 ------------------------------------( ) Key switch 1 Key switch 2 Door motor

Quanto sopra realizza la funzione: Door motor = Interruttore a chiave 1 E interruttore a chiave 2

Questo circuito mostra due interruttori a chiave che le guardie di sicurezza potrebbero utilizzare per attivare un motore elettrico su una porta del caveau di banca. Quando i contatti normalmente aperti di entrambi gli interruttori si chiudono, l’elettricità è in grado di fluire verso il motore che apre la porta.,

Logico E con NOTEdit

 ------------------------------------( ) Close door Obstruction Door motor

Quanto sopra realizza la funzione: Porta motore = Chiudere la porta E NON (Ostruzione).

Questo circuito mostra un pulsante che chiude una porta, e un rilevatore di ostruzione che rileva se qualcosa è nel modo della porta di chiusura. Quando il contatto del pulsante normalmente aperto si chiude e il rilevatore di ostruzione normalmente chiuso è chiuso (nessuna ostruzione rilevata), l’elettricità è in grado di fluire verso il motore che chiude la porta.,

OREdit logico

 --+--------------+-----------------( ) | Exterior unlock | Unlock | | +--------------+ Interior unlock

Quanto sopra realizza la funzione: Unlock = Sblocco interno O sblocco esterno

Questo circuito mostra le due cose che possono innescare le serrature delle porte di alimentazione di un’auto. Il ricevitore remoto è sempre alimentato. Il solenoide di sblocco ottiene il potere quando uno dei due set di contatti è chiuso.

Industrial STOP/STARTEdit

Nella logica di avvio / arresto industriale comune abbiamo un pulsante “Start” per accendere un contattore motore e un pulsante “Stop” per spegnere il contattore.,

Quando viene premuto il pulsante “Start”, l’ingresso diventa vero, tramite il contatto NC del pulsante “Stop”. Quando l’input” Run “diventa true, il seal – in” Run “NESSUN contatto in parallelo con il” Start ” NESSUN contatto si chiuderà mantenendo la logica di input true (latched o sealed-in). Dopo il circuito è agganciato il pulsante “Stop” può essere spinto causando il suo contatto NC per aprire e di conseguenza l’ingresso di andare falso. Il” Run ” NESSUN contatto si apre quindi e la logica del circuito ritorna al suo stato inattivo.,

 --+------+--------( ) | Start | Stop Run | | +------+ Run
 ---------------------( ) Run Motor

Quanto sopra realizza la funzione: Run = (Start O Run) E (NON Stop)

Questa configurazione latch è un linguaggio comune nella logica ladder. Può anche essere indicato come “seal-in logic”. La chiave per capire il fermo è nel riconoscere che l’interruttore” Start ” è un interruttore momentaneo (una volta che l’utente rilascia il pulsante, l’interruttore è aperto di nuovo). Non appena il solenoide” Run “si innesta, chiude il contatto” Run ” NO, che blocca il solenoide. L’interruttore” Start ” che si apre quindi non ha alcun effetto.,

Nota: In questo esempio, “Run” rappresenta lo stato di un bit nel PLC, mentre “Motor” rappresenta l’uscita effettiva al relè del mondo reale che chiude il circuito del mondo reale del motore.

Per motivi di sicurezza, un arresto di emergenza può essere cablato in serie con l’interruttore di avvio e la logica del relè dovrebbe riflettere questo.

 ----------+----+---------( ) ES Stop | Start | Run | | +----+ Run
 ---------------------( ) Run Motor

Quanto sopra realizza la funzione: Run = (NOT Emergency Stop) AND (NOT Stop) AND (Start OR Run)

Complex logicEdit

Ecco un esempio di come potrebbero essere due pioli in un programma di logica ladder., Nelle applicazioni del mondo reale, ci possono essere centinaia o migliaia di pioli.

In genere, la logica ladder complessa viene “letta” da sinistra a destra e dall’alto verso il basso. Come ciascuna delle linee (o pioli) sono valutati la bobina di uscita di un gradino può alimentare nella fase successiva della scala come un ingresso. In un sistema complesso ci saranno molti “pioli” su una scala, che sono numerati in ordine di valutazione.,

 1. -------------+---------+----( ) Switch | HiTemp | A/C | | +---------+ Humid
 2. ----------------------------( ) A/C Heat Cooling

Linea 1 realizza la funzione: A/C = Switch E (HiTemp O umido)

Linea 2 realizza la funzione: Cooling = A/C E (NON calore)

Questo rappresenta un sistema leggermente più complesso per il gradino 2. Dopo aver valutato la prima linea, la bobina di uscita ” A / C “viene immessa nel gradino 2, che viene quindi valutato e la bobina di uscita” Raffreddamento “può essere immessa in un dispositivo di uscita” Compressore ” o nel gradino 3 sulla scala. Questo sistema consente di suddividere e valutare progetti logici molto complessi.,

Funzionalità aggiuntivamodifica

Funzionalità aggiuntive possono essere aggiunte a un’implementazione logica ladder dal produttore del PLC come blocco speciale. Quando il blocco speciale è alimentato, esegue il codice su argomenti predeterminati. Questi argomenti possono essere visualizzati all’interno del blocco speciale.

 +-------+ -------------------------+ A +---- Remote unlock +-------+ Remote counter
 +-------+ -------------------------+ B +---- Interior unlock +-------+ Interior counter 
 +--------+ --------------------+ A + B +----------- | into C | +--------+ Adder

In questo esempio, il sistema conterà il numero di volte in cui vengono premuti i pulsanti di sblocco interno e remoto. Queste informazioni verranno memorizzate nelle posizioni di memoria A e B., La posizione di memoria C manterrà il numero totale di volte in cui la porta è stata sbloccata elettronicamente.

i PLC hanno molti tipi di blocchi speciali. Includono timer, operatori aritmetici e confronti, ricerche di tabelle, elaborazione del testo, controllo PID e funzioni di filtraggio. I PLC più potenti possono operare su un gruppo di posizioni di memoria interna ed eseguire un’operazione su un intervallo di indirizzi, ad esempio per simulare un controller a tamburo sequenziale fisico o una macchina a stati finiti. In alcuni casi, gli utenti possono definire i propri blocchi speciali, che sono effettivamente subroutine o macro., L’ampia libreria di blocchi speciali insieme all’esecuzione ad alta velocità ha permesso l’uso di PLC per implementare sistemi di automazione molto complessi.