QModbusRtuSerialMaster Class | Qt Serial Bus 5.15.0

- Qt 5.15
- Qt Serial Bus
- C++ Classes
- QModbusRtuSerialMaster
- Qt 5.15.0 Reference Documentation

# QModbusRtuSerialMaster Class

The QModbusRtuSerialMaster class represents a Modbus client that uses a serial bus for its communication with the Modbus server. More...

Header: | #include <QModbusRtuSerialMaster>
qmake: | QT += serialbus
Since: | Qt 5.8
Inherits: | QModbusClient

This class was introduced in Qt 5.8.

- List of all members, including inherited members

## Public Functions

| QModbusRtuSerialMaster(QObject *parent = nullptr)
int | interFrameDelay() const
void | setInterFrameDelay(int microseconds)
void | setTurnaroundDelay(int turnaroundDelay)
int | turnaroundDelay() const

## Reimplemented Protected Functions

virtual void | close() override
virtual bool | open() override

## Detailed Description

Communication via Modbus requires the interaction between a single Modbus client instance and multiple Modbus servers. This class provides the client implementation via a serial port.

## Member Function Documentation

### QModbusRtuSerialMaster::QModbusRtuSerialMaster(QObject *parent = nullptr)

Constructs a serial Modbus master with the specified parent.

### `[override virtual protected]` void QModbusRtuSerialMaster::close()

Reimplements: QModbusDevice::close().

### int QModbusRtuSerialMaster::interFrameDelay() const

Returns the amount of microseconds for the silent interval between two consecutive Modbus messages.

See also setInterFrameDelay().

### `[override virtual protected]` bool QModbusRtuSerialMaster::open()

Reimplements: QModbusDevice::open().

Note: When calling this function, existing buffered data is removed from the serial port.

### void QModbusRtuSerialMaster::setInterFrameDelay(int microseconds)

Sets the amount of microseconds for the silent interval between two consecutive Modbus messages. By default, the class implementation will use a pre-calculated value according to the Modbus specification. A active or running connection is not affected by such delay changes.

Note: If microseconds is set to -1 or microseconds is less than the pre-calculated delay then this pre-calculated value is used as frame delay.

See also interFrameDelay().

### void QModbusRtuSerialMaster::setTurnaroundDelay(int turnaroundDelay)

Sets the amount of milliseconds for the silent interval between a Modbus broadcast and a consecutive Modbus messages to turnaroundDelay. Typically the turnaround delay is in the range of `100` to `200` milliseconds.

This function was introduced in Qt 5.13.

See also turnaroundDelay().

### int QModbusRtuSerialMaster::turnaroundDelay() const

Returns the amount of milliseconds for the silent interval between a Modbus broadcast and a consecutive Modbus messages. The default value is set to `100` milliseconds.

This function was introduced in Qt 5.13.

See also setTurnaroundDelay().