payfsl
级别: 工控侠客
精华主题: 2 篇
发帖数量: 2484 个
工控威望: 2747 点
下载积分: 38086 分
在线时间: 466(小时)
注册时间: 2010-08-03
最后登录: 2024-05-02
查看payfsl的 主题 / 回贴
楼主  发表于: 2021-09-27 04:35
Modbus究竟能提速多少?轮询长达几十秒?

Modbus RTU在485通讯里几乎是80%的梯形图编辑者的做法是用时间加计数的方法轮巡,

在用Modbus RTU 做简单的通讯时,这样做确实影响不大

也是一眼就能看懂,而且很好理解

但是如果我们要读取很多的参数,或者很多从站的数据呢?

每个指令从发送到接受,然后再到PLC的时钟扫描周期完成,

我们中间浪费了一共多少可以利用的时间呢?

如果一条指令通讯错误时,在超时时间设置默认1000MS的情况下

假如20个指令需要轮询,中间报错的有4个时,一轮下来会有多少时间?

怎么有效率地优化一下通讯速率的问题

在这里和在座的朋友请教这方面的知识

希望有大神路过,能削微的指点一下

看到另一番天地

感谢关注
三人行必有我师焉,择其善者而从之 ,学而不思则罔,思而不学则殆
wangzhentang
大傻
级别: 探索解密
精华主题: 0
发帖数量: 129 个
工控威望: 196 点
下载积分: 8028 分
在线时间: 26(小时)
注册时间: 2018-01-28
最后登录: 2023-11-27
查看wangzhentang的 主题 / 回贴
1楼  发表于: 2021-10-05 15:03
主从结构多站点就是这样,主站广播也要排队返回,一般是提高波特率(类似CAN也是主从,但能上250/500k等),减少发送接收延迟,但还是快不到哪里去。
我个人早期也是485线一个一个连,编程太麻烦,后面采购带Modbus TCP设备或串口服务器(Modbus RTU转TCP,485转网口),PLC也是带以太网接口(大部分硬件比如W5500就8端口,其他常见的也就32端口),不同的是,加了个工控机(上位机编程,多线程)当中转,PLC只要和工控机通信就可以得到其他站点的数据(上位机可以把要的所有位,字数据放入顺序数组,PLC通信一次即可全读),PLC编写的程序也简单高效。