Skip to content

Latest commit

 

History

History
175 lines (94 loc) · 15 KB

int_majordomo_rus.md

File metadata and controls

175 lines (94 loc) · 15 KB

Описание

Модуль для интеграции устройств Zigbee или BLE для систем автоматизации на базе MajorDoMo. Для интеграции могут быть использованы программный продукт zigbee2mqtt совместно с разлиными вариантами zigbee-донглов, либо готовый апаратный шлюз Smart Logic System (SLS) Zigbee BLE gateway. Модуль позволяет одновременно работать с неограниченным количеством шлюзов или приложений zigbee2mqtt, представляя собой клиента mqtt и готовый набор базы данных поддерживаемых устройств. Использование модуля избавляет пользователя от необходимости прописывания и запоминания метрик устройств.

home

Подготовительные меропрития

Модуль работает через MQTT. Установка mosqutto на raspberry или linux:

ссылка 1

ссылка 2

Mosqutto для windows можно скачать тут

Для корректной работы с MajorDoMo необходимо через маркет дополнений установить модуль zigbee2mqtt.

После установки mqtt брокера и дополнения для MajorDomo, необходимо на вкладке Сервис прописать нужные настройки:

  1. адрес mqtt сервера

  2. порт mqtt

  3. если необходимо, то логин и пароль mqtt

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

ZigBeeCA20/#,zigbee2mqtt/#
  1. Если zigbee2mqtt установлен на этой же машине нативно, или через docker, можно настроить просмотр лога zigbee2mqtt, указав путь до приложения, например /opt/zigbee2mqtt

  2. Для просмотра лога SLS шлюза, необходимо указать его ip адрес в формате 192.168.1.93.

Остальные настройки по желанию.

settings

После нажатия кнопки сохранить, происходит перезапуск цикла zigbee2mqtt. Его статус можно посмотреть в XRAY на вкладке Services. При необходимости, там же его можно перезапустить или остановить.

Для корректной работы модуля, необходимо на вкладке Сервис нажать кнопку Disable strict mode - это выключит строгий режим MySQL сервера.

settingss

Добавление (сопряжение) устройств

Для добавления устройств Zigbee, необходимо на шлюзе включить режим сопряжения. Сделать это можно через Web-интерфейс шлюза SLS, или из модуля MajorDomo. Режим переключается на вкладке Сервис, либо нажатием на "Сопряжение [имя_шлюза]". Когда индикатор сопряжения горит зеленым, шлюз готов к сопряжению. Для шлюзов на базе Zigbee 3 максимально разрешенное время режима сопряжения составляет 5 минут.

permit

После включения режима сопряжения, необходимо на устройстве нажать кнопку сброса в соответствии с инструкцией. Узнать, каким образом устройство можно перевести в режим сопряжения можно в каталоге zigbee2mqtt.

Управление устройствами с панели управления

Управляемым устройствам можно давать команды в панели администратора модуля для MajorDoMo. У таких устройств в верхней полоске находятся кнопки управления в соответсвии с типом устройства. Нажатие на соответсвующие пиктограммы изменяет режим.

remote

При нажатии на картинку устройства - отправляется команда "toggle", которая изменяет режим на противоположный.

Управление устройствами через приложения

Интерфейс управления модулем доступен из приложений. Так, установив приложение для телефонов Majordroid, через приложения будет доступен режим простотра и управления устройстами.

majordroid1 majordroid2

Также постоянную странциу дополнения http:/ipaddr/module/zigbee2mqtt.html можно прописать в ибзранном или домашней странций браузера.

app

Отсюда также можно управлять устройствами. Ссылку на эту страницу можно установить домашней страницей на настенном планшете или анлогичном устройстве в домашней сети.

app2

Привязка устройств к объектам

Дополнение zigbee2mqtt адамтировано для интеграции с "Простыми устройствами" MajorDoMo. Через вкадку "Простые устройства" панели администратора необходимо выбрать и добавить в систему подходящее по смыслу устройство(например "Датчик движения" или "Управляемое реле")

sd1 sd2 После его добавления, необходимо узнать и запомнить название связанного объекта: sd2

Теперь в панели администратора модуля zigbee2mqtt небходимо найти нужное устройство и зайти на вкладку "Данные": sd2

