Timer per bromografo con LCD ed Encoder

Con le esperienze che ho potuto fare con il Corso di programmazione PICMicro in C , mi sono dedicato alla costruzione di un timer un po’ particolare: ho infatti cercato di usare la maggior parte delle cose che ho imparato grazie a settorezero.com.

La particolarità di questo timer è che si programma tramite un encoder rotativo, e sfrutta il l’oscillatore a 32,768 Khz sul Timer1. In aggiunta i tempi di incisione vengono memorizzati nell’eeprom interna. Questo timer ha due uscite perché il mio bromografo è un doppia faccia: ha in pratica due serie di lampade in maniera tale da poter incidere contemporaneamente le due facce di una basetta, e nasce quindi l’esigenza di poter controllare separatamente l’uno o l’altro set di lampade nel caso in cui si debba realizzare un pcb a faccia singola.

L’accensione/spegimento delle lampade avviene tramite due fotoaccoppiatori a diac (MOC3020) che pilotano a loro volta due TRIAC TIC246.

ATTENZIONE! Una parte del circuito è sottoposta alla tensione di rete e non ha la certificazione CE: l’autore del progetto e settorezero.com non si assumono alcuna responsabilità per eventuali danni derivanti dal suo utilizzo. Il circuito in questione è proposto unicamente a scopo didattico. Leggete il disclaimer per ulteriori informazioni riguardo all’utilizzo dei progetti illustrati su settorezero.com

Il circuito del mio timer è costituito da 2 pcb: uno più grande in cui è alloggiata la logica di controllo e il display ed un pcb accessorio che contiene la parte di potenza che controlla le lampade.

Parte logica
parte di potenza. Attenzione! Questa parte è sottoposta a tensione di rete!

Per comodità non ho montato l’encoder sul PCB anche se c’è la possibilità di farlo, ma su uno spezzone di millefori in maniera da poterlo alloggiare più comodamente all’interno del mobile del bromografo.

Il circuito è molto semplice: la gestione del timer è affidata ad un PIC16F876A che utilizza il Timer1 come base dei tempi. Tutte le informazioni vengono riportate su un display alfanumerico classico da 16 caratteri x 2 righe compatibile HD44780. Le impostazioni vengono tutte eseguite tramite un encoder rotativo sfruttando anche il pulsante integrato. Un completa il tutto e segnala la fine del tempo di incisione.

Lo schema elettrico è stato disegnato con Circad, per cui se volete una stampa ottimale del PCB (il cui schema, in formato circad, è allegato nel download in fondo all’articolo), è necessario che eseguiate il download della versione demo di Circad dal sito ufficiale: www.holophase.com. Per eseguire il download di Circad è necessario eseguire una registrazione e rispondere a qualche domanda.

Schema elettrico del Timer per bromografo con LCD ed Encoder

Il timer ha un menù costituito da 4 voci numerate, la voce attualmente selezionata ha il numero che lampeggia, ruotando l’encoder è possibile selezionare le voci successive:

Il menù 1 permette di impostare il valore del timer: utilizzando l’encoder è possibile impostare il tempo da conteggiare. Questo tempo non sarà memorizzato nell’eeprom a meno di non tornare al menù principale ed eseguire la selezione 2 Memorizza dati. Il tempo memorizzato nell’eeprom viene sempre caricato all’avvio e mostrato sul display:

La selezione 3 Setta lati PCB serve per dire al pic quali lampade deve accedendere: se quelle inferiori (lato rame), quelle superiori (lato componenti) o entrambe:

Download

Vi prego di non utilizzare questo progetto per ripubblicarlo su altri siti anche dopo modifica. Il download contiene il codice sorgente in Hitech-C per pic 10/12/16, l’HEX già compilato, un PDF che illustra il funzionamento del circuito e il sorgente del PCB in formato circad.

Timer per Bromografo by Livio Dogliani (1789 download)

Se questo articolo ti è piaciuto, condividilo su un social:
Se l'articolo ti è piaciuto o ti è stato utile, potresti dedicare un minuto a leggere questa pagina, dove ho elencato alcune cose che potrebbero farmi contento? Grazie :)