Перейти к содержанию

Навигация

Wb-mqtt-serial driver: различия между версиями

м
Ссылку на github исправил
м
м (Ссылку на github исправил)
(не показано 6 промежуточных версий 3 участников)
Строка 2: Строка 2:
<translate>
<translate>
<!--T:1-->
<!--T:1-->
'''Внимание!''' Драйвер ''wb-mqtt-serial'' ранее назывался ''wb-homa-modbus'', конфигурационный файл <code>/etc/wb-mqtt-serial.conf</code> ранее назывался <code>/etc/wb-homa-modbus.conf</code>. Учитывайте это, если используете устаревшие прошивки.
'''Внимание!''' Драйвер ''wb-mqtt-serial'' ранее назывался ''wb-homa-modbus'', а конфигурационный файл <code>/etc/wb-mqtt-serial.conf</code> как <code>/etc/wb-homa-modbus.conf</code>. Учитывайте это, если используете устаревшие прошивки.
 


<!--T:2-->
<!--T:2-->
'''Драйвер wb-mqtt-serial''' отвечает за работу с подключёнными по [[Special:MyLanguage/RS-485|RS-485]] устройствами в Wiren Board. Он обеспечивает работу с подключёнными устройствами через систему [[Special:MyLanguage/MQTT|MQTT]]-сообщений. В этой статье даётся упрощённое описание драйвера, полное смотрите [https://github.com/contactless/wb-mqtt-serial в описании драйвера на нашем Github].
'''Драйвер wb-mqtt-serial''' отвечает за работу с подключёнными по [[Special:MyLanguage/RS-485|RS-485]] устройствами в Wiren Board. Он обеспечивает работу с подключёнными устройствами через систему [[Special:MyLanguage/MQTT|MQTT]]-сообщений. В этой статье даётся упрощённое описание драйвера, полное смотрите [https://github.com/contactless/wb-mqtt-serial в описании драйвера на нашем Github].


==Поддерживаемые устройства== <!--T:3-->
==Поддерживаемые устройства== <!--T:3-->
Строка 21: Строка 19:
<!--T:7-->
<!--T:7-->
Например, фреймы устройств Uniel начинаются с байта 0xff, устройств ИВТМ - с байта 0x24 ('$'), в случае же протоколов Modbus, Меркурий 230 и Милур первым байтом фрейма является идентификатор slave, поэтому при совмещении подобных устройств следует внимательно подходить к выбору slave id - у устройств Милур, например, slave id по умолчанию равен 0xff, что приводит к конфликту с устройствами Uniel. Устройства Милур требуют дополнительных задержек при опросе (заданы в шаблоне) и при использовании на одной шине с другими устройствами могут снизить скорость опроса. Некоторые устройства, поддерживающие дополнительные протоколы, могут оказаться несовместимыми с теми или иными протоколами на той же шине, например, было замечено, что устройства с поддержкой протокола A-BUS производства "Разумный дом" не могут работать на одной шине с устройствами Uniel. Работа устройств ИВТМ на одной шине с устройствами, работающими по другим протоколам, не проверялась. Проверенная рабочая комбинация: Modbus + Milur (slave_id != 0xff) + Uniel на одной шине.
Например, фреймы устройств Uniel начинаются с байта 0xff, устройств ИВТМ - с байта 0x24 ('$'), в случае же протоколов Modbus, Меркурий 230 и Милур первым байтом фрейма является идентификатор slave, поэтому при совмещении подобных устройств следует внимательно подходить к выбору slave id - у устройств Милур, например, slave id по умолчанию равен 0xff, что приводит к конфликту с устройствами Uniel. Устройства Милур требуют дополнительных задержек при опросе (заданы в шаблоне) и при использовании на одной шине с другими устройствами могут снизить скорость опроса. Некоторые устройства, поддерживающие дополнительные протоколы, могут оказаться несовместимыми с теми или иными протоколами на той же шине, например, было замечено, что устройства с поддержкой протокола A-BUS производства "Разумный дом" не могут работать на одной шине с устройствами Uniel. Работа устройств ИВТМ на одной шине с устройствами, работающими по другим протоколам, не проверялась. Проверенная рабочая комбинация: Modbus + Milur (slave_id != 0xff) + Uniel на одной шине.


=== Доработка драйвера для поддержки новых устройств === <!--T:8-->
=== Доработка драйвера для поддержки новых устройств === <!--T:8-->


<!--T:9-->
<!--T:9-->
В качестве отправной точки смотрите статью [[Драйвер wb-homa-modbus:Примеры написания шаблонов|Драйвер wb-homa-modbus:Примеры написания шаблонов]], для дальнейшей поддержки [mailto:info@contactless.ru свяжитесь с нами].
В качестве отправной точки смотрите статью [[Драйвер wb-mqtt-serial:Примеры написания шаблонов|Драйвер wb-mqtt-serial:Примеры написания шаблонов]], для дальнейшей поддержки [mailto:info@contactless.ru свяжитесь с нами].
 


==Конфигурирование и запуск драйвера== <!--T:10-->
==Конфигурирование и запуск драйвера== <!--T:10-->
Строка 39: Строка 35:
wb-mqtt-serial -c /etc/wb-mqtt-serial.conf -d #запустить драйвер в принудительном отладочном режиме с указанием пути к конфигурационному файлу
wb-mqtt-serial -c /etc/wb-mqtt-serial.conf -d #запустить драйвер в принудительном отладочном режиме с указанием пути к конфигурационному файлу
</syntaxhighlight>
</syntaxhighlight>


== Конфигурационный файл драйвера == <!--T:12-->
== Конфигурационный файл драйвера == <!--T:12-->
Строка 48: Строка 43:
#Файл <code>/etc/wb-mqtt-serial.conf</code> имеет структуру ''порты (ports) -> устройства (devices)'': в файле есть описания физических портов контроллера, а внутри них - список устройств, которые подключены к этому порту.
#Файл <code>/etc/wb-mqtt-serial.conf</code> имеет структуру ''порты (ports) -> устройства (devices)'': в файле есть описания физических портов контроллера, а внутри них - список устройств, которые подключены к этому порту.
#:Для каждого порта указываются настройки (скорость, чётность и т.п.), а также протокол (Modbus, RTU, etc.)
#:Для каждого порта указываются настройки (скорость, чётность и т.п.), а также протокол (Modbus, RTU, etc.)
#:Для каждого устройства обязательно указывается его уникальный адрес на шине - ''slave_id''. Также можно указать другие необязательные параметры - смотрите полное описание формата [https://github.com/contactless/wb-homa-drivers/tree/master/wb-mqtt-serial в описании драйвера на нашем Github].
#:Для каждого устройства обязательно указывается его уникальный адрес на шине - ''slave_id''. Также можно указать другие необязательные параметры - смотрите полное описание формата [https://github.com/wirenboard/wb-mqtt-serial/blob/master/README.md в описании драйвера на нашем Github].
#Впишите конфигурацию для портов и подключённых устройств в файл, используя примеры ниже.
#Впишите конфигурацию для портов и подключённых устройств в файл, используя примеры ниже.
#Перезагрузите устройство ИЛИ выполните из консоли команду
#Перезагрузите устройство ИЛИ выполните из консоли команду
Строка 58: Строка 53:
#:<code>May  6 17:50:58 wirenboard user.notice modbus: FATAL: Error parsing config file: Failed to parse JSON: * Line <b>15</b>, Column 17</code>
#:<code>May  6 17:50:58 wirenboard user.notice modbus: FATAL: Error parsing config file: Failed to parse JSON: * Line <b>15</b>, Column 17</code>
#:- ищите ошибку в 15-й строке конфигурационного файла.
#:- ищите ошибку в 15-й строке конфигурационного файла.


===Пример конфигурации для [[Special:MyLanguage/WB-MRM2 Реле 2х канальное | модуля реле WB-MRM2]], подключённого к изолированному порту (RS-485-ISO) Wiren Board 4=== <!--T:14-->
===Пример конфигурации для [[Special:MyLanguage/WB-MRM2 Реле 2х канальное | модуля реле WB-MRM2]], подключённого к изолированному порту (RS-485-ISO) Wiren Board 4=== <!--T:14-->
Строка 84: Строка 78:
<!--T:16-->
<!--T:16-->
Полный список поддерживаемых типов устройств см. в статье [[Special:MyLanguage/Поддерживаемые устройства|Поддерживаемые устройства]], а также [https://github.com/contactless/wb-homa-drivers/blob/master/wb-homa-modbus/README.md#%D0%A2%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B0-%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%BE%D0%B2-device_type здесь].
Полный список поддерживаемых типов устройств см. в статье [[Special:MyLanguage/Поддерживаемые устройства|Поддерживаемые устройства]], а также [https://github.com/contactless/wb-homa-drivers/blob/master/wb-homa-modbus/README.md#%D0%A2%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B0-%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%BE%D0%B2-device_type здесь].


=== Пример конфигурационного файла для нескольких подключённых устройств === <!--T:17-->
=== Пример конфигурационного файла для нескольких подключённых устройств === <!--T:17-->
wb_editors
884

правки