QT ModbusTcp主站的使用 QModbusTcpClient

本文详细介绍了如何在Qt环境中创建并连接ModbusTcp主站,包括设置从站地址、端口号、超时时间和连接尝试次数。同时,文章讲解了如何读取从站数据,以2字节无符号数为例,阐述了设定读取地址、长度,发送读取请求及接收数据的步骤。最后,强调了在处理数据获取时必须关注信号与槽的使用,确保在正确线程中获取结果。

1.ModbusTcp主站的创建和连接
 1.创建
  QModbusTcpClient* modBusTcpClient = new QModbusTcpClient;
 2.设置参数
  1.设置从站地址以及端口号
   1.设置端口号 (ModbusTcp端口号默认为502)
    modBusTcpClient->setConnectionParameter(QModbusDevice::NetworkPortParameter,502);
   2.设置连接的从站地址(若是主从栈在同一电脑内部测试,则设置为本机ip 127.0.0.1,在局域网内则设置为从站的ip即可)
     modBusTcpClient->setConnectParameter(QModbusDevice::NetworkAddressParameter,“192.168.1.74”);
  2.设置连接超时时间以及连接尝试次数
   modBusTcpClient->setTimeout(2000);
   modBusTcpClient->setNumberOfRetries(3);
  3.连接操作 (下面函数 返回值为1时连接进程成功初始化,为0初始化失败)
modBusTcpClient->connectDevice();//要注意连接时在另一进程,函数执行完比不代表完成连接
 3.连接结果的查看
modbusTcpClient->status();//函数返回值为连接状态
signal QModbusDevice::stateChanged(QModbusDevice::State state)//连接状态变更信号
2.ModbusTcp值得获取
 以读取2字节长度无符号为例
 1.设置要读的数据的Address,和长度
  QModbusDataUnit requestData(QModbusDataUnit::HoldingRegisters,6,10);
  参数1指的是读寄存器(2字节为单位)
  参数2读的起始地址为6
  参数3读

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值