Sommario:

UCL-lloT-Luce esterna attivata dall'alba/tramonto: 6 passaggi
UCL-lloT-Luce esterna attivata dall'alba/tramonto: 6 passaggi

Video: UCL-lloT-Luce esterna attivata dall'alba/tramonto: 6 passaggi

Video: UCL-lloT-Luce esterna attivata dall'alba/tramonto: 6 passaggi
Video: Scaling Terraform: da Startup a Enterprise - Paolo Tonin - Incontro DevOps 2019 2024, Novembre
Anonim
UCL-lloT-Luce per esterni Attivata dall'alba/tramonto
UCL-lloT-Luce per esterni Attivata dall'alba/tramonto

Ciao a tutti! Con un po' di lavoro, alcune parti e il codice ho messo insieme questo tutorial che vi mostrerà dall'inizio alla fine esattamente come produrre questa luce per esterni. L'idea è nata da mio padre, che durante l'estate doveva uscire manualmente e cambiarsi quando la luce era accesa. Con i tempi del tramonto e dell'alba che cambiano rapidamente tutto l'anno, mi ha chiesto se potevo trovare un modo automatizzato per farlo. E così siamo qui. Un progetto relativamente piccolo.

Passaggio 1: elenco IO e cosa ti servirà

Elenco IO e cosa ti servirà
Elenco IO e cosa ti servirà
Elenco IO e cosa ti servirà
Elenco IO e cosa ti servirà
Elenco IO e cosa ti servirà
Elenco IO e cosa ti servirà

Arduino MEGA 2560. È quello che ho usato almeno, so che potresti facilmente usarne un altro.

DS3231 e la sua libreria. (https://rinkydinkelectronics.com/library.php?id=73… È importante sapere che i pin impostati per SDA e SCL sono diversi a seconda di quale Arduino si sta utilizzando.

I052116 Modulo sensore rilevatore di movimento a infrarossi IR. Questo particolare modulo può essere scambiato con il tuo sensore preferito, è onestamente opzionale per l'intera faccenda.

Passaggio 2: diagramma di flusso

Diagramma di flusso
Diagramma di flusso

Come si vede nel semplice diagramma di flusso, gran parte del lavoro pesante risiede in Node-Red. Con nodi relativamente semplici, l'idea è che da Node-Red raggiungi un sito Web che sa a che ora tramonta e sorge il sole. Una volta che ce l'ha, invierà le informazioni ad Arduino dicendolo. Dall'Arduino otterremo un segnale che indica con precisione quando le Luci sono effettivamente accese, così da poter controllare da casa proprio quando le luci si sono spente. Sempre dall'Arduino avremo l'informazione che il sensore di prossimità è stato attivato, che fa accendere la luce per x tempo.

Passaggio 3: frittura

Fritzing
Fritzing

Rispetto ad altri progetti, qui il cablaggio è piuttosto semplice. Quello di cui devi essere consapevole è che avrai bisogno di un modulo WIFI per mantenere il contatto con il server Node-Red, o ottenere un computer usa e getta per ospitare il server Node-Red su che è collegato ad Arduino. Non mostrato nell'immagine è la connessione tra Arduino e Laptop, e mi scuso in anticipo per la povera immagine di Fritzing!

Passaggio 4: codifica

Codifica
Codifica
Codifica
Codifica

Se c'è una cosa che ho trovato è che con Firmata (per la comunicazione Arduino con Node-Red), la libreria DS3231 e altro, c'erano molte librerie caricate. Al momento della pubblicazione, la codifica non è ancora completa, quindi è incluso lo pseudo-codice.

Nella libreria del DS3231 sono inclusi i pin preimpostati per ciascuna delle schede Arduino e nel caso del Mega sono i pin 20 e 21 poiché sono i pin SDA e SCL sul mega. Una volta collegato, all'orologio può essere detto esattamente che giorno è e di cosa dovrebbe tenere traccia. Quello che ho trovato più facile da usare quando si tratta di tenere traccia dei numeri, è usare int invece di string. Quindi quello che ho fatto è convertire i numeri di una stringa in int, ma poiché int non può usare: per separare un orologio, ho deciso di fare qualcos'altro invece di lavorare con le ore, lavoreremo con minuti. Molti minuti. Se l'orologio segna le 13:21, ad esempio, le prime due cifre saranno separate e cronometrate con sessanta. Ora siamo a 801 minuti, poiché 13 per 60 è uguale a 780 e aggiungi gli ultimi 21 minuti. Se il nostro Nodo-Rosso dice che il sole tramonta alle 16:58 (in caso di inverno), le luci esterne si accendono tra 1018 minuti e un orario di spegnimento predefinito, che sarà 1380 (23:00). Se il nostro timer è tra quelli, le luci si accendono. La matematica di cui sopra è fondamentalmente l'intero programma, senza i passaggi per ottenere Node-Red per connettersi ad Arduino e comunicare. Verrà utilizzato anche un sensore che si assicura che le luci si accendano (tramonto passato, comunque), ma per il resto questo è l'intero programma sopra.

Passaggio 5: nodo rosso

Nodo-rosso
Nodo-rosso
Nodo-rosso
Nodo-rosso
Nodo-rosso
Nodo-rosso
Nodo-rosso
Nodo-rosso

Non è un flusso particolarmente grande, non che debba esserlo in questo caso. Le prime 2 righe di nodi sono la parte principale del programma. Utilizzando una funzione GET, recuperiamo le previsioni di oggi su come sorgerà e tramonterà il sole. Da lì utilizziamo un selettore CSS per recuperare le nostre informazioni specifiche, di solito accessibili su un sito Web "Inspect Elements" su un Firefox come indicato nelle immagini. Tieni presente che non tutti i siti Web funzionano in questo modo e quello che utilizzo funziona perfettamente in questo modo. Da lì scriverà le informazioni sul pin 13 perché è quello che ho designato, anche se i test devono ancora stabilire se un pin che arriva a tempi diversi è fattibile. Come descritto nella parte di codifica, le informazioni arriveranno da Arduino a Node-Red, dove indicheranno quindi su un sito Web accessibile dove è possibile controllarle facilmente. Avrai bisogno di Firmata per questo se desideri utilizzare le funzioni di Arduino acquisita tramite la libreria node-red-node-arduino su Node-Red. Sebbene non sia ancora completamente impostato e verrà aggiornato al termine del progetto, ho allegato il codice per il flusso Node-Red in un documento di testo per un facile accesso.

Passaggio 6: distribuzione e utilizzo

Distribuzione e utilizzo
Distribuzione e utilizzo

E per finire il nostro istruibile, è la parte pratica. Con poche case che hanno questo livello di illuminazione automatica, una soluzione per tutto l'anno è benvenuta da molti proprietari di case. Per collegarlo effettivamente a lampade che utilizzano elettricità che non è un Arduino, non consiglio di farlo da soli a meno che tu non sappia esattamente cosa stai facendo. Con il progetto finito, assumerò questo compito con l'aiuto di un elettricista solo per essere sicuro. Illuminando il tuo vialetto con un sensore o rigorosamente in base al tempo, ti consiglio di basarti su ciò che ho già fatto se intendo effettivamente metterlo in uso oltre questa fase di test in cui si trova attualmente. La maggior parte dei miei problemi con il progetto era strettamente nella parte da Node-Red ad Arduino, e spero di essere riuscito a spiegare il più chiaramente possibile come ciò è fatta.

Consigliato: