Добрый день! В документации драйвера wb-mqtt-serial, а именно в разделе “Таймауты и количество неудачных циклов” описано как драйвер “позволяет тратить меньше времени на отключенные устройства”.
У меня для теста три одинаковых устройства на одном порту WB RS485 с адресами 1, 2 и 3 соответственно, у каждого устройства один Coil и один Holding, настроены с использованием шаблона.
Вопросы:
-
как сделать так, чтобы устройство попавшее в ограниченный режим опроса драйвером опрашивалось только по одному регистру (конкретному назначенному или первому в очереди опроса на данном этапе нет разницы).
-
При ошибке опроса драйвер следующий опрос такого устройства совершал через несколько циклов или через некоторое время. В идеальном варианте, чтобы драйвер ставил в отдельную очередь отсутствующие устройства и от попыток их найти в сети “не страдали” другие устройства, с которыми есть связь.
В шаблоне устройства добавил раздел “setup” с указанием регистра holding для попытки записи конкретного значения, но разницы в поведении драйвера не заметил. Каждый цикл происходит опрос всех устройств, их регистров с ожиданием ответа (500мс). Прикладываю изображение опроса, который повторяется с отключенными устройствами на 2 и 3 адресах, устройство с адресом 1 в сети и отвечает, но время между опросами такого устройства в сети не радует.
Оборудование: WB 8.4.4, релиз wb-2501
Устройства для теста виртуальные.