Ошибки на WB-MAP3E

Есть линия RS485, на ней 3 энергомера, два WB-MAP3E и один WB-MAP6S. Один энергомер WB-MAP3E
сыпит ворнингами уже пару месяцев. На контроллере последняя тестовая прошивка, на энергомерах тоже.

Прикрепил дебаг логи. Подскажите куда копать

log_20240622T132232 (1).log (705.1 KB)
wb-mqtt-serial_20240622T132711.log (1.4 MB)

Добрый день.
Это - скорее вопрос шины.
Чуть теории:
Путь единичного запроса такой:
Порт контроллера → устройство.
Если устройство получило удачно запрос (верный CRC) - то оно отвечает. Если что-то с запросом не так (несуществующий регистр но CRC верен) - ответит ошибкой. Если в пакете не совпадает CRC - то молчит.
Это как раз основная причина таймаутов, если устройство “правильное”. Наши - правильные.
А вот если устройство удачно получило запрос но его ответ получен контроллером с ошибкой - как раз и будет запись в лог “invalid CRC”/
Из скриншота понятно что устройство 100 получает запрос удачно но его ответ испорчен.

При подключении этого же устройства единственным устройством на шине, заведомо исправным кабелем - так же? Ну и, кстати, терминатор стоит на шине?

терминатора нет, но все работало больше полугода. поставлю.
шина очень маленькая, сантиметров 40-50.

попробую отключить другие устройства

Нет, как раз отключить - не поможет если, например, внутри провода плохой контакт. Для уверенности - стоит подключить именно другим проводом.

Странная штука, отключил энергомеры с айди 95 и 31 (работали хорошо) в wb-serial но диод энергомера 95 опроса все равно моргает (опрос есть), а 31 просто светится (опроса нет, как и задумано). Если отключить энергомер 95 от питания – ошибок нет, только подключаю – сыпятся. Такое впечатление, будто энергомер 95 отвечает на команды энергомера 100. Такое может быть?

Целесообразно, как писал выше проверить физику сначала. Например - точно ли gnd изолированного порта соединен с gnd устройств.
Ну и - попробовать опросить с помощью modbus_client, остановив wb-mqtt-serial.

Отвечать может на широковещательный запросы Быстрого Modbus

Физику проверил, все хорошо

Mark Boychuk

А опрос с помощью modbus_client?
Он довольно показателен будет.

Опросить 95го или 100го?

Опрос через wb-mqtt-serial то работает, просто ошибки регулярно

Mark Boychuk

Одна-две в минуту вполне допустимы, в общем. Ну, если при опросе modbus_client’ом тоже будут - имеет смысл пробовать отдельным проводом.

Раньше такого не было, все работало минимум полгода нормально

Если дадите доступ - могу посмотреть сам, конечно. Но предварительно - проверьте еще раз что точно все ПО и прошивки актуальны.