Un array logico programmabile (PLA) è un dispositivo che fornisce uno o più livelli di output logici basati su un insieme di input. Essendo un circuito logico combinatorio, la matrice logica programmabile può essere implementata utilizzando dispositivi di memoria programmabili. L’array logico programmabile è una semplice alternativa all’uso di porte e noiose semplificazioni delle equazioni logiche.
La progettazione della logica programmabile è un’alternativa migliore alle soluzioni implementate dalla porta logica perché uno svantaggio della progettazione della logica tradizionale è la difficoltà di apportare modifiche alla progettazione esistente. Successivamente, è diventato ovvio che gli strumenti software erano più pratici, date le sfide nell’aggiornamento delle funzionalità e nell’ottimizzazione delle prestazioni dei nuovi prodotti digitali. L’array logico programmabile è simile a un chip di memoria con un bus indirizzi e un bus dati. Per ogni combinazione di ingressi, esiste un’uscita a livello logico per tutte le uscite necessarie. L’array logico programmabile, essendo un dispositivo logico programmabile, offre molte soluzioni pratiche alle sfide dell’automazione.
L’applicazione comune di un PLA consiste nell’implementare una tabella di verità che fornisca condizioni basate su combinazioni di input e output basate su questi input. Ad esempio, nel controllo di una pompa dell’acqua, possono essere presenti diversi sensori che rilevano le condizioni di pompaggio. Un ingresso è un indicatore che il serbatoio dell’acqua è pieno, un altro ingresso è un indicatore se è disponibile acqua in ingresso, un altro ingresso è un livello logico che indica se il motore della pompa è troppo caldo, e un altro ingresso è un indicatore se il motore è alimentato. Questi indicatori sono generati da circuiti sensore separati.
I tipici circuiti di sensori fanno uso di comparatori analogici per generare livelli logici attivi alti o attivi bassi per la matrice logica programmabile. Un livello logico “serbatoio pieno” può essere prodotto da un semplice interruttore a galleggiante. Un interruttore a galleggiante potrebbe aprirsi quando il serbatoio è pieno. Nel caso in cui il circuito del serbatoio pieno dell’acqua sia difettoso, tenderà a segnalare che il serbatoio è pieno anche se diversamente.
Il fatto che i livelli logici siano attivi alti o attivi bassi di solito implica diversi fattori. Nell’utilizzo di resistori di pull-up, il livello normale tende ad essere assegnato allo stato alto attivo, il che significa che il resistore collegato alla linea di alimentazione positiva non assorbe corrente per la maggior parte del tempo. Queste considerazioni sono molto importanti per i dispositivi che possono funzionare con una potenza limitata, come i dispositivi logici che estraggono energia da sistemi esterni. Ad esempio, i controller solari fotovoltaici devono consumare una corrente minima per un funzionamento prolungato quando la tensione della batteria si sta esaurendo.
Un controllore logico programmabile (PLC) è in grado di gestire i requisiti di automazione in base agli ingressi rilevati e alle istruzioni programmate. Utilizza una logica basata su un set di istruzioni limitato. I microcontrollori sono microprocessori che dispongono di un set di istruzioni definito per gestire l’acquisizione dei dati e il controllo di supervisione.