Интерфейс управления умным домом. Управление с мобильных устройств. Что я задумал

Интерфейс управления умным домом. Управление с мобильных устройств. Что я задумал

На Хабре много статей про проекты умных домов, но почти все они были на самодельном оборудовании и китайских примочках. В своей статье я хотел рассказать о другом подходе, который показывает, насколько легче выполнять проекты, используя готовые решения мировых производителей (и выглядит солидней ), а так же демонстрирует возможность использования оборудования не только в промышленных объектах, но в частной сфере. Получился симбиоз технологий и направлений автоматики. С одной стороны, используя ПЛК, который в основном разработан для нужд промышленности, позволяющий выполнять задачи любой сложности без ограничений жестких алгоритмов готовых устройств умных домов (например, по технологии KNX) с увязкой веб-технологией html/javascript дает неограниченный полет фантазий для расширения проектов.

Текущие затраты - 170 тысяч рублей (по старому курсу евро).

Начнем.

Что я задумал

Управляем освещением и электроснабжением
- В основном управление будет производиться сигналом включить/выключить, диммирование не хочу и не надо;
- Хочу управление с разных мест, например, зашел в спальню - включил люстру, лег на кровать - нажал выключить люстру. Если забыл выключить свет в зале (или в туалете …) нажал кнопку «выключить свет везде». Удобно;
- При выходе из квартиры нажимаю одну кнопку – выключается во всей квартире свет и т.д.;
- Считывать показание с электросчетчика;
- Бесперебойное питание систем управления и безопасности квартиры;
- Без исключений, все группы освещения должны управляться с ПЛК. В случае пожара розеточные группы должны отключаться с ПЛК в автомате - отключать электроснабжения в квартире в экстренных случаях;
- Каждая группа освещения должна приходить в щит и проходить через ближайший выключатель для возможности переделки управления освещения в обычную схему (если продам квартиру, буду все забирать);
- В коридоре предусмотреть датчик движения человека для управления освещением + завязывается в охранную сигнализацию;
- Теплый пол на балконе, в туалете, ванной, в прихожей - с возможностью управления в зависимости от уличной температуры, по времени.

Управляем отоплением и вентиляцией
- Управление отоплением - на каждую батарею устанавливается клапан с приводом (для регулирования температуры покомнатно, для измерения температуры комнаты, необходимо предусмотреть датчики температуры);
- Предусмотреть управление кондиционерами по ИК каналу (текущие решение задачи пока не найдено, выводим витую пару на внутренний блок кондея дальше придумаю);
- Температурные датчики уличной температуры (солнечная и не солнечная сторона);
- В зимний период достаточно часто встречаются две проблемы – это холодно и нечем дышать. Решение установить приточную систему. Далее обеспечить управление приточной системой (температура в канале, уличный датчик температуры, три ступени нагрева, вентилятор);
- Управление вытяжными вентиляторами (сан узел, ванная).

Охрана сигнализация
Сигнализация состояния входной двери (архивация состояния двери – время открытие/ закрытие);
Постановка на охрану через Web интерфейс или через выключатель управления светом.

Видеонаблюдение
Запись с камеры входной двери, уличная место парковки;
Архивация записей на удаленном сервере.

Оборудование

- Так как я привык уже к ПЛК от фирмы ABB, то в качестве мозгов для системы управления квартирой был выбран ПЛК модели AC500-eco (ЦПУ PM554-ETH с поддержкой Ethernet);
- Дальше я уже начал считать деньги и … нужно было выбрать среду отображения информации, с возможностью веб-отображения информации о доме. Существует много вариантов, но в основном все базируется на не кроссплатформенных решениях, что не подходит для меня. Все, что со словами SCADA и WEB, были с запредельным ценником. Пришлось немного попуглить, в результате решено использовать не SCADA систему, а framework с большим функционалом для HTML5. Пришел к CSWorks. Этот фримворк дает возможность бесплатно использовать с ограничением 999 переменных, 1 клиент. Что меня полностью устраивало.
- в качестве выключателей и розеток (орган управления светом) была выбрана фирма JUNG, Serie A . Из плюсов - они могут нести до 4-х кнопок на один кнопочный пост (выключатель без фиксации), так же в них присутствует светодиоды индикации с напряжением 24В (данное напряжение является стандартным промышленное напряжением питания систем автоматики). Данные функции не видел ни у одного из производителей электроустановок (не считая Китая);

