用于实时计算过程模型状态量的方法和模拟器的制作方法

文档序号:6577716阅读:138来源:国知局
专利名称:用于实时计算过程模型状态量的方法和模拟器的制作方法
技术领域
本发明涉及一种用于在过程计算机上实时计算过程模型状态量 的方法和模拟器,所述过程计算机具有第一计算单元和处理接口,其 中所述过程计算机被设置为能够由所述过程计算机通过所述处理接 口釆集物理过程的至少一个状态量,和/或能够由所述过程计算机输出 至少一个输出量以影响所述物理过程,其中由所述第一计算单元利用 显式积分法计算过程模型,以确定状态量。另外,本发明还涉及另外 一种该类型的方法和用于实现这些方法的模拟器。
背景技术
实践中,先前所给出的用于实时计算过程模型状态量的方法以及 实现这类方法的模拟器尤其是不能离开机电和过程自动化领域来考 虑。通常,过程计算机或模拟器通过其处理接口与真实的物理过程相 联系,使得物理过程的状态量能够通过测量由过程计算机或模拟器所 采集,并且过程计算机或模拟器能够经由该处理接口通过输出量的输 出对真实的物理过程施加影响。
对于过程计算机或模拟器有大量的应用场合,其例如可以根据在 过程计算机或模拟器上执行的是何种类型的过程模型来进行分类。
当在过程计算机上主要实现的是控制算法的时候,过程计算机通 常是控制设备,其中过程模型可以是所实现的控制算法的一部分,例 如在从线性或者还有非线性的多个量的系统去耦时就是这种情况。一 种典型的应用场合在这里是调节器设计,其例如根据所采用的开发工
具、例如在所谓的"快速控制原型(RCP)"的框架内实现。
在其它经常出现的应用场合下,由过程计算机计算一个工艺流程 的数学映像作为过程模型,如汽车发动机或传动机构的数学模型。这样的过程模型通过过程计算机的处理接口与一个"真实的"技术物理 过程相关联,在上述汽车应用场合的情况下,往往与能够测试其功能
的控制设备相关联;目前它可能是发动机控制设备。由过程模型的输 出量对该控制设备施加相应的信号(例如发动机转数、凸轮轴的姿态 等),并且该控制设备以特定的状态量、即物理过程的状态量对其做 出反应,其至少部分地通过处理接口反作用于过程计算机。在这种应 用场合下,过程计算机经常被称为"模拟器"。模拟器也可以作为开放 的控制回路"开环"工作,其中物理过程的状态量并不反作用于模拟 器。
借助前面的例子可知,"过程计算机"和"模拟器"的概念是指等同 的数字采样及计算工具,利用它能够计算出过程模型。下文中提到"过 程计算机,,或"模拟器,,时,只是考虑到针对特定应用的常用语言习惯, 但在功能上这些概念在下文中通常是可互换的。如果利用模拟器似乎 使测试对象(这里是真实的过程)构成了一个工作循环,则经常用"在 环(in-the-Loop )"模拟器来表示,在本例中是硬件在环模拟器。
在过程计算机上计算出的过程模型是通过微分方程对物理技术 系统的数学描述。这些微分方程是过程模型的与时间有关的状态量, 其中所述微分方程通过公共的状态量彼此关联。为了数值求解过程模 型,即为了由微分方程求出状态量,采用了已知的数值积分法。该积 分法可按照不同的观点来分类,例如可以分成显式积分法和隐式积分 法,以及单步积分法和多步积分法。
首先,这些积分法的共同之处在于,仅仅在某些特定的离散时间 点计算一个过程模型的状态量^,结果,这些状态量并不是作为时间
连续的函数^I(t),而是仅仅位于离散的时间支持点^yj(tk)。针对该过
程模型的状态量2M利用积分法在一个支持点求出的值在方法的限制
下始终是有误差的,因此只能得到对于状态量的实际值的近似值。
对于各种数值积分均存在以下任务即要求出状态量^vi在时刻tk+1 的将来值,即状态量^M,kH,其中一般地来说有下列公式
<formula>formula see original document page 5</formula>显式积分法规定在时刻t^要新计算的状态量五m的值、即sm, k+1仅根据时间上位于前面的值2[M, k和等等来计算,即函数£可以
显式地通过该值来表述。通过显式积分法对状态量^M,e的计算在位于 前面的离散时间点进行,即根据已经过去的状态量的值及其一次或多 次求导递归地进行。根据状态量的值需要回溯多少个时间步骤,将其 称为单步积分法或者多步积分法;这同样适用于隐式积分法。
隐式积分法规定如公式1所示,函数L本身与当前所求得的状 态量或者其一次或多次求导相关。已知的是,这种相关性在数值上只 能迭代求解,因此这意味着在数值积分步骤内必须执行一次迭代循 环,而这在显式积分法中则不需要。通常当连续计算出的近似值彼此 相差小于一个固定设置的最大值、即处于特定误差范围以下时结束为 求取用隐式积分法所计算的状态量^M, i的迭代。
显式积分法所具有的优点是为计算当前状态量^Vl,e所需的计
算步骤数目是已知的,并且近似保持相等,从而能够确保状态量
的当前值位于特定的、可预见的时间点。这对于所有实时应用来说都 是十分重要的,因为否则的话就不能实现时间离散的采样系统了。但
显式积分法的缺点是计算精度具有不确定性,尤其是在刚性系统、 即具有显著不同的特征值的系统的情况下,当显式数值积分法的步宽 被选择为足够小时,只能得到可接受的计算结果。对于刚性系统,显 式积分法的步宽可能必须要缩小,这样就不能再在实时性条件下进行
计算了。
与此相反,隐式积分法的优点是通过预先给定误差范围可以非常 精确地预定计算精度,但相应的缺点是不知道在一个积分步骤内为了 计算出所要求的精度需要多少次迭代。因此隐式积分法尤其是在刚性 系统的情况下只能非常有限地适用于实时应用。

发明内容
因此,本发明的目的是至少部分地避免在用于实时计算过程模型 状态量的已知方法中所提到的上述缺点,尤其是在最大程度确保计算的数值精度和稳定性的前提下能够保证计算的实时性。
首先根据本发明的第 一个技术方案,本发明所述的用于实时计算 与真实物理过程相关联的过程模型的状态量的方法的主要特征在于,
提供了第二计算单元,基本上与利用第一计算单元计算过程模型同步 地,利用所述第二计算单元通过隐式积分法执行该过程模型,为了校 正在第一计算单元上所执行的对过程模型的计算,调用利用第二计算 单元和隐式积分法所计算的过程模型状态量,并将以这种方式通过显 式积分法所求得的状态量用作该过程模型的状态量。
根据本发明的方法利用了以下原理过程计算机通过硬件配置提 供了多个计算单元,其可能是多处理器系统的形式、即具有多个作为 部件的可区分的处理器,或者可能是多内核处理器(Multicore),其 中 一个处理器包含多个在很大程度上彼此独立工作的内核,它们实际 上可以同时处理不同的进程,这些进程不是仅仅串行地先后执行,而 是以单个线程的形式被处理,因而不会产生时间增益。
当说到"基本上"与利用第 一计算单元计算过程模型同步地,利用 所述第二计算单元通过隐式积分法执行该过程模型时,这意味着所 述两种积分法彼此同时地执行,但允许硬件和方法步骤上的差别。例 如可能是这样的情况显式和隐式的积分法在不同的、即彼此稍微有 所偏差的计算时刻对状态量^m,e及Sm, i执行计算,此时对过程模型的 两种计算在本发明的意义上仍然可以认为是"基本上"同步执行的,因 为这两者均涉及相同的物理时间,并具有共同的物理时基。
通过将利用显式积分法所求得的状态量^M, e用作过程模型的状
态量^vi,可以保持计算过程模型状态量时的实时条件。通过以利用隐
式积分法所求得的状态量^M, i来校正利用显式积分法所求得的状态量
SM,e,可以附带地保证显式积分法的误差不会随便累加。其中尽管尽 可能经常采取这种校正是具有优点的,但并不要求在显式积分法的每
一个计算步骤中都进行这种校正。
根据本发明的一个特别有利的实施例,为了用第 一计算单元计算 当前的状态量^M,e,使用由第二计算单元所计算的已经过去的状态量2M,i——如果它存在的话。在这里,显式积分法(只要可能的话)用 隐式积分法的更为精确的数据来执行。当用隐式积分法所计算的状态 量^M,i目前不完整时(例如由于隐式积分法没有能够及时结束),由 显式积分法得到的肯定是带有错误的状态信息。
根据本发明的另 一独立技术方案,开始提到的以及所描述的任务
这样来解决提供了第二计算单元,基本上与利用第一计算单元计算 过程模型同步地,利用所述第二计算单元通过隐式积分法计算该过程 模型,只要利用第二计算单元和隐式积分法所计算的状态量是实时 的,就将利用第二计算单元和隐式积分法所计算的状态量用作该过程 模型的状态量,否则的话,将利用显式积分法所求得的状态量用作该 过程模型的状态量。
在这种本发明所述的方法中,也就是说,当隐式积分法没有及时 结束的情况下,即在实时性方面没能得到所希望的结果时,在第一计 算单元上所执行的显式积分法作为对该过程模型进行计算的返回点。 对于在第二计算单元上执行的隐式积分法违背了实时性条件的情况, 采用在第一计算单元上执行的显式积分法的计算结果作为替代。很显
然,可以把隐式积分法的状态量^V!,i提供给第一计算单元上的显式积 分法,从而可以保证显式积分法也能得到良好的精度。
在本发明所述方法的 一种有利的实施例中,在笫二计算单元上实 现的隐式积分法至少部分地用比在第一计算单元上实现的显式积分 法更大的采样步宽来工作,其中隐式积分法的采样步宽尤其优选的是 可变的,即根据状态量^M或者根据这些状态量随时间的变化而进行 适配。在过程模型的状态量2M必须位于固定的时间扫描栅内、即必 须提供恒定采样率的应用场合下,隐式积分法在可变计算步宽下所提 供的状态量^l,i可以通过下述方法来同步,即在第二计算单元上,位 于两个计算出的采样时刻之间的状态量通过内插来计算,尤其是通过 过程模型或过程模型 一部分的多项式拟合函数来计算,尤其是通过密
集输出(Dense-Output)法来计算。当隐式积分法的采样步宽与显式 积分法的采样步宽相差不太多时,在求取两个计算步骤之间过程模型的状态量时,简单的、即线性的内插已足以得到可用的结果。
当隐式积分法的采样步宽与显式积分法的采样步宽相差较大或 者对隐式积分法的精度有较高要求时,在釆样时间点之间对过程模型 进行多项式拟合。通过采用已知的密集输出法,实践中能够以高精度 在位于两个采样时间点之间的任意时刻计算出该过程模型的所求状 态量。
采用隐式积分法的一个特别的困难在于,为了计算将来的状态 量、即时刻tk+,的状态量,还需要该物理过程在该时刻出现的状态量 &,但它很显然并不是已知的,因为时刻tkw是未来的时间点。根据
本发明,在这种情况下建议在第二计算单元上,为计算过程模型的
将来的状态量^M,i所需的该物理过程的未来状态量^p可以通过由该物
理过程的已经过去的状态量的外插来得到。
对于第一计算单元上的显式积分法以及第二计算单元上的隐式 积分法均延迟结束的情况,根据本发明的另 一 个有利的实施例建议 为了计算过程模型的状态量^m,该状态量通过由已经求得的该过程模 型的状态量的先前的值的外插来计算。由此保证了在本发明的方 法中始终能够提供在所要求的采样时间点的状态量。
根据本发明的另 一个具有优点的实施例,过程模型利用第二计算 单元和至少一个另外的第三计算单元上的隐式积分法并行处理,并且 在第二计算单元和至少一个另外的第三计算单元上并行地共同计算
该过程模型的状态量^vi, i。例如在隐式积分法中求解相关联的方程系 的任务可以相对较好地并行处理,其中在现有技术中已知有可以自动 执行这种并行处理的方法。通过并行处理实现了以下可能性,即在有
分:能够L很高的精度执行/ ' 、'"、' 曰 '。,、
此外,开始所提到和所描述的任务通过一种模拟器来实现,尤其 是在环模拟器,用于实时计算过程模型的状态量,具有第一计算单元、 至少一个第二计算单元和处理接口 ,其中能够由所述模拟器通过所述 处理接口采集物理过程的至少一个状态量,并且可以由所述模拟器输
9出至少一个状态量,以影响所述物理过程,其中所述模拟器整体上被 设置为能够利用它来实现前面所描述的方法。


现在逐一给出不同的可能方案,其能够实现并进一步形成本发明
所述的方法和本发明所述的模拟器。为此参照从属于权利要求1和3 的从属权利要求以及与附图相结合对优选实施例所进行的描述。如图 所示
图1示出与物理过程相关联的过程计算机以及与之相应的模拟
器,
图2示出关于第一计算单元和第二计算单元上的显式积分法和 隐式积分法的可能的处理时间的示例性示意图,以及所计算的状态量 的应用,
图3示出关于第一计算单元和第二计算单元上的显式积分法和 隐式积分法的可能的处理时间的另一示例性示意图,以及所计算的状 态量的替代应用,并且
图4示出通过外插计算该物理过程的将来的状态量的示意图。
具体实施例方式
图l在示意图中示出了具有第一计算单元2和处理接口 3的过
程计算机1或模拟器1。关于过程计算机1的其它必要细节、例如存
储器和将第一计算单元2和存储器相连的数据总线在这里没有示出,
其对于本发明来说并不是很重要。
过程计算机i被设置为由过程计算机通过处理接口 3采集物理
过程4的至少一个状态量Xp,并可以由过程计算机1输出至少一个 用于影响物理过程4的输出量y ,其中该过程模型由第 一计算单元2
利用显式积分法进行计算,以求得状态量^l,e。
如开始处详细描述的,尤其是在计算刚性过程模型的状态量时, 显式积分法的应用在实时性条件方面是存在问题的,因为为了确保特
10定精度,步宽必须选择得很小,从而可能不能再在实时性条件下执行 计算。
解决这一问题的第一种方法在图2中示出,其特征在于,提供了 第二计算单元5,利用这个第二计算单元5,基本上与利用第一计算 单元2对过程模型进行计算同步地,利用隐式积分法执行该过程模型, 为了校正在第一计算单元2上所执行的对过程模型的计算,调用利用
第二计算单元5和隐式积分法所计算的过程模型的状态量^M,i,并将
以这种方式利用显式积分法求得的状态量^M,e用作该过程模型的状 态量2m。
在图1中所示的过程计算机中,第一计算单元2和第二计算单元
5是一个多内核处理器的两个独立的内核;在另外的在这里没有示出
的实施例中,笫一计算单元2和第二计算单元5也可以是一个多处理 器系统中的两个独立的处理器。第一计算单元2和第二计算单元5对 一个共用的存储器进行访问,通过该存储器可以交换数据,例如所计 算出的状态量。这在图l中没有详细示出。
在图1中所示的实施例中,这样来实现对利用显式积分法所求得
的状态量^M,e的校正为了用第 一计算单元2计算当前的状态量2[M,e,
使用由第二计算单元5所计算的已经过去的状态量2[m, i——如果它存 在的话。这种方法在图2中详细示出。时间轴被简要地划分成用k-2、 k-l、 k、 k+l和k+2来表示的积分时间步骤。图中所示的是相应地由
第一计算单元2所计算的状态量^M,e和由第二计算单元所计算的状态 量^M, i。
正如借助所示箭头所看到的,为了在笫一计算单元2上利用显式 积分法计算将来的状态量,使用了隐式积分法所计算的状态量Svi,i。 这只有当在第二计算单元上所执行的隐式积分法没有及时结束时才 不能实现,如图2中在时间点k-2和k-l之间的时间间隔就是这种情
况。在这种情况下,为了计算状态^vi,e,k-n利用显式积分法来计算由 显式积分法所得到的状态量^M,e,k-2。原理上,显式积分法总是得到用 作该过程模型的状态量^M的状态量SM,e。这样,整体上以较大的可靠性保证了计算的实时性。
图3中示出了用于实时计算过程模型的状态量的另 一种方法,
其首先具有同样的特征,即提供了第二计算单元5。利用这个第二计
算单元5,基本上与利用第一计算单元2对过程模型进行计算同步地,
利用隐式积分法计算该过程模型,只要利用第二计算单元5和隐式积
分法所计算的状态量^M,i是实时的,就将利用第二计算单元5和隐式
积分法所计算的状态量^Vl,i用作该过程模型的状态量^M。否则的话,
将利用显式积分法所求得的状态量^M,e用作该过程模型的状态量^M。 这两个计算单元中的哪一个为该过程模型提供计算出的状态数
据这里仅取决于在第二计算单元5上所执行的隐式积分法是否及时结 束。在图3中可以看到,在时间点k-2、 k、 k+l和k+2之前的计算间
隔内,分别由第二计算单元提供通过隐式积分法所计算的状态量2M,i
作为该过程模型的状态量^m,只有在时间点k-l之前的时间间隔内,
才使用由第一计算单元上的显式积分法所求得的状态量SM, e作为该 过程模型的状态量2M。
在图2和图3所示的实施例中还可以看到,在第一计算单元上的
显式积分法用通过隐式积分法所求得的状态量^M,i来执行,只要它存
在的话,即隐式积分法在先前的计算步骤中及时结束。
在图2和图3中示出了在第二计算单元上实现的隐式积分法用和
显式积分法同样的计算步宽来执行。在另一种这里没有示出的方法 中,隐式积分法的步宽被选为大于显式积分法的步宽。优选的是,计 算步宽是可变的,并与状态量随时间的发展相适应,即在瞬时过程的 情况下选择得小,而在状态变量只有很小的改变的调谐状态下选择得 大。
在导言部分已经说明了隐式积分法的特点是过程模型的状态量 的计算在最近的感兴趣的时间步骤内不仅与已经过去的状态量有关, 而且还与感兴趣的时间点本身的状态量或其导数有关。因此隐式积分 法需要迭代求解。由于这种特性,不仅涉及该状态量本身,还可能涉 及相关物理过程的状态量。这意味着,为了计算感兴趣的将来的状态量^i,i,k+n还可能需要该物理过程的将来的状态量&,k+"它当然还 不存在。
在图4中示出了在这种情况下,为计算所需的物理过程的将来的
状态量&,k+1,通过外插由该物理过程的已经过去的状态量五P,k获得; 通过外^,分别得到估计值^,w、 ^,w、 L,、 ^,+1、 L.i+2,它们分别
通过起伏的箭头来表示,用来计算状态量iM,i。
权利要求
1.一种用于在过程计算机(1)上实时计算过程模型的状态量(xM)的方法,所述过程计算机具有第一计算单元(2)和处理接口(3),其中所述过程计算机(1)被设置为能够由所述过程计算机(1)通过所述处理接口(3)采集物理过程(4)的至少一个状态量(xP),和/或能够由所述过程计算机(1)输出至少一个输出量(y)以影响所述物理过程(4),其中由所述第一计算单元(2)利用显式积分法计算所述过程模型,以确定状态量(xM,e),其特征在于,提供了第二计算单元(5),基本上与利用所述第一计算单元(2)对过程模型进行计算同步地,利用这个第二计算单元(5)通过隐式积分法执行该过程模型,为了校正在第一计算单元(2)上所执行的对过程模型的计算,调用利用第二计算单元(5)和隐式积分法所计算的过程模型的状态量(xM,i),并将以这种方式利用显式积分法求得的状态量(xM,e)用作该过程模型的状态量(xM)。
2. 根据权利要求l的方法,其特征在于,为了用第一计算单元(2) 计算当前的状态量(SM,e),使用由第二计算单元(5)所计算 的已经过去的状态量(^M)——如果它存在的话。
3. —种用于在过程计算机(1)上实时计算过程模型的状态量 (Sm)的方法,所述过程计算机具有第一计算单元(2)和处理接口(3) ,其中所述过程计算机(l)被设置为能够由所述过程计算机(l) 通过所述处理接口 (3)采集物理过程(4)的至少一个状态量(^p), 和/或能够由所述过程计算机(1)输出至少一个输出量(X)以影响所 述物理过程(4),其中由所述第一计算单元(2)利用显式积分法计算所述过程模型,以确定状态量(^vi,e),其特征在于,提供了第二计算单元(5),基本上与利用所述第一计算单元(2) 对过程模型进行计算同步地,利用这个第二计算单元(5)通过隐式 积分法计算该过程模型,只要利用第二计算单元(5)和隐式积分法 所计算的状态量(^M,i)是实时的,就将利用第二计算单元(5)和隐式积分法所计算的状态量(^M,i)用作该过程模型的状态量(五M), 否则的话,将利用显式积分法所求得的状态量(2[M,e)用作该过程模 型的状态量(^VI)。
4. 根据权利要求1至3中任一项的方法,其特征在于,在第二 计算单元(5)上实现的隐式积分法至少部分地用比在第一计算单元(2)上实现的显式积分法更大的采样步宽来工作,尤其是用可变的采样步宽来工作。
5. 根据权利要求4的方法,其特征在于,在第二计算单元(5)上,位于两个计算出的采样时刻之间的状态量(^M,i)通过内插来计算,尤其是通过过程模型或过程模型一部分的多项式拟合函数来计 算,特别是通过密集输出法来计算。
6. 根据权利要求1至5中任一项的方法,其特征在于,在第二 计算单元(5)上,为计算过程模型的将来的状态量(^+,;)所需的该物理过程的未来状态量(工")通过由该物理过程的已经过去的状态量的外插来得到。
7. 根据权利要求1至6中任一项的方法,其特征在于,当第一 计算单元(2)和第二计算单元(5)对过程模型的状态量(^m)的计 算延迟结束的情况下,该过程模型的状态量(Sm)通过由已经求得的该过程模型的状态量(Sm)的先前的值的外插来计算。
8. 根据权利要求1至7中任一项的方法,其特征在于,过程模 型利用所述第二计算单元(5)和至少一个另外的第三计算单元上的 隐式积分法并行处理,并且在所述第二计算单元(5)和所述至少一 个另外的第三计算单元上并行地共同计算该过程模型的状态量(丕M,i)。
9. 一种模拟器,尤其是在环模拟器,用于实时计算过程模型的 状态量(2[m),具有第一计算单元(2)、至少一个第二计算单元(5) 和处理接口 (3),其中能够由所述模拟器通过所述处理接口 (3)采集物理过程(4)的至少一个状态量,并且能够由所述模拟器输 出至少一个状态量(x)以影响所述物理过程,其中所述模拟器被设 置为能够利用它来实现如权利要求1至8中任一项所述的方法。
全文摘要
描述和示出了一种用于在过程计算机(1)上实时计算过程模型的状态量(x<sub>M</sub>)的方法,所述过程计算机具有第一计算单元(2)和处理接口(3),其中所述过程计算机(1)被设置为能够由所述过程计算机(1)通过所述处理接口(3)采集物理过程(4)的至少一个状态量(x<sub>P</sub>),和/或能够由所述过程计算机(1)输出至少一个输出量(y)以影响所述物理过程(4),其中由所述第一计算单元(2)利用显式积分法计算所述过程模型,以确定状态量(x<sub>M,e</sub>)。本发明的目的是至少部分地避免在用于实时计算过程模型状态量的已知方法中的缺点,尤其是在最大程度确保计算的数值精度和稳定性的前提下能够保证计算的实时性。根据本发明,该任务这样来解决提供了第二计算单元(5),基本上与利用所述第一计算单元(2)对过程模型进行计算同步地,利用这个第二计算单元(5)通过隐式积分法执行该过程模型,为了校正在第一计算单元(2)上所执行的对过程模型的计算,调用利用第二计算单元(5)和隐式积分法所计算的过程模型的状态量(x<sub>M,i</sub>),并将以这种方式利用显式积分法求得的状态量(x<sub>M,e</sub>)用作该过程模型的状态量(x<sub>M</sub>)。
文档编号G06F11/36GK101593151SQ20091013356
公开日2009年12月2日 申请日期2009年4月14日 优先权日2008年5月29日
发明者J·弗罗赫特 申请人:帝斯贝思数字信号处理和控制工程有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1