ModTcpMast (FB)

FUNCTION_BLOCK ModTcpMast EXTENDS AbbETrig

Function Block serves to send Modbus on TCP/IP requests to a server and evaluate the response

InOut:

Scope

Name

Type

Initial

Comment

Inherited from

Input

Execute

BOOL

FALSE

A rising edge starts the operation, the output Busy goes to TRUE. In the first cycle all other inputs are read and stored, afterwards they are ignored. A falling edge does not stop the operation. After Done = TRUE or Error = TRUE and Execute = FALSE all outputs will be reset.

AbbETrig

Output

Done

BOOL

FALSE

Operation is completed without error (while outputs Busy and Error are FALSE). This output is TRUE for at least one cycle or until Execute is set to FALSE

AbbETrig

Busy

BOOL

FALSE

Operation is running (while outputs Done and Error are FALSE)

AbbETrig

Error

BOOL

FALSE

Operation is stopped with error (while outputs Busy and Done are FALSE). This output is TRUE for at least one cycle or until Execute is set to FALSE. The output ErrorID gives more details about the error.

AbbETrig

Input

Eth

BYTE

ETH1

Index number of the assigned Ethernet interface - input is ignored, existing for compatibility reasons only

IPAdr

DWORD

0

IP address of the remote Modbus TCP Server device

UnitID

BYTE

0

Unit identifier for the Modbus TCP frame

Fct

BYTE

0

Function Code as specified in Modbus Protocol Specification

Addr

WORD

0

Operand/Register address in remote Modbus TCP Server device

Nb

WORD

0

Amount of data units to be sent/received

Data

DWORD

0

Address of local buffer for data to be sent or received

Output

ErrorID

ERROR_ID

ERROR_ID.NO_ERROR

Code of error occured during execution
NO_ERROR Execution successfully completed
ERR_NOT_CONFIGURED Modbus TCP not configured
ERR_FCT_NOT_SUPPORTED Function code not supported
ERR_ILLEGAL_REGISTER_ADDRESS Illegal register address
ERR_INVALID_ACCESS Invalid address of local storage of data to read/write, inputs DATA / NB
ERR_DATA_SIZE Number of data to read/write exceeds capabilities
ERR_INTERNAL_PORTING Porting layer error. Operating system signaled error
ERR_INTERNAL_INVALID_HANDLE Illegal argument, unknown instance ‘dwHandle’. Internal error
ERR_FAILED_CONNECT Failed to connect to Server
ERR_CONNECTION_CLOSED Connection closed or unexpected result reported by stack
ERR_TIMEOUT Timeout expired. Server did not respond within specified time
ERR_EXCEPT_01_ILLEGAL_FUNCTION Illegal function exception. Exception response by Server containing error code 01 / 16#01
ERR_EXCEPT_02_ILLEGAL_DATA_ADDRESS Illegal data address. Exception response by Server containing error code 02 / 16#02
ERR_EXCEPT_03_ILLEGAL_DATA_VALUE Illegal data value. Exception response by Server containing error code 03 / 16#03
ERR_EXCEPT_04_SERVER_DEVICE_FAILURE Server device failure. Exception response by Server containing error code 04 / 16#04
ERR_EXCEPT_05_SERVER_ACKNOWLEDGE Server acknowledge. Exception response by Server containing error code 05 / 16#05
ERR_EXCEPT_06_SERVER_DEVICE_BUSY Server device busy. Exception response by Server containing error code 06 / 16#06
ERR_EXCEPT_07_SERVER_NO_ACKNOWLEDGE Server no acknowledge. Exception response by Server containing error code 07 / 16#07
ERR_EXCEPT_08_MEMORY_PARITY_ERROR Memory parity error. Exception response by Server containing error code 08 / 16#08
ERR_EXCEPT_09_SERVER_PASSIVE Probably passive Server. Exception response by Server containing error code 09 / 16#09
ERR_EXCEPT_0A_GATEWAY_PATH_UNAVAILABLE Gateway path unavailable. Exception response by Server containing error code 10 / 16#0A
ERR_EXCEPT_0B_GATEWAY_TARGET_DEVICE Gateway target device failed to respond. Exception response by Server containing error code 11 / 16#0B
ERR_INTERNAL_INVALID_STATE Invalid state, fatal internal error
ERR_NO_MEMORY Not enough memory
BUSY Busy, call again
ERR_INTERNAL_IO Internal error in I/O layer
ERR_INTERNAL_ILLEGAL_STATE Protocol stack in illegal state. Fatal internal error
ERR_INTERNAL_IO_RETRY Retry I/O operation. Operation not yet completed, function to be called again
ERR_INTERNAL_UNEXPECTED_STATE Unexpected state. Fatal internal error
ERR_INVALID_TIMEOUT_VALUE Invalid value for response timeout
ERR_INVALID_ACCESS Invalid address of local storage of data to read/write
ERR_ENDIANESS_NOT_SUPPORTED Endianess / byte order not supported