RS-485:Configuration via Web Interface: различия между версиями

Материал из Wiren Board
(Добавил ролик + предупреждение об изменениях)
(Подготовка страницы к переводу)
(не показаны 83 промежуточные версии 5 участников)
Строка 1: Строка 1:
{{DISPLAYTITLE:Начальное конфигурирование устройств через веб-интерфейс}}
<languages/>
== Введение ==
<translate>
{{note|info|С апреля 2024 года мы начали улучшать интерфейс конфигуратора, поэтому в вашем релизе софта он может немного или сильно отличаться. В этой статье описывается поведение в текущем [[testing|стабильном релизе]].}}
</translate>
{{DISPLAYTITLE:Начальное конфигурирование устройств через web-интерфейс}}
<translate>
Общую информацию по подключению устройств RS-485 к контроллеру смотрите на странице [[Special:MyLanguage/RS-485|RS-485]].


{{YouTube
|link= https://youtu.be/d_olK15Xhkw
|text= Настройка подключённых устройств
|list= PL-yKQAXd5Un_fQfrVVgMt1Em5Qb1f-v6l
}}


В контроллере для работы с устройствами есть драйвер [[wb-mqtt-serial]], в котором для каждого поддерживаемого устройства есть шаблон. Вам надо выбрать эти шаблоны в веб-интерфейсе контроллера.
=== Конфигурация последовательных устройств ===


Информацию о том, как проложить шину RS-485 и подключить к ней устройства, читайте на странице [[RS-485|RS-485]].
Зайдите на страницу ''Configs'' [[Special:MyLanguage/Веб-интерфейс Wiren Board|веб-интерфейса]], щёлкните по пункту ''/etc/wb-mqtt-serial.conf'' (''serial'' - название последовательных портов, RS-485 относится к ним), либо выберите пункт ''Serial Device Driver Configuration'' в левой панели интерфейса. [[File:rs-485-setup-configs.png|thumb|center|500 px]]
== Как зайти в веб-интерфейс ==
{{Wbincludes:How to enter}}


== Смена уровня доступа к веб-интерфейсу ==
Откроется страница настройки последовательных портов. В левой части выберите порт, к которому вы подключили устройство. Порты названы по терминологии Linux - ''/dev/ttyXXXN''; чтобы понять, как называется используемый вами, смотрите [[Wiren_Board_5:_%D0%90%D0%BF%D0%BF%D0%B0%D1%80%D0%B0%D1%82%D0%BD%D1%8B%D0%B5_%D1%80%D0%B5%D0%B2%D0%B8%D0%B7%D0%B8%D0%B8|Wiren_Board_5:_%D0%90%D0%BF%D0%BF%D0%B0%D1%80%D0%B0%D1%82%D0%BD%D1%8B%D0%B5_%D1%80%D0%B5%D0%B2%D0%B8%D0%B7%D0%B8%D0%B8]]. [[File:rs-485-setup-select-port.png|center|500 px|На скриншоте выбран порт Wiren Board 5, подписанный на корпусе как ''RS-485'']]
{{Wbincludes:WebUI Change Access Level}}


== Поиск устройств Wiren Board на шине RS-485 ==
[[Image: Scan-screen.png |300px|thumb|right| Сканирование устройств ]]
В разделе '''Настройки''' → '''Сканирование''' можно получить список всех устройств Wiren Board подключенных к шине RS-485 с их серийными номерами, настройками соединения и версиями прошивок.


Возможности функции сканирования:
=== Настройка порта ===
* отображение всех устройств Wiren Board, подключенных к контроллеру,
* обнаружение устройств с одинаковыми адресами на одной шине,
* обнаружение устройств с разными параметрами связи на одной шине.


Благодаря функции сканирования можно собирать шкаф управления не обращая внимания на адреса устройств — все адреса и параметры можно будет получить после сборки и сконфигурировать устройства не отключая от шины.
Установите настройки порта: скорость (бит/с), количество бит в пакете, есть ли бит чётности, количество стоп-битов - эта информация указана в документации к периферийному оборудованию. Затем обязательно поставьте галочку ''Enable port'' - ''Включить порт'' (с помощью этой настройки порт можно отключить, если какое-нибудь оборудование на нём начнёт сбоить).<br>'''N.B.''' Если вы подключаете несколько устройств к одному порту контроллера, эти настройки у них должны совпадать. [[File:rs-485-setup-port-settings.png|thumb|center|500 px|Установлены настройки для релейного [[Special:MyLanguage/WB-MRM2|WB-MRM2]]]]