Начало работ

1. Способ проводки освещения. Каждая группа приходит напрямую в шкаф электроснабжения. В шкафу стоят контакторы и реле для управления. Катушки реле и контакторов управляются от сигналов ПЛК (DC24V). Для резервирования управления использую контакторы с ручным управлением. Питающий провод сделал проходящий через стаканчик выключателя, чтобы была возможность переделки проводку на обычную схему.

Сам контактор с ручным управлением:

Собран и смонтирован шкаф:

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

Это система управления домом по сценариям. Она позволяет навешивать произвольную логику (сценарии) на различные события в доме (срабатывание датчиков, нажатия кнопок, события от внешних сервисов, например, получнеие email или сообщения в twitter). Система имеет модульную архитектуру, весь функционал находится в плагинах. Если нужно добавить новый тип события или новые команды «домашнего API», нужно просто добавить плагин для этого.

В феврале у нас был первый релиз . Первая версия включала фреймворк для домашней автоматизации: систему плагинов и инфраструктуру для них (чтобы плагины могли описывать свой API и события, а также использовать API и подписываться на события друг друга). Сейчас близится релиз второй версии, основная фича которого - новый веб-интерфейс.

UI теперь - модульное одностраничное приложение . Плагины могут описывать свой UI в виде html/js/css файлов, расположенных в ресурсах DLL. Клиентская часть UI основана на backbone.js и marionette.js , модули загружаются через require.js . В целом получилось довольно удобно для авторов плагинов - даже не имея глубоких знаний java script, можно, смотря в примеры, описать полноценный UI, который будет автоматически подключен в интерфейс управления домом.


Интерфейс управления домом состоит из «разделов», каждый плагин может содержать несколько разделов (а может содержать только один или может вообще не иметь интерфейса). Разделы поделены на 2 группы: системные (различные настройки, например, раздел домашних сценариев) и пользовательские (разделы, с которыми пользователи работают в повседневной жизни, например, «прогноз погоды» и «будильники»).

Также есть специальная страничка - «рабочий стол» (он же «стартовая страничка»). Там находятся «элементы стартовой страницы» - небольшие панели, которые отображают полезную информацию, а при клике на них открывается какая-нибудь страница или выполняется какое-либо действие.

стартовая страничка

раздел с будильниками (в нужное время проиграет музыку или запускает выполнение сценария)

раздел с прогнозом погоды (загружается из интернета)

редактор сценариев (на скриншоте сценарий, который фотографирует посетителей, нажавших кнопку дверного звонка)

страничка подписки на события: первый выпадающий список - события в системе (они описаны в плагинах), второй список - сценарии

Интерфейс адаптируется под маленькие экраны мобильных устройств.

стартовая страничка на маленьком экране

страничка с погодой на маленьком экране

Сейчас, как я уже писал, система быстро приближается к релизу 2-й версии, исходный код лежит на github . Пока еще есть возможность что-то поменять. Очень хотелось бы получить конструктивную критику и предложения по улучшению (а если кто-то пришлет pull request, я буду просто счастлив).

Если кто-то захочет попробовать вживую, как все работает, напишите мне личное сообщение - соберу для вас свежий дистрибутив.

PS.
Кстати, я пробовал работать над этим проектом каждый день и это дало удивительные результаты. Сейчас идет 8-ая неделя работы в таком режиме (Longest streak 49 days). За это время проект продвинулся вперед больше, чем за предыдущие пол года. Я очень доволен результатом и планирую продолжать работать в таком режиме, сколько это будет возможно.

Сервер умного дома – это «мозг» системы управления. Он реализует и поддерживает работу всей сети. Генерирует и посылает необходимые сигналы на контроллеры, которые отвечают за управление датчиками, сигнализацией, климат-контролем, прочими функциями и режимами, заложенными в программное обеспечение.

Виды сервера

Управление умного дома осуществляется с сервера. Он может быть централизованным (стационарным) и децентрализованным (может работать удаленно).

Основные требования к серверу:

  • Стабильная работа.
  • Обязательное резервирования данных.
  • Контроль версий ПО.
  • Возможность обновления и доработки функционала.
  • Быстрая наладка в случае сбоя.

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

