Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Ошибка базы данных: Table 'a111530_forumnew.rlf1_users' doesn't exist
На главную -> MyLDP -> Тематический каталог -> Программное обеспечение для Linux

Домашняя автоматизация с помощью Linux

Оригинал: "Home Automation with Linux"
Автор: Nathan Willis
Дата публикации: 16 октября 2009
Перевод: Н.Ромоданов
Дата перевода: октябрь 2009 г.

Домашняя автоматизация может казаться научно-фантастической мечтой, но, в действительности, она не только довольно обыденна, но относительно проста, если ее начинать с Linux.

В самом простом случае интеллектуальное управление бытовой техникой и коммунальными службами начинается с беспроводных и проводных модулей и реле, использующих технологию plug-and-play, которые могут легко взаимодействовать с небольшим домашним сервером, отвечающим за выполнение действий по расписанию и выполняющим мониторинг. В самом сложном варианте домашняя автоматизация может включать в себя средства контроля состояния окружающей среды, домашние охранные системы и множество других вещей, которые, независимо от того, как они называются, важны для ведения бизнеса, а также для поддержания нормальных условий проживания.

Наиболее общим назначением домашней автоматизации является управление освещением и слежение за состоянием окружающей среды (отоплением помещений и кондиционирование воздуха). Обе эти задачи могут решаться в соответствие с заранее составленным графиком включения/выключения устройств, либо в соответствие с данными, поступающими от датчиков освещенности или температуры, а могут быть запрограммированы так, что будут решаться по-разному в зависимости от времени суток, дней недели или сезона. В состав систем домашней автоматизации также могут входить системы слежения, включающие освещение в ответ на реакцию датчиков движения, датчики, размещенные на дверях/окнах, и камеры видеонаблюдения, что в случае обнаружения разбитого окна позволит включить освещение в дополнение к вызову полиции и другим стандартным действиям, обеспечивающих охрану жилья.

Все чаще поклонники домашних кинотеатров используют средства автоматического управления освещением и другими бытовыми приборами там, где происходит просмотр фильмов. В большинстве аудио/видео ресиверов, проекторов домашних кинотеатров и моторизированных проекционных экранах есть возможность управления через последовательный порт, что позволяет легко подключать их в единую систему вместе с другими устройствами домашней автоматизации. Кроме того, почти любым бытовым электрическим устройством - от дождевальной установки и до электроподъемника жалюзей - можно управлять дистанционно и, следовательно, можно управлять с помощью компьютера, входящего в состав системы домашней автоматизации. Единственное препятствие – найди модули, с помощью которых устройство будет подключено к сети автоматического обслуживания, и найти программы, с помощью которых можно будет управлять этим устройством.

Стандарты

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

Стандарт X10 наиболее простой из широко известных стандартов; он является открытым стандартом и использует сеть электропитания. Хотя он имеет максимальную скорость передачи сигнала только 20 бит в секунду, низкая стоимость компонентов делает его популярным, в частности, для новичков в этой области. Стандарт X10 был создан в 1975 году, но существует более новый стандарт, называемый INSTEON, в котором имеется обратная совместимость с X10. Скорость передачи сигнала управления в новом стандарте гораздо выше, есть встроенные средства обнаружения ошибок и повторной передачи сигнала, а для передачи используется гибридный канал – радиосвязь и сеть электропитания. Однако, в отличие от X10, спецификации INSTEON защищены патентами и используются только его разработчиками – компанией Smarthome Technology.

C-Bus, Bus SCS, HomePNA и Z-Wave - другие стандарты, набирающие популярность, но каждый из них контролируется либо одной компанией, либо торговой группой. В противоположность этому, стандарты LonWorks и KNX, которые были одобрены ISO, IEC, ANSI или другими органами стандартизации, можно реализовывать без выплаты лицензионных платежей. KNX отличается тем, что это унификация трех предыдущих стандартов - European Installation Bus (EIB), European Home Systems Protocol (EHS) и BatiBUS. ONE-NET является новым интересным и полностью открытым стандартом, созданным с нуля независимо от поставщиков оборудования.

В дополнение к этим стандартам, ориентированным на домашнюю автоматизацию, существует ряд других протоколов, которые часто используются для интеграции устройств в системы "умный дом", к их числу относится беспроводный протокол ZigBee, все больше и больше используемый при подключении через USB и Bluetooth.

Основные Linux приложения

Поддержка домашней автоматизации начинается с поддержки соответствующего стандарта отправки и получения сообщений. Стандарт X10 поддерживается широко и есть много устройств управления X10, которые Вы можете подключиться к Linux компьютеру через стандартный порт RS-232. Одним из наиболее активно поддерживаемых пакетов для X10 под Linux является Heyu, с помощью которого можно работать со многими устройствами X10, подключаемыми к последовательному порту. Управление Heyu осуществляется из командной строки, его можно запускаться как демон или для автоматического выполнения задачи как задание для планировщика задач cron, причем также есть несколько интерфейсных оболочек, написанных сторонними разработчиками.