== Настройка порта ==
=== Последовательный порт ===
Последовательный порт служит для подключения Modbus-устройств к контроллеру через шину [[RS-485]].
Откройте веб-интерфейс и перейдите в раздел '''Settings''' → '''Configs''' → '''Serial Device Driver Configuration'''.


В левой части выберите порт, к которому вы подключили устройство. Для настройки порта нужно установить галочку '''Enable port''' и указать параметры подключения:
=== Добавление устройств ===
{|class="wikitable" style="text-align:left"
! Параметр, EN
! Параметр, RU
! Значение по умолчанию
|-
| Baud rate
| Скорость
| 9600
|-
| Parity
| Четность
| N
|-
| Data bits
| Биты данных
| 8
|-
| Stop bits
| Количество стоп-бит
| 2
|}


Значение параметров можно взять из документации на оборудование. В колонке «По умолчанию» указаны заводские параметры для подключения к оборудованию Wiren Board.
Перейдите к разделу ''List of devices'' - ''Список устройств'' ниже. Нажмите кнопку ''+ Serial Device'', чтобы добавить устройство. Выберите тип устройства (обычно соответствует модели устройства) и укажите его адрес (обычно указывается  документации к устройству, для устройств нашего производства указан на корпусе на наклейке — в десятичном формате): [[Special:MyLanguage/Файл:modbus_address_mr14.png|400px|thumb|center|Modbus-адрес, установленный на производстве]] Адрес устройства указывается либо в шестнадцатеричном виде (начинается с ''0x..''), либо в десятичном (как обычное число). Затем обязательно нажмите синюю кнопку ''Save'' - ''Сохранить'' вверху страницы. [[File:rs-485-setup-device-settings.png|thumb|center|500 px|Выбран тип устройства [[Special:MyLanguage/WB-MRM2|WB-MRM2]] и установлен десятичный адрес ''130'']]


К одному порту можно подключить несколько устройств, но в этом случае параметры подключения на всех устройствах должны совпадать.
=== Проверка работы ===


После указания настроек подключения можете продолжить редактирование других параметров или нажмите кнопку '''Save''' вверху страницы для сохранения изменений.
Чтобы проверить работу устройства, перейдите на страницу ''Devices''. На ней должен появиться блок, соответствующий подключённому устройству. В нашем примере, появился блок ''WB-MRM2 130'' (шаблон названия - ''ТИП_УСТРОЙСТВА АДРЕС'') с двумя кнопками для управления реле, двумя индикаторами входов для кнопок и счётчиками нажатий. Можно нажать на кнопку - реле на подключённом устройстве переключится. [[File:rs-485-setup-device-connected.png|thumb|center|500 px|Отображение подключённого устройства [[Special:MyLanguage/WB-MRM2|WB-MRM2]] с адресом ''130'' на странице ''Devices''. Можно нажимать кнопки и управлять реле на устройстве]]


<gallery widths=400px heights=240px perrow=2>
=== Добавление виджета ===
Image: webui2. Settings → Configs.png | Выберите ''Serial Device Driver Configuration''
Image: webui2. Settings → Configs → Serial Device Driver Configuration.png | Выберите нужный serial-порт, включите его и укажите настройки подключения: ''Baud rate'', ''Parity'', ''Data bits'', ''Stop bits''
</gallery>


=== TCP-порт ===
'''Для версии веб-интерфейса 1.x'''
TCP-порт служит для подключения устройств по протоколам ''TCP port (Serial over TCP)'' или ''MODBUS TCP Port'', например, WB-MGE или WB-MIO-E.