Сервер и web-сервер умного дома среднего объекта

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

Платформа Raspberry Pi 2 для построения веб-сервера умного дома

Web сервер для умного дома — это микро, планшетный компьютер или смартфон. Платформой для него может быть любое устройство с большим объёмом оперативной памяти (Raspberry Pi 2 или Raspberry Pi 3, AC500-eco, Arduino), мощным процессором и возможностью выхода в сеть Интернет. Web сервер в составе системы умный дом обеспечивает визуализацию управления через браузер.

Веб сервер для умного дома работает по простому принципу. Мобильное устройство выступает в качестве основного ядра, дистанционно отправляющего командные сигналы. Программное обеспечение, которое можно купить или прописать самостоятельно, превращает Android, Linux или Windows устройства в диспетчерскую станцию, взаимодействующую с контроллерами по wifi. Преимущества блока web умный дом в том, что можно не только управлять системами в доме, но и производить любые операции извне. Также возможна настройка на расстоянии и хранение данных на облаке.

Интерфейс управления умным домом

Функционирование системы невозможно без интерфейса (универсального средства управления). Принцип его работы базируется на возможности выхода в интернет, то есть это программная платформа, позволяющая комплексно управлять всеми домашними автоматизированными системами. Также интерфейс умного дома обеспечивает информационное взаимодействие и поддержку рабочего состояния. Такая система совместима с любым ПК или смартфоном с различными платформами.

Интерфейс умного дома создается для каждого пользователя индивидуально

В современной системе умный дом web интерфейс делают модульной архитектуры, построен на PHP, CSS и JavaScript. ПО прописано в плагинах UI как html или css, расположенных в ресурсах DLL. Их можно добавлять или менять по своему усмотрению. Примерная структура интерфейса выглядит так:

  • Стартовая страница на рабочем столе. На ней в виде значков отображаются все элементы управления.
  • Плагины содержат разделы, подразделяющиеся на системные (для работы с настройками) и пользовательские (для непосредственного управления функциями).

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

Как сделать сервер для умного дома

Самостоятельно сделать сервер достаточно просто. В корпус неиспользуемого компьютера (желательно брать модель от 2006 года выпуска) монтируется в порядке очередности:

  • блок электропитания;
  • кулер с пониженным производством шума;
  • материнская плата с современным процессором;
  • оперативная память, соответствующая требованиям процессора;
  • несколько жестких дисков (желательно NAS-систему) и контроллер sata;
  • сетевая карта с поддержкой host режима;
  • модуль wifi.

Комплектация может видоизменяться в зависимости от требований. Далее следует настройка сервера с использованием полнофункциональных сервисов (подойдет система Linux) и установка программного обеспечения.

Самостоятельная сборка сервера для умного дома под названием AVRobot

Для того, чтобы сделать веб сервер для умного дома, достаточно установить в ПК или смартфон соответствующее программное обеспечение, взаимодействующее с управляемыми системами (датчиками, отвечающими за работу климат контроля, включения света и т. д.).

Система B-Tune® работает под управлением контроллера BT-4000/6000, который представляет собой мини WEB сервер, контролируемый через браузер мобильного телефона, компьютера, планшета типа iPad или нетбука. BT-4000/6000 в разных модификациях может работать сетях: Ethernet, GSM, ADSL и WiMax (через USB модемы), что позволяет оптимизировать расходы на связь.

К BT-4000/6000 можно подключить счетчики энергии, проводные и беспроводные датчики, кондиционеры, бытовые приборы..., контролировать их и управлять ими.

Контроллер работает под управлением ОС Linux, что позволяет использовать огромное количество программ и протоколов. В частности, возможна организация связи без необходимости выделения для каждого абонента фиксированного IP адреса. Также есть возможность применения данного решения для: домового учета ресурсов (АСКУЭ), учета рабочего времени сотрудников, наблюдения за погодой, и т.п.

Решения на базе BT-4000/6000 являются полнофункциональными системами «Умный дом», позволяющими контролировать и управлять всеми параметрами домовладения с использованием удобного и понятного графического интерфейса. Управление может производиться как изнутри дома (обычно через внутреннюю WiFi сеть), так и извне - через Интернет, с использованием сервера оператора связи. При этом цена базового абонентского комплекта Системы не превысит стоимость бюджетной GSM сигнализации.

