用于生成在测试装置上可实施的模型的方法和测试装置与流程

文档序号:17046074发布日期:2019-03-05 19:37阅读:128来源:国知局
用于生成在测试装置上可实施的模型的方法和测试装置与流程

本发明涉及一种例如在汽车工业或航空工业中用于控制技术系统、如电机或制动器的控制器的开发。本发明尤其涉及一种在所述控制器的开发过程中使用的测试装置。



背景技术:

控制器的开发已经变成了一种高度复杂的过程。因此应当尽可能早地在开发过程中对新的控制器或新的控制功能进行测试,以便检验常规的功能性并且预定进一步的开发方向。在开发过程接近尾声时,重要的是尽可能全面地测试已经深度开发了的控制器,以便基于测试结果在该控制器投入使用或批量生产之前进行必要的修改,从而使该控制器在之后的运行中在任何情况下都能如期望那般工作。

在开发过程的一个相当迟的阶段使用所谓的硬件在环仿真器(hil仿真器)。这种hil仿真器包含有待控制的技术系统的模型,其中,该模型在软件中存在。hil仿真器还可以额外包含技术系统的其它的模型,所述其它的模型处在控制器的和有待控制的技术系统的环境中并且与控制器和/或有待控制的技术系统配合作用。hil仿真器还包含输入/输出接口,已经深度开发的、已以硬件客观存在的控制器(也被称为控制器的以仪器方式的实现)可以连接在该输入/输出接口上。现在可以在不同的仿真进程中测试该控制器的功能性,其中,可以观察有待控制的技术系统的模型对控制器的信号的反应以及控制器对由有待控制的技术系统的模型预定的事件的反应。必要时也可以从控制器的和有待控制的技术系统的环境来观察其它的技术系统的行为。在此既可以对正常的运行进行仿真,也可以对在有待控制的技术系统中的故障,对在控制器中的故障,对在控制器和有待控制的系统之间的通信中的故障、如电缆桥架的故障,以及对在供电中的故障、如短路,进行仿真。hil仿真器是设置用于控制器开发的测试装置的一个例子。

用于准备hil仿真的耗费通常极高,特别是当多个子模型在hil仿真器中配合作用时。在准备仿真时对在子模型之间的通信进行配置。在对子模型进行编译后,就针对连接在hil仿真器上的控制器产生一个整体的技术系统,控制器可以与该整体的技术系统交互交互。在应当测试不同的变型方案或者在应当替换技术系统的模型的一些部分时,那么这一过程的高耗费尤为关系重大或令人烦扰。



技术实现要素:

因此值得期望的是,更为灵活地构建技术系统的在测试装置上可实施的模型。此外还值得期望的是,提供一种测试装置,该测试装置使得能更为灵活地构建可在该测试装置上实施的模型。

本发明的示例性的实施方式包括一种用于生成技术系统的在测试装置上可实施的模型的方法,其中,测试装置和可实施的模型构造用于实时测试连接在该测试装置上的控制器,以及其中,可实施的模型由多个相互通信的可实施的子模型构成,其中,每一个所述可实施的子模型具有单独的地址空间和/或在执行对连接在测试装置上的控制器的测试时在单独的处理器或单独的处理器内核上实施。所述方法在此具有下列步骤,所述下列步骤在高级语言的子模型编译成可实施的子模型后实施:(a)为多个可实施的子模型的每一个子模型识别各可实施的子模型的通信特性;(b)访问针对在可实施的子模型之间的通信的通信定义;(c)在可实施的子模型的通信特性和针对在可实施的子模型之间的通信的通信定义的基础上,对多个可实施的子模型的通信接口进行配置;以及(d)在可实施的子模型的通信特性和针对在可实施的子模型之间的通信的通信定义的基础上,在可实施的子模型之间建立起至少一个实时的通信连接。

