Примеры применения
01.04.2021

Интеграция устройств NetPing в систему умного дома Home Assistant

Интеграция устройств NetPing в систему умного дома Home Assistant

Интеграция Home Assistant с NetPing достаточно простая и интуитивно понятная задача, но имеющая особенности, о которых мы сегодня расскажем в этой статье. Home Assistant — одна из наиболее востребованных сейчас платформ для построения системы «умный дом». Она имеет хорошую документацию и обширное комьюнити пользователей.

[Читать далее]

Начать работу с этой системой проще простого. Для примера возьмем популярный одноплатный компьютер Raspberry Pi версии 3 или 4. Для них Home Assistant распространяется в виде образов, пригодных для записи на MicroSD-карту.

Актуальные ссылки на образы для «малинки» всегда доступны на сайте проекта. Есть два основных способа записи: с помощью штатной утилиты dd в ОС Linux или при помощи стороннего ПО BalenaEtcher, которое существует для всех популярных ОС.

Запись образа Home Assistant

При помощи dd

Скачиваем архив. В нашем примере мы будем использовать 32-битную версию для RPI 3.

wget https://github.com/home-assistant/operating-system/releases/download/5.12/hassos_rpi3-5.12.img.xz

Для того чтобы записать образ на MicroSD-карту, следует предварительно его распаковать командой:

unxz hassos_rpi3-5.12.img.xz

Далее записываем образ:

dd if=hassos_rpi3-5.12.img of=/dev/mmcblk0 bs=1M

Спустя некоторое время образ будет записан. Чтобы убедиться в окончании процесса записи, выполните команду sync для синхронизации дисков, и затем MicroSD-карту можно будет поместить в «малинку».

При помощи BalenaEtcher

Скачиваем, распаковываем и запускаем утилиту. В нашем примере используется ОС OpenSUSE Tumbleweed:

wget https://github.com/balena-io/etcher/releases/download/v1.5.116/balena-etcher-electron-1.5.116-linux-x64.zip

unzip balena-etcher-electron-1.5.116-linux-x64.zip

chmod +x balenaEtcher-1.5.116-x64.AppImage

./balenaEtcher-1.5.116-x64.AppImage

Запущенная утилита умеет работать напрямую с xz-архивами. Поэтому в открывшемся окне нажимаем кнопку Flash from file и указываем наш архив hassos_rpi3-5.12.img.xz

Рис. 1 Выбор источника установки

Рисунок 1. Выбор источника установки

Затем нажимаем кнопку Select target и выбираем целевое устройство /dev/mmcblk0

Рис. 2 Источник установки выбран

Рисунок 2. Источник установки выбран

Ставим галочку напротив устройства и нажимаем кнопку Select:

Рис. 3. Выбор целевого устройства

Рисунок 3. Выбор целевого устройства

Теперь останется только начать запись нажатием кнопки Flash!:

Рис. 4. Запуск процесса записи

Рисунок 4. Запуск процесса записи

Утилита самостоятельно распакует архив и запишет его на карту памяти.

Первый запуск Home Assistant

Вставляем карту памяти в «малинку». Подключаем сетевой кабель Ethernet и подаем питание. Процесс первого запуска может занять до 20 минут. Все дело в том, что записанный образ активно использует технологию контейнеризации через Docker, так что при первом запуске вначале готовится среда исполнения и только потом внутри нее запускается приложение. Проявите терпение, даже если создается впечатление, что система зависла.

Этот процесс можно контролировать, введя в адресную строку браузера http://homeassistant.local:8123/

Рис. 5. Процесс первого запуска

Рисунок 5. Процесс первого запуска

После завершения всех необходимых процедур страница автоматически будет обновлена и система попросит ввести некоторые первоначальные параметры:

Рис. 6. Задаем имя пользователя и пароль

Рисунок 6. Задаем имя пользователя и пароль

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

Рис. 7. Главное окно веб-интерфейса Home Assistant

Рисунок 7. Главное окно веб-интерфейса Home Assistant

Установка файлового менеджера

Чтобы эффективно управлять файлами конфигурации, советуем установить одно простое дополнение Home Assistant под названием File editor. Это позволит нам редактировать файлы конфигурации прямо из веб-интерфейса, не прибегая к сторонним способам подключения, таким как SSH.

Переходим по адресу Магазина дополнений и выбираем официальное дополнение File editor. Нажимаем кнопку Установить, и спустя несколько секунд дополнение будет установлено. Запускаем дополнение и удобства ради ставим галочки на пунктах Запускать при загрузке и Показывать на боковой панели.

Рисунок 8. Настройка Home Assistant: дополнение File editor установлено

Добавление NetPing в конфигурацию

Проще всего управлять устройствами NetPing, используя протокол SNMP. Это очень простой, но крайне эффективный способ использовать возможности устройства по максимуму. В Home Assistant добавление сущностей устройств с управлением по SNMP можно произвести из глобального файла конфигурации /config/configuration.yaml

