Введение
Термин «Умный дом» охватывает огромное количество подключенных к Интернету устройств, систем и приложений и несет в себе разнообразные варианты использования. Под «Умным домом» следует понимать систему, которая должна уметь распознавать конкретные ситуации, происходящие в здании, и соответствующим образом на них реагировать (например, система может управлять отоплением, вентиляцией, включением света, а также выполнять функции сигнализации о несанкционированном проникновении в дом).
На фоне стремительно растущего количества умных устройств Интернета вещей (IoT) появляются различные, конкурирующие между собой IoT-платформы. Потребителю легко запутаться в этом разнообразии.
Существует множество организаций, которые предлагают услуги по проектированию и реализации системы «Умный дом». Стоимость таких проектов достаточно высока. В данной работе сделан анализ некоторых IoT-платформ и представлен стартовый проект для системы «Умный дом», который выполнен своими руками, что сокращает стоимость проекта.
Цель работы: Разработка проекта с использованием Open Source для IoT, в котором реализован мониторинг параметров температуры, управление освещением, отслеживается движение объектов и контролируется несанкционированный доступ в помещение.
Для достижения этой цели были поставлены следующие задачи:
сделать сравнительный анализ OpenSourсe для Iot и выбрать платформу;
предложить архитектуру создаваемого проекта;
разработать интерфейс приложения и предложить варианты возможного развития созданного проекта в различных областях человеческой деятельности.
Проектирование системы
В данном стартовом проекте необходимо реализовать следующий функционал:
Управление освещением (гараж и дом);
Контроль температуры (гараж и дом);
Мониторинг движения в гараже;
Контроль несанкционированного доступа в помещение;
Доступ в помещение по датчику касания;
Активирование звуковой сигнализации при обнаружении движения в гараже (если активирован параметр «Сигнализация» в подменю «Сигнализация»).
Главное в системе - это центр управления. Наиболее часто в качестве движка выбирают Raspberry PI, а также используют связка Raspberry PI + Arduino.
Raspberry Pi — это микрокомпьютер, размером с банковскую карту.
В качестве альтернативыArduino выступает микроконтроллер Intel Edison, т.к он превосходит по характеристикам Arduino, а так же имеет встроенный модуль WI-FI.
Архитектура системы должна быть достаточно гибкой, чтобы можно было быстро редактировать систему, добавлять новые датчики или менять старые.
Так же важно обдумать, как пользователь будет подключаться из любой точки, используя Wi-Fi или мобильную передачу данных. Наиболее надежным считается поднятие VPN сервера на Raspberry Pi. Но также можно и открыть порты на роутере.
Еще важно определить, будет ли использоваться какой- либо движок для системы. В настоящий момент существует много движков, которые можно легко настроить и при этом система будет почти готова. При этом надо будет настроить только логику управления устройствами, используя языки программирования, которые поддерживает движок (Выбор платформы будет описан в следующем разделе).
Архитектура созданного проекта представлена на Рисунке 1.
Рисунок 1 – Архитектура проекта
Сравнительный анализ OpenSourсe для Iot и выбор платформы
Для выбора платформы необходимо было провести анализ OpenSourсe для Iot. Критерии, которые учитывались при анализе, представлены в Таблице 1.
Таблица 1 – Сравнительный анализ
Критерии/Платформа |
OpenHab[1] |
MisterHouse[4] |
Calaos[2] |
Domoticz[3] |
HomeAssistant[1] |
ЯП |
Свой язык для: 1)Разметки для разметки 2)Инициализации 3)Правил (логики) + Python(HTTP, MQTT) |
PERL |
Lua |
Lua Perl Python |
Python |
Документация |
Присутствует, в большом количестве и с примерами |
В небольшом количестве |
Присутствует на github, но не в большом количестве |
На github, в малом количестве |
Присутствует на сайте |
Взаимодействие с NODE-RED |
Одна из популярных связок |
Дополнительное подключение библиотек |
Не распространено, но возможно при установки доп программ |
Возможно |
Возможно |
Поддерживаемые протоколы |
Более 50 штук |
Основан на фреймворке Very Simple Control Protocoles |
Основан на http запросах |
Наиболее популярные и часто встречаемые |
Основные |
Надежность при высоких нагрузках |
Для дома и предприятий |
Для дома |
Для дома |
Для дома |
Для дома |
Критерии/Платформа |
OpenHab |
MisterHouse |
Calaos |
Domoticz |
Home Assistant |
Простота настройки |
Установка двумя командами и готово к работе |
Отдельная инструкция, с набором команд |
визуальный интерфейс |
Несколько команд из туториала |
|
Подключение дополнительных мк (для связи комнат) |
Возможно |
Возможно |
Возможно |
Возможно |
Возможно |
Скачивание приложения для мобильного телефона |
Не обязательно, хотя приложение существует |
Отсутствует приложение, веб интерфейс не доработан |
Веб интерфейс для телефонов, планшетов |
Браузер |
Браузер |
По всем критериям нам подошла система OpenHab.
OpenHAB переводитсякак "Open Home Automation Bus". Он нацелен на создание универсальной платформы для объединения всей домашней «умной» техники в единую систему управления.
Интерфейс созданного приложения
Н
а рисунках 2 и 3 можно увидеть, как реализован функционал системы через WEB интерфейс.
Р исунок 2 — Главный интерфейс WEB-приложения системы
Рисунок 3 — Отображение подменю «Сигнализация»
Рисунок 4 — Отображение меню системы для управление домом
Рисунок 5 — Отображение меню системы для управления гаражом
Созданный интерфейс должен быть простым и понятным. В главном меню(вверху) расположились дата и время. Дальше идут две группы предметов: «Дом» и «Гараж». В группе «Дом» находятся предметы, с помощью которых можно управлять и получать данные с датчиков, «Температура» отображает данные с датчика температуры, «Дверь» отображает состояние двери в доме(открыта/закрыта), «Свет» - управление диодом, который имитирует включение/выключение света. В группе «Гараж» находятся не только такие предметы, как в доме(«Температура», «Дверь», «Свет»), но и добавлены новые. «Движение» отвечает за мониторинг движения в гараже, подменю «Сигнализация», в котором можно управлять звуковым оповещением при обнаружении движения в гараже.
Стоимость макета системы
Было замечено ранее, что фирмы, предоставляющие услуги по реализации проектов «Умный дом», выставляют достаточно высокую итоговую стоимость проекта. В Таблице 2 представлена стоимость созданного проекта.
Таблица 2 – Стоимость проекта
Компонент системы |
Стоимость |
RaspberryPi 1шт. |
2800руб |
Intel Edison 2шт. |
5800руб за шт |
Датчик движения |
45руб |
Пъезо-пищалка |
32руб |
Датчик касания |
27руб |
Датчик температуры |
38руб |
Набор проводов |
174руб |
ИТОГО |
14 716руб |
Заключение
В данной работе предложена архитектура стартового проекта для системы «Умный дом», сделан анализ платформ Интернета вещей, реализован интерфейс, позволяющий осуществлять мониторинг температуры в помещении, а также контроль доступа в помещение. Данный проект уже сейчас может быть использован как система безопасности жилища, т.к. хозяин оперативно получает информацию о вторжении в дом на свое мобильное устройство. Следующим этапом планируется расширить функционал системы следующим образом: дополнить функцию управления освещением еще и функцией управления отоплением для выращивания домашних питомцев, разведения редких растений; также добавить функцию кормления питомцев в автоматическом режиме ; использовать мониторинг температуры в помещении для управление вентиляторами и подогревом пола.
Исследование материалов, описывающих различные платформы, анализ затрат времени на реализацию этого проекта, стоимость проекта позволяют сделать вывод, что системы с открытой программной архитектурой, в частности OpenHAB, являются удобным и доступным средством создания проектов для системы «Умный дом».
СПИСОКЛИТЕРАТУРЫ
1 6 open source home automation tools, URL: https://opensource.com/life/17/12/home-automation-tools
2 Calaos. Open source home automation, URL: https://www.calaos.fr/en/
3 Domoticz .Control at your thinger tips, URL: http://www.domoticz.com/
4 MisterHouse - It Knows Kung-Fu, URL: ttp://misterhouse.sourceforge.net/
ПРИЛОЖЕНИЕ 1
Система в работе
Рисунок 6 — фотография собранного макета
На рисунке 6 с левой стороны находится плата, которая имитирует управление домом. С правой стороны расположена плата, которая имитирует управление гаражом. В центре, главный мозг системы — RaspberryPI, именно на «Малинке» запущена система OpenHab.
ПРИЛОЖЕНИЕ 2
Код программы
Исходный код макета системы «Умная дача» выложен как Open-Source проект на github.
dchudik/smart-dacha, URL: https://github.com/dchudik/smart-dacha