Показано с 1 по 8 из 8

Тема: Modbus-снифер

  1. #1
    Пользователь
    Регистрация
    21.12.2011
    Адрес
    Северодвинск
    Сообщений
    438

    По умолчанию Modbus-снифер

    Коллеги, подскажите программку для прослушивания (подслушивания) линии, по которой Modbus гуляет.
    Advanced serial Com-port monitor слушает, но Modbus пакеты не умеет разбирать, все в кучу валит. Modbus Pull не умеет просто линию слушать, а хочет из себя мастера изобразить (или я с ним не разобрался??).
    Кто чем пользуется?

  2. #2
    Пользователь
    Регистрация
    21.12.2011
    Адрес
    Северодвинск
    Сообщений
    438

    По умолчанию

    Ну-у, разобрать непонятки с трафиком между ПЛК и панелью, к примеру. Подключив на линию комп.

  3. #3
    Пользователь
    Регистрация
    21.12.2011
    Адрес
    Северодвинск
    Сообщений
    438

    По умолчанию

    Зачем кодесис-то приплетать?
    Нужна сторонняя прога для РС. Два примера дал выше.
    Видел (давно) у приезжавшего наладчика, ноутом прицепился к сети из сотни приборов, задал маску для своих, увидел, что один из приборов периодически сильно тормозит с ответом, в течение часа решил проблему.
    Вот примерно такая нужна.

    Вот обзор подобного ПО на хабре
    https://habr.com/ru/post/281430/

    Но вот модбас+сниффер, - нет. Отсюда и вопрос.
    Последний раз редактировалось VaBo; 24.09.2020 в 16:35.

  4. #4

    По умолчанию

    Я недавно смотрел через купленный на Алишке логический анализатор Saleae. Стоит он там 2-5 тыр.
    Качаешь под него официальную прогу с сайта, и вуаля. Даже все данные байтов расшифровывает.
    Вот например общая картина. СПК1хх опрашивает пару датчиков: Saleae-Modbus-1.gif
    Слева идут запросы от СПК, а ответа нет (узкие палочки). В середине видно, что есть какой-то обмен с устройством (запросы и ответы).

    Вот увеличил крупнее: Saleae-Modbus-2.gif
    Слева огрызок пустого запроса, справа идут запрос-ответ, запрос-ответ.

    И вот как он декодирует данные, если линия в порядке: Saleae-Modbus-3.gif
    Видим данные в HEX: 2E, 03, 00 01, 00 01, D2 55.
    Расшифровываем: Адрес 2E (46), Команда чтения регистров (03), прочитать 1 штуку регистра с адресом 1, CRC (CRC можно сверять тут онлайн: https://crccalc.com/)
    Соображаем в моём примере, что запрос идёт к датчику с адресом 46, который я отключил. Вот СПК и долбится в него периодически.
    Причём можно даже увидеть (я про это позже напишу пост), что пока СПК (CodeSys v3) долбится в неотвечающее устройство, оно забивает и не опрашивает другие. То есть, видно что идут попытки связаться с мёртвым датчиком, и их много. А потом раз - и быстрый опрос датчика, который отвечает.

  5. #5
    Пользователь
    Регистрация
    21.12.2011
    Адрес
    Северодвинск
    Сообщений
    438

    По умолчанию

    Чем ОНО отличается от Advanced serial Com-port monitor? Только тем, что интересующие пакеты нужно искать в осциллограмме, а не в таблице (что неудобней, на мой взгляд).
    Но тайминги да, как на ладони...

  6. #6

    По умолчанию

    VaBo Тем, что тут показывается всё на сигнальном уровне.
    У меня одно устройство глючило так, что когда терминатор в линию подключаешь - оно переставало отвечать. И фиг знает почему.
    Анализатором тут можно посмотреть, что было кривое CRC посылок из-за того, что когда в линии был терминатор, устройство почему-то гадило в линию и выдавало кривые стартовые биты. А программа, которая работает с уже принятыми данными, не покажет этого. Точнее, покажет что-то типа CRC_ERROR, но не покажет почему.
    Я советую, потому что на Алишке эти анализаторы стоят копейки и тем, кто постоянно таким занимается, это будет удобнее. Тьфу, короче, это мой опыт, и я раньше от этого плевался и открещивался, а щас вот, пока с CodeSys v3 разбирался, всё это оценил.
    Например, по анализатору я увидел что в CodeSys v3 штатная реализация Modbus кривая: она опрашивает по одному регистру (запросу - строчке из конфигурации Slave) за один раз, а косяк вот в чём: если устройство не ответило, то CodeSys v3 ждёт указанный таймаут и.... пытается опросить второй регистр этого же устройства. И так далее.
    И в итоге общий таймут опроса устройства получается равен не тому таймауту, который мы задали в настройках слейва, а этом таймауту, умноженному на число регистров. И вот это ОФИГЕТЬ!

  7. #7

    По умолчанию

    Цитата Сообщение от VaBo Посмотреть сообщение
    Коллеги, подскажите программку для прослушивания (подслушивания) линии, по которой Modbus гуляет.
    Advanced serial Com-port monitor слушает, но Modbus пакеты не умеет разбирать, все в кучу валит. Modbus Pull не умеет просто линию слушать, а хочет из себя мастера изобразить (или я с ним не разобрался??).
    Кто чем пользуется?
    https://npulse.net/en/online-modbus

    умеет разбирать пакет

  8. #8
    Пользователь
    Регистрация
    31.01.2019
    Адрес
    РФ/РБ
    Сообщений
    917

    По умолчанию

    Возможно опять забанят, за стороннее ПО )
    IO Ninja.
    Бесплатен, при наличии инет соединения с их сервером во время работы.
    Лучшее, из того что встречал.

Похожие темы

  1. Ответов: 26
    Последнее сообщение: 31.01.2023, 17:42
  2. Снифер RS-485 из ПЛК110
    от Parovoz в разделе ПЛК1хх [М02]
    Ответов: 10
    Последнее сообщение: 25.10.2019, 14:00
  3. Ответов: 2
    Последнее сообщение: 04.06.2019, 16:55
  4. Ответов: 10
    Последнее сообщение: 10.06.2018, 16:36
  5. Ответов: 5
    Последнее сообщение: 14.10.2010, 14:42

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •