恭喜,你发布的帖子
发布于 2017-07-19 10:59:21
8楼
看来应用场合不同,在软件上提升轮询速度的方法也不一样啊,机械运动控制、过程控制、数据采集等场合还有区别的。
我应用的场合仅限于数据采集,大多数是传感器数据,根据采集的数据进行数据记录和报警提示,可以说只有读取,没有写入,所以才有此一问。
对于变化缓慢的数据采集间隔时间长些,可以忽略轮询周期的影响;
对于变化较快的数据采集间隔短些,避免一些数据遗漏,从站少还好,从站多了受限于轮询速度。
每个从站数据量也不大。所以轮询速度几乎只受到站点数量的影响。
其实,传感器数据也可已通过PLC开关量、模拟量模块采集,但是数量有限,成本高;而用modbus总线最难的就是数据延迟问题的解决。
很好,很好。
说出了我们之间的行业不同造成基本的区别。
用于传感器数据采集的,非常注重采集时间的影响。如果采集频率接近轮训的周期,例如采集周期需要500毫秒,而轮训周期在350到550毫秒之间的话,那么有可能相邻的两次采集相差了两次轮训或者1次轮训。这样的差别采集到的数据是有明显的区别的。
这种情况实在很难解决。只能用其他高性能系统控制了。
如果把采集周期定得很大,可以减少上述差异带来的影响,以致相差一两个轮训周期都不会产生影响。但是就本身采集周期过大已经是一种影响了。如果不想放弃200系统,设计人员需要慎重考虑两种周期的互相影响做好相应的调整。
请填写推广理由:
分享
只看
楼主