由PLC执行条件控制程序的系统方法外文翻译资料

 2022-04-01 10:04

英语原文共 10 页,剩余内容已隐藏,支付完成后下载完整资料


由PLC执行条件控制程序的系统方法

A. MILIK *,M. CHMIEL和E. HRYNKIEWICZ

西利西亚理工大学格利维采电子学研究所,16 Akademicka St.,44-100格利维采,波兰

摘要:本文介绍了选择性控制程序执行的原始思路,可以显着缩短响应时间。 给出了PLC程序性能的详尽分析。 分析方法解释了选择性控制计划评估的思想,并给出了其可行性要求。 提出了一种基于数据流图方法的系统和正式的程序分析方法。 该方法从控制程序生成非循环图,控制程序是优化,变量分配和指令生成的主题。 图表方法允许确定选择性程序执行所需的变量依赖性和任务分区。 该方法利用硬件支持的变量检测。 它对系统操作是透明的,并且可以评估需要更新的区块。

关键词:控制程序,PLC,LD,IL,FPGA,编译器,控制程序优化,PLC编程,流程图。

1.介绍

PLC是用于执行控制程序的定制计算机。 它能够处理多个独立的进程。 与典型(势在必行)编程相反,PLC侧重于顺序处理特定任务,处理多个控制任务[1]。 编程概念可以在所有任务中统一分配计算能力。 每个任务都是以一种函数形式构造的,它以离散方式确定控制值。

控制系统由三组变量X,Y,Q来描述。组X的项目与控制输入信号相关联,而组Y的项目与输出信号相关联。 集合Q的变量存储控制过程的内部状态。 该系统由功能f和g来描述,它决定Y和Q组的变量值:

系统的离散操作由集合Q的变量值强调。索引n和n 1分别表示当前和下一个周期值。

PLC是控制系统的一部分(图1),与传感器,执行器和受控对象构成一个控制系统。应尽量减少控制器的响应时间,以便立即响应输入条件的变化[2,3]。这些要求与典型的计算应用程序不兼容,无需直接反馈。计算吞吐量是这类系统的主要目标,而计算延迟并不重要。这种方法有利于流水线结构,将计算分配到几个处理步骤中。样品以重叠的方式进行处理,具有最高的吞吐量和阶段利用率,从而引入输入和输出样品之间的处理延迟。 PLC控制对

象的闭环中运行,不得以流水线方式运行。控制算法和对象响应之间的紧密对应是必需的。

图1.PLC基础控制系统

PLC的计算周期如图2所示[7]。 它配备专有的操作系统,可管理整个系统的操作。 名为“程序执行”的程序块负责执行用户提供的控制算法。 专用于收集输入信号的周期将输入值传输到过程映像存储器,以保护数据竞争。 计算结果在处理结束时从过程映像存储器中调出,以消除处理期间的意外输出切换。 程序循环的剩余部分负责执行系统和内务管理功能。 对于进一步的性能考虑,这些任务已被分组到系统功能中。

图2. PLC系统功能的典型计算周期。

本文着重于减少用户程序的执行时间。 第二章评估程序执行模型。 它旨在确定控制程序重新计算的条件。 显示事件驱动计算的效率。 第三章介绍了控制程序分析,优化和依赖追踪的形式化方法。 它利用适合详尽控制程序评估的原始图形表示。 用基于图的方法也解决了程序分割的问题。 第四部分讨论了一个特定的硬件支持,它显着改进了事件驱动系统,并通过确定要重新计算的程序块来减少程序开销。 最后,本文结尾处举例说明了方法应用和获得的结果。

2.选择性控制程序处理

2.1. PLC性能。

为了便于比较,PLC效率制造商通过扫描时间来描述其性能,相当于执行1000条指令。测试集是由70%的逻辑指令和30%的其他指令组成的混合。它基于对[8]中给出的代表性程序集的分析。这个因素没有描述特定控制系统的控制器吞吐量。 PLC程序性能和PLC系统本身是通过输入信号变化的响应时间来测量的。该图(图3)以图形方式显示执行周期。标记为tEV的时间间隔是事件(可变值更改)在下一个周期中处理的时间范围。 PLC的响应时间会有所不同,并取决于事件发生的时间。它假定输入状态在一个周期开始时被锁存和收集(tI N),结果在最后发送(tOU T)。详细给出的所有系统活动都汇总为一个系统活动块(tSY S)。提出的模型允许对响应时间进行分析。输入事件的响应时间落在由最短(tR MIN)和最长时间(tR MAX)确定的范围内:

