WB-MGE v.2 и v.3 ни с чем не живёт на одной шине

на всякий случай можете прикрепить диагархив, пожалуйста?

как я понимаю логи - 168 устройство, регистр 97, чтение двух подряд

физически оно в 3-4 метрах от дальнего MGE и это там не самое дальнее устройство.

приложен диагностический архив, доступен только сотрудникам поддержки
(520.0 KB)

Добрый день.

К сожалению, схема с объединением двух сегментов шины RS-485 имеет ряд ограничений и в вашем применении не будет стабильно работать. Более подробно ограничения описаны в документации.

Проблема здесь, скорее, архитектурная и связана со следующими фактами:

  • На “дальний” (относительно контроллера) сегмент шины RS-485 пересылаются запросы и ответы “ближнего” к контроллеру slave-устройства. Это “нагружает” мост и “дальнюю” шину лишними сообщениями и может приводить к потере, склеиванию или большой задержке пакетов. Чтобы это обойти необходимо значительно увеличить задержку перед отправкой очередного запроса (параметр “Задержка перед записью в порт” в настройках порта RS-485 в контроллере). В этом случае, надо понимать, что значительно увеличится и период опроса устройств.
  • Арбитраж Быстрого Modbus между устройствами, подключенными на разных сегментах шины, невозможен в принципе из-за задержки передачи данных. В арбитраже всегда будут выигрывать устройства, находящиеся на “ближней” к контроллеру шине. Соответственно, опрос по Быстрому Modbus устройств на “дальней” шине не будет работать.

Применительно к вашему случаю, рекомендуем исключить из схемы “ближний” шлюз, оставив только “дальний” шлюз и подключив его к контроллеру по Ethernet или Wi-Fi, как было предложено выше. С точки зрения быстродействия и надежности, рекомендуется, конечно, подключение по Ethernet.

Также у контроллера Wiren Board есть второй порт Ethernet, можно использовать его для подключения WB-MGE v.3, чтобы обойтись без Ethernet-коммутатора.

В любом случае, даже применение Ethernet-коммутатора не вносит значительной ненадежности в схему. Даже простейшие недорогие коммутаторы работают годами в режиме 24/7.

Добрый день

Ваша версия понятна, спасибо. Работать вменяемо не будет.

Но два замечания:

  1. Жаль, что ссылаясь на описанное в документации вы не уточнили, что описаны в ней эти все ограничения и особенности прямо вот сегодня, 20 мая - создаётся впечатление что там это было всегда и открывая тикет 4 марта я их не заметил.

  2. Это не объясняет (или мне не хватает знаний понять) почему всё начинает не работать даже если на ближнем конце на шине просто появляется устройство отключённое от опроса - оно же пассивное и в обмене не участвует.

Добрый день.

  1. Да, извиняюсь, документацию действительно только вчера дополнили после того, как разобрались в корне проблемы. Редкий кейс, когда на оба сегмента шины ставят slave-устройства, поэтому данная проблема не была обнаружена раньше и описана в документации.
  2. Дело в Быстром Modbus. Даже если отключен опрос “ближнего” устройства, оно все-равно участвует в арбитраже при ответе на широковещательные запросы Быстрого Modbus от контроллера, тем самым не давая “дальнему” устройству корректно ответить на запрос.

Быстрый модбас…

Тогда выглядит вполне такой затычкой проблемы отключить быстрый модбас.

В моём случае всё началось с WB-UPS и от него вот быстрый модбас мне ни куда не нужен и могу спокойно отключить.

Сейчас с ходу сунулся в настройки и не нашёл, но мне казалось видел что у параметров которые умеют быстрый есть вариант это отключить.

Мне показалось ?

Как-то можно выброчно для устройств отключить быстрый модбас ?

Нет, Быстрый Modbus так просто не получится отключить, такая возможность не предусмотрена.

Если у устройств на обоих сегментах шины RS-485 нет регистров, у которых задан опрос по Быстрому Modbus, можете попробовать задать в настройках порта RS-485 в контроллере значение параметра «Задержка перед записью в порт» в 50000 мкс (для скорости 9600 бод, если скорость выше, можно будет немного уменьшить значение задержки).

Также не забудьте задать параметр «Таймаут ответа» (250 мс).

В этом случае “дальнее” устройство не будет обнаруживаться при быстром сканировании, необходимо использовать “медленное сканирование” (если добавляете устройство заново).

И также период опроса устройств будет довольно большим (единицы секунд).

Данный способ не рекомендуется, т.к. не обеспечит корректный опрос событийных регистров Быстрого Modbus. Но если вы точно уверены, что таких регистров нет, то можете в качестве эксперимента сделать так, как указал выше.

Все-же рекомендуется отказаться от проброса шины RS-485 через два WB-MGE v.3 и использовать только один шлюз WB-MGE v.3, подключив его к контроллеру через Ethernet. Это и уменьшит период опроса устройств, и позволит Быстрому Modbus работать корректно.

Эххх. Понятно. “Спасенья нет” :slight_smile:

Но хорошо бы, конечно, выключатель иметь. Если не на уровне каждого устройства (это все прошивки менять), то хотя бы на уровне настроек опроса каждого канала модбаса чек-боксик “Не применять быстрый модбас”.

Причина - ну вот примерно на такие случаи - раз вы придумали быстрый модбас и он, всё же, при всех страниях сделать его прозрачным, может мешать, то вам как авторам и рубильник предусмотреть не плохо бы.