Skip to main content
Skip table of contents

Modbus TCP Connector

This adapter connects to devices via the Modbus TCP protocol.

Properties

Operation

Defines the operation executed by the adapter

Possible values:

  • Read:  Reads data from the Modbus server
  • Write:  Writes data to the Modbus server

Parameters

Adapter

Main adapter class (do not change!)

Possible values:  de.softproject.integration.adapter.modbus.ModBusConnectorAdapter: Main class (default)

ip

Server IP

port

Server port

Possible values:

  • any port number
  • 502 (default)

Status values

1

The operation was executed successfully

-1Any error occurred during the operation's execution

Input

The adapter expects a specific XML structure for the different operations:

  • Operation Read:

    Sample input for operation READ

    XML
    <?xml version="1.0" encoding="UTF-8"?>
    <Request>
    	<InputRegisters count="2" ref="0"/>
    	<InputRegisters count="1" ref="3"/>
    	<HoldingRegisters count="2" ref="0"/>
    	<HoldingRegisters count="1" ref="3"/>
    	<Discretes count="2" ref="0"/>
    	<Discretes count="1" ref="3"/>
    	<Coils count="2" ref="0"/>
    	<Coils count="1" ref="3"/>
    </Request>
  • Operation Write:

    Sample input for operation WRITE

    XML
    <?xml version="1.0" encoding="UTF-8"?>
    <Request>
    	<HoldingRegister ref="11">14</HoldingRegister>
    	<Coil ref="20">true</Coil>
    	<Coil ref="000E1">TRUE</Coil>
    </Request>

Output

The adapter outputs different structures depending on the executed operation:

  • Operation Read:

    Sample output for operation READ

    XML
    <?xml version="1.0" encoding="UTF-8"?>
    <Request>
    	<InputRegisters count="2" ref="0">
    		<Result>
    			<InputRegister ref="0">0</InputRegister>
    			<InputRegister ref="1">0</InputRegister>
    		</Result>
    	</InputRegisters>
    	<InputRegisters count="1" ref="3">
    		<Result>
    			<InputRegister ref="0">0</InputRegister>
    		</Result>
    	</InputRegisters>
    	<HoldingRegisters count="2" ref="0">
    		<Result>
    			<HoldingRegister ref="0">0</HoldingRegister>
    			<HoldingRegister ref="1">0</HoldingRegister>
    		</Result>
    	</HoldingRegisters>
    	<HoldingRegisters count="1" ref="3">
    		<Result>
    			<HoldingRegister ref="0">0</HoldingRegister>
    		</Result>
    	</HoldingRegisters>
    	<Discretes count="2" ref="0">
    		Result>
    			<Discrete ref="0">false</Discrete>
    			<Discrete ref="1">false</Discrete>
    		</Result>
    	</Discretes>
    	<Discretes count="1" ref="3">
    		Result>
    			<Discrete ref="0">false</Discrete>
    		</Result>
    	</Discretes>
    	<Coils count="2" ref="0">
    		Result>
    			<Coil ref="0">false</Coil>
    			<Coil ref="1">false</Coil>
    		</Result>
    	</Coils>
    	<Coils count="1" ref="3">
    		Result>
    			<Coil ref="0">false</Coil>
    		</Result>
    	</Coils>
    </Request>
  • Operation Write:

    Sample output for operation WRITE

    XML
    <?xml version="1.0" encoding="UTF-8"?>
    <Request>
    	<HoldingRegister ref="11">14</HoldingRegister>
    	<Coil ref="20">true</Coil>
    	<Coil ref="000E1">TRUE</Coil>
    </Request>

    Sample output in case of an error

    XML
    <?xml version="1.0" encoding="UTF-8"?>
    <listErrors description="Wrong Input values for the elements of this list">
    	<HoldingRegister ref="11">xx</HoldingRegister>
    	<Coil ref="xxxxx">true</Coil>
    	<Coil ref="000B">45</Coil>
    </listErrors>
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.