图3.参考计算周期的PLC响应和观察时间

出于安全原因,考虑最长时间(tR MAX)。最坏情况分析表明PLC的响应时间几乎等于扫描时间的两倍(tSC AN)。

可以注意到,当事件发生在接近输入读取周期时,响应时间从根本上归结为最乐观的情况。乐观响应时间比单次扫描时间更短。对于周期性变化的信号,其周期必须大于扫描时间。另一方面,由(1)描述的控制过程评估集合Q和X.属于集合Q的变量存储受控进程的内部状态。控制程序的不可预知的执行时间禁止使用Q项目来创建时间依赖性[9]。时间依赖性是通过使用专用硬件定时器单元来实现的。在提出的方法中,定时器输出与属于集合X的变量相关联,即使它们是PLC的内部组件。最后,当变量xi被约束为常数值时,两个离散时刻的控制方程为:

如图所示,只有在集合X的变量值中检测到变化时才应触发控制程序计算。 该组与控制过程的所有类型的输入信号(对象传感器,定时器)相关联。

2.2。事件驱动概念的实施大纲。

根据提出的考虑,可以提出以下问题。 “是否有可能减少引入非标准程序执行方法的响应时间?”。这种方法被呈现并被称为事件驱动处理。它受到[10]中给出的过程控制分析的启发。由于主循环的执行时间非常长,程序的计算时间需要非常规地执行紧急控制。

事件驱动处理的概念如图4所示。这个想法假设条件执行程序块,只要检测到相应输入集合中的变化。这种方法影响了PLC架构的许多方面。它可以作为在PLC程序中实现的思想的早期调查而引入。这可以确定其可行性并估算其性能。已经提出了自定义编译器,其基于自动用户程序分区自动实现事件驱动的处理。这种方法不仅进一步扩展到程序的构建,而且还扩展到支持开发过程方法的特定硬件体系结构的设计。硬件 - 软件协同设计方法通过与变化检测相关的数据传输进一步提高了性能。精确定制的硬件平台和特定的编译器支持允许通过描述的方法实现最佳性能。

图4.条件执行任务

2.3。 事件驱动方法性能评估。

术语驱动的处理这个术语需要对其可行性和性能评估进行正式的说明。 最重要的问题涉及所提议模型的计算的正确性。 另一个目标是与标准方法相比确定系统性能。 所有的PLC都是可编程系统的祖先,一次对单个参数进行评估。 基本假设要求最短信号变化时间TC HG比tSC AN表示的处理时间长。

这个假设(和要求)确保控制器能够计算出所有输入信号变化的响应,并且不会丢失任何事件。 当服务对象和输入信号的数量不断增长时,扫描时间和响应时间都在增加。 响应时间的增加减少了由其吞吐量确定的控制器的应用区域。 对于单个任务(图5A),响应时间如下给出:

与标准方法相比,可以计算出差异时间。 假设任务执行时间tT保持不变。 这允许比较两种方法并确定对事件驱动概念的要求,以便与标准方法相竞争。 我们来考虑响应时间差异:

图5.编程式事件驱动处理的响应

响应时间增加(t)比较允许确定对条件执行块施加的限制。最小响应时间通过条件执行测试(负向减少)增加。事件驱动的程序化方法由于其本质总是显示最小响应时间的增加。最大响应时间允许确定参考任务执行时间的条件测试的执行时间之间的比率。对于将观察到最大响应时间的减少。当条件测试执行时间少于执行时间的三分之一时,平均响应时间将减少。单块控制程序用于评估目的。控制程序由多个任务(块)构成,这些任务由操作系统以给定的顺序执行[5,6]。这种观察非常重要。基于这种观察,可以推导出事件驱动概念的需求。任务块之前是确定重新计算任务的必要条件块。 (3)给出了以流程图形式显示的任务重新计算的标准(图4)。该图描绘了任务触发tE和任务执行tT的执行时间。所有需要重新计算的多重任务(图5B)的最大响应时间如下:

当使用概率方法而不是(4)时,可以确定最小信号周期。 我们也可以假设并非所有的信号都是以最大频率切换的。 这种假设将导致对特定扫描执行选择性控制任务。 为简单起见,我们假设任务执行时间的均匀分布(所有任务需要相同的时间进行计算),并且在单个循环运行期间只会触发一个任务。 考虑到程序执行时间tP:

