Orologio con LCD e PIC 18F4620 v. 2.02

 

Riepilogo caratteristiche

 

Schema elettrico versione 2.02 (21/07/2012)

Questa versione implementa l'anti black-out ed ilcambio automatico ora legale estiva/invernale. Alcuni cenni sul circuito anti black-out.

Lo scopo è quello di alimentare correttamente l’orologio, informare il micro che è in corso un black-out ed avere una batteria di backup che consenta all’orologio di far funzionare le sveglie in caso di black-out.

Siamo giunti a questa conclusione:

E’ richiesto un alimentatore 12Vcc e, siccome non tutti gli alimentatori hanno un buon filtro, abbiamo inserito C1 da 1000uF con il suo condensatore anti-transitori da 0,1uF meglio se a disco (ceramico) oppure poliestere.

Il 7809 regolatore positivo, stabilizza la tensione a 9V, ma per via del diodo D1 questa tensione sale a 9,5~9,7V per due motivi, il primo serve a far funzionare l’”or” tra D2 e D3, poiché in presenza della tensione di rete, la tensione proveniente da D2 è superiore a quella proveniente da D3; secondo perché ci consente di ricaricare la batteria da 9V.

Per cui i diodi D2 e D3 fungono da interruttori per stabilire quale fonte di alimentazione alimenterà il 7805. In uscita dal 7805 è stato aggiunto un elettrolitico da 470uF 16V con il suo condensatore contro i transitori, con il fine di avere un’ottima tensione (+5V) ben stabilizzata.

I Diodi SB140 prodotti da Vishay sono della tipologia Schottky, a recupero veloce e con perdita di inserzione di circa 0,45V contro i 0,6~0,7V dei diodi al silicio tipo gli 1N4004.

La batteria consigliata è prodotta da Ansmann ed è da 250 o 300mA/h, siccome la batteria è collegata al circuito in modo permanente, abbiamo fissato la corrente di carica a circa 10mA.

Per cui il valore di Rx è 82 Ohm 1/2W

(Tensione sul negativo di D4 – Tensione di caduta diodo – Tensione batteria)/Rx

(9,7V-0,45V-8,4V)/82 = 0,85/82 = 10mA

In ultimo, il segnale che parte dal positivo di DZ1 da 5,1V serve per informare il micro che siamo passati dall’alimentazione di rete (inesauribile) alla batteria di backup a causa di un black-out. Per fare questo è stato collegato l’ingresso RE1 del micro ad un diodo zener da 5,1V (e relativa resistenza di caduta da 220 OHm) al negativo del diodo che protegge l’alimentazione di rete. Lo zener diventa necessario poiché l’ingresso digitale non supporta una tensione d’ingresso superiore a 5V.

Durante il black-out tutti i pulsanti vengono bloccati tranne PL1 e PL5 per la gestione delle sveglie e snooze.

Allo scoccare di ogni secondo, mentre il micro esegue altre funzioni, viene anche testata la presenza della tensione di alimentazione, se questa non è presente, siamo in fase di black-out  e funzionando a batteria occorre limitare al massimo i consumi; per cui un flag da zero passa a uno, viene disattivato il PWM che pilota la retroilluminazione dell’lcd ed il led di syncro 1Hz invece di lampeggiare ogni secondo, lampeggia ogni 5 secondi ad indicare che siamo in fase di black-out. Molti lcd anche in assenza della retroilluminazione riflettono i caratteri per cui se si è di giorno o in ambiente illuminato è possibile leggere l’ora.

Il flag sopra citato, se <>0 vuol dire che siamo in fase di backup, viene incrementato ogni secondo e quando vale 5 viene acceso il led 1Hz e viene reimpostato ad 1 per un nuovo ciclo.

 Al ritorno della tensione di rete, viene riattivato il PWM ed il ciclo normale.

 Prototipo dell'alimentatore anti black-out esterno poichè l'orologio è montato sul pcb della versione 2.0

