Термотроник АДИ-1-1 Описание протокола обмена онлайн [5/24] 443952

Термотроник АДИ-1-1 Описание протокола обмена онлайн [5/24] 443952
АДИ Описание протокола обмена с.5
сумму над всеми полями посылки, и затем результат вычисления добавляет в конец
посылки. Принимающее устройство, получив всю посылку, вычисляет контрольную
сумму кадра для всех байтов сообщения, исключая байты контрольной суммы. В
случае если принятая и вычисленная контрольные суммы равны, принимается
решение о достоверности принятого кадра. В противном случае кадр считается
недостоверным. Если прибор получает недостоверный кадр, он его игнорирует и не
посылает каких-либо ответных сообщений. Это означает, что система верхнего уровня
не получит ответа в течение ожидаемого времени и должна сделать повтор запроса.
Если же факт получения недостоверной посылки обнаружен системой верхнего уровня,
то она должна выполнить повтор запроса.
При передаче исходные двоичные данные кодируются. Начало и конец сообщения
помечены специальными маркерами. Началом сообщения всегда является символ
двоеточия : (0x3A в шестнадцатеричном представлении). Концом сообщения всегда
является пара символов «возврат каретки» (CR) и «перевод строки» (LF) (0x0D и 0x0A
соответственно в шестнадцатеричном представлении). Каждый байт двоичного
исходного сообщения передается в виде пары символов. Например, значение 27 (0x1B
в шестнадцатеричном представлении) будет представлено как пара символов ‘1’ (0x31
- символьное представление старших 4-х битов) и B (0x42 - символьное
представление младших 4-х битов). Допустимые символы для передачи - это
шестнадцатеричные символы 0-9, A-F. В качестве функции расчета контрольной суммы
используется Longitudinal Redundancy Checking (LRC). Пример функции расчета LRC
приведен в Приложении 1, а описание генерации контрольной суммы может быть
найдено в документации на сайте www.modbus.org. Примеры функций перекодировки
из двоичного представления в ASCII и из ASCII в двоичное представление приведены в
Приложении 2. Над двоичным содержимым буфера передачи сначала выполняется
расчет контрольной суммы. Затем двоичные данные вместе с полем контрольной
суммы подвергаются преобразованию в ASCII и затем результат дополняется
символами начала и конца кадра.
ADU «Modbus RTU»
В случае использования коммуникационного протокола «Modbus RTU» PDU
дополняется полями сетевой адрес и контрольная сумма.
Рисунок 2: ADU для «Modbus RTU»
Сетевой адрес служит для адресации прибора в сети. Контрольная сумма служит
для проверки целостности данных. Передающее устройство вычисляет контрольную
сумму над всеми полями посылки, и затем результат вычисления добавляет в конец
посылки. Принимающее устройство, получив всю посылку, вычисляет контрольную
сумму кадра для всех байтов сообщения, исключая байты контрольной суммы. В
случае, если принятая и вычисленная контрольные суммы равны, принимается
решение о достоверности принятого кадра. В противном случае кадр считается
недостоверным. Если прибор получает недостоверный кадр, он его игнорирует и не
посылает каких-либо ответных сообщений. Это означает, что система верхнего уровня
не получит ответа в течение ожидаемого времени и должна сделать повтор запроса.

Содержание

Скачать