组态王 modbus 读取不连续地址

我用组态王读写台达DOP-A的触摸屏寄存器,发现如果寄存器范围相隔较远的时候读的很慢,甚至出错,怀疑是组态王将之间的所有数都读回来了,请教是组态王就是这么回事呢,还是和台... 我用组态王读写台达DOP-A的触摸屏寄存器,发现如果寄存器范围相隔较远的时候读的很慢,甚至出错,怀疑是组态王将之间的所有数都读回来了,请教是组态王就是这么回事呢,还是和台达那边有关系?我能分别读不连续的区域吗?
经过自己的摸索,问题已经解决了,给遇到同样问题的人一个启发。只需要将ModbusMaster.ini中的PackLen = 127改为PackLen = 1即可(ASCII或RTU根据你的使用,这个参数我猜是读取modbus地址的最大连续长度)。这样也有一个不足之处是数据密度小了,对串口利用率下降了,因为之前要读127个地址只需要发送一条指令,现在要发送127条,还是根据需要决定吧,能连续读的话效率会高一些。
展开
 我来答
大瑜小棠
2012-07-16
知道答主
回答量:8
采纳率:0%
帮助的人:11.5万
展开全部
ModbusMaster.ini中的PackLen 是指数据的打包长度,如果设成1的话,就是一个数据一个数据的读上来,不进行打包了,如果要读的数据比较多也比较连续的话,还是建议使用打包,因为打包的设置就是为了能够更快的读取数据
一职什g
2012-07-16 · 超过13用户采纳过TA的回答
知道答主
回答量:46
采纳率:100%
帮助的人:30.6万
展开全部
可以改成64啊,这样分2次就读上来数据了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式