Метод доступа к среде
Стандартные MODBUS-порты в контроллерах используют RS-232C–
совместимый последовательный интерфейс.
Контроллеры соединяются напрямую или через модем, по технологии главный-подчиненный, при которой только одно устройство (главный) может инициировать передачу (сделать запрос). Подчиненные устройства передают запрашиваемые главным данные или производят запрашиваемые действия.
Типичное главное устройство включает в себя ведущий (HOST) процессор и панели программирования.
Типичное подчиненное устройство – программируемый контроллер.
Главный контроллер может обращаться к индивидуальному подчиненному или может инициировать широкую передачу сообщения на все подчиненные устройства.
Подчиненное устройство возвращает сообщение в ответ на запрос, адресуемый именно ему.
При широковещательном обращении ответы не возвращаются.
В линии может быть только одно ведущее устройство (master) и множество (возможно и одно) подчиненных устройств (slave).
Инициатива проведения обмена всегда исходит от ведущего устройства. Ведомые устройства прослушивают линию связи. Мастер подает запрос (посылка, последовательность байт) в линию и переходит в состояние прослушивания линии связи. Ведомое устройство отвечает на запрос, пришедший в его адрес.
Окончание ответа мастер определяет по временным интервалам между окончанием приема предыдущего байта и началом приема следующего. Если этот интервал превысил время приема двух байт на заданной скорости передачи, прием кадра ответа считается завершенным.
Виды пакетов
Кадры запроса и ответа по протоколу modbus имеют фиксированный формат, приведенный в таблице 3.13.
Таблица 3.13 − Кадр посылки modbus
Поля кадра | Длина в байтах |
Адрес подчиненного устройства | |
Номер функции | |
Данные | N < 254 |
Контрольная сумма |
Адрес подчиненного устройства – первое однобайтное поле кадра. Оно содержит адрес подчиненного устройства, к которому адресован запрос. Подчиненные устройства отвечают только на запросы, поступившие в их адрес.
Ответ также начинается с адреса отвечающего устройства. Может изменяться от 1 до 254.
Номер функции – это следующее однобайтное поле кадра. Оно говорит подчиненному устройству, какие данные или выполнение какого действия требует от него ведущее устройство.
Данные – поле содержит информацию необходимую подчиненному устройству для выполнения заданной мастером функции или содержит данные, передаваемые подчиненным устройством в ответ на запрос ведущего. Длина и формат поля зависит от номера функции.
Контрольная сумма – заключительное двухбайтное поле кадра, содержащее циклическую контрольную сумму CRC-16 всех предыдущих полей кадра. Контрольная сумма завершает кадры запроса и ответа.
Дата добавления: 2020-04-12; просмотров: 507;