按本发明的方法能在对子模型编译之后,也就是说在子模型已经以经编译的形式存在的阶段中,建立在子模型之间的通信连接,因而所述子模型能在测试装置上实施。相比之前的方案(在所述之前的方案中,子模型的编译和可实施的子模型的构建都在建立起子模型之间的通信之后执行),按本发明的方法消除了在整体仿真变化较小的情况下重新对子模型进行编译的必要性。一些子模型例如可以用相似的子模型替换,或者可以关于在子模型之间的通信来测试不同的变型方案,而不必对保持不变的子模型重新进行编译。因此实现了对不同的仿真变型方案的加速的操作或者实现对子模型的加速的替换。

在子模型之间的通信连接的建立一方面基于通信特性,另一方面则基于通信定义。通信特性和通信定义共同包含了足够的信息,以便在可实施的子模型之间建立通信。因此除了所述通信特性外就不需要认识子模型的准确的结构,以便建立通信连接。因此对建立通信连接而言没有干扰的是,子模型作为可实施的编码存在并且不仅仅用关于期望的通信连接的知识进行编译。

概念“通信特性”指的是子模型关于其通信能力固有的特质。概念“通信特性”可以例如包括在各子模型中存在的并且可供传送给其它子模型的变量的特性。在此,这种变量的例如由数据类型和数据宽度确定的准确度以及生成变量的相应的值的频率,皆属于通信特性。通信特性也可以包含通信方向,也就是说子模型作为用于特定的变量的发射器或接收器的资格,以及包含对子模型内的内部处理的配设。这在下面加以详细说明。

与此相对,概念“通信定义”涉及多个子模型的关联。因此通信定义例如可以包含通信伙伴的确定,也就是说,确定两个或两个以上关于特定的数据交换有待连接的子模型。也可能的是,通过通信定义详细说明通信的其它的特质,例如数据的捆绑或传输给接收器侧的数据的考虑方式。这也在下文中加以详细说明。通信定义可以针对用户所期望的仿真加以确定和/或通过相应的文件/算法确定。

在通信特性和通信定义的基础上对通信接口进行配置以及建立通信连接。概念“通信接口”在此说明了可实施的子模型的通信点,可实施的子模型可以通过该通信点在仿真运行时与其它子模型交互。与此相对,概念“通信连接”则涉及仿真运行期间在子模型之间的数据交换。这种数据交换发生在单独的地址空间之间和/或单独的处理器或单独的处理器内核之间。

可实施的子模型可以以二进制码存在。也可能的是,可实施的子模型以机器代码,也就是说以汇编程序存在。可实施的子模型以一种能直接在处理器上实施的格式存在。相比以高级编程语言对子模型的说明对可实施的子模型进行编译。

按照另一种实施方式,识别各可实施的子模型的通信特性的步骤包含对与各可实施的子模型关联的元文件的分析。对与各可实施的子模型关联且包含有关该子模型的通信特性的数据的元文件的分析,提供了一种识别通信特性的有效的可能性。元文件可以直接包含通信特性。也可能的是,元文件含有数据,由所述数据可以推断出通信特性。附加/备选地也可能的是,分析各可实施的子模型以及由此提取出通信特性。还可能的是,对形成可实施的子模型的基础的高级语言的子模型进行分析,以及由此提取出可实施的子模型的通信特性。此外也可能的是,通信特性至少部分通过用户输入确定。

按照另一种实施方式,所述方法还具有如下步骤:通过编译构建至少一个可实施的子模型,并且在编译过程中生成至少一个与所述至少一个可实施的子模型关联的元文件。换句话说,与给定的可实施的子模型关联的元文件是在编译高级语言的子模型的过程中构建的。因此可以将可实施的子模型的构建以及与之后建立通信连接相关的通信特性的编排能有效地结合起来。

按照另一种实施方式,访问针对在可实施的子模型之间的通信的通信定义的步骤,包含接收通信定义的至少一个用户输入。换句话说,通信定义可以是由用户定义的。以这种方式可以在准备仿真期间定义选出的通信方式或者可以实行针对特定的通信方式的规格标准,其中,通过用户的专业知识以及相应的通信定义可以促进之后的仿真高效且有利。如上面已经说明的那样,也可能的是,通信定义由相应的文件或者由相应的算法提供。

