Как подключить Modbus RTU-устройство стороннего производителя к контроллеру Wirenboard?
Протокол Modbus RTU - один из самых распространенных протоколов для связи устройств. Если устройство стороннего производителя поддерживает протокол Modbus RTU, значит, его можно будет подключить к контроллеру Wirenboard по данному интерфейсу. Список всех поддерживаемых контроллером протоколов можно найти в документации .
Рекомендуемый процесс подключения устройства стороннего производителя к контроллеру Wirenboard заключается в следующем.
- По документации нужно убедиться, что выбранное устройство имеет интерфейс RS-485 и поддерживает протокол Modbus RTU.
- Определить, какую информацию нужно считывать из устройства и номера регистров, которые хранят данную информацию.
- Физически подключить устройство устройство к контроллеру, руководствуясь рекомендациями по подключению
- Задать адреса устройствам и установить требуемые настройки связи. Настройки связи должны совпадать на обоих устройствах.
- Убедиться в работоспособности линии связи, используя утилиту modbus_client из командной строки контроллера. При этом необходимо, чтобы драйвер опроса устройств wb-mqtt-serial был остановлен.
- Создать шаблон устройства, в котором перечислить необходимые для опроса регистры, начальные настройки, задаваемые пользователем параметры. Также особое внимание нужно обратить на временные таймауты и интервалы, которые влияют на работу связи.
Важно! Стандарт Modbus RTU предполагает обязательный интервал тишины между фреймами данных в 3,5 символа. Однако для ускорения опроса Modbus-устройств производства Wirenboard этот интервал (frame_timeout_ms) используется только перед первым запросом к каждому следующему устройству в цикле опроса. Для соответствия требованиям протокола Modbus RTU требуется установка параметра guard_interval_us равного по длительности не менее 3,5 символа (бита) при выбранной скорости
- Для того, чтобы шаблон появился в перечне устройств в веб-интерфейсе контроллера нужно скопировать файл шаблона в папку на контроллере для пользовательских шаблонов /etc/wb-mqtt-serial.conf.d/templates. Чтобы шаблон появился в веб-интерфейсе иногда требуется несколько раз обновить страницу конфигурации со сбросом кеша (в Goole Chrome для этого используется сочетание клавиш Ctrl+F5)
- Дальше работать с новым шаблоном как обычно
Информация по теме на форуме
https://support.wirenboard.com/t/oshibki-pri-chtenii-bolid-s2000-pp/8080
https://support.wirenboard.com/t/request-timed-out/8344/17
https://support.wirenboard.com/t/oshibki-pri-chtenii-modbus-ustrojstv/8253
https://support.wirenboard.com/t/wb-mr6hv-i-perestalo-otvechat-po-modbus/8286/18