Создаем метеостанцию на основе ESP32 и датчиков

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

Что нам необходимо

В этом проекте мы собираемся создать метеостанцию, используя ESP32. Мы будем использовать датчики DHT22 и BMP180, а затем, используя ESP32, мы создадим веб-страницу, где мы покажем значения.

Нам для реализации проекта нужны:

1 - ESP32
1 - DHT22
1 - BMP180
1 - макетная плата
1 - провода-перемычки

Принципиальная схема

Прежде всего, подключите DHT22 к ESP32. Соединения для DHT22 с ESP32 следующие:

  • Контакт 1 DHT22, который является контактом VCC, на 3,3 В от ESP32
  • Контакт 2 DHT22, который является штырем данных к D15 ESP32
  • Контакт 4 DHT22, который является контактом GND для GND ESP32

Затем подключите датчик давления BMP180 к ESP32. Соединения следующие:

  • Vin от BMP180 на 3.3V ESP32
  • GND BMP180 на GND ESP32
  • SCL BMP180 на вывод 22 ESP32 (контакт 22 ESP32 является контактом SCL)
  • SDA BMP180 на штырьковый разъем 21 ESP32 (контакт 21 ESP32 является выводом SDA)

Штыри 22 и 21 ESP32 предназначены для связи I2C.

Код проекта метеостанции

Код проекта можно скачать или скопировать ниже:

Пояснение код проекта метеостанции

Во-первых, вам нужно убедиться, что у вас есть все библиотеки, необходимые для этого проекта. Как только вы это сделаете, мы можем определить контакт к которому мы подключим датчик температуры и влажности DHT22:

Теперь мы сохраняем имя и пароль Wi-Fi, чтобы позднее мы могли подключиться к нему. Затем мы определяем порт, на котором мы создадим сервер.

В функции настройки мы подключили ESP32 к нашей сети Wi-Fi, используя предоставленную выше информацию Wi-Fi. Если соединение с сетью Wi-Fi будет успешным, на последовательном мониторе будет показано «соединение успешно». В противном случае он будет продолжать попытки, пока не подключится к сети Wi-Fi.

Команда ниже приведет к отображению IP-адреса на последовательном мониторе.

Затем мы запускаем сервер, чтобы мы могли получать и отправлять данные в браузер.

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

Затем мы проверяем, отправил ли какой-либо клиент HTTP-запрос или нет. Если какой-либо клиентский запрос доступен, он будет сохранен и показан на серийном мониторе. В конце запроса мы отправим команды HTML, которые будут печатать данные датчика на веб-странице.

Как запустить вашу метеостанцию

Во-первых, замените имя и пароль Wi-Fi в коде своими. Затем загрузите код и откройте последовательный монитор. Последовательный монитор покажет вам IP-адрес, как показано на рисунке ниже.

Введите этот IP-адрес в своем браузере.

После ввода IP-адреса веб-страница будет примерно такой.

Таким образом вы сделали передачу данных от датчиков вашей метеостанции на веб-страницу.

Ардуино+
Больше интересного ↓