Чтобы добавить новый TCP-порт:
Чтобы добавить кнопку управления на главную страницу ''Home'' и назвать её соответственно назначению (например, ''Свет в коридоре''), нужно создать виджет (''Widget''). Для этого нужно перейти на страницу ''Widgets'' и нажать зелёную кнопку ''Add widget''. Затем нужно ввести параметры виджета: имя (так он называться в интерфейсе), комнату (группу, к которой привязан виджет; используется для упорядочивания, когда виджетов много - если мало, можно выбрать любую), и тип виджета - в нашем случае реле управляет освещением, поэтому выбираем ''Light Control Relay''. После этого появляется ещё одна опция - нужно выбрать, какому именно устройству соответствует виджет. Все доступные устройства выбранного типа показываются в списке, их имена даны в соответствии с терминологией [[Special:MyLanguage/MQTT|MQTT]]. В завершении нажимаем кнопку ''Submit'' - новый виджет появится на странице ''Widgets''. [[File:rs-485-setup-add-widget.png|thumb|center|500 px|Создание виджета для управления светом на основе Реле 1 подключённого устройства [[Special:MyLanguage/WB-MRM2|WB-MRM2]]]]
# Перейдите в раздел '''Settings''' '''Configs''' → '''Serial Device Driver Configuration'''.
# Нажмите кнопку '''+Port'''.
# В зависимости от протокола, укажите тип порта '''TCP port (Serial over TCP)''' или '''MODBUS TCP Port'''.
# В поле IPv4 введите IP-адрес сервера.
# В поле '''TCP port number''', введите номер TCP-порта сервера.
# Нажмите слева вверху кнопку '''Save'''.


<gallery mode="packed" widths=200px heights=200px perrow=2>
=== Дополнительные параметры устройства ===
Image: webui2. Settings → Configs.png | Выберите ''Serial Device Driver Configuration''
Image: Wiren Board WebUI configs modbus-tcp-port.png | Добавьте новый порт, выберите один из типов:  ''TCP port (Serial over TCP)'' или ''MODBUS TCP Port'', укажите IP-адрес и TCP-порт сервера
</gallery>


== Добавление устройств ==
Настройка дополнительных параметров устройства осуществляется через кнопку ''Properties''. В выпадающем меню можно вывести дополнительные поля конфигурации устройства.
[[File:Web-Interface-Device-Props.png|thumb|center|700 px| Настрорйка отображения дополнительных параметров]]Для инициализации определенных регистров устройства перед началом работы используется setup-секция (List of setup commands). В качестве примера запишем значение 0 в holding-регистр релейного модуля WB-MR14, чтобы задать режим управления кнопкой без фиксации для всех входов модуля. Щелкаем на кнопке ''Properties'' и устанавливаем флажок ''List of setup commands''. Ещё раз щелкаем на кнопке ''Properties'', чтобы скрыть выпадающий список.[[Special:MyLanguage/Файл:Setup-section.png|800px|thumb|center|Добавляем раздел setup-секции устройства]] Нажмем кнопку Save и убедимся, что модуль работает в режиме управления кнопочными выключателями. У устройства появится раздел '''List of setup commands'''. Нажимаем на кнопку '''+Setup command''' и перейдем к созданию setup-команды. Мы должны указать название команды, номер Modbus-регистра и инициирующее значение. '''Setup-инициализация выполнятся однократно после загрузки драйвера.''' [[Special:MyLanguage/Файл:Setup_commands_list.png|600px|thumb|center|Добавляем раздел setup-секции устройства]]


