MB_R_B - чтение 8-ми дискретных входов

Назначение.
Функциональный блок MB_R_B применяется для чтения состояния 8-ми последовательных дискретных входов со Slave-устройства по протоколу Modbus. Используется функция Modbus с кодом 2 (Read Input Status).
Входные параметры:
|
Параметр
|
Тип данных
|
Описание
|
|
RUN
|
BOOLEAN
|
|
|
ID_DRV
|
INTEGER
|
Идентификатор задачи связи Modbus-RTU MST или Modbus-TCP MST, в рамках которой будет выполняться запрос.
|
|
SLAVE
|
INTEGER
|
Сетевой адрес Slave-устройства по протоколу Modbus задается целым числом от 1 до 255.
|
|
ADR
|
INTEGER
|
Modbus-адрес первого дискретного входа на Slave-устройстве. Особенности назначения modbus-адресов описаны в разделе 9.9.2.1 "Блок MB_R - Чтение группы данных".
|
Выходные параметры:
|
Параметр
|
Тип данных
|
Описание
|
|
READY
|
BOOLEAN
|
Признак завершения операции:
|
|
FAULT
|
INTEGER
|
Код завершения операции, список возможных кодов описан в конце раздела 9.9.1.1 «MB_RTU_MST - конфигурация связи по протоколу Modbus-RTU Master».
|
|
INP0
. .
INP7
|
BOOLEAN
|
Состояния дискретных входов на Slave-устройстве по адресам от ADR+0 до ADR+7.
|
Пример синтаксиса на языке ST.
//вызов функционального блока
Block.MB_R_B(RUN, ID_DRV, SLAVE, ADR);
//чтение состояния дискретного входа с адресом ADR+0
INP0 := Block.INP0;
//чтение состояния дискретного входа с адресом ADR+1
INP1 := Block.INP1;
//чтение состояния дискретного входа с адресом ADR+7
INP1 := Block.INP7;
//чтение признака и кода завершения операции
READY := Block.READY;
FAULT := Block.FAULT;
|
