潜射导弹出水过程三维动态仿真方法

文档序号:6520396阅读:735来源:国知局
潜射导弹出水过程三维动态仿真方法
【专利摘要】潜射导弹出水过程三维动态仿真方法,涉及一种三维动态仿真方法。该方法是要解决地面模拟仿真试验所需试验设备复杂、试验成本极高、可重复性差的问题。潜射导弹出水过程三维动态仿真方法是基于CPU-GPU异构的多线程开发环境来实现的,所述方法包含以下内容:一、搭建人机交互平台;二、潜基导弹出水过程三维虚拟建模与显示;三、基于粒子系统的潜基导弹出水可视化建模;四、基于着色语言的潜基导弹出筒空泡可视化建模;五、海洋深度标尺动态显示;六、潜基导弹出水过程的多视角交互式三维漫游;七、潜基导弹出水过程的关键参数可视化。本发明具有安全、经济、可控、无破坏性、允许多次重复等优点。可应用于计算机仿真模拟方法【技术领域】。
【专利说明】潜射导弹出水过程三维动态仿真方法
【技术领域】
[0001]本发明涉及一种三维动态仿真方法,属于计算机仿真模拟方法【技术领域】。
【背景技术】
[0002]现代战争越来越重视对敌方的精确打击和对己方的隐身保护。潜射导弹结合了潜艇和导弹二者的特点,具有射程远、威力大、命中精度高、生存能力和突防能力强等优点,不仅使潜艇具备了远程精确打击能力,而且可以起到有效的战略威慑作用以及二次打击能力。
[0003]潜射导弹的研制工作始于20世纪50年代,但因潜射导弹的水下发射技术难度大,目前拥有较成熟的潜射导弹发射技术的国家仅有俄罗斯、美国、法国等少数几个国家。我国从20世纪七十年代中后期开始研制潜射导弹,目前已取得长足的发展。
[0004]导弹垂直发射技术中主要有冷发射技术和热发射技术。由于热发射方式对导弹的性能要求较高,目前大多数导弹水下发射都采用冷发射方式。本文针对采用冷发射方式的潜射导弹设计其出水过程的三维动态仿真方法。
[0005]三维计算机仿真的应用涉及产品展示、机械制造、国防工业、航空航天等各个方面,仿真可视化已经成为科研人员开发仿真系统、开展虚拟仿真实验的重要辅助手段。潜射导弹水下发射要经历水下弹射出筒、水中自由滑行、出水、发动机点火和制导飞行5个阶段,其中水下弹射出筒段、水中自由滑行段和出水段是潜射导弹发射所独有的过程,也是潜射导弹发射成败的关键所在。一般的地面模拟仿真试验所需试验设备复杂,试验成本极高,而且可重复性差。可视化技术把数据转换成图像,将仿真过程真实生动的展示出来,具有安全、经济、可控、无破坏性、允许多次重复等许多优点。通过潜基发射导弹出水三维动态全过程仿真方法可以为地面模拟仿真试验提供参考,帮助分析试验结果,从而缩短试验和研制周期,节省试验和研制经费。

【发明内容】

[0006]本发明的目的是为了解决地面模拟仿真试验所需试验设备复杂、试验成本极高、可重复性差的问题,提供一种潜射导弹出水过程三维动态仿真方法。
[0007]本发明的潜射导弹出水过程三维动态仿真方法,所述方法是基于CPU-GPU异构的多线程开发环境来实现的,其特征在于所述方法包含以下内容:
[0008]一、搭建人机交互平台;
[0009]二、潜基导弹出水过程三维虚拟建模与显示:利用Multigen Creator和3DS MAX建立潜艇、导弹及水面舰艇的三维模型,并建立海洋、天空、岛屿及海底地形的虚拟仿真场

