Добрый день коллеги, знаю тема заезженная и лучшим ответом на мой вопрос это - Изучи гост и расшифруй, но вопрос срочной важности, поэтому надеюсь на понимание!
Нужно расшифровать 2 дампа максимально подробно.
Дамп МЭК104
104S0 12:52:57.628845 10.72.41.212 104 04 07 00 00 00
104S0 12:52:57.628949 10.72.41.212 > 104 04 11 00 00 00
104S0 12:52:58.036797 10.72.41.212 < 104 14 00 00 00 00 100 01 06 00 01 00 00 00 00 20
104S0 12:52:58.276925 10.72.41.212 104 14 00 00 02 00 100 01 07 00 01 00 00 00 00 20
Дамп Modbus
15:14:22.734 SMB_M[0 ]--->[01][0F][02][59][00][02][01][00][C3][78]
15:14:22.984 SMB_M[0 ]--[01][0F][02][59][00][02][05][A1]
15:09:57.869 SMB_M[0 ]--->[02][01][00][15][00][03][6D][FC]
15:09:58.114 SMB_M[0 ]--[02][01][01][01][90][0C]
16:50:52.701 SMB_M[2 ]--->[01][03][00][01][00][7E][94][2A]
16:50:52.725 SMB_M[2 ]--[01][83][03][01][31]
Заранее, большое спасибо!
- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Расшифровка пакетов протоколов 104 и Modbus
-
- не первый раз у нас
- Сообщения: 349
- Зарегистрирован: 06 фев 2020, 16:09
- Имя: Андрей
- город/регион: Екатеринбург
- Поблагодарили: 60 раз
Расшифровка пакетов протоколов 104 и Modbus
По modbus есть вот.
Т.е запрос
[01] - адрес
[0F] - функция (запись несколько дискретных выходов)
[02][59] - в какой регистр записывать
[00][02] - сколько регистров (бит) записать
[01] - кол-во байт записи
[00] - что записать (0000 0000) - т.е. в некоторые 2 бита запишется 0.
[C3][78] - crc
Ответ, при успешной записи, почти такой же.
Запрос
[02] - адрес
[01] - функция (чтение состояния выхода)
[00][15] - откуда читать
[00][03] - сколько бит читать
[6D][FC] - crc
Ответ
[02] - адрес
[01]- функция
[01]- сколько байт в ответе
[01] - один байт с состоянием выходов т.е. 0000 0001 (первые три бита справа - запрошенные, остальные лишь нули до полного байта)
[90][0C] - crc
Запрос
[01]- адрес
[03] функция (чтение аналогового выхода)
[00][01] - первый регистр чтения
[00][7E] - сколько регистров читать
[94][2A] - crc
Ответ
[01]- адрес
[83] - измененный код функции
[03] - код ошибки (в данном случае "недопустимая величина запроса")
[01][31] - crc
А логи для 104 должны быть подлиннее, и заканчиваться 16 (22), вроде как.
Т.е запрос
[01] - адрес
[0F] - функция (запись несколько дискретных выходов)
[02][59] - в какой регистр записывать
[00][02] - сколько регистров (бит) записать
[01] - кол-во байт записи
[00] - что записать (0000 0000) - т.е. в некоторые 2 бита запишется 0.
[C3][78] - crc
Ответ, при успешной записи, почти такой же.
Запрос
[02] - адрес
[01] - функция (чтение состояния выхода)
[00][15] - откуда читать
[00][03] - сколько бит читать
[6D][FC] - crc
Ответ
[02] - адрес
[01]- функция
[01]- сколько байт в ответе
[01] - один байт с состоянием выходов т.е. 0000 0001 (первые три бита справа - запрошенные, остальные лишь нули до полного байта)
[90][0C] - crc
Запрос
[01]- адрес
[03] функция (чтение аналогового выхода)
[00][01] - первый регистр чтения
[00][7E] - сколько регистров читать
[94][2A] - crc
Ответ
[01]- адрес
[83] - измененный код функции
[03] - код ошибки (в данном случае "недопустимая величина запроса")
[01][31] - crc
А логи для 104 должны быть подлиннее, и заканчиваться 16 (22), вроде как.
У вас нет необходимых прав для просмотра вложений в этом сообщении.