Как говорит присказка, что из Ардуино не делай, а получится метеостанция. Вот и я сделал себе метеостанцию, да не простую, а с цветным ярким дисплеем, с WiFi, датчиками температуры, атмосферного давления и влажности. И, что самое интересное, с собственным брокером, базой данных и визуализатором на облачной виртуальной машине. Сервер умеет отправлять уведомления пользователю при нарушении границ контролируемых параметров.
Для создания метеостанции было использовано следующее "железо":
1. Мозговой центр с WiFi - ESP8266 CP2102
2. Цветной экран TFT - 1,8-дюймовый экран
3. Модуль точных часов - DS3231
4. Сенсор Температуры, влажности и атмосферного давления - BME280
Ссылка на файлы прошивки и разводки платы в Sprint Layout: ссылка
Ссылка на видео с разъяснениями к прошивке:
Комплект всех компонентов выглядит так:
Для прошивки контроллера понадобится среда разработки Arduino IDE и прошивка. Ссылка на мою прошивку в конце статьи. Также в размещенных материалах имеется моя разводка платы для метеостанции.
Для начала работы с устройством необходимо задать в прошивке исходные данные: название и пароль WiFi сети, адрес, порт, логин и пароль для доступа на брокер MQTT. Подробное описание прошивки представлено на видео, ссылка в конце статьи.
MQTT брокеры можно использовать как публичные, так и создать свой собственный. Если эта статья найдет интерес, то поделюсь тем, как я создавал свой сервер, поддержите лайками если проект интересен.
В прошивке реализовано автоматическое восстановления WiFi соединения в случае его пропадания, синхронизация времени с сервером NTP при каждом запуске устройства. Полученные данные записываются в модуль точных часов и хранятся там даже в случае пропадания электричества или отсутствия интернет-соединения.
MQTT сообщения передаются в JSON формате для возможности обработки полученных значений в приложении и для записи в базу данных на сервере.
Конечное устройство с включенным экраном выглядит так:
Подписывайтесь, ставьте лайки, будет продолжение. Вопросы пишите в комментариях.