1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

modbus-sniffer - консольный сниффер MODBUS RTU

Ответить

Автор темы
Sergey_P
здесь недавно
здесь недавно
Сообщения: 63
Зарегистрирован: 26 мар 2018, 13:36
Имя: Сергей Поминовский
Страна: Украина
город/регион: Киев
Благодарил (а): 13 раз
Поблагодарили: 17 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Sergey_P »

Предлагаю всем желающим попробовать и оценить небольшую программу, которая позволяет просматривать пакеты MODBUS RTU, бегающие в сети RS485. Автор - я. Давно хотел сделать такую утилиту, но руки дошли только на днях, когда помогал коллегам в телефонном режиме разбираться со "странными глюками сети".

Программа написана на Java, исходники и скомпилированный файл - на GitHub.

Страница проекта:
https://github.com/sp20/modbus-mini

Программа modbus-sniffer:
https://github.com/sp20/modbus-mini/tre ... niffer.jar

Как пользоваться:
  1. Убедиться, что на компьютере установлена Java 8 (https://java.com/)
  2. Подключить преобразователь USB/RS485 к исследуемой сети (параллельно с другими устройствами)
  3. Запустить в командной строке (или сделать .cmd-файл):

    Код: Выделить всё

    java -jar modbus-sniffer.jar COM1 38400 N 2 modbus-log.txt
Номер COM-порта и параметры сети нужно знать заранее - режима сканирования пока нет.

Буду рад, если кому-нибудь пригодится.

Автор темы
Sergey_P
здесь недавно
здесь недавно
Сообщения: 63
Зарегистрирован: 26 мар 2018, 13:36
Имя: Сергей Поминовский
Страна: Украина
город/регион: Киев
Благодарил (а): 13 раз
Поблагодарили: 17 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Sergey_P »

Пример подключения к сети RS485:
rs485network.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17551
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 818 раз
Поблагодарили: 1647 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Jackson »

Главное - с количеством витков не ошибиться. Иначе сниффер ничего работать не будет. :)
По вопросам работы Форума можно обратиться по этим контактам.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17551
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 818 раз
Поблагодарили: 1647 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Jackson »

Sergey_P писал(а): 04 дек 2020, 22:31 Убедиться, что на компьютере установлена Java 8
Консольный сниффер полезен в поле или на выездах - быстренько посмотреть что там в линии творится. И вот ты взял ноутбук какой попался, скачал на него сниффер и побежал. Пришёл на место, развернул, и тут - упс! А Явы нет. И связи на месте нет в ноутбуке. Что делаем? Правильно - берём любой другой терминал в режиме сохранения лога, который прекрасно работает без Явы.

А без Явы никак нельзя?
По вопросам работы Форума можно обратиться по этим контактам.

Автор темы
Sergey_P
здесь недавно
здесь недавно
Сообщения: 63
Зарегистрирован: 26 мар 2018, 13:36
Имя: Сергей Поминовский
Страна: Украина
город/регион: Киев
Благодарил (а): 13 раз
Поблагодарили: 17 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Sergey_P »

Jackson писал(а): 11 фев 2021, 13:13 А без Явы никак нельзя?
Именно этот сниффер возник как "побочный" продукт при разработке библиотеки MODBUS для Java.
Теоретически, его можно переписать на C или другом языке и скомпилировать под Windows, Linux и т.п. Но это требует гораздо больше времени, которого у меня сейчас нет. Поэтому я и выложил его как есть.

На самом деле, Java - это скорее хорошо, чем плохо. Она реально позволяет сделать программу, которая будет работать под любой версией Windows и Linux. А установить Java Runtime Environment не так уж и сложно (кстати, в линуксах она обычно уже есть в дистрибутиве).

В принципе, для Windows можно "упаковать" java-программу в exe-файл вместе с виртуальной машиной (файл получится в районе 60 мегабайт). Но это, по-моему, извращение.
Jackson писал(а): 11 фев 2021, 13:13 Что делаем? Правильно - берём любой другой терминал в режиме сохранения лога, который прекрасно работает без Явы.
Может, бросите пару ссылок? Думаю, тут они будут уместны.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17551
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 818 раз
Поблагодарили: 1647 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Jackson »

Sergey_P писал(а): 11 фев 2021, 14:18 На самом деле, Java - это скорее хорошо, чем плохо.
Этот выбор есть только когда она сама есть. В других случаях выбора нет.

