Main Content

Modbus TCP/IP Slave Read

Server (slave) device reads data from server device register over TCP/IP network

  • Library:
  • NVIDIA Jetson and NVIDIA DRIVE / Network

  • NVIDIA Modbus TCP/IP Slave Read block icon

Description

In the Modbus TCP/IP Slave Read block, the server device reads data from its registers. The server can read data from only one register per read operation.

MATLAB® Coder™ Support Package for NVIDIA® Jetson® and NVIDIA DRIVE® Platforms supports the Modbus® communication protocol over the TCP/IP network.

The server can perform read and write operation on these server register(s).

Register TypeRegister Size
Coil1-bit
Discrete Input1-bit
Holding Register16-bit
Input Register16-bit

The server can perform either a read or a write operation on its registers.

Ports

Output

expand all

The block outputs the data read by the server device from its register as a 1-bit scalar.

  • If you select the Coil or Discrete Input read operations, the server reads its registers as a 1-bit read operation. The block outputs the read data as Boolean data.

  • If you select the Holding Register or Input Register read operations, the server reads its registers as a 16-bit read operation. The block outputs the read data as uint16 data.

Data Types: Boolean | uint16

The block outputs the status of the server read operation on the server register.

  • 0: Indicates an unsuccessful read operation, which means that the data received on the data port is invalid.

  • 1: Indicates a successful read operation, which means that the data received on the data port is valid.

Data Types: uint8

Parameters

expand all

Select the type of read operation you want to perform on the server register. Specify any one of the following:

ValueDescription
Read Coil

Read data from the coil register address specified in the Coil Address parameter.

Read Discrete Input

Read data from the discrete input register address specified in the Discrete Input Address parameter.

Read Holding Register

Read data from the holding register address specified in the Holding Register Address parameter.

Read Input Register

Read data from the input register address specified in the Input Register Address parameter.

Programmatic Use

Block Parameter: Function
Type: character vector
Values: 'Read Coil' | 'Read Discrete Input' | 'Read Holding Register' | 'Read Input Register'
Default: 'Read Coil'

To notify the server to read data from a specific coil register, specify the coil register address in this parameter. For example, for the server to read data from the coil register with the address 10, enter 10.

Dependencies

To enable this parameter, set Function to Read Coil.

Programmatic Use

Block Parameter: CoilAddress
Type: character vector
Values: '0' | scalar
Default: '0'

To notify the server to read data from a specific discrete input register, specify the discrete input register address in this parameter. For example, for the server to read data from the discrete input register with the address 80, enter 80.

Dependencies

To enable this parameter, set Function to Read Discrete Input.

Programmatic Use

Block Parameter: DiscreteInputAddress
Type: character vector
Values: '0' | scalar
Default: '0'

To notify the server to read data from a specific holding register, specify the holding register address in this parameter. For example, for the server to read data from the holding register with the address 37, enter 37.

Dependencies

To enable this parameter, set Function to Read Holding Register.

Programmatic Use

Block Parameter: HoldingRegisterAddress
Type: character vector
Values: '0' | scalar
Default: '0'

To notify the server to read data from a specific input register, specify the input register address in this parameter. For example, for the server to read data from the input register with the address 25, enter 25.

Dependencies

To enable this parameter, set Function to Read Input Register.

Programmatic Use

Block Parameter: InputRegisterAddress
Type: character vector
Values: '0' | scalar
Default: '0'

Enter the time interval (in seconds) at which the server reads data from its register.

Programmatic Use

Block Parameter: SampleTime
Type: character vector
Values: scalar | vector
Default: '0.1'

Version History

Introduced in R2022a