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

Подготовка страницы к переводу
(Подготовка страницы к переводу)
Строка 1: Строка 1:
<languages/>
<translate>
'''Внимание!''' Драйвер ''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>. Учитывайте это, если используете устаревшие прошивки.




'''Драйвер wb-mqtt-serial''' отвечает за работу с подключёнными по [[RS-485]] устройствами в Wiren Board. Он обеспечивает работу с подключёнными устройствами через систему [[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].
 


==Поддерживаемые устройства==
==Поддерживаемые устройства==
В настоящее время поддерживается работа с [[Периферийные устройства с интерфейсом RS-485 серии WB-xxxx | устройствами с интерфейсом Modbus нашего производства]], счётчиками Меркурий и Милур, а также с некоторыми другими устройствами, в том числе работающими по протоколу Modbus. Полный список протестированных устройств: [[Поддерживаемые устройства#Подключаемые по RS-485]].
 
В настоящее время поддерживается работа с [[Special:MyLanguage/Периферийные устройства с интерфейсом RS-485 серии WB-xxxx | устройствами с интерфейсом Modbus нашего производства]], счётчиками Меркурий и Милур, а также с некоторыми другими устройствами, в том числе работающими по протоколу Modbus. Полный список протестированных устройств: [[Special:MyLanguage/Поддерживаемые устройства#Подключаемые по RS-485|Поддерживаемые устройства#Подключаемые по RS-485]].
 
=== Поддержка устройств различных протоколов на одной шине ===
=== Поддержка устройств различных протоколов на одной шине ===
Использовать устройства с разными протоколами на одной шине возможно, но необходимо учитывать особенности конкретных протоколов.
Использовать устройства с разными протоколами на одной шине возможно, но необходимо учитывать особенности конкретных протоколов.


Например, фреймы устройств 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 на одной шине.


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


==Конфигурирование и запуск драйвера==
==Конфигурирование и запуск драйвера==
Конфигурация драйвера задаётся в файле <code>/etc/wb-mqtt-serial.conf</code>. Если такой файл создан, драйвер запускается при загрузке контроллера автоматически. Также драйвером можно управлять в ручном режиме из консоли:
Конфигурация драйвера задаётся в файле <code>/etc/wb-mqtt-serial.conf</code>. Если такой файл создан, драйвер запускается при загрузке контроллера автоматически. Также драйвером можно управлять в ручном режиме из консоли:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
Строка 22: Строка 32:
wb-mqtt-serial -c /etc/wb-mqtt-serial.conf -d #запустить драйвер в принудительном отладочном режиме с указанием пути к конфигурационному файлу
wb-mqtt-serial -c /etc/wb-mqtt-serial.conf -d #запустить драйвер в принудительном отладочном режиме с указанием пути к конфигурационному файлу
</syntaxhighlight>
</syntaxhighlight>


== Конфигурационный файл драйвера ==
== Конфигурационный файл драйвера ==
Для работы драйвера нужно отредактировать файл <code>/etc/wb-mqtt-serial.conf</code>. Обычный пользователь может воспользоваться способом [[RS-485:Настройка через веб-интерфейс]], который тоже приводит к правильному заполнению файла конфигурации. Однако отредактировать файл можно и вручную, для этого:
 
#Ознакомьтесь с инструкцией [[Просмотр файлов контроллера с компьютера]]
Для работы драйвера нужно отредактировать файл <code>/etc/wb-mqtt-serial.conf</code>. Обычный пользователь может воспользоваться способом [[RS-485:Настройка через веб-интерфейс|RS-485:Настройка через веб-интерфейс]], который тоже приводит к правильному заполнению файла конфигурации. Однако отредактировать файл можно и вручную, для этого:
#Ознакомьтесь с инструкцией [[Special:MyLanguage/Просмотр файлов контроллера с компьютера|Просмотр файлов контроллера с компьютера]]
#Файл <code>/etc/wb-mqtt-serial.conf</code> имеет структуру ''порты (ports) -> устройства (devices)'': в файле есть описания физических портов контроллера, а внутри них - список устройств, которые подключены к этому порту.
#Файл <code>/etc/wb-mqtt-serial.conf</code> имеет структуру ''порты (ports) -> устройства (devices)'': в файле есть описания физических портов контроллера, а внутри них - список устройств, которые подключены к этому порту.
#:Для каждого порта указываются настройки (скорость, чётность и т.п.), а также протокол (Modbus, RTU, etc.)
#:Для каждого порта указываются настройки (скорость, чётность и т.п.), а также протокол (Modbus, RTU, etc.)
Строка 39: Строка 51:
#:- ищите ошибку в 15-й строке конфигурационного файла.
#:- ищите ошибку в 15-й строке конфигурационного файла.


===Пример конфигурации для [[WB-MRM2 Реле 2х канальное | модуля реле WB-MRM2]], подключённого к изолированному порту (RS-485-ISO) Wiren Board 4===
 
===Пример конфигурации для [[Special:MyLanguage/WB-MRM2 Реле 2х канальное | модуля реле WB-MRM2]], подключённого к изолированному порту (RS-485-ISO) Wiren Board 4===
 
<syntaxhighlight lang="javascript">{
<syntaxhighlight lang="javascript">{
     "ports": [
     "ports": [
Строка 58: Строка 72:
     ]
     ]
}</syntaxhighlight>
}</syntaxhighlight>
Узнать файл, соответствующий порту для вашего контроллера - [[RS-485#Реализация портов в разных версиях Wiren Board ]].
Узнать файл, соответствующий порту для вашего контроллера - [[Special:MyLanguage/RS-485#Реализация портов в разных версиях Wiren Board |RS-485#Реализация портов в разных версиях Wiren Board ]].
 
Полный список поддерживаемых типов устройств см. в статье [[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 здесь].


Полный список поддерживаемых типов устройств см. в статье [[Поддерживаемые устройства]], а также [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 здесь].


=== Пример конфигурационного файла для нескольких подключённых устройств ===
=== Пример конфигурационного файла для нескольких подключённых устройств ===
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">


Строка 127: Строка 143:
}
}
</syntaxhighlight>
</syntaxhighlight>
</translate>
12 063

правки