Skip to main content

Bloque de función: ModbusServer

Biblioteca: ModbusTCP Server

El bloque de funciones procesa hasta 16 solicitudes de conexión de cliente paralelas mediante Modbus TCP. Las solicitudes Modbus funcionan dentro de rangos de datos que asignan los registros de entrada y retención.

Se admiten los siguientes códigos de función Modbus:

  • 0x01 Read Coils

  • 0x02 Read Discrete Inputs

  • 0x03 Read Holding Registers

  • 0x04 Read Input Registers

  • 0x05 Write Single Coil

  • 0x06 Write Single Register

  • 0x0F Write Multiple Coils

  • 0x10 Write Multiple Registers

  • 0x17 Read/Write Multiple Registers

El bloque de función ModbusServer utiliza los parámetros que se han configurado en la pestaña del editor de dispositivos del servidor Modbus TCP .

tabla 27. Entradas (VAR_INPUT)

Nombre

Tipo de datos

Valor inicial

Descripción

wPort

WORD

502

El Puerto del servidor (pila de protocolos TCP/IP) 502 es el predeterminado de Modbus

pInputData

POINTER TO WORD

Puntero a WORD; apunta al mapa del registro de entrada Modbus

uiInputDataSize

UINT

1024

Longitud de la matriz de datos de entrada (WORD por registro); predeterminado: 1024

pOutputData

POINTER TO WORD

Puntero a WORD; apunta al mapa del registro holding Modbus

uiOutputDataSize

UINT

Longitud de la matriz de datos de salida (WORD por registro)

tTimeout

UDINT

Tiempo de espera (ms). Si no es cero y no se ha producido ningún error de escritura Modbus hasta el tiempo de espera, los datos de salida se establecen en cero.

xEnable

BOOL

FALSE

Bandera para iniciar el procesamiento de la solicitud

xReset

BOOL

FALSE

Reinicio de la comunicación normal con los servidores; restablecimiento de palabras de estado y bits de error para un flanco ascendente

InterfaceName

WSTRING(255)

Nombre de la interfaz Ethernet (opcional). Si se especifica, el servidor Modbus se vincula a la dirección IP de esta interfaz.



tabla 28. Salidas (VAR_OUTPUT)

Nombre

Tipo de datos

Valor inicial

Descripción

xBusy

BOOL

FALSE

TRUE mientras se procesa la solicitud

xError

BOOL

FALSE

Información sobre los errores encontrados

byClientConnections

BYTE

0

Número de conexiones

xTimeout

BOOL

El tiempo de espera ha expirado. Los Registros Holding y las bobinas están a cero.