Как умный дом не дал коту замерзнуть

Умный дом, в сознании большинства людей, все еще является некоей игрушкой, которая включает свет при входе в туалет и позволяет автоматизировать включение розеток по расписанию. Те, кто уже обзавелся своим домом, стараются максимально автоматизировать рутинные процессы, так как дом действительно требует массу внимания. Я столкнулся с тем, что мой кот, невзирая на любые морозы, ходит на охоту, да и просто погулять. Возвращается он всегда на одно и то же место — крыльцо, и может сидеть там часами, пока кто-то не выглянет в окно и не пойдет открывать двери. А морозы в этом году были до -28 градусов. Сегодня я хочу рассказать о том, как умный дом позволил спасти кота от замерзания.
Для начала покажу, как обстояло дело раньше. Кот приходит и всегда ждет на крыльце открытия двери. Иногда может ждать час и более, пока кто-нибудь не выглянет в окно.

Я решил задействовать автоматику умного дома и тут очень кстати я прочитал про технологию Z-Wave. О том, как умный дом не дал коту замерзнуть-читайте под катом.

Первой идеей была мысль научить кота нажимать на кнопку звонка, просто установив ему отдельную кнопку. Но кот-животное своенравное и совсем не обязательно он будет нажимать кнопку. Да и это расходилось бы с идеей автоматизации процессов.
Второй идеей, которую я начал реализовывать, было каким-то образом детектировать появление кота на крыльце и оповещение о том, что пора открывать двери.

Надо сделать небольшое отступление и сказать, почему я предпочел технологию Z-Wave. Так как дом уже готов, то прокладка дополнительных проводов для датчика движения затруднительна, а значит надо выбрать беспроводной метод передачи сигнала. Z-Wave технология уже обкатана и датчики выпускаются массово, а значит, детские болезни уже вылечены. Сам протокол работает на частоте 869,2 МГц (в России) и имеет защиту данных при передаче. Датчики можно конфигурировать таким образом, чтобы обновление информации происходило с определенной частотой, что положительно скажется на ресурсе батареек (не забываем, что датчик беспроводной). Наконец, сами контроллеры Z-Wave имеют широкое распространение, под них написано куча плагинов, а найти ответы на вопросы не составит труда даже на русскоязычных форумах. Итак, я решил попробовать Z-Wave.

Первое знакомство
Для решения своей задачи я отобрал три устройства:
1. Контроллер Fibaro Home Center Lite
2. Мультисенсор Aeotec 4 в 1
3. Универсальный датчик Fibaro Universal Sensor

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

Идея была следующей:
1. Датчик движения обнаруживает появление питомца на крыльце и передает сигнал контроллеру.
2. Контроллер доступными методами оповещает жильцов о том, что пора открыть дверь.
3. Дверь открывается и кот спасен от неминуемого замерзания!

Начну по порядку
Сам контроллер чем-то напоминает компактный роутер, за тем лишь исключением, что у него только один Ethernet-порт.
4999555026ff4166a53df336684eba4d.JPG

Описание подключения и первой настройки контроллера умного дома
На передней панели ряд индикаторов, которые оповещают о состояниях. Среди необычных: прием\передача сигнала и добавление новых устройств.
95c3b9967b7444008fc948ecdeb17da3.JPG

А с обратной стороны все просто: питание и Ethernet порт. Надо отметить, что адаптер питания оснащен очень ярким световым индикатором, поэтому при установке в спальне, лучше заклеить этот светодиод хотя бы изолентой.
ffe4f65053cc4341a350086e7f9ee27d.JPG

Первичная настройка сводится к вводу сетевых настроек и созданию пользователей и паролей. Правильно сконфигурированное устройство тут же связывается с сервером и проверяет наличие свежих прошивок. Любопытно, что ставится не сразу последняя прошивка, а скачиваются последовательно, поэтому можно остановиться на наиболее стабильной версии.
В принципе, уже можно начинать подключать датчики и конфигурировать устройства, но если хочется работать с контроллером удаленно, то появляются два варианта:
1. Проброс портов на домашнем роутере. (80 и 22)
2. Регистрации на сервере home.fibaro.com

Последний вариант позволит пользоваться фирменным приложением на смартфоне и избавляет от проблем при наличии «серого» IP адреса.
1e547c4ebc28426899f4703970398fff.JPG

