Съдържание:
- Стъпка 1: Неща, от които се нуждаете
- Стъпка 2: Вземете библиотеките на DHT11
- Стъпка 3: Връзки
- Стъпка 4: Код на точката за достъп
- Стъпка 5: Последна стъпка: Тестване
Видео: ESP8266 NodeMCU точка за достъп (AP) за уеб сървър с DT11 температурен сензор и температура и влажност на печат в браузъра: 5 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:51
Здравейте момчета, в повечето проекти използваме ESP8266 и в повечето проекти използваме ESP8266 като уеб сървър, така че данните могат да бъдат достъпни на всяко устройство през wifi чрез достъп до уеб сървъра, хостван от ESP8266, но единственият проблем е, че се нуждаем от работещ рутер за това и нашето устройство също трябва да бъде свързано към рутера и трябва да поставим нашите идентификационни данни за wifi в кода, така че ако променяте wifi, трябва да промените идентификационните данни в кода и трябва да го изтеглите отново. Така че тук имаме два проблема: 1- ние се нуждаем от wifi връзка, за да хостваме уеб сървъра (рутера) 2- всеки път, когато wifi връзката трябва да бъде променена, трябва да въведем идентификационни данни и да презаредим кода. Така че, за да избегнем целия този проблем, ние можем да направим вместо wifi достъп, можем да направим ESP8266 да създаде своя собствена wifi връзка, така че ако се свържем с тази wifi връзка, можем да получим достъп до уеб сървъра на ESP8266. Така че по принцип ще хостваме уеб сървър с ESP8266 с точка за достъп. Така че в тази инструкция ние ще създава уеб сървър, използващ точка за достъп с ESP8266 и ние ще свържем сензор DHT11 и ще отпечатаме температурата и влажността на страницата на уеб сървъра.
Стъпка 1: Неща, от които се нуждаете
1x ESP 8266 Nodemcu: 1x DHT11: 1x макет:.: Малко джъмпери:
Стъпка 2: Вземете библиотеките на DHT11
Отворете вашата Arduino IDE и отидете на Sketch> Include Library> Manage Libraries. Библиотечният мениджър трябва да се отвори. Търсете „DHT“в полето за търсене и инсталирайте DHT библиотеката от Adafruit. След като инсталирате DHT библиотеката от Adafruit, въведете „Adafruit Unified Sensor“в полето за търсене. Превъртете докрай, за да намерите библиотеката и да я инсталирате. След като инсталирате библиотеките, рестартирайте вашата Arduino IDE.
Стъпка 3: Връзки
Схемата е много лесна за свързване на всичко според както е показано в схеми
Стъпка 4: Код на точката за достъп
От предишните ми инструкции ще променя кода на уеб сървъра на тези инструкции:
И го превърнете в код на уеб сървър на точка за достъп. Моля, копирайте кода, предоставен по -долу:
#include "Arduino.h" #include "ESP8266WiFi.h"
#include "Hash.h"
#include "ESPAsyncTCP.h"
#include "ESPAsyncWebServer.h"
#include "Adafruit_Sensor.h"
#include "DHT.h"
const char* ssid = "ESP8266"; const char* password = "password";#дефинирайте DHTPIN 5 // Цифров щифт, свързан към DHT сензора // Декомментирайте използвания тип сензор: //#дефинирайте DHTTYPE DHT11 // DHT 11#дефинирайте DHTTYPE DHT22 // DHT 22 (AM2302) //#дефинирайте DHTTYPE DHT21 // DHT 21 (AM2301) DHT dht (DHTPIN, DHTTYPE); // текуща температура и влажност, актуализирано в цикъл () float t = 0.0; float h = 0.0; // Създайте обект AsyncWebServer на порт 80AsyncWebServer сървър (80); // Като цяло трябва да използвате "unsigned long" за променливи, които държат времето // Стойността бързо ще стане твърде голяма за int за съхраняване на подписан дълъг предишенMillis = 0; // ще съхранява последния път, когато DHT е актуализиран // Актуализира показанията на DHT на всеки 10 секунди const дълъг интервал = 10000; const char index_html PROGMEM = R "rawliteral (ESP8266 DHT сървър
Температура % TEMPERATURE % ° C
Влажност % HUMIDITY % %) rawliteral "; // Заменя заместителя с стойности на DHTString процесор (const String & var) {//Serial.println(var); if (var ==" TEMPERATURE ") {връща String (t);} else if (var == "HUMIDITY") {return String (h);} return String ();} void setup () {// Сериен порт за отстраняване на грешки Serial.begin (115200); dht.begin (); Serial.print ("Настройка на AP (Точка за достъп) … "); // Премахнете параметъра за парола, ако искате AP (Точка за достъп) да бъде отворена WiFi.softAP (ssid, парола); IPAddress IP = WiFi.softAPIP (); Serial.print (" AP IP адрес: "); Serial.println (IP); // Печат на ESP8266 Локален IP адрес Serial.println (WiFi.localIP ()); // Маршрут за root / уеб страница server.on (" / ", HTTP_GET, (AsyncWebServerRequest *заявка) {request-> send_P (200, "text/html", index_html, процесор);}); server.on ("/temperature", HTTP_GET, (AsyncWebServerRequest *заявка) {request- > send_P (200, "text/plain", String (t).c_str ());}); server.on ("/влажност", HTTP_GET, (AsyncWebServerRequest *заявка) {request-> send_P (200, "текст/обикновен", Низ (h).c_str ()); }); // Стартиране на сървър server.begin ();} void loop () {unsigned long currentMillis = millis (); if (currentMillis - previousMillis> = interval) {// запишете последния път, когато сте актуализирали стойностите на DHT previousMillis = currentMillis; // Четене на температурата като Целзий (по подразбиране) float newT = dht.readTemperature (); // Четене на температурата като Фаренхайт (isFahrenheit = true) // плаващ newT = dht.readTemperature (true); // ако четенето на температурата е неуспешно, не променяйте t стойността if (isnan (newT)) {Serial.println ("Failed за четене от DHT сензор! "); } else {t = newT; Serial.println (t); } // Четене на влажност float newH = dht.readHumidity (); // ако четенето на влажност не е успешно, не променяйте h стойността if (isnan (newH)) {Serial.println ("Неуспешно четене от DHT сензора!"); } else {h = newH; Serial.println (h); }}} Преди да качите кода, не забравяйте да поставите следните неща: const char* ssid = "ESP8266"; // какъвто и да е ssid на wifi, който искате const char* password = "password"; // преминаваме за свързване към горепосочения ssidSet ESP8266 като точка за достъп: За да зададем esp8266 като точка за достъп, ще използваме softAP команда, както е показано по -долу; за създаване на точка за достъп. WiFi.softAP (ssid, парола); Има и други незадължителни параметри, които можете да предадете на метода softAP (). Ето всички параметри: Ако отворите серийния монитор, можете да видите IP на точката за достъп. Това става, като следвате част от кода. IPAddress IP = WiFi.softAPIP (); Serial.print ("IP IP адрес:"); Serial.println (IP); По подразбиране IP адресът е: 192.168.4.1
Стъпка 5: Последна стъпка: Тестване
След като качите кода, отворете своя мобилен/компютър wifi и се свържете с esp8266 wifi (независимо от ssid и паролата, които сте въвели в кода, използвайте това). След свързване просто отворете IP адреса в браузъра си, който получихме от серийния монитор (https://192.168.4.1.) и ще можете да виждате температурата и влажността в браузъра си като моя. И ние не използвахме никаква wifi мрежа, за да направим това, така че точката за достъп на esp8266 работи.
Препоръчано:
ESP8266 и Visuino: DHT11 Температурен и влажен уеб сървър: 12 стъпки
ESP8266 и Visuino: DHT11 Температурен и влажен уеб сървър: ESP8266 модулите са страхотни евтини самостоятелни контролери с вграден Wi-Fi и вече направих редица инструкции за тях. DTH11/DTH21/DTH22 и AM2301 са много популярни комбинирани температури и сензори за влажност Arduino и аз направих номер
ESP8266 Nodemcu Мониторинг на температурата с помощта на DHT11 на локален уеб сървър - Вземете стайна температура и влажност на вашия браузър: 6 стъпки
ESP8266 Nodemcu Температурен мониторинг с помощта на DHT11 на локален уеб сървър | Вземете стайна температура и влажност на вашия браузър: Здравейте момчета, днес ще направим влажност & система за мониторинг на температурата, използваща ESP 8266 NODEMCU & DHT11 температурен сензор. Температурата и влажността ще бъдат получени от DHT11 Sensor & в браузър може да се види коя уеб страница ще се управлява
Създайте WiFi точка за достъп и осигурете уеб сървър на NodeMCU V3: 4 стъпки
Създайте WiFi точка за достъп и осигурете уеб сървър на NodeMCU V3: в предишната статия вече обсъдих как да използвам NodeMCU ESP8266. В статията обяснявам как да добавя NodeMCU ESP8266 към IDE на Arduini. Има няколко начина за комуникация чрез интернет чрез NodeMCU ESP8266. Осъществяване на NodeMCU като
Как да използвате DHT11 температурен сензор с Arduino и температура на печат Топлина и влажност: 5 стъпки
Как да използвате DHT11 температурен сензор с Arduino и температура на печат Топлина и влажност: Сензорът DHT11 се използва за измерване на температура и влажност. Те са много популярни любители на електрониката. Сензорът за влажност и температура на DHT11 улеснява добавянето на данни за влажността и температурата към вашите проекти за електроника. Това е за
Esp32 Уеб сървър за температура и влажност, използващ PYTHON & Zerynth IDE: 3 стъпки
Esp32 Уеб сървър за температура и влажност, използващ PYTHON & Zerynth IDE: Esp32 е великолепен микроконтролер, мощен е също като Arduino, но още по-добър! Има Wi-Fi връзка, която ви позволява да разработвате IOT проекти евтино и лесно. Но работата с Esp устройствата са разочароващи, първо не са стабилни, Secon