Отправлено спустя 27 секунд:
Sergey_P писал(а): 11 фев 2021, 14:18 Может, бросите пару ссылок?
В своё время мне надо было - нашёл гуглем за 5 минут.

Отправлено спустя 1 минуту 21 секунду:
Гипертерминал например. Пакеты не разбирает, но лог пишет. Писать лог умеет вообще любой терминал.
По вопросам работы Форума можно обратиться по этим контактам.
Аватара пользователя

Looker
эксперт
эксперт
Сообщения: 1108
Зарегистрирован: 09 фев 2011, 11:32
Имя: Дитрих Евгений Линусович
город/регион: Донецк
Благодарил (а): 321 раз
Поблагодарили: 218 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Looker »

Sergey_P писал(а): 11 фев 2021, 14:18Может, бросите пару ссылок? Думаю, тут они будут уместны.
Давно на каком-то форуме были хвалебные оды для Tera Term, попробовал - понравился, коллегам тоже понравился.
_______________________________________________
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу

Автор темы
Sergey_P
здесь недавно
здесь недавно
Сообщения: 63
Зарегистрирован: 26 мар 2018, 13:36
Имя: Сергей Поминовский
Страна: Украина
город/регион: Киев
Благодарил (а): 13 раз
Поблагодарили: 17 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Sergey_P »

Looker писал(а): 11 фев 2021, 18:21 Давно на каком-то форуме были хвалебные оды для Tera Term
Хочу заметить, что мой сниффер гораздо более узко специализирован. Всё, что он умеет - это отображать данные, принятые по RS485 в виде MODBUS-пакетов (он распознает запросы и ответы). Даже в этом виде он не претендует на полноту, т.к. распознает только наиболее популярные функции (1, 2, 3, 4, 5, 6, 15, 16). Но все равно, думаю, это удобнее, чем анализировать логи с сырыми данными.
Аватара пользователя

Looker
эксперт
эксперт
Сообщения: 1108
Зарегистрирован: 09 фев 2011, 11:32
Имя: Дитрих Евгений Линусович
город/регион: Донецк
Благодарил (а): 321 раз
Поблагодарили: 218 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Looker »

Sergey_P писал(а): 11 фев 2021, 19:29
Looker писал(а): 11 фев 2021, 18:21 Давно на каком-то форуме были хвалебные оды для Tera Term
Хочу заметить, что мой сниффер гораздо более узко специализирован.... Но все равно, думаю, это удобнее, чем анализировать логи с сырыми данными.
Согласен: узко специфицированный инструмент экономит время. TeraTerm я привел в качестве замены гипертерминала от M$ - проще в использовании и как оказалось еще куча возможностей, которых становится больше и больше.
_______________________________________________
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17551
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 818 раз
Поблагодарили: 1647 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Jackson »

Looker писал(а): 11 фев 2021, 18:21 хвалебные оды для Tera Term
Он понимает МодБас?

Отправлено спустя 24 минуты 26 секунд:
Looker писал(а): 12 фев 2021, 07:09 узко специфицированный инструмент экономит время
И тут же съедает сэкономленное на создание самого себя. :)
Выигрыш не во времени, а в качестве работы.
[+] это как у меня в электрической машине
Серьезная экономия на топливе, парковках и ТО - их попросту нет. Зато если собрать сэкономленное и ещё добавить то можно купить фирменные диски пошире под нестандартную разноширокую ассиметричную резину (которая, как и диски, караул сколько стоит вследствие нестандартности и редкости) и можно будет гонять на тех же скоростях что и на заряженных понторезках. Недалеко правда - батарейки надолго не хватит - но можно будет. Вопрос: нафига козе баян.
По вопросам работы Форума можно обратиться по этим контактам.
Аватара пользователя

Looker
эксперт
эксперт
Сообщения: 1108
Зарегистрирован: 09 фев 2011, 11:32
Имя: Дитрих Евгений Линусович
город/регион: Донецк
Благодарил (а): 321 раз
Поблагодарили: 218 раз

modbus-sniffer - консольный сниффер MODBUS RTU

Сообщение Looker »

Jackson писал(а): 12 фев 2021, 10:06
Looker писал(а): 11 фев 2021, 18:21хвалебные оды для Tera Term
Он понимает МодБас
Не разбирает, но удобнее, чем гипертерминал из Windows.
_______________________________________________
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
Ответить

Вернуться в «Полезное ПО»