Локальное управление домом (изнутри дома)

На рис. 1 показан план типовой квартиры, в которой установлена система B‑Tune®. Для обеспечения функций охраны: на части дверей установлены датчики открытия, а также инфракрасные датчики, контролирующие движение в коридоре и гостиной. Для защиты от протечек в ванной и туалете установлены датчики протечки воды. На кухне установлен датчик задымления. Для дистанционного контроля за квартирой в коридоре и детской устанавливаются видео-камеры, «картинка» с которых может передаваться на компьютер или КПК владельца квартиры, подключенного к Интернет любым способом. Для контроля температуры внутри и снаружи помещений используются датчики температуры.

В электрощите устанавливается тревожная сирена, блок управляемых реле для дистанционного включения и выключения нагрузок и счетчик электроэнергии. Эти устройства подключаются к контроллеру Системы. Владелец квартиры может постоянно контролировать суммарное и текущее потребление энергии. Например, владелец квартиры может легко проверить не оставил ли он включенным утюг на гладильной доске: это так, если потребление (данные с электро-счетчика) составляет 1-2кВт. Однако, если соответствующая группа розеток заведена на управляемое реле, то оставленный утюг можно обесточить, выключив реле. В зоне входной двери, вне прямой видимости, также устанавливается контрольная панель iButton® для постановки и снятия квартиры на охрану.

Система, установленная в типовой квартире

Находясь внутри дома, абонент со своего компьютера, КПК, ноутбука или планшета, с использованием WEB браузера, сможет:

  • Управлять светом
  • Управлять открыванием штор и жалюзи
  • Контролировать состояние датчиков (температуры, влажности, дыма, переменного напряжения, движения и т.п.)
  • Управлять кондиционерами, ТВ и аудио техникой
  • Просматривать «картинки» с видео-камер
  • Пользоваться услугами телемедицины удаленного медицинского центра (при наличии дополнительного оборудования)

Перед использованием абонент локально (из квартиры) должен настроить Систему через Ethernet сеть с использованием WEB браузера. Работа через графический и простой интерфейс напоминает игру с современными «гаджетами», а для настройки не надо вчитываться в описание и отправлять «SMS шифровки». Для настройки потребуется подключить компьютер к контроллеру напрямую, либо через Ethernet концентратор. При наличии внешнего Wi-Fi маршрутизатора возможна настройка контроллера с мобильного телефона, PDA, планшетного компьютера или ноутбука. (Для корректной работы на управляющем устройстве должен быть установлен современный браузер, поддерживающий технологию WEB 2.0).

Настройка состоит из следующих шагов, которые абонент сможет выполнить самостоятельно:

  • Нарисовать и загрузить план дома (опционально)
  • Подключить датчики (тип некоторых датчиков определяться контроллером автоматически)
  • Расставить датчики на плане
  • Задать параметры, по которым контроллер должен рассылать тревожные сообщения (SMS, Call …) или выполнять определенные действия (включить свет, закрыть шторы …)

Удаленное управление из любой точки Internet через «Личный кабинет» оператора

Для удаленного доступа к контроллеру используется выделенный Internet сервер (далее Сервер) на стороне оператора связи, имеющий символьное имя и статический IP адрес.

Контроллер, подключившись к Internet любым способом, автоматически открывает защищенное VPN соединение с Сервером. Сервер периодически проверяет доступность контроллера и информировать абонента в случае пропадания связи с ним (E-Mail, SMS, Call).

Для связи с контроллером абонент, подключенный к Internet, должен будет соединиться с Сервером и ввести свои данные для входа в «личный кабинет» оператора связи. Сервер аутентифицирует Абонента и проверяет открыт ли канал связи с его Контроллером. Если канал связи открыт, то Сервер производит пересылку данных между абонентом и Контроллером. Через интерфейс «личного кабинета» абоненту доступны:

  • WEB интерфейс управления «Умным домом», аналогичный локальному интерфейсу
  • Журнал событий
  • Графики изменения значений температуры, влажности и т.п.
  • Программирование событий, при которых сервер должен отправлять SMS/Mail/Skype/ICQ сообщения
  • Фотографии или видео, сделанные контроллером и переданные на сервер

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

