Inhoudsopgave:
- Stap 1: Dingen die je nodig hebt
- Stap 2: Circuit
- Stap 3: Verkrijg de bibliotheken
- Stap 4: Coderen
- Stap 5: Verkrijg het IP
- Stap 6: Controleer uw temperatuur en vochtigheid in de browser
Video: ESP8266 Nodemcu-temperatuurbewaking met DHT11 op een lokale webserver - Kamertemperatuur en -vochtigheid in uw browser krijgen: 6 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
Hallo allemaal, vandaag gaan we een vochtigheids- en temperatuurbewakingssysteem maken met behulp van ESP 8266 NODEMCU & DHT11-temperatuursensor. Temperatuur en vochtigheid worden verkregen van de DHT11-sensor en u kunt in een browser zien welke webpagina wordt beheerd door esp 8266 door deze op een lokale webserver te hosten.
Stap 1: Dingen die je nodig hebt
Je hebt de volgende dingen nodig voor dit project: 1x ESP 8266 Nodemcu:
1x DHT11: https://www.utsource.net/itm/p/8831706.html1x breadboard:.:
Enkele jumpers:
Stap 2: Circuit
Het circuit is heel eenvoudig sluit alles aan Volgens zoals getoond in schmatics
Stap 3: Verkrijg de bibliotheken
Open uw Arduino IDE en ga naar Sketch > Bibliotheek opnemen > Bibliotheken beheren. De bibliotheekmanager zou moeten openen. Zoek naar "DHT" in het zoekvak en installeer de DHT-bibliotheek van Adafruit. Na het installeren van de DHT-bibliotheek van Adafruit, typt u "Adafruit Unified Sensor" in het zoekvak. Scroll helemaal naar beneden om de bibliotheek te vinden en te installeren. Nadat u de bibliotheken hebt geïnstalleerd, start u uw Arduino IDE opnieuw op.
Stap 4: Coderen
Nadat je bovenstaande dingen hebt gedaan, upload je de volgende code naar ESP8266 nodemcu (selecteer de juiste poort en bord) en plaats voordat je de code uploadt ssid & wachtwoord van je wifi in de code: // Inclusief de ESP8266 WiFi-bibliotheek #include #include "DHT. h"// Maak een van de onderstaande regels ongedaan voor het type DHT-sensor dat u gebruikt!#define DHTTYPE DHT11 // DHT 11//#define DHTTYPE DHT21 // DHT 21 (AM2301)//#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321// Vervang door uw netwerkdetailsconst char* ssid = "YOUR_NETWORK_NAME";const char* password = "YOUR_NETWORK_PASSWORD";// Webserver op poort 80WiFiServer server(80);// DHT Sensorconst int DHTPin = 5;// Initialiseer DHT-sensor. DHT dht(DHTPin, DHTTYPE);// Tijdelijke variabelenstatic char celsiusTemp[7];static char fahrenheitTemp[7];static char vochtigheidTemp[7];// wordt maar één keer uitgevoerd in bootvoid setup() { // Seriële poort initialiseren voor foutopsporing Serial.begin (115200); vertraging(10); dht.begin(); // Verbinding maken met wifi-netwerk Serial.println(); Serial.print("Verbinding maken met "); Seriële.println(ssid); WiFi.begin(ssid, wachtwoord); while (WiFi.status() != WL_CONNECTED) {vertraging (500); Serieel.print("."); } Serieel.println(""); Serial.println("WiFi verbonden"); // Starten van de webserver server.begin(); Serial.println("Webserver actief. Wachten op ESP IP…"); vertraging (10000); // Afdrukken van het ESP IP-adres Serial.println(WiFi.localIP());}// loopt steeds opnieuwvoid loop() {// Luisteren naar nieuwe klanten WiFiClient client = server.available(); if (klant) { Serial.println ("Nieuwe klant"); // bolean om te lokaliseren wanneer het http-verzoek eindigt boolean blank_line = true; while (client.connected()) { if (client.available()) { char c = client.read(); if (c == '\n' && blank_line) { // Sensormetingen kunnen ook tot 2 seconden 'oud' zijn (het is een erg trage sensor) float h = dht.readHumidity(); // Lees temperatuur als Celsius (de standaard) float t = dht.readTemperature (); // Lees temperatuur als Fahrenheit (isFahrenheit = true) float f = dht.readTemperature (true); // Controleer of het lezen is mislukt en sluit vroeg af (om het opnieuw te proberen). if (isnan(h) || isnan(t) || isnan(f)) { Serial.println("Kan niet lezen van DHT-sensor!"); strcpy(celsiusTemp, "Mislukt"); strcpy(fahrenheitTemp, "Mislukt"); strcpy(humidityTemp, "Mislukt"); } else{ // Berekent temperatuurwaarden in Celsius + Fahrenheit en Vochtigheid 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, vochtigheidTemp); // U kunt de volgende Serial.print's verwijderen, het is alleen voor foutopsporingsdoeleinden Serial.print("Vochtigheid: "); Seriële.print(h); Serial.print(" %\t Temperatuur: "); Seriële.print(t); Serieel.print(" *C "); Serieafdruk(f); Serial.print(" *F\t Hitte-index: "); Serial.print(hic); Serieel.print(" *C "); Serial.print(hif); Serieel.print(" *F"); Serial.print("Vochtigheid: "); Seriële.print(h); Serial.print(" %\t Temperatuur: "); Seriële.print(t); Serieel.print(" *C "); Serieafdruk(f); Serial.print(" *F\t Hitte-index: "); Serial.print(hic); Serieel.print(" *C "); Serial.print(hif); Serieel.println(" *F"); } client.println("HTTP/1.1 200 OK"); client.println ("Inhoudstype: tekst/html"); client.println("Verbinding: sluiten"); klant.println(); // uw werkelijke webpagina die de temperatuur- en vochtigheidsclient weergeeft
Stap 5: Verkrijg het IP
U bekijkt de temperatuur en vochtigheid die we nodig hebben om het IP-adres van de webpagina te krijgen. Zorg er daarom voor dat uw esp8266 is aangesloten op uw pc en open vervolgens de seriële monitor en op de seriële monitor kunt u het IP-adres van uw ESP8266-webserver-webpagina zien.
Stap 6: Controleer uw temperatuur en vochtigheid in de browser
Dus nadat je het IP-adres van je ESP8266 nodemcu hebt gekregen, open je gewoon de browser op pc of mobiel, maar zorg ervoor dat je pc/mobiel is verbonden met hetzelfde netwerk als je Nodemcu/ESP8266 en ga dan naar je browser (als je mobiel gebruikt, gebruik dan de standaardbrowser dwz voor Android gebruik chrome) en typ vervolgens het IP-adres dat we in de vorige stap hebben gekregen en de lokale webpagina wordt weergegeven met vochtigheid en temperatuur zoals de mijne in afbeelding wordt getoond. Dus veel plezier met het maken van uw kamertemperatuur- en vochtigheidsmonitor.
Aanbevolen:
ESP 8266 Nodemcu Ws 2812 Neopixel-gebaseerde LED MOOD-lamp bestuurd door lokale webserver - Ajarnpa
ESP 8266 Nodemcu Ws 2812 Neopixel-gebaseerde LED MOOD-lamp bestuurd door lokale webserver: ESP 8266 Nodemcu Ws 2812 Neopixel-gebaseerde LED MOOD-lamp bestuurd met webserver
Maak een WiFi-toegangspunt en zorg voor een webserver op NodeMCU V3: 4 stappen
Maak een WiFi-toegangspunt en zorg voor een webserver op NodeMCU V3: in het vorige artikel heb ik het al gehad over het gebruik van NodeMCU ESP8266. In het artikel leg ik uit hoe je NodeMCU ESP8266 toevoegt aan Arduini IDE. Er zijn verschillende manieren om via internet te communiceren met NodeMCU ESP8266. NodeMCU maken als een
Een wifi-verbinding tot stand brengen met ESP8266 en het lokale IP-adres verkrijgen: 3 stappen:
Een wifi-verbinding tot stand brengen met ESP8266 en het lokale IP-adres ophalen: in deze tutorial zullen we zien hoe we een wifi-verbinding tot stand kunnen brengen met het ESP8266 wifi-bord. We zullen dat verbinden met het lokale wifi-netwerk
Toegang krijgen tot een extern rootbestandssysteem met behulp van DB410 als een Ethernet-dongle: 6 stappen
Toegang krijgen tot het externe rootbestandssysteem met behulp van DB410 als een Ethernet-dongle: Doelstellingen: Installeer de toolchain en hercompileer de kernel om ondersteuning voor USB Ethernet CDC-gadgets in te voegen; Maak boot.img opnieuw van Linaro om USB Ethernet CDC op te starten; Maak een NFS-server om het rootbestandssysteem te hosten; IP-configuratie in DEVICE en HOST
Hoe muziek te krijgen van BIJNA ELKE (Haha) website (zolang je het kunt horen, kun je het krijgen Ok prima als het in Flash is ingesloten, kun je dat misschien niet) BEWERKT !!!!! Info toegevoegd: 4 stappen
Hoe muziek te krijgen van BIJNA ELKE (Haha) website (zolang je het kunt horen, kun je het krijgen … Ok prima als het in Flash is ingesloten, kun je dat misschien niet) BEWERKT !!!!! Toegevoegde info: als je ooit naar een website gaat en een nummer speelt dat je leuk vindt en wilt, dan is hier de instructie voor jou, niet mijn schuld als je iets verknoeit (de enige manier waarop het zal gebeuren is als je dingen begint te verwijderen zonder reden )ik heb muziek kunnen krijgen voor