Smart Home
Sat 13 January 2018
Проект умного дома начинался 5 лет назад и сейчас, кажется, что он созрел достаточно, чтобы о нём можно было написать.
Цели на тот момент были туманными, но было однозначно ясно, что на этапе строительства необходимо предусмотреть расположение всего, что сдвинуть с места уже не получится: провода питания, котёл, трубы отопления с возможностью вРАЗУМить это всё в будущем.
Исходя из этого трубы отопления разводились с использованием коллекторов - для индивидуального отопления каждой комнаты.
Свет было принято делать не по классической схеме с прокладыванием высоковольтного провода через выключатели, а вести из единой точки управления индивидуальные провода в каждую комнату, чтобы в будущем управлять через контроллеры. Какие - на тот момент я даже не думал.
Все коммуникации должны были сходиться в одном месте - у сервера.
Смешно вспоминать, но на тот момент я даже обдумывал вариант разработки собственной реализации приложения умного дома. Это, конечно, утопия. Хорошо, что с того момента я порядком прокачался в IT, чтобы счесть эту идею нереальной.
Подробно описывать всё что было сделано не имеет смысла и займёт очень много времени-пространства в этом посте. Перейду к тому, что получилось на текущий момент.
Освещение
В качестве протокола для освещения был выбран DMX512: старый, надёжный, неприхотливый. Всякую современную "умную" беспроводную дребедень я не рассматривал.
До сервера тянется один провод через DMX512 -> USB адаптер.
Контроллеры умеют менять яркость, включать и выключать. Они умеют ещё больше, но не буду погружаться в технические подробности.
Включать-выключать свет будет не нужно, это будет делать автоматика при входе-выходе в дом и из комнаты в комнату. Это отдельный проект (как сказали бы в СССР, "программно-аппаратный комплекс"), который будет легко интегрирован в Home Assistant. В HomeKit и Google Home тоже, когда придёт время ;-) Тут я бы мог растечься по древу совсем жидко, но держу себя в рамках приличия.
Отопление
Для отопления был выбран котёл Vaillant с интефейсом EBUS. Для подключения этого интерфейса к серверу через COM порт в немецкой компании купил адаптер. Операция по доставке устройства была серьёзная, так как магазин доставлял свои товары куда угодно кроме России (задолго до того, как это стало мейнстримом). Поэтому к процессу подключились мои западные партнёры в Бельгии и путь адаптера был несколько длиннее. До сих пор, к сожалению, не добрался до усправления непосредственно котлом, поэтому оставляю свободным пространство.
...
Добрались до современной "умной" дребедени. Сейчас котёл приходится включать и выключать для поддержания нужной температуры. Временной лаг достаточно большой чтобы не переживать по поводу частых включений, а для самого включения используются умные розетки. Работают по протоколу Zigbee. WiFi я изначально считал слишком тяжёлым для этой задачи + хотелось, чтобы его наличие / отсутствие никак не влияло на Умный дом.
Приложение
В качестве умного дома был выбран быстро взлетевший в топ Home Assistant: современное решение на современных технологиях: python, jinja2, yaml. Всё удобно и понятно для IT'шников. К сожалению ребята не допилили (и, похоже, не собираются) развёртывание Home Assistant целиком через код, но всё, что мог на этом пути, я сделал. В основном там IaC, но какие-то ручные действия совершать придётся.
Что получилось
На данный момент приложение выглядит так.
Это вкладка с управлением освещением
дто данные по геолокации членов семьи, которые используются для автоматизации
контроль за безопасностью (WiFi отнёс сюда же)
управление климатом
и минимальное количество настроек
Всё остальное я выбросил в лучших традициях Apple. Кроме кнопок управления светом есть только одна - это "подготовка дома". Когда мы уезжаем из дома на некоторое время, он переходит в режим поддержания тепла (standby), в котором он греется не так сильно. А чтобы прогреть его заранее перед возвращением и нужна кнопка "подготовка дома".
Что касается автоматизации - я сделал всё, на что сейчас хватает датчиков, умных устройств и фантазии. Дом умеет:
-
включать для вас свет в прихожей, когда вы возвращаетесь из магазина
-
выключать свет везде, когда вы уходите из дома
-
включать / отключать защиту
-
включает / выключает WiFi
-
поддерживает заданные температуры для двух режимов: когда кто -то есть в доме и когда никого нет
-
записывает всё, что в нём происходит, когда никого нет, и даёт знать об этом в ту же секунду
-
знает всё об электричестве и сообщает, если напряжение слишком высокое / низкое или если питание в доме пропадает.
Есть ещё фишки по защите дома от взлома, о подробностях которых я умолчу здесь, но недоброжелатели, проникнув в дом, будут под впечатлением! А потом за решёткой.
Завершение
Есть ещё много всего, что хотелось бы реализовать, и этот пост будет дополняться по мере развития Умного дома, но то, что получилось сейчас мне уже нравится =)
Далі буде...