Протокол данных Modbus RTU

Протокол Modbus RTU предполагает одно активное (запрашивающее) устройство в линии (master), которое может передавать команды одному или нескольким пассивным устройствам (slave), обращаясь к ним по уникальному в линии адресу. Синтаксис команд протокола позволяет адресовать 247 устройств на одной линии связи стандарта RS-485 (реже RS-422 или RS-232 ).

Инициатива проведения обмена всегда исходит от ведущего устройства. Ведомые устройства прослушивают линию связи. Мастер подаёт запрос (посылка, последовательность байт) в линию и переходит в состояние прослушивания линии связи. Ведомое устройство отвечает на запрос, пришедший в его адрес. Окончание ответной посылки мастер определяет, определяя временные интервалы между окончанием приёма предыдущего байта и началом приёма следующего. Если этот интервал превысил время, необходимое для приёма двух байт на заданной скорости передачи, приём кадра ответа считается завершённым. Кадры запроса и ответа по протоколу modbus имеют фиксированный формат, приведённый в табл. 3.1.1.

Таблица 3.1.1 - Вид кадра запроса и ответа

Адрес подчиненного устройства

Номер функции

Данные

CRC

1 байт

1 байт

N<253 (байт)

2 байта

«Адрес» - первое однобайтное поле кадра. Оно содержит адрес подчинённого устройства, к которому адресован запрос. Подчинённые устройства отвечают только на запросы, поступившие только в их адрес. Ответ также начинается с адреса отвечающего устройства, который может изменяться от 1 до 254. Адрес 0 используется для широковещательной передачи, его распознаёт каждое устройство.

Код функции содержит номер функции. Функция может запрашивать данные или давать команду на определенные действия. Коды функций являются числами в диапазоне от 1 до 127. Функции с номерами от 128 до 254 являются зарезервированными для пересылки в ответном сообщении информации об ошибках.

В поле «Данные» поле содержит информацию, необходимую подчиненному устройству для выполнения заданной мастером функции или содержит данные, передаваемые подчинённым устройством в ответ на запрос ведущего. Длина и формат поля зависит от номера функции;

Поле «Контрольная сумма» является важным элементом протокола: в нем содержится информация, необходимая для проверки целостности сообщения и отсутствия ошибок передачи. Контрольная сумма завершает кадры запроса и ответа. Поле CRC записывается младшим байтом вперёд. Алгоритм расчёта CRC может отличаться для разных устройств.

Максимальный размер пакета для сетей RS232/RS485 - 256 байт, для сетей TCP - 260 байт.

Читайте также

Передаточная функция разомкнутой системы
1. Определить передаточную функцию разомкнутой системы рис.1, представить её в канонической .форме. Построить её логарифмические частотные характеристики. 2. Оценить показатели к ...

Проектирование междугородной магистрали между г. Кемерово – г. Лениск-Кузнецкий с использованием симметричного кабеля
Наше время, в особенности последние десять лет, характеризуется бурным развитием телекоммуникационных технологий. Наряду с появлением новых форм передачи информации, совершенствуются тра ...

Разработка компьютерной сети по технологии ArcNet с подключением к Internet
Организация компьютерных сетей. Назначение: Создание компьютерных сетей вызвано практической потребностью пользователей удаленных друг от друга компьютеров в одной и той же информ ...

Основные разделы

Все права защищены! (с)2018 - www.generallytech.ru