Innholdsfortegnelse:
- Trinn 1: Ting du trenger
- Trinn 2: Krets
- Trinn 3: Få bibliotekene
- Trinn 4: Kode
- Trinn 5: Få IP
- Trinn 6: Kontroller temperaturen og fuktigheten i nettleseren
Video: ESP8266 Nodemcu temperaturovervåking ved bruk av DHT11 på en lokal webserver - Få romtemperatur og fuktighet i nettleseren din: 6 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:22
Hei folkens i dag vil vi lage et fuktighets- og temperaturovervåkingssystem ved hjelp av ESP 8266 NODEMCU & DHT11 temperatursensor. Temperatur og fuktighet hentes fra DHT11 Sensor, og det kan sees i en nettleser hvilken nettside som vil bli administrert av esp 8266 ved å være vert for den på en lokal webserver.
Trinn 1: Ting du trenger
Du trenger følgende ting for dette prosjektet: 1x ESP 8266 Nodemcu:
1x DHT11: https://www.utsource.net/itm/p/8831706.html1x brødbrett:.:
Noen hoppere:
Trinn 2: Krets
Kretsen er veldig enkel å koble alt i henhold til som vist i schmatics
Trinn 3: Få bibliotekene
Åpne Arduino IDE og gå til Sketch> Include Library> Manage Libraries. Library Manager bør åpne. Søk etter "DHT" i søkeboksen og installer DHT -biblioteket fra Adafruit. Etter å ha installert DHT -biblioteket fra Adafruit, skriver du "Adafruit Unified Sensor" i søkeboksen. Rull helt ned for å finne biblioteket og installere det. Etter at du har installert bibliotekene, starter du Arduino IDE på nytt.
Trinn 4: Kode
Etter å ha gjort ovennevnte ting, last opp følgende kode til ESP8266 nodemcu (vennligst velg riktig port og brett) og før du laster opp koden, legg inn ssid og passord for wifi i koden: // Inkludert ESP8266 WiFi -biblioteket #inkluderer #include "DHT. h "// Ikke kommenter en av linjene nedenfor for hvilken DHT -sensortype du bruker! #define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT21 // DHT 21 (AM2301) //#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 // Bytt ut med nettverksdetaljene dine const** ssid = "YOUR_NETWORK_NAME"; const char* password = "YOUR_NETWORK_PASSWORD"; // Webserver på port 80WiFiServer -server (80); // DHT Sensorconst int DHTPin = 5; // Initialiser DHT -sensor. DHT dht (DHTPin, DHTTYPE); // Midlertidige variabler statisk char celsiusTemp [7]; statisk char fahrenheitTemp [7]; statisk char fuktighetstemp [7]; // kjører bare én gang på bootvoid -oppsett () { // Initialiserer seriell port for feilsøkingsformål Serial.begin (115200); forsinkelse (10); dht.begin (); // Koble til WiFi -nettverk Serial.println (); Serial.print ("Koble til"); Serial.println (ssid); WiFi.begin (ssid, passord); mens (WiFi.status ()! = WL_CONNECTED) {forsinkelse (500); Serial.print ("."); } Serial.println (""); Serial.println ("WiFi tilkoblet"); // Starter webserveren server.begin (); Serial.println ("Web -server kjører. Venter på ESP -IP …"); forsinkelse (10000); // Skrive ut ESP IP -adressen Serial.println (WiFi.localIP ());} // kjører igjen og igjen ugyldig sløyfe () {// Lytter etter nye klienter WiFiClient -klient = server.available (); if (klient) {Serial.println ("Ny klient"); // bolean for å finne ut når http -forespørselen slutter boolsk blank_line = true; mens (client.connected ()) {if (client.available ()) {char c = client.read (); hvis (c == '\ n' && blank_line) {// Sensoravlesninger kan også være opptil 2 sekunder 'gamle' (det er en veldig treg sensor) float h = dht.readHumidity (); // Les temperaturen som Celsius (standard) float t = dht.readTemperature (); // Les temperaturen som Fahrenheit (isFahrenheit = true) float f = dht.readTemperature (true); // Kontroller om noen av lesningene mislyktes, og avslutt tidlig (for å prøve igjen). if (isnan (h) || isnan (t) || isnan (f)) {Serial.println ("Kunne ikke lese fra DHT -sensor!"); strcpy (celsiusTemp, "mislyktes"); strcpy (fahrenheitTemp, "mislyktes"); strcpy (fuktighetstemp, "mislyktes"); } annet {// Beregner temperaturverdier i Celsius + Fahrenheit og Luftfuktighet 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, fuktighetstemp); // Du kan slette følgende Serial.print's, det er bare for feilsøkingsformål Serial.print ("Fuktighet:"); Serial.print (h); Serial.print (" %\ t Temperatur:"); Serial.print (t); Serial.print (" *C"); Serial.print (f); Serial.print (" *F / t Varmeindeks:"); Serial.print (hic); Serial.print (" *C"); Serial.print (hif); Serial.print (" *F"); Serial.print ("Fuktighet:"); Serial.print (h); Serial.print (" %\ t Temperatur:"); Serial.print (t); Serial.print (" *C"); Serial.print (f); Serial.print (" *F / t Varmeindeks:"); Serial.print (hic); Serial.print (" *C"); Serial.print (hif); Serial.println (" *F"); } client.println ("HTTP/1.1 200 OK"); client.println ("Innholdstype: tekst/html"); client.println ("Tilkobling: lukk"); client.println (); // din faktiske webside som viser klient for temperatur og fuktighet
Trinn 5: Få IP
Du ser temperaturen og fuktigheten vi trenger for å få IP -adressen til websiden. Så for det må du kontrollere at esp8266 er koblet til PCen, og deretter åpne den serielle skjermen, og på seriell skjerm kan du se IP -adressen til ESP8266 webserver -nettsiden din.
Trinn 6: Kontroller temperaturen og fuktigheten i nettleseren
Så etter å ha fått IP -adressen til din ESP8266 nodemcu, er det bare å åpne nettleseren på PC eller mobil, men sørg for at PC/mobil er koblet til det samme nettverket som Nodemcu/ESP8266, og gå deretter til nettleseren din (hvis du bruker mobil, vennligst bruk standard nettleser dvs. for Android bruk chrome) og skriv deretter inn IP -adressen vi fikk i forrige trinn, og den lokale websiden vil vises med fuktighet og temperatur som min vist på bildet. Så ha det gøy med å lage romtemperatur og fuktighetsmonitor.
Anbefalt:
Overvåking av romtemperatur og fuktighet med ESP32 og AskSensors Cloud: 6 trinn
Overvåking av romtemperatur og fuktighet med ESP32 og AskSensors Cloud: I denne opplæringen lærer du hvordan du overvåker temperaturen og fuktigheten i rommet eller skrivebordet ditt ved hjelp av DHT11 og ESP32 koblet til skyen. Våre opplæringsoppdateringer finner du her. DHHT11 Spesifikasjoner: DHT11 -sensoren kan måle temperaturen
Temperaturovervåking ved bruk av MCP9808 og Raspberry Pi: 4 trinn
Temperaturovervåking ved bruk av MCP9808 og Raspberry Pi: MCP9808 er en meget nøyaktig digital temperatursensor ± 0,5 ° C I2C minimodul. De er utformet med brukerprogrammerbare registre som letter temperaturfølere. MCP9808 temperatursensoren med høy nøyaktighet har blitt en industri
Temperaturovervåking ved bruk av MCP9808 og Arduino Nano: 4 trinn
Temperaturovervåking ved bruk av MCP9808 og Arduino Nano: MCP9808 er en meget nøyaktig digital temperatursensor ± 0,5 ° C I2C minimodul. De er utformet med brukerprogrammerbare registre som letter temperaturfølere. MCP9808 temperatursensoren med høy nøyaktighet har blitt en industri
ESP8266 NodeMCU Access Point (AP) for webserver med DT11 temperatursensor og utskriftstemperatur og fuktighet i nettleseren: 5 trinn
ESP8266 NodeMCU Access Point (AP) for webserver med DT11 temperatursensor og utskriftstemperatur og fuktighet i nettleser: Hei folkens i de fleste prosjektene vi bruker ESP8266 og i de fleste prosjektene bruker vi ESP8266 som webserver, slik at data kan nås på hvilken som helst enhet over wifi ved å få tilgang til webserveren som er hostet av ESP8266, men det eneste problemet er at vi trenger en fungerende ruter for
Monitor for romtemperatur og fuktighet: 6 trinn
Romtemperatur og fuktighetsmonitor: Mitt prosjekt, QTempair, måler romtemperatur, fuktighet og luftkvalitet. Dette prosjektet leser data fra sensorene, sender dataene til databasen og dataene vil bli vist på et nettsted. Du kan lagre en temperatur i innstillingene på