QT支持ModbusTCP协议通讯,可以是用网线进行modbus通讯,调用QModbusServer类即实现电脑与客户端的通信。
但是在某些情况下,会出现程序正确运行但是连接不成功的情况,在检查客户端没有问题的情况下,有可能是电脑防火墙的问题:
有些情况下,电脑防火墙会将未识别网络视为公共网络,而Qt使用QModbusTcpServer调用connectDevice()功能时防火墙会询问是否进行通信(若没有,则可能时是防火墙未设置防火墙网络保护通知),此时若不点选公共网络只点选工作网络的话,防火墙会阻止QT进行TCP通信,进而造成通信失败。
解决方法:
1、打开防火墙网络保护通知,在跳出通知时点选工作网络与公共网络,这样不论未识别网络归类于何种网络,防火墙都不会影响通信。
2、尝试关闭防火墙,观察通信是否正常。
QT中的QModbusServer类使用时无法连接,有可能时防火墙的问题
最新推荐文章于 2024-08-14 15:46:54 发布