Переходим в дополнение File editor и открываем указанный файл конфигурации. Если никакие другие сущности после установки не добавлялись, то он будет иметь следующее содержимое:

# Configure a default setup of Home Assistant (frontend, api, etc)

default_config:

# Text to speech

tts:

  - platform: google_translate

group: !include groups.yaml

automation: !include automations.yaml

script: !include scripts.yaml

scene: !include scenes.yaml

Обратите внимание, что это YAML и символы табуляции тут недопустимы, а структура формируется отступами из пробелов. Советуем перед сохранением YAML-файлов использовать онлайн-сервис YAML Validator по проверке синтаксиса.

Для примера возьмем IP PDU NetPing 2/PWR-220 v13/GSM3G c двумя независимыми управляемыми розетками электропитания. Научимся контролировать включение и выключение розеток, для чего добавим в файл конфигурации /config/configuration.yaml следующие строки:

# NETPING SNMP CONFIG:

switch:

  - platform: snmp

    name: One

    host: 192.168.1.125

    baseoid: .1.3.6.1.4.1.25728.5800.3.1.3.1

    community: SWITCH

    payload_on: 1

    payload_off: 0

 

  - platform: snmp

    name: Two

    host: 192.168.1.125

    baseoid: .1.3.6.1.4.1.25728.5800.3.1.3.2

    community: SWITCH

    payload_on: 1

    payload_off: 0

Тут следует немного пояснить, какой элемент что обозначает:

  • switch — тип устройства, который является по факту выключателем (либо на розетке будет напряжение, либо нет);
  • - platform: snmp — указываем, что будем использовать SNMP для управления;
  • name: One — задаем имя для первой розетки;
  • host: 192.168.1.125 — IP-адрес устройства NetPing;
  • baseoid: .1.3.6.1.4.1.25728.5800.3.1.3.1 — OID функции ручного управления питанием порта номер 1 (детальную информацию по всем OID можно получить на сайте NetPing);
  • community: SWITCH — комьюнити чтения и записи (можно посмотреть в настройках устройства NetPing);
  • payload_on: 1 — значение для включенного состояния;
  • payload_off: 0 — значение для выключенного состояния.

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

Управление розетками NetPing в веб-интерфейсе Home Assistant

Рисунок 9. Управление розетками NetPing в веб-интерфейсе Home Assistant

Что особенно здорово — у Home Assistant есть приложения как для Android, так и для iOS, причем не требуется как-то отдельно проектировать интерфейс. Добавив объект в систему, мы сразу получаем к нему доступ из мобильного приложения:

Мобильное приложение для Android

Рисунок 10. Мобильное приложение для Android

Настройка интеграции с Google Home

Чтобы реализовать облачное управление устройствами, добавленными в Home Assistant, потребуется сделать несколько дополнительных настроек. Интеграция выполняется с помощью стороннего сервиса Nabu Casa (Home Assistant Cloud). Это платный сервис ($5 в месяц), выполняющий роль безопасного посредника между серверами Google и вашего умного дома на базе Home Assistant.

Его преимущество в том, что это позволяет не выставлять умный дом в интернет, а следовательно, не подвергать его риску вероятного взлома.

Переходим в веб-интерфейс Home Assistant и выбираем в меню НастройкиHome Assistant Cloud.

Меню настройки Home Assistant Cloud

Рисунок 11. Меню настройки Home Assistant Cloud

Сервис Nabu Casa позволяет 1 месяц использовать свои серверы бесплатно. Для этого оформляется пробный период. Выбираем соответствующий пункт:

Оформление бесплатного пробного периода в Nabu Casa

Рисунок 12. Оформление бесплатного пробного периода в Nabu Casa

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

Регистрация нового аккаунта

Рисунок 13. Регистрация нового аккаунта

Теперь следует проверить электронный почтовый ящик, там уже должно быть письмо от Nabu Casa с просьбой о подтверждении адреса. Нажимаем на ссылку Confirm Email:

Подтверждение адреса электронной почты

Рисунок 14. Подтверждение адреса электронной почты

Спустя пару секунд произойдет переход на веб-страницу с положительным результатом подтверждения адреса:

Аккаунт подтвержден

Рисунок 15. Аккаунт подтвержден

Возвращаемся в НастройкиHome Assistant Cloud. Вводим указанные при регистрации аккаунта логин и пароль и нажимаем кнопку Авторизация:

Авторизация в облачном сервисе

Рисунок 16. Авторизация в облачном сервисе

Спустя несколько секунд начнется процесс создания связи между Home Assistant и облаком:

Автоматическая подготовка системы удаленного доступа

Рисунок 17. Автоматическая подготовка системы удаленного доступа

