Библиотека сайта rus-linux.net
Управление своим домом с помощью Vera
Оригинал: Control Your Home with Vera from Mi Casa Verde
Автор: Daniel Bartholomew
Дата: 1 мая 2009
Перевод: Александр Тарасов aka oioki
Дата перевода: 22 июля 2009
Автоматизация собственного дома - вот одна из идей, которая будет вечно посещать умы изобретателей. Эта идея старше, чем лампа накаливания, которая сама по себе в какой-то степени автоматизация - с ее помощью человек отказался от керосиновых ламп и свечей, теперь ему остается просто нажать на переключатель.
Люди - ленивые создания. Теперь хочется автоматизировать даже такое простое действие, как нажатие на переключатель. В последние годы появилось множество технологий для управления освещением и электрическими устройствами. Все устройства управления домом можно условно разделить на две категории: профессиональные и любительские.
Во всех домашних системах должна быть возможность включения и выключения устройств. Для профессиональных систем это часто означает необходимость в прокладке дополнительных кабелей. Это можно сделать сравнительно легко в строящемся здании, но подобный подход слишком дорог при установке системы в существующем доме.
Среди любительских систем наиболее популярной является X10, в которой управляющие сигналы посылаются по линиям электропитания. Очевидным преимуществом является то, что не требуется каких-либо дополнительных кабелей. Можно постепенно наращивать свою систему, причем сделать это самостоятельно, если вы более-менее технически грамотны. Однако у X10 есть несколько недостатков. К примеру, вы живете в многоэтажном доме, и у вашего соседа также есть X10, тогда возможно перекрестное влияние этих систем, и может выйти так, что вы будете включать и выключать друг у друга свет. Даже в отдельно стоящем доме X10 может работать не так как надо, ведь передача сигналов по линиям электропитания проблематична, и зачастую из-за интереференции посылаемые сигналы приходят не к тому устройству либо вовсе пропадают.
Z-Wave - новая система автоматизации, призванная избежать ограничений существующих систем за счет использования беспроводной сети. Каждое устройство Z-Wave выступает одновременно в роли приемника и передатчика. Любые принятые сигналы автоматически пересылаются дальше. В дополнение к этому, когда приходит команда для данного устройства, оно отвечает контроллеру сообщением, что команда была выполнена.
Как и X10, технология Z-Wave позволяет вам автоматизировать устройства в доме постепенно, распределяя денежные затраты на долгий срок. Но ничто вам не мешает провернуть это дело сразу, либо нанять профессионала, который бы все сделал за вас.
Основной недостаток Z-Wave - сложность установки такой системы.
Но недавно вышел Linux-продукт - Vera от Mi Casa Verde. Разработчики позиционируют его как центр управления Z-Wave, установка которого по силам любому. Чтобы проверить это утверждение, я дал коробку Vera и несколько модулей Z-Wave человеку, обладающему нетехнической специальностью, и попросил его установить эту систему в своем доме.
Рисунок 1. Комплект Vera таков: основное устройство, электронный ключ, блок питания и Ethernet-кабель. На фоне можно видеть несколько модулей Z-Wave.
В комплекте Vera идет руководство по установке на 4 страницах. С его помощью пользователь может подключить Vera и запустить ее. При первом включении Vera пытается подключиться к вашей домашней сети по DHCP. Мой подопытный пользователь ничего не знал о свитчах, маршрутизаторах, Ethernet и DHCP, и никогда этим не интересовался, поэтому здесь я ему помог. Подключив Vera в свободный порт свитча, мы включили питание системы.
Далее в документации написано, что нужно подождать пару минут, пока Vera загрузится и объявит о своем присутствии сайту findvera.com. Спустя несколько минут, нужно зайти на этот сайт findvera.com и нажать большую зеленую кнопку Setup Vera on my home network. Пользователь так и поступил и смог войти в веб-интерфейс Vera.
Рисунок 2. При подключении к Vera вам не нужно знать IP-адрес. Просто заходите на findvera.com.
Хорошо. Vera включилась, и пользователь смог войти в админку, не зная какой адрес был назначен устройству моим домашним роутером. Интеграция прошла легко и безболезненно.
Далее в документации был запечатлен скриншот, который должен появиться при первом входе в систему. Однако, когда пользователь вошел в систему в первый раз, Vera предложила обновить прошивку устройства, а этот самый начальный экран не был показан. Это смутило пользователя. В документации должно было быть предупреждение, что может появиться сообщение об обновлении прошивки, с инструкциями, что делать дальше. Либо сама система должна определить, что начальная установка еще не завершена, и лишь потом предлагать обновиться.
Тем не менее, мы решили обновиться. Обновление прошивки происходит несложно. Система попросит сделать резервную копию конфигурации. Но обычному пользователю эти операции непонятны, поэтому я сам все это сделал, после чего мы продолжили.
Рисунок 3. Создание резервной копии конфигурации Vera, как и восстановление происходит просто.
После обновления прошивки и перезагрузки Vera, пользователь подключился вновь, и в этот раз вместо страницы начальной установки система показала нам панель управления (Dashboard), на ней можно видеть состояние всех устройств и переходить к их настройке. По задумке разработчиков эта страница должна отображаться сразу после установки, но в данном случае это не то, что хотел бы видеть пользователь. Более того, пользователь не знает, что в данной ситуации делать - страница была абсолютно пустой, ведь ничего еще не было настроено. Я направил пользователя в нужном направлении - нужно нажать на кнопку Setup в правом верхнем углу экрана. После этого появилась та самая страница, изображенная в документации.
Рисунок 4. Панель управления (Dashboard) показывает все устройства на одной странице.
На данном этапе бумажная документация исчерпывает себя, и поддержка пользователя продолжается за счет встроенных видео YouTube, в которых рассказывается, как следует правильно настраивать Vera. По умолчанию видео воспроизводится автоматически, и пользователю такой подход понравился. Можно выключить видео, убрав галочку Autoplay.
Рисунок 5. Видеоролики призваны помочь пользователю при начальной установке Vera.
В самом простом случае порядок настройки таков, что вам нужно пройтись по кнопкам сверху вниз в левом меню веб-интерфейса Vera. На первом шаге Vera попросит вас завести учетную запись на сайте findvera.com, с ее помощью можно будет подключиться к своей системе из любой точки мира. Сервис удаленного управления Vera предоставляется бесплатно в течение первых 90 дней, а после этого стоит $7.95 в месяц. Документация на сайте гласит, что этот сервис устанавливается по желанию, и более того, можно самому настроить внешний доступ. В веб-интерфейсе ничего об этом не было написано, поэтому мы с товарищем просто перешли к следующему шагу.
Следующий этап, и первый действительно что-то решающий, это создание комнат (Rooms). Здесь Vera может логически организовать ваши устройства. Пользователь с легкостью выполнил этот шаг и даже не потребовал моей помощи. Во встроенном видео нам сказали, что если у вас есть устройства во дворе или на улице, тогда нужно их рассматривать как находящиеся в одной комнате "Улица" - так проще.
Далее нужно собственно добавить устройства Z-Wave в систему Vera. Перечень устройств весьма велик - от обычных лампочек и розеток (лампочкам можно выставлять промежуточные значения напряжения, а розеткам - нет) и до детекторов движения, автоматических жалюзей и термостатов. Розетки могут быть выполнены в виде маленьких коробочек, которые включаются в настоящие настенные розетки, либо сами прикрепляются к стене и выглядят как обычные розетки. Очевидно, настенные розетки выглядят более профессионально и красиво, но их сложнее смонтировать. Система Vera также может взаимодействовать с устройствами, отличными от Z-Wave, к примеру, с IP-камерами.
Базовая последовательность шагов при добавлении нового устройства такова:
- Извлеките ключ Z-Wave из Vera.
- Поднесите ключ к модулю Z-Wave, который вы хотите добавить.
- Нажмите кнопку на ключе (лампочка на нем заморгает).
- Нажмите кнопку на модуле Z-Wave (лампочка на ключе загорится на несколько секунд, таким образом обозначая, что нажатие кнопки было зафиксировано).
- При необходимости (если есть еще модули) повторите шаги 2-4.
- Вставьте ключ обратно в Vera.
Эти шаги просты и понятны лично мне, но они не так просто звучат для обычного пользователя. Путаница возникает в основном из-за терминологии. К примеру, пользователь не знаком со словом dongle и сам бы не догадался, что это, если бы в документации не было бы картинки и упоминания, что он черный (в данной статье термин "dongle" был переведен как "ключ", так что в русском варианте путаницы меньше - прим. перев.). Мой друг сказал, что слово dongle так же описывает суть предмета, как thingy или whatchamacallit. Но даже немного попутавшись в терминах, мой товарищ все равно смог самостоятельно без моей помощи подключить все устройства.
Итак, пользователь добавил устройства и вставил ключ обратно в Vera, пришло время настроить эти устройства. Пользователю это показалось сложным и он на первый раз попросил меня о помощи.
Настройка устройств осуществляется через различные "сцены". Обычно сцена - это группа команд. Примером сцены может быть "установить яркость 50% всех лампочек в зале" или "выключить все светильники в спальне". Настроив сцену, нужно ее сохранить и потом вызывать, когда вам захочется. Однако истинная мощь системы Vera проявляется, когда к сценам добавляются таймеры и события.
Рисунок 6. Графический интерфейс для настройки сцен не вполне понятен.
Рисунок 7. Можно забраться вовнутрь Vera с помощью Telnet.
С помощью таймеров можно запускать сцены в определенное время, к примеру "каждый понедельник в 8 вечера", "каждые два часа" или "12 июня 2009 года в 3:24". События позволяют запускать сцены при наступлении определенного события, к примеру, "когда позвонят в дверь", "обнаружено движение в зале" или "когда главный светильник в спальне включен". Я прошелся по процессу настройки события и таймера вместе с другом, он все понял и потом сам добавлял сцены, таймеры и события.
Вы наверно уже заметили это... Практически на каждом шагу у пользователя возникали затруднения и новые вопросы. Хорошо, если бы ребята из Mi Casa Verde показали сам процесс настройки системы, а не писали инструкции, как это сделать. И было бы просто изумительно, если бы пользователь имел возможность настроить виртуальную комнату с виртуальными устройствами и наглядно на картинке увидеть результат своих действий, с которым можно поэкспериментировать, не бегая по всей квартире. На самом деле, попытка упростить задачу автоматизации дома до уровня любого, даже не разбирающегося в технике, весьма амбициозна. Тем не менее, как я считаю, они во многом преуспели.
Основное заблуждение разработчиков - в предположении, что пользователь знает, что означают слова dongle, LAN, Wi-Fi, шлюз, USB-порт и другие термины. Для более-менее технически грамотного человека эти термины понятны, но для кого-то, кто не разбирается в технике, многие слова будут просто незнакомы. Для многих пользователей компьютер должен быть простым - просто сел и начинаешь работать. Понятия файлов, приложений и программ для многих слишком сложны. Для них существуют лишь задачи, такие как "проверить мою почту, не ответила ли Сью", "распечатать этот документ", "посмотреть видео на YouTube", "пришел ли чек #1234", "загрузить фотографии последней вечеринки на Facebook" и тому подобное... Пользователю не нужно ничего глубже этого уровня понимания. Разработчики Vera и других продуктов, которые нацелены на самую широкую аудиторию, должны понимать, что даже фраза "извлеките dongle" кому-то может быть непонятна.
Замечения
В целом, Vera - это достаточно простое средство в установке и использовании. Однако, были обнаружены следующие нюансы.
Веб-интерфейс неполон. На некоторых страницах нет разъяснительного видео и вообще какой-либо другой информации. Уверен, что процесс разработки и дописывания документации идет полным ходом, но даже это не поможет мне здесь и сейчас.
Помимо этого, веб-интерфейс немного недоработан. Он работает по технологии AJAX - автоматическая отправка формы при добавлении устройств, сцен, событий и т.д. В большинстве случаев все работает как надо, но пару раз было такое, что мне пришлось повторять ввод настроек дважды и даже трижды перед тем, как они "схватились". Разъяснительное видео также иногда приостанавливалось, пока интерфейс делал свои внутренние дела.
Также как минимум было два случая, когда система Vera полностью переставала работать. Веб-интерфейс работал как ни в чем не бывало (и как будто все работает), но ни одна лампочка не хотела по моей команде загораться либо гаснуть. Но все же я смог управлять ими с помощью кнопок на самих модулях и с помощью пульта дистанционного управления Z-Wave. Перезагрузка системы решила проблему. Итак, я высоко ценю улучшения прошивки, но в то же время надеюсь, что при этом надежность и стабильность работы остаются приоритетными у разработчиков системы Vera.
Наконец, один раз Vera делала совершенно невообразимые вещи. Однажды я создал событие, которое бы включало ночник в спальне, когда включается свет в зале. После этого Vera стала делать странные вещи, вроде выключения и затем снова включения света в комнате, выключение света на случайные интервалы времени и т.п. После того, как Vera решила включить все освещение в комнате в 5 часов утра, я взял и удалил глючное событие.
Освещение
Vera основана на программах с открытым исходным кодом, поэтому легко поддается изменениям. К примеру, можно с помощью специальных HTTP-запросов управлять освещением в доме. Я написал Bash-скрипт для включения и выключения всех устройств Z-Wave. Это не самый элегантный скрипт, зато он работает:
#!/bin/bash # Файл называется "lights", его нужно поместить в # /usr/local/bin и задать права chmod 755 # освещение в доме # biglamp="12" # smalllamp="13" # desklamp="14" # tv="16" # masterbedroom="17" # Все освещение в доме lights="12 13 14 16 17" function turnlight() { if [ "${2}" = "on" ]; then # Включить свет curl \ "http://vera:3451/messagesend?from=1&to=${1}&type=1&id=192" else # Выключить свет curl \ "http://vera:3451/messagesend?from=1&to=${1}&type=1&id=193" fi } if [ "${1}" = "on" ] - - [ "${1}" = "off" ]; then for light in ${lights}; do turnlight ${light} ${1} done else echo "Usage:" echo " \"${0} on\" to turn all lights on" echo " \"${0} off\" to turn all lights off" exit fi exit 0
Заключение
К счастью, кроме того раза с ночником, больше проблем система не вызывала.
На самом деле, система Vera вела себя очень надежно, и стабильно отрабатывала мои сцены. У меня была одна, которая мгновенно приглушала свет в общей комнате, когда детям уже была пора спать. Хотя сами дети не хотели идти спать, но сцена отрабатывала нормально. Все мои другие сцены, события и таймеры также отлично отрабатывали.
Резюмируя вышесказанное, можно отметить, что Vera неплохо справилась с задачей скрытия большой сложности в настройке и управлении системой домашней автоматизации. Но у человека, не обладающего техническими навыками, все же система вызвала определенные затруднения.
Цены
Комплект Vera можно приобрести за $299 в интернет-магазине Mi Casa Verde.
Цены на модули Z-Wave начинаются от $35 и выше, в зависимости от фирмы-производителя и функций.
Я приобрел модули Z-Wave на Amazon.com - просто введите в окошко поиска "z-wave" и получите список имеющихся модулей. Вот что я купил:
- Intermatic HA06C Wireless Indoor Wall Switch: $36.86
- Intermatic HA03C Wireless Plug-In Indoor Lamp Module: $32.54
- Intermatic HA02C Wireless Heavy-Duty Plug-In Appliance Module: $39.97
- Intermatic HA01C Wireless Wall Receptacle: $33.79
Источники информации
Mi Casa Verde: micasaverde.com
Форумы Mi Casa Verde: forum.micasaverde.com
Вики Mi Casa Verde: wiki.micasaverde.com
Интернет-магазин Mi Casa Verde: https://shop.micasaverde.com
Amazon предлагает широкий выбор устройств Z-Wave: amazon.com
Дэниэл Бартоломью (Daniel Bartholomew) живет в Северной Каролине со своей женой и детьми. В интернете его можно найти на сайте daniel-bartholomew.com.