Sommario:

Sveglia luminosa fai-da-te: 7 passaggi
Sveglia luminosa fai-da-te: 7 passaggi

Video: Sveglia luminosa fai-da-te: 7 passaggi

Video: Sveglia luminosa fai-da-te: 7 passaggi
Video: 10 SEGRETI DA ELETTRICISTA 2024, Dicembre
Anonim
Sveglia leggera fai-da-te
Sveglia leggera fai-da-te
Sveglia leggera fai-da-te
Sveglia leggera fai-da-te
Sveglia leggera fai-da-te
Sveglia leggera fai-da-te

Hai mai desiderato provare una di quelle sveglie fantasiose che imitano l'alba per svegliarti? Vuoi aggiungere delle luci colorate alla tua stanza? Vuoi controllare tutto da qualsiasi dispositivo dotato di browser internet? Quindi dai un'occhiata a questa sveglia che ho realizzato utilizzando ciò che ho imparato costruendo la mia mangiatoia automatica per pesci.

Lo scopo principale dell'allarme luminoso è assicurarsi che ci sia luce nella mia stanza quando mi sveglio, specialmente in inverno quando di solito è ancora buio. La luce si attenua per un periodo di tempo predeterminato che termina con la massima luminosità all'ora impostata per la sveglia. Ma questa è solo la prima modalità, ci sono altre 7 modalità di illuminazione con cui giocare!

L'allarme luminoso è controllato tramite una pagina HTML ospitata sulla scheda ESP-8266-12e. È possibile accedervi dalla rete domestica o essere configurato per l'accesso da qualsiasi luogo su Internet con il port forwarding.

