Inhoudsopgave:
- Stap 1: Componenten
- Stap 2: Sluit de DHT11 aan op de NodeMCU ESP8266-module
- Stap 3: Start Visuino en selecteer het ESP8266-bordtype
- Stap 4: In Visuino: een hostnaam en toegangspunt instellen
- Stap 5: In Visuino: voeg een TCP/IP-serversocket toe voor de communicatie
- Stap 6: In Visuino: DTH11 en geformatteerde tekstcomponent toevoegen met 2 analoge kanalen
- Stap 7: In Visuino: opgemaakte tekst instellen voor de serverrespons
- Stap 8: In Visuino: sluit de DHT11-component aan
- Stap 9: In Visuino: randdetectiecomponent toevoegen en verbinden
- Stap 10: In Visuino: sluit de geformatteerde tekstcomponent aan en voeg vertraging toe en sluit deze aan
- Stap 11: Genereer, compileer en upload de Arduino-code
- Stap 12: En speel…
Video: ESP8266 en Visuino: DHT11 temperatuur- en vochtigheidswebserver: 12 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
ESP8266-modules zijn geweldige goedkope stand-alone controllers met ingebouwde Wi-Fi, en ik heb er al een aantal Instructables over gemaakt.
DTH11/DTH21/DTH22 en AM2301 zijn erg populaire gecombineerde Arduino-sensoren voor temperatuur en vochtigheid, en ik heb er ook een aantal Instructables mee gemaakt, waaronder een Instructable op externe thermometer en vochtigheidssensor met 2 ESP8266 die met elkaar zijn verbonden op hun eigen privé Wi-Fi-netwerk.
In deze Instructable laat ik je zien hoe je een temperatuur- en vochtigheidswebserver kunt maken met ESP8266 en DHT11 en er verbinding mee kunt maken op je bestaande wifi-netwerk vanaf meerdere apparaten met een webbrowser.
Stap 1: Componenten
- OneNodeMCU ESP8266-kaart (ik gebruikte de NodeMCU 0.9-versie, maar elke andere, of zelfs op zichzelf staande ESP-12 of ESP-01 zal werken)
- Eén DHT11-sensormodule die ik heb gekregen van deze goedkope set met 37 sensoren
- 3 vrouwelijke-vrouwelijke jumperdraden
Stap 2: Sluit de DHT11 aan op de NodeMCU ESP8266-module
- Sluit de voeding (rode draad), aarde (zwarte draad) en gegevens (grijze draad) aan op de DHT11-module (Afbeelding 1 toont 2 verschillende soorten DHT11-sensormodules. Zoals u kunt zien, kunnen de pinnen verschillen, dus sluit ze zorgvuldig aan!)
- Sluit het andere uiteinde van de aardingsdraad (zwarte draad) aan op de aardingspin van de ESP8266-module (afbeelding 2)
- Sluit het andere uiteinde van de voedingsdraad (rode draad) aan op de 3,3 V voedingspin van de ESP8266-module (afbeelding 2)
- Sluit het andere uiteinde van de datadraad (grijze draad) aan op de digitale pin 2 van de ESP8266-module (afbeelding 3)
- Afbeelding 4 laat zien waar de grond, 3,3 V stroom en digitale 2 pinnen van de NodeMCU 0,9. zijn
Stap 3: Start Visuino en selecteer het ESP8266-bordtype
Om te beginnen met het programmeren van de Arduino, moet je de Arduino IDE vanaf hier hebben geïnstalleerd:
Houd er rekening mee dat er enkele kritieke bugs zijn in Arduino IDE 1.6.6
Zorg ervoor dat u 1.6.7 of hoger installeert, anders werkt deze Instructable niet!
Als je dat nog niet hebt gedaan, volg dan de stappen in deze Instructable om de Arduino IDE in te stellen om ESP 8266 te programmeren
De Visuino: https://www.visuino.com moet ook worden geïnstalleerd.
- Start Visuinoas getoond in de eerste foto
- Klik op de knop "Tools" op de Arduino-component (Afbeelding 1) in Visuino
- Wanneer het dialoogvenster verschijnt, selecteert u "NodeMCU ESP-12" zoals weergegeven op afbeelding 2
Stap 4: In Visuino: een hostnaam en toegangspunt instellen
Eerst moeten we de module configureren om verbinding te maken met een bestaand toegangspunt en er HostName aan toewijzen, zodat we deze op het netwerk kunnen ontdekken.
- Vouw in de Object Inspector de eigenschap "Modules" uit en vervolgens de subeigenschap "WiFi"
- Stel in de Object Inspector de waarde van de eigenschap "HostName" in op "dht11server" (Afbeelding 1)
- Vouw in de Object Inspector de subeigenschap "AccessPoints" van de "WiFi" uit en klik op de knop "…" naast de waarde (Afbeelding 2)
- Selecteer in de "AccessPoins"-editor "WiFi Access Point" in de rechterweergave en klik vervolgens op de "+"-knop aan de linkerkant om het access point toe te voegen (Afbeelding 2)
- Stel in de Object Inspector de waarde van de eigenschap "SSID" in op de SSID van uw Wi-Fi Hotspot (Access Point) (Afbeelding 4)
- Als uw Wi-Fi Hotspot (Access Point) een wachtwoord vereist, stelt u in de Object Inspector het wachtwoord in de waarde van de eigenschap "Password" in (Afbeelding 4)
- Sluit het dialoogvenster "Toegangspunten"
Stap 5: In Visuino: voeg een TCP/IP-serversocket toe voor de communicatie
Vervolgens moeten we een TCP/IP Server-socket toevoegen voor de communicatie.
- Klik in de Object Inspector op de knop "…" naast de waarde van de subeigenschap "Sockets" van de WiFi (Afbeelding 1)
- Selecteer in de Sockets-editor "TCP/IP Server" en klik vervolgens op de knop "+" (Afbeelding 2) om er een toe te voegen (Afbeelding 3)
- Sluit het dialoogvenster "Sockets"
Stap 6: In Visuino: DTH11 en geformatteerde tekstcomponent toevoegen met 2 analoge kanalen
Om de temperatuur en vochtigheid van de DHT11 te regelen en af te lezen, moeten we er een component voor toevoegen in Visuino.
We moeten ook de webpagina uit de gegevens genereren. De pagina is slechts een HTML-tekstdocument, dus we kunnen de component Opgemaakte tekst gebruiken om deze te genereren.
- Typ "dht" in het vak Filter van de Component Toolbox en selecteer vervolgens de component "Vochtigheid en thermometer DHT11/21/22/AM2301" (Afbeelding 1) en zet deze neer in het ontwerpgebied
- Typ "form" in het filtervak van de Component Toolbox en selecteer vervolgens de component "Formatted Text" (Afbeelding 2) en zet deze neer in het ontwerpgebied
- Klik op de knop "Extra" van de component FormattedText1 (Afbeelding 3)
- Selecteer in de Elementen-editor het Analoge Element aan de rechterkant en klik 2 keer op de "+"-knop aan de linkerkant (Afbeelding 4), om er 2 toe te voegen (Afbeelding 5)
- Sluit de "Elementen"-editor
Stap 7: In Visuino: opgemaakte tekst instellen voor de serverrespons
We moeten de HTML-tekst specificeren die wordt gegenereerd wanneer een webclient verbinding maakt met de server.
We specificeren de verbinding die moet worden gesloten nadat de gegevens die ik heb verzonden, en zullen de browser ook instrueren om na 5 seconden opnieuw verbinding te maken (vernieuwen) door "Vernieuwen: 5" toe te voegen aan het document. Op deze manier zal de webpagina elke 5 seconden verversen.
- Selecteer in het ontwerpgebied de component FormattedText1 (Afbeelding 1)
- Selecteer in de Object Inspector de eigenschap "Tekst" en klik op de knop "…" naast de waarde ervan (Afbeelding 1)
- Typ in de "Tekst"-editor:"HTTP/1.1 200 OK""Inhoudstype: tekst/html""Verbinding: sluiten""Vernieuwen: 5""""""""""Temperatuur: %0""Vochtigheid: %1"""""(Afbeelding 2) De %0 wordt vervangen door de waarde van AnalogElement1 en %1 wordt vervangen door de waarde van AnalogElement2
- Klik op de knop OK om het dialoogvenster te sluiten
Stap 8: In Visuino: sluit de DHT11-component aan
- Sluit de "Temperature" output pin van de HumidityThermometer1 component aan op de "In" pin van de AnalogElement1 van de FormattedText1 component (Afbeelding 1)
- Verbind de "Vochtigheid" output pin van de HumidityThermometer1 component met de "In" pin van de AnalogElement2 van de FormattedText1 component (Afbeelding 2)
- Sluit de "Sensor"-pin van de HumidityThermometer1-component aan op de "digitale" ingangspin van het "digitale [2]"-kanaal van de Arduino-component (afbeelding 3)
Stap 9: In Visuino: randdetectiecomponent toevoegen en verbinden
Elke keer dat er een nieuwe verbinding is, moeten we de HTML-tekst verzenden. Voordat we verzenden, moeten we even wachten, omdat de webbrowsers een verzoek moeten verzenden voordat ze resultaat verwachten. Om dat te doen, zullen we een vertragingscomponent gebruiken die is aangesloten op de "Verbonden" pin van de TCP/IP Server Socket.
- Typ "vertraging" in het filtervak van de Component Toolbox en selecteer vervolgens de component "Delay" (Afbeelding 1) en zet deze neer in het ontwerpgebied
- Stel in de Eigenschappen de waarde van de eigenschap "Interval (uS)" in op 200000 (Afbeelding 2)
- Verbind de “Connected” pin van de “Modules. WiFi. Sockets. TCPServer1” van de “NodeMCU ESP-12” component, met de “In” pin van de Delay1 component (Afbeelding 3)
- Verbind de "Out" pin van de Delay1 component met de "Clock" input pin van de FormattedText1 component (Afbeelding 4)
Stap 10: In Visuino: sluit de geformatteerde tekstcomponent aan en voeg vertraging toe en sluit deze aan
- Verbind de "Out" -pin van de FormattedText1-component met de "In" -pin van de "Modules. WiFi. Sockets. TCPServer1" van de "NodeMCU ESP-12" -component (afbeelding 1)
- Typ "vertraging" in het filtervak van de Component Toolbox, selecteer vervolgens de component "Delay" (Afbeelding 2) en zet deze neer in het ontwerpgebied
- Verbind de "Out" -pin van de FormattedText1-component met de "In" -pin van de Delay2-component (Afbeelding 3)
- Verbind de “Out” pin van de Delay2 component met de “Disconnect” input pin van de “Modules. WiFi. Sockets. TCPServer1” van de “NodeMCU ESP-12” component (Afbeelding 4)
De Delay-component zal de socket kort nadat de tekst is verzonden, loskoppelen.
Stap 11: Genereer, compileer en upload de Arduino-code
- Druk in Visuino op F9 of klik op de knop in afbeelding 1 om de Arduino-code te genereren en de Arduino IDE te openen
- Sluit de NodeMCU-module met USB-kabel aan op de computer
- Selecteer het bordtype en de seriële poort zoals ik je in deze Instructable heb laten zien:
- Klik in de Arduino IDE op de knop Uploaden om de code te compileren en te uploaden (Afbeelding 2)
Stap 12: En speel…
Gefeliciteerd! Je hebt een Wi-Fi Temperature and Humidity Web Server gemaakt.
Op Afbeelding 1 en in de Video kunt u het aangesloten en ingeschakelde project zien. Ik gebruikte een kleine USB Power Bank om de module van stroom te voorzien.
Zorg ervoor dat je in het project bij stap 4 de juiste SSID en het juiste wachtwoord voor je wifi-hotspot hebt ingevoerd
Als u een webbrowser opent op uw computer of mobiele apparaat en typt:
dht11server./
En druk op Enter, u ziet de temperatuur en vochtigheid gemeten door de module. De meting wordt elke 5 seconden vernieuwd, zoals gespecificeerd in stap 7.
Zorg ervoor dat u de punt aan het einde van de naam toevoegt, anders kan Windows de domeinnaam niet herleiden
Op Afbeelding 2 ziet u het volledige Visuino-diagram.
Ook bijgevoegd is het Visuino-project, dat ik voor deze Instructable heb gemaakt. U kunt het downloaden en openen in Visuino:
Aanbevolen:
M5STACK Temperatuur, vochtigheid en druk weergeven op de M5StickC ESP32 met Visuino - Eenvoudig te doen - Ajarnpa
M5STACK Temperatuur, vochtigheid en druk weergeven op M5StickC ESP32 met Visuino - Eenvoudig te doen: In deze tutorial zullen we leren hoe ESP32 M5Stack StickC te programmeren met Arduino IDE en Visuino om de temperatuur, vochtigheid en druk weer te geven met behulp van ENV-sensor (DHT12, BMP280, BMM150)
Automatische koelventilator met servo- en DHT11-temperatuur- en vochtigheidssensor met Arduino - Ajarnpa
Automatische koelventilator met behulp van servo- en DHT11-temperatuur- en vochtigheidssensor met Arduino: in deze tutorial leren we hoe u & draai een ventilator wanneer de temperatuur boven een bepaald niveau stijgt
Inleiding tot Visuino - Visuino voor beginners: 6 stappen
Inleiding tot Visuino | Visuino voor beginners.: In dit artikel wil ik het hebben over Visuino, een andere grafische programmeersoftware voor Arduino en soortgelijke microcontrollers. Als je een elektronische hobbyist bent die in de wereld van Arduino wil stappen, maar geen voorafgaande programmeerkennis heeft
Visuino I2C BMP280 druk, temperatuur + OLED - Ajarnpa
Visuino I2C BMP280-druk, temperatuur + OLED: in deze tutorial gebruiken we I2C BMP280-druk, temperatuursensor, OLED-lcd, Arduino UNO meet druk en temperatuur en geeft de resultaten weer op het LCD-scherm. Bekijk een demonstratievideo
ESP32 Gebaseerde M5Stack M5stick C Weermonitor Met DHT11 - Monitor temperatuur vochtigheid & warmte-index op M5stick-C met DHT11 - Ajarnpa
ESP32 Gebaseerde M5Stack M5stick C Weermonitor Met DHT11 | Monitor temperatuurvochtigheid en hitte-index op M5stick-C Met DHT11: Hallo allemaal, in deze instructables leren we hoe we de DHT11-temperatuursensor kunnen koppelen aan m5stick-C (een ontwikkelbord van m5stack) en deze weergeven op het display van m5stick-C. Dus in deze tutorial zullen we de temperatuur, vochtigheid & warmte ik