Универсальный датчик с ESP8266, датчиками температуры, влажности, СО2 и плюшками
Доброго времени суток мои подписчики и все интересующиеся темой!
Давно хотел написать пост, но всё руки не доходили, так что бонусом предлагаю описание устройства которое под силу собрать любому пикабшнику с паяльником.
Итак, стоит начать с того что мне привалило счастье в виде контроллера автоматизации Crestron CP2e. Для тех кто не знаком с продукцией Crestron, это достаточно древний, но тем не менее пригодный для домашнего использования контроллер, который умеет управлять оборудованием по Ethernet, rs232, IR, аналоговым входам/выходам и при помощи реле.
Огромным плюсом является наличие ПО при помощи которого можно рисовать относительно красивые интерфейся для мобильным утройст, фирменных панелей и т.д.
Фото железяки прилагаю.
Пропущу автоматизацию домашнего кинотеатра, если Вам будет интересно то опишу в следующем посте.
После того как я наигрался стандартными фишками, мне захотелось сделать что-то своё, после не долгих раздумий выбор пал в сторону датчика качества воздуха, в моём случае это датчики температуры/влажности и CO2, но так как я живу на съемной квартире и ковырять стенку для прокладки кабелей и красивого монтажа мне никто не даст, датчик должен быть беспроводным.
Исходя из требований и опыта людей на хабрахабре, было решено использовать в качестве мозгов Wi-Fi модуль ESP8266, скетчи для которого можно писать на множестве языков в том числе и на С в Arduino IDE.
Датчик СО2 выбирался спонтанно, но как потом оказалось правильно. MH-Z19 умеет определять концентрацию СО2 в диапазоне от 0 до 5000 ррm (частей на миллион) на практике 1500 ppm бывает только если в комнате спит два человека и закрыты двери, поэтому если вы выберете более дешевый датчик ничего страшного не случится.
Для сомневающихся табличка из тырнета.
Датчик температуры и влажности (2 в 1) выбирался по отзывам и ширине диапазона. Я выбрал AM2302 он же DHT22 он рассчитан на измерение уровня влажности в диапазоне от 0% до 100%. При этом точность измерений находится в диапазоне 2%-5%.
Измеряет температуру в диапазоне от -40 до 125 градусов с точностью плюс-минус 0.5 градусов.
Если температура у меня дома выйдет за границы диапазона, до показания датчика это последнее о чём я буду думать)
Дисплей куплен на одном популярном китайском сайте и изначально предназнаяался для другого проекта.
Теперь о реализации.
В интернете есть множество примеров, но мы не ищем лёгких путей, поэтому было решено реализовать рассылку по UDP в пределах домашней сети показаний раз в 5 секунд, сохранение суточной статистики при отключении питания и вывод актуальных данных на дисплей.
Если кого-то заинтересует подробная реализация (скетч и схема) пишите в ЛС, с радостью поделюсь, а для всех остальных - результат.
Внешний вид и индикация показаний (фото засвечены лампой, дисплей на самом деле яркий)
Интерфейс в Crestron с суточной статистикой
Данные которые шлются в сеть по UDP
Посуточная статистика (рассылается каждый час и при обрыве питания)
Следующим этапом будет разработка корпуса для печати на 3d принтере и веб интерфейс чтобы при смене названия сети не нужно было заново прошивать модуль.
Спасибо тем кто дочитал, ещё раз повторюсь что готов поделиться исходниками со всеми желающими.
В комментариях жду критику, пожелания предложения и т.п.
Ну вот, закажешь, а потом опять на 7 лет садиться
И мне такое надо
Наконец-то народ начал делать это не на ардуинах, плюсую!!!111
Пикабушники. Тыкните с чего начать(ресурс или статьи) где все объясняется с нулевого уровня. Хотелось бы метеостанцию сделать домашнюю, с данными улицы и внутри помещения. Возможно, на солнечной батарее это все сделать. Хотелось бы радио смострячить с влагозащитой(в ванную). Умный дом начать осваивать. Короче, хобби себе освоить новое, все эти электрические штуки мне нравяцо