按照另一种实施方式,技术系统的在测试装置上可实施的模型是有待控制的技术系统的模型。换句话说,技术系统的模型是由控制器在之后运行中控制的技术系统的模型。在此,该模型整体可以由连接在测试装置上的控制器控制。但也可能的是,技术系统的模型具有有待控制的部分和其它部分,所述其它部分没有或者没有直接由所连接的控制器控制。技术系统的可实施的模型可以例如是马达和变速器的组合的模型。用于仿真的连接在所述测试装置上的控制器可以例如是马达控制器或变速器控制器或者组合式马达和变速器控制器。可实施的子模型可以对应有待控制的技术系统的子系统。在本例中,一个可实施的子模型可以是马达的模型,而另一个可实施的子模型则是变速器的模型。

按照另一种实施方式,在可实施的子模型之间的所述至少一个实时的通信连接设置用于借助一致性缓冲器和通信包一致地传输数据。在此,概念“通信包”指的是一种数据单元,该数据单元共同针对规定为是接收器的可实施的子模型发出,或共同针对规定为是接收器的可实施的子模型的子部件发出。这种作为通信包的捆绑涉及在执行仿真期间的一种共同的传输。与此相对,概念“一致性缓冲器”涉及一种数据单元,该数据单元对应在仿真时间内的相同的时间点。一致性缓冲器尤其涉及在可实施的子模型中在相同的仿真时间上存在的数据。一致性缓冲器和通信包的使用允许了用仿真装置高效地实施实时的测试以及允许了可实施的子模型彼此间的高效的、实时的通信。

按照另一种实施方式,各可实施的子模型的通信特性包括下列参数中的至少一个:通信方向、数据类型、数据宽度和对子模型的有条件地实施的组成部分的配设。子模型的有条件地实施的组成部分也被称为条件执行片段(cef,conditionalexecutionfragements)。它们是子模型的子部件,如下文中详细说明的那样。

按照另一种实施方式,多个可实施的子模型的每一个通信接口都关于参数如通信方向、数据类型、数据宽度和对子模型的有条件地实施的组成部分的配设中的至少一个进行配置。因此在给定的可实施的子模型中可以这样配置通信接口,使得该通信接口符合各可实施的子模型的通信特性。通信接口的配置与通信定义相关联,使得仅针对可实施的子模型的通信特性来配置通信接口,所述通信特性根据通信定义是力求达到的仿真想要的。

按照另一种实施方式,针对在可实施的子模型之间的通信的至少一个实例的通信定义,包括下列参数中的至少一个:确定至少两个彼此通信的可实施的子模型,在通信包中捆绑通信数据和/或通信接收器,以及定义接收方式,特别是区分持续的接收方式和受事件控制的接收方式。如上面解释的那样,概念“通信包”涉及一种数据单元,该数据单元被共同传输给一个或多个接收器。因此可以通过通信定义实现在子模型之间的高效的数据流。通过定义接收方式可以为接收器子模型确定,是否连续地执行在子模型内运行的计算或子模型是否仅对在所连接的子模型中的变化的情况做出反应。因此可以将计算负荷限制在所需的程度内并且达到了一种总体上高效的仿真。

按照另一种实施方式,在连接在测试装置上的控制器的测试运行时执行步骤(c)和(d)。尤其在连接在测试装置上的控制器的测试的初始化阶段期间,或者在实时的仿真或应用的初始化阶段期间执行步骤(c)和(d),亦即在实时仿真的初始化阶段内执行一次步骤(c)和(d)。因此在执行真正的仿真前不久对多个可实施的子模型的通信接口进行配置以及建立至少一个实时的通信连接,由此直至执行仿真前不久都能更换一些子模型或使在一些子模型之间的通信与特定的仿真变型方案匹配。

按照另一种实施方式,步骤(c)和(d)具有:在可实施的子模型的通信特性和针对在可实施的子模型之间的通信的通信定义的基础上构建配设文件,其中,配设文件包含子模型内部的信息和用于子模型之间的通信的信息;对多个可实施的子模型的通信接口进行配置;以及在配设文件的基础上建立在可实施的子模型之间的所述至少一个实时的通信连接。也被称为映射文件的这种配设文件,提供了一种良好的可行方案将通信特性与通信定义关联并且以一种明确定义的格式为通信接口的配置和所述至少一个实时通信连接的建立提供所述通信特性和通信定义。该配设文件还允许了步骤(a)和(b)与步骤(c)和(d)的时间分离,因而可以短时间内且不复杂地在执行仿真之前实施步骤(c)和(d)。

按照另一种实施方式,用于作为接收器起作用的可实施的子模型的配设文件,包括对有待接收的通信包的规定。因此有待在仿真期间实施的在可实施的子模型之间的通信,已经以相当具体的方式在配设文件中被确定。规定在上下文中指的是,在配设文件中定义,哪种通信包应当被特定的子模型接收。并不意味着,由配设文件就已经可以查明具体的有待通信的内容。

按照另一种实施方式,用于作为发射器起作用的可实施的子模型的配设文件,包括对有待共同传输的数据块的规定。在此,有待共同传输的数据块关于实时测试可能包含一致的数据。这种一致的数据也被称为一致性缓冲器。关于实时测试一致的数据可能属于相同的仿真步骤,也就是说,属于技术系统的模型的仿真的相同的迭代步骤。因此配设文件又能以相当具体的方式说明仿真期间产生的在可实施的子模型之间的通信。然后可以以高效的方式在仿真初始化期间或在仿真本身期间进行实现。

本发明的示例性的实施方式还包括有待控制的技术系统的在测试装置上可实施的模型的可实施的子模型和与该可实施的子模型关联的元文件的组合,该组合包含可实施的子模型的通信特性,其中,在存在至少另一个可实施的子模型时以及在针对在可实施的子模型和该另一个可实施的子模型之间的通信的通信定义的基础上,能够按照元文件的通信特性建立一个针对可实施的子模型的实时的通信连接。如上面解释的那样,可实施的子模型和与该可实施的子模型关联的元文件的这种组合,在与其它这样的组合结合在一起时,提供了一个用于产生在测试装置上可实施的模型的有利的起点。在上文中关于用于生成在测试装置上可实施的模型的方法所说明的修改、其它特征和效果,以类似的方式适用于所述的组合。

本发明的示例性的实施方式还包括一种用于对连接在测试装置上的控制器进行实时测试的测试装置,该测试装置具有多个如在前一段落中说明那样的组合。在上文中关于用于生成在测试装置上可实施的模型的方法所说明的修改、其它特征和效果,以类似的方式适用于该用于对连接在测试装置上的控制器进行实时测试的测试装置。

在另一种实施方式中使用一种用于生成技术系统的在测试装置上可实施的模型的方法,其中,该测试装置和可实施的模型构造用于实时地控制连接在该测试装置上的装置,以及其中,可实施的模型由多个相互通信的可实施的子模型构成,其中,每一个所述可实施的子模型具有单独的地址空间和/或在控制连接在测试装置上的装置时在单独的处理器上或单独的处理器内核上实施,其中,所述方法具有在高级语言的子模型编译成可实施的子模型之后被实施的下列步骤:

(a)为所述多个可实施的子模型中的每一个识别各可实施的子模型的通信特性,

(b)访问针对在可实施的子模型之间的通信的通信定义(16),

(c)在可实施的子模型的通信特性和针对在可实施的子模型之间的通信的通信定义的基础上对所述多个可实施的子模型的通信接口进行配置,以及

(d)在可实施的子模型的通信特性和针对在可实施的子模型之间的通信的通信定义的基础上建立在可实施的子模型之间的至少一个实时的通信连接。

在最后提到的实施方式中,所述方法不在hil仿真的范畴内使用,而是在快速控制原型测试(rcp测试)的范畴内使用。快速控制原型(rcp)是一个开发步骤,其更多处于开发过程初期。在rcp中使用在控制器方面的测试装置。该测试装置含有有待测试的或处在开发过程中的控制器的模型。基于早期的开发阶段,有待测试的控制器的模型相比之后最终的控制器尚未十分成熟。通常也还不存在控制器的硬件实现,更确切地说,有待测试的控制器在测试装置中存在的模型是一种软件模型。该测试装置可以经由输入/输出接口与有待控制的技术系统本身或与到目前为止存在的用于有待控制的技术系统的控制器连接。在第一种情况下,在形式为软件模型的有待测试的控制器和客观存在的有待控制的技术系统之间存在直接的连接。在第二种情况下,到目前为止存在的控制器是有待通过rcp测试装置控制的技术系统。到目前为止存在的控制器的这种控制导致了对到目前为止存在的控制器的控制方法的修改,由此可以借助从外部连接的rcp测试装置测试新的控制功能性。

