Sommario:

ESP8266 Nodemcu Monitoraggio della temperatura utilizzando DHT11 su un server Web locale - Ottieni la temperatura e l'umidità della stanza sul tuo browser: 6 passaggi
ESP8266 Nodemcu Monitoraggio della temperatura utilizzando DHT11 su un server Web locale - Ottieni la temperatura e l'umidità della stanza sul tuo browser: 6 passaggi

Video: ESP8266 Nodemcu Monitoraggio della temperatura utilizzando DHT11 su un server Web locale - Ottieni la temperatura e l'umidità della stanza sul tuo browser: 6 passaggi

Video: ESP8266 Nodemcu Monitoraggio della temperatura utilizzando DHT11 su un server Web locale - Ottieni la temperatura e l'umidità della stanza sul tuo browser: 6 passaggi
Video: IoT Based Plant Watering System Indoor project using ESP32 Blynk | IoT Projects 2023 2024, Luglio
Anonim
ESP8266 Nodemcu Monitoraggio della temperatura utilizzando DHT11 su un server Web locale | Ottieni la temperatura e l'umidità della stanza sul tuo browser
ESP8266 Nodemcu Monitoraggio della temperatura utilizzando DHT11 su un server Web locale | Ottieni la temperatura e l'umidità della stanza sul tuo browser

Ciao ragazzi, oggi realizzeremo un sistema di monitoraggio dell'umidità e della temperatura utilizzando il sensore di temperatura ESP 8266 NODEMCU e DHT11. La temperatura e l'umidità saranno ottenute dal sensore DHT11 e può essere visto su un browser quale pagina Web verrà gestita da esp 8266 ospitandola su un server Web locale.

Passaggio 1: cose di cui hai bisogno

Cose di cui hai bisogno
Cose di cui hai bisogno
Cose di cui hai bisogno
Cose di cui hai bisogno

Hai bisogno delle seguenti cose per questo progetto: 1x ESP 8266 Nodemcu:

1x DHT11: https://www.utsource.net/itm/p/8831706.html1x breadboard:.:

Pochi ponticelli:

Passaggio 2: circuito

Circuito
Circuito

Il circuito è molto semplice collegare tutto Secondo come mostrato in schmatics

Passaggio 3: ottenere le biblioteche

Ottieni le biblioteche
Ottieni le biblioteche
Ottieni le biblioteche
Ottieni le biblioteche

Apri il tuo IDE Arduino e vai su Schizzo> Includi libreria> Gestisci librerie. Dovrebbe aprirsi il Gestore della libreria. Cerca "DHT" nella casella di ricerca e installa la libreria DHT da Adafruit. Dopo aver installato la libreria DHT da Adafruit, digita "Adafruit Unified Sensor" nella casella di ricerca. Scorri fino in fondo per trovare la libreria e installarla. Dopo aver installato le librerie, riavvia il tuo IDE Arduino.

Passaggio 4: codice

Codice
Codice

