Controllo radio per tabellone segnapunti - Hardware e schema

L’intero circuito di trasmissione, realizzato su millefori doppia faccia, è posto all’interno di una scatola metallica molto resistenze, approssimativamente delle dimensioni di 19*15*6 cm.

La parte anteriore del contenitore è inclinata verso il basso di circa 30°, garantendo all’utilizzatore una maggiore ergonomia.

I pulsanti sono disposti sulla superficie e divisi a seconda della loro area di influenza:

  • A sinistra i pulsanti relativi ai locali;
  • A destra quelli per gli ospiti;
  • In alto i pulsanti per il comando del tempo e i tasti ausiliari.

Sono stati inoltre colorati in modo diverso e la superficie del dispositivo è stata serigrafata in modo che esso risulti di immediata comprensione.

L’alimentazione, proveniente da pacco di batterie ricaricabili (6x1.2V 2100 mAh), è interrotta da un interruttore posto sul retro. Quando questo è chiuso la tensione viene stabilizzata a 5 V da un regolatore lineare integrato a bassa corrente di riposo (MCP1700-5002) che ci permette di avere, in condizioni di non utilizzo, un consumo di corrente totale pari a circa 0.8 mA più i 5 che scorrono nel led di power-on, incrementando notevolmente la durata della batteria.

Un comune stabilizzatore di tensione della serie 78xx dispone di una corrente di riposo minima pari a circa 5 mA, il che lo rende inadeguato per essere utilizzato in dispositivi alimentati a batterie (o, se non proprio inadeguato, perlomeno sconveniente).

I due condensatori in parallelo al regolatore sono necessari per stabilizzare ed eliminare l’eventuale ripple residuo. Il loro valore può essere alzato fino a circa 1 µF, come specificato dal datasheet.

Il microcontrollore utilizzato è un PIC16F628A che è incaricato della lettura dei pulsanti e dell’invio dei codici corrispondenti al modulo trasmettitore.

I pulsanti sono connessi a matrice in modo che il PIC sia facilitato nella loro gestione e che il numero dei pin utilizzati a tale scopo non sia troppo alto. La tastiera così formata richiede infatti appena 11 ingressi/uscite digitali per la gestione dei suoi 28 tasti.

Uno dei pulsanti della tastiera è adibito a pulsante Funzione: premendolo assieme ad un altro pulsante si attiverà la funzionalità secondaria del pulsante premuto.

Nonostante si disponga di un oscillatore interno, il clock è fornito da un oscillatore al quarzo esterno da 4 MHz, stabilizzato con due condensatori ceramici da 22 pF perché è necessario avere una temporizzazione molto precisa per realizzare una trasmissione che rispetti esattamente le tempificazioni decise in fase di progetto.

Il modulo trasmettitore è un modulo Aurel TX-433/SAW s-Z funzionante a 433.92 MHz. Il datasheet indica chiaramente che la massima frequenza accettabile per l’onda modulante non può eccedere i 4 kHz.

Il modulo è dotato di un piano di massa (la superficie della scatola) per l’antenna dimensionata a quarto d’onda e di un condensatore di bypass sull’alimentazione (100nF).

I tre led visibili indicano la presenza di alimentazione (Power-on), lo stato di trasmissione (Tx) e l’eventuale stato di scarica critica della batteria (Err).

