基于数字孪生的汽车信息物理系统自适应开发环境
摘要
汽车信息物理系统需要在各种物理条件下进行严格检查和测试。在激烈的市场竞争中,汽车制造商旨在提高汽车信息物理系统的开发效率。然而,实际的开发流程面临开发周期长、可扩展性差以及测试完整性低等挑战。为应对这些挑战,本文提出了一种基于数字孪生的汽车信息物理系统自适应开发环境,解决了两个关键问题:1)每个物理实体(即电子控制单元、组件、测试源等)都需要克隆出对应的数字孪生;2)数字孪生与物理实体之间需要实现紧密交互。第一个问题通过提出一种集成数字孪生克隆流程予以解决,第二个问题则通过开发智能数字孪生板来解决。以汽车车身控制系统为例的案例研究表明,该自适应开发环境具有高适应性,能够实现短开发周期、低复杂度、低成本、高可扩展性和高灵活性,满足开发过程中各种汽车信息物理设计要求。
索引术语
汽车信息物理系统,开发环境,数字孪生
一、引言
A. 动机
汽车工业是一个已发展百余年的成熟产业。然而,为了应对全球市场竞争、低能耗与环保需求,以及人们对驾驶、安全性、舒适性和自主性的更高要求,汽车工业正面临着网联化、自主化、共享化和电动化(CASE)[1]的巨大变革。汽车系统是典型的安全关键型信息物理系统[2],,需要在不同的驾驶环境中可靠运行[3]。信息物理系统需要实现交互与网络空间与物理实体[3]–[6]的集成。汽车信息物理系统必须在物理条件下进行严格检查和测试。如果开发的系统失败,将影响汽车的正常使用,甚至可能造成致命伤害和财产损失[3],[7]。
由于汽车是大规模消费品,汽车制造商之间的市场竞争十分激烈。在汽车信息物理系统的开发流程中,汽车制造商旨在缩短开发周期、减少工作量、改进系统质量,并采用更高效的方法来控制代码单元,从而提高开发效率。
然而,实际的开发流程存在以下问题。
(1)开发周期长。在开发汽车信息物理系统时,需要选择不同类型的产品(包括驱动芯片、组件和操作系统)并开发电子控制单元(ECU)控制程序。每一套选型都意味着需要一套完整的产品来设计系统。该方案需要较长的开发周期和较高的开发成本来验证产品的可行性和可用性。
(2) 可扩展性差。一旦汽车信息物理系统开发完成,通常只能使用特定的组件。如果汽车信息物理系统需要新功能(或引入新组件),则必须对现有的ECU控制程序进行扩展和升级(或重新设计ECU及ECU控制程序)。这种可扩展性差的操作常常使开发变得非常困难,并造成资源浪费。
(3) 测试完整性低。传统的汽车信息物理系统测试通常需要构建完整的系统并运行已开发的ECU控制程序。通过人工控制来测试汽车信息物理系统的功能完整性和安全性。然而,在实际场景中,并非所有功能需求都能在测试中被覆盖。
B. 贡献
为应对这些挑战,本文开发了一种基于数字孪生的自适应开发环境,用于汽车信息物理系统,解决了两个关键问题:1)每个物理实体(即ECU、组件、测试源等)都需要克隆一个对应的数字孪生;2)数字孪生与物理实体需要紧密交互。具体贡献如下。
• 为了实现每个物理实体都必须克隆一个对应的数字孪生,我们提出了一种集成的数字孪生克隆流程。
• 为了实现数字孪生与物理实体的交互式融合,我们开发了一块智能数字孪生板。
• 汽车车身控制系统的案例研究表明,该自适应开发环境在开发流程中具有高适应性,能够实现短开发周期、低复杂度、低成本、高可扩展性和高灵活性,满足各种汽车信息物理设计要求。
II. 相关工作
数字孪生被定义为物理实体[8],[9]的数字副本。在数字孪生中,信息可以无缝传输,从而使副本能够以与物理实体相同的方式运行。数字孪生已应用于许多行业,包括多媒体技术[10],、电力系统组成[11],以及安全的工业自动化与控制系统架构[12],等。
数字孪生已在汽车信息物理系统测试领域被讨论。Laverghetta等人构建了一个自动驾驶汽车的测试与评估(T&E)实验室[13]。考虑到自动驾驶汽车表现出涌现行为,他们进一步开发了一个面向汽车信息物理系统的T&E框架[14]。通过虚实连续谱,测试可以在全数字环境和全物理环境之间迁移,以获得优良的结果[15]。鉴于基于仿真的测试与评估可以减少对物理硬件的需求,Gonda开发了一个可重用的T&E框架,通过该框架可在不同层次上执行测试活动[16]。上述研究均采用虚实连续谱,结合仿真环境来解决汽车信息物理系统的测试问题,而非采用数字孪生。此外,这些研究主要关注仿真与测试,而非开发。在采用数字孪生时,我们需要考虑几乎所有开发活动,例如对象、测试源和测试对象等,这带来了显著的挑战。
III. 集成数字孪生克隆流程
A. 开发环境中的孪生体
我们的开发环境包含两种基本孪生体:1)ECU孪生体(包括物理ECU实体和数字ECU孪生体);2)组件孪生体(包括物理组件实体和数字组件孪生体)。开发环境的组织结构如图1所示。其中,物理ECU实体和物理组件实体属于物理孪生体,而数字ECU孪生体和数字组件孪生体属于数字孪生。
主控计算机模块是一个辅助模块,可用于开发附加功能(例如,车身控制系统的数字激励孪生)。主控计算机模块收集并记录操作和响应。
B. 面向数字ECU孪生体的集成数字孪生克隆流程
(1) 物理ECU实体。物理ECU实体主要由ECU板卡、基于AUTOSAR标准的实时操作系统和控制程序组成。对于汽车信息物理系统,相应的控制程序被加载到物理ECU实体中,以向被控组件发送控制信号。例如,发动机ECU、车身控制ECU、自适应巡航控制(ACC)ECU、线控制动ECU和安全气囊ECU都有各自的控制程序。运行在物理ECU实体上的控制程序可以更换,开发人员可以决定是否使用来自不同制造商的RTOS操作系统。
(2) 数字ECU孪生体。为确保数字ECU孪生体具备控制能力,其应由以下三部分组成:1)数字ECU程序;2)控制程序;以及3)数字孪生板。
(a) 数字ECU程序旨在发挥与物理ECU板相同的作用,
(b) 数字ECU孪生体中的控制程序是从物理ECU实体下载的。通过将物理ECU的控制程序下载到数字ECU程序,数字ECU程序可以使用与物理ECU相同的控制信号。
(c) 通过智能数字孪生板,数字ECU孪生体可以控制物理组件实体。关于如何实现数字孪生板的详细信息将在第四节中讨论。
为确保物理ECU实体具有对等的数字ECU孪生体,提出了一种面向数字ECU孪生体的集成数字孪生克隆流程。该面向数字ECU孪生体的集成数字孪生克隆流程的具体步骤如下。
(a) 通过分析该组件的物理ECU板的芯片特性,使用在Linux上运行的天目仿真器实现数字ECU孪生体。
(b) 对天眼仿真器进行修改,以确保数字ECU程序具有与物理ECU板相同的处理速度和通信功能(包括控制器局域网(CAN)通信、串行外设接口(SPI)通信、模数转换(A/D转换)以及数模转换(D/A转换))。
(c) 我们将物理ECU实体中的控制程序下载到数字ECU程序中;然后,数字ECU程序通过连接智能数字孪生板来控制物理组件。
(d) 对数字ECU程序进行测试和修改,直到物理组件实体能够正常响应且其功能被完全覆盖。
C. 数字组件孪生的集成数字孪生克隆流程
(1) 物理组件实体。物理组件实体由多个被控组件(例如,车身控制实体包含灯光、车门、座椅和雨刷等组件)以及一个组件驱动板(集成了各个组件的驱动芯片)组成;该组件驱动板用于控制物理组件实体中的各个组件。
物理ECU实体中的ECU板与物理组件实体中的组件驱动板通过编程输入/输出模型(PIO)相互连接,使得物理ECU实体能够控制物理组件实体,如图3所示。
(2) 数字组件孪生。为了确保数字组件孪生具备该功能,它应由三部分组成:1)数字组件程序;2)部件显示程序;以及3)数字孪生板。
(a) 数字组件程序旨在发挥与物理组件相同的作用。通过分析物理组件的特性,使用Java或Flash编写相应的数字组件程序。
(b)数字ECU孪生体中的部件显示程序展示数字组件程序的结果,从而方便直观地演示数字组件程序的行为。
(c) 通过智能数字孪生板,ECU孪生体(包括物理ECU实体和数字ECU孪生体)可以
为确保物理组件实体具有对等的数字组件孪生,提出了一种面向数字组件孪生的集成数字孪生克隆流程。该集成数字孪生克隆流程的具体步骤如下。
(a)分析物理组件实体中每个组件的驱动芯片;然后,我们为组件编写驱动程序,并将其下载到智能数字孪生板;智能数字孪生板使用驱动程序来映射相应驱动芯片的功能。
(b) 驱动程序经过测试和修改,直到物理组件实体能够正常响应并且其功能被完全覆盖。
(c) 我们分析物理组件实体的每个组件,并在个人计算机上编写数字组件程序;该数字组件程序接受智能数字孪生板的控制,并反馈信号。
(d) 对数字组件程序进行测试和修改,直到数字组件孪生能够正常响应且其功能被完全覆盖。
通过集成数字孪生克隆流程,电子控制单元和组件均具有物理与数字实现;每个电子控制单元(或组件)的数字与物理实现可以共存,或者我们可以选择其中一种存在;数字与物理实现均可完整反映系统功能,从而为开发人员提供直观性和便利性。
第四节 智能数字孪生板
A. 智能数字孪生板概述
为了实现数字孪生与物理实体之间的交互融合,我们开发了智能数字孪生板,通过该板卡,物理电子控制单元和数字电子控制单元均可控制物理或数字组件,且它们的控制信号保持一致。因此,智能数字孪生板是开发环境的核心,它在“数字孪生”与“物理实体”之间起到桥梁作用。该智能数字孪生板具有两个功能,因而具备智能化特性。
(1) 通过PIO,智能数字孪生板可以连接到组件驱动板和物理ECU板,以及另一个智能数字孪生板。
(2) 通过分析每个物理部件的驱动芯片,可以用C语言编写相应组件的驱动程序;然后将所有组件的驱动程序下载到智能数字孪生板板卡,以实现组件驱动程序(在智能数字孪生板中)与其对应物理驱动芯片之间的映射。
通常情况下,智能数字孪生板由单片微机实现即可。在第五节中,以车身控制系统开发作为案例研究,其中智能数字孪生板由C8051F410单片微机实现。
B. 数字ECU孪生体中的智能数字孪生板
数字ECU孪生体可以通过智能数字孪生板提供与物理ECU实体相同的外部接口。智能数字孪生板(位于数字ECU孪生体中)和驱动板(位于物理组件实体中)通过PIO相互连接,如图5所示。通过图5中智能数字孪生板的路由,数字ECU孪生体可以使用与物理ECU实体相同的控制信号,从而使数字ECU孪生体能够控制物理组件。这样,物理组件可由PC软件程序(即数字ECU孪生体)进行控制,便于测试和验证,并能保证测试结果的真实性。
数字ECU孪生体不仅可以控制物理组件,还可以控制数字组件,如图6所示。基于图6,可以建立一个完整的测试和验证系统,并且该系统仍能保持真实性。
数字ECU孪生体具有以下优势。
(1) 基于不同算法的控制程序可以在数字ECU孪生体上实现。例如,对于车身控制系统,开发人员可以使用多种算法来防止车窗夹持,并最终找到最佳算法。
(2) 开发人员可以轻松快速地修改数字ECU程序的设计。与物理ECU板相比,数字ECU程序无需重新制作ECU电路板,从而节省了时间和成本。
C. 数字组件孪生中的智能数字孪生板
数字组件孪生体不仅可以由数字ECU孪生体控制(图6),还可以由物理ECU实体控制(图7)。如图7所示,通过智能数字孪生板的路由,物理ECU实体可以控制数字组件孪生体,从而直观地获得控制结果,并在数字组件孪生体中收集和记录数据。
数字ECU孪生体具有以下优势。
(1) 通过将物理组件实体(例如车身部件实体中的物理灯光、车门、车窗及其他组件)映射到数字组件孪生,它为实际开发带来了极大的便利性,例如显著减少了占地面积和成本。
(2) 数字组件程序可以响应来自智能数字孪生板的控制信号,并反馈状态和错误信号,例如灯损坏或夹持信息。
(3) 部件显示程序可以直观地显示组件的运行状态,并记录响应日志,相比通过物理组件手动记录响应日志的传统方式,更加方便快捷。
V. 案例研究
A. 车身控制系统
车身控制系统,在汽车行业中通常称作车身控制模块 (BCM),主要用于提升汽车驾驶的便利性和舒适性。该系统覆盖范围广泛,包括灯光控制、车门控制、座椅控制、雨刷控制、电动车窗控制、空调控制以及仪表盘显示等。
可以看出,车身控制系统包含大量控制对象,如图8所示。
B. 车身控制系统开发中的孪生体与模块
图9展示了使用自适应开发环境开发车身控制系统时的孪生体与模块。除了开发环境提供的两种基本孪生体(即ECU孪生体和组件孪生)之外,开发车身控制系统时还需添加一个额外的孪生体和一个额外的模块:1)物理激励实体;2)数字激励孪生;3)测试模块。
(1) 物理激励实体包括灯光开关组件、车窗开关组件和仪表总成等。
(2)数字激励孪生体在主机模块上运行,包含仪表显示程序和刺激接口程序。数字激励孪生体与物理刺激实体使用相同的通信协议(例如SAE J1939协议)与物理ECU实体或数字ECU孪生体进行交互。数字激励孪生体的设置步骤如下。
1) 我们分析车身控制系统的ECU通信协议,并根据ECU通信协议编写数字激励孪生的数字激励程序(即仪表显示程序和刺激接口程序)。
2) 数字激励程序被测试和修改,直到数字组件孪生能够正常响应并完全覆盖其功能。首先,我们分析ECU通信协议。
(3) 测试模块通过局域网连接到物理(或数字)激励实体(或孪生体)以及物理(或数字)组件实体(或孪生体)。测试模块中的测试程序可以通过比较激励日志与响应日志来验证测试结果,如图9右侧所示。
对激励实体进行虚拟化的原因在于,数字激励孪生能够重复、有序或随机地发送控制信号并记录激励日志。通过人工控制物理激励实体中的物理开关组件来获取测试用例(例如,连续1000次开关灯光)效率非常低下。
C. 孪生体的软件/硬件细节
(1) 物理ECU实体采用飞思卡尔的16位微控制器 MC9S12DG128[18]作为ECU的计算单元。该芯片使用HCS12 CPU内核、128KB闪存EEPROM、8KB随机存取存储器和2 KB电可擦可编程只读存储器。ECU电路板提供SPI总线和通用输入/输出(GPIO)接口,这些接口用于连接物理车身部件实体。每个接口均提供模/数转换和脉宽调制(PWM)引脚,用于采集来自驱动芯片的信号并控制车身部件。图10展示了基于MC9S12DG128的车身控制程序在物理ECU实体中的主板。
(2) 数字ECU孪生体使用天眼仿真器,并在Linux操作系统上运行。由智能数字孪生板提供的数字ECU孪生体具有与物理ECU实体相同的外部接口。
(3) 物理车身部件实体包括灯光、车门和车窗等。例如,MC33888驱动芯片[19]用于控制灯光,其提供一个16针的PIO接口以连接ECU板卡,以及12个端口用于控制灯光。如果我们选择另一种驱动芯片,只需将其更换为相应的组件驱动板即可。图11展示了在车身控制系统开发中使用的MC33888驱动芯片的电路图。
(4) 数字车身部件孪生中的智能数字孪生板采用 C8051F410单片微机[20],其提供一个16针GPIO接口和一个10针GPIO接口;此外,C8051F410还提供USB接口以连接个人计算机。图12展示了用于车身控制系统开发的8051F410单片微控制器的最小系统。
图13 显示了前大灯和尾灯组件的开发环境。传统车辆灯光电源是12V和16Ah的铅酸电池。在此开发环境中,采用了可调铅酸电池。
D. 车身控制系统开发流程
使用开发环境进行车身控制系统的开发流程如下。
(1) 我们选择激励实体(或孪生体)、ECU实体(或孪生体)和车身部件实体(或孪生体)来构建车身控制系统的开发环境。每个激励(或ECU、组件)的数字实现和物理实现可以共存,也可以仅存在其中一种。
(2)激励实体(或孪生体)向物理(或数字)ECU实体(或孪生体)发送测试激励。如果激励实体(或孪生体)是数字激励孪生,则测试激励通过三种方式生成:1)随机;2)编码;3)文件导入;否则,如果激励实体(或孪生体)是物理刺激实体,则通过手动操作(即控制开关组件)生成测试激励。
(3) 如果使用数字激励孪生,则所有生成的测试激励将自动记录到刺激日志文件中;否则,如果使用物理刺激实体,则所有生成的测试激励需手动记录到刺激日志文件中。换句话说,使用数字激励孪生的整个激励过程可以自动记录,便于调试和修改。
(4) 将刺激日志文件发送到测试模块。
(5) 物理(或数字)车身部件实体(或孪生体)接收测试激励,并通过车身控制程序控制物理(或数字)车身部件实体(或孪生体)。该物理(或数字)车身部件实体(或孪生体)接收控制并响应。如果使用数字车身部件孪生,则所有生成的响应将自动记录到响应日志文件中;否则,如果使用物理车身部件实体,则所有生成的响应需手动记录到响应日志文件中。
(6) 响应日志文件被发送到测试模块。
(7) 测试模块将响应日志文件与激励日志文件进行比较。如果两个日志文件一致,则车身控制系统满足设计要求;否则,如果存在偏差,应分析相应原因,并通过修改和调试相应实体来改进车身控制系统设计。
使用开发环境进行车身控制系统上述开发流程的流程图如图14所示。
最后进行了激励测试。在规定的72小时内,数字激励孪生体共向数字ECU孪生体发送了17,685个测试激励;数字体共接收到17,685个对测试激励的响应;因此,激励测试的准确率为100%,误操作率为0%,如表I所示。换句话说,车身部件在长期高频的激励测试下仍能正常运行。结果验证了车身控制系统的稳定性以及系统设计的有效性。
| 测试条件 | 结果 |
|---|---|
| 时间跨度 | 72小时 |
| 发送的命令数量 | 17,685 |
| 响应数量 | 17,685 |
| 准确率 | 100% |
| 误操作率 | 0% |
本文开发的基于数字孪生的开发环境面向汽车信息物理系统。据我们所知,这是首次将数字孪生技术用于实现自适应开发环境的工作。其目的是利用数字孪生技术替代部分复杂的物理检查和测试,从而提高开发效率。本文重点介绍案例和测试,而非比较算法和数值实验。我们强调的是开发环境的实现方式,以及开发环境在实践中的优势。
E. 开发环境的优势
基于车身控制系统的案例研究,该开发环境实现了对汽车信息物理系统开发的高适应性。
(1) 短开发周期。当开发环境将物理电子控制单元和物理组件虚拟化后,可在可编程模式下覆盖大量可重复和可定制的案例,从而提高开发效率。
(2)低复杂度。该开发环境不仅能够轻松测试控制程序、驱动程序和操作系统在物理ECU实体中的有效性,还能够轻松确定组件驱动芯片选型和组件选型,从而快速构建和测试汽车信息物理系统的产品解决方案。
(3)低成本。该开发环境使数字ECU孪生体以 SkyEye的形式实现,能够快速且方便地修改设计,而无需重新制作ECU电路板,从而节省了时间和成本。
(4)高可扩展性。该开发环境便于开发人员扩展或更改系统设计方案和产品解决方案;数字与物理实现均可充分反映系统功能,从而为开发人员提供直观性和便利性。
(5) 高灵活性。该开发环境可以直观地显示测试响应,并能自动将响应记录保存到日志文件中,以实现无人值守自动测试与统计。
总体而言,该开发环境具有高适应性、短开发周期、低复杂度、低成本、高可扩展性和高灵活性,能够基本满足开发流程中的各种设计要求。
六、结论
通过采用数字孪生,本研究构建了一个自适应汽车信息物理系统开发环境以提高开发效率。该开发环境通过将一致的控制信号从物理(或数字)ECU发送到物理(或数字)组件,实现了完整且逼真的基于数字孪生的开发环境。
该开发环境是数字孪生解决方案在汽车信息物理系统开发中的成功实践,并展现出显著的开发效率。该开发环境可帮助汽车制造商在实际的汽车信息物理系统开发中展示高适应性、短开发周期、低复杂度、低成本、高可扩展性和高灵活性。
1000

被折叠的 条评论
为什么被折叠?



