• обязательно заполнить свой профиль на русском языке кириллицей
  • не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему
  • дублирование сообщений приравнивается к спаму
  • за поиск и предложение пиратского ПО - бан без предупреждения
  • рекламу и частные объявления "куплю/продам" мы не размещаем ни на каких условиях

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

Ответить

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

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
здесь недавно
здесь недавно
Сообщения: 51
Зарегистрирован: 26 мар 2018, 13:36
Имя: Сергей Поминовский
Страна: Украина
город/регион: Киев
Благодарил (а): 9 раз
Поблагодарили: 12 раз

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

Сообщение Sergey_P »

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

Аватара пользователя

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

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

Сообщение Jackson »

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

Аватара пользователя

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

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

Сообщение Jackson »

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

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


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

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
администратор
администратор
Сообщения: 12551
Зарегистрирован: 17 июн 2008, 15:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 307 раз
Поблагодарили: 541 раз

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

Сообщение Jackson »

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

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

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

Аватара пользователя

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

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

Сообщение Looker »

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


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

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

Сообщение Sergey_P »

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

Аватара пользователя

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

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

Сообщение Looker »

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

Аватара пользователя

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

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

Сообщение Jackson »

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

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

Аватара пользователя

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

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

Сообщение Looker »

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

Ответить

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