Sommario:

Termostato propagatore con ESP8266/NodeMCU e Blynk: 7 passaggi (con immagini)
Termostato propagatore con ESP8266/NodeMCU e Blynk: 7 passaggi (con immagini)

Video: Termostato propagatore con ESP8266/NodeMCU e Blynk: 7 passaggi (con immagini)

Video: Termostato propagatore con ESP8266/NodeMCU e Blynk: 7 passaggi (con immagini)
Video: Smart Home Device Design and WiFi Connectivity Using EM Simulation 2024, Dicembre
Anonim
Termostato propagatore che utilizza ESP8266/NodeMCU e Blynk
Termostato propagatore che utilizza ESP8266/NodeMCU e Blynk
Termostato propagatore che utilizza ESP8266/NodeMCU e Blynk
Termostato propagatore che utilizza ESP8266/NodeMCU e Blynk
Termostato propagatore che utilizza ESP8266/NodeMCU e Blynk
Termostato propagatore che utilizza ESP8266/NodeMCU e Blynk

Di recente ho acquistato un propagatore riscaldato, che dovrebbe aiutare a far germogliare i miei semi di fiori e ortaggi all'inizio della stagione. È arrivato senza termostato. E poiché i termostati sono piuttosto costosi, ho deciso di crearne uno mio. Poiché volevo sfruttare questa opportunità per giocare un po' con Blynk, ho basato il mio termostato su una scheda di sviluppo ESP8266/NodeMCU che avevo in giro.

Per i progetti precedenti, ho usato molto siti come instructables.com per trovare ispirazione e aiuto ogni volta che mi bloccavo. Non è più che giusto dare un piccolo contributo io stesso, quindi ecco il mio primo istruibile in assoluto!

Dichiarazione di non responsabilità: questo progetto funziona con 230 V CA, il che è piuttosto pericoloso e qualsiasi cosa non va può ucciderti. Non posso essere ritenuto responsabile per eventuali danni, lesioni o perdite di vite umane. Fallo a tuo rischio e pericolo

Passaggio 1: elenco delle cose che ho usato

Elenco delle cose che ho usato
Elenco delle cose che ho usato
Elenco delle cose che ho usato
Elenco delle cose che ho usato
Elenco delle cose che ho usato
Elenco delle cose che ho usato

1 NodeMCU V3.0

2 DS18B20 sensore di temperatura a 1 filo

1 modulo relè

1 display LCD1602 I2C

3 pulsanti colorati

1 valigetta 158x90x60 con coperchio trasparente

1 caricatore per telefono USB 5V

1 cavo dati micro a 5 pin da USB 2.0 A maschio a B maschio corto

1 resistore da 4,7 k

1 blocco di compensato impermeabile, circa 10x5x2 cm

1 pezzo di tubo di plastica bianco, diametro 12 mm, lunghezza 16 cm

1 cavo di alimentazione 230V con spina

1 presa di alimentazione 230V femmina (2 pin)

1 presa di corrente 230V femmina (3 pin)

1 Morsettiera a 6 posizioni a 2 file

1 cavo audio stereo con jack stereo da 3,5 mm a un'estremità

1 presa stereo da 3,5 mm femmina

2 connettori per pressacavo M16

1 pezzo di perspex bianco circa 160x90

E alcuni cavi di collegamento, guaina termorestringente, colla, nastro biadesivo, vernice spray nera, distanziatori per schede PCB, bulloni M3 e trapano da 1,5 mm/6,5 mm/12 mm/16 mm

Passaggio 2: progettazione del termostato

Progettazione del termostato
Progettazione del termostato

Come detto, il termostato è costruito attorno a una scheda di sviluppo ESP8266/NodeMCU.

La temperatura effettiva sia del suolo che dell'aria nel propagatore sarà misurata da 2 sensori di temperatura. Questi sensori hanno una cosiddetta interfaccia 1-Wire, il che significa che possono essere collegati in parallelo a una porta di ingresso. Come menzionato in questa eccellente scheda tecnica, il bus 1-Wire richiede un resistore di pullup esterno di circa 5kΩ. Uso un resistore da 4,7 kΩ tra la linea di segnale dei sensori e i 3,3 V del NodeMCU.