Fase 1: Materiali:

  • Scheda ESP-8266-12e (NodeMCU)
  • Ultimo Arduino IDE
  • Librerie necessarie per il codice installato
  • Notepad++ (per modificare l'HTML se lo desideri)
  • Browser (ho usato chrome, ma qualsiasi dovrebbe funzionare, soprattutto se ti fa vedere il codice html funzionante)
  • Stampante 3D con un'area di costruzione di almeno 150 mm x 150 mm
  • Filamento di plastica bianco o trasparente (per l'ombra, il supporto può essere di qualsiasi colore tu abbia)
  • Display a 4 cifre a 7 segmenti con chip TM1637, io ho usato uno di questi
  • Striscia LED RGBW indirizzabile da 1 metro, sk6812. La mia striscia ha 60 LED/metro, ma non è più venduta. Il codice arduino è impostato per RGBW, quindi dovrai riscriverlo se vuoi usare una striscia RGB. Consiglierei una striscia con almeno 60 LED.
  • SE la striscia non ha un supporto adesivo: scotch e super colla
  • Protoboard per montare la scheda
  • Cavo 24AWG (consiglio più colori)
  • Almeno 6 piedi di cavo per l'alimentazione. Ti consiglio di usare qualunque cosa il tuo negozio di ferramenta locale vende per le lampade da tavolo.
  • Alimentatore 5V, ho usato questo
  • Non dimenticare gli adattatori per l'alimentazione
  • Saldatore
  • Cavo USB per programmare la scheda
  • colla calda
  • Pin dell'intestazione (maschio e femmina)
  • Pazienza

Passaggio 2: Programmazione della scheda

La scheda avrà due serie di codice, il normale codice arduino che viene eseguito e il codice HTML che invia al tuo browser. Carichi il codice Arduino come faresti con qualsiasi altra scheda. L'HTML, tuttavia, richiede un plug-in da caricare nella memoria SPIFF sulla scheda.

Per un tutorial su come utilizzare gli SPIFF, vedere

Per come caricare il codice HTML, vedere https://www.esp8266.com/viewtopic.php?f=32&t=10081, sarà necessario installare un plugin su arduino per farlo.

L'HTML deve essere salvato in una cartella nella cartella del progetto arduino chiamata semplicemente "dati".

Il caricamento dell'HTML richiede un paio di minuti, sono riuscito a giocare una o due gare online in Mario Kart 8 mentre aspettavo. Per questo motivo, se stai apportando modifiche all'HTML, usa notepad ++ per modificare e rilasciare il file in un browser come Chrome per testarlo.

Passaggio 3: come funziona il codice

Come funziona il codice
Come funziona il codice
Come funziona il codice
Come funziona il codice

Il codice in questo progetto è separato in due file: il codice eseguito dalla scheda e l'HTML archiviato nella memoria della scheda che invia al browser quando si naviga nella pagina web.

Quando colleghi la scheda all'alimentazione, il codice della scheda inizia, come qualsiasi arduino. Si connette al WiFi di casa e quindi contatta un server NIST per ottenere l'ora corrente per impostare l'orologio interno. Dopo che l'orologio è stato impostato, il server web si avvia e puoi connetterti tramite il tuo browser preferito.

Devi connetterti tramite l'indirizzo IP della scheda, quindi assicurati di riservare un IP statico sul tuo router. Ho cambiato anche la porta della mia lampada, quindi per connettermi navigo su 192.168.0.170:301/. Se vuoi connetterti alla tua lampada da qualsiasi parte del mondo, dovrai configurare il port forwarding sul tuo router. Dovrai quindi connetterti all'indirizzo IP che vedi quando ti connetti a https://www.whatsmyip.org/ e alla porta su cui hai impostato l'IP locale della lampada.

Una volta connesso, la scheda invia il file HTML al tuo browser, che lo decodifica e visualizza la pagina. Le modifiche apportate non influiscono sulla scacchiera finché non si preme uno dei pulsanti. sulla pagina web. Quando premi un pulsante, il tuo browser invia un modulo html alla scheda con le impostazioni correnti e la scheda adotta tali impostazioni e imposta i display.

Le impostazioni sono abbastanza semplici. La pagina si adatta alla larghezza del tuo browser e ha un aspetto leggermente migliore sui dispositivi mobili. Per cambiare l'aspetto della pagina delle impostazioni dovrai modificare l'HTML e ci sono molti altri tutorial online per questo. Dato che era la prima volta che usavo HTML, ho imparato principalmente usando

Quando la pagina viene caricata vedrai quattro pulsanti, un cursore e un menu a discesa. Il pulsante in alto è il pulsante principale "enter" o "engage". I due pulsanti successivi alternano la visualizzazione dell'ora digitale e se visualizza l'ora nel formato 12 o 24 ore. Il dispositivo di scorrimento controlla la luminosità dell'orologio digitale e viene aggiornata ogni volta che si attiva la modalità di visualizzazione o si accende l'orologio. L'ultimo pulsante dovrebbe spegnere tutte le luci, ma per qualche motivo non funziona con questa versione del codice. Invece, premendo il pulsante "Engage" senza alcuna impostazione selezionata, le luci si spengono.

Il menu a discesa contiene 7 modalità di sistema, selezionandone una verranno visualizzate le impostazioni necessarie di seguito.

  • Modalità 1: Allarme. Immettere il tempo in cui si desidera che la luce raggiunga la massima luminosità e per quanto tempo si desidera che la dissolvenza in apertura sia in minuti interi. L'impostazione predefinita è 6:00:00 e 15 minuti. La luce rimarrà alla massima luminosità per lo stesso tempo in cui si attenua prima di spegnersi automaticamente. L'impostazione predefinita può essere modificata nel codice HTML.
  • Modalità 2: Orologio analogico. Scegli tre colori per rappresentare le lancette delle ore, dei minuti e dei secondi su un orologio analogico. Un cursore sopra i tre selettori di colore inserirà automaticamente i colori freddi o caldi preimpostati se impostati rispettivamente a sinistra oa destra. Se il dispositivo di scorrimento è impostato a sinistra oa destra, quindi riportato al centro, i selettori di colore sono tutti impostati su nero (0, 0, 0, 0) [R, G, B, W]. Quando un colore tutto zero viene inviato al tabellone, viene randomizzato. *Ciò potrebbe far lampeggiare eccessivamente le luci.* Se si desidera che una luce rimanga spenta, l'impostazione di qualsiasi valore su 1 risulterà in "nero" (tutti i valori predefiniti sono 1 (01, 01, 01, 01) quando i selettori di colore sono inizializzato). Il selettore colore e gli slider RGB sono collegati, mentre il cursore W è indipendente.
  • Modalità 3: Colore. Scegli un colore su cui impostare le luci. Questo rimarrà fino a quando non verrà modificato dall'utente.
  • Modalità 4: Ciclo colore. Scegli tre colori da scorrere e inserisci il tempo per mantenere ogni colore. Gli stessi metodi si applicano alla selezione dei colori come in Modalità 2. I colori casuali funzionano meglio con questa modalità.
  • Modalità 5: Cilindro colore. Scegli tre colori (uguali al precedente) e il numero di giri del cilindro. Le luci verranno visualizzate come un motivo di strisce che ruotano attorno all'asse. al numero di giri che hai scelto. L'RPM predefinito è 60 o 1 giro/sec. I colori casuali possono provocare luci lampeggianti!
  • Modalità 6: Vortice di colori. Imposta tre colori e l'RPM. Questa modalità non è perfetta, ma l'idea è che le luci girino intorno all'orologio. C'è una casualità incorporata, quindi è meglio usare semplicemente il cursore della temperatura per scegliere se il vortice inizia caldo o freddo.
  • Modalità 7: Arcobaleno. Imposta la velocità del ciclo, l'RPM è abbastanza inutile qui. Questo era un esempio prefabbricato dalla Neopixel Library con alcune modifiche per consentire alla scheda di rispondere ancora agli input dell'utente.

Una volta scelte le impostazioni, la pressione di un pulsante qualsiasi invierà un modulo HTML alla scheda, che utilizza i valori nel modulo per modificare le impostazioni di visualizzazione. Il pulsante "Engage" invia tutte le impostazioni, mentre i due pulsanti dell'orologio inviano solo la luminosità dell'orologio. Il pulsante "off" dovrebbe semplicemente spegnere la striscia LED, tuttavia c'è un bug che ne impedisce il funzionamento. Invece, premere "Attiva" senza modificare alcuna impostazione sembra funzionare. Una volta che la scheda ha analizzato le impostazioni, reindirizza il browser alla pagina HTML iniziale.

Nota: l'impostazione dell'ora della sveglia cambia la modalità del sistema su 1, che interromperà qualsiasi modalità precedentemente in esecuzione e ripristinerà tutte le impostazioni. Tuttavia, l'avvio di una modalità diversa dopo aver impostato l'ora della sveglia non cambia l'ora impostata, quindi è possibile impostare la sveglia e quindi avviare una nuova modalità. Se la nuova modalità non viene disattivata prima che l'allarme inizi a svanire nella luce bianca, ciò può causare il lampeggio. Per evitare ciò, la scheda è codificata per spegnere tutte le luci e impostare la modalità di sistema su 1 (allarme) alle 2 del mattino senza modificare l'ora della sveglia impostata. Questo tempo limite può essere modificato nel codice arduino.

Passaggio 4: configurazione della rete e connessione

Configurazione della rete e connessione
Configurazione della rete e connessione

Questo passaggio è un po' vago poiché ogni router è diverso. Google il tuo particolare modello di router per trovare le impostazioni che devi modificare.

Devi accedere al tuo router e probabilmente attivare la modalità avanzata. Sul mio router, devo andare al server DHCP per prenotare un indirizzo IP. Trova l'indirizzo MAC del tuo ESP8266; sarà quello nell'elenco dei client DHCP (o l'equivalente del router) che scompare ogni volta che si scollega l'ESP.

Utilizzare l'indirizzo MAC per riservare l'indirizzo IP della lampada. Assicurati che la voce sia abilitata se il tuo router ha quell'impostazione.

Se desideri connetterti dall'esterno della tua rete personale, dovrai cercare su Google il tuo router per scoprire come configurare il port forwarding.

Passaggio 5: parti stampate in 3D

Le parti stampate dovrebbero adattarsi alla maggior parte delle stampanti. Ci sono due parti: il monte e l'ombra.

Il supporto è ciò su cui è avvolta la striscia LED, in uno schema a spirale, e il suo diametro è tale che una striscia di 60 LED da 1 metro dovrebbe avvolgersi 3 volte e tutti i LED dovrebbero allinearsi assialmente. Se stai usando una striscia in cui i LED sono distanziati in modo diverso e non si allineano sul supporto come dovrebbero, cambia il diametro con i modelli forniti. Il diametro è C/pi, dove C è la circonferenza ed è 1/3 della lunghezza della striscia. Le aperture semicircolari sul lato della parete del supporto consentono il passaggio del cavo di alimentazione e del flusso d'aria. Le traverse forniscono rigidità e una superficie su cui applicare le strisce di comando per il montaggio.

Il paralume ha un accoppiamento ad attrito con il supporto e c'è una tacca per allineare il paralume con il supporto. La tacca dovrebbe essere a ore 12 o 6 quando è montata a parete e il display dell'orologio a 7 segmenti dovrebbe essere allineato con la tacca. Il paralume funge da diffusore per le luci ed è quindi molto sottile. L'ho stampato con un ugello da 0,5 mm e la maggior parte delle stampanti commerciali è dotata di ugelli da 0,4 mm, quindi dovrebbero esserci pochi problemi, ma assicurati di controllare l'affettatrice per assicurarti che l'ombra venga stampata correttamente. Assicurati anche di usare una plastica bianca o altrimenti traslucida per l'ombra. Altri colori distorceranno i colori delle luci o bloccheranno troppa luce.

Assicurati di controllare che il display dell'orologio digitale che stai utilizzando si adatti all'ombra. È progettato per adattarsi all'attrito in posizione con spazio sufficiente per i fili dell'orologio. Usa i modelli per cambiare il supporto dell'orologio. Quando si cambia il modello del paralume, assicurarsi di mantenere lo spessore della parte anteriore inferiore a 1 mm, in modo che l'orologio sia visibile attraverso di esso con poca diffusione.

Passaggio 6: cablaggio e assemblaggio della scheda

Cablaggio e assemblaggio della scheda
Cablaggio e assemblaggio della scheda
Cablaggio e assemblaggio della scheda
Cablaggio e assemblaggio della scheda
Cablaggio e assemblaggio della scheda
Cablaggio e assemblaggio della scheda

La scheda e il cablaggio sono molto meno complicati della mia mangiatoia per pesci. Basta saldare un paio di file di pin di intestazione femmina a una scheda prototipi per l'ESP-8266-12e, nonché due file di pin di testa maschio per collegare l'alimentazione. Ho saldato i due cavi dati dell'orologio e il cavo dati della striscia LED ai rispettivi pin sulla scheda prototipi, e tutti i cavi di alimentazione e di massa sono stati saldati ai rispettivi binari di alimentazione che ho realizzato sul retro della scheda.

L'altro lato di questi fili dovrebbe essere un connettore femmina per l'orologio e il connettore della striscia LED per la striscia LED. Potrebbe essere necessario saldare i pin maschio all'orologio e io raccomando i pin angolati per questo. I fili della striscia LED e i fili di alimentazione devono essere instradati sul lato della parete della scheda (il lato con l'ESP) e i fili dell'orologio devono essere instradati sul lato anteriore (dove si trovano tutti i giunti di saldatura).

Per una linea elettrica, ho usato 6 piedi di filo di rame intrecciato 16-26. Era un po 'spesso, quindi ho diviso ogni filo tra tre pin femmina per collegarlo ai binari di alimentazione e di terra. L'altro lato dovrebbe essere il connettore che hai per l'alimentatore.

Incolla a caldo tutti i giunti di saldatura esposti (soprattutto sul cavo di alimentazione e SOPRATTUTTO se c'è rame esposto come il mio) per isolare tutto da cortocircuiti accidentali. Puoi anche incollare a caldo l'orologio sulla scheda (retro dell'orologio sul lato saldato della scheda), ma ho scoperto che questo era un giunto debole e non era tutto ciò che è necessario una volta che tutto è stato montato.

Avvolgi la striscia LED intorno all'esterno del supporto. ASSICURARSI di testare la striscia in modalità 2 per verificare che l'orologio analogico stia andando nella giusta direzione. Assicurati di lasciare uno spazio di ~5 mm dal bordo anteriore per l'ombra. Il primo led della striscia (il led acceso con il colore dei secondi compare all'inizio di ogni minuto, ad un'estremità della striscia) va in posizione ore 12. quando la lampada è montata a parete. Quando hai la striscia LED in posizione, usa il suo supporto adesivo (se ne ha uno) o la colla per attaccarla al supporto. La super colla funzionerà meglio se la striscia non ha un supporto adesivo. Usa lo scotch per tenere la striscia in posizione durante il test e mentre la colla si asciuga.

Infilare i cavi del LED attraverso i fori semicircolari nel supporto per il collegamento alla scheda. Anche il cavo di alimentazione è infilato qui, assicurati di scegliere un foro che il cavo non possa tirare a causa della gravità o di tiri accidentali.

Passaggio 7: montaggio

Per il montaggio a parete, usa semplicemente 3-4 strisce di comando 3M o quante ne vuoi. Utilizzare la tacca nel supporto per verificare che sia a livello. Dopo aver montato il supporto, collegare il cavo di alimentazione e i fili LED alla scheda e inserire l'orologio nel paralume. Quindi, basta inserire il paralume sul supporto e collegare il cavo di alimentazione all'alimentatore!

Consigliato: