当前位置: 首页 > news >正文

PLC的数据采集能力评估方法及尽可能提高采集速度的措施

一、前言

在追求越快越好的PLC数据采集时,如何评估PLC的能力?如何尽可能提高采集速度呢?本文给出了一些采集建议。

二、采集能力评估:最短采集周期测量

在PLC正常工作状态下,仅采集一个变量,采集周期设置为最小值,对于PLC-Recorder,主动采集的周期最小值为20ms(后续会缩短为8ms)。
启动正式采集,几秒钟后停止,得到一个数据文件。用Ana软件打开采集到的数据文件,查看平均采集周期。如果实际周期大于了20ms,比如是30ms,则该PLC在这种模式下的最快采集周期就是30ms。实际采集时,根据需要增加变量数,则实际采集周期不会短于30ms。
image
如果实际采集周期约等于20ms,则最快采集周期小于20ms,增加采集变量后,实际采集周期也要实测确定。

三、当采集变量比较多时,有哪些缩短采集周期的优化措施?

对于大部分的PLC,PLC-Recorder都采取了批量采集的策略,来尽可能减少通信交互次数,减少采集的实际耗时。朋友们也可以采用以下措施来进一步缩短采集周期:
1.变量地址整理
对于通过绝对地址寻址的变量,都可以通过变量地址整理来改善采集性能。
1)以汇川PLC为例,寻找一片连续的%MW数据区域作为数据采集区域,比如:%MW2000开始,在PLC里增加一段程序,将所有需要采集的数值变量移动到%MW2000开始的区域,中间不要留空白,更不能有重叠。
2)对于西门子PLC,可以单独开一个数据采集数据块,比如:DB100,将所有需要采集的数据,都复制到该数据块。
3)完成数值变量的整理后,进行开关量的打包。比如,数值变量整理到%MW2014,则将16个开关量移入到%MW2015的16个位中去,依次打包。
image
PLC里数据整理程序的执行周期要短于PLC-Recorder的采集周期。
然后,PLC-Recorder对于汇川的%MW2000开始的区域进行数据采集,并可以对于打
image
在极端的情况下,上千个混合变量,经过整理后,采集周期可以从上百ms,缩小为20ms。所以,这个优化措施至关重要。
2.多线采集
如果PLC的通信资源丰富,则可以用PLC-Recorder的多个通道采集同一个PLC。将采集变量从一个通道分配到两个通道下。在很多情况下,其采集周期会短于单通道的周期。多线采集也用于不同速度的采集,减少快速采集的变量数。
3.更换成收听模式
PLC-Recorder的收听模式是由PLC通过TCP或者UDP协议主动发送电文,PLC-Recorder仅接收,解码。这种模式由PLC的程序主动控制发送节奏,最快速度测试到0.24ms,西门子PLC能做到2~4ms。
4.提升PLC的服务能力
一种方式是给PLC的通信服务分配更多CPU负荷。在西门子的S7-1500里,提高通信负荷占比,能显著提升符号方式的采集速度。
另外一种就是更换性能更强的CPU。在支持多CPU的情况下,甚至可以为通信专门配置一块CPU。
5.压缩字符串变量
字符串是一种占用空间大,处理复杂的变量。在PLC里,字符串变量动辄就是上百个字节。其长度是几十个数值变量了,更抵得上上千个开关量。如果一次采集几个字符串变量,对于采集周期的拖累是可想而知的。所以,要尽量减少字符串变量的数量。
另外,PLC-Recorder可以指定每个字符串的长度(默认是20个字符),对于信息长度可控的变量,尽量缩短字符串的采集长度(比实际长度多出2-3个字符即可,PLC-Recorder会自动找尾部的)。

四、总结

不要觉得PLC-Recorder很弱,才需要这样的优化。世界上最著名的采集软件也是要采用这些优化措施才能达到期望的性能,甚至要通过添加专门的软件或硬件来提高采集速度。总之,高速采集还是要花一些心思的。

http://www.jsqmd.com/news/322897/

相关文章:

  • 题解:ARC169F Large DP Table
  • 第二十一届全国大学生智能汽车竞赛 天途亚龙智慧救援创意组
  • js--7
  • RocketMQ高性能揭秘:承载万亿级流量的架构奥秘|得物技术
  • FPGA 工程师如何真正写好 Verilog 代码?
  • IC 和 FPGA,到底区别在哪?
  • 2026年中大型企业数电乐企解决方案选型参考:主流方案对比及应用场景适配建议
  • 在鸿蒙 PC 上采用 Electron 获取本机 IP 地址
  • 蚕豆病人群营养补充有讲究,万和制药和安胶囊可安心选用
  • 世毫九《认知几何学修订版:从离散概念网络到认知拓扑动力学》
  • ARM架构下CentOS内核版本
  • 世毫九《对话动力学的统计场论框架:从语义相变到集体智慧涌现》
  • 安全经理的CISSP备考之路!精进专业技能,成为了我必须坚持的事
  • 【Azure Storage Account】Azure Table Storage 跨区批量迁移方案
  • 世毫九《自洽量子宇宙学:从全息对偶到观测者约束的物理常数》
  • 小白也能秒懂的AI知识库构建指南,让你的大模型不再“翻车“
  • 网口温湿度记录仪----多协议兼容:传感器与现有系统的无缝衔接
  • AI架构选择指南:RAG还是智能体?小白程序员别再瞎卷,用对工具才是硬道理!
  • 启动多个redis进程
  • Java全栈开发工程师面试实战:从基础到高阶的全面考察
  • 基于python的共享充电宝管理系统[python]-计算机毕业设计源码+LW文档
  • DeepSeek总结的`n1 ^ (n2 -n2)`位操作的含义
  • 这个RAG系统竟然同时集成了BM25+向量+GraphRAG,小白也能轻松上手!三模态检索让AI精准度飙升300%!
  • 2026.1.30
  • AI编程的致命陷阱:我差点被Claude带进伪代码的深渊,小白程序员必看避坑指南!
  • 详解防火墙的工作原理与类型 - 教程
  • 互联网大厂Java求职者面试记
  • 法国政府将禁用Teams、Zoom等美国视频会议应用
  • 互联网大厂Java求职者面试的幽默时刻
  • Java毕设项目推荐-基于springboot+vue的甜品店(烘焙)管理系统基于SpringBoot+Vue的甜品店管理系统设计与实现【附源码+文档,调试定制服务】