Восстановление опроса по шине RS-485 WB6

В наличии тестовый WB6, который побывал в руках нескольких инженеров, и что с ним делали, уже сложно сказать.

При подключении устройств на шину RS-485, видно что опрос идет (моргают светодиоды опрашиваемых устройств), но в веб-интерфейсе значения регистров не отображаются.
Подключали два разных модуля на шину, результат одинаковый.
Эти же устройства при опросе через Modbus Pool работают корректно.

2020-02-20_110705

При этом, если переключать реле через интерфейс, реле переключаются на модуле.

Подскажите, что проверить, обновить, заменить?
Как восстановить работу?

Добрый день!

Думаю, самое простое - https://wirenboard.com/wiki/index.php/Обновление_прошивки#.D0.A1.D0.B1.D1.80.D0.BE.D1.81_Wiren_Board_6_.D0.BA_.D0.B7.D0.B0.D0.B2.D0.BE.D0.B4.D1.81.D0.BA.D0.B8.D0.BC_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B0.D0.BC

Выполнен сброс к заводским настройкам с помощью USB-флешки с последней прошивкой.
К сожалению, это не решило проблему, опроса по шине RS-485 так и нет.
Проверено на обоих портах.

В логах повторяющиеся ошибки:

Сводка

Mar 1 19:43:20 wirenboard-AC5ZUMJN user.notice serial: ModbusRTU::ReadRegisterRange(): failed to read 1 holding(s) @ 8 of device modbus:29: Serial protocol error: malformed response: invalid data size
Mar 1 19:43:20 wirenboard-AC5ZUMJN user.notice serial: device modbus:29 disconnected
Mar 1 19:43:21 wirenboard-AC5ZUMJN user.notice serial: ModbusRTU::ReadRegisterRange(): failed to read 1 holding(s) @ 8 of device modbus:29: Serial protocol error: malformed response: invalid data size
Mar 1 19:43:21 wirenboard-AC5ZUMJN user.notice serial: device modbus:29 disconnected
Mar 1 19:43:22 wirenboard-AC5ZUMJN user.notice serial: ModbusRTU::ReadRegisterRange(): failed to read 1 holding(s) @ 8 of device modbus:29: Serial protocol error: malformed response: invalid data size
Mar 1 19:43:22 wirenboard-AC5ZUMJN user.notice serial: device modbus:29 disconnected

Что делать?
Как вернуть жизнь?

  1. Попробуйте пожалуйста отключать от шины устройства по одному. Возможно дело в том, что у двух внешних устройств получился одинаковый адрес
  2. Проверьте, установлены ли терминаторы на WB
  1. Пробовали разное кол-во модулей, и один в том числе на линии оставляли, нет связи.
    Адреса корректные.
  2. Как проверить наличие терминаторов на WB?

Терминаторы - перемычки снизу слева на контроллере. Одна красная, одна синяя, подписаны как “Terminators”

Надо именно логи смотреть. Там так же malformed response invalid data size, если одно устройство на линии? Прошу повторить эксперимент ещё раз: отключить контроллер от линий RS-485, подключить ОДНО внешнее устройство по RS-485 отдельным коротким кабелем.

Логи выше сняты именно при таком подключении:
1 устройство по витой паре длиной 20 см.

Наличие терминаторов чуть позже проверим.

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

  1. Терминаторы (синий и красный) стоят на своих местах.
  2. Параметры подключения по умолчанию (9600, N, 8, 2).
    Повторюсь, с этими параметрами модули при опросе через Modbus Pool работают корректно, доступны все регистры.

Что еще можно проверить?

Возможно, дело в какой-то физической неисправности именно этого образца Wiren Board 6.

  1. Есть ли возможность, оставив модуль и линию, заменить Wiren Board 6 на другой, и с него выполнить опрос?
  2. С предположительно неисправного Wiren Board попробуйте опросить модуль через modbus_client (остановив wb-mqtt-serial).
  1. На другом WB модуль опрашивается корректно.

  2. modbus_client --debug -mrtu -pnone -s2 /dev/ttyRS485-1 -a29 -t0x03 -r0x80
    Opening /dev/ttyRS485-1 at 9600 bauds (N, 8, 2)
    [1D][03][00][80][00][01][87][BE]
    Waiting for a confirmation…
    <00><00><00><1D><03>
    ERROR CRC received 1D03 != CRC calculated 71C0
    ERROR occured!

Мне кажется, физические испортили порты. Если есть платку, можно добавить третий порт через разъём расширения, и проверить на нём.
Также можете отправить контроллер к нам на платную диагностику/ремонт.

Контроллер передадим в ремонт, спасибо!
Возможно, гарантийный случай, приобретался менее 2-х лет назад.

Хорошо. Для ремонта напишите, пожалуйста, на info@contactless.ru со ссылкой на эту тему.
Гарантийный случай возможен, но мне кажется маловероятным: похожих проблем пока не встречали.

Как это сочетается с железной проблемой порта?

Признаю, забыл этот факт. Но с учётом того, что перепрошивка не помогла, уже в любом случае не знаю, чем помочь. Думаю, у нас проверить будет быстрее.

Это набор, возможно, полезных, исходных данных для детектирования проблемы производителем.

передаёт данные хорошо, принимает плохо

2 лайка

Контроллер передал в ремонт Дмитрию

1 лайк