Показано с 1 по 10 из 504

Тема: В продаже МКОН - преобразователь протокола Modbus!

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    значит стоит найти нормальный просмотрщик RS485, потому что
    11:23:55 RX : [HEX] 3f 2 12 74 0 2 3f 3f
    и
    11:14:25 RX : [HEX] 3f 2 12 3f 0 1 3f c
    как бы Вы не писали что обращение к разным адресам, в лог пишется как будто идет обращение на один и тот же адрес 3f что не верно как по сути обмена двух слейвов, так и по контрольным суммам
    Например так:

    При опросе bool регистров контроллера с адресом 246 ответ полноценный, например:
    Packet: MODBUS Request (packet size: 8, data size: 4), 2025‐05‐22 16:25:37.602401 +0.000000
    Mode: RTU Mode
    Address: 246 (Slave)
    Function: 2 (Read Discrete Inputs)
    Starting Address: 4724
    Quantity: 2
    CRC: 61097 (OK)
    Packet: MODBUS Response (packet size: 6, data size: 2), 2025‐05‐22 16:25:37.714816 +0.000000
    Mode: RTU Mode
    Address: 246 (Slave)
    Function: 2 (Read Discrete Inputs)
    Starting Address: 4724
    Quantity: 8
    Values: Input0: 0 Input1: 0 Input2: 0 Input3: 0 Input4: 0 Input5: 0 Input6: 0 Input7: 0
    CRC: 64659 (OK)

    При опросе bool регистров (по контуру ГВС) контроллера с адресом 247 ответ полноценный, например:
    Packet: MODBUS Request (packet size: 8, data size: 4), 2025‐05‐22 16:33:21.138886 +0.000000
    Mode: RTU Mode
    Address: 247 (Slave)
    Function: 2 (Read Discrete Inputs)
    Starting Address: 4325
    Quantity: 2
    CRC: 27384 (OK)
    Packet: MODBUS Response (packet size: 6, data size: 2), 2025‐05‐22 16:33:21.342707 +0.000000
    Mode: RTU Mode
    Address: 247 (Slave)
    Function: 2 (Read Discrete Inputs)
    Starting Address: 4325
    Quantity: 8
    Values: Input0: 1 Input1: 0 Input2: 0 Input3: 0 Input4: 0 Input5: 0 Input6: 0 Input7: 0
    CRC: 49235 (OK)

    А вот при опросе bool регистров (по контуру вентиляции) того же контроллера с адресом 247 ответ меньше на 1 байт (байт с данными), например:
    Packet: MODBUS Request (packet size: 8, data size: 4), 2025‐05‐22 16:39:39.603747 +0.000000
    Mode: RTU Mode
    Address: 247 (Slave)
    Function: 2 (Read Discrete Inputs)
    Starting Address: 4911
    Quantity: 1
    CRC: 4504 (OK)
    Packet: MODBUS Response (packet size: 5, data size: 1), 2025‐05‐22 16:39:39.780263 +0.000000
    Mode: RTU Mode
    Address: 247 (Slave)
    Function: 2 (Read Discrete Inputs)
    CRC: 37376 (OK)

  2. #2
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,658

    По умолчанию

    Цитата Сообщение от vorobev22rus Посмотреть сообщение
    Packet: MODBUS Response (packet size: 5, data size: 1), 2025‐05‐22 16:39:39.780263 +0.000000
    Mode: RTU Mode
    Address: 247 (Slave)
    Function: 2 (Read Discrete Inputs)
    CRC: 37376 (OK)
    проблема не в МКОНе а в слейве, 37376 получается от контрольной суммы 9200, а ответный пакет должен быть таким F7 02 01 00 92 00, что означает что сумма в DEC должна считаться от 0092, поэтому и ошибка. И как я говорил проверить такую же ошибкы можно было бы и в первом слейве по адресу 246
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  3. #3

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    проблема не в МКОНе а в слейве, 37376 получается от контрольной суммы 9200, а ответный пакет должен быть таким F7 02 01 00 92 00, что означает что сумма в DEC должна считаться от 0092, поэтому и ошибка. И как я говорил проверить такую же ошибкы можно было бы и в первом слейве по адресу 246
    Вы про это:
    Packet: MODBUS Request (packet size: 8, data size: 4), 2025‐05‐22
    16:25:37.602401 +0.000000
    Mode: RTU Mode
    Address: 246 (Slave)
    Function: 2 (Read Discrete Inputs)
    Starting Address: 4724
    Quantity: 2
    CRC: 61097 (OK)
    Packet: MODBUS Response (packet size: 6, data size: 2), 2025‐05‐22
    16:25:37.714816 +0.000000
    Mode: RTU Mode
    Address: 246 (Slave)
    Function: 2 (Read Discrete Inputs)
    Starting Address: 4724
    Quantity: 8
    Values:Input0: 0 Input1: 0 Input2: 0 Input3: 0 Input4: 0 Input5: 0 Input6: 0 Input7: 0
    CRC: 64659 (OK)

    Так ошибок нет

  4. #4
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,658

    По умолчанию

    Цитата Сообщение от vorobev22rus Посмотреть сообщение
    А вот при опросе bool регистров (по контуру вентиляции) того же контроллера с адресом 247 ответ меньше на 1 байт (байт с данными), например:
    Packet: MODBUS Request (packet size: 8, data size: 4), 2025‐05‐22 16:39:39.603747 +0.000000
    Mode: RTU Mode
    Address: 247 (Slave)
    Function: 2 (Read Discrete Inputs)
    Starting Address: 4911
    Quantity: 1
    CRC: 4504 (OK)
    Packet: MODBUS Response (packet size: 5, data size: 1), 2025‐05‐22 16:39:39.780263 +0.000000
    Mode: RTU Mode
    Address: 247 (Slave)
    Function: 2 (Read Discrete Inputs)
    CRC: 37376 (OK)
    здесь опрашивается адрес 4911 по одной катушке, ответ в отличии от остальных не печатает ни Starting Address ни Quantity ни Values, сразу переходит к контрольной сумме которая не верная

    ЗЫ поставте адреса 4 и 5 и проблема должна уйти
    Последний раз редактировалось capzap; 27.05.2025 в 13:11.
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  5. #5

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    здесь опрашивается адрес 4911 по одной катушке, ответ в отличии от остальных не печатает ни Starting Address ни Quantity ни Values, сразу переходит к контрольной сумме которая не верная
    Так собственно об этом я и создал пост. Предположение Тех.поддержки ОРС - мне кажется верным: и это ПО (с расшифровкой) и МКОН одинаково видят контрольную сумму и считают, что пакет закончился. Терминал же показывает что количество байт одинаковое и на 247 и на 246. Когда опрашиваю через СОМ порт напрямую - ошибок нет. Вопрос как сделать чтобы Шлюз дожидался весь пакет. Почему контрольная сумма неверная?

  6. #6
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,658

    По умолчанию

    Цитата Сообщение от vorobev22rus Посмотреть сообщение
    Так собственно об этом я и создал пост. Предположение Тех.поддержки ОРС - мне кажется верным: и это ПО (с расшифровкой) и МКОН одинаково видят контрольную сумму и считают, что пакет закончился. Терминал же показывает что количество байт одинаковое и на 247 и на 246. Когда опрашиваю через СОМ порт напрямую - ошибок нет. Вопрос как сделать чтобы Шлюз дожидался весь пакет. Почему контрольная сумма неверная?
    сперва определяется что пакет закончил пересылаться по паузе в 3,5 символа, потом считается КС и сравнивается что пришло в КС в пакете, сколько байт данных всего прописано в третьем байте посылки, если программисты ошиблись и ошибочно воспроизвели этот алгоритм в мконе, третий раз предлагаю адрес 247 поменять на 5
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  7. #7

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    сперва определяется что пакет закончил пересылаться по паузе в 3,5 символа, потом считается КС и сравнивается что пришло в КС в пакете, сколько байт данных всего прописано в третьем байте посылки, если программисты ошиблись и ошибочно воспроизвели этот алгоритм в мконе, третий раз предлагаю адрес 247 поменять на 5
    Вы думаете адрес может повлиять на итоговый пакет? Хорошо, попробую. И попробую совет imaex (объект удаленный, завтра/послезавтра доеду), по результату отпишусь.

  8. #8
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,658

    По умолчанию

    Цитата Сообщение от vorobev22rus Посмотреть сообщение
    Вы думаете адрес может повлиять на итоговый пакет?
    да, потому что этот адрес(247) может вносить причудливые формы в генерацию CRC, как на скринах в этом посте https://owen.ru/forum/showthread.php...l=1#post463458, потому что в этой теме изображения не добавляются
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

Похожие темы

  1. Ответов: 7
    Последнее сообщение: 06.09.2018, 10:14
  2. Поддержка протокола ModBus ТРМ138
    от sega в разделе Помощь Разработчикам
    Ответов: 1
    Последнее сообщение: 27.07.2011, 07:52
  3. Аварийное завершение OPC для протокола Modbus
    от !nferno в разделе Сетевые технологии
    Ответов: 0
    Последнее сообщение: 29.06.2011, 07:17
  4. Поддержка OPM2 протокола ModBus
    от AndreyS в разделе Разработки
    Ответов: 2
    Последнее сообщение: 21.10.2007, 10:37

Ваши права

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