我用组态王和一个modbus设备通讯,如何随时改变采集频率?
答案:3 悬赏:10 手机版
解决时间 2021-11-18 07:42
- 提问者网友:情歌越听越心酸
- 2021-11-17 20:09
我用组态王和一个modbus设备通讯,如何随时改变采集频率?
最佳答案
- 五星知识达人网友:怙棘
- 2021-11-17 20:16
将设备的16进制地址转换为10进制:0003H(16进制数,H没用,只是说明该数为16进制数)=0003。
设备定义PLC----莫迪康---Mobus-rtu----串口。
变量定义:变量类型选IO实型,连接设备自己选一下,寄存器里填40003或40004。(这里说一下,如果你的设备的开始位为0的话就要在地址后面再加一个1.具体说明参看组态王设备驱动帮助里的PLC---莫迪康---MODbus-rtu )
最后,数据类型的选择也很重要一般选择 Short型或UShort型或Long型(组态王的数据类型定义很乱,也不能完全怪软件开发,设备生产也有问题。不要将它和C等编程语言的类型定义严谨相比)
用组态王的设备测试功能试一下就会明白了,另外,设备定义成Short时组态王会读取一个寄存器的数据,定义成LONG时会连续读取两个寄存器的数据。这在设备数据分高、低位存储时就会有很大的区别。
设备定义PLC----莫迪康---Mobus-rtu----串口。
变量定义:变量类型选IO实型,连接设备自己选一下,寄存器里填40003或40004。(这里说一下,如果你的设备的开始位为0的话就要在地址后面再加一个1.具体说明参看组态王设备驱动帮助里的PLC---莫迪康---MODbus-rtu )
最后,数据类型的选择也很重要一般选择 Short型或UShort型或Long型(组态王的数据类型定义很乱,也不能完全怪软件开发,设备生产也有问题。不要将它和C等编程语言的类型定义严谨相比)
用组态王的设备测试功能试一下就会明白了,另外,设备定义成Short时组态王会读取一个寄存器的数据,定义成LONG时会连续读取两个寄存器的数据。这在设备数据分高、低位存储时就会有很大的区别。
全部回答
- 1楼网友:拜訪者
- 2021-11-17 21:03
另外当我下方电力模块有报警时,不到采集时间,电力模块主动发报警,,。,,,。。这个目前知道的方法就是增加组态王采集频率,,我也初学组态王,,跟帖求答案
- 2楼网友:狂恋
- 2021-11-17 20:32
MODBUS协议是单主机的协议,只有主机可以发起通讯,从机只被动的响应主机的请求,按照这个思路,单纯的MODBUS协议本身是没有办法实现类似中断请求这样的从机主动报警功能的。
不知道你用的电力模块有没有单独的报警输出信号,可以把这些信号接到上位机,报警信号使用单独的信号,当然,报警信号本身与MODBUS是没有关系的,仅是利用报警信号触发MODBUS进行通讯。主机接收到报警信号后,主机主动与对应的模块通讯。
不知道你用的电力模块有没有单独的报警输出信号,可以把这些信号接到上位机,报警信号使用单独的信号,当然,报警信号本身与MODBUS是没有关系的,仅是利用报警信号触发MODBUS进行通讯。主机接收到报警信号后,主机主动与对应的模块通讯。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