Home   -     Progetti    -    Appunti    -    Avvertenze    -    Contatti


Timer digitale programmabile con PIC

Introduzione

Spesso risulta molto utile disporre di un apparecchio che permetta di mantenere acceso, per un tempo prefissato, un carico elettrico.Un temporizzatore o timer appunto.

Con questo circuito è possibile impostare il tempo che desiderate. Poi attivate il timer e questo mantiene acceso il carico a cui è collegato per il tempo che avete specificato.Trascorso tale  intervallo il timer spegne il carico.

Scarica i file per realizzare questo progetto pictimer.zip

Il campo delle possibili applicazioni è molto vasto.Da un timer per non bruciare i toast ad un sistema per spegnere automaticamente le luci di casa dopo che siete usciti e via discorrendo.

Nel trovare possibili applicazioni potete sbizzarrirvi con la Vostra fantasia.

Nel settore dell'elettronica per hobby potete utilizzare questo circuito per alimentare per un tempo costante delle batterie ricaricabili o impostare il tempo di esposizione per la fotoincisione.

Caratteristiche del timer

Economico. Il progetto è realizzato con un microcontrollore PIC 16F84 (oppure anche con PIC 16F628) che svolge tutte le operazioni necessarie.Il display ha un costo contenuto perché costituito da 4 display 7 segmenti facilmente reperibili e controllati direttamente dal PIC.

Semplice. Il progetto utilizza tutti componenti di facile reperibilità.Tutte le funzioni del timer sono gestite con pochi pulsanti.

Versatile.  Il timer può funzionare in due modalità permettendo la programmazione fino a 99 ore e 59 minuti.

Modalità ore-minuti

Con questa modalità la coppia a sinistra delle cifre del display ha il significato di ore e la coppia a destra di minuti.Il trascorrere dei secondi è evidenziato dal lampeggio dei due punti che separano le due coppie di cifre del display.Con questa modalità non è possibile specificare i secondi di conteggio che sono posti inizialmente uguali a zero.

Esempio: Se il display riporta 10:53 significa che il timer mantiene  il carico acceso per 10 ore e 53 minuti ( e 00 secondi).

Modalità minuti-secondi

Con questa modalità la coppia a sinistra delle cifre del display ha il significato di minuti e la coppia a destra di secondi. I due punti tra le coppie di cifre sono spenti.

Esempio: Se il display riporta 10 53 e i due punti separatori sono spenti, significa che il timer mantiene il carico acceso per 10 minuti e 53 secondi.

Con questa modalità di conteggio le ore sono considerate uguali a 00.

Nota. Se il timer è impostato nella modalità ore-minuti, durante il conteggio alla rovescia il timer  passa in modo automatico alla modalità minuti-secondi quando il tempo scende sotto un'ora.

Flessibile. All''uscita del Timer è possibile collegare diversi moduli per controllare carichi elettrici con specifiche diverse.Il circuito può essere alimentato continua tensione continua compresa tra 8 e 15V oppure alternata compresa tra 6 e 12 V. 

Compatto. Il circuito stampato su due lati riduce al minimo l'ingombro del Timer e permette una facile installazione su un pannello o in una scatola.

Affidabile. Una batteria tampone permette di mantenere memorizzato lo stato del Timer anche in mancanza dell'energia elettrica.Durante il blackout i digit del display sono spenti e il PIC entra in modalità sleep (a basso consumo), garantendo una lunga autonomia della batteria tampone.La batteria tampone può essere costituita da degli elementi ministilo (Size AAA) da 1,5V poste in serie.

Preciso. Il clock al quarzo permette di ottenere un'elevata precisione.

Aspetto

Il circuito  può essere montato su un pannello o in una scatola.Io ho utilizzato una scatola di derivazione stagna di quelle che si trovano anche dal ferramenta con alcuni fori per la ventilazione.E' possibile stampare una maschera per realizzare  con precisione i fori di montaggio. L'aspetto finale del timer montato sul pannello è indicativamente riportato in questa foto.Attenzione:la foto fa riferimento ad una versione precedente.

Utilizzo del timer

Il timer utilizza 3 pulsanti Go,Mode e Select che corrispondono rispettivamente a P1,P2 e P3 negli schemi.

Nel circuito stampato Go è il tasto in alto, Select è quello in basso,in mezzo c' è il tasto Mode.

Accendete  il circuito.

