Веб-сервер мониторинга температуры и влажности на ESP32 и датчике SHT31


В этой статье мы соединим датчик влажности и температуры SHT31 с платой ESP32. Таким образом, используя ESP32 и SHT31, мы создадим асинхронный веб-сервер и отобразим значение температуры и влажности на веб-странице. Веб-сервер, который мы создадим, будет автоматически обновлять показания без необходимости обновления веб-страницы.

Веб-сервер мониторинга температуры и влажности на ESP32 и датчике SHT31

Существуют различные датчики влажности и температуры, такие как DHT11 и HTU21D. Но если говорить о точности, ни один из них не подходит для промышленного контроля температуры и влажности из-за точности и прецизионности. У них сравнительно низкие точность и чувствительность. Поэтому здесь мы будем использовать датчик температуры и влажности SHT31. Это самые точные и высокоточные устройства, которые вы можете получить. Это цифровой датчик с интерфейсом I2C, который обеспечивает легкое считывание влажности и температуры. Датчик SHT31 имеет превосходную точность измерения относительной влажности ±2% и температуры ±0,3°C для большинства применений.

В этом проекте мы соединим датчик температуры и влажности SHT31 с модулем ESP32. Мы узнаем, как считывать значения влажности и температуры с помощью SHT31 и ESP32 . Мы также создадим асинхронный веб-сервер ESP32, используя библиотеку ESPAsyncWebServer с SHT31, который отображает температуру и влажность с помощью Arduino IDE . Веб-сервер, который мы создадим, автоматически обновляет показания без необходимости обновления веб-страницы.

Ранее на нашем сайте мы рассматривали подключение датчика SHT31 к плате Arduino.

Необходимые компоненты

  1. Модуль ESP32 (купить на AliExpress).
  2. Датчик влажности и температуры SHT31 (купить на AliExpress).
  3. Макетная плата.
  4. Соединительные провода.

Реклама: ООО "АЛИБАБА.КОМ (РУ)" ИНН: 7703380158

Датчик влажности и температуры SHT31

SHT31 — это следующее поколение датчиков температуры и влажности Sensirion. SHT31 обладает улучшенными характеристиками интеллекта, надежности и точности по сравнению со своим предшественником. Его функциональность включает улучшенную обработку сигнала, температуру и влажность, которые можно считывать с помощью связи по интерфейсу I2C. Этот мини-модуль I2C упрощает считывание температуры и влажности с помощью модуля интерфейса Particle, который предоставляет доступ к облаку из любой точки мира.

Датчик влажности и температуры SHT31

Все мини-модули I2C рассчитаны на работу при напряжении 5 В постоянного тока. Используя удобный 4-контактный разъем, устройства можно последовательно подключать к шине I2C, устраняя необходимость в пайке. Просто подключите вместе устройства, необходимые для вашего следующего приложения автоматизации.

Характеристики датчика SHT31

1. Датчик температуры и влажности двойного назначения.
2. Точность относительной влажности ±2%.
3. Диапазон измерения влажности 0–100%.
4. Рабочая температура от -40 до +125 °C (от -40 до +257 °F).
5. Время отклика датчика 8 секунд.
6. Начальный адрес 0x44.
7. Модульная коммутационная плата SHT31.

Схема проекта

Схема подключения датчика влажности и температуры SHT31 к модулю ESP32 представлена на следующем рисунке.

Схема подключения датчика влажности и температуры SHT31 к модулю ESP32

Подключите вывод VCC датчика SHT31 к контакту 3,3 В ESP32, а GND датчика - к GND модуля. Подключите выводы SCL и SDA SHT31 к выводам SCL (GPIO22) и SDA (GPIO21) ESP32 соответственно, как показано на рисунке выше.

Собранная конструкция проекта

Асинхронный веб-сервер

Для создания веб-сервера мы будем использовать библиотеку ESPAsyncWebServer, которая обеспечивает простой способ создания асинхронного веб-сервера. Создание асинхронного веб-сервера имеет несколько преимуществ, как указано ниже:

1. Обработка более одного соединения одновременно.
2. Когда вы отправляете ответ, вы немедленно готовы обрабатывать другие соединения, в то время как сервер занимается отправкой ответа в фоновом режиме.
3. Простой механизм обработки шаблонов для обработки шаблонов.
4. И многое другое.

Исходный код программы

Исходный код для веб-сервера на ESP32 и SHT31 приведен ниже. Вы можете скопировать этот код и загрузить его на плату ESP32. Но перед этим вам понадобятся несколько библиотек. Поэтому загрузите библиотеки по ссылкам ниже.

  1. Библиотека SHT31: Загрузить
  2. AsyncTCP-библиотека: Загрузить
  3. Библиотека ESPAsyncWebServer: скачать

Демонстрация работы веб-сервера на ESP32 и SHT31

После загрузки откройте последовательный монитор на скорости 115200 бод. Нажмите кнопку сброса ESP32. IP-адрес ESP32 должен быть напечатан в последовательном мониторе вместе со значением влажности и температуры.

Демонстрация работы веб-сервера на ESP32 и SHT31 в окне монитора последовательной связи

Теперь скопируйте IP-адрес, а затем откройте браузер и введите IP-адрес ESP32. Ваш веб-сервер должен отображать последние показания датчика. Вы заметите, что показания температуры и влажности обновляются автоматически без необходимости обновления веб-страницы.

Демонстрация работы веб-сервера на ESP32 и SHT31 в веб-браузере

(1 голосов, оценка: 4,00 из 5)
Загрузка...
113 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *