YFIOServer后台驱动算法优化

简介: 以前,虽然YFIOServer的驱动实现了各种PLC的通信(如PPI,MPI,Modbus等等),但是以前的IO变量读写并没有优化,所以当要访问的变量一多,效率就成为问题

以前,虽然YFIOServer的驱动实现了各种PLC的通信(如PPI,MPI,Modbus等等),但是以前的IO变量读写并没有优化,所以当要访问的变量一多,效率就成为问题。

目前,采用了最新的优化算法(具体思路下面再说),效率提高了好多倍,有如下指标可以参考,以前用Prodave访问S7-300PLC(用MPI访问,波特率19200),10个变量,读一次,近500ms,目前经过优化,读1000个变量,不过200ms,效率提高了不知多少倍。

这样一来,YFIOServer终于实现了真正的工控应用,逐渐走向了工业现场。目前配水系统,四车系统都采用该后台,效果很好,编程也变得异常简单,不用在考虑太多的通信问题,直接访问后台就可以了。
image.png
配水系统
image.png
四车系统

--------------------

优化算法简介

--------------------

目的:因为与硬件进行通信最耗时,数据解析和类型转换倒不是瓶颈,所以用最快速的方法把要获取的数据或要写入的数据,整体一次性完成。

思路:访问的变量地址要归类,此外要排序,便于批量操作。

实现:在上位机内存中,建立硬件数据映射表,此外还要建立一个同样大小的标志表,根据变量地址和类型填写标志表的读写标志,最后程序统一更加读写标志完成读写。

相关文章
|
1月前
|
算法
经典控制算法——PID算法原理分析及优化
这篇文章介绍了PID控制算法,这是一种广泛应用的控制策略,具有简单、鲁棒性强的特点。PID通过比例、积分和微分三个部分调整控制量,以减少系统误差。文章提到了在大学智能汽车竞赛中的应用,并详细解释了PID的基本原理和数学表达式。接着,讨论了数字PID的实现,包括位置式、增量式和步进式,以及它们各自的优缺点。最后,文章介绍了PID的优化方法,如积分饱和处理和微分项优化,以及串级PID在电机控制中的应用。整个内容旨在帮助读者理解PID控制的原理和实际运用。
88 1
|
1月前
|
机器学习/深度学习 算法 Oracle
ICLR 2024:近似最优的最大损失函数量子优化算法
【2月更文挑战第27天】ICLR 2024:近似最优的最大损失函数量子优化算法
32 3
ICLR 2024:近似最优的最大损失函数量子优化算法
|
3月前
|
算法 5G 网络性能优化
基于遗传优化的多属性判决5G-Wifi网络切换算法matlab仿真
基于遗传优化的多属性判决5G-Wifi网络切换算法matlab仿真
|
2月前
|
算法 大数据
【MATLAB】鲸鱼算法优化混合核极限学习机(WOA-HKELM)回归预测算法
【MATLAB】鲸鱼算法优化混合核极限学习机(WOA-HKELM)回归预测算法
64 2
|
3月前
|
机器学习/深度学习 算法
【Matlab智能算法】PSO优化(双隐层)BP神经网络算法
【Matlab智能算法】PSO优化(双隐层)BP神经网络算法
|
1月前
|
机器学习/深度学习 算法 搜索推荐
外卖平台推荐算法的优化与实践
外卖平台推荐算法的优化与实践
|
2天前
|
机器学习/深度学习 人工智能 算法
揭秘深度学习中的优化算法
【4月更文挑战第24天】 在深度学习的广阔天地中,优化算法扮演着至关重要的角色。本文将深入探讨几种主流的优化算法,包括梯度下降法、随机梯度下降法、Adam等,并分析它们的特点和适用场景。我们将通过理论分析和实例演示,揭示这些优化算法如何帮助模型更高效地学习参数,从而提高模型的性能。
|
10天前
|
算法
R语言使用随机技术差分进化算法优化的Nelson-Siegel-Svensson模型
R语言使用随机技术差分进化算法优化的Nelson-Siegel-Svensson模型
20 0
|
17天前
|
算法 数据处理 C语言
【数据结构与算法】快速排序(详解:快排的Hoare原版,挖坑法和双指针法|避免快排最坏时间复杂度的两种解决方案|小区间优化|非递归的快排)
【数据结构与算法】快速排序(详解:快排的Hoare原版,挖坑法和双指针法|避免快排最坏时间复杂度的两种解决方案|小区间优化|非递归的快排)
|
19天前
|
算法 索引
【算法与数据结构】深入二叉树实现超详解(全源码优化)
【算法与数据结构】深入二叉树实现超详解(全源码优化)