Sommario:

DATA/OROLOGIO LCD Dimentica l'RTC: 9 passaggi
DATA/OROLOGIO LCD Dimentica l'RTC: 9 passaggi

Video: DATA/OROLOGIO LCD Dimentica l'RTC: 9 passaggi

Video: DATA/OROLOGIO LCD Dimentica l'RTC: 9 passaggi
Video: Arduino Data Logger Shield with RTC Time Stamp || Demo 1 of 4 || Hall effect door sensor 2024, Dicembre
Anonim
DATA/OROLOGIO LCD Dimentica l'RTC
DATA/OROLOGIO LCD Dimentica l'RTC

Un orologio logico quantistico NIST 2010 basato su un singolo ione di alluminio.

Nel 2010 un esperimento ha posizionato due orologi quantistici agli ioni di alluminio vicini l'uno all'altro, ma con il secondo elevato di 12 pollici (30,5 cm) rispetto al primo, rendendo visibile l'effetto di dilatazione del tempo gravitazionale nelle scale di laboratorio di tutti i giorni. Riprendendo così le teorie gravitazionali di Einstein. Gli orologi sono stati invertiti nelle posizioni e hanno mostrato gli stessi offset di tempo. Il ricercatore post-dottorato del NIST James Chin-wen Chou con l'orologio più preciso al mondo, basato sulle vibrazioni di un singolo ione di alluminio (atomo caricato elettricamente). Lo ione è intrappolato all'interno del cilindro metallico (centro destra). Dice "spento di 1 secondo in 3,7 miliardi di anni" … aspettiamo e vediamo!

SUPER DUPER WOW.

Quindi, usando le vibrazioni quantistiche che sono davvero veloci, pensi che più veloce sia meglio. Il chip 328 in Unos è abbastanza veloce a 16 mhz. Questo è molto più veloce del tipico cristallo dell'orologio (orologio) che è 32,768 khz. Questo è 500 volte più veloce! E il 328 ha un sensore di temperatura per compensare l'orologio.

Allora perché il 328 fuori non può preformare un cristallo di orologio pigro?

Passaggio 1: COSA ASPETTARSI

COSA ASPETTARSI
COSA ASPETTARSI

Questo è il mio secondo tentativo di creare un orologio usando SOLO il chip 328. Ogni 328 funziona in tempi diversi anche se ha un cristallo da 16 mhz. Quindi ottieni risultati scadenti solo contando millis(). Che funziona a 1.000 hz. Ciò rende la media di UN millis(1) con una precisione di circa +/- 3,6 secondi all'ora. I mulini Arduino() non contano i mulini di fazione o usano i float. Ciò rende impossibile il conteggio di frazioni di mulino. Quindi usare Arduino micros() è la scelta successiva. Ma l'uso di micros() si esaurisce in soli 71 minuti. (questo NON è davvero un problema). Il problema per me è gestire i grandi numeri e fare ripetute regolazioni in base all'ora del GPS. Un'altra scelta è un'interruzione. Questo conta i secondi indipendentemente da dove viene eseguito il codice all'interno del ciclo. Questo rende il 328 buono come un RTC. Anche se si considerano i granelli dei 'micros()', a +- 4 uS, questo risulta essere un clock a 250 khz. Questo è 7 volte meglio del 32.768khz.

Quindi ecco il mio orologio lcd Arduino basato su un timer a 16 bit, uno interrompe usando i microsecondi. Non è così buono come contare gli ioni di alluminio! Ma è facile e con alcune calibrazioni può essere buono come un RTC. Ho realizzato 3 versioni di questo orologio. Dalla connessione al computer usb. Da solo con 4 pulsanti. Al gps esterno con temperatura utilizzando un HC12. Questa istruzione coprirà i primi 2 orologi e ne scriverò un altro "in profondità" per l'HC12.

Vedi il mio altro istruibile sui problemi della gamma HC12.

Quello che puoi aspettarti è un semplice orologio/data lcd usando UNO e un lcd 16x2. Ho fatto alcuni numeri personalizzati per l'LCD. La libreria "BIG numbers" occupa 3 spazi, il mio solo 1. I 4 pulsanti hanno un pull up interno, quindi la costruzione è facile. Ho una custodia per questo e un 2 lcd e dorsi.

La biblioteca pubblica qui nella mia piccola città ha una stampante 3D che chiunque può usare. Quindi controlla una libreria vicino a te per realizzare la custodia lcd.

I miei test mostrano -+ secondi ogni 24-48 ore. È circa un minuto di pausa in due mesi. Tre o quattro regolazioni mettono il punto sull'orologio. Solo spento di circa 12 secondi prima del MESE. Tentativi ripetuti di "calibrare" le cuciture per inseguire solo i numeri. L'unica caratteristica BAD sta usando QUALSIASI 'menu' reimposta i secondi a 00. Questo cambia l'ora corrente. Ho lasciato un timeout di 60 secondi per la pressione del pulsante per consentire la sincronizzazione con un altro orologio.

Fase 2: I DADI E I BULLONI