К числу других утилит для X10 относится пакет Bottlerocket для популярного контроллера модели x10 "Firecracker", а также пакет X10d, изначально не предназначенный для Linux, но если его пропатчить, он будет работать под Linux. Оба пакета являются исключительно коммуникационными, предназначенными только для отправки / приема сообщений непосредственно на подключенное последовательное устройство X10, тем не менее есть достаточно развитые высокоуровневые инструментальные пакеты, работающие на их базе. Эти "дружественные для пользователей" пакеты не только указаны на домашних страницах проектов Bottlerocket и X10d, но также приведены на сайте Нейла Черри "Домашняя автоматизация под Linux" (Neil Cherry's Linux Home Automation).

Стандарт INSTEON распространен не так широко, как X10, но есть несколько независимых проектов Linux, которые его поддерживают. На сайте Нейла Черри имеется несколько утилит для INSTEON, некоторые из которых портированы из кода под стандарт X10. Существует также утилита iLink, которая может работать как с последовательными, так и с USB контроллерами стандарта INSTEON. Более амбициозные пользователи могут предпочесть сайт Efundies, обслуживающий умельцев от электроники, на котором есть подробные руководства по аппаратному и программному обеспечению, в том числе примеры кода и документация.

Проприетарные протоколы, понятное дело, практически не поддерживаются свободным программным обеспечением, хотя на сайте "Мой открытый Bticino" ( My Open Bticino) есть горстка бесплатных утилит для шины SCS, и, по крайней мере, один поставщик - Z-Wave, предоставляет исходный код Linux драйверов для своих изделий.

Как для LonWorks, так и для KNX есть несколько независимых проектов драйверов, большинство из которых поддерживает работу только с вполне конкретными устройствами – в некоторых случаях это изделия совсем не массового использования. Самый полный список приведен на сайте Нейла Черри. Для ONE-NET есть код и документация, но это пока только пробные образцы для оценки совместимости аппаратуры.

Системы полной автоматизации жилья

Для тех, кто хочет все сделать сам и глубоко разбирается в устройствах, создание своего собственного решения на базе драйверов устройств и низкоуровневых средств, перечисленные выше, не всегда является единственным правильным решением; это больше – для удовольствия, чем для создания среды автоматизации дома, использующую технологию plug-and-play. Впрочем, для менее авантюрных, есть проекты, в которых не нужно беспокоиться о скорости передачи в битах и разбираться в исходном коде, Вы можете просто подключить компоненты, которые у вас есть, и сосредоточиться на составлении вашего плана освещения и графика подачи электропитания.

Система MisterHouse является старейшей, но все еще поддерживаемой системой под Linux, предназначенной для полной автоматизации жилья. Она написана, в основном, на языке Perl и ориентируется на устройства X10, поддерживая широкий спектр интерфейсных устройств, через которые осуществляется связь "X10 - компьютер", к числу которых относятся последовательный и инфракрасный порты и подключение по сети. Система MisterHouse имеет голосовой вход, может по расписанию включать электроприборы и освещение, осуществлять мониторинг с записью в файл, выполнять через сеть дистанционное включение устройств. Система имеет стандартный веб интерфейс, однако также поддерживается выдача сообщений на ЖК панель и голосовой вывод.

Благодаря языку Perl система MisterHouse легко наращивается и есть дополнительные модули, позволяющие использовать другие стандарты, в том числе стандарт INSTEON. Кроме управления электроприборами и освещением, в систему MisterHouse интегрированы возможности мониторинга погоды с помощью iButton, функции тревожной кнопки, мониторинга состояния бассейнов и систем полива, мультимедийные средства, возможности использования электронной почты, веб серфинга и рассылки мгновенных сообщений.

Система полной автоматизации жилья Priscilla является более новой системой, в которой реализовано управление устройствами X10 и EIB / KNX. В ней можно использовать последовательные или ИК-соединения, и в ней, в дополнение к поддержке компонент обычного спроса, поддерживаются также программируемые устройства с однопроводным интерфейсом 1-Wire. Команда разработчиков системы Priscilla размещается во Франции и, поэтому, может подключать средства слежения за потреблением электроэнергии, во всех других странах этой возможности нет. Priscilla написана на языке PHP и работает поверх Apache и MySQL.

Pluto является коммерческим предложением, которое работает на Linux и позиционируется на рынке как предложение для строителей и производителей оборудования. Но и домовладельцы могут под LinuxMCE бесплатно использовать открытую версию того же самого исходного кода. Pluto и LinuxMCE поддерживают протоколы X10, INSTEON, EIB / KNX, Z-Wave, а еще - протоколы PLCBUS и EnOcean. Вдобавок к поддержке базовых функций домашней автоматизации, Pluto и LinuxMCE созданы так, что могут использоваться в роли некоторых других систем, таких как охранная система, сервер телефонии, цифровой рекордер и мультимедийный сервер. Эта функциональность построена на основе открытого исходного кода приложениия MythTV.

Система OpenRemote является сравнительно новой, но существуют амбициозные планы по поддержке в ней массы технологий: X10, INSTEON, KNX, ZigBee, а также ИК соединений. OpenRemote является Java-приложением для Tomcat, который работает поверх Apache. В текущей версии не поддерживается многое, что выходит за рамки использования ИК- соединений, но к проекту стоит приглядеться. Опять же, на сайте Нейла Черри приводится исчерпывающий список, но если ни один из проектов, упомянутых выше, не отвечает этому списку, стоит проверить сам список (к моменту выполнения перевода на этом сайте уже была размещена информация о системе OpenRemote – прим.пер.). Новые проекты, такие как Domogik или R-House, использующий Ruby, всегда в развитии.

Подобно любому масштабному проекту, домашняя автоматизация требует вложения времени независимо от того, будете ли Вы все делать сами или воспользуетесь уже готовой системой автоматизации всего жилья. Настройка модулей, создание сценариев освещения и планирование их работы, а затем проверка сделанного расписания – все это потребует времени. Необходимы также инвестиции в аппаратные средства - даже самый простой и дешевый стандарт X10 начинает прибавлять в цене, как только Вы покупаете несколько десятков модулей и контроллеров; INSTEON и другие стандарты могут быть на порядок дороже. Тем не менее, использование драйверов устройств с открытым исходным кодом и систем управления жильем под Linux не столь затратно, как использование проприетарных возможностей, поскольку открытый исходный код, предоставляет пользователю неограниченную свободу при настройке.



Средняя оценка 5 при 1 голосовавших

Комментарии