Чтобы добавить устройство в веб-интерфейс, перейдите в [[#Настройка порта | настройках порта]] в раздел '''Devices attached to the port''' и нажмите кнопку '''+Device'''.


Для всех устройств Wiren Board и некоторых устройств сторонних производителей, в поставке ПО контроллера Wiren Board есть шаблоны, которые облегчают настройку устройства. Список поддерживаемых сторонних устройств можно посмотреть в таблице [[Поддерживаемые_устройства#Протестированные устройства сторонних производителей | Протестированные устройства сторонних производителей]], если у устройства есть шаблон, то он будет указан в колонке «Драйвер / название шаблона».
=== Настройка периода опроса ===


Modbus-адрес (Slave id) устройств Wiren Board устанавливается с завода и указан в наклейке на корпусе устройства. Также адреса устройств можно узнать если выполнить сканирование шины в веб-интерфейсе контроллера в разделе '''Settings → Scan'''. Там же можно получить список всех устройств Wiren Board, подключенных к шине RS-485 с их серийными номерами, настройками соединения и версиями прошивок. Если адреса дублируются их нужно [[Определение и изменение Modbus-адреса устройств Wirenboard |изменить]].
Драйвер ([[https://github.com/contactless/wb-homa-drivers/tree/master/wb-mqtt-serial wb-mqtt-serial|https://github.com/contactless/wb-homa-drivers/tree/master/wb-mqtt-serial wb-mqtt-serial]]) позволяет определять, с какой скоростью будут опрашиваться те или иные каналы устройства. Данный параметр называется Desired poll interval и задается в миллисекундах. Общий для всех интервал опроса задается параметром Desired poll interval в конфигурации порта. Если этот параметр не будет переопределен в других устройствах или других каналов, то для каждого канала будет использоваться именно это значение. Если скорость опроса задана для какого-то конкретного устройства, то для всех каналов этого устройства будет использоваться именно она, опять-таки, если для какого-то канала не задан свой интервал опроса. Приоритет интервалов выглядит таким образом: канал-> устройство -> порт. Например, если у нас есть несколько входов релейного модуля, критичных ко времени срабатывания, для них мы можем задать минимальный интервал в 1 мс. По умолчанию в web-интерфейсе отсутствует поле для изменения этого свойства -- его надо добавить. Сначала указываем канал, свойство которого мы хотим переопределить, для чего щелкаем по кнопке '''+Item'''. Имя контрола и его адрес можно узнать в файле шаблона устройства [[Special:MyLanguage/Файл:Channel_name_address.png|400px|thumb|left|Фрагмент описания канала устройства из файла шаблона из директории /usr/share/wb-mqtt-serial/templates]]
 
В поле Control name мы подставляем значение переменной "name", Address -- "address". Соответственно заполняем поля Control type и Register type. [[Special:MyLanguage/Файл:Channel_props_poll.png|400px|thumb|center|Добавляем свойство интервала опроса для канала устройства]] щелкаем на кнопке Properties соответствующего канала и ставим флажок в поле Desired poll interval (ms), как показано на рисунке.
=== Устройство с шаблоном ===
В результате получаем следующий набор полей:[[Special:MyLanguage/Файл:Channel_settings.png|600px|thumb|center|Набор полей, определяющих свойства конкретного канала. Поле Desired poll interval (ms) определяет интервал между двумя опросами параметра]]
Если у подключаемого устройства есть шаблон, то это облегчает настройку:
Для сохранения нажимаем кнопку Save в верхней части страницы.
# В поле Device N, где N — порядковый номер устройства в списке, выберите в выпадающем списке шаблон устройства.
</translate>
# Укажите его адрес в поле '''Slave id'''.
# Сохраните изменения в настройках — нажмите кнопку '''Save''' в верхней части окна.
 
=== Устройство без шаблона ===
{{Anchor|without-template}}
Если шаблона вашего устройства нет в списке, вы можете добавить устройство вручную или [[Connecting_Third_Party_Devices_to_Wiren_Board | составить свой шаблон]] и загрузить его на контроллер.
 
Чтобы подключить устройство без шаблона:
# Выберите шаблон <code>Custom device</code>.
# Укажите его адрес в поле '''Slave id'''.
# Опишите каналы устройства:
#* Нажмите кнопку '''Properties'''.
#* Установите флажок '''Custom channels'''.
#* В описании устройства появится раздел ''Custom channels''.
#* Теперь нужно добавить пользовательский канал, для этого в разделе '''Custom channels''' нажмите на кнопку '''+Channel'''.
#* Введите имя контрола в веб-интерфейсе и другие параметры канала.
# Сохраните изменения в настройках — нажмите кнопку '''Save''' в верхней части окна.
 
<gallery mode="packed" widths=200px heights=200px perrow=2>
Image: webui2. Serial Device Driver Configuration. Add new device.png | Нажмите кнопку ''+Device'', чтобы добавить новое serial-устройство</code>
Image: webui2. Serial Device Driver Configuration. WB-MSW3.png | Веб-интерфейс: основные настройки датчика [[WB-MSW v.3]]
</gallery>
 
== Проверка работы ==
Проверить работу [[#Добавление устройств | добавленного в веб-интерфейс]] устройства можно на вкладке '''Devices''', после [[#Добавление устройств | добавления устройства в веб-интерфейс]] на ней появится блок с этим устройством. Если вашего устройства там нет — проверьте [[#Настройка порта | параметры подключения]] и адрес самого устройства.
 
<gallery mode="packed" widths=200px heights=200px perrow=2>
Image: webui2. Serial Device Driver Configuration. Save config.png | Перед переходом на вкладку ''Devices'' не забудьте сохранить настройки
Image: webui2. Devices WB-MSW3.png | Датчик [[WB-MSW v.3]] в веб-интерфейсе на вкладке ''Devices''
</gallery>
 
== Отключение каналов, смена режимов и настройка параметров ==
{{Anchor|poll-settings}}
В веб-интерфейсе вы можете:
* Отключать опрос тех каналов устройства, которые вы не используете — это снизит нагрузку на шину [[RS-485]].
* Выбирать режимы работы входов или выходов.
* Настраивать дополнительные параметры устройства, например, частоту PWM в диммерах.
 
<gallery widths=180px heights=150px perrow=4 caption="Настройки модуля WB-MRGBW-D в веб-интерфейсе контроллера Wiren Board">
Image: WB-MRGBW-D Webui configs Inputs.png | Настройка входов
Image: WB-MRGBW-D Webui configs Channels rgb+w.png | Настройка выходов
Image: WB-MRGBW-D Webui configs Channels Independent.png | Настройка скорости обмена
Image: WB-MRGBW-D Webui configs HW Info.png | Информация об устройстве
</gallery>
 
== Дополнительные параметры устройства ==
Дополнительные параметры устройства передаются устройству при перезапуске [[Wb-mqtt-serial driver | wb-mqtt-serial]] или при восстановлении связи с устройством.
 
=== Параметры, указанные в шаблоне (parameters-секция) ===
Если в шаблоне заполнена parameters-секция, то при выборе шаблона, в настройках устройства появится раздел '''Device options''', который будет содержать указанные в [[Wb-mqtt-serial templates#Секция параметров (parameters-секция) | шаблоне параметры]].
 
По умолчанию все параметры отключены и для передачи на устройство их нужно включить. Чтобы включить параметр, установите флажок напротив названия.
 
После сохранения настроек включенные параметры будут записаны в устройство.
 
<gallery mode="packed" widths=200px heights=200px perrow=2>
Image: webui2. WB-MR14 Device Options in template (parameters-section).png | Параметры инициализации устройства (parameters-секция) в файле шаблона  
Image: webui2. WB-MR14 Device Options.png | Параметры инициализации устройства (parameters-секция) в веб-интерфейсе
</gallery>
 
=== Пользовательские параметры ===
Если у устройства нет шаблона или в шаблоне не указаны нужные вам настройки инициализации, то вы можете добавить пользовательские параметры прямо из веб-интерфейса:
# Нажмите в описании устройства кнопку '''Properties'''.
# Поставьте флажок '''Custom setup commands'''. После этого появится раздел ''Custom setup commands''.
# В разделе '''Custom setup commands''' нажмите кнопку '''+Setup command'''.
# Заполните поля:
#* Command name — имя команды. Используется для записи в журналы и отладки.
#* Address — адрес регистра, куда записывать значение.
#* Value — значение, которое нужно записать для инициализации устройства.
 
После внесения изменений сохраните настройки.
 
<gallery mode="packed" widths=200px heights=200px perrow=2>
Image: webui2. Device Custom setup commands.png | Включение отображения пользовательских команд инициализации
Image: webui2. WB-MR14 No contacts.png | Создание пользовательской команды инициализации реле [[WB-MR14 Modbus 14 Channel Relay Module | WB-MR14]]
</gallery>
 
== Настройка периода опроса ==
{{note|warn| В свежих версиях прошивок некоторые регистры поддерживают события, которые являются частью расширения [[Modbus#%D0%A0%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D0%B0%20Modbus%20%D0%BE%D1%82%20Wiren%20Board | Быстрый Modbus]]&#9889;. События опрашиваются широковещательными командами, поэтому для каналов поддерживающих события период опроса задать нельзя, а соответсвующее поле в веб-интерфейсе служит для изменения приоритета опроса событий.}}
{{Anchor|poll-period}}
Вы можете задать желаемый период опроса и драйвер будет стараться его выдержать, а если заданный период выдержать не получится — он сообщит об этом в карточке устройства.
 
Точная настройка периода опроса может быть полезна, если какие-то каналы нужно опрашивать часто. Значения, которые можно указать, зависят от количества каналов, которые надо опрашивать быстро, обычно это: от 200 до 500 мс на канал. Не рекомендуем использовать эту настройку для замедления опроса каналов, например, установки значений в десятки секунд — это может сильно замедлить работу драйвера, так как он не сможет оптимизировать запросы по своему усмотрению.
 
Чтобы указать период опроса, перейдите в веб-интерфейсе в настройки драйвера serial-устройств и укажите желаемое значение для любого канала.
 
Рекомендации:
* Поднимите скорость шины до 115 200 бит/с, [[UART_Communication_Settings#Изменение скорости обмена|инструкция]].
* Для ускорения опроса рекомендуем устанавливать период не меньше 100–300 мс и не более, чем для 10-15 каналов на порт. Здесь нужно учитывать, что драйвер оптимизирует запросы, например, состояние всех шести входов одного реле он может считать за один раз, а значит максимальное количество каналов нужно подбирать опытным путём и оно может быть сильно больше 15 штук.
* Проверьте, чтобы в записях драйвера wb-mqtt-serial в [[Wiren_Board_Web_Interface#logs | системном журнале]] не было ошибок, предупреждений и информации о недоступных устройствах. Если вы физически отключили какое-то устройство, то выключите его опрос в настройках драйвера.
* Если вы столкнулись с тем, что желаемый период выдержать не получается — увеличьте период опроса или пересмотрите количество каналов.
 
Для каналов управления менять период опроса имеет смысл только, если вам нужно быстро получить их состояние. Команду управления в устройство драйвер отправляет вне очереди, при первой возможности.
 
<gallery mode="packed" heights="260px" caption="Настройка периода опроса">
Image: Poll Period wb-mqtt-serial in Settings.png | Выбор периода для опроса канала
Image: Poll Period wb-mqtt-serial in Devices.png | Предупреждение о том, что период опроса канала ''Input 1'' выдержать не получается
</gallery>
 
== Полезные ссылки ==
* [[Wb-mqtt-serial driver| Описание драйвера wb-mqtt-serial в нашей вики]]
* [[Wb-mqtt-serial templates| Описание шаблонов и примеры]]

Версия 19:39, 23 апреля 2019

Другие языки:


Общую информацию по подключению устройств RS-485 к контроллеру смотрите на странице RS-485.


Конфигурация последовательных устройств

Зайдите на страницу Configs веб-интерфейса, щёлкните по пункту /etc/wb-mqtt-serial.conf (serial - название последовательных портов, RS-485 относится к ним), либо выберите пункт Serial Device Driver Configuration в левой панели интерфейса.

Rs-485-setup-configs.png

Откроется страница настройки последовательных портов. В левой части выберите порт, к которому вы подключили устройство. Порты названы по терминологии Linux - /dev/ttyXXXN; чтобы понять, как называется используемый вами, смотрите Wiren_Board_5:_%D0%90%D0%BF%D0%BF%D0%B0%D1%80%D0%B0%D1%82%D0%BD%D1%8B%D0%B5_%D1%80%D0%B5%D0%B2%D0%B8%D0%B7%D0%B8%D0%B8.

На скриншоте выбран порт Wiren Board 5, подписанный на корпусе как RS-485


Настройка порта

Установите настройки порта: скорость (бит/с), количество бит в пакете, есть ли бит чётности, количество стоп-битов - эта информация указана в документации к периферийному оборудованию. Затем обязательно поставьте галочку Enable port - Включить порт (с помощью этой настройки порт можно отключить, если какое-нибудь оборудование на нём начнёт сбоить).
N.B. Если вы подключаете несколько устройств к одному порту контроллера, эти настройки у них должны совпадать.

Установлены настройки для релейного WB-MRM2


Добавление устройств

Перейдите к разделу List of devices - Список устройств ниже. Нажмите кнопку + Serial Device, чтобы добавить устройство. Выберите тип устройства (обычно соответствует модели устройства) и укажите его адрес (обычно указывается документации к устройству, для устройств нашего производства указан на корпусе на наклейке — в десятичном формате): 400px|thumb|center|Modbus-адрес, установленный на производстве Адрес устройства указывается либо в шестнадцатеричном виде (начинается с 0x..), либо в десятичном (как обычное число). Затем обязательно нажмите синюю кнопку Save - Сохранить вверху страницы.

Выбран тип устройства WB-MRM2 и установлен десятичный адрес 130

Проверка работы

Чтобы проверить работу устройства, перейдите на страницу Devices. На ней должен появиться блок, соответствующий подключённому устройству. В нашем примере, появился блок WB-MRM2 130 (шаблон названия - ТИП_УСТРОЙСТВА АДРЕС) с двумя кнопками для управления реле, двумя индикаторами входов для кнопок и счётчиками нажатий. Можно нажать на кнопку - реле на подключённом устройстве переключится.

Отображение подключённого устройства WB-MRM2 с адресом 130 на странице Devices. Можно нажимать кнопки и управлять реле на устройстве

Добавление виджета

Для версии веб-интерфейса 1.x

Чтобы добавить кнопку управления на главную страницу Home и назвать её соответственно назначению (например, Свет в коридоре), нужно создать виджет (Widget). Для этого нужно перейти на страницу Widgets и нажать зелёную кнопку Add widget. Затем нужно ввести параметры виджета: имя (так он называться в интерфейсе), комнату (группу, к которой привязан виджет; используется для упорядочивания, когда виджетов много - если мало, можно выбрать любую), и тип виджета - в нашем случае реле управляет освещением, поэтому выбираем Light Control Relay. После этого появляется ещё одна опция - нужно выбрать, какому именно устройству соответствует виджет. Все доступные устройства выбранного типа показываются в списке, их имена даны в соответствии с терминологией MQTT. В завершении нажимаем кнопку Submit - новый виджет появится на странице Widgets.

Создание виджета для управления светом на основе Реле 1 подключённого устройства WB-MRM2

Дополнительные параметры устройства

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

Настрорйка отображения дополнительных параметров

Для инициализации определенных регистров устройства перед началом работы используется setup-секция (List of setup commands). В качестве примера запишем значение 0 в holding-регистр релейного модуля WB-MR14, чтобы задать режим управления кнопкой без фиксации для всех входов модуля. Щелкаем на кнопке Properties и устанавливаем флажок List of setup commands. Ещё раз щелкаем на кнопке Properties, чтобы скрыть выпадающий список.800px|thumb|center|Добавляем раздел setup-секции устройства Нажмем кнопку Save и убедимся, что модуль работает в режиме управления кнопочными выключателями. У устройства появится раздел List of setup commands. Нажимаем на кнопку +Setup command и перейдем к созданию setup-команды. Мы должны указать название команды, номер Modbus-регистра и инициирующее значение. Setup-инициализация выполнятся однократно после загрузки драйвера. 600px|thumb|center|Добавляем раздел setup-секции устройства


Настройка периода опроса

Драйвер ([wb-mqtt-serial|https://github.com/contactless/wb-homa-drivers/tree/master/wb-mqtt-serial wb-mqtt-serial]) позволяет определять, с какой скоростью будут опрашиваться те или иные каналы устройства. Данный параметр называется Desired poll interval и задается в миллисекундах. Общий для всех интервал опроса задается параметром Desired poll interval в конфигурации порта. Если этот параметр не будет переопределен в других устройствах или других каналов, то для каждого канала будет использоваться именно это значение. Если скорость опроса задана для какого-то конкретного устройства, то для всех каналов этого устройства будет использоваться именно она, опять-таки, если для какого-то канала не задан свой интервал опроса. Приоритет интервалов выглядит таким образом: канал-> устройство -> порт. Например, если у нас есть несколько входов релейного модуля, критичных ко времени срабатывания, для них мы можем задать минимальный интервал в 1 мс. По умолчанию в web-интерфейсе отсутствует поле для изменения этого свойства -- его надо добавить. Сначала указываем канал, свойство которого мы хотим переопределить, для чего щелкаем по кнопке +Item. Имя контрола и его адрес можно узнать в файле шаблона устройства 400px|thumb|left|Фрагмент описания канала устройства из файла шаблона из директории /usr/share/wb-mqtt-serial/templates В поле Control name мы подставляем значение переменной "name", Address -- "address". Соответственно заполняем поля Control type и Register type. 400px|thumb|center|Добавляем свойство интервала опроса для канала устройства щелкаем на кнопке Properties соответствующего канала и ставим флажок в поле Desired poll interval (ms), как показано на рисунке. В результате получаем следующий набор полей:600px|thumb|center|Набор полей, определяющих свойства конкретного канала. Поле Desired poll interval (ms) определяет интервал между двумя опросами параметра Для сохранения нажимаем кнопку Save в верхней части страницы.