从数学到模型

与显示对象外观的塑料或粘土模型不同,过程模型显示受控过程如何对控制努力和干扰作出反应。流程模型通常采用量化流程输入和输出之间关系的数学方程的形式。

通过万斯·凡多伦,体育博士 二六年十一月一日
一目了然
  • 数学模型解释

  • 用流程模型模拟流程

  • 例子

  • 优势与局限性

与显示对象外观的塑料或粘土模型不同,过程模型显示受控过程如何对控制努力和干扰作出反应。流程模型通常采用量化流程输入和输出之间关系的数学方程的形式。

模型对于理解PID回路和设计过程控制系统是有用的。例如,考虑一个过程,如“简单过程模型”图形所示,将一个圆柱形容器装满水。若流入速率为F,则充注t分钟后槽内液位为:

[1]

R是容器的半径。这样的模型可以用来预测控制器需要多长时间才能装满油箱。

模型的要素

更复杂的过程模型可能涉及更多的变量和更精细的数学关系,但连续过程的所有模型都由四个基本元素组成:

  • 输入变量;

  • 输出变量;

  • 常量;而且,

  • 操作符。

输出是模型设计用来从输入值中预测的数量。在油箱填充的例子中,L是可以从输入t和F预测的输出。

R的值是由水箱的大小决定的常数。常数通常表示物理、化学、经济学、几何等方面的基本原理,这些原理支配着过程的行为。它们的值不会随着输入和输出的变化而变化。

运算符定义从输入和常量计算输出值所需的数学操作。它们可以像方程一中的乘法和平方函数一样简单,也可以像拉普拉斯变换和统计分布一样复杂。

控制模型

过程模型对于设计、实现和测试反馈控制方案是有用的。大多数分析技术都需要一个具有增益和时间常数的模型,以显示过程对控制工作的反应程度和速度。模型参数的知识允许工程师为缓慢作用的过程设计积极的控制器或为快速作用的过程设计保守的控制器。

类似地,模型预测控制器可以使用数学模型来确定为被控制变量实现特定轨迹所需的控制努力。它们基本上是在飞行中设计自己的。

如果已经为特定应用程序开发了控制方案,还可以使用流程模型在虚拟流程上测试该方案,然后再在实际流程上进行尝试。模型的控制方程可以通过自定义代码或几种特殊用途的模拟语言之一编程到控制器或单独的测试计算机中。在计算机时间内运行的模拟可以迅速发现所提出的控制方案中的缺陷,而不会对实际过程造成损害。

模型开发示例

为这些目的开发模型的诀窍是将过程的行为编码到一组控制方程中。考虑“倒立摆模型”图表中显示的例子,一个沉重的负载位于固定在地面上的平弹簧上。水平扰动使负载在一个单一的弧线上来回摆动。

该装置的行为可用于各种模拟研究。它可以是一个孩子的玩具,也可以是一座在风中摇曳的高楼的简化代表。加上额外的关节,它可以接近一个人在迈步时腿的运动。

无论应用什么,基本的物理原理都是一样的。载荷上的重力与弹簧的阻力相反。如果载荷和弹簧结合在一起形成一个质量为m公斤,质心离地面h米的物体,那么整个装置的运动可以用角位置测量e来描述,如图所示。

现实的检验

这个简单的模型预测了半径为R米的圆柱形罐内的水位L(米),在以F立方米/分钟的速度填充t分钟后。

除了最简单的过程之外,所有过程都是如此,这个模型是对现实的近似。它假设没有其他力(如摩擦力)影响负载的运动,并且弹簧施加的阻力与角位置e完全成比例。它还假设过程从一个完全垂直的位置开始移动(即e的值最初为零)。

进一步的简化通常适用于方程2,其中e仍然小到大致等于sin(e)。用e代替sin(e)得到方程三,它是线性的,因为e与e的比值会得到一条斜率为-(k - mg)/mh的直线。

倒立摆过程模型

[2]

倒立摆的简化模型

[3]

简化模型的解

[4]

在哪里

[5]

[6]

角加速度变量e是角位置的二阶导数,t是从过程第一次运动开始的时间,e°是扰动赋予负载的初始角速度,A是过程后续振荡的振幅andù是它们的频率。A和ù的值是依赖于k, m, g, h和e的常数°如公式5和6所示。

然而,方程三的真正目的是生成e与时间的关系图,以预测过程的未来运动。这恰好是一个简单的线性方程,就像第三个。事实上,方程3可以显式地解出e(t)如方程4所示。

由于非线性正弦运算符,方程2的类似封闭形式的解要复杂得多。控制工程师有时会竭尽全力创建一个线性而不是非线性的过程模型,只是为了简化问题的数学计算。

限制

不幸的是,即使是简化的方程3对于控制输出变量e(t)也不是特别有用。与现实世界的过程不同,它不包括控制器可以操纵的输入变量,以产生负载的新位置或速度。

即使这个过程和它的模型可以被修改,以包括一个控制机制(例如,通过将整个装置安装在液压驱动平台上),模型仍然有其局限性。只有当诱导振荡足够小,使得e近似等于sine时,它才成立。否则,这个过程就会按照方程2而不是方程3来进行。

如果输入和输出变量从低值变为高值,然后再返回,那么大多数实际过程的行为确实不同。即使是油箱装满模型也会失败,如果油箱装满到侧面开始鼓起来。流程模型必须考虑这些更改,否则依赖于该模型的控制器将无法获得预期的结果。

这个弹簧负载的总质量是m千克,质心在枢轴点上方h米。在水平扰动后,弹簧从垂直位置偏转了弧度。载荷重量的力为mg.sin(),与弹簧力k相反。常数g和k分别表示重力加速度和弹簧角常数。

如果初始条件不正确,方程三也不能描述倒立摆的实际运动。在这个模型中,唯一的初始条件是e°,表示施加扰动时t=0时刻荷载的角速度。方程6显示了e的值°确定负载后续振荡的振幅。由于水平扰动引起的初速度越大,每次振荡时载荷摆动的距离就越大。

然而,如果e的值°如果恰好测量错误,则模型预测的振动将与负载的实际运动不匹配。类似地,如果负载从一个不是严格垂直的位置开始移动(即e(0)=0),那么模型的预测将是倾斜的。在流程控制依赖于模型预测和流程实际行为之间的良好匹配的应用程序中,控制工程师通常会尝试在启动流程时将所有初始条件设置为零,以避免由于初始条件错误而导致与模型的不匹配。

仿真结果

但是,如果可以识别并最小化这些限制,那么开发良好的流程模型就可以相当真实地模拟流程的行为。为了确保必要的准确性,流程工程师通常会运行一系列验证测试,其中在已知流程行为的各种条件下执行模型。

例如,当阵风更强时,建筑物会摇摆得更远。在类似的条件下,通过增加由扰动(e)所赋予的初始角速度,可以检验倒立摆模型°)。公式6表明,模型振荡的振幅将与荷载的初始速度成正比地增加,就像建筑物的行为一样。

但是,当模拟是在从未在真实过程中尝试过的条件下进行时,尤其是当它们揭示了意想不到的行为时——要么是必须在真实过程中避免的危险情况,要么是将在当前水平上提高产量的操作条件。有了基于完全验证模型的整个模拟工厂,工艺工程师可以通过试错来搜索操作条件(温度、压力、流速等)的组合,从而以更低的成本生产更多的产品。