
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:04

Привет, ребята, сегодня мы сделаем систему контроля влажности и температуры с использованием датчика температуры ESP 8266 NODEMCU и DHT11. Температура и влажность будут получены от датчика DHT11, и в браузере можно будет увидеть, какой веб-страницей будет управлять esp 8266, разместив ее на локальном веб-сервере.
Шаг 1. Вещи, которые вам нужны


Для этого проекта вам понадобятся следующие вещи: 1x ESP 8266 Nodemcu:
1x DHT11: https://www.utsource.net/itm/p/8831706.html 1x макет:.:
Несколько перемычек:
Шаг 2: Схема

Схема очень проста, все подключается по схеме, как показано на схеме.
Шаг 3. Получите библиотеки


Откройте свою Arduino IDE и перейдите в Sketch> Include Library> Manage Libraries. Должен открыться диспетчер библиотек. Найдите «DHT» в поле поиска и установите библиотеку DHT из Adafruit. После установки библиотеки DHT из Adafruit введите «Adafruit Unified Sensor» в поле поиска. Прокрутите до конца, чтобы найти библиотеку и установить ее. После установки библиотек перезапустите Arduino IDE.
Шаг 4: Код

После выполнения вышеуказанных действий загрузите следующий код в ESP8266 nodemcu (выберите правильный порт и плату) и перед загрузкой кода введите ssid и пароль вашего Wi-Fi в код: // Включая библиотеку ESP8266 WiFi # include #include "DHT. h "// Раскомментируйте одну из строк ниже для любого типа датчика DHT, который вы используете! #define DHTTYPE DHT11 // DHT 11 // # define DHTTYPE DHT21 // DHT 21 (AM2301) // # define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 // Замените сведениями о вашей сетиconst char * ssid = "YOUR_NETWORK_NAME"; const char * password = "YOUR_NETWORK_PASSWORD"; // Веб-сервер на порту 80WiFiServer server (80); // DHT Sensorconst int DHTPin = 5; // Инициализируем датчик DHT. DHT dht (DHTPin, DHTTYPE); // Временные переменныеstatic char celsiusTemp [7]; static char fahrenheitTemp [7]; static char влажностьTemp [7]; // выполняется только один раз при bootvoid setup () { // Инициализация последовательного порта для целей отладки Serial.begin (115200); задержка (10); dht.begin (); // Подключение к сети Wi-Fi Serial.println (); Serial.print («Подключение к»); Serial.println (ssid); WiFi.begin (ssid, пароль); в то время как (WiFi.status ()! = WL_CONNECTED) {задержка (500); Serial.print ("."); } Serial.println (""); Serial.println («WiFi подключен»); // Запускаем веб-сервер server.begin (); Serial.println («Веб-сервер запущен. Ожидание IP-адреса ESP…»); задержка (10000); // Печать IP-адреса ESP Serial.println (WiFi.localIP ());} // запускается снова и сноваvoid loop () {// Прослушивание новых клиентов WiFiClient client = server.available (); if (client) {Serial.println ("Новый клиент"); // логическое значение для определения момента завершения HTTP-запроса boolean blank_line = true; в то время как (client.connected ()) {если (client.available ()) {char c = client.read (); if (c == '\ n' && blank_line) {// Показания датчика также могут быть "старыми" до 2 секунд (это очень медленный датчик) float h = dht.readHumidity (); // Считываем температуру в градусах Цельсия (по умолчанию) float t = dht.readTemperature (); // Считываем температуру по Фаренгейту (isFahrenheit = true) float f = dht.readTemperature (true); // Проверяем, нет ли сбоев при чтении, и завершаем работу раньше (чтобы повторить попытку). if (isnan (h) || isnan (t) || isnan (f)) {Serial.println ("Не удалось прочитать с датчика DHT!"); strcpy (celsiusTemp, «Неудачный»); strcpy (fahrenheitTemp, «Ошибка»); strcpy (влажностьTemp, «Неудачный»); } else {// Вычисляет значения температуры в градусах Цельсия + Фаренгейта и влажности float hic = dht.computeHeatIndex (t, h, false); dtostrf (hic, 6, 2, celsiusTemp); float hif = dht.computeHeatIndex (f, h); dtostrf (hif, 6, 2, fahrenheitTemp); dtostrf (ч, 6, 2, влажность); // Вы можете удалить следующие файлы Serial.print, это просто для отладки Serial.print ("Humidity:"); Серийный отпечаток (ч); Serial.print ("% / t Температура:"); Serial.print (t); Serial.print ("* C"); Серийный принт (е); Serial.print ("* F / t Тепловой индекс:"); Serial.print (ик); Serial.print ("* C"); Serial.print (hif); Serial.print ("* F"); Serial.print ("Влажность:"); Серийный отпечаток (ч); Serial.print ("% / t Температура:"); Serial.print (t); Serial.print ("* C"); Серийный принт (е); Serial.print ("* F / t Тепловой индекс:"); Serial.print (ик); Serial.print ("* C"); Serial.print (hif); Serial.println ("* F"); } client.println ("HTTP / 1.1 200 ОК"); client.println ("Content-Type: text / html"); client.println ("Соединение: закрыть"); client.println (); // ваша фактическая веб-страница, которая отображает клиентскую температуру и влажность
Шаг 5: Получите IP

