QModbusTcpServer Class

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

This class was introduced in Qt 5.8.

Public Functions

QModbusTcpServer(QObject *parent = nullptr)
virtual ~QModbusTcpServer()
void installConnectionObserver(QModbusTcpConnectionObserver *observer)

Signals

void modbusClientDisconnected(QTcpSocket *modbusClient)

Reimplemented Protected Functions

virtual void close() override
virtual bool open() override
virtual QModbusResponse processRequest(const QModbusPdu &request) override

Detailed Description

通过Modbus通信需要在单个Modbus客户端实例和单个Modbus服务器之间进行交互。这个类通过TCP服务器提供Modbus服务器实现。
Modbus TCP网络可以有多个服务器。服务器由QModbusTcpClient表示的客户端设备进行读写。

Member Function Documentation

QModbusTcpServer::QModbusTcpServer(QObject *parent = nullptr)
	用指定的父类构造一个QModbusTcpServer。serverAddress预设值为255
[signal] void QModbusTcpServer::modbusClientDisconnected(QTcpSocket *modbusClient)
	当当前基于TCP的modbusClient与此Modbus TCP服务器断开连接时,发出此信号。注意,可能有几个TCP客户端同时连接。
	可以通过installConnectionObserver()安装QModbusTcpConnectionObserver来接收传入的新连接的通知。
	这个函数在Qt 5.13中被引入。
See also installConnectionObserver.
virtual] QModbusTcpServer::~QModbusTcpServer()
	Destroys the QModbusTcpServer instance.
[override virtual protected] void QModbusTcpServer::close()
	Reimplements: QModbusDevice::close().
void QModbusTcpServer::installConnectionObserver(QModbusTcpConnectionObserver *observer)
	安装一个观察者,该观察者可用于在新的TCP客户端连接到此服务器实例时获取通知。此外,观察者还可以用来拒绝传入的TCP连接。
	QModbusTcpServer获得给定观察者的所有权。任何先前设置的观察者都将被删除。可以通过以nullptr作为参数调用这个函数来卸载观察者。
	这个函数在Qt 5.13中被引入。
See also QModbusTcpConnectionObserver.
[override virtual protected] bool QModbusTcpServer::open()
	Reimplements: QModbusDevice::open().
[override virtual protected] QModbusResponse QModbusTcpServer::processRequest(const QModbusPdu &request)
	Reimplements: QModbusServer::processRequest(const QModbusPdu &request).
	处理request指定的Modbus客户端请求,并返回一个Modbus响应。
	根据Modbus应用协议规范1.1b,将以下Modbus功能码过滤掉,因为它们只是串行线:
QModbusRequest::ReadExceptionStatus
QModbusRequest::Diagnostics
QModbusRequest::GetCommEventCounter
QModbusRequest::GetCommEventLog
QModbusRequest::ReportServerId
	对TCP服务器的请求将得到一个Modbus异常响应,异常代码为QModbusExceptionResponse::IllegalFunction。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值