Здесь также следует проявить немного терпения и подождать (иногда пару минут). После завершения процесса мы получим подтверждение о том, что теперь у нас есть адрес удаленного доступа и можно выполнить интеграцию с Google Home:

Адрес для подключения к умному дому через Nabu Casa

Рисунок 18. Адрес для подключения к умному дому через Nabu Casa

Пролистываем вниз и активируем переключатели для Google Assistant. Затем нажимаем на ссылку Активировать навык Home Assistant для Google Assistant.

Активация Google Assistant

Рисунок 19. Активация Google Assistant

В открывшемся окне нажимаем кнопку Send to device и выбираем нужное устройство из экосистемы Google. У нас в примере используется умная колонка Google Home Mini c именем «Главная спальня» и телефон на базе Android.

Отправка навыка на устройство

Рисунок 20. Отправка навыка на устройство

Теперь все объекты, создаваемые в Home Assistant, автоматически будут добавляться Google Home, что позволит централизованно ими управлять даже без оригинального приложения Home Assistant. Теперь добавим «вишенку на тортик» и научим голосового помощника Google переключать наши розетки на устройстве NetPing. Вновь открываем /config/configuration.yaml через File editor и добавляем следующие строки:

cloud:

  google_actions:

    entity_config:

      switch.one:

        aliases:

          - Port One

          - First Port

        room: living room

      switch.two:

        aliases:

          - Port Two

          - Second Port

        room: living room

Точно так же сохраняемся и перезагружаем Home Assistant (НастройкиСерверПерезапустить).

Теперь командуем колонке Google Home Mini:

Hey Google! Turn Port One On!

или

OK Google! Turn First Port On!

Раздается тихий щелчок реле, и розетка питания номер 1 на NetPing активируется. Мобильное приложение Google Home также отражает текущий статус розетки:

Розетка 1 включена

Рисунок 21. Розетка 1 включена

Несложно понять, что в YAML-файле мы прописали алиасы (альтернативные имена) для каждого из объектов. Эти алиасы будут помогать формировать голосовые команды для Google Assistant. Параметр room: living room позволяет переместить объекты в отдельную «комнату» с именем living room умного дома Google.

Заключение

Мы показали лишь самый очевидный способ использования устройства NetPing в экосистемах Home Assistant и Google Home. Разумеется, возможности интеграции этих устройств значительно выше.

Точно таким же способом можно считывать показания с датчиков, контролировать устройство целиком и полностью через удобный веб-интерфейс Home Assistant или устройства на базе операционных систем Android и iOS. По факту управлять умным домом можно хоть с автомобильной магнитолы, лишь бы на ней был Android более-менее актуальной версии.




  • Все устройства

Основные теги


Каталог устойств мониторинг серверных комнат и шкафов
Все устройства
Устройство UniPing v3
Устройство UniPing server solution v3/SMS
Устройство NetPing 2/PWR-220 v1/SMS
Устройство NetPing IO v2
Устройства NetPing
Каталог датчиков для устройств NetPing
Устройство NetPing 8/PWR-220 v3/SMS
Устройство NetPing 2/PWR-220 v3/ETH
Устройство NetPing 2/PWR-220 v2/SMS
Устройство NetPing 4/PWR-220 v3/SMS
Устройство NetPing SMS
Устройство NetPing /PWR-220 v3/ETH
Адаптер WiFi VAP11N
Коммутатор PS104GT
Устройство NetPing Mini-UPS
Коммутатор NP-SM4
Сплиттер POE 12В (стандарта 802.3af)
IRC-TR v2 (ИК модуль расширения)
Каталог устройств удалённого управления и распределения электропитания NetPing
Устройство UniPing server solution
Устройство UniPing server solution v3
Датчик разбития стекла (Стекло-3 ИО 329-4), 2м
Переходник для NetPing IO v2
Блок питания 48В 1,5А (мод.HRS20005)
Датчик температуры TS, 1м
Датчик температуры, (T811), 2м
Датчик температуры WT, 1м
Датчик протечки, модель 2605, 2м
Датчик протечки H2О
Датчик температуры 1-wire, (THS), 2м
МАЯК-12-СТ
Датчик движения (PYRONIX COLT QUAD PI ПИК детектор), 2м
Датчик движения (SWAN-QUAD ИК детектор квадросенсор), (2м)
BM8070D Силовое реле 16А/250В на DIN-рейку
MP701 Исполнительный элемент (4 независимых канала по 2 кВт 10А)
Датчик дыма комбинированный (дым/тепло) ИП 212/101-2М-A1R с базой Е412NL
МОЛЛЮСК-12/1,5
Внешний ИБП SKAT-12DC-1.0 Li-ion
ИКС-1 извещатель охранный инфракрасный активный однолучевой
Датчик охранный (Извещатель охранный ИО102-20/Б2П, 2м)
Блок розеток SNR-PDU-08S-1
Устройство NetPing 2/PWR-220 v4/SMS
Устройство UniPing server solution v4/SMS
Устройство NetPing 8/PWR-220 v4/SMS
VT592 кабельный датчик протечки
WLC10 кабель протечки
NetPing Connection board v2 (коммутационная плата для UniPing v3)
Инжектор питания POE (стандарта 802.3af)
NetPing датчик наличия электропитания 995S1
Устройство NetPing 2/PWR-220 v12/ETH
Устройство NetPing 2/PWR-220 v13/GSM3G
Датчик наличия 220В (мод. HRS05005), 1.5м
NetPing удлинитель-разветвитель 1-wire на 5 портов, модель R912R1
NetPing датчик качества электропитания 1-wire 910S20
PLController R15250 силовое реле 15A/250В на DIN-рейку
NetPing адаптер датчиков с аналоговым интерфейсом 0-20мА, модель 886A01
Устройство NetPing server solution v5
Устройство NetPing ИК модуль, модель 3801
Устройство NetPing server solution v5/GSM3G
Устройство NetPing 4/PWR-220 v6.1/GSM3G
Устройство NetPing 4/PWR-220 v6.2/GSM3G
▼ Все теги
Новинки
NetPing Input+Relay v1
Компактное устройство удаленного мониторинга датчиков по сети Ethernet/Internet. Позволяет удаленно подробнее...

