【Qt】QModbusTcpServer类

00. 目录

文章目录

    • 00. 目录
    • 01. 概述
    • 02. 开发环境
    • 03. 成员方法
    • 04. 信号
    • 05. 预留
    • 06. 附录

01. 概述

QModbusTcpServer类表示使用TCP服务器与Modbus客户端进行通信的Modbus服务器。

 Header:  #include <QModbusTcpServer>qmake: QT += serialbus Since: Qt 5.8 Inherits: QModbusServer

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

Modbus TCP网络可以具有多个服务器。服务器由QModbusTcpClient代表的客户端设备读取/写入。

02. 开发环境

Windows系统:Windows10

Qt版本:Qt5.15或者Qt6

03. 成员方法

 QModbusTcpServer(QObject *parent = nullptr)构造一个具有指定parent的QModbusTcpServer 。所述serverAddress预设为255。virtual ~QModbusTcpServer()析构函数void installConnectionObserver(QModbusTcpConnectionObserver *observer)安装一个观察者,当新的TCP客户端连接到该服务器实例时,该观察者可用于获取通知。另外,观察者可以用来拒绝传入的TCP连接。QModbusTcpServer拥有给定观察者的所有权。任何先前设置的观察者将被删除。可以通过使用nullptras参数调用此函数来卸载观察者。此功能在Qt 5.13中引入。virtual void close() override重新实现:QModbusDevice :: close()。virtual bool open() override重新实现:QModbusDevice :: open()。virtual QModbusResponse processRequest(const QModbusPdu &request) override重新实现:QModbusServer :: processRequest(const QModbusPdu&request)。处理由指定的Modbus客户端请求请求并返回一个Modbus响应。根据Modbus应用协议规范1.1b,以下Modbus功能代码被过滤掉,因为它们是串行线路:QModbusRequest::ReadExceptionStatusQModbusRequest::DiagnosticsQModbusRequest::GetCommEventCounterQModbusRequest::GetCommEventLogQModbusRequest::ReportServerId

04. 信号

void modbusClientDisconnected(QTcpSocket *modbusClient)
当前基于TCP的modbusClient与该Modbus TCP服务器断开连接时,将发出此信号。请注意,可能同时连接了多个TCP客户端。可以通过installConnectionObserver()安装QModbusTcpConnectionObserver来接收有关传入的新连接的通知。此功能在Qt 5.13中引入。

05. 预留

06. 附录

6.1 Qt教程汇总
网址:https://dengjin.blog.csdn.net/article/details/115174639


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部