Особенности последовательной передачи данных, Рамки сообщения / временные ограничения, Обработка ошибок и ответы на исключения – Инструкция по эксплуатации Basler Electric DGC-2020
Страница 480
Поле Адрес устройства
Поле адреса устройства содержит уникальный адрес Modbus™ на который откликается ведомый.
Адресуемый ведомый повторит свой адрес в ответном сообщении в поле адреса устройства.
Ширина поля – 1 байт.
Поле Код функции
Поле кода функции в запросе определяет действие, которое должен выполнить ведомый. Это
поле также повторяется в ответном сообщении. В случае ошибки поле изменяется – старший бит
поля кода заменяется на "1". Ширина поля – 1 байт.
Поле Блок данных
Поле данных содержит дополнительную информацию, необходимую ведомому для совершения
требуемого действия. Это же поле в ответном сообщении содержит данные, собранные ведомым
по запрашиваемой функции. В случае ошибки, поле данных содержит код исключения (ошибки).
Ширина поля определяется требуемым действием.
Поле Контрольная сумма
Поле проверки ошибок обеспечивает метод ведомому для проверки целостности принятого
сообщения и позволяет ведущему подтвердить корректность отосланного сообщения. Это поле
шириной в 2 байта.
Особенности последовательной передачи данных
Стандартная сеть Modbus™ позволяет организовать 2 режима передачи: ASCII или RTU. DGC-
2020 поддерживает только режим RTU (Remote Terminal Unit).
Каждые 8-битные байты в сообщении содержат два четырехбитных шестнадцатиричных символа.
Сообщение передается последовательным потоком, наименее значащий бит передается первым.
Передача каждого байта данных сопровождается одним стартовым и стоповым битом. Девятый
байт данных добавляется при выборе параметра четности. Проверка четности конфигурируется
пользователем из ряда: четная, нечетная или отсутствует. Скорость передачи данных также
определяется пользователем. Оба параметра – скорость и проверка четности могут быть
изменены в процессе работы устройства. При изменении, новая скорость передачи и проверка
четности не будут изменены пока не будет полностью обработан текущий запрос. DGC-2020
поддерживает скорости из ряда 9600, 4800, 2400 и 1200.
Рамки сообщения / Временные ограничения
При получении сообщения DGC-2020 ожидает время, эквивалентное 3.5-4 знакам для
подтверждения окончания сообщения.
После получения корректного сообщения, DGC -2020 ожидает 10 мс перед ответом.
Обработка ошибок и ответы на исключения
Любой запрос, который содержит несуществующий адрес устройства, ошибку кадра или
несовпадающую контрольную сумму будет игнорироваться. Отклика не последует. Запросы к DGC
-
2020 с неподдерживаемыми функциями или некорректными значениями в блоке данных будут
обработаны с ответом об ошибке и ее описанием. Коды ошибок, поддерживаемые DGC-2020,
перечислены в таблице B-1.
Таблица B-1. Коды ошибок
Код
Имя
Описание
01
Неподдерживаемая
функция
Запрос с таким кодом функции/подфункции не поддерживается;
запрос на чтение более чем 125 регистров одновременно; запрос
на запись более 100 регистров.
02
Неподдерживаемый
адрес данных
Регистр, указанный в блоке данных не поддерживает заданное
чтение/запись; запрос на запись группы числовых регистров.
03
Неподдерживаемое
значение данных
Блок данных в запросе на запись группы регистров содержит
некорректные значения данных.
B-2
DGC-
2020 Протокол Modbus9400273990 Bep. X19400273990 Bep. X1