Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AVEVA™ Communication Drivers

ModbusPLC connection

  • Last UpdatedMay 13, 2025
  • 5 minute read

The ModbusPLC connection is created from the TCPIP_PORT branch of the Communication Driver hierarchy. It is intended for PLCs/controllers that use the Modbus protocol but not in the list of Supported MBTCP OI server hardware and firmware. However, the PLCs/controllers need to conform to and comply with the Modbus specifications as listed in Controller function codes, Modbus exception codes, Controller function codes, and Data types.

Add a ModbusPLC connection to your MBTCP hierarchy

  1. Right-click on your TCPIP_PORT branch, and select Add ModbusPLC Connection.

    • A new ModbusPLC object is created as a node in the hierarchy tree.

    • It is named New_ModbusPLC_000 by default.

  2. Rename as appropriate.

    • The New_ModbusPLC_000 Parameters configuration view is displayed.

      ConfigureModbusPLC

This configuration view has 17 elements that are configurable.

  • Network address: Enter the host name or IP address of the PLC.

    • The number of characters cannot be more than 255.

    • The field cannot be blank. (The number of characters cannot be zero (0).

  • Port number: Enter the port (socket) number.

    • The default port number is 502.

      Note: The MBTCP Communication Driver uses port 502 as the default port number to contact the PLC. The port number is configurable in this object. This will override the port setting in the parent TCPIP_PORT object for this connectivity.

  • Reply timeout (sec): Enter the amount of time the server will wait for an acknowledgment.

    • The minimum value is 1 (one).

    • The maximum value is 60.

    • The default value is 3 (three).

  • Maximum outstanding messages: Enter the maximum number of outstanding messages in the queue for the PLC.

    • The minimum value is 1 (one).

    • The maximum value is 20.

    • The default value is 1 (one).

  • Use Concept data structures (Longs): Select to read data from the PLC in concept data structure format for Long item types. If checked, the Communication Driver will process the data in the same register order as the Concept programming software.

    • Checked – selected (Default)

    • Not checked – not selected

  • Use Concept data structures (Reals): Select to read data from the PLC in concept data structure format for Real item types. If checked, the Communication Driver will process the data in the same register order as the Concept programming software.

    • Checked – selected (Default)

    • Not checked – not selected

  • Support multiple coil write: Select for the PLC to write to multiple coils in one message with the Modbus protocol function code 15 (0x0F). If not selected, the PLC will write to a single coil in one message with the Modbus protocol function code 5 (0x05).

    • Checked – selected (Default)

    • Not checked – not selected

  • Support multiple register write: Select for the PLC to write to multiple registers in one message with the Modbus protocol function code 16 (0x10). If not selected, the PLC will write to a single register in one message with the Modbus protocol function code 6 (0x06).

    • Checked – selected (Default)

    • Not checked – not selected

      Note: When the Support Multiple Register Write Parameter is not selected in the Generic PLC configuration, it implies that the PLC does not support multiple register writes and the server will only write single registers to the PLC.
      This means items that contain more than one register cannot be written either. For example, items such as 4xxxxx L, 4xxxxx I, 4xxxxx U, 4xxxxx F, 4xxxxx-4xxxxx M, 5 HRL, 5 HRF, 5 PV, 5 HRU, and 4xxxxx-4xxxxx cannot be written. When you try to write to the PLC with this parameter not selected, the following error message will be logged to the logger, "Cannot write to multiple register item: 4xxxxx L on Node: TCPPort.GenPLC. The PLC configurable parameter Support Multiple Register Write is not checked."

  • Use Zero Based Addressing: Select to choose 0-based addressing.

    • Checked – selected, use 0-based addressing

    • Unchecked – not selected, use 1-based addressing (Default)

  • Swap bytes: Select to swap bytes in PLC register for 16-bit, 32-bit, and 64-bit signed and unsigned Integer, Float, and Double data types on data read and data poked.

    • Checked - selected (Default)

    • Not checked - not selected

  • Swap string bytes: Select to swap bytes in PLC register for String datatype on data read and data poked.

    • Checked - selected (Default)

    • Not checked - not selected

  • Close Ethernet connection when no activity: Select this option to close the socket connection if no item is advised to the device (Hierarchy). This can happen when the client has removed all items advised to the hierarchy.

  • Bit order format: The format of the bit order entered into the PLC. There are four bit order formats available for selection.

    • B1 B2 … B16: (Default) Bit order is left to right (MSB = Bit 1; LSB = Bit 16)

    • B16 B15 … B1: Bit order is right to left (MSB = Bit 16; LSB = Bit 1)

    • B0 B1 … B15: Bit order is left to right (MSB = Bit 0; LSB = Bit 15)

    • B15 B14 … B0: Bit order is right to left (MSB = Bit 15; LSB = Bit 0)

  • Register Order: The order of the PLC memory registers written to and read from, used to support 64-bit data types.

    • Order 1: R1 R2 R3 R4 (Default)

    • Order 2: R2 R1 R4 R3

    • Order 3: R3 R4 R1 R2

    • Order 4: R4 R3 R2 R1

      where R1, R2, R3, and R4 are the relative register addresses in the PLC.

  • Register size (digits): Select the correct register size for addressing the PLC.

    • 4-digit is used for addressing the Modbus Generic 4-Digit PLCs.

    • 5-digit applies to the Modbus Generic 5-Digit PLCs.

    • 6-digit is used for addressing the Modbus Generic 6-Digit PLCs. (Default)

      Note: The selection for the Register size determines the maximum address range. They are changeable as in other supported PLCs listed in Supported MBTCP OI server hardware and firmware.
      For 4-digit, the maximum value is 999; for 5-digit, the maximum value is 9999; for 6-digit, the maximum value is 65536.

  • String variable style: PLC string-data format. Select the option for the style used by the device to store strings in its registers.

    • Full length ( space padded) (Default)

    • C style (null terminated)

    • Pascal style (includes length specifier)

  • Register type: Select either Binary or BCD for the register type being used.

    • Binary (Default)

    • BCD

  • Block I/O size: This Block I/O Sizes box contains four sub-elements. The Communication Driver uses the block I/O sizes to maximize data throughput. The MBTCP Communication Driver uses a 256 byte buffer to read or write data to the PLC. The maximum value is the maximum number of registers that can be read or written from/to the PLC in one command.

    Element

    Description

    Minimum Value

    Maximum Value

    Discrete input/coil read

    Enter the maximum number of discrete inputs or coils to read at one time.

    Min = 1 (one)

    Max = 1976
    (Default)

    Coil write

    Enter the maximum number of coils to write at one time.

    Min = 1 (one)

    Max = 800
    (Default)

    Holding register read

    Enter the maximum number of holding registers to read at one time.

    Min = 1 (one)

    Max = 122
    (Default)

    Holding register write

    Enter the maximum number of holding registers to write at one time.

    Min = 1 (one)

    Max = 100
    (Default)

TitleResults for “How to create a CRG?”Also Available in