考虑例如传感器或执行器作为装置,或者考虑更为复杂的系统,如完整的马达或者试验台上的任意的技术系统。

在上文中关于用于生成在测试装置上可实施的模型的方法所说明的修改、其它特征和效果,也以相似的方式适用于最后提到的实施方式,在该实施方式中,所述方法不是在hil仿真的范畴内,而是在快速控制原型测试的范畴内使用。

无论是子模型、可实施的模型还是装置,都可以以虚拟的电子的控制器的形式存在。虚拟的控制器在此指的是应当在有待开发的控制器上实现的(部分)程序代码或算法。

附图说明

参考附图说明其它示例性的实施方式。

图1在方块图中示出了一种测试装置连同连接在其上的有待测试的控制器,其中,在该测试装置上可以实施一种按照本发明的示例性的实施方式的用于生成可在该测试装置上实施的模型的方法;

图2在方块图中示出了技术系统的通过按照本发明的示例性的实施方式的方法生成的模型,其中,技术系统的模型具有两个可实施的子模型;

图3在放大的细节图中示出了图2的可实施的子模型和在所述可实施的子模型之间存在的通信连接;

图4在流程图中示出了按照本发明的示例性的实施方式生成在测试装置上可实施的模型;以及

图5示出了两个可实施的子模型和它们的通信连接的另一个例子。

具体实施方式

图1示出了测试装置2,其在当前情况下是hil仿真器2。hil仿真器2具有物理的接口4,外部的装置能通过该接口连接到hil仿真器2上。在图1中,控制器8连接在该物理的接口4上。在图1的例子中,控制器8是设置用于控制机动车的马达的马达控制器。hil仿真器2设置用于测试该马达控制器8。

hil仿真器2包含技术系统的模型6。在图1的例子中,模型6是马达和变速器的组合的模型。模型6作为软件模型存在并且可以与物理的数据接口4交换数据。因此产生了在控制器8和模型6之间的数据连接,由此可以对这两个部件的交互进行仿真和测试。在此,物理的接口4承担起在从控制器传输的和传输给该控制器的物理的信号与在hil仿真器2内交换的逻辑的、也就是说基于软件的信号之间的通道。

hil仿真器是实时的。因此可以没有进一步调整地(指的是控制器之后在运行中使用的配置)测试控制器8。hil仿真器2以客观存在的技术系统(在当前情况下为机动车的真实的马达和变速器构成的组合)所具有的速度与控制器8交互。这又意味着,也以至少这个速度计算模型6的行为。模型6是一个可实施的模型,这就是说,模型6以经编译的形式存在并且可以在hil仿真器2的硬件上实施。

图2在放大的细节图中示出了图1的技术系统的模型6。模型6具有两个可实施的子模型10和12,亦即第一可实施的子模型10和第二可实施的子模型12。第一可实施的子模型10是要由马达控制器8控制的马达的模型。第一可实施的子模型10与物理的接口4连接并且可以经由这个物理的接口与控制器8通信。第二可实施的子模型12是机动车的变速器的模型。在第一可实施的子模型10和第二可实施的子模型12之间存在一个实时的通信连接14。下文中详细说明通过建立实时的通信连接14生成由第一可实施的子模型10和第二可实施的子模型12构成的模型6。

在本实施例中,第一子模型10和第二子模型12在仿真期间在单独的处理器上实施。因此可以完全并行地实施针对第一子模型10和第二子模型12的计算。也可以在同一处理器上,但在单独的处理器内核上实施第一子模型10和第二子模型12。此外可能的是,第一子模型10和第二子模型12具有不同的地址空间,其中,在同一处理器上或不同的处理器上实施第一子模型和第二子模型。

