Skip to main content

Освещение с управлением движением Homebridge

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

Результат был неудовлетворительным. Вот почему и как я в конечном итоге воплотил свое видение умного дома в реальность с помощью Homebridge…

Первым шагом было получение источников света, совместимых с HomeKit. На моей кухне были встроенные точечные светильники, поэтому лучшим вариантом были лампы Philips Hue GU10, которые можно было бы контролировать через мост Hue. Мне удалось найти хороший пакет на eBay, так что, хотя затраты все еще были значительными, это было намного лучше, чем платить полную розничную цену. Если бы я был в Соединенных Штатах, я бы подумал об умном выключателе света, таком как Lutron Caseta, а не об умных лампочках. Однако смарт-выключатели в Соединенном Королевстве практически отсутствуют, поскольку в наших домах отсутствует необходимая нейтральная проводка.

Установка лампочек Hue была легкой задачей, и первоначальная настройка их добавления в HomeKit была относительно безболезненной. (Одно из постоянных разочарований заключается в том, что приложение Hue имеет тенденцию изменять назначенную комнату для всех ваших аксессуаров HomeKit, подключенных к Hue, поэтому я стараюсь открывать приложение Hue как можно реже.) Это дало мне возможность контролировать свет со всех моих устройств с помощью приложения «Дом» или Siri. Состояние освещения быстро реагирует на команду, чему, безусловно, способствует более эффективная архитектура iOS 16 HomeKit.

Чтобы заставить работать часть движения, мой первоначальный план состоял в том, чтобы использовать датчик движения Eve с поддержкой Thread и сделать автоматизацию в приложении Home, которая включала бы свет при обнаружении движения и снова выключала бы их, когда движение больше не обнаруживается.

Это было легко создать, но давало слишком много ложных срабатываний. Любая пауза в движении на кухне приводила к выключению света, а иногда датчик просто пропускал событие движения и тоже попадал в этот корпус. Приложение Eve позволяет увеличить продолжительность обнаруженных событий движения, поэтому я установил гораздо более длительный тайм-аут. Это смягчило первую проблему, но теперь это означало, что свет горел гораздо дольше, чем нужно.

У меня также была проблема с пользовательским интерфейсом, когда я выключал свет вручную с помощью приложения Home (или голосового запроса к HomePod), но тогда любое событие движения немедленно запускало датчик движения, чтобы снова включить свет. Естественным человеческим поведением является выключение света выключателем кошелька, когда вы уходите, но автоматизация движения будет активно бороться с этим. Что мне действительно нужно, так это способ заставить систему игнорировать автоматические события движения, если свет недавно управлялся вручную.

Еще одна проблема с текущим расположением заключалась в том, что у одного датчика движения не было достаточного диапазона, чтобы охватить все пространство; моя кухня — длинная, но узкая комната. Итак, я купил второй датчик, чтобы поставить на другом конце кухонных шкафов. Координация комбинации событий только с параметрами автоматизации приложения Home практически невозможна.

Итак, мне нужно было что-то более умное, помимо того, что предлагает приложение Home. Ответ на мои проблемы пришел в виде плагина Magic Occupancy через Homebridge. Что делает этот плагин, так это предоставляет специальные переключатели для конфигурации приложения Home, которые имеют особое поведение, обеспечивая уровни логики поверх платформы HomeKit.

Разнообразные «фиктивные» переключатели, предоставляемые плагином Magic Occupancy.

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

Итак, для моей кухонной ситуации у меня есть два дочерних переключателя, по одному на каждый датчик движения. Когда любой из этих переключателей активируется, кухня считается «занятой», и включается свет. Когда оба этих датчика перестают обнаруживать движение, начинается минутный тайм-аут. По истечении этого тайм-аута свет выключается.

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

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

Я не собираюсь притворяться, что заставить все это работать было легко. Вам нужно возиться с конфигурацией плагина Homebridge, а затем подключить всю автоматизацию к этим фиктивным переключателям в приложении Home. Но могу сказать, боль того стоила. Эта договоренность, наконец, привела к тому, что я предполагал в начале всего этого процесса. Теперь у меня есть умные фонари. Дополнительная глубина, обеспечиваемая плагином Magic Occupancy, заставляет его работать так, как вы этого интуитивно хотите. Но можно пойти и дальше.

Переключатель с постоянным включением имеет такое свойство, что если он включен, тайм-аут движения откладывается. Это означает, что свет остается включенным, когда этот переключатель включен, но только если свет был включен с самого начала. Я практически использую это, когда выношу мусор каждую неделю. У меня есть камера HomeKit, смотрящая на мой передний двор, в которой есть датчик движения. Этот датчик движения привязан к выключателю на кухне. Так вот, когда я выношу мусор, свет на кухне резко не выключается только потому, что я вышел из комнаты больше чем на минуту. Вместо этого они выключаются только тогда, когда на кухне или в прихожей больше не обнаруживается движение (и, что особенно важно, движение в прихожей не приводит к включению кухонного освещения).

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

Это очень мощная система. Это также хорошая демонстрация того, что Homebridge не только обеспечивает неофициальную поддержку HomeKit для аксессуаров, которые его не поддерживают. Помните, что Philips Hue уже работает с HomeKit, просто обычный набор автоматизации HomeKit недостаточно богат, чтобы выражать продвинутую взаимосвязанную логику. Плагины Homebridge могут заполнить большинство этих пробелов.