牙、;
[0010]三、基于粒子系统的潜基导弹出水可视化建模:采用粒子系统建模方法,建立船行波、导弹尾焰、弹仓开盖气泡、导弹出筒水汽、导弹出水水汽粒子特效,模拟潜基导弹发射出水过程中的现象;[0011]四、基于着色语言的潜基导弹出筒空泡可视化建模:采用GLSL着色语言编写空泡形状,综合导弹水下出筒阶段的水-气交互及Fluent仿真数据建立潜基导弹出筒空泡可视化模型,模拟导弹出筒空泡变化规律;
[0012]五、海洋深度标尺动态显示:使用投影节点构建海洋深度标尺,建立海洋深度与颜色变化对应的函数,并添加滑动浮标,动态显示潜艇的下潜深度和位置; [0013]六、潜基导弹出水过程的多视角交互式三维漫游:读入不同时刻导弹和潜艇位置、姿态数据[1.V z 0(9!//]1 ,其中,x、y、z表示位置坐标,φ、θ、ψ分别表示滚转、俯仰、偏航三
个姿态角,对场景运动体进行实时驱动,设计使用多视角显示观测潜射过程中潜艇、导弹、海洋的变化情况;
[0014]七、潜基导弹出水过程的关键参数可视化:显示潜基导弹出水过程中的位置、姿态、速度方面的参数信息,并绘制不同时刻潜基导弹出水过程中的位置、姿态、速度的变化曲线。
[0015]本发明包含以下有益效果:
[0016]本发明以潜基导弹出水建模技术、可视化技术、虚拟现实技术和数值模拟技术等为核心,以VC++和OSG三维渲染引擎库为实现工具,完成潜基导弹出水过程的交互式虚拟仿真。可视化技术把数据转换成图像,将仿真过程真实生动的展示出来,具有安全、经济、可控、无破坏性、允许多次重复等许多优点。通过潜基发射导弹出水三维动态全过程仿真方法可以为地面模拟仿真试验提供参考,帮助分析试验结果,大大缩短了试验和研制周期,试验和研制经费减少一半以上。
[0017]本发明的技术特点及效果如下:
[0018]能够完成包括海洋、天空、地形等一系列环境场景三维可视化;
[0019]能够完成导弹、潜艇、水上舰艇的三维可视化;
[0020]能够完成包括船行波、导弹尾焰、出筒、出水等一系列粒子系统三维可视化;
[0021]能够完成潜艇航行、弹道位姿、空泡形状等运动过程的三维可视化;
[0022]能够显示海洋深度标尺,并以浮标的形式动态显示潜艇的下潜深度;
[0023]能够导入导弹数据和空泡数据并进行可视化仿真;
[0024]能够对任务过程中的各种状态数据进行绘制,并能直观的进行曲线显示;
[0025]能够存储及查询各种遥测数据及调整策略的指令信息。
【具体实施方式】
[0026]本发明技术方案不局限于以下所列举【具体实施方式】,还包括各【具体实施方式】间的任意组合。
[0027]【具体实施方式】一:本实施方式的潜射导弹出水过程三维动态仿真方法,所述方法是基于CPU-GPU异构的多线程开发环境来实现的,其特征在于所述方法包含以下内容:
[0028]一、搭建人机交互平台;
[0029]二、潜基导弹出水过程三维虚拟建模与显示:利用Multigen Creator和3DS MAX建立潜艇、导弹及水面舰艇的三维模型,并建立海洋、天空、岛屿及海底地形的虚拟仿真场

;
[0030]三、基于粒子系统的潜基导弹出水可视化建模:釆用粒子系统建模方法,建立船行波、导弹尾焰、弹仓开盖气泡、导弹出筒水汽、导弹出水水汽粒子特效,模拟潜基导弹发射出水过程中的现象;
[0031]四、基于着色语言的潜基导弹出筒空泡可视化建模:采用GLSL着色语言编写空泡形状,综合导弹水下出筒阶段的水-气交互及Fluent仿真数据建立潜基导弹出筒空泡可视化模型,模拟导弹出筒空泡变化规律;
[0032]五、海洋深度标尺动态显示:使用投影节点构建海洋深度标尺,建立海洋深度与颜色变化对应的函数,并添加滑动浮标,动态显示潜艇的下潜深度和位置;
[0033]六、潜基导弹出水过程的多视角交互式三维漫游:读入不同时刻导弹和潜艇位置、
姿态数据卜^^口^^^其中^^^表示位置坐标,φ、θ、ψ分别表示滚转、俯仰、偏航三
个姿态角,对场景运动体进行实时驱动,设计使用多视角显示观测潜射过程中潜艇、导弹、海洋的变化情况;
[0034]七、潜基导弹出水过程的关键参数可视化:显示潜基导弹出水过程中的位置、姿态、速度方面的参数信息,并绘制不同时刻潜基导弹出水过程中的位置、姿态、速度的变化曲线。
[0035]【具体实施方式】二:本实施方式与【具体实施方式】一不同的是步骤一中所述的搭建人机交互平台是在VC++和OSG三维渲染引擎环境下搭建完成的,VC++用于构建系统平台和界面,利用MFC平台的技术特点,采用单文档多视图技术、Fluent UI技术、GDI技术设计人机交互接口界面,OSG三维渲染引擎提供虚拟现实技术用于实现潜基导弹出水过程的三维虚拟仿真。其它与【具体实施方式】一相同。
[0036]【具体实施方式】三:本实施方式与【具体实施方式】一或二不同的是步骤二中所述的三维模型以IVE格式的二进制文件方式存储。其它与【具体实施方式】一或二相同。
[0037]【具体实施方式】四:本 实施方式与【具体实施方式】一至三之一不同的是步骤二中所述的潜基导弹出水过程三维虚拟建模的具体方法如下:根据真实的潜艇、导弹尺寸,利用三维动画渲染制作软件3DS MAX重构出相应的虚拟三维对象实体,运用材质贴图、布尔运算方法进行处理和构型,并以FLT格式文件导出,利用三维虚拟仿真建模软件Multigen Creator对潜艇弹仓舱盖和尾部螺旋桨建立自由度DOF节点,使用OSG访问上述节点并调用,实现螺旋桨旋转和弹仓舱盖开启和关闭功能,绘制潜艇和舰艇模型时,采用多细节层次LOD技术,使用多组由简到繁的绘制方案来实现同一个模型的渲染,并设置由远及近时的LOD切换动作,达到减轻渲染负担和保证渲染质量的多重目的,最后将FLT格式文件转换为IVE格式文件。其它与【具体实施方式】一至三之一相同。
[0038]【具体实施方式】五:本实施方式与【具体实施方式】一至四之一不同的是步骤二中所述的海面场景仿真是基于开源海洋仿真方案osgOcean进行二次开发,可实现的功能有海浪动画、海面倒影、光线的反射与折射、菲涅尔效果、水下光照、水下浮帘粒子、水下扭曲失真等海洋效果;所述的天空场景仿真是利用纹理映射方法,将天空图片映射到天空盒的内侧,并结合光照系统实现场景的天空效果;岛_及海底地形场景仿真是使用Global Mapper下载高程数据DEM,使用Google Earth下载纹理数据,最后采用Multigen Creator对所述数据进行合成处理,实现岛屿及海底地形模型。其它与【具体实施方式】一至四之一相同。
[0039]【具体实施方式】六:本实施方式与【具体实施方式】一至五之一不同的是步骤三中所述的基于粒子系统的潜基导弹出水可视化建模包括如下内容:[0040]基于开尔文波的船行波模型构建船行波粒子系统:船是一个理想的点扰动,产生的尾迹包含两种明显的波形:分歧波和横断波。由于受船身覆水的影响,开尔文波中的横波在实际船行波航迹中体现得并不明显,而扩散波与舰船两侧的V形航迹非常吻合,因此设计从波峰线上向外喷出的粒子,每个粒子在自己的生命周期内按照一定的规律扩散直至消失,只要粒子的生命足够长,就能保持整条航迹的形态。
[0041]导弹尾焰模拟:对于导弹的尾部烟雾,延长粒子的生命周期与发射器发射时间,使尾焰形成很长的路径,调整每秒粒子生成个数,控制烟雾浓密;对于导弹的尾焰,设置粒子在生命周期内的颜色变化范围,实现蓝色尾焰的渐变效果,调整每秒生成粒子个数,控制尾焰浓密,设置粒子生命周期,控制尾焰长短。
[0042]弹仓开盖气泡模拟:弹仓开盖后会有大量气泡涌出,导弹出筒后也会产生大团气团,设置圆环发射器,并缩短发射器发射粒子的时间和粒子的生命周期,添加水阻力效果,控制粒子系统,使之产生一段时间后自动消失,达到一种渐变的效果。
[0043]导弹出水烟雾的粒子效果模拟:设置大半径的圆环发射器,每帧足够多的粒子发射数量,增大发射器发射粒子速度,添加低重力效果,适中的粒子生命周期。
[0044]其它与【具体实施方式】一至五之一相同。
[0045]【具体实施方式】七:本实施方式与【具体实施方式】一至六之一不同的是步骤四中所述的空泡的状态参数可通过流体分析软件Fluent仿真模拟得出,所述参数包括迎水面和背水面的空泡变化速率VpV2,空泡半径R以及空泡半径的变化速率\。其它与【具体实施方式】一至六之一相同。
[0046]【具体实施方式】八:本实施方式与【具体实施方式】一至七之一不同的是步骤四中所述的空泡的具体绘制方法为:首先建立椭圆体作为基体,通过顶点索引,判断迎水面和背水面的坐标,利用顶点着色器控制顶点Z坐标随空泡变化速率而变化;为了保证迎水面和背水面之间过渡的圆滑型,还需要添加曲面拟合函数;空泡半径R的变化是通过顶点坐标X、Y与空泡半径变化速率 ' 建立函数关系,其中R2=X2+Y2,且R与I呈正比例关系;空泡采用Alpha通道透明处理,片元着色器控制空泡的颜色和透明度。其它与【具体实施方式】一至七之一相同。
[0047]【具体实施方式】九:本实施方式与【具体实施方式】一至八之一不同的是步骤六中所述的多视角显示包括四个视点,即水下视点、水面视点、局部视点和全局视点,通过对相机节点的矩阵变化实现视点的变换,视点变换矩阵负责将世界坐标系下的物体变换到相机坐标系中,变换公式为:
[0048]Vvcs=Vwcs.Mview
[0049]其中,V_为相机坐标系,V_为世界坐标系,Mview为视点变换矩阵。其它与【具体实施方式】一至八之一相同。
[0050]【具体实施方式】十:本实施方式与【具体实施方式】一至九之一不同的是步骤五中所述的差值函数为255:30=1: a,
[0051]其中,差值函数是对颜色区间进行差值,即对两个颜色区间255等分,标尺刻度30等分,a为潜艇的深度,i为颜色区间所在的位置。其它与【具体实施方式】一至九之一相同。
[0052]【具体实施方式】十一:本实施方式与【具体实施方式】一至十之一不同的是步骤七中所述的驱动动态仿真的方法如下:在VC++工作线程里的帧循环中实现对运动体的位置和姿态数据进行动态更新,基于这些数据通过OSG线程来对场景运动体进行实时驱动,在每一帧的渲染过程中,将更新运动体x,y,z,α, β, Θ值,利用这些值设置实体的位姿,并绘制新位置处的视景环境,以此来实现视景的相对运动。其它与【具体实施方式】一至十之一相同。
[0053] 【具体实施方式】十二:本实施方式与【具体实施方式】一至十一之一不同的是所述的基于CPU-GPU异构的多线程开发方法如下:基于面向对象的跨平台线程库OpenThreads进行多线程开发,并结合设备端的纹理存储器实现着色语言的编写,包含对顶点着色器和片元着色器的编写。在渲染过程中采用了多相机的线程模型,为每个图形设备GraphicsContext以及每个相机创建线程。这种模式将场景的更新、裁剪、和绘制工作分离开来,在前一帧的绘制线程结束前,进行下一帧的更新工作,如果系统拥有足够性能的CPU和GPU,那么将最大限度的发挥多任务、多图形设备、多CPU系统的场景渲染能力。其它与【具体实施方式】一至i 之一相同。
[0054]本发明可以完成海洋、天空、地形等一系列环境场景三维可视化;能够完成导弹、潜艇、舰艇的三维可视化;能够完成包括船行波、导弹尾焰、出筒、出水等一系列粒子系统三维可视化;能够完成潜艇航行、弹道位姿、空泡形状等运动过程的三维可视化;能够显示海洋深度标尺,并以浮标的形式动态显示潜艇的下潜深度;能够导入导弹数据和空泡数据并进行可视化仿真;能够对任务过程中的各种状态数据进行绘制,并能直观的进行曲线显示;能够存储及查询各种遥测数据及调整策略的指令信息。本发明方法能实现的功能如图1所示。
【权利要求】
1.潜射导弹出水过程三维动态仿真方法,所述方法是基于CPU-GPU异构的多线程开发环境来实现的,其特征在于所述方法包含以下内容:一、搭建人机交互平台;二、潜基导弹出水过程三维虚拟建模与显示:利用MultigenCreator和3DS MAX建立潜艇、导弹及水面舰艇的三维模型,并建立海洋、天空、岛屿及海底地形的虚拟仿真场景;三、基于粒子系统的潜基导弹出水可视化建模:采用粒子系统建模方法,建立船行波、导弹尾焰、弹仓开盖气泡、导弹出筒水汽、导弹出水水汽粒子特效,模拟潜基导弹发射出水过程中的现象;四、基于着色语言的潜基导弹出筒空泡可视化建模:采用GLSL着色语言编写空泡形状,综合导弹水下出筒阶段的水-气交互及Fluent仿真数据建立潜基导弹出筒空泡可视化模型,模拟导弹出筒空泡变化规律;五、海洋深度标尺动态显示:使用投影节点构建海洋深度标尺,建立海洋深度与颜色变化对应的函数,并添加滑动浮标,动态显示潜艇的下潜深度和位置;六、潜基导弹出水过程的多视角交互式三维漫游:读入不同时刻导弹和潜艇位置、姿态y ? φ Θ y/\ ,其中,x、y、z表示位置坐标,φ、θ、ψ分别表示滚转、俯仰、偏航三个姿态角,对场景运动 体进行实时驱动,设计使用多视角显示观测潜射过程中潜艇、导弹、海洋的变化情况;七、潜基导弹出水过程的关键参数可视化:显示潜基导弹出水过程中的位置、姿态、速度方面的参数信息,并绘制不同时刻潜基导弹出水过程中的位置、姿态、速度的变化曲线。
2.根据权利要求1中所述的潜射导弹出水过程三维动态仿真方法,其特征在于步骤一中所述的搭建人机交互平台是在VC++和OSG三维渲染引擎环境下搭建完成的,VC++用于构建系统平台和界面,OSG三维渲染引擎提供虚拟现实技术用于实现潜基导弹出水过程的三维虚拟仿真。
3.根据权利要求2中所述的潜射导弹出水过程三维动态仿真方法,其特征在于步骤二中所述的三维模型以IVE格式的二进制文件方式存储。
4.根据权利要求3中所述的潜射导弹出水过程三维动态仿真方法,其特征在于步骤二中所述的潜基导弹出水过程三维虚拟建模的具体方法如下:根据真实的潜艇、导弹尺寸,利用三维动画渲染制作软件3DS MAX重构出相应的虚拟三维对象实体,运用材质贴图、布尔运算方法进行处理和构型,并以FLT格式文件导出,利用三维虚拟仿真建模软件MultigenCreator对潜艇弹仓舱盖和尾部螺旋桨建立自由度DOF节点,使用OSG访问上述节点并调用,实现螺旋桨旋转和弹仓舱盖开启和关闭功能,绘制潜艇和舰艇模型时,采用多细节层次LOD技术,使用多组由简到繁的绘制方案来实现同一个模型的渲染,并设置由远及近时的LOD切换动作,最后将FLT格式文件转换为IVE格式文件。
5.根据权利要求4中所述的潜射导弹出水过程三维动态仿真方法,其特征在于步骤二中所述的海面场景仿真是基于开源海洋仿真方案osgOcean进行二次开发,可实现的功能有海浪动画、海面倒影、光线的反射与折射、菲涅尔效果、水下光照、水下浮帘粒子、水下扭曲失真等海洋效果;所述的天空场景仿真是利用纹理映射方法,将天空图片映射到天空盒的内侧,并结合光照系统实现场景的天空效果;岛屿及海底地形场景仿真是使用GlobalMapper下载高程数据DEM,使用Google Earth下载纹理数据,最后采用Multigen Creator对所述数据进行合成处理,实现岛屿及海底地形模型。
6.根据权利要求5中所述的潜射导弹出水过程三维动态仿真方法,其特征在于步骤四中所述的空泡的状态参数可通过流体分析软件Fluent仿真模拟得出,所述参数包括迎水面和背水面的空泡变化速率%、V2,空泡半径R以及空泡半径的变化速率V-
7.根据权利要求6中所述的潜射导弹出水过程三维动态仿真方法,其特征在于步骤四中所述的空泡的具体绘制方法为:首先建立椭圆体作为基体,通过顶点索引,判断迎水面和背水面的坐标,利用顶点着色器控制顶点Z坐标随空泡变化速率而变化;为了保证迎水面和背水面之间过渡的圆滑型,还需要添加曲面拟合函数;空泡半径R的变化是通过顶点坐标X、Y与空泡半径变化速率\建立函数关系,其中R2=X2+Y2,且R与I呈正比例关系;空泡采用Alpha通道透明处理,片元着色器控制空泡的颜色和透明度。
8.根据权利要求7中所述的潜射导弹出水过程三维动态仿真方法,其特征在于步骤六中所述的多视角显示包括四个视点,即水下视点、水面视点、局部视点和全局视点,通过对相机节点的矩阵变化实现视点的变换,视点变换矩阵用于将世界坐标系下的物体变换到相机坐标系中,变换公式为:其中,Vvc;s为相机坐标系,Vwcs为世界坐标系,Mview为视点变换矩阵。
9.根据权利要求8中所述的潜射导弹出水过程三维动态仿真方法,其特征在于步骤五中所述的函数为255:30=1: a,其中,差值函数是对颜色区间进行差值,即对两个颜色区间255等分,标尺刻度30等分,a为潜艇的深度,i为颜色区间所在的位置。
10.根据权利要求9中所·述的潜射导弹出水过程三维动态仿真方法,其特征在于步骤八中所述的驱动动态仿真的方法如下:在VC++工作线程里的帧循环中实现对运动体的位置和姿态数据进行动态更新,基于这些数据通过OSG线程来对场景运动体进行实时驱动,在每一帧的渲染过程中,将更新运动体x,y,z,φ, Θ, ¥值,利用这些值设置实体的位姿,并绘制新位置处的视景环境,以此来实现视景的相对运动。
【文档编号】G06F17/50GK103577656SQ201310601464
【公开日】2014年2月12日 申请日期:2013年11月25日 优先权日:2013年11月25日
【发明者】马超, 魏海鹏, 黄海龙, 刘昊, 魏承, 赵阳 申请人:哈尔滨工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1