QModbusRtuSerialClient 类

QModbusRtuSerialClient 类表示一个使用串行总线与 Modbus 服务器进行通信的 Modbus 客户端。 更多...

头文件 #include <QModbusRtuSerialClient>
CMakefind_package(Qt6 REQUIRED COMPONENTS SerialBus)
target_link_libraries(mytarget PRIVATE Qt6::SerialBus)
qmakeQT += serialbus
Qt 6.2
继承 QModbusClient

公共函数

QModbusRtuSerialClient(QObject *parent = nullptr)
intinterFrameDelay() const
voidsetInterFrameDelay(int microseconds)
voidsetTurnaroundDelay(int turnaroundDelay)
intturnaroundDelay() const

重写的保护函数

virtual voidclose() override
virtual boolopen() override

详细描述

通过 Modbus 通信需要在单个 Modbus 客户端实例和多个 Modbus 服务器之间进行交互。此类通过串行口提供客户端实现。

成员函数文档

[显式] QModbusRtuSerialClient::QModbusRtuSerialClient(QObject *parent = nullptr)

使用指定的 parent 构造串行 Modbus 客户端。

[重写虚拟受保护的] void QModbusRtuSerialClient::close()

重写: QModbusDevice::close().

int QModbusRtuSerialClient::interFrameDelay() const

返回两个连续 Modbus 消息之间的静默间隔(微秒)。

另请参阅 setInterFrameDelay().

[重写虚拟受保护的] bool QModbusRtuSerialClient::open()

重写: QModbusDevice::open().

注意: 调用此函数时,将删除串行端口的现有缓冲数据。

void QModbusRtuSerialClient::setInterFrameDelay(int microseconds)

设置连续两个Modbus消息之间的静默间隔微秒数。默认情况下,类实现将使用根据Modbus规范预先计算的值。活动连接或运行连接不受这种延迟变化的任何影响。

注意:如果微秒设置为-1或微秒小于预先计算的延迟,则使用此预先计算的值作为帧延迟。

另请参阅interFrameDelay

void QModbusRtuSerialClient::setTurnaroundDelay(int turnaroundDelay)

设置Modbus广播和连续Modbus消息之间的静默间隔毫秒数。通常,周转延迟在100200毫秒之间。

另请参阅turnaroundDelay

int QModbusRtuSerialClient::turnaroundDelay() const

返回Modbus广播和连续Modbus消息之间的静默间隔毫秒数。默认值设置为100毫秒。

另请参阅setTurnaroundDelay

© 2024 Qt公司有限公司。本文件内的文档贡献为各自所有者的版权。本文件提供的文档是根据自由软件基金会发布的GNU自由文档许可协议第1.3版许可的。Qt及其标志是Qt公司,芬兰及/或其他国家/地区的商标。所有其他商标均为各自所有者的财产。