О Z-Wave
Хотели бы вы, при просмотре фильмов дома, чувствовать себя в своем собственном кинотеатре, который спроектирован специально для вас? Вечером, управляя системой с единого пульта управления, вы останавливаете свой выбор на понравившемся фильме и запускаете его, – далее включается в дело домашняя автоматизация – свет плавно гаснет, а вы, удобно расположившись на диване, наслаждаетесь просмотром. Если же в неурочное время, вас пытаются отвлечь звонком по срочным делам, а ваша звуковая система, нагоняя децибелы звука, совершенно вырвала вас из реального мира, умный модуль сам известит вас о входящем звонке, выведет оповещение на экран и предусмотрительно поставит на паузу воспроизведение, также немного подсветит комнату, не включая основного освещения. После такого несомненно досадного отвлекающего события, при возвращении к просмотру все снова погружается во тьму, и уже ничего не отвлекает вас до самого конца. После окончания фильма свет, щадя глаза, не сразу включается на полную мощность, постепенно разгораясь все ярче.
Вы думаете, нарисованная выше картина доступна только состоятельным людям? Отнюдь нет - при наличии телевизора с HDMI входом, управляющего модуля умного дома и пары исполнителей-диммеров, все это можно воплотить в жизнь за один вечер. Если описать действия вкратце, то на модуль умного дома ставится дополнительный плагин, а к телевизору подключается микрокомпьютер, на который установлен медиаплеер с ответной частью плагина умного дома. Таким образом умный дом знает все о состоянии медиаплеера и в соответствии с правилами управляет светом, шторами и другими элементами. А если вы захотите разобраться чуть поглубже, то можно обойтись и без микрокомпьютера, считывая данные по DLNA с телевизора.
1. Телевизор – вот что главное!
Рис. 1. Телевизор с картинкой Kodi
Допустим, что у вас уже есть телевизор Samsung, LG, Sony, Philips или любой другой с HDMI входом – это исходная точка построения всей системы. Будет хорошо, если телевизор имеет сетевой адаптер Ethernet или Wi-Fi. Smart часть телевизора совсем необязательна, потому что в качестве цифрового медиаплеера предлагается выбрать такое оборудование, на которое можно установить Kodi (XBMC Media Center) – бесплатный кроссплатформенный медиаплеер (рис. 1). Почему выбор остановлен именно на нем? Если вы не боитесь немного поиграться в настройках и не хотите платить за неиспользуемые функции – то XMBC/Kodi – выбор для вас. Его можно установить на Microsoft Windows, Mac OS X (Snow Leopard, Leopard, Tiger, Apple TV), Apple iOS, Linux, Android и Raspberry Pi, а выбор дополнений чрезвычайно широк. Если у вас уже есть HTPC (Home Theatre Personal Computer), компьютер в небольшом форм-факторе, позволяющий использовать его в качестве компьютера для домашнего кинотеатра, вы сможете легко установить на него XMBC. Если у вас его нет, то примерно за 37$ вы можете стать обладателем компьютера размером с банковскую карту Raspberry Pi Model B+ (рис. 2,3).
Рис. 2. Микрокомпьютер Raspberry Pi Model B+ без корпуса |
Рис. 3. Микрокомпьютер Raspberry Pi Model B+ в корпусе |
Как показала практика через Raspberry Pi легко воспроизводятся как фильмы в HDTV разрешении (720p, 1080p), так и в 3D. Для установки Kodi быстрее всего воспользоваться бесплатной готовой сборкой OpenELEC (http://openelec.tv/).
2. Без Z-Wave необходим отдельный киномеханик!
Телевизор важный компонент, но ведь в нарисованной в самом начале картинке кто-то должен физически выключить свет. Систем управления электрикой и датчиками достаточно много, но наиболее доступной и беспроблемной является беспроводная сеть Z-Wave. Умный дом на базе этого протокола связи требует, чтобы в сети постоянно был включен контроллер, который исполняет все правила, которые вы ему задали. Самый доступный по цене контроллер автоматизации умного дома – VeraLite, производимый Vera Control, Ltd (рис. 4). Но самый доступный – не значит плохой. VeraLite – очень гибко настраиваемый контроллер, при помощи которого вы можете решить очень многие вопросы.
Рис. 4. Контроллер автоматизации умного дома – VeraLite
Рис. 5. Панель управления VeraLite
После первичной настройки контроллера заходим в Приложения / Установить приложения и набираем в поисковой строке XBMC (https://apps.mios.com/search.php?key=XBMC). Поиск выдаст два плагина XBMCState и Kodi Remote, написанных одним автором Michael Grenier. Устанавливаем соответственно названию вашего медиаплеера – если у вас еще стабильная версия XBMC, то XBMCState, если уже стабильная версия Kodi, то тогда Kodi Remote. После установки вновь переходим в Приложения / Мои приложения и идем в Помощь установленного плагина (рис. 6).
Рис. 6. Окно настройки плагина XBMCState
Мы попадем на сайт форума поддержки производителя VeraLite (http://forum.micasaverde.com/index.php/topic,13697.0.html), откуда (после регистрации на форуме) надо скачать файл дополнения (файл XBMCState_micasaverde.addon.v1.2.zip), который устанавливается в Kodi через Программы / Дополнения / Установить из ZIP-файла (рис. 7).
Рис. 7. Окно дополнений в Kodi
После установки дополнения в Kodi надо обязательно прописать настройки VeraLite – указать ее ip адрес и номер виртуального устройства (эта информация указана в разделе управления плагином), которое создал плагин для XBMCState или Kodi Remote, а также указать какие именно статусы будут транслироваться в VeraLite (рис. 8). Статусы просты и понятны – на каком меню открыт сейчас Kodi: menu_setting, menu_picture, menu_program, menu_weather, menu_video, menu_music; какое сейчас состояние воспроизведения видео: video_title, video_started, video_stopped, video_paused, video_resumed, video_ended; и состояние аудио: audio_title, audio_started, audio_stopped, audio_paused, audio_resumed, audio_ended.
Рис. 8. Окно настройки плагина XBMCState в Kodi
Обращаю внимание, что на роутере надо закрепить за всеми участниками умного дома постоянные ip адреса (рис. 9): за VeraLite, телевизором, Raspberry Pi – чтобы избежать путаницы и вопросов почему что-то не работает.
Рис. 9. Окно настройки резервирования адресов на DHCP-сервере роутера
После всех настроек на созданном в VeraLite устройстве XBMCState в панели должен начать отображаться статус Kodi.
Теперь, после того как состояние Kodi передается на управляющее устройство VeraLite, пора ему уже передавать управляющие команды дальше – в нашем случае это управление, диммирование света ламп.
Схема управления светом очень проста – за существующим выключателем, который управляет светильником ставится небольшой модуль, который независимо от положения выключателя может регулировать уровень освещения. Например им может быть универсальный диммер Fibaro FGD-211, рассчитанный на нагрузку до 500 Вт (рис. 10).
Рис. 10. Электрическая схема подключения диммера Fibaro FGD-211
После включения данного диммера в сеть контроллера – он тоже будет отображаться в панели управления VeraLite (рис. 11). Обратим внимание на номер устройства (в данном случае №64) – в дальнейшем номер нам понадобится.
Рис. 11. Окно настройки диммера в панели управления VeraLite
Многим нравится вручную включать/выключать с планшета или телефона свет и управлять другими устройствами, но лично мое мнение, для того чтобы дом стал по-настоящему умный, должны отрабатываться заранее определенные правила, а человек не должен задумываться о том, что ему надо что-то включить или выключить.
На контроллере надо эти правила прописать. Идем во вкладку Автоматизация / Новая сцена / LUUP и вставляем следующий, снабженный комментариями, код (во избежание ошибок рекомендуется скачать на компьютер файл, прилагаемый после данного кода):
-- XBMClocal XBMCState = luup.variable_get("urn:upnp-org:serviceId:XBMCState1", "IdleTime", 26) --общее состояние Kodi, 26 номер устройства
local PlayerStatus = luup.variable_get("urn:upnp-org:serviceId:XBMCState1", "PlayerStatus", 26) --состояние проигрывателя, 26 номер устройства
local NightOrDay = luup.is_night() --если ночь, то истина if NightOrDay == true then -- управление светом только после заката
if PlayerStatus == "Video_start" then --когда стартует видео, выполняются нижеперечисленные действия, устанавливаются значения яркости на ноль
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "0"}, 75) --диммер номер 75
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "0"}, 10) --Поперек
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "0"}, 64) --Вдоль
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "0"}, 35) --RGBW
end
if PlayerStatus == "Video_pause" then
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "1"}, 75) --диммер номер 75, при паузе на 1 яркость
end
if PlayerStatus == "Video_resume" then luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "0"}, 75) --диммер номер 75
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "0"}, 10) --Поперек
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "0"}, 64) --Вдоль
end
if PlayerStatus == "Video_stop" then
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "20"}, 75) --диммер номер 75, конец фильма яркость 20
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "20"}, 35) --RGB
end
if XBMCState == "Xbmc_close" then
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "20"}, 75) --диммер номер 75
luup.call_action("urn:upnp-org:serviceId:Dimming1", "SetLoadLevelTarget", {newLoadlevelTarget = "20"}, 35) --RGB
end
end
Далее обязательно надо нажать Сохранить lua и можно переходить к триггерам – когда именно должен сработать код (рис. 12). Надо установить 4е положения: видео стартовало, видео на паузе, видео остановилось, XBMC закрыли – при желании все это можно откорректировать под себя.
Рис. 12. Настройка активации сцен в панели управления VeraLite
После этого наслаждаемся мини-домашним кинотеатром, который к тому же управляется с единого пульта – вашего смартфона при помощи Yatse, the XBMC / Kodi Remote (https://play.google.com/store/apps/details?id=org.leetzone.android.yatsewidgetfree&hl=ru) (для Android). Если в составе домашнего кинотеатра не только телевизор, но и звуковая система, то можно воспользоваться iTach WiFi to IR для более полной реализации идеи единого пульта.
3. Если пока нет Kodi, то управлять кинотеатром тоже можно! Продвинутый уровень.
Если на текущий момент в наличии есть только телевизор с сетевым адаптером Ethernet или Wi-Fi – уже можно думать о домашней автоматизации. Для управления телевизором по DLNA в VeraLite необходимы два других плагина: DLNA Media Controller (https://apps.mios.com/search.php?key=DLNA) и UPnP Event Proxy (https://apps.mios.com/search.php?key=UPnP) (рис. 13).
Рис. 13. Окно настройки плагина DLNA Media Controller в панели в панели управления VeraLite
После установки плагина надо его настроить, при этом бывает, что VeraLite не может найти мультимедийные устройства в сети (рис. 14).
Рис. 14. Окно настройки виртуального устройства, которое создал плагин DLNA Media Controller
Для решения проблемы есть два выхода. Простой – воспользоваться программой, которая ищет Universal Plug and Play (UPnP) устройства, например, для Android это UPnP Discover (https://play.google.com/store/apps/details?id=com.marichitas.upnp.discover&hl=ru) и вручную вписать новый адрес. Сложный – подключившись по SSH, выполнить на VeraLite команду:
iptables -t nat -I POSTROUTING -d 224.0.0.0/4 -j SNAT --to-source 192.167.0.101
Плагин DLNA Media Controller позволяет решать гораздо более сложные задачи – автоматическое управление громкостью без участия человека, например, когда телевизор включается по часам как будильник; различные голосовые оповещения – в том числе персонифицированные, в зависимости от того, кто из людей находится дома; оповещение о параметрах дома с изменяемыми переменными; извещение по эл. почте о контенте, который проигрывает телевизор. Плагин также имеет возможность автоматического включения различного видео и аудио контента в зависимости от условий и времени.
4. Живая демонстрация работы системы.
5. Итоги.
Как показано в статье, имея только телевизор (с выходом в интернет или подключенным к нему HTPC за 37$) и контроллер домашней автоматизации VeraLite уже можно получать приятные бонусы от управления телевизором, если же добавить несколько исполнительных устройств сети Z-Wave, то можно достаточно просто организовать свой собственный домашний кинотеатр.
Также как мы смогли увидеть из описания возможностей VeraLite, данный контроллер ничуть не уступает по возможностям аналогичным, цена на которые может быть до трех раз выше (например, Fibaro Home Center 2).
Предполагаемый бюджет автоматизации (цены указаны приблизительно):
1. Микрокомпьютер Raspberry Pi: 2 300 руб.
2. HDMI провод: 150 руб.
3. Контроллер умного дома VeraLite: 10 500 руб.
4. Универсальный диммер 500 Вт, Fibaro FGD-211: 3 450 руб.
Итого: 16 400 руб.
*Информация актуальна на дату написания: ноябрь 2014 г.