Вы просматриваете температуру и влажность, которые нам нужны, чтобы получить IP-адрес веб-страницы. Итак, для этого убедитесь, что ваш esp8266 подключен к вашему ПК, а затем откройте последовательный монитор, и на последовательном мониторе вы можете увидеть IP-адрес веб-страницы вашего веб-сервера ESP8266.
Шаг 6. Проверьте температуру и влажность в браузере

Поэтому после получения IP-адреса вашего ESP8266 nodemcu просто откройте браузер на ПК или мобильном устройстве, но убедитесь, что ваш ПК / мобильный телефон подключен к той же сети, что и ваш Nodemcu / ESP8266, а затем перейдите в свой браузер (если вы используете мобильный телефон, используйте браузер по умолчанию. т.е. для Android используйте Chrome), а затем введите IP-адрес, который мы получили на предыдущем шаге, и на локальной веб-странице отобразится влажность и температура, как показано на моем изображении. Так что получайте удовольствие, создавая монитор температуры и влажности в помещении.
Рекомендуемые:
M5STACK Как отображать температуру, влажность и давление на M5StickC ESP32 с помощью Visuino - легко сделать: 6 шагов

M5STACK Как отображать температуру, влажность и давление на M5StickC ESP32 с помощью Visuino - легко: в этом руководстве мы узнаем, как запрограммировать ESP32 M5Stack StickC с Arduino IDE и Visuino для отображения температуры, влажности и давления с помощью датчика ENV (DHT12, BMP280, BMM150)
Автоматизация теплицы с помощью LoRa! (Часть 1) -- Датчики (температура, влажность, влажность почвы): 5 шагов

Автоматизация теплицы с помощью LoRa! (Часть 1) || Датчики (температура, влажность, влажность почвы): в этом проекте я покажу вам, как я автоматизировал теплицу. Это означает, что я покажу вам, как я построил теплицу и как я подключил силовую и автоматическую электронику. Также я покажу вам, как программировать плату Arduino, которая использует L
Используя Raspberry Pi, оцените влажность и температуру с помощью SI7006: 6 шагов

Используя Raspberry Pi, оценивайте влажность и температуру с помощью SI7006: будучи энтузиастами Raspberry Pi, мы придумали еще несколько захватывающих экспериментов с ним. В этой кампании мы будем измерять температуру и влажность, которые необходимо контролировать, используя Raspberry Pi и SI7006, датчик влажности и температуры
ESP8266 NodeMCU Access Point (AP) для веб-сервера с датчиком температуры DT11 и печатью температуры и влажности в браузере: 5 шагов

ESP8266 NodeMCU Access Point (AP) для веб-сервера с датчиком температуры DT11 и печатью температуры и влажности в браузере: Привет, ребята, в большинстве проектов мы используем ESP8266, а в большинстве проектов мы используем ESP8266 в качестве веб-сервера, чтобы данные могли быть доступны на любое устройство через Wi-Fi, получив доступ к веб-серверу, размещенному на ESP8266, но единственная проблема в том, что нам нужен рабочий маршрутизатор для
Как использовать датчик температуры DHT11 с Arduino и температуру печати и температуру: 5 шагов

Как использовать датчик температуры DHT11 с Arduino и печатью Температура и влажность: Датчик DHT11 используется для измерения температуры и влажности. Они очень популярные любители электроники. Датчик влажности и температуры DHT11 позволяет очень легко добавлять данные о влажности и температуре в ваши проекты электроники своими руками. Это за