Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/ognigiorno.com/wp-content/plugins/math-comment-spam-protection/math-comment-spam-protection.php:1) in /var/www/html/ognigiorno.com/wp-includes/feed-rss2.php on line 8
Il circuito presentato è studiato per trenini Märklin, ma modificabile per adattarlo a tipologie diverse. Come vedremo, la parte di alimentazione è pensata per la corrente alternata, la modifica per adattarla a corrente continua richiede poco e, anzi, permette di ridurre le dimensioni ed il numero di componenti.
Il vantaggio che deriva da questo progetto lo si vede principalmente nel numero di cavi con cui abbiamo a che fare nel cablaggio dell’impianto. A differenza del metodo tradizionale, per cui dobbiamo prevedere 3 fili dalla centrale di comando ad ogni dispositivo (eventualmente riducibile a 2), con un circuito digitale riusciamo ad utilizzare tre soli fili comuni a tutti i dispositivi controllati. Oltre ai due di alimentazione, il terzo filo è quello su cui viaggiano i dati.
Il formato in cui vengono trasmessi i dati prevede di inviare le informazioni relative a quale operazione e quale dispositivo è chiamato a reagire.
Il funzionamento
Il controllo avviene tramite una centralina a disposizione dell’operatore (il modellista che si diverte con locomotive e trenini vari).
Ogni dispositivo viene poi controllato direttamente da un decodificatore. Il decodificatore è collegato in ingresso al BUS di comunicazione (i tre fili che partono dalla centralina) e in uscita direttamente allo scambio da controllare.
Siccome tutti i decoder sono collegati insieme, deve essere individuato un sistema per fare in modo che ciascuno riconosca il comando a cui deve rispondere. Per questo ad ogni decodificatore verrà assegnato un codice (indirizzo). Parliamo poi di “comando” per identificare l’azione che vogliamo controllare. Usando sempre lo scambio come esempio, i comandi sono due: dritto e storto.
Quando l’operatore decide di girare uno scambio, dalla centralina parte un messaggio (che arriva a tutti contemporaneamente) che contiene l’indirizzo ed il comando. In questo modo il decoder confronta l’indirizzo con il proprio e, in caso di corrispondenza, esegue il comando.
Nella realizzazione qui descritta ho implementato un protocollo seriale che prevede un solo byte per l’indirizzo. Questo significa che si possono controllare fino a 255 dispositivi differenti. In caso non siano sufficienti, si può modificare il protocollo. 2 byte estendono a 65535 il numero di dispositivi.
La centralina
La centralina è costituita da una tastiera numerica ed un display a 4 cifre. Ho utilizzato display a 7 segmenti per rendere il numero più visibile e sicuramente più “in stile” con il plastico di come sarebbe stato con un LCD, ma nessuno impedisce di fare diversamente. In questo modo va interpretata la lettura nel modo seguente: le prime tre cifre rappresentano l’indirizzo, la quarta il comando.
Esempio: se chiamiamo 1 il comando “dritto” e 7 “storto”, per raddrizzare lo scambio identificato dell’indirizzo 56, dovremo visualizzare 0561 sul display (056 indirizzo + 1 comando). Visualizzato il numero corretto, si preme “invia” e il messaggio parte dalla centralina.
Nella foto è visibile lo schema a blocchi della centralina. Oltre a quanto descritto, vi è solo l’alimentatore.
Il decodificatore
Lo schema elettrico del decodificatore è visibile qui sotto. La scelta è stata quella di dotare ogni decodificatore di un alimentatore in grado di abbassare a 5v la tensione per il microcontrollore. In questo modo si riescono ad utilizzare solo i tre fili, due dei quali sono comuni con le alimentazioni delle bobine degli scambi. Da 16 a 5 si ottiene una buona stabilizzazione per il PIC anche semplicemente alimentando tramite diodo zener e condensatore il controllore.
Siccome le dimensioni del decodificatore sono davvero contenute (tutto realizzato con componenti SMD), l’aggiunta di 3 componenti non crea grossi problemi. In alternativa, per ridurre ulteriormente le dimensioni, si può prevedere un’uscita a 5v dalla centralina e aggiungere un filo al BUS.
Il jumper serve per l’assegnamento dell’indirizzo. Il decoder funziona normalmente a contatto aperto (senza jumper). Quando presente, il decoder risponde come se avesse indirizzo 0. Dalla centralina è possibile mandare il comando 0 all’indirizzo N, che vene trasmesso come comando N all’indirizzo 0 e interpretato dal decoder che risponde a 0 come comando di assegnamento indirizzo. L’indirizzo viene memorizzato in EEPROM, quindi mantenuto anche a circuito non alimentato.
A circuito nuovo, va quindi fatto un lavoro di assegnamento indirizzo a tutti i decodificatori. Per comodità si può eseguire questa operazione non necessariamente con i decodificatori montati sul plastico, ma tenerceli comodamente a portata di mano (è più facile mettere e togliere il jumper). Rispetto alla soluzione spesso adottata dei DIP switch, questo metodo permette di ridurre dimensioni e costi del decoder. Visto che ormai il 12F519 costa circa 20 centesimi ed è dotato di memoria Eprom, si riesce a realizzare il decoder con i pochissimi componenti come mostrato nello schema per un costo totale inferiore all’euro!
Idee aggiuntive.
Vediamo ora alcuni spunti per ulteriori implementazioni o estensioni del dispositivo.
Si possono costruire decodificatori destinati a controllare altri dispositivi, in modo per esempio di controllare tramite relè l’illuminazione del plastico, o azionare automatismi come i motorini che muovono gru, piattaforme o altro.
In alternativa al PIC 12F519, per il decodificatore si può utilizzare un controllore con più piedini di uscita, in modo da controllare più di uno scambio con lo stesso decoder.
Vediamo invece un metodo che ci permette di ottenere in poco tempo circuiti di buona qualità e molto precisi, tanto che io li utilizzo ormai sempre per montare componenti SMD. Ovvio: si tratta sempre di lavoro artigianale, realizzato con strumenti davvero “casalinghi”!
I risultati sono visibili nella foto:
La semplicità, il costo praticamente nullo, la velocità di realizzazione e la qualità del risultato sono il punto forte di questo metodo.
Materiale necessario:
Per prima cosa occorre disegnare il circuito stampato al computer con il nostro software preferito.
Una volta terminato il disegno, si stampa il circuito sulla carta patinata dalla parte lucida. Per i circuiti tradizionali (i componenti sul lato opposto al rame) non si deve ribaltare l’immagine. Per circuiti SMD, occorre ribaltare a specchio la stampa. Va bene anche la glossy, ma costa un po’ di più. Tra le varie prove che ho fatto, i risultati migliori li ho avuti con la carta patinata Epson 720dpi. In mancanza di stampante laser, si può anche fotocopiare il circuito. L’importante è ottenere il disegno con del toner sulla carta patinata.
Ritagliamo il circuito, lasciando qualche centimetro di margine per lato.
A questo punto dobbiamo preparare la basetta: va tagliata e pulita. Per la pulizia utilizzo acetone e una spugnetta abrasiva (di quelle gialle e verdi per lavare i piatti).
Il disegno del circuito va adesso assicurato alla basetta, in modo che il rame sia a contatto con la stampa. Per questo è comodo utilizzare il nastro adesivo di carta (quello che si usa quando si imbianca). Basta fissare due dei quattro lati sul retro, mettendo il nastro a cavallo tra la basetta e la carta.
Siamo adesso pronti per il trasferimento: appoggiamo la basetta con la carta rivolta verso l’alto su un supporto stabile. Se lavoriamo su un tavolo, meglio proteggerlo con qualche foglio di giornale.
“Stiriamo” letteralmente con il ferro da stiro la carta, interponendo un panno di cotone tra il ferro e la carta (una vecchia maglietta va benissimo). Il ferro da stiro deve essere regolato alla massima potenza e non deve produrre vapore. Va esercitata una discreta pressione, anche spostando il ferro da stiro. Senza mai staccare il ferro, questa procedura deve durare almeno 5/6 minuti.
Stirando ad alta temperatura il toner si stacca dal foglio e si trasferisce sul rame, creando la protezione contro la corrosione del cloruro ferrico.
Questa fase è quella che affineremo con la pratica: le prime volte i risultati potrebbero non soddisfarci, ripetendo l’operazione, capiremo sempre meglio come muovere il ferro per ottenere i risultati migliori.
La basetta va ora immersa in acqua e lasciata per diversi minuti, fino a che la carta non si stacca da sola (non so se avete mai staccato i francobolli dalle buste… è la stessa cosa).
Quando la carta è ormai sollevata, la stacchiamo con le mani e la puliamo sfregando con le dita eventuali residui bianchi.
Osserviamo attentamente il risultato, aiutandoci eventualmente con una lente di ingrandimento: sul rame deve essere stampato di nero il circuito, senza interruzioni nè imperfezioni. Se notiamo qualcosa che non ci piace, dobbiamo ripetere, ripulendo la basetta e stirando di nuovo. Io mi porto avanti stampando da subito più copie dello stesso circuito nel foglio, anche se mi è capitato pochissime volte di doverlo rifare.
Abbiamo praticamente finito: la basetta è pronta per essere immersa nel cloruro ferrico. Un’ora circa di immersione ed è pronto. Io solitamente lascio la basetta a galla, con il rame rivolto verso il basso. In questo modo si riducono leggermente i tempi e migliora la qualità del risultato finale. Il rame infatti precipita sul fondo, senza riappoggiarsi in altre zone della basetta.
Dopo aver effettivamente controllato che non è rimasto rame tra le piste nere, si lava la basetta sotto l’acqua. Il toner si toglie sempre utilizzando la spugna abrasiva e acetone.
Abbiamo ottenuto in poco tempo un preciso circuito stampato.
Devo dire che da quando ho appreso questo metodo ho potuto ricominciare seriamente a dedicarmi all’elettronica. Sappiamo bene quanto è importante il circuito stampato per le nostre realizzazioni.
Per una buona finitura del lavoro, e per roteggere il circuito dall’ossidazione, dopo la saldatura conviene spruzzare sul circuito, lato rame, della lacca per capelli. Con questa si deposita una patina protettiva che allunga la vita al nostro circuito