La "logica cablata"
Non ho intenzione di proporre un ritorno al passato (la tecnologia non torna mai indietro), ma solo di ricordare la possibilità di utilizzare in casi particolarmente semplici di progetti di logica industriale, delle configurazioni circuitali che non impieghino gli ormai omnipresenti integrati, ma componenti ancora più semplici e dai costi irrisori (un transistor si acquista a 10 centesimi di Euro, e anche a meno). Fino a qualche tempo fa questi casi erano risolvibili con i buoni vecchi relè, che però presentano costi sempre più elevati rispetto ai componenti elettronici. Guardando al passato, ricordo che all'inizio delle applicazioni dell'elettronica (una cinquantina d'anni fa) gli elementi logici "statici" erano realizzati con componenti discreti (essenzialmente transistor e resistori), costruttivamente sotto forma di blocchetti con terminali facilmente cablabili. Per almeno una ventina d'anni questa tecnologia, denominata appunto "logica cablata", ebbe un grande sviluppo, per essere poi gradualmente soppiantata dagli attuali PLC, cioè dalla "logica programmabile". Essenzialmente veniva usato un solo tipo di elemento, il NOR, con cui è possibile realizzare qualsiasi configurazione logica, con l'evidente vantaggio di utilizzare un unico tipo di blocchetto (contrariamente a quello che si può pensare, questo non richiedeva in generale un numero maggiore di unità rispetto ad uno schema in AND, OR e NOT. Naturalmente i progettisti dovevano saper applicare con facilità le uguaglianze di DeMorgan .).
L'utilizzo di transistor, date le relative maggior potenze in gioco, rende la logica anche meno soggetta a disturbi di funzionamento (spesso causa di malfunzionamenti in soluzioni hobbistiche con integrati) e può essere più facilmente adattata alle esigenze di interfaccia con i circuiti di potenza. Per questi motivi, credo valga la pena di ricordare ai più giovani i principi di queste soluzioni, anche se oggi giustamente ritenute obsolete.
L'elemento NOR
L'evoluzione degli elementi logici iniziò con configurazioni di transistor e resistenze (RTL Resistor Transistor Logic), ebbe un breve periodo in cui vennero introdotti i diodi (DTL Diode Transistor Logic), per affermarsi alla fine negli integrati come TTL Transistor Transistor Logic e più recentemente come CMOS. Per il nostro scopo fermiamoci al DTL. Ecco un tipico circuito NOR:
Il funzionamento è elementare: un segnale positivo (>3V) su almeno uno degli ingressi A,B e C porta a "0" (<1V) l'uscita R (cioè porta in conduzione Q1). Per avere l'uscita a livello alto ("1") tutti gli ingressi devono essere a "0" (o anche non collegati). Il dimensionamento è qui previsto per un'alimentazione a 9V (con una semplice batteria), ma ovviamente può essere esteso ad altri valori di tensione, tipicamente il 12V, eventualmente ritoccando i valori delle resistenze, anche in funzione del transistor utilizzato (qui un 2N3904). Con questo si può dunque realizzare qualsiasi schema di logica combinatoria, collegando opportunamente tra loro diversi di questi elementi (si pensi ad una realizzazione con morsetti per i terminali d'ingresso da una parte ed i terminali d'uscita e di alimentazione dall'altra, così come appaiono nello schema).
L'elemento NAND
In alternativa al NOR, è possibile realizzare qualsiasi schema di logica combinatoria con soli NAND. Un possibile circuito di questo tipo è:
Ovviamente la "logica" è esattamente l'opposto della precedente: l'uscita R rimane a "1" finché almeno un ingresso è a "0" e diventa "0" solo quando tutti gli ingressi sono ad "1" (o scollegati). Se per ragioni particolari si decidesse di utilizzare entrambi i tipo di elementi, è raccomandabile di differenziare vistosamente il loro aspetto (per non creare confusione nel loro uso).
L'elemento NOT
Anche se dichiaratemente non necessario, potrebbe in qualche caso essere utile disporre comunque di un semplice invertitore del segnale logico. Ecco quindi un possibile circuito per il NOT:
Come si può vedere, la realizzazione di questo elemento con l'aggiunta di un LED, oltre all'inversione del segnale, potrebbe rappresentare un "indicatore" di stato dell'uscita a cui fosse collegato. E' infatti più intuitivo associare lo stato "1" all'accensione del LED (e ovviamente lo "0" al suo spegnimento), che non, com'è in realtà, il suo contrario (il LED viene percorso da corrente solo quando Q1 conduce, cioè R="0").
Applicazioni
Perché il discorso non appaia un Amarcord tecnologico, vediamo come questi criteri siano stati recentemente applicati in un progetto reale, dibattuto nella sezione Elettronica Generale del Forum di Electroportal. Si tratta del Progetto elettroutensile a batteria di davidde.
Una delle funzioni da realizzare nel primo prototipo era il mantenimento del comando di riscaldamento fino al raggiungimento della temperatura prestabilita. Ora questo è un classico problema da Set-Reset Flip-Flop, con il Set dato dal pulsante di avviamento ed il Reset dato dal sensore di temperatura. Si sa inoltre che un SR-FF è ottenibile collegando in modo incrociato 2 elementi NOR (a 2 ingressi ciascuno):
Questo è dunque un circuito di logica sequenziale, con memorizzazione di stato, in cui il comando Set, temporaneo, viene mantenuto all'uscita Q fino al segnale di Reset. Si può vedere anche come l'equivalente di un relè con contatto di autoritenuta. Nell'esempio applicativo citato, il Set era dato da un microswitch di comando manale ed il Reset da un sensore di temperatura, come già detto, mentre l'uscita Q comandava un Mosfet che forniva la potenza riscaldante, ma ovviamente lo stesso può applicarsi per qualsiasi coppia di comandi (accensione /spegnimento di luci, avviamento/arresto di motori, ecc).
Un'ulteriore funzione, in via di adozione nello stesso dispositivo citato, è l'applicazione diretta di un semplice NOR per il blocco del riscaldamento nel caso di tensione batteria troppo bassa o tempi di inserzione troppo lunghi: i rispettivi circuiti di controllo agiscono infatti sul comando d'uscita, impedendone l'attuazione ove si rivelasse il rispettivo stato d'allarme.
A scanso di equivoci, ribadisco che queste soluzioni sono utili solo in casi estremamente semplici e che non si intende incoraggiarne l'applicazione ove la logica richieda parecchi blocchi , essendo allora preferibile l'uso degli integrati, ad es. la serie CMOS4000.