Во время создания своего варианта системы «Умный дом» (УД) самое главное — правильно подобрать платформу.
В настоящее время разрабатывают такие платформы более ста компаний, а такие именитые гиганты, как «Apple», «Samsung», «Ikea», «Xiaomi» создали свои собственные варианты систем смарт-домов. Среди них имеется несколько довольно хороших и интересных разработок, как с открытым, так и закрытым исходным кодами.
Наилучший вариант решения для открытого исходного кода — смарт-дом на платформе «Home Assistant» (HA). HA приобрела большую популярность, как у спецов, так и у мастеров-самоучек. Она стремительно развивается и может удовлетворить все потребности автоматизации бытовых повседневных вопросов.
HA – платформа для домашней автоматизации, которая обеспечивает решение всех попутных вопросов: добавление гаджетов; создание сценариев различного уровня сложности; использования виртуальных ассистентов; и так далее.
Платформу отличают:
Основной язык программирования платформы — «Пайтон». Но можно сильно не переживать, если вы его не знаете. Ведь для большого количества задач пользователям не надо будет писать собственноручный код, он уже давно написан другими, и есть в открытом доступе.
Разработка смарт-дома на данной платформе включает в себя несколько шагов. Каждый из этих шагов подчеркивает ее основные возможности и преимущества.
HA поддерживает несколько вариантов установки, они представлены в таблице ниже.
Инсталляцию системы можно выполнить на такие гаджеты, как:
№№ | Вариант установки |
---|---|
1 | «Home Assistant Operating System». Инсталлирует HA как операционную систему для применения в вопросах домашней автоматизации. Состоит из: ядра; функционала «Supervisor», который управляет именно ядром; набора плагинов для интеграции гаджетов и обращения к сервисам. Такой вариант на официальном ресурсе прописан, как рекомендованный вариант, который подойдет, как для начала работы, так и для решения задач домашней автоматизации. Главный плюс – простое развертывание системы. |
2 | «Home Assistant Core». Подразумевает ручную установку ядра с помощью виртуальной среды Python. Рекомендована для пользователей с достаточным уровнем опыта. Полный доступ к HA. Требует: небольших познаний об операционной системе; умения работать с языком Пайтон и командной строкой. |
3 | «Home Assistant Supervised». Инсталляция ядра с функционалом «Supervisor» в ручном режиме. Рекомендована для пользователей с достаточным уровнем опыта. При таком варианте установки предоставляется максимально полный контроль над системой. В таком варианте работа возможна только с клонами Линукс, а так же пользователь с данной ОС должен быть на «ты». |
4 | «Home Assistant Container». Инсталляция ядра HA с помощью так называемого механизма контейнеров (как пример – «Docker»). Преимуществами такой инсталляции будут: надежность; быстрое развертывание и перенос на другие гаджеты без особых проблем. Главный минус – необходимы навыки использования «Docker», а это может далеко не каждый рядовой пользователь. |
Важно! Инсталляция возможна в любом из перечисленных выше вариантов. Предпочтительный выбор — работа операционной системы «Home Assistant Operating System» на одноплатных компьютерах. Для инсталляции нужно только развернуть системный образ на флеш-памяти формата MicroSD. Благодаря установленному набору «add-on», гаджет трансформируется в полноценный сервер системы умный дом, а также hub для подключения приборов с различными стандартами. Доступны следующие варианты связи через контакты портов ввода/вывода и такие интерфейсы, как: USB, Ethernet, Bluetooth и Вай-фай. Также, есть наличие возможности через хабы и шлюзы большинства брендов.
Из-за значительно большого количества операций чтения и записи, ресурс карты MicroSD сильно ограничен. MicroSD хватает всего примерно на 180–240 дней работы. Затем карту придется заменить. Чтобы не делать восстановление системы с помощью backup (хотя для этого потребуется не более 60 минут времени), лучше использовать альтернативный вариант — жесткий диск или SSD-накопитель, подключенный через USB-кабель, или сделать ограничение записи протоколируемых в истории событий.
Развернуть систему можно на ПК и серверных компьютерах под управлением:
При этом инсталляция «Home Assistant Operating System» выполняется на виртуальные машины (требуется установка необходимого ПО).
Главное преимущество HA — простая настройка и конфигурирование. Главное отличие Home Assistant от других аналогов — нет необходимости постоянно обращаться к командной строке, чтобы изменить конфигурацию.
Системы сохраняют конфигурацию в файле формата «YAML». Такой тип файлов можно просто редактировать в текстовых редакторах, а внесенные изменения вступают в силу сразу после перезагрузки настроек в web-интерфейсе в пункте «Configuration — General».
При 1-ом запуске платформы система создает файлы конфигурации, производит подгрузку доп. модулей, которые предусмотрены типом инсталляции, разворачивает локальный web-сервис по адресу — http://localhost:8123
В веб-обозревателе при переходе пользователи получают доступ к web-интерфейсу. До перехода пользователями выполняются такие шаги, а именно:
Важно! Такие шаги потребуются только во время 1-го запуска система. При дальнейших запусках пользователи сразу получают доступ к web-интерфейсу.
Чтобы полностью внести базовую информацию, надо ввести следующие переменные:
Основные инструменты для работы через web-интерфейс это:
«LovelaceUI» — полностью настраиваемый инструмент для слежения, если потребуется, за состоянием комплекса в режиме реального времени. Основой для отслеживания состояния системы выступают:
В пользовательской панели можно:
Для информации! Пользователи могут делать изменения с помощью прямого редактирования файлов «YAML», но такой вариант не очень удобен. Но гораздо проще это делать с помощью графического интерфейса.
Для большей части элементов системы не потребуется знание языка программирования Python. К сожалению, полностью исключить ручное кодирование на данный момент не получается. Есть моменты, которые требуют знания языка Python. Но разработчики заверяют нас о том, что в скором времени практически 99% задач будут выполняться в графическом интерфейсе.
Главное преимущество Home Assistant перед другими аналогами — большое количество интеграций. Страница официального сайта (https://www.home-assistant.io/integrations) на данный момент предлагает более 1 700 готовых и одобренных интеграций.
Интеграции включают в себя элементы практически всех компаний, которые выпускают приборы для систем «Умный дом». Здесь есть не только сенсоры и исполнительные устройства, но и маршрутизаторы для подсоединения, в том числе для гаджетов других систем — «Apple», «Samsung», «Ikea», «Xiaomi». В списке имеются, кроме физических устройств, и многие онлайн сервисы. Например, есть возможность отыскать модули для использования VLC плеера, сервиса Яндекс.Транспорт, подключения виртуальных ассистентов Амазон и Гугл, и другие.
Если какой-то компонент отыскать не получилось, то есть решение и для такого случая — зайти в библиотеку исходных кодов «GitHub», найти похожий гаджет, а затем адаптировать его код под свое устройство.
У нас вошло в привычку называть «умными» приборами те, которыми можно управлять лежа на диване. Например, запустить вентилятор, включить кофе-машину или стиральную машинку.
Смарт-колонка Yandex c Алисой хотя и именуется умной, но у вас есть возможность увеличить/уменьшить громкость ее звучания только в том случае, если вы находитесь рядом с ней (кричать через все помещение не рассматривается. Этот метод хотя и действенный, но не вписывается в концепцию умных устройств). У вас не получится перемотать мелодию в мобильном приложении Yandex.
В начале 2020 г. кто-то из пользователей обнаружил, что станция от Yandex может поддерживать один из локальных протоколов. На ГитХаб с этого момента стали появляться варианты управления станции от Яндекс. Чтобы совместить продукт от Яндекс с HA, потребуется всего примерно 2–3 часа. При этом знание языка Python не потребуется.
На сегодняшний день компонент поддерживает управление всеми колонками от Яндекс с Алисой, и при желании может выглядеть так:
По следующей ссылке https://github.com/AlexxIT/YandexStation можно найти полную инструкцию по интеграции Алисы и Home Assistant.
Имея такие наборы интеграций, можно просто добавить любой прибор в систему — нужно только отыскать необходимый элемент среди интеграций и далее четко выполнять инструкцию по его инсталляции.
После выполнения инсталляции, конфигурационный файл будут занесены все необходимые данные о новом устройстве. Так же устройство после этого будет доступно в web-интерфейсе.
Для информации! HA может найти подключенные к системе модули самостоятельно или позволяет пользователю добавить их вручную.
Чтобы получить доступ к модулям существуют следующие наборы:
Чтобы изменять конфигурации, пользователи должны воспользоваться разделом «Developer Tools» (инструмент разработчика).
Не менее просто описываются и автоматизации в платформе.
Для информации! Автоматизация — это набор действий, которые выполняет компонент системы на основании заданных условий.
Любая из автоматизаций состоит из 3 главных элементов:
Для примера, автоматизация — «Активировать климат-систему, если t в комнате понизилась до 15 °C и в ней присутствуют люди». Тогда:
Пользователи выбирают датчики и объекты для триггера и условия, непосредственно в графическом интерфейсе. Итак, большое количество автоматизаций можно задавать и при этом не потребуется писать машинный код.
Важно! Home Assistant дает возможность использования другого эффективного инструмента визуального программирования — «Node RED». Чтобы можно было его использовать, надо сделать установку соответствующей интеграции.
Триггера и условия дают возможность сделать охват всех возможных ситуаций и использовать:
Сущесвует возможность добавления большого количества триггеров и условий, написания скриптов и создания шаблонов.
Если требуется подобрать что-то альтернативное смарт-дому на HA, то рекомендуется обратить внимание на такие варианты.
Хороший вариант, чтобы получить готовое решение с высоким уровнем качества. В Как пример — «Savant» или «Control4». Есть большой недостатки — это масштабируемость и высокая стоимость. Чтобы добавить компоненты или функционал, придется повторно связываться разработчиками.
Аналогичные системы на открытом исходном коде. Например, «OpenHAB» и «Majordomo». У первого есть практически аналогичные возможности и функциональность. Тем не менее, развитие его проходит медленно, поэтому уровень интеграции существенно ниже. Majordomo пока находится на начальном этапе и не входит в число распространенных систем.
Положительные стороны данной платформы были описаны ранее в данной статье. Из недостатков на данный момент можно отметить следующее:
Можно констатировать, что HA — гибкая и универсальная система. Богатая библиотека исходов кодов на ГитХаб дает возможность решать любые задачи по домашней автоматизации. Если потребуется, то всегда можно получить помощь от других пользователей и консультации от производителя.