Dopo aver fatto le cose di cui sopra, carica il seguente codice su ESP8266 nodemcu (seleziona la porta e la scheda appropriate) e prima di caricare il codice inserisci ssid e password del tuo wifi nel codice: // Inclusa la libreria WiFi ESP8266 #include #include "DHT. h"// Decommenta una delle righe sottostanti per qualunque tipo di sensore DHT stai utilizzando!#define DHTTYPE DHT11 // DHT 11//#define DHTTYPE DHT21 // DHT 21 (AM2301)//#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321// Sostituisci con i dettagli della tua reteconst char* ssid = "YOUR_NETWORK_NAME";const char* password = "YOUR_NETWORK_PASSWORD";// Server Web sulla porta 80WiFiServer server(80);// DHT Sensorconst int DHTPin = 5;// Inizializza il sensore DHT. DHT dht(DHTPin, DHTTYPE);// Variabili temporaneestatic char celsiusTemp[7];static char fahrenheitTemp[7];static char umiditàTemp[7];// viene eseguito solo una volta su bootvoid setup() { // Inizializzazione della porta seriale per scopi di debug Serial.begin(115200); ritardo(10); dht.begin(); // Connessione alla rete WiFi Serial.println(); Serial.print("Connessione a "); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { ritardo(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connesso"); // Avvio del server web server.begin(); Serial.println("Server Web in esecuzione. In attesa dell'IP ESP…"); ritardo (10000); // Stampa l'indirizzo IP ESP Serial.println(WiFi.localIP());}// esegue ripetutamentevoid loop() { // Ascolto di nuovi client WiFiClient client = server.available(); if (client) { Serial.println("Nuovo cliente"); // bolean per individuare quando la richiesta http termina boolean blank_line = true; while (client.connected()) { if (client.available()) { char c = client.read(); if (c == '\n' && blank_line) { // Le letture del sensore possono anche durare fino a 2 secondi 'vecchio' (è un sensore molto lento) float h = dht.readHumidity(); // Legge la temperatura come Celsius (predefinita) float t = dht.readTemperature(); // Legge la temperatura come Fahrenheit (isFahrenheit = true) float f = dht.readTemperature(true); // Controlla se qualche lettura ha avuto esito negativo ed esci prima (per riprovare). if (isnan(h) || isnan(t) || isnan(f)) { Serial.println("Impossibile leggere dal sensore DHT!"); strcpy(celsiusTemp, "Fallito"); strcpy(fahrenheitTemp, "Fallito"); strcpy(humidityTemp, "Fallito"); } else{ // Calcola i valori di temperatura in Celsius + Fahrenheit e Umidità float hic = dht.computeHeatIndex(t, h, false); dtostrf(hic, 6, 2, celsiusTemp); float hif = dht.computeHeatIndex(f, h); dtostrf(hif, 6, 2, fahrenheitTemp); dtostrf(h, 6, 2, umidità Temp); // È possibile eliminare i seguenti Serial.print, è solo per scopi di debug Serial.print("Humidity: "); Serial.print(h); Serial.print(" %\t Temperatura: "); Serial.print(t); Serial.print("*C"); Serial.print(f); Serial.print(" *F\t Indice di calore: "); Serial.print(hic); Serial.print("*C"); Serial.print(hif); Serial.print("*F"); Serial.print("Umidità: "); Serial.print(h); Serial.print(" %\t Temperatura: "); Serial.print(t); Serial.print("*C"); Serial.print(f); Serial.print(" *F\t Indice di calore: "); Serial.print(hic); Serial.print("*C"); Serial.print(hif); Serial.println("*F"); } client.println("HTTP/1.1 200 OK"); client.println("Tipo di contenuto: testo/html"); client.println("Connessione: chiudi"); client.println(); // la tua pagina web effettiva che mostra il client di temperatura e umidità

Passaggio 5: ottenere l'IP

Ottieni l'IP
Ottieni l'IP

Visualizza la temperatura e l'umidità di cui abbiamo bisogno per ottenere l'IP della pagina web. Quindi assicurati che il tuo esp8266 sia collegato al tuo PC, quindi apri il monitor seriale e sul monitor seriale puoi vedere l'IP della tua pagina web del server web ESP8266.

Passaggio 6: controlla la temperatura e l'umidità sul browser

Controlla la tua temperatura e umidità sul browser
Controlla la tua temperatura e umidità sul browser

Quindi, dopo aver ottenuto l'IP del tuo nodemcu ESP8266, apri semplicemente il browser in PC o Mobile ma assicurati che il tuo PC/cellulare sia connesso alla stessa rete del tuo Nodemcu/ESP8266 e poi vai al tuo browser (se stai usando il cellulare usa il browser predefinito ad esempio per Android usa chrome) e quindi digita l'IP ottenuto nel passaggio precedente e la pagina web locale verrà visualizzata con umidità e temperatura come la mia mostrata nell'immagine. Quindi divertiti a monitorare la temperatura e l'umidità della tua stanza.

Consigliato: