Sisukord:

ESP8266 NodeMCU pääsupunkt (AP) veebiserverile, millel on DT11 temperatuuriandur ning printimise temperatuur ja niiskus brauseris: 5 sammu
ESP8266 NodeMCU pääsupunkt (AP) veebiserverile, millel on DT11 temperatuuriandur ning printimise temperatuur ja niiskus brauseris: 5 sammu

Video: ESP8266 NodeMCU pääsupunkt (AP) veebiserverile, millel on DT11 temperatuuriandur ning printimise temperatuur ja niiskus brauseris: 5 sammu

Video: ESP8266 NodeMCU pääsupunkt (AP) veebiserverile, millel on DT11 temperatuuriandur ning printimise temperatuur ja niiskus brauseris: 5 sammu
Video: Как сделать 2-канальное реле Wi-Fi ESP8266 ESP-01 | ESP-01 Домашняя автоматизация | УдаленныйXY 2024, November
Anonim
ESP8266 NodeMCU juurdepääsupunkt (AP) veebiserverile, millel on DT11 temperatuuriandur ning printimise temperatuur ja niiskus brauseris
ESP8266 NodeMCU juurdepääsupunkt (AP) veebiserverile, millel on DT11 temperatuuriandur ning printimise temperatuur ja niiskus brauseris

Tere poisid, enamikus projektides kasutame ESP8266 ja enamikus projektides kasutame veebiserverina ESP8266, nii et andmetele pääseb juurde mis tahes seadmes wifi kaudu, kui pääsete juurde ESP8266 hostitud veebiserverile, kuid ainus probleem on see, et vajame töötavat ruuterit see ja meie seade peab samuti olema ruuteriga ühendatud ja peame oma wifi mandaadi koodi sisestama, nii et kui muudate wifi, peate koodi mandaati muutma ja peate selle uuesti laadima. Nii et põhimõtteliselt on meil siin kaks probleemi: 1- me vajame veebiserveri (ruuteri) majutamiseks wifi-ühendust 2- iga kord, kui wifi-ühendust tuleb muuta, peame sisestama mandaadi ja koodi uuesti laadima. Nii et selle probleemi vältimiseks saame selle asemel anda WiFi -juurdepääsul saame ESP8266 luua oma wifi -ühenduse, nii et kui me selle WiFi -ühenduse loome, pääseme juurde ESP8266 veebiserverile. Nii et põhimõtteliselt võõrustame pääsupunktiga veebiserverit ESP8266 -ga. Nii et selles juhendis me hakkab looma veebiserver, mis kasutab pääsupunkti koos ESP8266 -ga ja ühendame veebiserveri lehel DHT11 anduri ning prinditemperatuuri ja niiskuse.

Samm: asjad, mida vajate

Asjad, mida vajate
Asjad, mida vajate
Asjad, mida vajate
Asjad, mida vajate

1x ESP 8266 Nodemcu: 1x DHT11: 1x leivalaud:.: Vähesed hüppajad:

2. samm: hankige DHT11 teegid

Hankige DHT11 raamatukogud
Hankige DHT11 raamatukogud
Hankige DHT11 raamatukogud
Hankige DHT11 raamatukogud

Avage oma Arduino IDE ja valige Visand> Kaasa kogu> Halda raamatukogusid. Raamatukoguhaldur peaks avanema. Otsige otsingukastist „DHT” ja installige DHT -teek Adafruitist. Pärast DHT -teegi installimist Adafruitist tippige otsingukasti „Adafruit Unified Sensor”. Kogu leidmiseks ja selle installimiseks kerige lõpuni alla. Pärast raamatukogude installimist taaskäivitage Arduino IDE.

Samm: ühendused

Ühendused
Ühendused

Ahel on väga lihtne ühendada kõik Vastavalt skemaatikale näidatule

Samm: pääsupunkti kood

Pöörduspunkti kood
Pöörduspunkti kood

Oma eelmistest juhenditest muudan selle juhendi veebiserveri koodi:

Ja muutke see pääsupunkti veebiserveri koodiks. Palun kopeerige allpool toodud kood:

#sisalda "Arduino.h"#sisalda "ESP8266WiFi.h"

#include "Hash.h"

#include "ESPAsyncTCP.h"

#include "ESPAsyncWebServer.h"

#include "Adafruit_Sensor.h"

#sisaldab "DHT.h"