Выбрать подходящую метрику устройства: sd2 И привязать ранее созданный объект как на картинке: sd2 sd2

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

** Обратите внимание, что получаемые от пультов метрики click, command и тд. реверсятся. Это возволяет использовать разные настройки для поддерживаемых команд (двойной тап, двойное нажатие, долгое нажатие и тд). Привязывать нужно необходимую команду, например single (double, long) вместо метрики click. Если привязать click к нужному действию, событие будет выполняться на каждоей действие (нажати, отпускание и тд). sd8

** Также стоит отметить, что для "Простых устройств" типа реле, диммер и т.д. лучше привязывать метод switch, тогда логика управления будет соблюдена. Для датчиков нужно привязывать соотстветсвующие метрики. **

** Внимание!!! Одновременная привязка метода и свойства для кнопок будет вызывать двойную сработку.

Группы

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

Добавление устройств в группы производится со вкладки Edit Device. Можно создать новую группу или выбрать из имеющихся.

gr

Далее согласно протоколу zigbee2mqtt создается новое устройство с именем группы. Отправляя одну команду в группу можно изменить режим работы всех включенных в нее устройств.

Протоколом zigbee предусмотена поддержка устройствами нахождение в нескольких группах. Перечитать список групп, куда входит устройство можно со вкладки Parameters

gr2

В панели администратора можно выбрать режим отображения "только группы". gr2

TouchLink

Протоколом zigbee предусмотрено управление устройствами без координатора. Технология TouchLink позволяет создать отдельную сеть zigbee между двумя устройствами. Для связи поддерживающих технологию устройств, необхолимо ознакомиться с документацией. В магазинах Ikea продаются комплекты ламп и пультов Tradfri, которые поддерживают такое сопряжение. Обычно для сопряжения лампы и пульта, необходимо поднести пульт к включенной лампочке и нажать кнопку сопряжения. Через какое-то время лампа начнет моргать с нарастающей частотой. Через какое-то время моргание остановится, устройства должны будут создать свою сеть и прописаться на события устройств.

Binding

Протоколом zigbee также предусмотрена настройки связей устройств с координатора. Такая технология называется Binding. Он позволяет аналогичным образом подписать одни устройства (лампы) на другие (пульты, датчики), только настройка осуществляется через координатор. Это дает возможности более тонкой настройки связей без создания отдельной сети zigbee.

Просмотр логов zigbee2mqtt или SLS ZGW

В дополнении для MajorDoMo предусмотрен просмотр log файла программного шлюза. Если zigbee2mqtt установлен на одном сервере, где установлен MajorDoMo, необходимо на вкладке Настройка в поле Folder path указать путь, куда установлен zigbee2mqtt. Инструкции по-умполчанию устанавливают в папку /opt/zigbee2mqtt. В результате становится доступен просмотр файл журнала zigbee2mqtt.

z2mlog

Для аппаратного шлюза SLS в режиме проксирования доступен просмотр журнала работы. Необходимо на вкладке Настройка в поле SLS ZGW IP adress указать ip-адресс шлюза. Просмотр доступен на вкладке SLS log.

slslog

Пример сценария Majoromo для перезагрузки шлюза

include_once(DIR_MODULES . 'zigbee2mqtt/zigbee2mqtt.class.php');
$z2m = new zigbee2mqtt();
$z2m->sendcommand('ZigBeeXXXX/reboot', '');

Пример сценария Majoromo для установки подстветки модернизированного шлюза Aqara

include_once(DIR_MODULES . 'zigbee2mqtt/zigbee2mqtt.class.php');
$z2m = new zigbee2mqtt();
$z2m->sendcommand('ZigBeeXXXX/led', '{“mode”:”manual”,”hex”:”#FF0000”}');

Полезные ссылки

Ссылка на интересный тематический канал в телеграм: https://t.me/zigbeer

Ссылка на репозиторий модуля zigbee2mqtt: http://github.com/directman66/majordomo-zigbee2mqtt/

Топики для управления устройствами через mqtt https://www.zigbee2mqtt.io/integration/home_assistant.html

Топики для управления шлюзом через mqtt https://www.zigbee2mqtt.io/information/mqtt_topics_and_message_structure.html#zigbee2mqttbridgelog