6 Устройство и принцип работы 6.5.2 Коды ошибок для протокола Modbus Во время работы модуля по протоколу Modbus возможно возникновение ошибок, представленных в таблице 6.6 . В случае возникновения ошибки модуль отправляет Мастеру сети ответ с кодом ошибки. Таблица 6.6 – Список возможных ошибок Modbus. Не прошедшие проверку запросы игнорируются модулем. Запросы, в которых указан адрес, не Во время обмена по протоколу Modbus модуль проверяет соответствие запросов спецификации соответствующий адресу модуля, также игнорируются. Далее проверяется код функции. Если в модуль приходит запрос с кодом функции, не указанной в таблице 6.7 , возникает ошибка MODBUS_ILLEGAL_FUNCTION.
Таблица 6.7 – Список поддерживаемых функций Ситуации, приводящие к возникновению ошибок во время работы с регистрами, описаны в таблице 6.8 .
Таблица 6.8 – Ошибки во время работы с регистрами 29 Название ошибки Возвращаемый код Описание ошибки MODBUS ILLEGAL FUNCTION _ _ 01 (0x01) Недопустимый код функции – ошибка возникает, если модуль не поддерживает функцию Modbus, указанную в запросе MODBUS ILLEGAL DATA _ _ _ ADDRESS 02 (0x02) Недопустимый адрес регистра – ошибка возникает, если в запросе указаны адреса регистров, отсутствующие в модуле MODBUS ILLEGAL DATA _ _ _ VALUE 03 (0x03) Недопустимое значение данных – ошибка возникает, если запрос содержит недопустимое значение для записи в регистр MODBUS SLAVE DEVICE _ _ _ FAILURE 04 (0x04) Ошибка возникает, если запрошенное действие не может быть завершено Название функции Код функции Описание функции MODBUS READ HOLDING _ _ _ REGISTERS 3 (0x03) Чтение значений из одного или нескольких регистров хранения MODBUS READ INPUT _ _ _ REGISTERS 4 (0x04) Чтение значений из одного или нескольких регистров ввода MODBUS WRITE SINGLE _ _ _ REGISTER 6 (0x06) Запись значения в один регистр MODBUS WRITE MULTIPLE _ _ _ REGISTERS 16 (0x10) Запись значений в несколько регистров MODBUS READ FILE RECORD _ _ _ 20 (0x14) Чтение архива из файла MODBUS WRITE FILE _ _ _ RECORD 21 (0x15) Запись архива в файл Используемая функция Наименование ошибки Возможные ситуации, приводящие к ошибке MODBUS READ _ _ HOLDING REGISTERS _ MODBUS ILLEGAL DATA _ _ _ ADDRESS • количество запрашиваемых регистров больше максимального возможного числа (125); • запрос несуществующего параметра MODBUS READ INPUT _ _ _ REGISTERS MODBUS ILLEGAL DATA _ _ _ ADDRESS • количество запрашиваемых регистров больше максимального возможного числа (125); • запрос несуществующего параметра