轨道车辆吸能结构碰撞变形沉浸式虚拟仿真方法
2022-01-20陈乙杨岳陈超石育易兵
陈乙,杨岳,陈超,石育,易兵
(1.中南大学 交通运输工程学院,湖南 长沙 410075;2.华北科技学院 计算机学院,河北 廊坊 065201)
轨道车辆吸能结构(以下简称吸能结构)能有效提高轨道车辆的耐撞性,进而提高轨道车辆运行安全性[1-2]。目前,研究人员主要通过有限元分析软件对吸能结构碰撞仿真[3-8],该仿真方法利用有限元分析软件对吸能结构碰撞变形过程数值计算求解,并利用其后处理模块等值线、云图、形变等方式显示求解结果。但是有限元分析软件碰撞仿真方法存在以下主要缺点:吸能结构碰撞变形过程的动态可视化效果有限,不能直观表达动态效果,无法满足耐撞性展示分析需要;海量的吸能结构碰撞变形求解结果无法快速表达,对计算机性能要求高;吸能结构模型与用户的交互性弱,用户体验感差等。针对吸能结构的有限元碰撞仿真方法的缺点,需要一种能实现其碰撞变形过程实时分析的高沉浸感虚拟碰撞仿真方法。随着虚拟现实技术的快速发展,基于该技术的研究方法在多个领域得到应用[9-11],该技术能有效提高虚拟仿真效果和效率,俞胜平等[12]采用虚拟现实技术研究炼钢连铸动态调度仿真,开发了基于虚拟现实的炼钢连铸调度仿真系统;WANG等[13]将该技术应用于车削过程仿真研究,构建了一个虚拟切削系统。HUANG等[14-15]研究了传感器与有限元仿真分析方法的结合,提出了一种基于AR环境的实时有限元仿真分析系统。在碰撞仿真方面,潘福全等[16]研究了虚拟现实环境下汽车两车碰撞仿真,开发了基于Quest3D平台的汽车碰撞仿真系统。而将虚拟现实技术与有限元软件碰撞仿真方法结合,利用基于虚拟现实技术的高真实感沉浸式环境,能有限提高吸能结构碰撞变形仿真的真实感和效果。但是,在沉浸式环境下实现轨道车辆吸能结构碰撞变形的虚拟仿真,仍然存在以下难点:1)有限元仿真分析结果中的几何网格模型及其物理属性信息的数据量非常大,而碰撞仿真等动态分析过程具有成百上千的仿真时间步,且每一个时间步长均会产生大量数据,需要对带时间步的有限元仿真分析结果进行大量简化,才能实现其在虚拟现实系统的流畅可视化和实时交互;2)通常虚拟环境引擎主要为网格模型渲染和可视化,无法直接对有限元分析结果进行可视化和交互,因此需要开发从常用的有限元分析软件到沉浸式虚拟环境引擎的接口;3)为提高用户体验感和虚拟仿真效果,需要构建高真实感的实车碰撞实验场景,通过虚实结合的轨道车辆吸能结构碰撞变形虚拟仿真方法,进一步提高吸能结构碰撞变形仿真的真实感和效果。因此,本文提出一种轨道车辆吸能结构碰撞变形的沉浸式虚拟仿真方法:1)将虚拟现实技术与有限元软件碰撞仿真方法相结合,并通过简化处理吸能结构动态几何模型和碰撞物理模型,从而有效缩减吸能结构有限元碰撞仿真分析结果数据;2)建立仿真软件与沉浸式虚拟环境引擎之间的数据接口,实现实时直观呈现吸能结构碰撞变形有限元计算分析结果。3)搭建高真实感实车碰撞虚拟仿真实验场景,实现吸能结构的交互仿真分析和高沉浸感的碰撞变形可视化。本文详细描述了本文提出的方法,并通过实验验证本文方法的有效性。
1 总体方案
为了详细介绍本文所提出的在沉浸式环境下实现轨道车辆吸能结构碰撞变形的虚拟仿真方法,整个方案如图1所示,主要包括3个部分:1)吸能结构碰撞数据模型:在传统有限元分析软件环境下,构建吸能结构几何模型并将其有限元网格化,以此得到吸能结构几何网格模型。设定吸能结构的材料、属性,并通过非线性数值模拟方法对其进行碰撞仿真求解,得到吸能结构各时间步的动态几何模型和碰撞物理模型;在此基础上,研究吸能结构动态几何模型和碰撞物理模型的简化方法,将吸能结构动态几何模型和碰撞物理模型进行简化,并将简化后的模型有序存储和管理;2)虚拟仿真可视化:研究仿真软件与虚拟环境引擎之间的数据接口从而读取和渲染数据模型,实现该简化后模型在虚拟现实系统中的动态可视化。3)吸能结构碰撞变形沉浸式虚拟仿真:搭建高真实感的实车碰撞实验场景,并在此基础上实现吸能结构碰撞变形的沉浸式虚拟仿真。全过程涉及到多种数据和模型的转化处理。
图1 轨道车辆吸能结构碰撞变形的沉浸式虚拟仿真方案Fig.1 Immersive virtual simulation scheme for collision and deformation of rail vehicle energy-absorbing structure
2 吸能结构碰撞数据模型
2.1 吸能结构碰撞数据模型获取
吸能结构数据模型包括:碰撞动态几何模型和碰撞物理模型。如图2所示,首先在有限元软件中建立吸能结构初始时刻的几何模型O0=(Z0,E0),该网格模型包含在有限元软件输出的求解文件(Key文 件)内PART版 块 中,其 中Z={z=i|1≤i≤N}、E={e=j|1≤j≤N}为模型所有节点和元素的集合。再对吸能结构的材料、属性、碰撞条件进行设定,并使用传统非线性有限元软件LS-DYNA对碰撞过程进行仿真分析。
图2 吸能结构碰撞数据模型的获取Fig.2 Acquisition of dynamic geometric model and physical model of energy-absorbing structure collision
在任意时刻t,假设某质点的坐标定义为xi(i=1,2,3…),运动方程为:xi=xi(Xa,t),由动量守恒、质量和能量守恒定律和虚位移原理对物体碰撞分析[17]得:
式中:M为对角质量矩阵;̈(t)为节点加速度向量;A为节点载荷向量;F为节点应力场的等效节点力向量,ρ为当前质量密度;[N]为形函数矩阵;[B]为应变矩阵;{σ}为柯西应力矢量,{σ}={σxx,σyy,σss,σxy,σys,σsx}T。
将碰撞全过程[0,T]分为m个时间步,由显式中心差分法[18],得:
式中:M为质量矩阵;f ext为外部节点力;fint为内部节点力。
得到碰撞过程内任一tm时间步各节点的应力f m,位移dm,速度vm,加速度am等物理属性,以此得到吸能结构的碰撞物理模型P=(F,D,V,A…)。其中F,D,V,A分别表示吸能结构各节点物理属性的集合,同时根据各节点位移dm属性和初始几何模型O0=(Z0,E0)可获得碰撞动态几何模型O=(Z,E)。
2.2 吸能结构碰撞数据模型简化
首先提取吸能结构碰撞动态几何模型O=(Z,E)和碰撞物理模型P=(F,D,V,A…)的重要表面网格及对应物理属性,并对几何模型三角化处理。
再依据应力f m,位移dm,速度vm和加速度am等物理属性的具体含义,按照式(4)和式(5)计算物理属性重要度加权的节点二次误差和各节点分散处理的总体物理属性值[19]。
式中:g为节点c在笛卡尔坐标系里的几何坐标;s则为节点的n维属性坐标。f∈p(c)表示包含节点c的一阶邻域的所有三角形面片组成的集合。(c)为节点c的几何二次误差,(c)为单个物理场属性节点重要度二次误差。
同时按照式(6)计算各节点的物理属性梯度。
式中:c为节点坐标;p为节点物理属性;m为节点所在的一阶领域的三角形面片数;为节点c的第j个邻接三角形的重心坐标;Pj2,Pj3为第j个邻接三角形的另外两点的物理属性值。
通过遍历网格模型中的所有边对,按照式(7)计算各边对物理属性梯度加权的折叠代价,并将边对按折叠代价根据大小排序,建立边折叠链表。
最后进行边折叠操作,将折叠前原边对的两节点的分散总体物理属性求和处理后赋值为折叠后的节点,并更新该点周围邻域节点对。
对节点的折叠简化后吸能结构碰撞动态几何模型Oless=(Zless,Eless)仅含有吸能结构模型表面的部分节点及元素,以及所有时间步下的碰撞物理模型Pless=(Fless,Dless,Vless,Aless…)从而缩减吸能结构碰撞变形动态可视化的数据量。
2.3 简化后模型的分区存储管理
为实现简化后吸能结构几何模型和物理模型的有序存储,并在多时间步的情况下实现流畅可视化,本文采用分区存储方案如图3所示,主要包括:按照不同的吸能结构分区存储;同一吸能结构下,按照不同时间步分区存储;在同一时间步下按照不同物理属性分区存储。将不同吸能结构的数据模型以不同的“name”命名存储;同一吸能结构数据模型下的分区中,包含简化后的几何模型Oless=(Zless,Eless)和所有时间步的碰撞物理模型Pless=(Fless,Dless,Vless,Aless…),分别以“name+tm”命名存储;同一时间步分区内含有该时间步下吸能结构不同物理属性值,并以“name+tm+属性”命名。
3 虚拟仿真可视化接口
3.1 沉浸式虚拟环境下读取及渲染模型方法
在沉浸式虚拟环境下,为了实时呈现吸能结构的碰撞变形过程和该过程中的物理属性变化,需在沉浸式碰撞场景内准确读取简化后碰撞几何模型Oless=(Zless,Eless),和碰撞物理模型Pless=(Fless,Dless,Vless,Aless…)。本文按照图4所示进行读取模型,渲染吸能结构三维模型,并将吸能结构碰撞过程的物理属性通过云图方式渲染。
图4 沉浸式虚拟环境下读取及渲染模型方法Fig.4 Method of reading and rendering model in virtual reality environment
1)根据吸能结构的名称读取数据文件,获取该吸能结构碰撞几何模型Oless=(Zless,Eless),根据各节点的顺序标签重新排列节点以确保连续且升序,将节点信息依次存储在数组B[]中,其中数组索引表示节点序号标签。通过虚拟环境引擎Unity中MeshFilter.Mesh.vertices接口获取B[]数组内节点信息。同时依次获取元素信息,建立E[]数组存储碰撞几何模型中元素信息,通过Unity接口Unity.MeshFilter.Mesh.Trangels获取E[]数组内元素信息。
2)云图渲染物理属性方法:获取目标吸能结构t时间步时的碰撞物理模型,创建二维数组S[i][j]以存储该碰撞物理模型,读入t时间步时的各节点序号及节点对应物理属性值,其中数组索引i表示节点序号,j表示物理属性的种类标签。根据碰撞全过程内该物理属性的最大值Pmax和最小值Pmin,通过Unity.Mesh.colors接口给Mesh内节点赋予不同的RGB值,同时根据各点的位移属性值更新各点坐标,最后由Shader内Vertex Shader和Fragment Shader实现碰撞吸能结构的颜色渲染。
3)设置2组用于读取节点、元素及属性的数组B[],E[],S[][]和B2[],E2[],S2[][],当目前时间步为Unity时间帧时,第1组数组读取本时间步对应节点及物理属性值,并将其可视化。同时第2组数组同时读取下一时间帧对应的时间步的节点及物理属性值,为下一时间帧的数据可视化做好数据存储,实现流畅可视化。
考虑流程层次的复杂性,本文如图5所示在Unity虚拟环境下循环读取简化后的几何模型和碰撞物理模型。打开数据文件后,Unity脚本将按照输出数据库层次结构读取内容;其中外部循环用于控制时间步、读取物理属性和渲染物体,内部循环用于读取不同的吸能结构,从而满足完全读取碰撞仿真分析中所有几何模型和物理属性需求。考虑到不同吸能结构数据名称不同,因此在刚开始创建分析吸能结构时需定义其名称,并通过脚本第1次遇到名称时读取并存储名称,然后根据这些名称对所有相关数据进行处理和分组,以此满足处理不同吸能结构。
图5 循环读取数据模型方法Fig.5 Cyclic read data model method
3.2 沉浸式虚拟碰撞场景构建
通过HTC Vive构建了沉浸交互式虚拟仿真实验场景,主要包括:发射装置、液压制动阀、冲击小车、轨道和刚性挡墙等,如图6所示。用户选择启动碰撞实验后,系统启动发射装置,当发射装置获得需要的动力后,发射车和冲击小车发射、此时发射车制动而冲击小车在轨道上继续运动至与刚性挡墙发生碰撞,整个过程在沉浸式环境下实现了该吸能结构碰撞变形过程的动态可视化。
图6 轨道车辆吸能结构碰撞变形沉浸式虚拟仿真场景Fig.6 Virtual simulation scene of collision and deformation of energy-absorbing structure of rail vehicle in immersive environment
在具体实验操作时,用户通过头戴式显示器,在该场景中任一角度能够直观沉浸式观察该吸能结构和其碰撞变形过程。用户通过2个手柄在虚拟环境中漫游并交互选择需要可视化的吸能结构物理属性,如应变属性能实时可视化碰撞过程中物体的变形,应力属性可观察物体表面应力云图的实时变化等,提升了碰撞虚拟仿真的真实感和用户的体验感。
4 沉浸式虚拟仿真结果
4.1 有限元碰撞仿真
本文采用轨道车辆的某新型蜂窝吸能结构[20]的虚拟碰撞过程,验证本文沉浸式环境下物体碰撞变形的动态可视化方法的可行性和有效性。如图7所示,在传统建模软件Hypermesh环境下构建有限元模型,该有限元模型由4个部分组成,包括冲击小车,某新型蜂窝吸能结构,刚性壁和刚性轨道。薄壁零件使用Belytschko-Tsay壳单元描述,前端板,后端板和导轨采用恒应力固体元件,使用固体元素对蜂窝结构进行建模,并使用“*MAT_MODIFIED_HONEYCOMB”蜂窝材料描述其整体性能[21]。
图7 某新型蜂窝吸能结构及冲击小车有限元分析模型Fig.7 A new type of honeycomb energy-absorbing structure and finite element analysis model
使用传统非线性有限元软件LS-DYNA对碰撞过程进行仿真分析,将“AUTOMATIC_SINGLE_SURFACE”和“AUTOMATIC_SURFACE_TO_SURFACE”接触算法分别用于复合吸能结构的自接触及复合吸能结构与刚性墙之间的接触。吸能结构固定在冲击小车的前端,含有吸能结构的冲击小车以19.52 m/s的速度行进至撞击固定刚性墙。
4.2 吸能结构碰撞变形沉浸式虚拟仿真
对比本文方法获得的的新型蜂窝吸能结构简化结果模型与有限元分析结果模型,图8(a)和8(b)分别展示了在T=0.007 s时,吸能结构的前端板、后端板及导轨在本文方法的简化前后的应变物理属性网格模型,简化前该网格模型有11 734个节点,简化后的网格模型仅含有1 177个表面节点;图8(c)和8(d)展示了在T=0.035 s时,吸能结构内蜂窝结构部分简化前后的位移物理属性网格模型,简化前该网格模型有60 060个节点,简化后网格模型仅含有5 640个表面节点,对比云图可知简化过程较好地保留了物体表面物理属性。
图8 吸能结构部分结构物理属性网格模型简化Fig.8 Simplification of partial structural grids model of energy-absorbing structures with physical properties
为了进一步减少数据量和加强可视化效果,本文在简化前端板、后端板及导轨部分基础上,剔除不可见的蜂窝结构和隔板部分,将原86 677个节点的有限元网格模型简化至仅含有8 964个表面节点,如图9所示,本方法在大量简化仿真分析模型数据量的情况下,能够保证物理属性变化的一致性,从而能够提高仿真分析结果在虚拟现实引擎中动态可视化的流畅度,快速对比吸能结构可视化结果。
对比分析图9吸能结构碰撞过程中的T=0.007 s,T=0.003 5 s时的吸能结构发生碰撞变形,且应变物理属性云图发生对应变化,可以看到图9(a)和9(b)2个时刻中沉浸式虚拟环境下的几何模型和物理属性云图与有限元数值分析软件环境下的几何模型和应变属性云图基本相同,这说明基于沉浸式虚拟现实技术的吸能结构碰撞变形虚拟仿真获得的结果与有限元分析数值分析结果具有较好的匹配度。另外,如图9(c)所示沉浸式虚拟环境下吸能结构呈现的T=0.003 5 s的位移属性也满足较好的匹配度。进一步实验发现,加速度、速度、不同方向的应变分量、应力分量等物理属性与有限元分析软件后处理模块中的可视化结果都有较好的匹配度。分析结果进一步验证了沉浸式环境下轨道车辆吸能结构碰撞变形的虚拟仿真方法的有效性和可靠性。
图9 带物理属性的吸能结构对比Fig.9 Comparison of energy-absorbing structures with physical properties
5 结论
1)简化处理吸能结构几何网格模型和含有时间步的吸能结构碰撞物理属性模型,提取吸能结构表面节点及其物理属性,大大简化数据量。
2)搭建仿真软件与沉浸式虚拟环境引擎之间的数据接口,实现有限元分析结果在虚拟环境下的可视化。
3)实现沉浸式环境下吸能结构碰撞变形的动态可视化。