Ciao a tutti,
ho acquistato su Ebay un RTC, per l'esattezza questo
Il progetto al quale sto lavorando prevede che arduino dia l'ok ad un rele che alle 8.00 ogni sera fa andare una pompa per annaffiare..
Ma mi trovo che l'RTC perde costantemente una decina di secondi al giorno, che in sei mesi fa circa mezzora....
Tra le altre cose il collegamento è stato difficile.. (a volte andava a volte no..)
Avete qualche idea di come poter migliorare la cosa?
E' rotto il mio RTC o qualcuno di voi ha sperimentato lo stesso problema?
Si può correggere ogni giorno l'ora? Magari verificandone lo scostamento rispetto ai millis() di arduino, ma non so quanto precisa sia questa funzione... (l'idea è di lasciare sempre arduino alimentato, preservandolo solo dalle perdite estemporanee di corrente)
Purtroppo le schedine con il DS1307 non sono dei mostri di precisione.
Il tuo va' un po' peggio della media ( circa 3/5 sec al giorno ) e dipende dalla qualita' del quarzo e dalla temperatura d'uso.
A meno che tu non abbia anche un collegamento internet, con cui potresti regolare l'ora in NTP , l'unica soluzione e' quella di reimpostare l'ora periodicamente
maniiu:
Si può correggere ogni giorno l'ora? Magari verificandone lo scostamento rispetto ai millis() di arduino, ma non so quanto precisa sia questa funzione... (l'idea è di lasciare sempre arduino alimentato, preservandolo solo dalle perdite estemporanee di corrente)
Peggio!
L'Arduino UNO usa un risonatore ceramico che ha un'imprecisione maggiore di diversi ordini di grandezza. Se vuoi accuratezza ma non hai modo di aggiornare l'ora in automatico ti serve un RTC compensato in temperatura come quello suggerito da Guglielmo.
Penso che la imprecisione non sia grave per l' uso che fai. Le piante mica stanno lí col cronometro in mano ad aspettare che vengano inaffiate.
Un segnale di tempo preciso puoi ricavare da un ricvitore GPS, GSM, WiFi (e internet e server NTS), segnale RDS della radio a onde ultracorte, segnale DCF77, dal Tuo PC...
Grazia a tutti..
Almeno l'imprecisione sembra non dipendere da miei errori
Che delusione però..
Allora procederò in questo modo..
Metto un bel lcd che mi visualizzi l'ora ed un pulsantino che mi fa andare avanti di un minuto l'ora impostata.. così mi rendo indipendente dal pc., quando vedo che la differenza è esagerata (oltre il limite di sopportazione delle piante )
Cosa ne pensate?
Secondo voi è possibile alimentare l'lcd dai pin digitali? Così passati 30 secondi si può spegnere..
Ho trovato due tastini.. Pensavo di gestili così
uno come un "menu/avanti": se premuto accende l'lcd, se premuto per cinque secondi entra nelle impostazioni, poi va avanti nei menu, e sul settaggio ora.
l'altro come "indietro/salva": se premuto per cinque secondi salva le impostazioni, altrimenti torna indietro nei menu e sul settaggio dell'ora
O mixando meglio i due..
Secondo voi è possibile alimentare l'lcd dai pin digitali? Così passati 30 secondi si può spegnere..
Cattiva idea. Pilota l'alimentazione con un semplice transistor collegato ad un pin.
Ho trovato due tastini.. Pensavo di gestili così
uno come un "menu/avanti": se premuto accende l'lcd, se premuto per cinque secondi entra nelle impostazioni, poi va avanti nei menu, e sul settaggio ora.
l'altro come "indietro/salva": se premuto per cinque secondi salva le impostazioni, altrimenti torna indietro nei menu e sul settaggio dell'ora
O mixando meglio i due..
Vi tengo aggiornati
Fattibilissimo. Su un vecchio progettino che ho realizzato (Micrologio) addirittura ho usato un solo pulsante per programmare l'ora e la data nonché le impostazioni dello stesso orologio
Ciao ancora,
allego lo schema del circuito.. (non ho riportato il carico sul rele)
Ho fatto errori?
(considerate il collegamento al pin 0 ed al pin 1 come una cosa di comodo.. in realtà non li collegherò a questi pin!)
Grazie ragazzi
dubbio amletico..
Per comandare il relè uso un transistor Tip121 che avevo disponibile, è che ho calcolato andare bene..
ne ho un altro, secondo voi è adatto anche per alimentare il display attraverso un pin digitale ed i 5v? La resistenza in serie alla base di 1000 ohm dovrebbe andare bene... ?
Secondo me è sovradimensionato ma va bene. La retroilluminazione di un LCD sarà sul centinaio di mA, 200 mA sui modelli più esosi come il mio 20x4 ( ]:D), molti meno sui 16x2 più piccoli e recenti. Controlla sul datasheet del tuo modello, casomai, e se ce l'hai in casa puoi usare un BC337 o un 2N2222. Ma anche un BC547 se stai sotto ai 100 mA.
La resistenza sulla base andrebbe calcolata sul consumo del display ma diciamo che in linea di max 1K va bene.
Bruciato Arduino!!!
Il led sul pin 13 sempre acceso, il pc non riconosce la connessione usb...credo di poterla incorniciare...
Qualcosa ho sbagliato.. inoltre mi ero accorto (prima di rompere tutto) che lo schema sopra non andava bene (emettitore collegato a +5V invece che a terra)..
Avrò fatto qualche corto...
Ho ordinato un'altra scheda.. ma prima di rompere anche questa, sareste tanto gentili da darmim il vostro giudizio sullo schema (che riallego corretto)..
ahah
si hai ragione.. ma non avevo spazio.. considera i contatti sempre alla fine delle linee:
se la linea rossa finisce sul 5V è connesso ai 5v se finisce sui 12V è connessa ai 12V.
Di fatto ai 12V non è collegato nulla nello schema sopra..
Ma mi trovo che l'RTC perde costantemente una decina di secondi al giorno, che in sei mesi fa circa mezzora....
Tra le altre cose il collegamento è stato difficile.. (a volte andava a volte no..)
Potresti provare a modificare il valore dei condensatori (dovrebbero essere i condensatori C1 e C2).
Il datasheet del 1307 parla di una precisione relativa di 1 minuto/mese (2 s/giorno):
The frequency accuracy of a crystal-based oscillator circuit is mainly dependent upon the accuracy of the
crystal and the accuracy of the match between the crystal and the oscillator capacitive load. If the
capacitive load is less than the crystal was designed for, the oscillator runs fast. If the capacitive load is
greater than what the crystal was designed for, the oscillator runs slow.
Quindi per rimediare ad errori nell'accoppiamento (l'orologio va avanti, vero?) occorre aumentare la capacità di carico già presente nell'IC.
Questo si traduce nel mettere due condensatori in parallelo a quelli già presenti con un capo a massa e l'altro sui due capi del quarzo (il più vicino possibile a quarzo stesso).
Direi che 10 pF (o meno) possono andare bene: se fossero troppi (l'orologio rimane indietro) diminuisci a 4,7 pF.