Мониторинг и групповое управление с использованием «группового кабинета» оператора

Стоит отдельно отметить, что Сервер можно использовать для организации систем мониторинга за коттеджными поселками и многоквартирными домами. В этом случае для диспетчера/оператора группы потребуется «групповой кабинет», через который доступны:

  • База данных с показаниями значений счетчиков энергоресурсов.
  • База данных определенных событий на стороне абонента (например, вскрытие счетчика или открывание двери в режиме охраны)
  • Графическая карта - с привязкой контроллеров к географическому расположению объектов (рабочее место диспетчера).
  • Групповая смена ПО на устройствах
  • Дополнительные функции. Например, функция live-контроля потребления электроэнергии: каждые 15 минут сумма показаний со всех квартирных счетчиков сравнивается с показанием домового (суммарного) счетчика. При детектировании расхождения, большего заданного порога выдается сигнал на обследование участка на предмет несанкционированного отбора электричества.

Также на Сервере предусмотрена функция интеграции (API интерфейс) со службами третьих компаний. Например, провайдеров телемедицины, охранными агентствами и т.п.

В основе качественного интерфейса «Умного дома» всегда лежит мощная программная платформа. На этой базе интегратор создает визуализацию для конкретного проекта. Первое – инструмент, второе - продукт, который с его помощью создается (так же, как программа Автокад и чертеж, текстовый редактор и текст).

Есть два подхода к выбору платформы: 1. использование «родного» ПО, которое предоставляет производитель комплектующих, и 2. внедрение программного продукта независимого разработчика.

Родное приложение

Как мы упоминали в статье про , существует множество протоколов домашней автоматизации и еще больше производителей оборудования. Такие компании как Crestron, AMX, Vantage, RTI, HDL, ABB, Gira, Jung, Schneider-Electric, Vimar предлагают решения для мобильных устройств в комплекте с сенсорными управляющими панелями или со специализированными серверами визуализации.

  • Лицензия на ПО отдельно не покупается, но сама сенсорная панель или сервер стоит достаточно дорого.
  • Графика и структура такого интерфейса создается разработчиками. Однако это накладывает определенные ограничения: адаптация под конкретный проект возможна только в жестко заданных рамках.
  • Редакторы достаточно просты в использовании, и программисту с ними удобно работать.
  • Доступны интересные фирменные плагины (часы и будильник, предустановленные сценарии).
  • Функционал предопределен и нет возможности решать специфические задачи.
  • Совместимо только с тем стандартом автоматизации, для которого предназначено оборудование.
  • Интеграция с прочим оборудованием возможна только, если это заложено производителем. Так, например, с популярными аудио-системами Sonos совместимы практически все приложения, а вот подключить к ним, например, не получится.

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

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

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

Стороннее приложение

Существует несколько программных комплексов, предназначенных для управления «Умным домом» с мобильных устройств. На наш взгляд, наиболее интересными являются iRidium и Evika. Они предоставляют сходные возможности, мы чаще используем iRidium, поэтому расскажем о нем.

Комплекс iRidium позиционируется как операционная система для умного дома, чем фактически и является. Он используется для объектов частного, коммерческого, промышленного назначения.

  • Для использования Иридиума в проекте необходимо приобрести лицензию у разработчика. Существует несколько типов лицензий, которые различаются числом подключаемых мобильных устройств и списком совместимого оборудования.
  • Приложение совместимо со всеми основными протоколами автоматизации, может управлять одновременно несколькими физически не связанными подсистемами. Для пользователя все управление при этом происходит из одного интерфейса.
  • Графическая часть очень гибко настраивается. Можно использовать типовые или индивидуально разработанные шаблоны, реализовать любую структуру и любые пожелания заказчика.
  • Может быть установлено на любые устройства, дополнительное оборудование (сервер или процессор) не требуется.
  • Настройка и прорисовка интерфейса – достаточно трудоемкий процесс.

Мы предпочитаем второй вариант, если

  • в качестве настенных сенсорных панелей используется iPad в рамке ;
  • система составная и нужно в один интерфейс включить управление разным оборудованием;
  • хочется персонализированный и подходящий именно для вашего проекта дизайн;
  • необходимо интегрировать автоматизацию со сторонним ПО, к примеру,


просмотров