Smart Home

Sat 13 January 2018

Проект умного дома начинался 5 лет назад и сейчас, кажется, что он созрел достаточно, чтобы о нём можно было написать.

Цели на тот момент были туманными, но было однозначно ясно, что на этапе строительства необходимо предусмотреть расположение всего, что сдвинуть с места уже не получится: провода питания, котёл, трубы отопления с возможностью вРАЗУМить это всё в будущем.

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

None

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

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

Смешно вспоминать, но на тот момент я даже обдумывал вариант разработки собственной реализации приложения умного дома. Это, конечно, утопия. Хорошо, что с того момента я порядком прокачался в IT, чтобы счесть эту идею нереальной.

Подробно описывать всё что было сделано не имеет смысла и займёт очень много времени-пространства в этом посте. Перейду к тому, что получилось на текущий момент.

Освещение

В качестве протокола для освещения был выбран DMX512: старый, надёжный, неприхотливый. Всякую современную "умную" беспроводную дребедень я не рассматривал.

None

До сервера тянется один провод через DMX512 -> USB адаптер.

None

Контроллеры умеют менять яркость, включать и выключать. Они умеют ещё больше, но не буду погружаться в технические подробности.

Включать-выключать свет будет не нужно, это будет делать автоматика при входе-выходе в дом и из комнаты в комнату. Это отдельный проект (как сказали бы в СССР, "программно-аппаратный комплекс"), который будет легко интегрирован в Home Assistant. В HomeKit и Google Home тоже, когда придёт время ;-) Тут я бы мог растечься по древу совсем жидко, но держу себя в рамках приличия.

Отопление

Для отопления был выбран котёл Vaillant с интефейсом EBUS. Для подключения этого интерфейса к серверу через COM порт в немецкой компании купил адаптер. Операция по доставке устройства была серьёзная, так как магазин доставлял свои товары куда угодно кроме России (задолго до того, как это стало мейнстримом). Поэтому к процессу подключились мои западные партнёры в Бельгии и путь адаптера был несколько длиннее. До сих пор, к сожалению, не добрался до усправления непосредственно котлом, поэтому оставляю свободным пространство.

...

Добрались до современной "умной" дребедени. Сейчас котёл приходится включать и выключать для поддержания нужной температуры. Временной лаг достаточно большой чтобы не переживать по поводу частых включений, а для самого включения используются умные розетки. Работают по протоколу Zigbee. WiFi я изначально считал слишком тяжёлым для этой задачи + хотелось, чтобы его наличие / отсутствие никак не влияло на Умный дом.

Приложение

В качестве умного дома был выбран быстро взлетевший в топ Home Assistant: современное решение на современных технологиях: python, jinja2, yaml. Всё удобно и понятно для IT'шников. К сожалению ребята не допилили (и, похоже, не собираются) развёртывание Home Assistant целиком через код, но всё, что мог на этом пути, я сделал. В основном там IaC, но какие-то ручные действия совершать придётся.

Что получилось

На данный момент приложение выглядит так.

Это вкладка с управлением освещением

None

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

None

контроль за безопасностью (WiFi отнёс сюда же)

None

управление климатом

None

и минимальное количество настроек

None

Всё остальное я выбросил в лучших традициях Apple. Кроме кнопок управления светом есть только одна - это "подготовка дома". Когда мы уезжаем из дома на некоторое время, он переходит в режим поддержания тепла (standby), в котором он греется не так сильно. А чтобы прогреть его заранее перед возвращением и нужна кнопка "подготовка дома".

Что касается автоматизации - я сделал всё, на что сейчас хватает датчиков, умных устройств и фантазии. Дом умеет:

  • включать для вас свет в прихожей, когда вы возвращаетесь из магазина

  • выключать свет везде, когда вы уходите из дома

  • включать / отключать защиту

  • включает / выключает WiFi

  • поддерживает заданные температуры для двух режимов: когда кто -то есть в доме и когда никого нет

  • записывает всё, что в нём происходит, когда никого нет, и даёт знать об этом в ту же секунду

  • знает всё об электричестве и сообщает, если напряжение слишком высокое / низкое или если питание в доме пропадает.

Есть ещё фишки по защите дома от взлома, о подробностях которых я умолчу здесь, но недоброжелатели, проникнув в дом, будут под впечатлением! А потом за решёткой.

Завершение

Есть ещё много всего, что хотелось бы реализовать, и этот пост будет дополняться по мере развития Умного дома, но то, что получилось сейчас мне уже нравится =)

Далі буде...