Linux qt 怎么建立modbus-rtu协议

Linux qt 怎么建立modbus-rtu协议,第1张

1. 下载qextserialport源码(自己可以百度搜索下载)。

2. 如果是linux下的工程,将该压缩包中的posix_qextserialport,qextserialbase的.cpp以及.h文件加入到工程中,然后在工程中定义一个posix_qextserialport变量(假设变量名为RS232),即可对串口进行 *** 作。

3. 若是在windows下,则将win_qextserialport,qextserialbase的.cpp以及.h文件加入到工程中。

4. 找一个modbus标准协议,将 Modbus CRC的两个表格放在数组中供查询,该表格用于计算CRC校验值。一般 modbus协议规范中会附CRC的计算方法。

5. 在通讯数据组织好后,计算其CRC校验值,放在组织好的通讯数据(假设通讯数据存放在TxData中)的最后,然后RS232->writeData(TxData,Count)。其中writeData是qextserialport定义的函数,Count是要写入的数据量。

在同一个modbus网络中,只能有1台主机,多台从机。

你的系统中,PLC是通过不同的通讯口与三台pc通讯的,则每个通讯口的网络独立,组成3个modbus网络,仍符合“1台主机:1台从机”,所以是可以的。

由于3个modbus网络是分开的,故要设定3个从机地址,地址号可以相同,也可以不相同。而且每个modbus网络的协议是分别编程的。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7183692.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-02
下一篇2023-04-02

发表评论

登录后才能评论

评论列表(0条)

    保存