Quest’ultimo led è controllato da un circuito comparatore con LM311: vengono comparate la tensione ai capi della batteria, che arriva dimezzata attraverso un partitore resistivo, con una tensione regolabile su di un trimmer predisposto. La tensione sul trimmer resterà sempre stabile dato che è posto dopo lo stabilizzatore di tensione del circuito (a meno di un calo eccessivo della tensione che impedisca il corretto funzionamentto di quest'ultimo).

Quando la tensione delle batterie scende sotto la soglia impostata, il led viene acceso per segnalare che è necessario attaccare la stazione trasmittente alla rete elettrica perché si auto ricarichi.

Il dispositivo è dotato di un circuito di carica controllato automaticamente: quando non è utilizzato può essere collegato mediante un comune trasformatore (230Vac-12Vdc), alla rete elettrica. Internamente, un microcontrollore PIC12F675 è dedicato alla gestione della carica delle batterie: se sono scariche, mediante un relè ed un LM317 utilizzato come limitatore di corrente, esse sono ricaricate. Quando ciò non è necessario o è appena stato completato un ciclo di carica, il relè viene aperto e le batterie non vengono caricate ulteriormente.

A livello software è previsto un certo valore d’isteresi, utile per evitare continue attivazioni e disattivazioni, quando la tensione delle batterie si trova prossima al valore limite.

Non sussiste quindi rischio di sovraccarico ed il conseguente pericolo di surriscaldamento delle batterie nel caso esse vengano lasciate troppo in carica: il dispositivo potrà essere lasciato permanentemente collegato alla rete elettrica, tranne quando utilizzato, e gestirà autonomamente la carica / scarica delle batterie.

In questo modo non sarà necessario sostituire le batterie una volta scariche, né aprire il dispositivo per prelevarle e ricaricarle separatamente.

È stato infine predisposto un connettore ICSP (In-Circuit-Serial-Programming) per programmare il PIC attraverso un programmatore PicKit 2 o successivi senza doverlo rimuovere dal circuito.

Data la dimensione significante del circuito, esso sarà diviso in sezioni per essere presentato in modo più conciso.

Lo schema elettrico del sistema di lettura della tastiera e trasmissione è il seguente:

(clicca sull'immagine per vederla più grande)

Sulla sinistra è presente il connettore ICSP utilizzato per la programmazione in-circuit.

I pin del microcontrollore che sono collegati alla matrice di pulsanti sono raggruppati nel BUS per semplicità di disegno e di comprensione.

Il modulo radio ricevitore posto sopra al microcontrollore è direttamente collegato a quest’ultimo.

Infine sono visibili in alto a destra i tre led di segnalazione visiva e le loro connessioni. L’ultimo di questi, dedicato alla segnalazione d’insufficiente carica delle batterie, è controllato dal circuito di comparazione che viene presentato qui di seguito.

Il circuito dedicato all’alimentazione e al controllo della tensione delle batterie è il seguente:

La tensione proveniente dal pacco batterie (6 elementi Ni-Mh da 1.2 V nominali) è stabilizzata dall’integrato MCP1700-5002 (stabilizzatore di tensione 5V low drop-out a basso consumo di corrente) e dai condensatori in poliestere richiesti per la rimozione del ripple residuo.

Attraverso un partitore (di alto valore resistivo per non aggiungere un eccessivo consumo di corrente) la tensione delle batterie viene dimezzata e confrontata con una impostabile attraverso il trimmer. Quest’ultimo dispone di una tensione stabile ai suoi capi perché è posto dopo il regolatore. Se la tensione delle batterie è inferiore alla soglia impostata, il led Err viene chiuso a massa dal LM311N, accendendosi per indicare la necessità di autoricarica.

Il circuito di autogestione della carica è il seguente:

(clicca sull'immagine per vederla più grande)

(il diodo segnato come 1N4148 in realtà è un diodo 1N4937. Voglio anche dire che per il circuito di limitazione della corrente del 317 ho preso spunto da un articolo che avevo letto qui su grix, non mi ricordo l'autore ma lo ringrazio comunque.)

Il funzionamento di questo circuito è semplice.

Quando il dispositivo è connesso al trasformatore esterno, la tensione continua di 12 V fornita è stabilizzata a 5V da uno stabilizzatore integrato LM7805 che è utilizzato per alimentare il PIC12F675.

Esso riceve in ingresso la tensione presente sulle batterie, dimezzata attraverso un partitore resistivo, e in uscita controlla il relè che collega il circuito di ricarica alle batterie.

Il microcontrollore decide in modo intelligente quando attivare il relè per poter caricare le batterie solo quando è necessario, prevenendo sovraccarichi che potrebbero danneggiarle in modo grave.

Questa decisione avviene comparando la tensione delle batterie a due soglie estreme. Se la tensione è superiore alla soglia superiore, la carica viene interrotta. Se invece è minore della soglia inferiore, la carica viene avviata. Per tutti i valori intermedi non è prevista alcuna azione da parte del PIC che si limita a mantenere lo stato precedente, conferendo così una discreta e necessaria isteresi.

Il circuito di ricarica è costituito da un LM317 in configurazione limitatrice di corrente. Le batterie utilizzate sono di tipo Ni-Mh, devono quindi essere caricate attraverso una corrente costante pari ad un decimo della loro capacità.

Nel nostro caso, essendo la loro capacità pari a 2100 mAh, dovremo caricarle con una corrente costante di 210 mA. Ci manterremo un po’ sotto questo valore, limitando il flusso di corrente ad un massimo di 167 mA calcolato nel seguente modo:

La resistenza si calcola secondo la formula:

R = 1.25 V / Ic [A]

Dove Ic è la corrente di carica (C/10 della batteria) e 1.25 V è il valore di dropout interno dell’LM317, fornito dal costruttore nel datasheet del componente.

Inoltre è necessario calcolare la potenza dissipata dalla resistenza secondo la formula:

P = V x I = 1.25 V x Ic

Per avere una corrente nominale di 210 mA si dovrebbe usare una resistenza pari a:

R = 1.25 V / 0.21 A = 6 Ohm

Che dissiperebbe una potenza pari a:

P = 1.25 V x 0.21 A = 0.26 W

Scegliamo una resistenza lievemente superiore del valore di 7.5 Ohm costituita ponendo in parallelo due resistenze di valore commerciale pari a 15 Ohm 0.25W (per sicurezza, poiché la potenza dissipata è prossima al limite nominale di 0.25W di una singola resistenza) ottenendo una corrente di carica pari a:

Ic = 1.25 V / 7.5 Ohm = 167 mA

Ed una potenza dissipata pari a:

P = 1.25 V x 0.167 A = 0.21 W

Le soglie di tensione che determinano l’intervento del microcontrollore sulla carica/scarica delle batterie sono state determinate osservando i grafici delle curve caratteristiche di carica tensione/corrente.

Ogni pila Ni-Mh ha una tensione pari a circa 1.38 V quando completamente carica e, alla tensione di 1.25 V, si trova già in fase di scarica rapida.

Si è scelto quindi di avviare la carica qualora la tensione fosse inferiore agli 1.30 V per elemento e di bloccarla quando raggiunga gli 1.35 V.

Il codice sorgente compilato e caricato nel PIC12F675 è presentato nel capitolo seguente.