Sul display appare 01 00. Significa che il tempo impostato è di 01 minuti e 00 secondi.

Premete più volte il tasto Select per selezionare uno dei 5 tempi preimpostati.Selezionate per esempio il tempo di 1 minuto (01 00).

Premete il tasto Go. L'uscita è attivata e inizia il conto alla rovescia 00 59, 00 58, 00 57,...

Se premete il tasto Mode durante il conto alla rovescia allora il timer entra in pausa.Durante la pausa è sospeso il conto alla rovescia e lampeggiano tutte le cifre del display.Durante la pausa l'uscita rimane attiva.Per togliere la pausa e riprendere il conteggio premete il tasto Go.Se invece durante la pausa premente nuovamente  il tasto Mode allora il timer è inizializzato.

Lasciate proseguire il conto alla rovescia sino a che il timer arriva a 00 00.

Terminato il conto alla rovescia il timer spegne l'uscita e il display continua a indicare 00 00.

Per inizializzare il timer premere il tasto Mode.

Se premete il tasto Select con il timer in attesa di partire potete scegliere tra  uno dei 5 tempi preimpostati.E' possible programmare ciascuno di questi tempi.

Dopo lo spegnimento, alla successiva accensione,  il timer si attiva sull'ultimo tempo selezionato.

Impostazione del tempo

Il timer mantiene memorizzate 5 impostazioni di tempo.

Ciascuna impostazione di tempo è programmabile dall'utente tramite i tasti del timer Go e Mode.

Accendete il timer e selezionate, premendo più volte Select,  l' impostazione di tempo che intendete modificare .

Ora premete il tasto Mode.Il display  lampeggia con 00:00.

Premete il tasto Go più volte per selezionare una  modalità di conteggio: 

- per selezionare la modalità ore-minuti lasciate i due punti accesi 00:00

- per selezionare la modalità minuti-secondi lasciate i due punti spenti 00 00

Dopo aver scelto la modalità desiderata premete il tasto Mode.

Lampeggia la coppia di cifre a destra del display.

Premete ripetutamente Go per incrementare di una unità per volta.Mantenete premuto Go per eseguire il conteggio veloce.

Premete nuovamente Mode.Lampeggia solo la coppia di cifre a sinistra del display.

Premete ripetutamente Go per incrementare di una unità per volta.Mantenete premuto Go per eseguire il conteggio veloce

Premete Mode per memorizzare il tempo che appare sul display.

Il display si spegne per un istante molto breve per dare conferma che l'impostazione è stata memorizzata.

Se il tempo impostato non è corretto ripetete la procedura ''Impostazione del tempo''.

Nota. Il timer rifiuta la programmazione di un tempo uguale a zero.

Premete il tasto Go per fare partire il conto alla rovescia dal tempo selezionato.

Potete ripetere la programmazione del tempo per ciascuna delle 5 impostazioni.

Assemblaggio

Lo schema di assemblaggio è utile per avere una visione d'insieme del circuito.Permette di localizzare facilmente i componenti ed è utile durante la saldatura per inserire correttamente i componenti.Alcuni componenti come le resistenze, diodi e transistori , hanno i terminali che in alcune piazzole, devono essere saldati anche dal lato Top.Suggerisco di non eseguire la saldatura sulle piazzole dalle quali non parte/arriva nessuna pista.In questo modo è più agevole l'eventuale sostituzione di componenti.Attenzione a non montare i componenti nel verso sbagliato:le piazzole quadrate di alcuni componenti polarizzati corrispondono al terminale negativo (catodo).

Master lato Top e Master lato Bottom

N.B. Stampate i master in scala 1:1. Togliete la spunta a tutte le opzioni di stampa del tipo adatta alla pagina, ecc. di Acrobat Reader. Verificate con un righello le dimensioni della stampa  (95x65 mm) prima di procedere. E' previsto che la faccia stampata del foglio vada a contatto con le  superfici presensibilizzate della basetta durante la fotoincisione.

Nella sezione appunti trovate una pagina con alcuni suggerimenti per realizzare l'allineamento dei master nella fotoincisione su due lati.

Schema di assemblaggio lato Top e Bottom

Utile per avere una visione d'insieme del circuito.Permette di localizzare facilmente i componenti ed è utile durante la saldatura per inserire i componenti nel verso corretto 

Lista del materiale

