引言
正确模拟激光传输过程,实现激光脉冲空间传输的可视化仿真,对激光研究和应用具有重要意义。特别是在惯性约束核聚变(ICF, Inertial Confinement Fusion)、激光武器研制等高能激光应用场合,如果直接进行实物试验,风险大、成本高。相反,若能建立激光装置的虚拟样机模型,在虚拟样机上对激光传输过程进行模拟仿真,不仅可以减少试验风险、节约成本、缩短研制周期,而日可以检验装置的合理性、提高实验可信度等。
目前国际上ICF研究装置较多,其中以美国国家点火装置(National Ignition Facility, NIF)规模最大·为了提高NIF运行的可靠性和及时得到NIF运行后的分析结果,美国劳伦斯利弗莫尔国家实验室(Lawrence Livermore National Laboratory, LLNL)开发了一个激光性能运行模型(LPOM)系统来运行NIF的首四路激光。LPOM可提供NIF的实时预测、确定NIF所有激光发射的系统参数设置如初始化功率等功能,已成为NIF首四路激光模块调试的关键工具。我国的ICF研究正逐步展开,但尚未建立相应的装置运行模拟仿真系统。中国工程物理研究院开发的综合光传输模拟计算软件SG99,能够对固体激光装置脉冲传输、放人、频率转换等主要物理过程进行模拟计算,担是不具备激光脉冲可视化和模拟仿真功能。木文采用虚拟样机技术,基于ICF装置的虚拟样机模型,建立一个激光传输过程模拟仿真系统,为激光装置的运行提供模拟仿真平台。
1 模拟仿真系统的开发需求
在实际试验中,由于激光发射频率大、传输速度太快,因此无法对单个激光粒子或者激光脉冲直接进行研究,往往需要借助于其它辅助设备,同时,由于光学元器件的数量庞大,在实际试验中不好刘其进行管理。为此,本系统建立了激光传输装置的虚拟样机模型,在此基础上实现激光传输过程模拟仿真系统。该仿真系统是以ICF装置为对象,以激光传输过程的可视化、光学元器件的动态管理和激光发射系统的虚拟训练为目的的,能够可视化模拟激光传输过程,在激光传输过程中动态管理光学元器件,并能用作虚拟训练的模拟仿真系统。
虚拟样机技术是一种崭新的产品开发方法,它是基于先进的建模技术、多领域仿真技术、信息管理技术、交互式用户界面技术和虚拟现实技术的综合应用技术。虚拟样机技术可以应用于产品的全生命周期,己成为检验产品设计的合理性、优化品设计、缩短产品研制周期、保证产品质量等的重要技术手段。通过建立激光装置虚拟样机模型,在仿真系统上实现激光传输过程"慢"处理,即通过改变激光脉冲频率和传输速度等,使试验人员能够在仿真系统上,对激光脉冲甚至单个激光粒子运动轨迹进行跟踪研究等。通过模拟,使操作人员对试验过程中光学儿件的安全状态有一个全面的把握,并检验装置的合理性等。通过后台计算软件的处理,立即获得一个全面的分析结果,对后续试验提供指导。因此仿真系统应该具备下列功能:
1)三维显示功能。提供三维可视化展现激光传输在原型装置中的运动全过程,并提供运动跟踪、视点切换等功能,用户可以方便的观察仿真的运行;
2)人机交互功能。提供对仿真运行、场景驱动、仿真控制等底层接口,使用户能够实时控制仿真的进行:
3)信息处理功能。提供仿真信息的查询和显示,实现仿真信息的输入输出管理等功能;
4)仪器监控功能。提供对激光传输过程中光路关键光学安全工作状态监控功能,当仪器处于危险状态时,能够提示用户甚至自动暂停仿真直到用户做出响应;
5)数据管理功能。提供对仿真信息、模型库、输入输出信息等进行动态管理和维护的功能,为仿真系统的运行提供后台支持。
2仿真系统总体结构
本系统主要由建模模块、场景驱动模块、仪器监控模块、信息处理模块、数据库管理模块和三维显示模块组成,仿真系统结构如图1所示。
(图片) 2.1建模模块
建模模块分为物理几何模型和数学模型的建模。在本系统中,激光传输特性的建模属于数学模型的建模,激光可视化建模与光路建模综合了几何建模和数学建模技术,空间环境建模则是物理几何模型的建模。物理几何模型的建造主要借助于商业CAD软件:在Pro/E中建立精确的实体模型,然后保存为VRML格式的文件,再使用3DExplorer把VRML格式的模型文件转换为3DS格式,最后在Multigen Creator中转换为Vega支持的OpenFlight格式的模型文件。多次模型转换过程中所发生的模型失真现象在Multigen Creator中修正。
2.2场景驱动模块
场景驱动模块是木仿真系统的核心模块之一,是仿真的支撑平台。场景驱动模块包括场景的交互操作驱动、激光的运动、粒子系统的更新、场景观察者的观察视点切换、仿真环境设置、观察方式切换、场景特效、背景声音引擎等。
1)场景交互操作。提供人机交互功能,修改仿真步长,在仿真时能够对场景里的元器件进行实时操作,如添加、删除、保存光学元器件,调整元器件姿态等;
2)激光运动。激光光束由粒子系统来模拟,激光的运动在仿真时钟的控制下,由后台数据库驱动,在仿真过程中,激光不断触发各个光学元器件,得到外部形态、能量的变化,在仿真场景中通过颜色和形状的变化体现出来;
3)视点切换。通过改变观察者的视点位置在仿真过程中得到最佳的观察角度与观察效果;
4)观察方式切换。系统提供了视点静止、视点跟随、固定视点等几种切换方式;
5)仿真环境设置。初始化仿真场景,根据使用者的习惯修改仿真环境。
6)场景特效。主要指激光轨迹特效、仪器失控特效和激光击中目标物时的特效等;
7)背景声音。主要是为了更好的模拟仿真环境,增强人的临场感,给人一种真实的感觉。
2.3仪器监控模块
本模块主要在仿真过程中,对装置中的光学仪器进行仁作状态进行监控。在本系统中,光学仪器总共有四种工作状态,分别为安全工作状态、临界工作状态、危险状态和未知状态。为方便监控,这四种工作状态分别标示为绿色、黄色、红色和紫色。具体工作状态由相关判断标准决定。在仿真过程中,当激光脉冲经过某一光学仪器时,由碰撞检测程序判断二者是否发生碰撞,若碰撞,则触发监控程序阎。监控程序再调用在后台同步运行的激光传输模拟计算软件的计算结果,分析判断当前光学仪器所处工作状态,标示为相应的颜色,同时输出相关信息。
2.4信息处理模块
信息处理模块包括信息输出和信息查询两部分,其中信息输出主要是将仿真时光学元件工作状态、关键仪器的能量、光强分布等信息以文字或图片的形式输出。查询部分则可以实时对关键光学仪器仿真信息进行查询,如当前光通量、最大通量曲线等。仿真信息的输出和查询,都是通过调用后台数据库、光计算软件SG99和Matlab来完成。其中SG99模拟计算激光脉冲传输相关物理特性和光学仪器的光通量等,然后将相关计算数据传递绘图程序,绘图程序调用Matlab绘制关键仪器的最大光通量曲线图等,再在仿真软件界面图形信息输出区显示出来。
3模拟仿真系统构建的关键技术
本系统主要功能是模拟激光传输过程、监控在传输过程中的光学元器件的状态,在仿真系统的构建过程中要使用到一系列的诸如光路交互设计、激光等效处理、传输过程可视化等关键技术。
3.1激光光路交互设计
在仿真过程中,为了得到实时处理效果,需要实时获取激光当前状态,激光光束经过光学元器件时的能量变化和形态变化,激光光束对光学元器件造成的损伤,以及在实时改变光学元器件的姿态、数量、放置位置时对激光传输的结果造成的影响等。
本系统建立了如下一套数据结构,用于对仿真模型进行动态添加、删除、保存和姿态调整等交互操作:
(图片) 数据结构ODBC数据库相关联。输入功能土要是光学元器件的动态读取、姿态参数、形态参数等属性数据的设置。输出功能主要是输出图形、仿真数据等信息,这通过仿真引擎调用后台数据库和计算软件SG99以及Matlab共同来完成。
3.2激光的等效处理技术
在实际的激光传输过程中,通常是无法用肉眼对其进行跟踪观测的,只能借助于仪器来观测。为了在仿真场景中能够再现激光的传输轨迹、物理特性等,在本系统中使用了如下一些技术对激光进行等效处理。
3.2.1激光形态的等效处理技术
在本系统中,激光形态的可视化是一个很重要的方面。激光形态的可视化主要是指如何在仿真场景中使用几何模型来模拟激光的轨迹以及运动规律。
激光光束的空间传输过程可以视为一个离散驱动事件,激光粒子可看作是一个个流动实体,而光学仪器则相当于固定实体,故激光光束可看作是这些实体按照一定规律运动的实体流。因此激光传输过程的可视化仿真可视为面向过程的离散事件仿真,即实体流仿真。在本系统中,采用粒子系统来模拟激光及其空问传输过程。粒子系统主要用来模拟一些不规则模糊物体,充分体现了模糊物体的动态性和随机性,能很好地模拟动态的三维复杂景物。粒子系统的基本组成是粒子,粒子是具有一定生命周期的对象,作为独立的实体存在粒了通常具有形状、大小、颜色、透明度、空间位置、运动方向、运动速度、加速度、衰减率等属性。此外还可以赋予其材质、质量、风力影响系数、重力影响系数等特性。通过控制粒子的相关属性,如发射频率、形状、运动速度、运动方向等,就可以准确的模拟激光光束及其传输过程。
考虑到激光传输的本身特点和可视化仿真的实时性要求,本文建立了一个自定义粒子系统。粒子所具有的基木属性数据结构如下:(图片) 其中Vector3Df三维空间向量,属性包括x,y,z。图2表示的是本系统中用来设置粒子属性的功能面板。(图片) 这里采用了两种方法来创建粒子:第一种是使用建模软件创建实体模型,第二种是利用三维图形库OpenGL来绘制粒子。
使用OpenGL绘制粒了时,有两种方法:一是绘制实休模型,二是利用带纹理的二维三角面片模型。在模拟高频脉冲激光脉冲时,需要使用大量的粒子,如果使用实体模型模拟激光脉冲,这些粒子的生成和渲染将严重耗费硬件资源,将难以满足仿真的实时性要求。在使用三角面片方法时,会导致粒子模型失真现象的发生。即随着观察者视点的移动,当视点处于面片侧面等位置时,导致粒子看上去全是薄片。因此需要实时对粒子进行旋转,使其法向始终与视点平行。可通过以下方式解决:假设在OpenGL坐标系中当前视点与粒子的位置关系如图3所示,仿真时,需要对粒子先绕Y轴旋转RotY度,再绕X轴旋转RotX度,使得粒子始终正对着观察者。假设当前观察者视点位置为ViewPos,粒子的位置为PartPos,视线方向矢量为ViewDirect。获取到观察者的具体空间方位,则
(图片) (图片) 3.2.2激光能量变化的等效处理
在处理激光的能量信息时,可以将激光做序列脉冲模型和薄片增益损耗模型两种模型处理,本系统使用序列脉冲模型来处理激光脉冲的能量变化。在序列脉冲模型中,将激光脉冲看成是由许多子脉冲组成。输出激光脉冲的第k程子脉冲的能量密度为Jk,第k程的能量增益为Gk第k+1程的能量密度为:(图片) 在本系统中,激光能量的变化主要通过改变激光颜色和亮度来间接体现。根据公式((1)和(z>计算得到激光在通过第k+l程能量放大介质后的能量增益,然后根据己经设置好的比例关系,将能量增益转换为对应的粒子颜色的RGB值的增益和透明度alpha值的增益。
3.2.3激光传物速度的等效处理
在实际传输过程中,由于激光传输速度太快,在通常情况下是无法对其运动轨迹进行跟踪的。为了在仿真场景中可视化激光的传输过程,就只能对其限速后再进行研究。本系统中采用基于数据库的驱动方式来驱动粒子系统模拟激光传输过程。该方法主要是通过数据库管理程序,对后台光传输模拟计算软件计算所得数据进行实时读写,通过实时获取激光在传输过程中的各点位置信息,再将其传递给粒子系统,驱动其不断前进,使其运动轨迹与实际光路吻合实际实现过程如下:后台光模拟计算软件与木系统同步运行,通过Matlab对光学元器件和粒子系统的位置信息进行处理,在仿真时钟的控制下提取位置、姿态等数据信息,再以数据库作为中介,将数值赋予粒子系统,从而驱动粒子系统运行。
3.2.4橄光光学特性的等效处理
为了在仿真场景中真实的再现激光的传输过程,在激光经过平面镜、透镜时需要真实体现这些元器件的光学特性。因为本系统中是使用粒子系统来模拟激光光束的,相应的,激光的汇聚、发散特性也通过粒子的缩放来等效表示。本系统中不考虑激光的散射、衍射等特性,只关注其反射、汇聚和发散特性。需要特别注意的是激光经过透镜时所表现出的光学特性,经过平面镜时只需根据光学原理作相应的反射处理即可。
在本系统中使用同一个仿真时钟来控制整个仿真的运行。在仿真运行中,当粒子发射出来后即开始连续不断地以仿真时钟的频率来发出指令,询问此时粒子系统所处的位置。当此时粒子系统处于汇聚区或发散区时,根据每个粒子所处的具体位置,赋子每个粒子不同的属性参数,然后调用相应的处理函数,来处理粒子的缩放。
4系统的初步实现
本仿真系统己经在普通PC上初步开发完成。以Visual C++ 6.0为开发平台,以Vega作为仿真引擎,借鉴游戏引擎实现了场景驱动;以ProIB建立原始模型,通过转换在Multigen Creator中进行优化处理,实现了激光传输原型装置的建模;以光模拟传输软件同步运行计算.以Matlab实现仿真数据的后处理,以ADO数据库实现数据的存取,实现基于物理规律的模拟仿真:以OpenGL创建儿何模型和Creator创建实体模型,建立了粒子系统来进行管理,实现激光光束传输的可视化建模和三维仿真。整个系统的完成实现了Vega.MFC, Matlab和ODBC数据库的混合编程。该仿真系统的仿真流程大致为,首先对激光类型、频率、速度参数等进行初始化,再选择需要的观察方式和观察视点,设置仿真步长等,然后开始仿真。在仿真过程中可以根据需要实时查询相关元器件的状态,或者实时调整相关元器件的属性等。仿真系统运行界面一个截图如图4所示。(图片)
图4 仿真软件运行界面 5结论
本文以激光传输装置模拟运行系统的设计和开发为对象,采用虚拟样机技术,建立了激光传输过程的可视化模拟仿真系统,为激光传输装置的运行提供了一个仿真模拟和虚拟训练的样机平台。该仿真系统将为激光传输研究和应用提供新的手段,有效支持同类激光装置的设计、运行、优化和试验。进一步的工作包括装置的稳定性对光传输精度等的仿真研究。
7/30/2009
|