Per poter aumentare o diminuire la temperatura del suolo target desiderata, vengono aggiunti 2 pulsanti e uno schermo LCD a caratteri 16x2 per fornire un feedback sulle temperature attuali e target. Questo schermo LCD ha una retroilluminazione incorporata. Per evitare che la retroilluminazione rimanga sempre accesa, ho deciso di aggiungere del codice per oscurare lo schermo dopo un po' di tempo. Per poter riattivare la retroilluminazione ho aggiunto un altro pulsante. Infine, viene aggiunto un modulo relè per accendere e spegnere l'alimentazione al cavo scaldante nel propagatore.

L'immagine sopra mostra come questi componenti sono collegati all'unità principale.

Passaggio 3: rendere il termostato 'Blynk'

Rendere il termostato 'Blynk'
Rendere il termostato 'Blynk'
Rendere il termostato 'Blynk'
Rendere il termostato 'Blynk'
Rendere il termostato 'Blynk'
Rendere il termostato 'Blynk'

Poiché in seguito abbiamo bisogno di alcuni dati dall'app Blynk nel nostro codice, per prima cosa ci occupiamo dell'attività di Blynk.

Segui i primi 3 passaggi delle istruzioni per iniziare Blynk.

Ora crea un nuovo progetto nell'app Blynk. Come nome del progetto ho scelto 'Propagator'. Dall'elenco dei dispositivi, seleziona "NodeMCU", il tipo di connessione è "WiFi". Mi piace il tema scuro, quindi ho scelto "Dark". Dopo aver premuto OK, verrà mostrato un popup che indica che un token di autenticazione è stato inviato al tuo indirizzo e-mail. Controlla la tua posta e annota questo token, abbiamo bisogno del codice NodeMCU in seguito.

Tocca la schermata vuota che ora viene mostrata e aggiungi:

  • 2 indicatori (300 energia ciascuno, quindi 600 in totale)
  • 1 SuperCarta (900 energia)
  • 1 Valore Display (200 energia)
  • 1 cursore (200 energia)
  • 1 LED (100 energia)

Questo consuma esattamente il tuo bilancio energetico gratuito di 2000;-)

Le immagini sopra mostrano come disporre lo schermo con questi elementi. Toccando ciascun elemento, è possibile regolare le impostazioni dettagliate (mostrate anche nelle immagini sopra).

Una volta fatto, attiva il tuo progetto selezionando il pulsante 'play'. L'app (ovviamente) non riuscirà a connettersi, perché non c'è ancora nulla a cui connettersi. Quindi passiamo al passaggio successivo.

Passaggio 4: il codice che fa funzionare tutto

Ora è il momento di programmare il nostro ESP8266/NodeMCU. Uso l'applicazione Arduino IDE per questo, che può essere scaricata qui. Per configurarlo per ESP8266/NodeMCU, dai un'occhiata a questo fantastico tutorial di Magesh Jayakumar.

Il codice che ho creato per il mio termostato propagatore si trova nel file Thermostat.ino di seguito.

Se desideri riutilizzare questo codice, assicurati di aggiornare il tuo SSID WiFi, la password e il token di autorizzazione Blynk nel codice.

Passaggio 5: costruzione del modulo del sensore di temperatura

Costruzione del modulo del sensore di temperatura
Costruzione del modulo del sensore di temperatura
Costruzione del modulo del sensore di temperatura
Costruzione del modulo del sensore di temperatura
Costruzione del modulo del sensore di temperatura
Costruzione del modulo del sensore di temperatura

La base del propagatore sarà riempita con uno strato di sabbia tagliente o graniglia molto fine di circa 2 cm di spessore. Questo distribuirà il calore inferiore in modo più uniforme. Per misurare correttamente la temperatura del "suolo", ho deciso di utilizzare il sensore di temperatura impermeabile DS18B20. Sebbene il mio propagatore fosse dotato di un termometro analogico integrato per misurare la temperatura dell'aria all'interno, ho deciso di aggiungere un altro sensore di temperatura per misurare anche elettronicamente la temperatura dell'aria.

Per tenere bene entrambi i sensori in posizione, ho creato una semplice struttura in legno. Ho preso un pezzo di compensato impermeabile e ho praticato un foro di 6,5 mm da un lato all'altro per contenere il sensore della temperatura del suolo, facendo passare il cavo del sensore attraverso il blocco. Successivamente ho praticato un foro da 12 mm al centro del blocco di compensato, a circa 3/4 dell'altezza totale, e un foro da 6,5 mm di lato, a metà del blocco, che termina nel foro da 12 mm. Questo foro contiene il sensore di temperatura dell'aria.

