Конфигурация: Иридиум сервер на RPi, WB-MGE, MSW v.3, M1W2, MAP3E.
Наблюдаю периодическую недоступность modbus устройств. Через 5-15 минут како-либо устройство становится недоступно на один опрос, потом снова продолжает работать.
Настройки обмена по modbus выставлены стандартные.
Техподдержка Иридиум сказала следующее:
Иридиум по умолчанию отправляет регистрам Coil и Holding команды fc5 и fc6. Если ПЛК не поддерживает эти команды, он должен вернуть ошибку 01. После этого Иридиум переключится на отправку команд fc15 и fc16 . Если контроллер не возвращает ошибку 01, переключение на fc15 и fc16 не произойдет.
WB-MGE просто получает команды по TCP, и пересылает их по RS-485, в нём нет никакой собственной логики. Это конвертер с протоколом Modbus RTU over TCP.
Про
Как я понял, это они говорят по коды функций чтения и записи Modbus, просто называют это странно: Протокол Modbus — Wiren Board (это наш перевод документации к Modbus).
В вашем случае, так как у вас датчики и счётчики, то идёт, скорее всего, только чтение. Из всех перечисленных типов нет ни одного про чтение.
Обе команды чтения (коды 3 и 4) наши устройства поддерживают.
Запросите у них “как получить логи общения iRidium server с устройством Modbus”.