自动化与控制中的实时处理基础知识

几乎所有的自动化和控制系统都是使用数据处理器、微处理器、数字信号处理器(dsp)或任何其他处理设备设计、开发和建造的。实时控制系统系列文章的第1部分。

通过马里奥老爹 2014年6月24日

这是关于实时系统、实时处理和应用于自动化和控制系统的实时软件设计基础的系列文章的第一部分。

今天,几乎所有的自动化和控制系统都是使用数据处理器、微处理器、dsp或任何其他处理设备设计、开发和建造的,这些设备执行从软件程序派生或编译的指令。只有极少数专门的控制设备仍然使用普通硬件(或“可编程”硬件,如FPGA)来完成它们设计的工作。

然而,要为控制器或自动化设备设计和开发软件应用程序,需要特殊的技能和对自动化和控制问题的良好理解。许多设计人员和程序员都在构建基于计算平台的web服务器、信息系统、业务流程管理系统和许多其他重要而有价值的基础设施。但当涉及到工业过程控制器时,设计师认识到需要一个新的设计和编程范式。这在整个自动化和控制行业得到了广泛的认可。

实时处理

这种特殊的范式与许多概念密切相关,包括信号采集、传感器、控制设定点和其他主要与过程状态变量、测量和控制有关的方面。但大多数情况下,这种范式与实时处理密切相关。实时处理的概念是任何工程师在设计、开发和部署新的自动化和控制系统时必须考虑的最重要的问题。换句话说,这就是自动化软件设计人员与其他应用软件设计人员的区别所在。没有更好或更坏,更容易或更难;就是不一样。

自动化控制器必须是实时系统,因为它们必须控制需要实时控制的物理过程或工厂。在这一点上,自动化控制器设计者必须非常清楚什么是实时系统。Hermann Kopetz在他的书《实时系统:分布式嵌入式应用程序的设计原则》(2011)中指出:“实时计算机系统是这样一种计算机系统,其中系统行为的正确性不仅取决于计算的逻辑结果,还取决于产生这些结果时的物理时间。所谓系统行为,我们指的是系统在时间上的输出序列。对于任何要治理的物理设备,都需要一个能够在非常特定的时间范围内获取某些输入信号并产生某些特定输出信号的控制器。如果控制器输出发生在该时间范围之外,这些输出将不再有效,并将在物理设备中产生故障甚至灾难性故障。

实时的解释

我们怎样才能确定计算机系统实际上是实时系统呢?图1(上面)可以帮助回答这个问题。假设有一个非常简单的系统,只有一个输入和一个输出。这样的系统每次接收到输入信号都会产生一个输出信号。请注意,在图1中,输出信号是在输入信号引入t秒后产生的。

现在假设我们重复地(但不是周期性地)对这个系统应用相同的输入信号。我们可以期望这个系统每次都产生相同的输出信号t输入信号应用后。不幸的是,在实际控制器中并不是这样。控制器每次都会产生相同的输出信号,只是时间不同t控制器产生每个输出所需的时间可能会略有增加(见图2)。如果我们重复这个实验,我们会发现控制器的响应时间落入一个变化区间,例如Δt.一些文献提到Δt比如“延迟抖动”。

问题是:谁决定了这个大小Δt?它很大程度上取决于控制器硬件是如何设计的,使用了哪些组件,以及在控制器中运行的应用软件是如何设计和开发的。

在这个阶段,需要提到一些东西:时间大小t与时变值无关,Δt.前者取决于控制器应该执行的功能,而后者取决于设计者如何在控制器内部实现这些功能。

需要指出的是,没有控制器系统可以达到Δt =0.因此,控制器设计者必须知道物理设备在不引起任何故障或损坏的情况下所允许的最大值,因此他/她必须建立正确的实时控制器,并考虑到这种约束。

硬实时,软实时

根据物理设备和要执行的控制类型,控制器可以分为“硬实时”或“软实时”。如果被控制的设备或过程的特定特性使其不符合Δt约束会产生故障或故障,这时控制器必须是“硬实时”控制器。另一方面,如果被控制的具体特性是这样的,不符合其Δt约束会产生设备功能的退化,但不会产生任何故障或失败,这时可以使用“软实时”控制器。

的价值Δt作为过程控制器设计的主要约束条件在很大程度上取决于要控制的过程的性质。每个物理进程都有自己的“延迟”,也就是说,进程对一个或几个输入的变化做出反应的平均时间。这种延迟与控制这一过程的物理、化学和电气定律有关。例如,石油生产过程的延迟与电力传输系统的延迟是非常不同的。

下表显示了某些进程类型的延迟时间。

根据经验,自动化控制器设计的一个基本的“经验法则”是控制器的Δt必须至少比该控制器打算治理的进程的延迟时间小5倍。当然,这也取决于许多其他因素,如功耗、散热、可用空间和许多其他限制,这里不讨论。

设计一个硬实时控制器比构建一个软实时控制器要难得多。根据物理过程和具体应用,设计师必须选择建造其中一种。

市场上大多数用于工业应用的控制器都是软实时控制器。好消息是,几乎所有的工业自动化和控制应用都可以由软实时控制器管理。只有在少数非常特定的情况下,才需要安装硬实时控制器。但是,只要设计或选择了一个好的控制器,其中它的延迟就会抖动Δt相对于进程延迟足够小,可以提供可靠的自动化解决方案。

下一个:可靠性标准

充分设计可靠控制器的标准是什么?这个有趣的主题将是本系列下一篇文章的内容。

Mario Torre是一名实时系统设计和架构师专家,专注于数字油田自动化、控制和实时信息系统。他是一名电子工程师,拥有系统工程硕士学位。Mario目前是德克萨斯州休斯顿哈里伯顿地标软件和服务公司智能运营解决方案(IOS)全球集团的咨询顾问。bmerchut@cfemedia.com

看到控制工程PLC和PAC页面

请使用下面的界面提出任何问题或评论。

-请参见下面的“自动化与控制中的实时处理基础”第2部分。