上位计算机与PLC或触摸屏经常基于Modbus TCP传输协议进行通信,读取或者写入PLC或显示屏中相应的内容,来实现某些功能,满足项目的需求。
对于熟悉Modbus TCP协议的用户,可以根据协议和通信文档通过使用常规QTcpSocket完成信息的封装在发送给硬件即可完成功能。相对来说比较麻烦。为此本文主要介绍采用现有的车轮QModbusTcpClient来完成响应的功能。
1、QModbusTcpClient介绍
QModbusTcpClient与Modbus后端进行通信,为用户提供便捷的API。采用QModbusTcpClient和QTcpSocket本质差不多,都是通过tcp进行通信,QTcpSocket需要自己封装相应的modbusTcp协议内容,发送给硬件服务器,计算机本身为客户端,QModbusTcpClient封装好了modbusTcp协议,你只需要理解好,然后填入相应的参数和调用相应的接口就行了,不需要理解modbusTcp协议,,只是项目需要,不需要深入理解的,就能完成响应的功能。
2、QModbusTcpClient的两个重要接口类QModbusClient和QModbusReply
1)QModbusClient类
QModbusClient类是发送Modbus请求的接口,QModbusClient API是围绕一个QModbusClient对象构造的,该对象保留其发送的请求的通用配置和设置。创建QModbusClient对象后,应用程序可以使用它发送请求。返回的对象用于获取响应于相应请求而返回的任何数据。QModbusClient具有异步API。当调用完成时对应的槽函数将会被调用,它采用的参数是QModbusReply对象,该对象包含PDU以及元数据(寻址等)。
2)QModbusReply类<

最低0.47元/天 解锁文章
1059

被折叠的 条评论
为什么被折叠?