Particolare dell'alimentatore e batteria 9V ni/mh

Prototipo del PCB

Render del prototipo (Non guardare le sigle dei componenti)


Analisi funzione cambio ora legale

L’ora legale inizia l’ultima domenica di marzo alle ore 2.00 di notte per cui quando scoccano le ore 2.00 si salta alle ore 3.00 cioè si aggiunge 1 ora passando da GMT+1 a GMT+2. (Si dorme un’ora in meno)

L’ora legale termina l’ultima domenica di ottobre alle ore 3.00 di notte per cui quando scoccano le ore 3.00 si ritorna alle ore 2.00 cioè si ripete l’ora passando da GMT+2 a GMT+1. (Si dorme un’ora in più)

Questa funzione è abbastanza delicata in quanto coinvolge più problematiche ad esempio:

Se una sveglia, l’ultima domenica di Marzo è impostata come orario di suonata nella fascia tra le ore 2.00 e le 2.59 durante il cambio dell’ora non suonerà mai.

Tutti i paesi europei hanno lo stesso fuso orario? (Inghilterra GMT=0 Italia GMT+1)

Ma… l’ultima domenica di ottobre alle ore 3.00, si torna indietro di un’ora per cui l’orologio viene reimpostato alle 2.00 cioè dopo 60 minuti ripresenterà nuovamente le 3.00 della notte… tornerà di nuovo indietro di un’ora?

Questi ed altri problemi hanno portato a delle decisioni che sono le seguenti e determinano il funzionamento del passaggio automatico dell’ora legale estiva e quella invernale e viceversa.

Funzionamento:

L’orologio cambia automaticamente l’ora impostata a prescindere dal fuso orario perché l’ora legale non ha relazione diretta con il fuso orario.

Una funzione verifica se il mese corrente è Marzo oppure Ottobre, se sì, verifica se il giorno è l’ultima domenica del mese con il criterio che il giorno deve essere >= di 25, se il giorno è corretto, viene verificato che sia di Domenica, se è corretto verifica se è Marzo, le ore siano le 2.00, se sì, l’ora viene incrementata di 1 e si passa alle 3.00. Lo stesso accade per il mese di Ottobre facendo attenzione che siano le ore 3.00, la prima volta che l’orologio riporta le ore 3.00 alle 2.00 imposta un flag che indica alla stessa funzione che l’ora è già stata cambiata, per cui la seconda volta che si ripresenteranno le 3.00 non vi sarà alcun cambiamento.

Problemi noti:

  • NON impostare le sveglie a cavallo del cambio dell’ora, se questo fosse necessario controllare l’orologio e reimpostarlo se necessario.


Chi ha già realizzato le versioni precedenti può scaricare gratuitamente il firmware e fare le modifiche sopra indicate:

File .HEX italiano per PIC 18F4620 versione 2.02 del 21/07/2012 Clock18F v2.02.rar (15k)

Datasheet batteria Ansmann 9V ni/mh Ansmann Batteria 9V.pdf (83k)

Datasheet diodo SB140 SB140 Vishay.pdf (78k)

Datasheet buzzer Sonitron Buzzer SMA.pdf (1,7Mb)

Datasheet pulsanti da pcb Pulsanti.pdf (300k)

Datasheet DS32KHz Dallas DS32kHz.pdf (400k)

Datasheet DS1306 Dallas DS1306.pdf (320k)

Datasheet 25LC640A Microchip 25LC640A.pdf (511k)

Datasheet display LCD bianco su fondo nero LCD 204A Series.pdf (519k)




Il contenuto di queste pagine è stato rilasciato per applicazioni didattiche SENZA fine di lucro. Per qualsiasi altro tipo di applicazione potete contattarmi via email.

The content of these pages was released for teaching applications WITHOUT end of I make money from. For any other type of application it be able to contact me via email.


© Copyright  tony@microt.it