Цена: 6 200 руб.

NetPing IO v3
Компактное бескорпусное устройство удаленного мониторинга датчиков по сети Ethernet/Internet. Позволяет подробнее...

Цена: 2 500 руб.

Устройство NetPing 4/PWR-220 v6.2/GSM3G
Устройство удаленного управления розетками электропитания по сети Ethernet/Internet (IP PDU) c поддержкой подробнее...

Цена: 20 280 руб.

Устройство NetPing 4/PWR-220 v6.1/GSM3G
Устройство удаленного управления розетками электропитания по сети Ethernet/Internet (IP PDU) c поддержкой подробнее...

Цена: 20 280 руб.

NetPing блок розеток 1-wire 888S0201
Блок розеток предназначен для удаленного управления нагрузкой. Устройство не является самостоятельным, подробнее...

Цена: 10 980 руб.

Устройство NetPing ИК модуль, модель 3801
ИК-контроллер для дистанционного и автоматического управления устройствами с инфракрасным интерфейсом подробнее...

Цена: 8 580 руб.

Устройство NetPing server solution v5
Устройство удаленного мониторинга датчиков по сети Ethernet/Internet. Позволяет удаленно получать информацию подробнее...

Цена: 18 000 руб.

Устройство NetPing server solution v5/GSM3G
Устройство удаленного мониторинга датчиков по сети Ethernet/Internet. Позволяет удаленно получать информацию подробнее...

Цена: 26 000 руб.

PLController R15250 силовое реле 15A/250В на DIN-рейку
Силовое реле в корпусе для крепления на DIN-рейку предназначено для удаленной коммутации мощной нагрузки.Напряжение подробнее...

Цена: 1 429 руб.

NetPing адаптер датчиков с аналоговым интерфейсом 0-20мА, модель 886A01
Адаптер предназначен для подключения аналоговых датчиков, передающих сигнал изменением протекающего подробнее...

Цена: 3 354 руб.

NetPing датчик качества электропитания 1-wire 910S20
Датчик предназначен для мониторинга качества электропитания в розетке. Датчик должен быть подключен подробнее...

Цена: 2 240 руб.

NetPing удлинитель-разветвитель 1-wire на 5 портов, модель R912R1
Активный удлинитель-разветвитель для подключения датчиков 1-wire к устройствам NetPing5 портов для подключения подробнее...

Цена: 1 400 руб.

Устройство NetPing 2/PWR-220 v12/ETH
Управляемый блок удаленного распределения питания по сети Ethernet/Internet (IP PDU)2 независимые управляемые подробнее...

Цена: 8 157 руб.

Устройство NetPing 2/PWR-220 v13/GSM3G
Управляемый блок удаленного распределения питания по сети Ethernet/Internet (IP PDU) c поддержкой управления подробнее...

Цена: 15 700 руб.

NetPing датчик наличия электропитания 995S1
Датчик позволяет определить наличие напряжения в розетке питания. Выполнен в корпусе блока питания с подробнее...

Цена: 1 224 руб.

WLC10 кабель протечки
Чувствительный кабель для использования совместно с датчиком VT592. Может быть смонтирован в труднодоступных подробнее...

Цена: 6 700 руб.

VT592 кабельный датчик протечки
Датчик предназначен для работы совместно с кабелем протечки WLC10. Возможность подключения датчика как подробнее...

Цена: 3 800 руб.

-+ руб. руб.
Итого руб.

Данные о заказе