Оглавление:

ESP8266 Nodemcu: мониторинг температуры с помощью DHT11 на локальном веб-сервере - Получите комнатную температуру и влажность в вашем браузере: 6 шагов
ESP8266 Nodemcu: мониторинг температуры с помощью DHT11 на локальном веб-сервере - Получите комнатную температуру и влажность в вашем браузере: 6 шагов

Видео: ESP8266 Nodemcu: мониторинг температуры с помощью DHT11 на локальном веб-сервере - Получите комнатную температуру и влажность в вашем браузере: 6 шагов

Видео: ESP8266 Nodemcu: мониторинг температуры с помощью DHT11 на локальном веб-сервере - Получите комнатную температуру и влажность в вашем браузере: 6 шагов
Видео: как передать температуру на сервер по WIFI и сохранить температуру в базе данных. 2024, Ноябрь
Anonim
ESP8266 Nodemcu: мониторинг температуры с помощью DHT11 на локальном веб-сервере | Получите комнатную температуру и влажность в вашем браузере
ESP8266 Nodemcu: мониторинг температуры с помощью DHT11 на локальном веб-сервере | Получите комнатную температуру и влажность в вашем браузере

Привет, ребята, сегодня мы сделаем систему контроля влажности и температуры с использованием датчика температуры 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
Получите IP

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

Шаг 6. Проверьте температуру и влажность в браузере

Проверьте свою температуру и влажность в браузере
Проверьте свою температуру и влажность в браузере

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

Рекомендуемые: