Innehållsförteckning:
- Steg 1: Saker du behöver
- Steg 2: Skaffa DHT11 -biblioteken
- Steg 3: Anslutningar
- Steg 4: Kod för åtkomstpunkt
- Steg 5: Sista steget: Testning
Video: ESP8266 NodeMCU Access Point (AP) för webbserver med DT11 temperatursensor och utskriftstemperatur och luftfuktighet i webbläsare: 5 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
Hej killar i de flesta projekten använder vi ESP8266 och i de flesta projekten använder vi ESP8266 som en webbserver så att data kan nås på vilken enhet som helst via wifi genom att komma åt webbservern som ESP8266 är värd för, men det enda problemet är att vi behöver en fungerande router för det och vår enhet måste också anslutas till routern och vi måste sätta in våra wifi -uppgifter i koden, så om du byter wifi måste du ändra autentiseringsuppgifterna i koden och du måste ladda upp den igen. Så i princip har vi två problem här: 1- vi behöver en wifi-anslutning för att vara värd för webbservern (routern) 2- varje gång om wifi-anslutningen behöver ändras måste vi ange inloggningsuppgifter och ladda upp koden igen. Så för att undvika allt detta problem är det vi kan göra istället för att ge en wifi -åtkomst kan vi få ESP8266 att skapa en egen wifi -anslutning så om vi ansluter till den wifi -anslutningen kan vi komma åt ESP8266: s webbserver. Så i princip kommer vi att vara värd för en webbserver med ESP8266 med åtkomstpunkt. kommer att skapa en webbserver som använder åtkomstpunkt med ESP8266 och vi ansluter en DHT11 -sensor och skriver ut temperatur och luftfuktighet på webserversidan.
Steg 1: Saker du behöver
1x ESP 8266 Nodemcu: 1x DHT11: 1x brödbräda:.: Några hoppare:
Steg 2: Skaffa DHT11 -biblioteken
Öppna din Arduino IDE och gå till Sketch> Include Library> Manage Libraries. Library Manager ska öppna. Sök efter "DHT" i sökrutan och installera DHT -biblioteket från Adafruit. Efter att ha installerat DHT -biblioteket från Adafruit skriver du "Adafruit Unified Sensor" i sökrutan. Bläddra hela vägen ner för att hitta biblioteket och installera det. Efter att du har installerat biblioteken startar du om din Arduino IDE.
Steg 3: Anslutningar
Kretsen är mycket enkel att ansluta allt enligt som visas i schmatik
Steg 4: Kod för åtkomstpunkt
Från mina tidigare instruktioner kommer jag att ändra webbserverkoden för dessa instruktioner:
Och förvandla den till åtkomstpunktens webbserverkod. Kopiera koden nedan:
#inkludera "Arduino.h" #include "ESP8266WiFi.h"
#inkludera "Hash.h"
#inkludera "ESPAsyncTCP.h"
#inkludera "ESPAsyncWebServer.h"
#inkludera "Adafruit_Sensor.h"
#inkludera "DHT.h"
const char* ssid = "ESP8266"; const char* password = "password";#definiera DHTPIN 5 // Digital pin ansluten till DHT -sensorn // Avmarkera den typ av sensor som används: //#define DHTTYPE DHT11 // DHT 11#definiera DHTTYPE DHT22 // DHT 22 (AM2302) //#definiera DHTTYPE DHT21 // DHT 21 (AM2301) DHT dht (DHTPIN, DHTTYPE); // nuvarande temperatur och luftfuktighet, uppdaterad i loop () float t = 0,0; float h = 0.0; // Skapa AsyncWebServer -objekt på port 80AsyncWebServer -server (80); // Generellt bör du använda "osignerad lång" för variabler som håller tid // Värdet blir snabbt för stort för en int för att lagra signerad lång tidigareMillis = 0; // kommer att lagra senast DHT uppdaterades // Uppdaterar DHT -avläsningar var 10: e sekund, långa intervall = 10000; const char index_html PROGMEM = R "rawliteral (ESP8266 DHT -server
Temperatur % TEMPERATUR % ° C
Luftfuktighet % HUMIDITY % %) rawliteral "; // Ersätter platshållare med DHT -värdenString -processor (const String & var) {//Serial.println(var); if (var ==" TEMPERATURE ") {return String (t);} annars if (var == "HUMIDITY") {return String (h);} return String ();} void setup () {// Seriell port för felsökningsändamål Serial.begin (115200); dht.begin (); Serial.print ("Inställning av AP (Access Point)… "); // Ta bort lösenordsparametern om du vill att AP (Access Point) ska vara öppet WiFi.softAP (ssid, lösenord); IPAddress IP = WiFi.softAPIP (); Serial.print (" AP IP -adress: "); Serial.println (IP); // Skriv ut ESP8266 lokal IP -adress Serial.println (WiFi.localIP ()); // Rutt för root / webbserver.on (" / ", HTTP_GET, (AsyncWebServerRequest *begäran) {request-> send_P (200, "text/html", index_html, processor);}); server.on ("/temperatur", HTTP_GET, (AsyncWebServerRequest *begäran) {request- > send_P (200, "text/plain", String (t).c_str ());}); server.on ("/fuktighet", HTTP_GET, (AsyncWebServerRequest *begäran) {request-> send_P (200, "text/vanlig", Sträng (h).c_str ()); }); // Starta server server.begin ();} void loop () {unsigned long currentMillis = millis (); if (currentMillis - previousMillis> = intervall) {// spara senaste gången du uppdaterade DHT -värdena previousMillis = currentMillis; // Läs temperaturen som Celsius (standard) float newT = dht.readTemperature (); // Läs temperaturen som Fahrenheit (isFahrenheit = true) // float newT = dht.readTemperature (true); // om temperaturen läst misslyckades, ändra inte t -värdet om (isnan (newT)) {Serial.println ("Misslyckades att läsa från DHT -sensor! "); } annat {t = newT; Serial.println (t); } // Läs Luftfuktighet float newH = dht.readHumidity (); // om luftfuktighetsavläsning misslyckades, ändra inte h -värdet om (isnan (newH)) {Serial.println ("Det gick inte att läsa från DHT -sensor!"); } annat {h = newH; Serial.println (h); }}} Innan du laddar upp koden, se till att du anger följande: const char* ssid = "ESP8266"; // oavsett vilken ssid av wifi du vill ha konstant char* password = "password"; // pass för att ansluta till ovanstående ssidSet ESP8266 som en åtkomstpunkt: För att ställa in esp8266 som en åtkomstpunkt använder vi softAP -kommandot enligt nedan; för att skapa en åtkomstpunkt. WiFi.softAP (ssid, lösenord); Det finns också andra valfria parametrar du kan skicka till softAP () -metoden. Här är alla parametrar: Om du öppnar den seriella bildskärmen kan du se åtkomstpunktens IP. Vilket görs genom att följa en del av koden. IPAddress IP = WiFi.softAPIP (); Serial.print ("AP IP -adress:"); Serial.println (IP); Som standard är IP -adressen: 192.168.4.1
Steg 5: Sista steget: Testning
När du har laddat upp koden öppnar du din mobil/pc wifi och ansluter till esp8266 wifi (oavsett vilken ssid och lösenord du har angett i koden använder den). Efter anslutning öppnar du bara IP: n i din webbläsare som vi fick från seriell bildskärm (https://192.168.4.1.) och du kommer att kunna se temperatur och luftfuktighet i din webbläsare som min. Och vi använde inte något wifi -nätverk för att få det gjort så det är hur åtkomstpunkten för esp8266 fungerar.
Rekommenderad:
ESP8266 och Visuino: DHT11 webbserver för temperatur och luftfuktighet: 12 steg
ESP8266 och Visuino: DHT11 Temperatur- och luftfuktighetswebbserver: ESP8266-moduler är bra fristående fristående styrenheter med inbyggt Wi-Fi, och jag har redan gjort ett antal instruktioner om dem. DTH11/DTH21/DTH22 och AM2301 är mycket populära kombinerade temperaturer och Arduino -sensorer för fuktighet, och jag gjorde ett antal
DHT -övervakning av temperatur och luftfuktighet med hjälp av ESP8266 och AskSensors IoT -plattform: 8 steg
DHT -övervakning av temperatur och luftfuktighet med hjälp av ESP8266 och AskSensors IoT -plattform: I en tidigare instruktion presenterade jag en steg -för -steg -guide för att komma igång med ESP8266 -nodenMCU och AskSensors IoT -plattform. I den här självstudien ansluter jag en DHT11 -sensor till noden MCU. DHT11 är en vanlig temperatur och fukt
ESP8266 Nodemcu temperaturövervakning med DHT11 på en lokal webbserver - Få rumstemperatur och luftfuktighet i din webbläsare: 6 steg
ESP8266 Nodemcu temperaturövervakning med DHT11 på en lokal webbserver | Få rumstemperatur och luftfuktighet i din webbläsare: Hej killar idag, vi kommer att göra en luftfuktighet & temperaturövervakningssystem med ESP 8266 NODEMCU & DHT11 temperaturgivare. Temperatur och luftfuktighet kommer från DHT11 Sensor & det kan ses i en webbläsare vilken webbsida som kommer att hanteras
Hur man använder DHT11 temperatursensor med Arduino och utskriftstemperatur Värme och luftfuktighet: 5 steg
Hur man använder DHT11 temperatursensor med Arduino och utskriftstemperatur Värme och luftfuktighet: DHT11 -sensorn används för att mäta temperatur och luftfuktighet. De är mycket populära elektronikhobbyister. DHT11 -fuktighets- och temperatursensorn gör det väldigt enkelt att lägga till fukt- och temperaturdata till dina DIY -elektronikprojekt. Det är per
ThingSpeak, ESP32 och trådlös temp och luftfuktighet för långa avstånd: 5 steg
ThingSpeak, ESP32 och trådlöst temp och luftfuktighet för långa avstånd: I denna handledning kommer vi att mäta olika temperatur- och luftfuktighetsdata med hjälp av temp- och fuktighetssensor. Du lär dig också hur du skickar dessa data till ThingSpeak. Så att du kan analysera det var som helst för olika applikationer