Tutti i componenti necessari per realizzare il circuito li potete facilmente acquistare in un qualsiasi negozio di componenti elettronici.La spesa per i soli componenti è modesta.

Mappa di foratura

Eseguite prima tutti i fori della basetta con una punta da trapano da 0.8mm.Mettete molta cura nel centrare perfettamente il centro delle piazzole. In tal senso è molto meglio praticate tutti i fori dal lato top.Cercate di mantenere il trapano ben in  verticale in modo da non uscire col foro fuori dalla corrispondente piazzola nella faccia opposta a quella di foratura. Per alcuni componenti con i reofori più spessi, come il ponte a diodi e  l'integrato stabilizzatore, è necessario ripassare i fori di montaggio con una punta da 1mm.Per inserire agevolmente i pulsanti e l'interruttore a levetta limate un poco i loro terminali e praticate più fori in linea sulle rispettive piazzole di montaggio.

La mappa di foratura contenuta nell'archivio è anche utile per individuare le "vias", cioè quei fori in cui andrà saldato un corto spezzone di filo conduttore saldato alle estremità sulle piazzola nei lati Top e Bottom.Quando iniziate a saldare  partite subito le via, prima di ogni altro componente.Le via si riconoscono nello stampato perché hanno un diametro di 75 mils leggermente minore rispetto  gli 85 mils  delle rotonde (quadrate) dei componenti.

Nella mappa di foratura sono riportate anche la posizione dei fori di fissaggio, del LED relativo allo stato dell'uscita, e il perimetro del display.Consiglio di stampare la mappa di foratura su un foglio di carta lucida o trasparente e utilizzarla come maschera per realizzare sul pannello i fori per il montaggio del circuito e la finestra per il display.

Programmazione del PIC

Programmate il PIC 16F84 o 16F84A con il file T2F842x.hex oppure il PIC16F628 con il file T2F6282x.hex. E' disponibile il codice sorgente assembler del programma.Il codice funziona correttamente ma non è ancora da ritenere definitivo.Se non disponete di un circuito programmatore potete realizzarne uno di quelli proposti nella pagina iniziale.

Collaudo

Dopo aver montato saldato i componenti sul circuito stampato, inserite il PIC programmato.Alimentate il circuito.Sul display dovrebbe comparire 01 00

Se appare qualcosa di diverso togliete immediatamente l'alimentazione e nel circuito verificate...

- eventuali interruzioni elettriche delle piste

- le  saldature dei componenti anche al lato top, almeno dove richiesto.

- verso d'inserimento dei componenti

Moduli d'uscita

Per rendere più flessibile l'utilizzo del timer ho pensato di realizzare il progetto in due moduli.Il primo modulo è il modulo timer.Il secondo modulo separato dal primo è il modulo d'uscita.In questo modo è possibile progettare il modulo d'uscita sulla base delle caratteristiche elettriche del carico che intendete controllare.A mio avviso il modulo d'uscita più versatile è rappresentato dallo schema seguente che utilizza un relè con bobina da 5 o 6V.

Il collegamento al modulo timer  utilizza solo due fili:

Attenzione a non invertire i collegamenti tra i connettori J2 e J3.

In alternativa, se dovete controllare carichi a 220V con potenze possibilmente non superiori a 500W,  potete collegare al modulo timer l'interruttore statico presentato nella pagina dei progetti.Anche in questo caso il collegamento tra i moduli  richiede solo due fili.

Attenzione a non invertire i collegamenti tra i connettori J2 e J3.

Spegnimento del Timer

Il timer è  alimentato durante il normale funzionamento da un  trasformatore collegato alla linea elettrica 220V con una spina.La batteria tampone mantiene memorizzato il tempo di conteggio del timer nel caso in cui, durante il conto alla rovescia, mancasse la corrente elettrica dalla presa elettrica.Durante il blackout il PIC è alimentato, nello stato a basso consumo, dalla batteria tampone e tutto il display è spento.In questo stato il timer non sembra in funzione.In realtà è in  "letargo" e si risveglia automaticamente al ritorno dell'energia elettrica.Il timer non è in grado di distinguere se la spina è collegata alla rete elettrica 220V ed è in corso un blackout oppure se semplicemente avete tolto la spina dalla presa.

Per questo motivo quando non utilizzate il timer dovete sempre mantenere l'interruttore a levetta nella posizione off (levetta in basso).