I DADI E I BULLONI
I DADI E I BULLONI
I DADI E I BULLONI
I DADI E I BULLONI
I DADI E I BULLONI
I DADI E I BULLONI
I DADI E I BULLONI
I DADI E I BULLONI

Questo progetto è un orologio STAND ALONE senza RTC solo uno e lcd. I 4 pulsanti consentono di impostare ora/data, regolare il fuso orario e calibrare.

I file della stampante 3D hanno una custodia lcd uno e due per altri progetti.

L'LCD ha GRANDI NUMERI che occupano solo UNO spazio. Mi ci è voluto un po' di tempo per farlo

La custodia ha 8 fori per bottoni per altri progetti.

Basta collegare una verruca a muro 5v per l'alimentazione.

Controlla la tua BIBLIOTECA locale per l'uso di una stampante 3d !!

Passaggio 3: INFORMAZIONI SULLA COSTRUZIONE

SULLA COSTRUZIONE
SULLA COSTRUZIONE
SULLA COSTRUZIONE
SULLA COSTRUZIONE
SULLA COSTRUZIONE
SULLA COSTRUZIONE

Qualsiasi scheda Arduino con micro MEGA 328 dovrebbe funzionare. Ha bisogno di un cristallo da 16 mhz e deve funzionare a quella velocità. Un 3,3 volt a 8 mhz potrebbe non funzionare con i tempi di interruzione. Per la custodia un pro-mini si adatta meglio ma potresti spremere un nano ma il cavo USB potrebbe essere un problema. Questo è un lcd Hitachi 16x2, molto popolare. Alcuni pigri sono opachi e solo deboli. È necessario un connettore edge per adattarsi a un popolare modulo convertitore I2c. Sono necessari solo 4 fili per collegarsi all'uno. Ci sono molti tutorial per mostrare come collegare l'LCD senza un modulo convertitore se non ne vuoi uno. Per l'orologio senza pulsanti è tutto ciò che fai.

Il display LCD ha un carattere personalizzato GRANDE NUMERO. I grandi numeri occupano solo UNA larghezza.

Passaggio 4: 4 PULSANTI e CUSTODIA

4 PULSANTI e CUSTODIA
4 PULSANTI e CUSTODIA
4 PULSANTI e CUSTODIA
4 PULSANTI e CUSTODIA
4 PULSANTI e CUSTODIA
4 PULSANTI e CUSTODIA

Come sopra ma aggiungi i 4 interruttori. Per montare la custodia viene utilizzata una scheda PC standard da 2 pollici x 2,5 pollici. Basta tagliare a metà e installare gli interruttori in modo che le gambe vadano da sinistra a destra. Se metti gli interruttori con le gambe in alto, i fori non si allineeranno nella custodia. Verificare che si allineino ai fori della custodia PRIMA della saldatura. Metti a terra le gambe inferiori (tutte) e fai scorrere ciascuna gamba superiore su un perno sull'uno. Vedi schema allegato. Se stampi in 3D la custodia, la parte del pulsante deve essere INCOLLATA alla custodia lcd. NON si aggancia come fa il retro. Eventuali piccole viti autofilettanti manterranno l'affissione a cristalli liquidi in posizione. TROPPO grande e romperai il caso. La colla a caldo potrebbe essere la migliore. Prima di montare l'affissione a cristalli liquidi… annerire l'area del led con del nastro adesivo nero. Altrimenti brillerà attraverso il caso. Uso 2 nastri laterali in schiuma in 2 strati per montare il pro mini. Questo nastro è un affare nei "negozi di alberi del dollaro". Io uso filo magnetico rivestito solido di circa 26 gauge. Ho un ottimo istruttore su "un vaso di saldatura povero" per l'utilizzo di questo filo nei collegamenti.

Passaggio 5: IL LCD

IL LCD
IL LCD
IL LCD
IL LCD
IL LCD
IL LCD

problemi con l'affissione a cristalli liquidi

Una volta terminato con la build, scarica e installa lo sketch. L'LCD potrebbe non illuminare il display. Ecco alcuni suggerimenti. Il "led" lcd dovrebbe essere acceso e rendere lo schermo bluastro. Se nessun led controlla i pin del jumper di fronte al potenziometro del resistore. Questo richiede il ponticello o la resistenza da 150 ohm. La pentola blu è sempre il problema. Quindi gira la pentola finché il display non mostra 2 righe di quadrati. Quindi torna indietro fino a quando i quadrati non svaniscono a malapena. Se ancora non viene visualizzato, controllare le connessioni SDA e SCL. Troppo facile farli tornare indietro. Cioè da A4 a SDA e da A5 a SCL. Questi sono pin A non pin D e alcuni pro mini hanno questi pin all'interno del PC non sui bordi. L'ultima opzione è controllare l'indirizzo. Alcuni moduli convertitore lcd hanno indirizzi diversi. Oppure, utilizzando più di un dispositivo, tutti necessitano di indirizzi diversi. La maggior parte dei moduli ha 3 pin a saldare per impostare 3 indirizzi diversi. Ricorda che l'I2c esegue solo 2 fili su TUTTI i dispositivi. Quindi ogni dispositivo DEVE avere un indirizzo univoco. È incluso uno scanner di indirizzi I2c. Scarica l'installazione dello scanner e leggi il monitor seriale. Il display mostra l'indirizzo di QUALSIASI dispositivo I2c. Seleziona Lo schizzo dell'orologio per la linea nella parte superiore dello schizzo. 'LiquidCrystal_I2C lcd(0x3F, 16, 2); ' 0x3F è l'indirizzo corretto per il mio convertitore. Se il tuo indirizzo è diverso, cambia con quello corretto dallo scanner. Attenzione: copia e incolla il nuovo indirizzo a volte include fine riga o ritorni a capo. Digita semplicemente nell'altro indirizzo. Le prime lettere sono sempre zero e minuscole x 0x. Questo dice a C++ che è un esadecimale. Dopo 0x ogni lettera è maiuscola.

