Modbus Poll-使用
说明
Modbus Poll :Modbus主机仿真器,用于测试和调试Modbus从
设备。
简单来说,可以理解为 硬件设备(温湿度、电表、烟感)为从,而我们的采集器为主机,主机采集从设备的数据
RS485接线规则:黄B,绿A
建立连接
打开软件
按下快捷键 F3 或者点击 Conneciton
然后在点击Connect...
根据 设备的协议,例如:这里我是Modbus TCP/IP
一般这里设备安装人员会告知你的还有设备的IP和端口
新建数据
打开软件,点击 这个 new
或者 Ctrl+N 效果都是一样的
通过按键打开,或者使用快捷键 F8
进入数据设置页面
这里的设置就需要根据,设备安装的那人去沟通,这个需要让他们整理一份文档出来
例如:
这个, 功能码就需要和数据设置页面是同一个功能码
!!! 地址就是寄存器地址
数据设置
现在已经读取到数据了,因为浮点数长度是4字节
一个寄存器大小是16位二进制存储 ,也就是2个字节
,所以需要2个寄存位,存储1浮点数
的值
修改数据类型,获取到具体的值
转换后的值
读取一个字段的值
数据文档
这是需要读取的值,其中 功能码、地址、数据类型 是我们的关注点
Modbus Poll 设置
这个代表读是温度的值,因为从设备
设置的数据类型为浮点数
,而浮点数长度是4字节,而一个寄存器位只能存储2个字节,所以使用了2个寄存器位,用于存储1个数据
依次类推,例如我要读取湿度,那么我应该这样设置
数据转换
需要选中这一列数据,然后点击鼠标的 右键!!!
转换后的数据
通过转换后的数据,我们就知道, 此时的温度是 17.9 读,也就是采集到设备的值
通过转换后的数据,我们就知道, 此时的温度是 17.9 读,也就是采集到设备的值
读取一组值
其实独居一组数据和读取 单个数据是一样的,就是设置寄存器位,比如我要读取一个设备的所有的数据,那我们就需要根据文档换算一下
例如:一个设备有4个字段,每个字段的存储都是浮点数,那寄存器位的读取应该是6*2=12 也就是说从 0开是读,读12个寄存器位置
转换后的数据,转换规则和单个字段一致
代码读取
代码的读取的利用 modbus
的库,百度一搜就有… 我也是 copy 的剩下的就要自己写了