4.1.1.2.3.2.6. Диагностика работы модуля
Журнал работы модуля
Модуль Modbus RTU Master ведёт журнал работы, в который записывается информация о работе модуля и обмене данными с подчиненными станциями.
Чтобы Modbus RTU Master вёл журнал работы, в общих параметрах модуля установите параметру Вести журнал работы модуля значение Да или установите сервисному сигналу модуля FrameLogEnable.Set значение true.
|
Журнал работы модуля сохраняется в файл <имя модуля>.aplog по умолчанию:
в ОС Windows в папке:
C:\Program Files\AstraRegul\\Astra.Server\Logs;
|
в Linux системах в директории:
/opt/AstraRegul//Astra.Server/Logs.
|
Для просмотра журнала работы модуля используется сервисное приложение Просмотрщик лога кадров.
Структура кадров модуля
Исходящий и входящий кадры модуля Modbus RTU Master имеют структуру:
Адрес
|
Код функции
|
Данные
|
Контрольная сумма
|
1 байт
|
1 байт
|
до 253 байт
|
2 байта
|
Адрес – номер подчиненной станции в диапазоне от 1 до 255, с которой выполняется обмен данными.
Код функции – функция записи или чтения данных сегмента памяти подчиненной станции.
Данные (формат и длина поля зависит от кода функции):
в исходящем кадре – данные, необходимые для выполнения функции;
во входящем кадре – данные, предоставленные подчиненной станцией.
Контрольная сумма – проверка отсутствия ошибок в кадре.
Побайтовое представление и данные кадров модуля отображаются в соответствующих полях окна сервисного приложения Просмотрщик лога кадров.
Индикация байт в поле побайтового представления кадра данных приведена в таблице:
Байт
|
Цвет
|
Описание
|
0
|
Голубой
|
Адрес подчиненной станции
|
1
|
Светло голубой
|
Код функции
|
от 2 до N
|
Светло-серый
|
Данные (формат и длина зависит от кода функции)
|
N+1, N+2
|
Желтый
|
Контрольная сумма
|
Кадры функций чтения
Исходящий кадр для функций 01 (0х01) – 04 (0х04) имеет структуру:
Адрес
|
Код функции
|
Начальный адрес
|
Количество
|
Контрольная сумма
|
1 байт
|
1 байт
|
2 байта
|
2 байта
|
2 байта
|
Начальный адрес – адрес первого элемента сегмента памяти подчиненной станции, значение которого требуется прочитать.
Количество – количество считываемых элементов.
Входящий кадр для функций 01 (0х01) – 04 (0х04) имеет структуру:
Адрес
|
Код функции
|
Число байт
|
Данные
|
Контрольная сумма
|
1 байт
|
1 байт
|
1 байт
|
N байт
|
2 байта
|
Число байт – количество байт полученных данных.
Данные – полученные значения.
Исходящий кадр функции 20 (0х14) имеет структуру:
Адрес
|
Код функции
|
Число байт
|
Подзапрос
|
Контрольная сумма
| |||
Тип ссылки
|
Номер файла
|
Номер записи
|
Длина записи
| ||||
1 байт
|
1 байт
|
1 байт
|
1 байт
|
2 байта
|
2 байта
|
2 байта
|
2 байта
|
Число байт –количество байт данных в подзапросе.
Подзапрос – группа для чтения, содержащая 7 байт данных для запроса:
Тип ссылки –тип ссылки на данные, спецификацией определен код 0х06.
Номер файла – номер файла расширенной памяти.
Номер записи – адрес регистра внутри файла расширенной памяти.
Длина записи – количество регистров для чтения.
Входящий кадр функции 20 (0х14) имеет структуру:
Адрес
|
Код функции
|
Число байт
|
Ответ
|
Контрольная сумма
| ||
Число байт
|
Тип ссылки
|
Данные
| ||||
1 байт
|
1 байт
|
1 байт
|
1 байт
|
1 байт
|
N байт
|
2 байта
|
Число байт – общее количество байт полученных данных.
Ответ – группа полученных данных:
Число байт – количество байт данных ответа.
Тип ссылки – тип ссылки на данные, спецификацией определен код 0х06.
Данные – полученные значения.
Кадры функций записи
Исходящий кадр для функций 05 (0х05) и 06 (0х06) имеет структуру:
Адрес
|
Код функции
|
Начальный адрес
|
Значение
|
Контрольная сумма
|
1 байт
|
1 байт
|
2 байта
|
2 байта
|
2 байта
|
Адрес элемента – адрес элемента сегмента памяти подчиненной станции, значение которого требуется изменить.
Значение – устанавливаемое значение.
Если функция выполнена успешно, то входящий кадр содержит копию исходящего кадра.
Исходящий кадр функции 16 (0х10) имеет структуру:
Адрес
|
Код функции
|
Начальный адрес
|
Количество
|
Число байт
|
Значения
|
Контрольная сумма
|
1 байт
|
1 байт
|
2 байта
|
2 байта
|
1 байт
|
N байт
|
2 байта
|
Начальный адрес – адрес первого элемента сегмента памяти подчиненной станции, значение которого требуется изменить.
Количество – количество изменяемых элементов.
Число байт – количество передаваемых байт устанавливаемых значений.
Значения – устанавливаемые значения.
Если функция выполнена успешно, то входящий кадр функции 16 (0х10) имеет структуру:
Адрес
|
Код функции
|
Начальный адрес
|
Количество
|
Контрольная сумма
|
1 байт
|
1 байт
|
2 байта
|
N байт
|
2 байта
|
Начальный адрес – адрес первого измененного элемента.
Количество – количество измененных элементов.
Кадры ошибок
Если подчиненная станция не может выполнить функцию, входящий кадр имеет структуру:
Адрес
|
Код функции + 0x80
|
Код ошибки
|
Контрольная сумма
|
1 байт
|
1 байт
|
1 байт
|
2 байта
|
В таблице приведены поддерживаемые модулем Modbus RTU Master коды ошибок.
Код
|
Название
|
Описание
|
01
|
ILLEGAL FUNCTION (Недопустимая функция)
|
Принятый код функции не может быть обработан подчиненной станцией
|
02
|
ILLEGAL DATA ADDRESS (Недопустимый адрес данных)
|
Адрес регистра подчиненной станции, указанный в запросе, недоступен
|
03
|
ILLEGAL DATA VALUE (Недопустимое значение данных)
|
Значение, указанное в поле данных запроса, является недопустимым
|
04
|
SERVER DEVICE FAILURE (Сбой подчиненной станции)
|
Подчиненная станция не может обработать принятый запрос
|
06
|
SERVER DEVICE BUSY (Подчиненная станция занята)
|
Подчиненная станция занята обработкой команды. Опросчик должен повторить запрос, когда подчиненная станция освободится
|