Умный дом с Xiaomi на примере бани
В интернете довольно много обзоров и видеороликов о построении умных домов. Бытует мнение, что все это достаточно дорого и хлопотно в организации, то есть, в целом, удел гиков. Но прогресс не стоит на месте. Устройства становятся более дешевыми, при этом более функциональными, а проектирование и монтаж – довольно простыми. Однако, в основном, обзоры фокусируются на 1-2 примерах использования, практически не покрывая нюансы и не создавая целостной картины. Поэтому в данной статье я хочу сделать обзор законченного проекта, продемонстрировать сценарии использования и встретившиеся подводные камни в построении умного дома с помощью устройств Xiaomi на примере бани. Описанные идеи с небольшими вариациями можно применить и при автоматизации квартиры.
Предыстория или зачем все это нужно
Для начала небольшая предыстория, чтобы был понятен контекст. В начале осени 2018 года была завершена финишная отделка бани и она была запущена в эксплуатацию. Баня представляет собой автономное капитальное строение с круглогодичным отоплением и водоснабжением.
По понятным причинам, в бане никто постоянно не проживает и не контролирует состояние помещений. Как бы мне ни хотелось, но посещение бани – тоже не очень частое событие. Соответственно, мысли о создании “умной” бани присутствовали с самого начала проекта. В первую очередь, ради безопасности (пожар, затопление, контроль доступа). Например, отключение отопления в -35 градусов на улице (я живу в Новосибирске) – очень опасная ситуация. Однако, в отличие от основного дома, я не продумывал проект автоматизации бани с самого начала и не сделал дополнительную проводку к нужным местам. С другой стороны, в баню был проведен интернет, а за внешним видом с двух других зданий ведется видеонаблюдение (можно оценить происходящее визуально).
Вернувшись из командировки в ноябре 2019 года, вечером я пошел в баню, открыл входную дверь и был шокирован увиденным. Мне из темноты мигали светодиоды WiFi-точки, а на ноги хлынул поток воды. То есть произошло затопление, при этом электричество не отключалось. Вода в бане организована с помощью собственной скважины, погружного насоса и автоматики, контролирующей процесс. Как выяснилось позже, сорвало один из фитингов в развязке в туалете и затопило все помещения. Я так и не узнал, почему автоматика сжалилась и все-таки отключилась, но 15 см воды на квадратов 30 она успела накачать. На улице в этот день было -14 градусов. Теплый пол справился, продолжая держать температуру в помещении на должном уровне, но возникла 100% влажность. Прокрастинировать дальше по поводу организации умного дома было нельзя – нужно начинать делать.
Выбор оборудования
При строительстве основного дома я получил опыт работы с устройствами Eldes (была создана соответствующая проводка). Часть автоматизации сделана на Raspberry PI. Еще часть – на устройствах Xiaomi Aqara. Вариант с Raspberry PI был мне наиболее симпатичен и изначально для бани рассматривал именно его. Но, к сожалению, он требует заметно больше усилий по организации. Это все-таки не plug-and-play устройство – начиная с упражнений с железом и заканчивая написанием софта под собственные нужды. По определенным причинам MajorDoMo не устраивал. Скрещивание Raspberry PI, ZigBee Adapter (чтобы воспользоваться беспроводными датчиками Xiaomi) и Apple HomeKit требовало изучения (да и интерфейс Apple HomeKit на данный момент не особо радует). Времени было мало (не хотелось повторения ситуации), а проводки под каждую нужную точку не было, поэтому решил делать все на устройствах Xiaomi.
Главным устройством в такой ситуации выступает хаб. В случае с Xiaomi вариантов хаба два: Xiaomi Mi Smart Home Gateway 2 и Xiaomi Aqara Gateway. Последний примерно в два раза дороже, более пригоден для локального рынка и умеет интегрировать устройства в Apple HomeKit. Однако если установить приложение Aqara Home и выбрать регион “Россия”, то на момент написания этих строк, будет доступно всего 13 различных устройств (выключатели, розетки, сенсоры). Если же поставить приложение Xiaomi Home, выбрать регион “China Mainland”, то доступно для подключения будут сотни устройств. При этом, если вы выбрали регион “China Mainland”, то не сможете подключить европейскую розетку и наоборот. Выбор региона “China Mainland” в рамках приложения Aqara Home не дает той полноты устройств, что присутствует в рамках Xiaomi Home с тем же регионом. Побоявшись несовместимости, я решил остановиться на хабе Xiaomi Mi Smart Home Gateway 2. Цена вопроса – около 2000 р. Кстати, сам хаб выступает светильником – это можно учесть при монтаже.
Отдельный интересный вопрос, насколько долго это все проработает. Речь даже не о датчиках и батарейках в них, а о синхронизации и хранении данных в облаке. На данный момент аккаунт бесплатен. Вся информация хранится на серверах Xiaomi. Если завтра ребята решат, что пользователи из России не должны хранить данные в регионе “China Mainland” или Роскомнадзор по какой-то причине забанит их серверы, то весь умный дом рискует превратиться в тыкву. Для себя решил, что в таком случае датчики останутся, а хаб будет заменен на Raspberri PI + ZigBee Adapter.
Контроль и предотвращение протечек
Первый и самый главный сценарий автоматизации был естественным продолжением возникшей проблемы – при протечке нужно отключить подачу воды, то есть насос, и прислать оповещение о проблеме на телефон. Потенциально опасных мест возникновения протечки было два.
В дополнение к хабу для данного сценария потребовались два датчика протечки и умная розетка с монтажом в стену. Цена датчика протечки – примерно 1400 р. Цена умной розетки для монтажа в стену – примерно 1700 р. Датчики протечки автономные, работают на батарейках. Производитель утверждает, что одной батарейки хватит на 2 года.
Монтаж умной розетки немного осложнялся тем, что под китайские розетки нужны квадратные подрозетники, которые в наших обычных магазинах не продаются (но можно привезти под заказ). Сверлить квадратные отверстия – это то еще удовольствие. Плюс, по-хорошему нужен переходник, хотя есть и выход под европейскую вилку. В варианте исполнения Aqara для местного рынка розетка с монтажом в стену на данный момент отсутствует, что привязывает нас к региону “China Mainland”. Альтернативно можно было установить обычную розетку, в нее воткнуть умную розетку с вилкой от Xiaomi, но это потребовало бы двух дополнительных переходников. Еще одна альтернатива – это реле. Но я остановился на розетке с монтажом в стену.
В приложении Xiaomi Home были добавлены розетка и датчик. Далее прописан сценарий “в случае утечки” на два действия: выключить розетку и прислать оповещение.
Первый датчик протечки был установлен рядом с насосом (и, по сути, рядом с хабом). Для теста в небольшую тарелочку была налита вода, и в нее был опущен датчик. Все действие я производил непосредственно в месте установки датчика, чтобы максимально приблизить ситуацию к реальности. Тест был пройден успешно: розетка отключилась, оповещение на телефон пришло, плюс хаб моргал аварийным режимом.
Второй датчик протечки планировалось установить в туалет рядом с развязкой труб. Но с его установкой возникли нюансы – хаб не видел датчика, хотя расстояние было небольшим. Виной тому конфигурация помещений.
Между местом установки хаба (комната отдыха) и местом установки второго датчика протечки (туалет) находилась парилка. Парилка же, в лучших традициях, зашита в круг фольгой, создавая проблемы с прохождением сигнала.
Производитель утверждает, что устройства способны формировать mesh-сеть, то есть одно устройство может передавать данные хабу через другое устройство. Мне где-то попадалась информация, что такими передатчиками в mesh-сети могут выступать только устройства, подключенные к сети (а не на батарейках). Однако мне хватило установки датчика температуры в углу помывочной, чтобы сигнал от датчика протечки перестал пропадать. Может быть, это совпадение, потому что далее в помывочной под потолком было смонтировано реле по управлению уличным светом (возможно оно и выступает передатчиком в mesh-сети). Тем не менее, проблема с пропаданием сигнала от датчика протечки в туалете была решена. Дополнительно проверить связь устройства с хабом можно путем нажатия на датчик по центру. Если все хорошо, то на чистом китайском из хаба прозвучит соответствующая информация (в случае хаба Aqara общение будет на приятном английском).
Проверка отключения с последующим включением электричества с помощью автомата показала, что умная розетка переходит в выключенное состояние. Для того, чтобы она переходила во включенное состояние при появлении электричества есть соответствующая настройка:
Дополнительным признаком затопления помещения служило повышение влажности до 100%. О контроле этого признака – в следующем разделе.
Контроль задымления и температуры
Баня является пожароопасным помещением, поэтому следующий сценарий заключался в определении признаков пожара.
Для данного сценария понадобились два датчика температуры (и влажности) и датчик дыма. Цена датчика температуры – примерно 1000 р. Датчик дыма стоит примерно 2000 р. В варианте исполнения Aqara под местный регион датчик дыма на данный момент отсутствует, что опять привязывает нас к региону “China Mainland”.
Датчик дыма был смонтирован на потолке коридора в помывочную (фактически недалеко от печки и выхода из парилки). Далее в приложении Xiaomi Home было добавлено устройство и создан сценарий “в случае определения дыма” с последующей отправкой уведомления на телефон. Тест проводился каминной спичкой. Датчик успешно справился с тестом. Хаб заморгал аварийной сигнализацией, плюс работало звуковое оповещение. Сам же датчик тоже очень мерзко и громко пищал, предупреждая о проблеме.
Еще один признак пожара – это повышение температуры. Для контроля температуры были установлены два датчика: один в комнате отдыха, другой в помывочной. Далее в приложении был настроен сценарий “в случае температуры, выше заданной” с соответствующим оповещением на телефон. На данный момент поставил для комнаты отдыха порог срабатывания в 30 градусов (летом, вероятно, нужно будет перенастроить).
Также был настроен сценарий “в случае температуры, ниже заданной” с порогом срабатывания в 18 градусов и оповещения на телефон. Если по какой-то причине перестанет работать отопление, я бы хотел об этом узнать как можно раньше. Аналогично были созданы сценарии “в случае повышения влажности” для обоих датчиков с порогом срабатывания в 70%, оповещением на телефон и выключением насоса подачи воды.
Из приятных бонусов по датчикам температуры и влажности в приложении доступны исторические графики. Можно, например, определить в какие моменты пользовались баней по прямому назначению (пики температуры на графике ниже) или сопоставить является ли текущая температура аномальной.
Управление вентиляцией
В парилке организована принудительная вытяжка из помещения. После завершения процедур желательно помещение проветривать. Включение вентиляции сделано клавишным выключателем, а на саму вентиляцию необходимо хотя бы минут 30. Однако нередко посиделки в бане заканчиваются в первом или втором часу ночи. Сделать все заранее не всегда получается, а сидеть в конце еще дополнительные 30 минут и ждать пока проветрится парилка – удовольствие ниже среднего из-за того, что хочется уже спать.
Для данного сценария понадобился клавишный выключатель от Xiaomi с нулевой линией и монтажом в стену. Цена вопроса – примерно 1900 р. Выключатели есть в варианте исполнения Aqara для местного рынка.
В моем случае заменить просто так обычный выключатель на умный нельзя – требуется силовая линия. Соответственно пришлось дотянуть нулевую линию до монтажного отверстия под выключатель, благо такая возможность была. В случае выключателя без нулевой линии монтаж был бы проще.
После монтажа умный выключатель был добавлен в приложение как устройство и протестирована работоспособность. В настройках выключателя есть таймер, и можно задать время выключения. То есть теперь перед уходом из бани выставляется таймер выключения на дополнительные 30 минут вентиляции, и можно спокойно идти спать.
Возможен еще один вариант автоматизации процесса. После окончания банных процедур в дополнение к вентиляции дверь в парилку открывается полностью. Это приводит к повышению температуры в помывочной, где установлен датчик температуры. На основании показаний этого датчика можно создать сценарии включения/выключения вентиляции. Но я пока не обкатывал данный вариант. Кроме того, можно было бы поэкспериментировать с датчиком открытия двери в парилку. Но, боюсь, он быстро умрет или будет отваливаться, так как дверь из стекла, а в парилке бывает и по 120 градусов.
Управление уличным светом
Еще одной задачей, которую хотелось автоматизировать – это управление уличным светом на веранде. Один из типичных сценариев: включить свет на веранде, когда находишься недалеко от здания и на улице стемнело. Баня закрывается на ключ, выключатель уличного света находится внутри помещения. Приходилось идти за ключом, чтобы открыть дверь и включить свет. Выключение света требовало аналогичной процедуры. Другой сценарий возникавший регулярно: включить или выключить свет на веранде, когда находишься в основном доме. Я довольно часто, уходя из бани, забывал выключить свет на веранде и обнаруживал это уже будучи в доме: либо глянув в окно, либо посмотрев по камерам наблюдения. В этот момент идти обычно уже никуда неохота, поэтому свет продолжал гореть всю ночь.
Для реализации этой идеи было приобретено двухканальное реле. Цена вопроса – примерно 2000 р. Реле в варианте исполнения Aqara для местного рынка на данный момент отсутствуют. Но его можно заменить на клавишный выключатель (понятно, что установка его в распред коробку – это более хлопотный процесс).
Изначально я предполагал смонтировать реле за клавишным выключателем, однако дотянуть до нужного места силовую линию (для реле опять же нужно питание) оказалось очень проблематично. Идеальное место – это распределительная коробка, где сходились силовая линия, линия от выключателя и линии от уличных фонарей. Она находилась под фальш-потолком, из-за чего пришлось демонтировать несколько реек вагонки. Желательно этот момент было продумать заранее. Тем не менее, монтаж был успешно осуществлен. Схема подключения заметно сложнее, чем для розеток и выключателей (в моем случае четыре 3-х жильных провода и 8 клемм на самом реле). Для того чтобы не держать в голове и ничего не перепутать, я разрисовал схему на бумажке, прежде чем монтировать. Далее сделал пробный монтаж, чтобы все проверить:
Устройство было подключено в приложении, и наступил этап тестирования. Уличный свет должен был включаться/выключаться как существовавшим ранее клавишным выключателем, так и с помощью приложения. На улице находятся два фонаря – один слева, другой справа. Реле имеет два канала, но включать их раздельно не имело смысла. С другой стороны, включать их по очереди двумя кликами в приложении тоже не хотелось. Поэтому управление было сделано на одном канале реле. По странному стечению обстоятельств, такой вариант нормально не заработал – происходило залипание то в одном, то в другом положении. Времени на эксперименты особо уже не было, так как заканчивался световой день и хотелось собрать вагонку на потолке обратно. Поэтому просто зацепил фонари параллельно на оба канала и все заработало так, как хотелось. Для того, чтобы физический и программный выключатель работали как проходные, в настройках реле была включена опция Interlock.
Также можно было бы организовать включение/выключение света по таймеру. Но этот сценарий пока не интересовал.
Контроль доступа в помещение
Очередным любопытным моментом был контроль за открыванием уличной двери. В первую очередь, определять и оповещать о том, что кто-то забыл эту самую дверь нормально захлопнуть или совсем оставил открытой.
Для этого сценария понадобился датчик открытия окон/дверей. Цена вопроса – примерно 1000 р. Есть датчики в исполнении Aqara для местного рынка (они с менее закругленными краями).
Монтаж очень простой – датчики крепятся на двусторонний скотч. Прежде чем монтировать, лучше подключить датчик в приложении, чтобы видеть на каком расстоянии происходит срабатывание. В инструкции пишут про зазор до 20 мм, но это, мягко говоря, неправда – датчик и ответный магнит приходится монтировать практически вплотную. В основном доме на гаражных воротах установлен аналогичный датчик. Между направляющей и воротиной есть уплотнительная резинка шириной в 1 см. На таком расстоянии датчик показывал положение “открыто” и пришлось наращивать ответный магнит.
После того, как в приложении было добавлено новое устройство, можно перейти к автоматизации. Настраиваем сценарий “если дверь открыта более 1 минуты” с оповещением на телефон. В английской локализации не видно часть фразы про 1 минуту, но порог срабатывания именно такой. В варианте датчика Aqara и приложения Aqara Home можно настроить другие интервалы срабатывания. В рамках приложения Xiaomi Home этого сделать пока, к сожалению, нельзя. Но практика показала, что интервал в 1 минуту более чем достаточный – ложных срабатываний нет, все срабатывания были по делу. Также по датчикам можно смотреть логи. Не исключение и данный датчик. Можно, например, по логу определить, когда в баню пришли (первое открытие двери в данный день) и когда ее покинули (последнее закрытие двери), тем самым оценив суммарное время пребывания в помещении.
Впечатления от эксплуатации
Общие впечатления от эксплуатации сугубо положительные. Конечно, есть некоторые мелкие нюансы, но основная цель автоматизации достигнута. В первую очередь, это психологическое спокойствие, подтвержденное результатами тестов. Также немаловажен и комфорт – было получено удаленное управление уличным освещением, вытяжкой, появился дополнительный ночной светильник. Уехав в отпуск, можно вспомнить и удаленно отключить воду.
Затраты на все вышеописанные устройства в примерном виде (без привязки к конкретному магазину) приведены ниже. При заказе на AliExpress цены будут отличаться в меньшую сторону.
При выборе набора оборудования необходимо учитывать совместимость (для какого именно региона это оборудование было произведено и какому семейству относится). В рамках приложения не получится создать сценарий, который, например, по событию датчика дыма (для региона “China Mainland”) будет управлять розеткой под европейский регион. Если не нужна экзотика типа датчика дыма, то лучше посмотреть на устройства Aqara для локального рынка. В конце концов, реле можно заменить, например, двухклавишным выключателем. Ряд магазинов, торгующих Xiaomi устройствами, видимо, ввозит их по-серому (эти устройства предназначены для китайского региона). А вот, например, Связной, везет устройства предназначенные для нашего рынка. Кроме совместимости тех же розеток, в них будут и инструкции на английском и русском языке. Ниже фото двух одинаковых датчиков, но под разные регионы (внутренний китайский – слева и внешний европейский – справа):
Отзывчивость управления через приложение не всегда хороша. Например, иногда можно столкнуться с ситуацией, что раз за разом вместо включения света получаем ошибку в духе “request failed”. Экспериментально выявленное лечение – выгрузка приложения из памяти и повторный запуск – решает эту проблему быстрее, чем ожидание ответа при очередной попытке. Также иногда бывают заметные задержки (вплоть до секунд 20-30) с обновлением статуса того или иного датчика. В эти моменты лучше не нажимать повторно кнопки включения/выключения устройств, а просто дождаться обновления статуса. При запуске приложения в некоторых ситуациях можно увидеть пустой список вместо списка устройств. Тут не нужно впадать в панику – он обычно появляется в течение следующих нескольких секунд. Оповещения на телефон не локализованы и спасает правильное именование самих событий. Кроме того, авторы приложения периодически используют канал push-оповещений для рекламы (опять же на китайском). Это, конечно, не нравится, но выбора особо нет.
Надеюсь, данная статья помогла получить достаточное представление о возможностях ряда устройств Xiaomi для построения умного дома и сценариях их практического применения. Если у вас остались какие-то вопросы, есть корректировки и дополнения, буду рад обсудить их в комментариях.