Sommario:
- Passaggio 1: riparazione, primo passaggio
- Passaggio 2: risoluzione del problema successivo
- Passaggio 3: risoluzione dell'ultimo problema
- Passaggio 4: schizzo Arduino
- Passaggio 5: programmazione dell'ESP-03 e conclusioni
Video: NON PIU' PRIMAVERA IN AVANTI: 5 Passi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Titolo alternativo: IP Time Clock parte 3
Se ti piace, lo sto partecipando al concorso Orologio.
Sei stanco di dover scattare in avanti?
Sei stanco di dover ricadere?
Bene, lo sono. Ho questa vecchia sveglia che ha risolto questo problema (per un po') (vedi immagine) si regolerebbe automaticamente per l'ora legale e (credo) ha la batteria di riserva in caso di interruzione dell'alimentazione. Sfortunatamente, diversi anni fa, gli Stati Uniti hanno deciso di cambiare i giorni per cambiare l'ora. Quindi ora questo orologio deve essere cambiato manualmente quattro volte all'anno! Lo uso solo come backup.
Quindi questo Lazy Old Geek (LOG) voleva l'orologio perfetto. Ognuno è diverso e i tempi cambiano (Ha!Ha!) e gli ideali cambiano. Ecco il mio orologio da camera ideale.
Sempre visibile di notte. AVVISO: Nessun secondo lampeggiante di notte, è troppo distratto.
DST automatico (ora legale). Odio dover cambiare l'ora due volte l'anno.
Visualizza il giorno della settimana. Dato che sono VECCHIA e non ricordo.
Quindi mi piacciono i secondi al mattino L'annuncio dice gargarismi per 30 secondi, quindi mi piace un orologio che mostra i secondi.
Nessuna luce blu. Sappiamo tutti che la luce blu fa male. Non sempre vero, vedi questo:
www.instructables.com/id/Blue-Light-Proje…
Ok, è piuttosto semplice. Molti orologi sono visibili di notte e molti non sono blu. Alcuni sono orologi "atomici" che si adattano all'ora legale. In realtà alcuni dei miei orologi "atomici" devo giocherellare con i cambi di ora legale.
Ora la situazione dei secondi è più specifica. In realtà ho progettato il mio per farlo in questo Instructable (anche se ho notato che non l'ho spiegato molto bene):
www.instructables.com/id/IP-Time-Clock-Par…
Questo orologio è durato circa quattro anni, relativamente esente da manutenzione fino a un paio di mesi fa, quando ha smesso di funzionare.
Passaggio 1: riparazione, primo passaggio
Schermata blu della morte, orologio IP (in realtà è nero).
Tecnobabble:
Una breve descrizione dell'orologio IP. Utilizza un microcontrollore ESP-03, questo si connette a Internet con WiFi. Ho saldato due strisce di intestazione maschio da 2 mm sull'ESP-03 in modo che si inserisca in una presa sul PCB.
Utilizza due display a sette cifre a 3 segmenti come:
Non ricordo se questi fossero catodo o anodo comune.
Un Max7219 per pilotare i display e i singoli led per i giorni della settimana.
Per maggiori dettagli, guarda il mio orologio IP parte 2 Instructable.
Bene, la prima cosa che ho provato è stata riprogrammare l'ESP-03 (microcontrollore), quindi ho guardato il mio Instructable e ho provato ma non mi ha permesso di programmarlo.
STORIA IRRILEVANTE: Ok, sono un VECCHIO quindi la mia mente vaga. Uno dei motivi per cui sono entrato in Instructables.com era che aveva ottimi Instructables su Arduino. È stato uno dei motivi principali per cui sono entrato in Arduino e ho imparato a usarli. Gli scrittori istruibili sono a tutti i livelli e abilità diversi, ma spesso riesco a trovarne alcuni che sono a un livello che posso capire. Quindi grazie Instructables per avermi aiutato nel corso degli anni.
Per ricambiare il favore, scrivo Instructables che spero possa aiutare gli altri.
Una seconda ragione per cui scrivo Instructables è per aiutarmi a ricordare come ho realizzato i progetti. Mentre scrivo Instructables cerco di fornire tutti i dettagli per fare quello che ho fatto. A quanto pare non faccio sempre un buon lavoro.
Ok, ho messo l'orologio IP in secondo piano.
La mia teoria è che più luce blu mi ha dato più energia (vedi sopra blueproject Instructable) e mi sono concentrato per rivisitare questo problema. Quello che alla fine ho capito è che il metodo che stavo usando per programmare ESP-03 non funzionava più. L'ho scritto in un altro Instructable:
www.instructables.com/id/2020-ESP8266/
Problema 1 risolto, ora posso programmare ESP-03 con schizzi Arduino.
Passaggio 2: risoluzione del problema successivo
Bene, ho programmato un ESP-03 con il mio vecchio sketch Arduino, l'ho inserito nel mio orologio IP, ancora non ha funzionato. Nel modo in cui avevo scritto lo schizzo, non veniva visualizzato nulla fino a quando non veniva stabilita una connessione a Internet e al server NTP (che fornisce l'ora esatta su Internet), quindi avevo uno schermo vuoto.
Usando il monitor seriale Arduino, ho potuto vedere che non si stava connettendo al server NTP.
NOTA: ESP-03 utilizza un microcontrollore ESP8266. Una delle cose belle dell'ESP8266 è che ha il WiFi integrato. In termini tecnici può connettersi a un hotspot WiFi o router WiFi che hanno molte case, inclusa la mia.
Diventando piuttosto tecnico qui, i nuovi router WiFi hanno due larghezze di banda, 2,4 GHz e 5,0 GHz. (Vedi immagine per il mio router) Mi piace pensare a loro come la differenza tra la radio AM e FM. (Ricordate quelli?)
Una limitazione di ESP8266 è che utilizzano solo la larghezza di banda di 2,4 GHz.
Roba più tecnica, quando ti connetti al WiFi hai bisogno di un identificatore chiamato SSID. È come una singola stazione radio, K Earth 101. E per motivi di sicurezza, hai anche bisogno di una password.
Bene, molti router WiFi dual band (2,4 GHz e 5 GHz) utilizzano lo stesso SSID per entrambe le bande.
Ad ogni modo, per qualche motivo, non sono riuscito a connettere un ESP-03 con il mio router. Mi sembra di ricordare altre persone che hanno avuto problemi simili.
In conclusione: ho configurato un altro router con SSID separati per la banda da 2,4 e 5 GHz, ad esempio "mtslink24" e "mtslink50" ed ero in grado di parlare su Internet. (Vedi immagine)
ATTENZIONE: se si dispone di un router dual band con gli stessi SSID su entrambe le bande, potrebbe non funzionare con gli ESP8266.
Passaggio 3: risoluzione dell'ultimo problema
Quello che vedevo era che non riuscivo ancora a connettermi al server NTP. Ho trovato un altro schizzo per vedere se ero in grado di usare Internet e funzionava, quindi il problema successivo sembrava essere la connessione al server NTP.
Bene, nel mio schizzo originale, ho usato un indirizzo IP per connettermi a un server NTP:
tf.nist.gov/tf-cgi/servers.cgi
Quindi ho provato diversi IP di Boulder e FT. Collins che sono molto più vicini a dove mi trovo. Nessuno di loro ha funzionato. Ha giocato un po' e in realtà ha fatto funzionare uno schizzo globale, ma si sarebbe bloccato solo forse una volta su cinque. Ho fatto qualche altra ricerca e ho trovato qualcosa chiamato pool.ntp.org. Apparentemente ciò che fa è ruotare attraverso un gruppo di indirizzi IP in modo che nessun singolo indirizzo venga sovraccaricato e tutti dovrebbero essere attivi.
Beh, non capisco molto bene questa programmazione WiFi, ma sono riuscito a trovare un esempio che avrei potuto adattare al mio schizzo e farlo funzionare. Yippee!
Passaggio 4: schizzo Arduino
In allegato è il mio schizzo di lavoro, Special.ino
Ecco alcuni commenti a riguardo:
Qui è dove inserisci il tuo SSID e la password. (Deve essere 2,4 GHz.)
char ssid = "YourSSID"; // SSID di rete (nome)
char pass = "La tua password SSID"; // password di rete
Utilizzo dell'elenco dei server pool.ntp.org.
IPAddress timeServerIP; // indirizzo del server NTP time.nist.gov
const char* ntpServerName = "pool.ntp.org";
//ricevo un server casuale dal pool WiFi.hostByName(ntpServerName, timeServerIP);
Due funzioni dell'ora legale:
void findChangeDates(); // Trova le date di cambio primavera/autunno
bool IsDST(); // Controlla se è DST
findChangeDates(); prende l'anno in corso e calcola quali giorni di marzo e novembre sono le date di passaggio
bool IsDST(); determina se il giorno corrente è l'ora legale o meno
void digitalOrologioDisplay()
Beh, sfortunatamente il mio vecchio cervello non riesce più a capirlo. Quello che penso che faccia è spegnere il display dei secondi dopo le 21:00. e li riaccende verso le 5 del mattino. Trovo molto fastidioso guardare un orologio quando sono a letto e vedere scorrere i secondi. Ma quando mi alzo la mattina mi piace vedere i secondi così posso "calcolare" i miei gargarismi.
Passaggio 5: programmazione dell'ESP-03 e conclusioni
Attualmente sto usando Arduino versione 1.8.12.
Il modo più semplice per installare il materiale ESP8266 è utilizzare Board Manager utilizzando questo metodo:
github.com/esp8266/Arduino#installing-with…
Una volta installato, quando seleziono Board, seleziono "Generic ESP8266 module".
ATTENZIONE: Sul mio PC sono presenti due versioni del “Modulo generico ESP8266”. Quello sotto la categoria "Schede ESP8266" funziona, quello sotto Sparkfun no.
Beh, sono pigro. Quello che ho effettivamente fatto è stato prendere un ESP-03 e programmarlo nel mio adattatore ESP modificato da:
www.instructables.com/id/2020-ESP8266/
Quello che avrei potuto fare è modificare il mio PCB IP Clock 2 secondo questo schema aggiungendo solo un paio di ponticelli.
Inoltre, ho modificato un adattatore USB CP2102 per collegare RTS al pin accanto a GND.
Con queste modifiche, è come caricare un normale schizzo Arduino senza dover premere alcun pulsante.
CONCLUSIONI: Beh, mi piace il mio orologio IP. Risponde a tutti i miei criteri. Nonostante ciò che mostra l'immagine, i LED sono rossi, non bianchi, quindi niente blu.
Consigliato:
Coltivare più lattuga in meno spazio o Coltivare lattuga nello spazio, (più o meno).: 10 Passaggi
Coltivare più lattuga in meno spazio o… Coltivare lattuga nello spazio, (più o meno): questa è una presentazione professionale al concorso Growing Beyond Earth, Maker, presentata tramite Instructables. Non potrei essere più entusiasta di progettare per la produzione di colture spaziali e di pubblicare il mio primo Instructable. Per iniziare, il concorso ci ha chiesto di
Utilizzo di più di 4 motori - Sovrapposizione di più paramotori: 3 passaggi
Utilizzo di più di 4 motori - Accatastamento di più schermi motore: dispositivo di sostituzione e potenziamento sensoriale vibrotattile instructable (https://www.instructables.com/id/Vibrotactile-Sens…) mostra un modo per costruire un dispositivo che traduce un sensoriale input in stimoli vibratori. Quegli stimoli vibratori sono p
Più sicuro meglio: rendere le stazioni ferroviarie più sicure: 7 passaggi
Più sicuro Meglio: rendere le stazioni ferroviarie più sicure: molte stazioni ferroviarie oggi non sono sicure a causa della mancanza di sicurezza, delle barriere e dell'avvertimento del treno in arrivo. Abbiamo visto la necessità di risolvere il problema. Per risolvere questo problema abbiamo creato Safer Better. Abbiamo usato sensori di vibrazione, sensori di movimento e
Pike - Guida in modo più sicuro, guida in modo più intelligente, guida una picca!: 5 passaggi
Pike - Guida in modo più sicuro, guida in modo più intelligente, guida un luccio!: Benvenuto nel mio progetto chiamato Pike! Questo è un progetto che fa parte della mia formazione. Sono uno studente NMCT a Howest in Belgio. L'obiettivo era creare qualcosa di intelligente utilizzando un Raspberry Pi. Avevamo una completa libertà in cui volevamo rendere intelligenti. Per me è stato
Arduino più economico -- Arduino più piccolo -- Arduino Pro Mini -- Programmazione -- Arduino Neno: 6 passaggi (con immagini)
Arduino più economico || Arduino più piccolo || Arduino Pro Mini || Programmazione || Arduino Neno:……………………………. ISCRIVITI al mio canale YouTube per altri video……. .Questo progetto riguarda come interfacciare un arduino più piccolo ed economico di sempre. L'arduino più piccolo ed economico è arduino pro mini. È simile ad arduino