模型6被视作有待控制的技术系统的模型。对此不重要的是,仅第一可实施的子模型10直接被控制器8控制。控制器8通过第一可实施的子模型10对马达模型和变速器模型的组合的整体产生影响。第二可实施的子模型12,也就是说变速器模型,是马达的环境的模型以及因此也被称为环境模型。要强调的是,下文中说明的用于生成在测试装置上可实施的模型的方法不仅能应用于有待控制的技术系统,而且也能应用于技术系统的每一种在测试装置上可实施的模型。在此,可实施的模型是否包含有待控制的部件,对所述方法的流程并不重要。

为了尽可能清楚地说明本发明的示例性的实施方式,仅在图2中示出了马达模型10和变速器模型12。但对技术人员来说显而易见的是,在hil仿真器中可以存在其它可实施的子模型,由这些其它可实施的子模型可以生成技术系统的模型6,也就是说整个技术系统的模型。

图3在放大的细节图中示出了第一可实施的子模型10和第二可实施的子模型12,其中,尤其详细研究在所述子模型之间的通信连接14。第一可实施的子模型10具有有条件地实施的第一组成部分100和有条件地实施的第二组成部分102。有条件地实施的第一组成部分100是内燃机的模型。有条件地实施的第二组成部分102是电机的模型。因此第一可实施的模型10是混合动力马达的模型。概念“有条件地实施的组成部分”涉及可实施的子模型的子部件。词语“有条件”在此要表达的是,相应的子部件的模型仅在特定的运行状况下实施,例如在接入电机的情况下,或仅按特定的事件计算行为时,或者模型另外取决于某些条件。个别情况下也可能的是,不断实施有条件地实施的组成部分。但所述概念要表达的是,相应的部件的模型的实施可以取决于一个或多个条件。

有条件地实施的第一组成部分100具有第一变量104和第二变量106。第一变量104是内燃机的转速。第二变量106是内燃机的转矩。有条件地实施的第二组成部分102具有第三变量108。第三变量108是电机的附加的转矩。

此外,可实施的第一子模型10具有第一通信接口110、第二通信接口112和第三通信接口114。第一变量104、第二变量106和第三变量108通过这些接口在仿真期间传送给第二可实施的子模型112,如下文详细说明的那样。

第二可实施的子模型12具有有条件地实施的第三组成部分120。有条件地实施的第三组成部分120具有第四变量122、第五变量124和第六变量126。第四变量122是内燃机的转速,第五变量124是内燃机的转矩以及第六变量126是电机的附加的转矩。有条件地实施的第三组成部分120是变速器的模型,该模型在由马达获得的针对各变量的值的基础上对变速器的行为建模。此外,第二可实施的子模型12具有第四通信接口128、第五通信接口130和第六通信接口132,通过这些通信接口接收来自可实施的子模型10的数据并且将所述数据继续转送给有条件地实施的第三组成部分120。

第一数据146从与第一变量104连接的第一通信接口110传送给与第四变量122连接的第四通信接口128。第二数据148从与第二变量106连接的第二通信接口112传送给与第五变量124连接的第五通信接口130。第三数据150从与第三变量108连接的第三通信接口114传送给与第六变量126连接的第六通信接口132。

第一数据146和第二数据148源自相同的有条件地实施的组成部分100且涉及仿真时间内的相同的时间点。因此第一数据146和第二数据148综合在第一一致性缓冲器142中。第三数据150源自另一个有条件地实施的组成部分,亦即源自身条件地实施的第二组成部分102。如上文解释的那样,有条件地实施的第二组成部分102(其是电机的模型)仅在电机接入时才加以实施。因此第三数据150不是始终存在的。此外可能的是,有条件地实施的第二组成部分102的仿真时间不是精确地与有条件地实施的第一组成部分100的仿真时间同步,或者有条件地实施的组成部分100、102的迭代步骤不是同样频繁地实施。出于这些原因,第三数据150设置在自身的第二一致性缓冲器144中。划分成自身的一致性缓冲器要表达的是,按照实时仿真的完美的数据一致性不一定在两个一致性缓冲器142和144之间存在。一致性缓冲器通常涉及被一起传输的且属于仿真时间的相同的时间点的数据。通过划分成一致性缓冲器能尽可能最好地实现数据一致性,因为可以不同步地触发有条件地实施的部分。

第一一致性缓冲器142和第二一致性缓冲器144被综合在一个通信包140中,该通信包由第一可实施的子模型10传送给第二可实施的子模型12。概念“通信包”涉及一种数据单元的传输,该数据单元由作为发射器的第一可实施的子模型10传送给作为接收器的第二可实施的子模型12。数据传送的构造整体称为通信连接14。

第二可实施的子模型12的接收方式是持续的,也就是说,第二可实施的子模型12接纳所有通过通信连接14到来的数据。有条件地实施的第三组成部分120处理到来的数据,而与这些数据和之前接收的数据是否有区别无关。这在当前情况下尤其是有利的,因为可能没有第三数据150被传送,但第一数据146和第二数据148在仿真过程中发生变化。这种持续的接收方式也被描述为是“非阻塞的”或不同步的。与此相对,也存在受事件控制的接收方式,在该接收方式中,进行接收的可实施的子模型仅对在传递的数据中的变化做出反应。这种接收方式也被称为“阻塞的”或同步的,因为不变化的数据在其处理之前被有条件地实施的组成部分阻塞。

可见,两个可实施的子模型10和12除了上面说明的数据传送外还可以交换许多其它的数据。这种数据交换可以在两个方向上发生。为了清楚阐述通信连接14,说明书仅局限于三种变量,即内燃机的转速、内燃机的转矩和电机的转矩。

图4示出了按照本发明的一种示例性的实施形式的、如上面所说明那样的用于生成可实施的模型6的方法。该方法的起点是第一可实施的子模型10和第二可实施的子模型12。两个可实施的子模型分别与一个元文件关联。尤其是,第一可实施的子模型10与第一元文件10a关联。第二可实施的子模型12与第二元文件12a关联。第一和第二元文件10a、12a包含了对第一可实施的子模型10和第二可实施的子模型12的通信特性的说明。第一元文件10a针对第一可实施的子模型10的每一个有待通信的变量包含了通信方向、数据类型、数据宽度和对第一可实施的子模型10的有条件地实施的组成部分的配设。第二元文件12a针对每一个有待通信的变量同样包含了通信方向、数据类型、数据宽度和对第二可实施的子模型12的有条件地实施的组成部分的配设。元文件10a和12a因此含有本地与子模型相关的用于提供在不同的子模型之间的通信的信息。

在第一个处理步骤20中,第一元文件10a和第二元文件12a与通信定义16耦联。在通信定义16中确定了,哪些子模型应当相互通信、哪些数据应当捆绑在通信包中以及应当以何种接收方式接收数据。在当前情况下,通信定义16是一种文件,所述文件含有对下列信息的说明:第一可实施的子模型10与第二可实施的子模型12通信;所有有待从第一可实施的子模型10传输给第二可实施的子模型12的数据都被捆绑在一个通信包中;第二可实施的子模型12连续地接收数据。

由第一元文件10a的信息、第二元文件12a的信息和通信特性16的组合,构建了一个配设文件18,该配设文件含有对之后有待配置的通信接口和之后有待建立的在子模型之间的通信连接的说明。所述配设文件18(也被称为映射文件)具有定义的格式,该格式包含了所有之后为了关联两个可实施的子模型10、12所需的信息。

在第二个处理步骤22中,由第一可实施的子模型10、第二可实施的子模型12和配设文件18生成了上面说明的模型6,该模型含有第一可实施的子模型10、第二可实施的子模型12、各通信接口和实时的通信连接14。用于配置通信接口以及建立实时的通信连接14的信息源自配设文件18。在仿真期间,在第一可实施的子模型10和第二可实施的子模型12之间的通信如上面参照图3说明地那样运行。