设所有条件输入块的最大执行时间作为所有计算执行的小数部分。 根据考虑因素d给出如下:

根据任务执行时间和相应因素描述程序执行时间:

根据认知模型的相对程序执行加速度eta;P描述如下:

上述说法证明了程序拆分为任务的本质。 显示了与任务数n成比例的程序分割带来的好处。 事件驱动处理引入了额外的任务识别成本。 该方法的效率与d给出的识别率成正比。 为了使事件驱动的处理具有竞争力,任务识别时间必须最小化。 这是通过程序生成方法和硬件辅助变更检测来解决的。

选择性程序处理

为了选择性处理,每个程序应由两个分别链接的块组成,这两个块是一个条件触发块和一个标准处理块。 此过程可以手动应用于现有程序。 手工准备工作效率低,复杂且耗时。 而且,不适当构造的触发块在需要时将无法调用处理块,导致行为不当和控制处理不正确。

3.1。 LD程序中的计算依赖关系。

公式(3)描述了事件驱动处理的一般要求。在PLC中,有三组变量与输入,输出和内部标记相关联。我们来考虑图6所示的示例性梯形图。梯级间相关性用虚线标记。案例A是指最近评估的梯级扫描。图表旁边的波形显示了从输入到所有梯级的事件传播。案例B展示了脉冲产生的概念,其中第一个梯级指的是第二梯级计算的变量。评估第一个梯级时,q4变量的值来自之前的扫描周期(未显示tn - 1)。输入i4的变化由两个梯级评估,并且分配q3和q4的值。 q4变量的变化导致重新评估网络的必要性。当只有与输入信号相关的变量触发计算时,才有可能抑制程序内某些事件的传播。确定变量依赖关系的方法是成功实现事件驱动处理的基本要求。作者开发了这种方法,不仅可以确定变量依赖关系,还可以优化和跟踪整个控制程序中的依赖关系。

图6.梯形图中的计算依赖关系

工作中显示了LD依赖关系跟踪的一种可能方法[11]。 它试图调查分析网络的顺序属性并将其转换为GRAFCET(SFC)表示。 为此,引入了依赖关系和同时性图。 这些图也被用于LD的硬件实现[12]。 类似的想法已经被[13]描述了用于多个上下文硬件执行的LD分区。 详尽的程序分析证明了[14]中给出的方法。 数据流图的具体派生物已经开发并命名为增强型数据流图 - EDFG。 它适用于PLC程序的自动分析。 这个概念已经从LD延伸到IL和SFC。 使用EDFG的最后一种方法用于:为事件驱动概念,程序优化和代码生成提供控制程序属性。

3.2。 用EDFG提取LD程序语义。

为了提取程序的特性,已经开发了一种中间表示法,它允许制定LD算法分析的算法,并提取其属性。 它可以记录逻辑和算术运算。 它跟踪变量和操作的依赖性。 EDFG揭示并行操作,分支和整个任务。 根据目标平台的能力和映射方法学的优势,可以从被滥用的并发症和任务划分中获得优势。 消除死代码是控制程序图表示的一个基本和自然的影响。 所描述的方法实现了优化的代码生成,其与[15]中所述的方法基本上不相同。

EDFG是一个有向无环图。 它由下式给出:G = hV,Ei其中:V是一组节点,E是一组有向边。 有向边e由有序三元组e = hvSRC,vDST,ai描述,其中:vSRC是预先停止的节点,vDST是有向边的后继节点。 a是从集合A中选择的边缘的属性。集合A由适用于允许的节点集合的一元操作组成。 归属边将赋值操作与逻辑或算术补充结合在一起。 这种修改显着简化了逻辑和算术转换和优化。

通过应用图7中简短给出的映射规则将LD转换为EDFG。该图表示在轮胎程序中计算的顺序相关性。 那些依赖和属性很难跟踪何时应用直接代码生成方法。 前两种情况显示可变值访问。 它区分未分配(图7A)和分配(图7B)可变访问。 应该注意的是,EDFG实施负责值读取和赋值的节点,将它们与操作分开。

图7. LD到EDFG映射

值读取节点和值写入节点允许将EDFG链接到变量集。值访问区分在赋值之前进行访问的情况,其中值来自上一个循环或由于前面的赋值而在当前循环中计

全文共15108字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[14699],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。