In altre parole se staccate la spina del timer dalla presa elettrica senza spegnere il timer con l'apposito interruttore,succede che il display è spento ma il microcontrollore rimane alimentato dalla batteria tampone.Per garantire una lunga autonomia alla batteria è quindi necessario assicurarsi di riporre il circuito assicurandosi che interruttore principale sia nella posizione off.

Accuratezza

Se utilizzate il timer con tempi superori ad un paio di ore noterete che il conteggio sbaglia di qualche secondo.Troverete che il timer è andato più veloce o più lento di qualche secondo.Personalmente ho rilevato che il timer va troppo veloce di circa 1 secondo ogni 4 ore.Ma questo è un errore davvero inaccettabile ? No, almeno per le pretese di questo progetto.E' comunque possibile aumentare l'accuratezza del conteggio eseguendo una calibrazione software.Rimando a un secondo tempo la procedura da seguire.

Costo di realizzazione

Il progetto è realizzato per hobby quindi l'aspetto economico non è fondamentale. Ammesso comunque di avere un qualsiasi programmatore per il PIC e tutto il necessario per la costruzione del circuito stampato,diciamo un forfait di 15€ ?, modulo d'uscita escluso. Non ho tenuto conto di quanto speso perché ho comperato solo alcuni componenti, avendone già in casa alcuni. Ricordo di aver speso 6€ per il PIC 16F84, 1,15€ per ciascuno dei display 7 segmenti e qualche euro per i pulsanti e l'interruttore. I prezzi sono puramente indicativi: sono quelli al dettaglio praticati dal negozio in cui mi rifornisco e possono variare sensibilmente da un venditore all'altro.Quindi non fate troppo affidamento alle cifre riportate.

Suggerimenti

Per aumentare il contrasto del display potete utilizzare un pezzo di plexiglass o un ritaglio di retino da geometri dello stesso colore dei display LED.  

Nota. Il retino da geometri è una carta traslucida disponibile in vari colori nei negozi specializzati in articoli da disegno tecnico.

Se utilizzate il timer quasi sempre con la stessa impostazione del tempo potete anche non mettere il pulsante Select. In questo caso non è possibile scegliere tra cinque diverse impostazioni e, per cambiare il tempo di conteggio, bisogna riprogrammare l'unica impostazione disponibile.

Sviluppo del progetto

Modificando il codice memorizzato nel PIC è possibile, ad esempio,utilizzare il circuito  anche come sveglia digitale o magari anche come programmatore orario. Per chi non ha tempo, modo o mezzi per realizzare il progetto presentato, va detto che in commercio e’ possibile trovare  articoli che svolgono queste funzioni. Mi riferisco ad prodotti di questa tipologia Lafayette TDS-1. Si trovano nei negozi di materiale elettrico/elettronico oppure anche nei " Fai-da-te" meglio forniti. In questo caso si perde però la possibilità di realizzare e di personalizzare un circuito, a vostro piacere. In molti ad esempio mi hanno scritto per realizzare un dispositivo con display di grandi dimensioni. Tipiche applicazioni  trovano spazio nei settori ludico e sportivo. 

E' possibile ad esempio modificare il solo schema elettrico per comandare display LED a 7 segmenti di grandi dimensioni. Questi display sono abbastanza economici, si controllano con lo stesso principio ma con una tensione di alimentazione solitamente maggiore di 5V. Le resistenze di limitazione della corrente sui segmenti devono essere scelte in funzione della tensione di alimentazione disponibile per i display, alla loro luminosità, e all'ambiente in cui andranno installati. Con alcune prove sperimentali e' semplice determinare il valore adatto. Va precisato però che non e' consigliabile montare i display molto lontano dal circuito di controllo: per intenderci lo schema proposto fnon e' adatto ad un impiego con i display su un tabellone e i pulsanti su una console a metri di distanza.  Scarica lo schema per display grandi.

FAQ

Dove trovo maggiori informazioni su i microcontrollori  PIC ? http://www.microchip.com
Come si realizza un circuito stampato in casa ? http://www.vincenzov.net/tutorial/stampati/stampati.htm
Vorrei iniziare a programmare un Pic, da dove inizio ? Corso "Pic By Example" di S.Tanzilli   http://www.tanzilli.com/

PIC Appunti di utilizzo http://stor.altervista.org/pic/fcpic/fcpic.htm

 


Home   -     Progetti    -    Appunti    -    Avvertenze    -    Contatti