有关配设文件18的中间步骤是可选的。也可能的是,模型6直接由第一元文件10a的信息、第二元文件12a的信息和通信定义16生成。此外,第一元文件10a和第二元文件12a仅是可以如何提供关于可实施的子模型的有待通信的变量的信息的多种可行方案中的一种。可实施的子模型和与之关联的元文件的组合可以在对高级语言的子模型的编译的过程中生成。

概念“高级语言的子模型”在此意味着,子模型以高级语言的编程语言存在。高级语言的编程语言(也作为“较高级的编程语言”公知)在此是一种用于编写计算机程序的编程语言,其明显去除了机器语言层面的抽象性和复杂性。示例性的高级语言的编程语言是c、c++、java或脚本语言如python、javascript、m-code(matlab-code)或图像编程语言如simulink和labview。

图5示出了针对在两个可实施的子模型之间的通信的另一个示例。尤其借助图5阐明了如何通过之后建立起在子模型之间的通信连接来实现已经编译好的可实施的子模型的交换。图5a示出了在可实施的子模型交换之前的状况,而图5b示出了在可实施的子模型交换之后的状况。

图5a示出了第一可实施的子模型10和第二可实施的子模型12。第一可实施的子模型10具有有条件地实施的第一组合部分100、有条件地实施的第二组成部分101和有条件地实施的第三组成部分102。第二可实施的子模型12具有有条件地实施的第四组成部分120和有条件地实施的第五组成部分121。

第一数据151和第二数据152从有条件地实施的第一组成部分100传送给有条件地实施的第四组成部分120。第一数据151和第二数据152在第一一致性缓冲器中被组织。第三数据从有条件地实施的第二组成部分101传送给有条件地实施的第四组成部分120。第三数据153形成自身的第二一致性缓冲器。第一一致性缓冲器和第二一致性缓冲器一起作为数据包被传送。

第四数据154从有条件地实施的第二组成部分101传送给有条件地实施的第五组成部分121。第四数据154形成了自身的第三一致性缓冲器。第五数据155和第六数据156从有条件地实施的第三组成部分102传送给了有条件地实施的第五组成部分121。第五数据155和第六数据156形成了第四一致性缓冲器。第三一致性缓冲器和第四一致性缓冲器一起在第二通信包中被传送。

有关通信的更为准确的细节、特别是有关第一可实施的子模型10和第二可实施的子模型12的通信接口参考对图3的上述说明。这种实施方式类似地适用于图5。

在图5b中现在示出了这样的状况,即,用经修改的第一可实施的子模型10′替代第一可实施的子模型10。经修改的第一可实施的子模型10′的特征在于,其仅含有有条件地实施的第一组成部分100′。这个有条件地实施的第一组成部分100′传送所有上面提到的数据,也就是说,第一数据151、第二数据152、第三数据153、第四数据154、第五数据155和第六数据156。因为数据现在全部源自一个有条件地实施的组成部分,所以这些数据用仅两个一致性缓冲器传递。尤其是第一数据151、第二数据152和第三数据153形成了第一一致性缓冲器,而第四数据154、第五数据155和第六数据156形成了第二一致性缓冲器。每一个一致性缓冲器的数据都在自身的数据包中被组织。

由图5a和图5b的对比可知,在第一可实施的子模型10和第二可实施的子模型12之间的通信,特别是第一可实施的子模型10的通信接口和在子模型之间的实时的通信连接,被不同地构建。通信接口和实时的通信连接与第一可实施的子模型10的已改变的实施方式相匹配。因此清楚的是,按照本发明的示例性的实施方式的用于生成可实施的模型的方法,实现了已经编译好的可实施的子模型的交换,其中,在不同的子模型之间的通信与之匹配且无需对子模型重新编译。此外,按照本发明的示例性的实施方式的用于生成可实施的模型的方法还能借助通信定义在编译子模型之后改变期望的通信。

尽管参照示例性的实施方式来说明本发明,但对技术人员人员来说显而易见的是,可以执行不同的变型且使用等效方案,而不会脱离本发明的范畴。本发明应当并不局限于所说明的专用的实施方式。更确切地说,本发明包含属于从属权利要求的所有实施方式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1