Il sensore della temperatura dell'aria è coperto da un tubo di plastica bianco che si inserisce all'interno del foro da 12 mm. La lunghezza del tubo è di circa 16 cm. Il tubo ha diversi fori da 1,5 mm nella metà inferiore (dove si trova il sensore), la metà superiore è verniciata di nero. L'idea è che l'aria nella parte nera del tubo si riscaldi un po', salga verso l'alto e fuoriesca, creando così un flusso d'aria attorno al sensore. Speriamo che questo porti a una migliore lettura della temperatura dell'aria. Infine, per evitare l'ingresso di sabbia o sabbia, i fori per i cavi dei sensori sono riempiti di colla.

Per collegare i sensori, ho usato un vecchio cavo audio stereo che ha una presa jack stereo da 3,5 mm a un'estremità. Ho tagliato i connettori dall'altra parte e saldato i 3 fili (il mio cavo audio ha una massa in rame, filo rosso e bianco):

- entrambi i fili neri dei sensori (massa) vanno al filo di terra del cavo audio

- entrambi i fili rossi (+) vanno al filo rosso

- entrambi i fili gialli (segnale) vanno al filo bianco

Ho isolato le parti saldate singolarmente con del tubo termoretraibile. Utilizzato anche del tubo termoretraibile per tenere insieme i 2 fili del sensore.

Il modulo sensore di temperatura completato è mostrato nella quarta immagine sopra.

Dopo il completamento del modulo del sensore di temperatura, viene installato al centro del propagatore riscaldato utilizzando del nastro biadesivo. Il filo viene alimentato attraverso l'apertura esistente (che ho dovuto allargare un po' per far entrare il filo) nella base del propagatore.

Passaggio 6: costruzione del modulo termostato

Costruzione del modulo termostato
Costruzione del modulo termostato
Costruzione del modulo termostato
Costruzione del modulo termostato
Costruzione del modulo termostato
Costruzione del modulo termostato
Costruzione del modulo termostato
Costruzione del modulo termostato

L'ESP8266/NodeMCU, il display, il relè e l'alimentatore 5V si inseriscono perfettamente nella custodia da 158x90x60 mm con coperchio trasparente.

Avevo bisogno di una piastra di base per montare il NodeMCU, il display LCD e il relè all'interno del case. Ho pensato di ordinare una piastra di base stampata in 3D, quindi ho creato un file.stl in SketchUp. Ho cambiato idea e l'ho semplicemente realizzato da solo da un pezzo di perspex bianco da 4 mm. Utilizzando SketchUp, ho creato un modello per contrassegnare il punto esatto in cui praticare i fori da 3 mm. Vedere il file.skp per un esempio. I componenti vengono montati sulla piastra di base utilizzando alcuni distanziatori distanziatori della lunghezza appropriata.

Ho praticato i fori per i pulsanti e i connettori sui lati della custodia, ho installato i pulsanti e i connettori e li ho cablati utilizzando fili di colori diversi per evitare collegamenti errati. Ho cablato con cura le parti da 230 V CA. Ancora: 230V AC può essere pericoloso, assicurati di sapere cosa stai facendo quando prepari questa parte del progetto!

L'alimentatore 5V e la morsettiera sono tenuti in posizione sul fondo del case con del nastro biadesivo.

Dopo aver collegato i cavi al NodeMCU, ci è voluto un po' di tempo per fissare la piastra di base nel case con alcuni bulloni m3.

Azione finale: metti in posizione la copertura trasparente e il gioco è fatto!

Passaggio 7: conclusione

È stato davvero divertente costruire questo termostato per il mio propagatore e tenere traccia dei miei progressi nella costruzione e nella scrittura di questo tutorial.

Il termostato funziona come un incantesimo e anche il controllo e il monitoraggio tramite l'app Blynk funzionano bene.

Ma c'è sempre spazio per migliorare. Sto pensando di migliorare il controllo della temperatura evitando di "superare troppo l'obiettivo". Probabilmente darò un'occhiata alla cosiddetta libreria PID.

Un'altra idea: potrei aggiungere un'opzione OTA "Over The Air" per aggiornare il software NodeMCU senza dover aprire il caso ogni volta.

Consigliato: