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

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

Сообщение Jackson »

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

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

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

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

Сообщение Jackson »

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

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

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

Looker
почётный участник форума
почётный участник форума
Сообщения: 1113
Зарегистрирован: 09 фев 2011, 11:32
Имя: Дитрих Евгений Линусович
город/регион: Донецк
Благодарил (а): 323 раза
Поблагодарили: 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
почётный участник форума
почётный участник форума
Сообщения: 1113
Зарегистрирован: 09 фев 2011, 11:32
Имя: Дитрих Евгений Линусович
город/регион: Донецк
Благодарил (а): 323 раза
Поблагодарили: 218 раз

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

Сообщение Looker »

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

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

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

Сообщение Jackson »

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

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

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

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

Сообщение Looker »

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

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