Bloque que permite monitorear diversos estados del cliente de la red Modbus TCP.
Representación Ladder

Estructura del Bloque
Tipo de Variable |
Nombre |
Tipo de Dato |
Descripción |
VAR_INPUT |
Execute |
BOOL |
Habilitación del bloque |
DisableComm |
BOOL |
Deshabilita la comunicación Modbus TCP |
|
VAR_OUTPUT |
Done |
BOOL |
Habilitación de salida |
CommDisabled |
BOOL |
Señalizador de comunicación deshabilitada |
|
TxCounter |
WORD UINT |
Contador de solicitudes enviadas |
|
RxCounter |
WORD UINT |
Contador de telegramas recibidos |
|
NoAnswerCounter |
WORD UINT |
Contador de solicitudes no respondidas |
|
ErrorResponseCounter |
WORD UINT |
Contador de respuestas recibidas con información de error |
|
LastErrorServerAddress |
DWORD |
Dirección del servidor en la cual fue detectada el último error de comunicación |
|
LastErrorServerPort |
WORD UINT |
Puerta del servidor en la cual fue detectada el último error de comunicación |
|
LastErrorUnitID |
BYTE USINT |
UnitID del servidor en la cual fue detectada el último error de comunicación |
|
LastErrorResult |
BYTE USINT |
Resultado de operación del último error de comunicación recibido (0 – Sin error) (4 – Timeout de respuesta del servidor) (5 – Servidor retornó error) |
|
LastErrorCode |
BYTE USINT |
Código del último error de comunicación recibido |
Operación
Este bloque permanece activo mientras Execute está en nivel TRUE, actualizando sus salidas de acuerdo con el monitoreo del maestro y con las solicitudes de entrada. Cuando Execute recibe nivel FALSE, las entradas son ignoradas y las salidas son reseteadas. La salida Done recibe nivel TRUE cuando Execute tenga nivel TRUE y el bloque ya haya finalizado su ejecución.
Un nivel TRUE en DisableComm deshabilita la comunicación Modbus TCP y resetea los contadores y marcadores de status del cliente. Estos marcadores y contadores son exhibidos en las salidas del bloque, cada uno conteniendo un dato que corresponde a su descripción. Sus valores también serán reseteados cuando el cliente se desconecte.
Compatibilidad
Equipo |
Versión |
PLC300 |
1.30 o superior |
Diagrama de Flujo del Bloque

Ejemplo en Ladder

El ejemplo de arriba solicita datos de status del cliente de la rede Modbus TCP, además de permitir deshabilitar la comunicación a través de DISABLE. Finalizado exitosamente el bloque, será activada la salida Done.
Ejemplo en ST
El siguiente ejemplo muestra las instrucciones para aplicar el ejemplo anterior en el lenguaje ST.
VAR DISABLE, MB_DISABLE : BOOL; COUNT_TX, COUNT_RX, COUNT_NOANSWER, COUNT_ERROR, LE_PORT : WORD; LE_ADDRESS : DWORD; LE_RESULT, LE_CODE, LE_UNITID : USINT; END_VAR
DO1 := FB_MBTCP_ClientControlStatus( DisableComm:=DISABLE, Execute:=DI1, CommDisabled=>MB_DISABLE, TxCounter=>COUNT_TX, RxCounter=>COUNT_RX, NoAnswerCounter=>COUNT_NOANSWER, ErrorResponseCounter=>COUNT_ERROR, LastErrorServerAddress=>LE_ADDRESS, LastErrorServerPort=>LE_PORT, LastErrorUnitID=>LE_UNITID, LastErrorResult=>LE_RESULT, LastErrorCode=>LE_CODE);
|
|---|