const char* ssid = "ESP8266"; const char* password = "password";#define DHTPIN 5 // DHT -anduriga ühendatud digitaalne tihvt // Eemaldage kasutatava anduri tüüp: //#define DHTTYPE DHT11 // DHT 11#define DHTTYPE DHT22 // DHT 22 (AM2302) //#define DHTTYPE DHT21 // DHT 21 (AM2301) DHT dht (DHTPIN, DHTTYPE); // praegune temperatuur ja niiskus, uuendatud silmusena () float t = 0,0; float h = 0.0; // AsyncWebServeri objekti loomine pordile 80AsyncWebServer server (80); // Üldiselt peaksite aega hoidvate muutujate jaoks kasutama "unsigned long" // Väärtus muutub kiiresti liiga suureks, et int salvestada kaua allkirjastatud = 0; // salvestab viimast korda, kui DHT -d värskendati // Värskendab DHT -näitu iga 10 sekundi järel, pikk intervall = 10000; const char index_html PROGMEM = R "rawliteral (ESP8266 DHT -server

Temperatuur % TEMPERATURE % ° C

Niiskus % HUMIDITY % %) rawliteral "; // Asendab kohatäite DHT väärtustegaString protsessor (const String & var) {//Serial.println(var); if (var ==" TEMPERATURE ") {return String (t);} else if (var == "HUMIDITY") {return String (h);} return String ();} void setup () {// Seeriaport silumise eesmärgil Serial.begin (115200); dht.begin (); Serial.print ("AP seadistamine (Pöörduspunkt)… "); // Eemaldage parooli parameeter, kui soovite, et AP (pääsupunkt) oleks avatud WiFi.softAP (ssid, parool); IPAddress IP = WiFi.softAPIP (); Serial.print (" AP IP -aadress: "); Serial.println (IP); // Prindi ESP8266 kohalik IP -aadress Serial.println (WiFi.localIP ()); // Juure / veebilehe serveri marsruut.on (" / ", HTTP_GET, (AsyncWebServerRequest *päring) {request-> send_P (200, "text/html", index_html, protsessor);}); server.on ("/temperatuur", HTTP_GET, (AsyncWebServerRequest *päring) {request- > send_P (200, "tekst/tavaline", string (t).c_str ());}); server.on ("/niiskus", HTTP_GET, (AsyncWebServerRequest *päring) {request-> send_P (200, "tekst/tavaline", String (h).c_str ()); }); // Käivita server server.begin ();} void loop () {unsigned long currentMillis = millis (); if (currentMillis - previousMillis> = intervall) {// salvestage viimane kord, kui värskendasite DHT väärtusi previousMillis = currentMillis; // Temperatuuri lugemine Celsiuse järgi (vaikimisi) float newT = dht.readTemperature (); // Temperatuuri lugemine Fahrenheiti järgi (isFahrenheit = tõene) // float newT = dht.readTemperature (true); // kui temperatuuri lugemine ebaõnnestus, ärge muutke t väärtust, kui (isnan (newT)) {Serial.println ("Ebaõnnestus DHT -andurilt lugemiseks! "); } muu {t = newT; Seeria.println (t); } // Loe Niiskus float newH = dht.readHumidity (); // kui niiskuse lugemine ebaõnnestus, ära muuda h väärtust, kui (isnan (newH)) {Serial.println ("DHT -andurilt lugemine nurjus!"); } muu {h = newH; Seeria.println (h); }}} Enne koodi üleslaadimist sisestage kindlasti järgmised asjad: const char* ssid = "ESP8266"; // mida iganes ssid wifi soovidconst char* password = "password"; // pass, et ühenduda ülaltoodud ssidSetiga ESP8266 pääsupunktiks: esp8266 seadistamiseks pääsupunktiks kasutame softAP käsku, nagu allpool näidatud; pääsupunkti loomiseks. WiFi.softAP (ssid, parool); SoftAP () meetodile saate edastada ka muid valikulisi parameetreid. Siin on kõik parameetrid: Kui avate seeriamonitori, näete pääsupunkti IP -d. Seda tehakse koodi järgides. IPAddress IP = WiFi.softAPIP (); Serial.print ("AP IP -aadress:"); Serial.println (IP); Vaikimisi on IP -aadress: 192.168.4.1

5. samm: viimane etapp: testimine

Viimane samm: testimine
Viimane samm: testimine

Pärast koodi üleslaadimist avage oma mobiiltelefoni/arvuti wifi ja ühendage esp8266 wifi -ga (ükskõik milline kood ja sisestatud parool kasutavad seda). Pärast ühendamist avage lihtsalt oma brauseris IP, mille saime jadamonitorilt (https://192.168.4.1.) ja te näete oma brauseris temperatuuri ja niiskust minu oma. Ja me ei kasutanud selle tegemiseks ühtegi WiFi -võrku, nii et esp8266 juurdepääsupunkt töötab.

Soovitan: