本文主要探讨汽车乘员安全和ADAS事件前后的汽车乘员保护,介绍ADAS(高级驾驶辅助系统)在汽车安全中的重要作用,并将详细介绍如何运用ModelCenter Integrate软件,针对ADAS各种应用场景,与LS-DYNA进行联合仿真。此外,还将研究仿真过程中刚体与柔体车体转换流程以及时间步长的匹配,以及假人的运动姿态以及伤害值;通过Python脚本或者MATLAB,以及传感器的设置,实现自动化的联合仿真工作流程。
(资料图片)
背景介绍
先进驾驶辅助系统(Advanced Driver Assistance System)简称ADAS,是利用安装于车上的各式各样的传感器,在第一时间收集车内外的环境数据,进行静、动态物体的辨识、侦测与追踪等技术上的处理,从而能够让驾驶者在最快的时间察觉可能发生的危险,以引起注意和提高安全性的主动安全技术。从乘员安全的角度看,ADAS包括未来汽车上搭载的各种主动安全和被动安全系统。为什么需要ADAS呢?原因之一是通常各类伤害和事故大多数与人为失误有关,而有时某些车载系统的故障可能会造成人身伤害和碰撞事故。为了评估这类场景,可以使用IPG CarMaker等虚拟化工具,这是一种非常完善的虚拟化环境,能帮助用户有效仿真各种不同类型的场景,如夜间驾驶,雨中驾驶等情况。在所有这些不同的场景中,可以在车辆内部设置一位乘员,并观察驾驶员的响应。
那么该场景中LS-DYNA能够发挥怎样的作用呢?使用LS-DYNA的目的是观察驾驶员的运动是否被这些场景所影响,例如如果在夜间行驶过程中由于光线问题车前突然出现一堵墙,当突然踩下刹车时驾驶员的反应与在光照充足的环境下完全不同。在光照充足的环境下驾驶员能在较远距离就看到墙壁并踩下刹车,而如果驾驶员没有看到墙壁,驾驶辅助系统就会启动,它可能会发现前方有物体并自动刹车,这就是我们如今看到许多车辆所搭载的主动安全系统。
那能否将这两个系统连接在一起?在LS-DYNA的整车模型中施加乘员和车辆的运动,然后观察它们会产生怎样的相互作用,以及我们如何能够在这个事件里减少引起的伤害类型,是这项研究的目的。
在相关研究中,研究人员试图在LS-DYNA和VRXSimulator或IPG CarMaker等虚拟环境之间建立协同仿真,从该虚拟环境获取输入信息,如车辆加速度、车辆速度等,再将该数据与乘员的运动相结合,加载在整车模型或SLED滑车模型上,从而观察潜在的影响。如上图所示,该ADAS场景案例中,首先创建虚拟环境,然后添加主动安全带,接着在ADAS事件发生之前施加安全带预载荷,具体大小取决于车速,一旦检测到碰撞,LS-DYNA将接管计算。然后根据乘员的运动方式控制安全带,启动主动安全系统。
当使用和不使用主动安全带时,胸部与头部位置的加速度是不同的,但为了设置这种场景需要大量手动操作。比如如何设置ADAS环境,当分析完成后如何提取数据,不管是时域的数据或是静态的数据,并在软件之间建立连接?可能还需要仿真不同场景的结果,此时如何来选择运行场景?是否有任何标准?比如系统的光照条件不同,或天气状况不同,比如下雨或下雪,根据这些条件可以设置不同场景。在某个场景下,需要加快车辆行驶速度,并设置场景中的制动变得有效或无效,然后将这些设置导入到模型中。以上的一些操作都需要用户手动输入,那么是否有一种能够自动运行整个流程的方式呢?如此便可以加快仿真速度,选择该方法后能在很短时间内运行数百个场景,并且在这个具体情况下,无需运行单个LS-DYNA案例,而是可以同时研究数百甚至上千个应用场景,依据特定标准从其中进行选择。
这就是Model Center Integrate的作用,它有助于设置这样的自动化场景。具体步骤可分为两个阶段,第一阶段使用Model Center Integrate连接LS-DYNA刚体SLED模型,然后连接IPG CarMaker。从IPG CarMaker获取速度数据并输入到SLED模型,然后运行场景仿真。第二阶段开展联合仿真,LS-DYNA可以与MATLAB或者python耦合,控制主动安全带,部分OEM厂商已经在实际使用。
该案例也可以使用PY-FMI来控制主动安全带(属于另外一种流程),但是否能方便地在ModelCenter Integrate中进行连接呢?完成场景设置后,可以在CarMaker里结束这个场景,然后自动切换到LS-DYNA环境,在运行案例时可自动进行该流程。那么我们到底需要研究什么类型的信息呢?寻找头部伤害标准的输入是什么呢?无论是气囊还是泄气孔,都要找到尺度参数或时间尺度参数,并输入到滑车环境中。由于乘员安全需要大量不同类型的场景,不同类型的仿真,这就需要开展DOE和优化工作,用户关注的不仅仅是单一种类的乘员,还会关注50百分位或者5百分位的乘员。需要在同样的环境下为大量不同的场景大量不同的乘员设计相同的安全带,此时这样的自动化方法能发挥作用,帮助完成设置。
Model Center Integrate的作用是,可以方便地把CarMaker连接到LS-DYNA,从CarMaker获取加速度输出数据,将该数据转换成文本格式,并插入到输入文件,然后自行运行输入文件。
该过程需要处理两个场景的不同输出和输入,可以创建如图所示的设置并对整个设置进行参数化,如果有参数化的LS-DYNA模型,Model Center Integrate能轻易识别所有参数,并根据不同的载荷工况将这些参数作为输入或输出。
视频显示的是车辆刚体模型,输入基本来自IPG CarMaker,然后将刚体模型的速度数据作为初始速度施加给可变形的整车模型中,然后将车辆的变形输入滑车SLED模型中,利用SLED模型可以进行不同场景的研究。这些不同的载荷工况可以并行运行或顺序运行,或是和其它工具进行协同仿真。
首先运行刚体模型,然后获取数据,将数据输入到可变形模型中,再运行滑车模型。
在IPG CarMaker中设置类似的场景,某车以特定速度行驶,然后车辆检测到正前方有障碍物(可能是汽车也可以是墙壁)后启动刹车。根据事件时间可以看到,其持续时间相当长,显然不适合在LS-DYNA中运行该长时间的完整事件,因为计算量巨大。如果整车进行刚体化后再运行则可行,可将整车进行刚体转换,并以较大的时间步长运行,若驾驶员或车辆预见即将发生碰撞事件,可以方便地将整车再切换回可变形模型,并继续运行。若IPG CarMaker判断不会发生碰撞事件,则无需运行碰撞场景。
利用IPG CarMaker获取数据后,运行Python脚本将数据导入NEON_RIG模型(刚体车辆模型)。当然整个场景都能导入到DOE工具中,IPG CarMaker可设置多个场景并行运行,用户可以只关注SLED模型上的DOE,利用不同的方法设置DOE,并同时研究所有不同的场景。
在获取数据之后,若CarMaker判断会发生碰撞事件,则需要进行下一步操作。在这里需要设置if条件,自动完成上述流程。
视频展示了该流程的工作方式,它会自动触发CarMaker运行特定场景,从IPG CarMaker获取数据并输入到NEON_RIG模型然后运行,顺序或并行运行皆可。
下一步操作是添加标记,以及是否需要运行特定载荷工况的if条件。在“colflg”处设置标记值,该数值来源于CarMaker,CarMaker可生成大量数据以供使用。我们用该场景来设置一个安全条件,如果存在运行特定案例的循环操作,也可以在ModelCenter Integrate中运行。运行if条件后,如果“colflg”值为1意味着检测到碰撞事件即将发生,然后继续操作运行特定顺序的场景。
获取数据运行碰撞检测,然后按特定情况继续操作。
第二阶段,设置协同仿真工具。协同仿真可以同时仿真乘员的运动,以及如何使用主动安全带。可以使用Python,也可以把数据传递给MATLAB,在MATLAB环境中设置施加安全带力的算法策略,然后根据碰撞事件前的拉伸数据帮助降低对乘员的伤害,在这里可以连接Python或MATLAB然后完成设置。
创建一个简单的测试模型来检查设置是否有效。LS-DYNA中有*COSIM的协同仿真接口,该接口的应用基于传感器*SENSOR,可以根据传感器或用户指令启动。这项设置需要管理用户使用的两种或三种不同工具间的时间步长,当使用协同仿真工具数据从一个系统传输至另一个系统时,时间步长必须匹配,如果时间步长不匹配就不能获得正确的响应。在ModelCenter Integrate中开启这项功能,确保二者的时间步长匹配。CarMaker中使用的时间步长较大,因为需要模拟很长的一段时间,而在这个特定的LS-DYNA事件中,事件运行时间以毫秒计算,时间步长非常小,因此必须用ModelCenter Integrate转换,按比例缩小,然后在不同的场景中运行。
完成以上操作后会生成不同类型的图形和图表,包括正在发生的碰撞事件等场景都可以列出,或是在ModelCenter Integrate将某个场景突出显示,查看数据以便后续研究。
小结
ModelCenter Integrate是一个整合多学科、多领域模型的强大工具,通过系统级仿真进行工程设计评估。利用ModelCenter Integrate可以将CarMaker, PYFMI以及LS-DYNA无缝的连接到一个自动的工作流中,用来研究主动安全系统作用下的乘员伤害。不仅如此,类似的流程可以应用在各类行业中。