Регистрация осуществляется в два шага. Первым шагом создается профиль пользователя, в котором указывается логин и пароль. Завершается регистрация подтверждением клика по ссылке, пришедшей на электронную почту. Второй шаг — это добавление контроллера. Для этого требуется серийный номер и login/password от контроллера. После проделанных операций можно подключаться удаленно к контроллеру, как со смартфонов, так и с любого компьютера в Интернете.

Начинаем подключение датчика
Для регистрации датчика на контроллере требуется проделать простейшую процедуру из двух действий.
1. Выбираем пункт «Устройства» — «Добавить удалить устройства»
2. Нажимаем на внешнем датчике кнопку 3 раза. (Однократное нажатие пробуждает датчик и инициирует передачу данных, двойное нажатие чаще всего вызывает регистрацию. Но если двойное нажатие будет распознано, как одинарное, то тройное точно будет распознано правильно).
Для регистрации датчика требуется 10–60 секунд. Когда датчик зарегистрирован, начинаем создавать нашу сцену.

Создания сцены, реакция на события
Сцена — это задача, которая будет выполнена при тех или иных условиях. Можно создавать сцены из логических блоков или при помощи простейшего конструктора. Я решил прибегнуть к логическим блокам, поскольку это очень наглядно. Перед этим я скачал на смартфон официальное приложение fibaro и ввел данные учетной записи, которую зарегистрировал чуть раньше на сайте home.fibaro.com. Теперь смартфон видел все датчики и события, происходящие на контроллере.

Оповещения могут присылаться в виде смс (если подключен смс центр рассылки), push-уведомлений на смартфон или e-mail сообщений. Меня интересовал второй вариант, поскольку он является наиболее быстрым.

Итак, создаем сцену, которая заставит прислать контроллер оповещение мне на смартфон. Для надежности, я подключил два смартфона и отправлял уведомление сразу на оба.
8ffee6b7acf64e018036d5985b706c26.JPG

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

918c4f4c014949718485a32da1e90014.jpg

Очень удобно, что контроллер позволяет настроить время работы этого условия, чтобы ночью смартфон не будил ложными срабатываниями. Но все равно, неправильных оповещений было до 50%. Если присмотреться к фотографии выше, то можно заметить камеру видеонаблюдения, с которой и было сделано первое видео. Поскольку крыльцо и ступеньки попадают в кадр, то было решено задействовать в этой операции видеорегистратор.

Универсальный датчик и видеорегистратор
Видеорегистратор тоже обладает собственными настройками и даже имеет собственные аварийные выходы. Поэтому было решено задействовать его возможности по определению движения в определенной зоне и оповестить контроллер. Для этого очень кстати пригодился универсальный датчик. Он позволяет подключить пару бинарных датчиков (вкл, выкл) или до 4 температурных сенсоров.
114a974c173c431d90497248f2d28929.JPG

Сам датчик очень компактный и требует постоянного тока напряжением от 9 до 30 В. У меня камеры видеонаблюдения питаются напряжением 12 В, поэтому это не стало проблемой.

80d45759c55c49498c917085fb343b35.JPG

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

706050c2df5a4d1ea13b169ffc63503b.JPG

На снимке ниже видно, что в случае обнаружения движения замыкается первое реле. Также выставляется время срабатывания этого реле, если не хочется получать оповещения в ночное время. (на снимке реле срабатывает круглосуточно)

da24db3d833f4af3a8fab1a50f29c8c1.JPG

Универсальный датчик был подключен к контроллеру так же, как и сенсор движения, а блок-схема претерпела минимальные изменения — срабатывание одного датчика было заменено на срабатывание другого. В итоге, получилась следующая цепочка:
1. Кот появляется на крыльце
2. Видеорегистратор фиксирует движение в этой области и замыкает реле
3. Универсальный датчик видит замыкание на своих выходах и отправляет сигнал контроллеру
4. Контроллер обрабатывает сигнал согласно заданной сцене и отправляет push-уведомление на смартфон
5. Пришедшее уведомление побуждает хозяев открыть дверь

А выглядит это следующим образом.

Заключение
Нетривиальная задача была решена за 3 дня с отстройкой чувствительности и без необходимости прокладки новых проводов. Беспроводная технология связи Z-Wave себя полностью оправдала. Функционал и гибкость настройки системы приятно порадовала. Впереди стоит задача по переносу текущего функционала умного дома, который возложен на набор из Arduino, о котором я писал ранее. Если же Вам, уважаемые читатели, будет интересен обзор тех или иных функций, а может быть каких-либо датчиков умного дома, то прошу отозваться в комментариях, а я постараюсь их протестировать и написать обзор.

© Geektimes