Мониторинг качества линии modbus

Добрый день!
В wb-mqtt-serial meta/error бинарны и не отображают % потерь, что дает мало информации при монтаже.
По аналогии с ZigBee, где есть linkquality, очень хочется видеть % ошибок по устройствам на modbus за определенный отрезок времени.

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

Если появиться какая-либо информация по этому поводу, можете написать?

С праздником!

Есть какая-либо новая информация?

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

1 лайк

Добрый день!
Есть ли новости?

А таймауты опроса modbus в логах разве не дают такую картину?

Нет, так как:

  1. Текстовый формат необходимо парсить регулярками. Это как минимум не удобно.
  2. В штатном режиме (без debug) не видно количества успешных попыток. Если устройство отключено полностью, количество ошибок будет значительно ниже, чем если бы устройство было подключено плохо, так как устройство будет опрашиваться реже. Из-за чего складывается впечатление, что количество ошибок в норме.
  3. Включать debug - это писать огромное количество данных в лог.

Нужно обязательно видеть количество попыток и количество ошибок, чтобы правильно судить о качестве линии modbus.

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

Например мне не очень понятно, зачем количественно измерять качество линии. Обычно ошибок вообще не возникает, а если возникают, то измерять их можно в штуках в час или в день.

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

Видимо, Zeta хочет что-то наподобие ping, только для modbus - чтобы не ждать 1-2 часа пока там что-то появится в логах, а сразу запустить некую утилиту, которая за короткий промежуток протестирует потери до устройства или сразу всю шину.

Не, тут скорее удобство во время монтажа и удобство быстрой оценки общей картины соединений.
Удобно, когда открыл окно и видишь, что A устройство в основном подключено, а с B что-то не так. Просто бывают ситуации, когда ошибки появляются и исчезают каждую секунду, это маячит перед глазами и, например, если открыть страницу/консоль в неподходящий момент, будет казаться, что ошибок нет.

Чтобы получить качество в % мы сейчас парсим логи от wb-mqtt-serial перенаправляя их в сокет в режиме debug, но такая надстройка не выглядит красиво и есть проблемы с обновлениями.

Измерять в штуках пробовали, но количество ошибок будет зависеть от:

  1. Количества регистров в устройстве
  2. Фактического наличия подключения, так как если устройство не подключено вовсе, ошибок будет мало.

Можете описать методику, что именно считается и как оценивается?

Довольно просто, считаем по каждому устройству колчество попыток чтения/записи, например за минуту, и считаем количество ошибок. Из этих даннных получаем %, считаем скользящее среднее и выводим в отчет.

Это с включенным debug в wb-mqtt-serial?

Да

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

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

1 лайк