说明

Modbus Poll :Modbus主机仿真器,用于测试和调试Modbus从设备。

简单来说,可以理解为 硬件设备(温湿度、电表、烟感)为从,而我们的采集器为主机,主机采集从设备的数据

建立连接

打开软件

image-20211224142032341

按下快捷键 F3 或者点击 Conneciton 然后在点击Connect...

image-20211224142238399

根据 设备的协议,例如:这里我是Modbus TCP/IP 一般这里设备安装人员会告知你的

还有设备的IP和端口

新建数据

打开软件,点击 这个 new 或者 Ctrl+N 效果都是一样的

image-20211224142514281

通过按键打开,或者使用快捷键 F8

image-20211224142953625

进入数据设置页面

image-20211224144502509

这里的设置就需要根据,设备安装的那人去沟通,这个需要让他们整理一份文档出来

例如:

这个, 功能码就需要和数据设置页面是同一个功能码!!! 地址就是寄存器地址

数据设置

现在已经读取到数据了,因为浮点数长度是4字节 一个寄存器大小是16位二进制存储 ,也就是2个字节,所以需要2个寄存位,存储1浮点数的值

image-20211224145057518

修改数据类型,获取到具体的值

image-20211224151429981

转换后的值

image-20211224151620657

读取一个字段的值

数据文档

这是需要读取的值,其中 功能码、地址、数据类型 是我们的关注点

image-20211224152032087

Modbus Poll 设置

这个代表读是温度的值,因为从设备设置的数据类型为浮点数 ,而浮点数长度是4字节,而一个寄存器位只能存储2个字节,所以使用了2个寄存器位,用于存储1个数据

image-20211224152345067

依次类推,例如我要读取湿度,那么我应该这样设置

image-20211224152759386

数据转换

需要选中这一列数据,然后点击鼠标的 右键!!!

image-20211224153315024

转换后的数据

通过转换后的数据,我们就知道, 此时的温度是 17.9 读,也就是采集到设备的值

image-20211224153429204

读取一组值

其实独居一组数据和读取 单个数据是一样的,就是设置寄存器位,比如我要读取一个设备的所有的数据,那我们就需要根据文档换算一下

例如:一个设备有4个字段,每个字段的存储都是浮点数,那寄存器位的读取应该是

6*2=12 也就是说从 0开是读,读12个寄存器位置

image-20211224153905486

转换后的数据,转换规则和单个字段一致

代码读取

代码的读取的利用 modbus 的库,百度一搜就有… 我也是 copy 的剩下的就要自己写了

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