Passaggio 6: COLLEGAMENTI

COLLEGAMENTI
COLLEGAMENTI
COLLEGAMENTI
COLLEGAMENTI
COLLEGAMENTI
COLLEGAMENTI

seguire lo schema e collegare l'unità.

Passaggio 7: ALTRE FOTO

ALTRE FOTO
ALTRE FOTO
ALTRE FOTO
ALTRE FOTO
ALTRE FOTO
ALTRE FOTO

buona fortuna, PER FAVORE, guarda gli altri miei istruttori

Fase 8: LO SCHIZZO

Gli istruibili non mi fanno scaricare un file Arduino !!!! quindi ho usato il testo. Dovrai copiare e incollare il testo in un NUOVO file aperto di arduino nell'IDE……. SPIACENTE

e nemmeno i file di testo verranno caricati !!! e ho provato ad incollare qui ma l'ho confuso!!

finalmente !!! ho il mio schizzo da scaricare qui. 2020-03-26 Risolte anche alcune cose minori.

Le persone che vengono pagate per scrivere codice rotolano a terra quando vedono il mio codice. I miei schizzi di solito iniziano in modo semplice. Poi aggiungo altre cose da fare. Quindi lo schizzo viene distorto in un pasticcio. Spero che tu impari dai miei due più grandi errori. All'inizio dovrebbero esserci uno schema e un obiettivo definiti. Non aggiungere tonnellate di cose durante lo schizzo. Il mio peggior errore è abusare di una FUNZIONE. Dovrebbe essere breve e restituire una somma e utilizzato solo quando sostituisce righe di codice ripetute in tutto lo schizzo. delay(100) è un buon esempio.

Il mio uso di una FUNZIONE è separare le sezioni dello schizzo. Questo rende il corpo principale facile da seguire e mi consente di eseguire il debug di sezioni separate semplicemente chiamando la funzione. Penso che GOTO lo facesse ma è caduto in disgrazia e non si abitua MAI. Niente ha detto. Ho controllato le date e gli orari nel miglior modo possibile. Le stesse parti dello schizzo fanno funzionare i miei orologi 'TIME SQUARED' da anni. Se mi sono perso qualcosa o c'è un bug per favore fatemelo sapere. Per calibrare lo schizzo 'senza bottoni' la linea con 'unsigned long tSec = 1000122; ' (linea 34) è ciò che cambi. La costante di 277 al secondo all'ora è corretta. Ma in pratica faccio solo da 2 a 8 modifiche di importo al valore 'tSec'. A 1000122 molti dei miei orologi funzionavano come un RTC. Abbi pazienza, un piccolo cambiamento di solo 2-8 può diventare un orologio perfetto. Il lato negativo di qualsiasi modifica per entrambi gli orologi significa che l'ora corrente verrà modificata. Sarà necessario modificare l'ora/la data correnti corrette.

//// easy_one_lcd_clock_no_buttons // // arduino e lcd clock // usa il timer timerOne a 16 bit // per calibrare questo orologio: // usa un buon orologio dei secondi come un GPS. // usa le ore come riferimento. Conta i secondi // QUESTO è disattivato. Se QUESTO è dietro un GPS // GPS=00.. QUESTO=58 SOTTRAI 277 per ogni // secondo/ore. Quindi se più lento di 2 secondi in // 3 ore… (277 * 2)/3 = 184 // SOTTRAI da tSec. // se QUESTO è avanti GPS=00…QUESTO=03 // stessa matematica basta AGGIUNGERE a tSec. // attenzione, la maggior parte degli orologi è corretta a 00. // 20 sec è un controllo del timer migliore.

Passaggio 9: file STL CASE

Ecco i file del caso della stampante 3D. La tastiera deve essere incollata alla custodia lcd. La parte posteriore si aggancia sia alla parte anteriore della custodia a uno e due lcd. Aggancia prima la parte superiore e poi scendi per ottenere una buona vestibilità.

CONSULTA la tua BIBLIOTECA locale per l'uso di una stampante 3D.

Consigliato: