Indholdsfortegnelse:
- Trin 1: Ting du har brug for
- Trin 2: Kredsløb
- Trin 3: Få bibliotekerne
- Trin 4: Kode
- Trin 5: Få IP
- Trin 6: Kontroller din temperatur og fugtighed i browseren
Video: ESP8266 Nodemcu temperaturovervågning ved hjælp af DHT11 på en lokal webserver - Få rumtemperatur og fugtighed i din browser: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Hej fyre i dag vil vi lave et fugtigheds- og temperaturovervågningssystem ved hjælp af ESP 8266 NODEMCU & DHT11 temperatursensor. Temperatur og fugtighed opnås fra DHT11 Sensor, og det kan ses i en browser, hvilken webside der administreres af esp 8266 ved at være vært for den på en lokal webserver.
Trin 1: Ting du har brug for
Du har brug for følgende ting til dette projekt: 1x ESP 8266 Nodemcu:
1x DHT11: https://www.utsource.net/itm/p/8831706.html1x brødbræt:.:
Få jumpere:
Trin 2: Kredsløb
Kredsløbet er meget let at forbinde alt Ifølge som vist i skmatik
Trin 3: Få bibliotekerne
Åbn din Arduino IDE og gå til Skitse> Inkluder bibliotek> Administrer biblioteker. Library Manager skal åbne. Søg efter "DHT" i søgefeltet og installer DHT -biblioteket fra Adafruit. Efter installation af DHT -biblioteket fra Adafruit skal du skrive "Adafruit Unified Sensor" i søgefeltet. Rul helt ned for at finde biblioteket og installere det. Efter installation af bibliotekerne skal du genstarte din Arduino IDE.
Trin 4: Kode
Efter at have gjort ovenstående ting, skal du uploade følgende kode til ESP8266 nodemcu (vælg venligst den korrekte port og board), og før du uploader koden, skal du sætte ssid og adgangskode til din wifi i koden: // Inklusive ESP8266 WiFi -biblioteket #inkluderer #include "DHT. h "// Fjern en af linjerne nedenfor for hvilken DHT -sensortype, du bruger! #define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT21 // DHT 21 (AM2301) //#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 // Udskift med dine netværksoplysningerconst char* 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 variablerstatic char celsiusTemp [7]; static char fahrenheitTemp [7]; static charidityTemp [7]; // kører kun én gang ved bootvoid -opsætning () { // Initialiserer seriel port til fejlfindingsformål Serial.begin (115200); forsinkelse (10); dht.begin (); // Opretter forbindelse til WiFi -netværk Serial.println (); Serial.print ("Opretter forbindelse til"); Serial.println (ssid); WiFi.begin (ssid, adgangskode); mens (WiFi.status ()! = WL_CONNECTED) {forsinkelse (500); Serial.print ("."); } Serial.println (""); Serial.println ("WiFi tilsluttet"); // Start af webserver server.begin (); Serial.println ("Webserver kører. Venter på ESP IP …"); forsinkelse (10000); // Udskrivning af ESP IP -adressen Serial.println (WiFi.localIP ());} // kører igen og igen, ugyldig loop () {// Lytning efter nye klienter WiFiClient -klient = server.available (); if (klient) {Serial.println ("Ny klient"); // bolean for at finde ud af, hvornår http -anmodningen slutter boolsk blank_line = true; mens (client.connected ()) {if (client.available ()) {char c = client.read (); hvis (c == '\ n' && blank_line) {// Sensoraflæsninger kan også være op til 2 sekunder 'gamle' (det er en meget langsom sensor) float h = dht.readHumidity (); // Læs temperaturen som Celsius (standard) float t = dht.readTemperature (); // Læs temperaturen som Fahrenheit (isFahrenheit = true) float f = dht.readTemperature (true); // Kontroller, om nogen læsning mislykkedes, og afslut tidligt (for at prøve igen). hvis (isnan (h) || isnan (t) || isnan (f)) {Serial.println ("Kunne ikke læse fra DHT -sensor!"); strcpy (celsiusTemp, "mislykkedes"); strcpy (fahrenheitTemp, "mislykkedes"); strcpy (fugtighedstemp, "mislykkedes"); } else {// Beregner temperaturværdier i Celsius + Fahrenheit og luftfugtighed 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, HumidityTemp); // Du kan slette følgende Serial.print's, det er kun til fejlretning formål Serial.print ("Fugtighed:"); 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 ("Fugtighed:"); 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 ("Indholdstype: tekst/html"); client.println ("Forbindelse: luk"); client.println (); // din faktiske webside, der viser temperatur og fugtighedsklient
Trin 5: Få IP
Du ser den temperatur og fugtighed, vi har brug for for at få webstedets IP. Så sørg for, at din esp8266 er tilsluttet din pc, og åbn derefter den serielle skærm, og på den serielle skærm kan du se IP'en på din ESP8266 webservers webside.
Trin 6: Kontroller din temperatur og fugtighed i browseren
Så efter at have fået IP'en på din ESP8266 nodemcu, skal du bare åbne browser på pc eller mobil, men sørg for, at din pc/mobil er forbundet med det samme netværk som din Nodemcu/ESP8266, og gå derefter til din browser (hvis du bruger mobil, skal du bruge standardbrowser dvs. til Android, brug krom), og indtast derefter den IP, vi fik i forrige trin, og den lokale webside vil blive vist med fugtighed og temperatur som min vist på billedet. Så have det sjovt med at lave din rumtemperatur og fugtighedsovervågning.
Anbefalede:
Overvågning af rumtemperatur og fugtighed med ESP32 og AskSensors Cloud: 6 trin
Overvågning af rumtemperatur og fugtighed med ESP32 og AskSensors Cloud: I denne vejledning lærer du, hvordan du overvåger temperaturen og luftfugtigheden i dit værelse eller skrivebord ved hjælp af DHT11 og ESP32 forbundet til skyen. Vores tutorials -opdateringer kan findes her. DHHT11 Specifikationer: DHT11 -sensoren er i stand til at måle temperaturen
Temperaturovervågning ved hjælp af MCP9808 og Raspberry Pi: 4 trin
Temperaturovervågning ved hjælp af MCP9808 og Raspberry Pi: MCP9808 er en meget præcis digital temperatursensor ± 0,5 ° C I2C mini -modul. De er udformet med brugerprogrammerbare registre, der letter temperaturfølende applikationer. MCP9808 temperatursensoren med høj nøjagtighed er blevet en industri
Temperaturovervågning ved hjælp af MCP9808 og Arduino Nano: 4 trin
Temperaturovervågning ved hjælp af MCP9808 og Arduino Nano: MCP9808 er en meget præcis digital temperatursensor ± 0,5 ° C I2C mini -modul. De er udformet med brugerprogrammerbare registre, der letter temperaturfølende applikationer. MCP9808 temperatursensoren med høj nøjagtighed er blevet en industri
ESP8266 NodeMCU Access Point (AP) til webserver med DT11 temperatursensor og udskrivningstemperatur og fugtighed i browser: 5 trin
ESP8266 NodeMCU Access Point (AP) til webserver med DT11 temperatursensor og udskrivningstemperatur og luftfugtighed i browser: Hej fyre i de fleste projekter, vi bruger ESP8266, og i de fleste projekter bruger vi ESP8266 som webserver, så data kan tilgås på enhver enhed via wifi ved at få adgang til webserveren hostet af ESP8266, men det eneste problem er, at vi har brug for en fungerende router til
Temperaturovervågning ved hjælp af MCP9808 og Particle Photon: 4 trin
Temperaturovervågning ved hjælp af MCP9808 og Particle Photon: MCP9808 er en meget præcis digital temperatursensor ± 0,5 ° C I2C mini -modul. De er udformet med brugerprogrammerbare registre, der letter temperaturfølende applikationer. MCP9808 temperatursensoren med høj nøjagtighed er blevet en industri