Ошибка на RS485 только в CRC

Коллеги, приветствую.

Порекомендуйте, пожалуйста, какие есть варианты решения проблемы.
Есть схема: SCADA + программный конвертер + радиомодуль + WB-MAI6.
Радиомодуль (master) подключен по RS485 к WB-MAI6 (единственный slave) витой парой с длиной около 30 см.
GND у устройств общая.
Обмен идёт пакетами до 30 байт (MODBUS RTU) примерно раз в минуту.
Проблема в том, что в 90% пакетов от WB-MAI6 на “конвертере” мы видим невалидный CRC. И при одинаковых значениях тела пакета, CRC либо всегда валидно, либо всегда с ошибкой.
Самое интересное, что ошибка в CRC в каком-либо одном бите. Сейчас на тестах мы CRC на “конвертере” пересчитываем и отправляем в SCADA.
В основном теле пакета ошибок нет - это видно по тому, что в SCADA значения приходят стабильно одинаковые и ожидаемые.
Ошибка между радиомодулем и конвертером исключена - там своё кодирование/валидация.

Что делали:

  1. Проверили соответствие: скорость, чётность, стоп-биты на WB-MAI6 и радиомодуле.
  2. Заменили кабель на UTP. До этого были два коротких провода.
  3. Понизили скорость обмена обоюдно с 9600 на 1200 бод.
    Не помогло.

Пока нет возможности подключить WB-MAI6 в RS485-USB напрямую, чтобы исключить RS485-интерфейс радиомодуля.

Можно ли что-то предпринять ещё кроме этого?

P.S. FW на WB-MAI6 версии 2.0.5.

Аккуратно предположу, что передатчик радиомодуля может быть источником помехи. Я бы поменял UTP на S/FTP и заземлил экран. И отнес радиомодуль подальше от WB-MAI6.

Спасибо за совет! Попробуем. И видимо придётся проверить на RS485-USB.

1 Like

Добавлю в топик информацию.
Подключили тем же кабелем WB-MAI6 к RS485-USB напрямую - ошибок нет.
Вернули WB-MAI6 на радиомодуль. Подключились к интерфейсу управлению радиомодуля - он на своём RS485 принимает пакеты с ошибками CRC.
Попробуем заменить радиомодуль.

1 Like

Эта тема была автоматически закрыта через 7 дней после последнего ответа. В ней больше нельзя отвечать.