DOCA0214EN–04

Modbus Client-Server Principle

Overview

The Modbus protocol exchanges information using a request-reply mechanism between a client and a server. The Client-Server principle is a model for a communication protocol in which one device (the client) controls one or more other devices (the server). In a standard Modbus network, there is 1 client and up to 31 servers.

A detailed description of the Modbus protocol is available at www.modbus.org.

Characteristics of the Client-Server Principle

The client-server principle is characterized as follows:

  • Only 1 client is connected to the network at a time.

  • Only the client can initiate communication and send requests to the servers.

  • The client can address each server individually using its specific address or all servers simultaneously using address 0.

  • The servers can only send replies to the client.

  • The servers cannot initiate communication, either to the client or to other servers.

Client-Server Communication Modes

The Modbus protocol can exchange information using 2 communication modes:

  • unicast mode

  • broadcast mode

Unicast Mode

In unicast mode, the client addresses a server using the specific address of the server. The server processes the request then replies to the client.

1 Request

2 Process

3 Reply

Broadcast Mode

The client can also address all servers using address 0. This type of exchange is called broadcasting. The servers do not reply to broadcasting messages.

Response Time

The response time Tr is the time needed by a server to respond to a request sent by the client:

Values with the Modbus protocol:

  • Typical value < 10 ms for 90% of the exchanges

  • To normal messages, Tr maximum value is around 700 ms, so it is recommended to implement a 1 second time out after sending a Modbus request.

Data Exchange

The Modbus protocol uses 2 types of data:

  • Single bit

  • Register (16 bits)

Each register has a register number. Each type of data (bit or register) has a 16-bit address.

The messages exchanged with the Modbus protocol contain the address of the data to be processed.

Registers and Addresses

The address of register number n is n-1. The tables detailed in the following parts of this document provide both register numbers (in decimal format) and corresponding addresses (in hexadecimal format). For example, the address of register number 12000 is 0x2EDF (11999).

Frames

All the frames exchanged with the Modbus RTU protocol have a maximum size of 256 bytes and are composed of 4 fields:

Field

Definition

Size

Description

1

server number

1 byte

Destination of the request

  • 0: broadcasting (all servers concerned)

  • 1–247: unique destination

2

Function codes

Only 1 byte

Refer to Modbus Functions

3

Data

n registers

Request or reply data

4

Check

2 bytes

CRC16 (to check transmission errors)

Default Settings

Followings are the default settings of Modbus communication.

Item

Setting

Baud rate

19200 bps

Data

8 bits

Parity

Even

Stop

2 bits

Address

1

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

Was this helpful?