ModbusClient_TCP_Fast
ModbusClient_TCP_Fast (FB)
ModbusClient_TCP_Fast (FB)FUNCTION_BLOCK ModbusClient_TCP_Fast EXTENDS ModbusClientBase
Darstellung

Funktionsbeschreibung
Dieser Funktionsbaustein erfüllt die Client-Funktionalitäten in einer Modbus-TCP-Kommunikation Die Gegenstelle muss die Server-Funktionalitäten erfüllen. Die Einführung erfolgte, um die Kommunikationsgeschwindigkeit bei einer Vielzahl von Modbus-Telegrammen zu erhöhen. Im Idealfall (= Vollständiger Empfang des Modbus-Response-Telegramms innerhalb einer Task-Zykluszeitdauer) wird zyklisch nach T = 3 * Task-Zykluszeitdauer (T = 30ms bei einer Task-Zykluszeitdauer von 10ms) eine neue Übertragung gestartet. Bei Modbus-Telegrammen mit vielen Daten und/oder geringen Übertragungsraten auf der seriellen Seite (RS 485) kann sich diese Zeitdauer entsprechend erhöhen.
InOut:
Output
xConnected
BOOL
TRUE if connection has been established
ModbusClientBase
Output
xLicenceValid
BOOL
TRUE if a valid licence was found
ModbusClientBase
Input
xEn
BOOL
TRUE
Input to enable / disable the function block
Input
sHostAddress
STRING
‘’
Hostname (FQDN, e.g. ‘www.focus.de’) or IP address of the Server (e.g. ‘192.168.178.210’)(Modbus-TCP)
Input
wPort
WORD
502
Port number of the Server (Modbus-TCP)(502 is the default port)
Input
xResetLastErrors
BOOL
FALSE
Input to reset the error outputs (rising edge)
Output
byLastRequestUnitID
BYTE
0
Last Request telegram: Unit ID (0 = No Unit)
Output
eState
Client_TCP_StateCode
Client_TCP_StateCode.IDLE
Current state of the state machine as ENUM
Output
eResponseState
Client_TCP_Response_StateCode
Client_TCP_Response_StateCode.NO_ERROR
Last Response telegram: Description of the state as ENUM
Output
byLastErrorUnitID
BYTE
0
Last error: Unit ID (0 = No Unit)
Output
xError
BOOL
FALSE
Current Error State (FALSE = No Error, TRUE = Error)
Output
eLastErrorCode
Client_TCP_ErrorCode
Client_TCP_ErrorCode.NO_ERROR
Last Error: Description of the communication error as ENUM
Output
xReady
BOOL
FALSE
Current Standby state (FALSE = Not ready, TRUE = Ready to send / receive Modbus data)
Input Const
tKeepAliveTimeout
TIME
TIME#1m20s0ms
Time between the last package sent and the first probe (Idle-Mode)
Input Const
tTimeoutDeviceReceive
TIME
TIME#2s0ms
Timeout for the Device communication (Read)
Input Const
tTimeoutDeviceSend
TIME
TIME#2s0ms
Timeout for the Device communication (Send)
Input Const
tTimeoutConnect
TIME
TIME#3s0ms
Timeout for the Client-Server communication (Resolve = name resolution & Connection time)
Zuletzt aktualisiert

