APP下载

AP1000核电站虚拟现实技术模型简化①

2018-07-11

中国核电 2018年2期
关键词:面片核电站顶点

(山东核电有限公司,山东 烟台 264000)

虚拟现实技术(Virtual Reality,VR)是近年来兴起的以计算机技术为核心的研究热点之一[1],包括计算机图形学、计算机仿真技术、人机接口技术、传感器技术和高度并行的实时计算机技术,VR技术在多维信息空间上创建一个虚拟信息环境,能使用户具有身临其境的沉浸感,具有与环境完善的交互能力。目前VR技术已在军事、医学、设计、娱乐等众多领域得到了广泛应用,并成为最热点的研究方向之一。

目前,核电站由于其生产对象和生产手段的特殊性,其安全运行要求核电站工作人员必须熟悉电站各设备布置,熟练掌握电站运行原理,维修人员具备拆解、维修、回装设备的能力,但目前大量核电设备结构复杂、安装位置不易操作、部分区域由于高温、高压、高放射性等原因导致电站工作人员无法直接观察和操作设备,特别是以AP1000为代表的第三代先进核电技术,与传统的二代及二代加核电相比,其设计、系统和设备都有较大改动,更需要从业人员快速掌握AP1000三代核电技术。当前只能通过书籍、技术规范书、运维手册、设备图纸、拆解模拟体、现场操作实体设备等途径学习了解设备的知识,但是这种学习途径,不仅不够直观,且受制于厂房区域控制授权管理、设备资料提交进度、设备交付安装进度等制约,因此无法全面的保证电站工作人员及时掌握岗位所需的技术和知识。因而虚拟现实技术对于具有放射性环境核电站,尤其是新型的第三代AP1000核电站更具有应用价值。

当前,虚拟现实技术在核电站的应用,国内外已进行了一些研究,如O. Fridtjov 研究了虚拟现实在核电站事故管理中的应用[2];欧洲核能机构(ENEA)启动了退役中的虚拟现实工程,比利时开发了工作前培训三维可视化系统;日本开发了核电站检修期间辐射剂量的计算机虚拟仿真系统[3];美国西屋公司开发了辐射场三维空间分布可视化软件,主要用于形象的显示辐射源和屏蔽体结构变化时空间辐射剂量分布的变化[4];刘鹏飞研究了虚拟现实技术在核电站仿真中的应用[5]。此外,国内核电站也进行了对应的研究,中广核工程公司设计院已正式成立“虚拟现实工程应用实验室”,正式将虚拟现实技术引入设计过程,将以“华龙一号”项目建设为契机,在辅助建筑设计、客户体验、核电智能电站三个方面开展虚拟现实技术应用尝试[6],海阳核电站也开发了AP000电站地理漫游系统。但当前核电站虚拟现实技术的应用受制于海量几何模型数据,仅能简单绘制地理漫游和展示,无法全面模拟工艺、设备运行状态,实时逼真的展示电站全貌,使用户难以获得沉浸感,因而如何有效的简化模型数据使模型实时显示就成为核电站虚拟现实技术应用的关键之一。

考虑同一模型由于视点远近对于模型精度要求不同,本文基于QEM简化算法建立不同精度的层次AP1000设备模型,并在场景的实时动态显示中,利用连续细节层次现实技术,对于近距离观察时,采用精细的模型进行绘制;反之,远距离观察时,则选择粗糙的模型进行表示,提高显示效率与实时性,最后对AP1000设备模型进行了简化效果验证。

1 AP1000设备虚拟现实模型建立和显示

1.1 STL三角网格文件

MicroStation、CAD、Pro/E等三维软件系统建立的模型虽然能精确的表示模型的几何信息,但包含模型信息过多导致数据量巨大,无法实现模型快速导入导出,不能满足虚拟现实技术的实时性与真实感要求,因此目前虚拟现实技术一般采用网格格式表示。而在网格面片格式如SLP格式、STL格式、WRL格式、PLY格式等文件中,STL三角网格文件格式,是利用三角面片拟合表示模型外形结构[7],具有数据结构简单,数据较少,容易读取,可以直接导入到虚拟环境中,便于模型的显示与快速渲染操作等优点,而且作为一种中性格式,常用的三维CAD系统造型软件如MicroStation、CAD、Pro/E等都能直接输出这种格式模型,因而现在已经成为三维制图系统与快速成型系统进行数据传递的较为普遍的文件格式与事实上的接口标准。

图1分别展示了模型几种格式的显示效果,图1(a)为MicroStation建立的AP1000堆内构件RVI 半环板模型,图1(b) MicroStation模型转化后的STL网格填充效果图,通过对比不难发现STL模型保持了原始模型的几何外形。

STL三角网格文件中,模型几何位置信息都由离散的三角面片的集合记录。每一个三角面片都是由组成三角形的3个顶点的坐标和1个法向量来描述的。STL文件有两种表示类型,一类是文本文件(ASCII),另一类则是二进制文件(Binary),STL文件的两种格式各有优缺点,二进制格式的文件占用的存储空间较小,一般为同文件ASCII格式的20%[8],能够节省存储空间,但是ASCII格式的文件能用记事本打开,易于直观识别,本文采用ASCII格式。

图1 模型不同格式表示效果Fig.1 Display of different model type

1.2 STL三角网格文件

读取STL文件时,只需要按行读入每个三角面片单位法矢与定点的坐标数据即可。当STL文件读入之后,借助于OpenGL来进行STL三角网格的绘制和显示,在OpenGL函数库中,直接提供了渲染与绘制三角面片的函数glBegin(GL_TRIANGLES),能够方便快捷的实现STL网格文件的绘制与显示。读取与显示STL网格文件的流程图如图2所示。

图2 读取与显示STL网格文件流程图Fig.2 Flow chart for reading and displaying STL mesh

2 AP1000设备虚拟现实模型数据简化

本文建立不同细节层次简化模型采用通用的基于“二次误差度量” (Quadric Error Metrics,简称QEM)的简化算法,其中基于QEM的简化算法以边折叠为基础,引入了点到三角网格平面距离的平方作为误差度量[9],同时本文利用双向链表记录了简化序列,可以实时获得相应连续细节层次的模型。

2.1 边折叠简化算法原理

边折叠简化基本思想是:首先选取一组误差准则,选取出一条边上的两个顶点,然后根据相应准则把此边上两点合并为一个点,即边转化为一点,然后更新三角面片顶点与法向量信息。

图3 边折叠算法原理图Fig.3 Schematic of edge folding algorithm

如图3所示,假定{g,h}两顶点所确定的边作为折叠边,{h}为折叠后保留点,即边{g,h} 折叠为点{h}[10]。

2.2 基于QEM的简化算法原理

2.2.1二次误差矩阵Q计算

基于QEM简化算法的边折叠简化,模型的每一个顶点都被给予一个误差值,鉴于模型中各个顶点又为一组三角面片的交点,故考虑顶点时应关联顶点相邻的三角面片,为了计算误差值,假定三角面片所在平面的方程为:

ax+by+cz+d=0

(1)

根据平面方程定义可知向量(a,b,c)为平面ax+by+cz+d=0的法向量,STL网格模型中三角面片法向量为单位法矢,故a2+b2+c2=1,由此可计算平面外一顶点v(x,y,z,1)T与ax+by+cz+d=0平面距离平方:

D(v)=|ax+by+cz+d|2

(2)

现将平面方程各项系数假定成为一个一维矩阵p=[a,b,c,d]T,则平面外一顶点与平面距离的平方D(v),则可以表示成为:

D(v)=|ax+by+cz+d|2=(pTv)2
=(vTp)(pTv)=vT(ppT)v

(3)

对于公式(3)中的(ppT)一项,为简化表示,可以设定为Kp,则公式(3)可以简单的表示为:

D(v)=vTKpv

(4)

公式(4)中Kp定义为平面ax+by+cz+d=0的二次矩阵,由矩阵定义可以计算出Kp的表达式为:

(5)

依此方法可以求得模型中顶点v距离其所有相邻平面的平方和,首先假设顶点v相邻平面集合为:

TriPlane(v)=(TriPlane1,TriPlane2,……TriPlanen)

(6)

根据Kp定义可知,模型中顶点v到所有邻近平面距离之平方和为KTriPlane1+KTriPlane2+……KTriPlanein,为简便表示可以令:

(7)

根据二次误差定义可以求得出v(x,y,z,1)T点的二次误差值:

(8)

(9)

由Kp定义可以得出二次误差矩阵Q所表示的意义,即与点v(x,y,z,1)T邻近所有三角面片二次误差矩阵之和。

2.2.2折叠顶点计算选取

由二次误差定义假设网格模型一顶点对为v1与v2由公式(9)可以分别计算出其二次误差矩阵Q1与Q2,则将顶点v1与v2折叠的二次误差矩阵可以认为二者之和:

Q=Q1+Q2

(10)

计算网格模型中所有相邻两顶点的二次误差值,从中选取二次误差值最小的顶点对进行边折叠简化,设折叠后的顶点为v(x,y,z,1)T,由公式(8)与公式(9)可知折叠操作后,得到点v(x,y,z,1)T的二次误差为:

Δ(v)=vTQv=vT(Q1+Q2)v

(11)

理论上折叠后选取的顶点v(x,y,z,1)T应当使得二次误差值Δ(v)最小,即求取Δ(v)=vTQv的最小值。

(12)

然而考虑到算法的复杂程度及误差影响大小,本文选取折叠顶点对v1于v2的几何中点v=(v1+v2)/2作为二次误差代价最小的极值点作为折叠后顶点,即边{v1,v2}折叠为点{(v1+v2)/2}。

2.3 连续细节层次技术实现

三角网格模型的细节层次(Level of Detail)表示是由原始网格模型与其不同精度层次简化模型组成[11]。细节层次通常对一个原始的网格模型建立不同精度的层次模型,在不影响视觉的前提下,根据视点的远近有条件的选取不用层次的模型,即当模型据视点较近时,选择精细的模型绘制,以便于观察模型的细节;当模型距离视点较远时,模型细节部分观测到的概率较小且占据屏幕区域减少,故选择较粗糙的模型来绘制在相应环境中选取特定精度的层次模型,不同细节层次模型如图4所示。从而,在AP1000电站虚拟现实实时场景显示时,通过减少过多的细节绘制,既能缩短计算时间又不会减低场景的逼真程度,从而提高显示效率[12]。

图4 轴承不同层次细节模型Fig.4 Different levels of detail for bearing model

3 AP1000虚拟现实技术模型简化效果验证

本文利用MicroStation建立了设备模型,建立的模型为AP1000堆内构件RVI堆芯围筒,包含:堆芯底板、4组C板组件、4组W版组件、4个下部半环板垂直支撑、20个中部半环板垂直支撑、4个上部半环板垂直支撑、半环板、顶板、4个上部C板组件、4个上部W板组件、4个镶嵌块等部件。原始模型如图5所示,其对应的STL网格填充图如图6(a)所示,STL网格图如图6(b)所示。

图5 RVI堆芯围筒原始模型Fig.5 Original model of RVI Shroud

3.1 AP1000虚拟现实技术模型简化系统开发环境及主要功能

本文软件系统开发环境如表1所示:

表1 系统开发环境

3.2 采用基于QEM算法简化建立不同细节层次AP1000设备模型显示效果分析

对于图6RVI原始模型采用QEM算法简化后,不同精度的模型如图7所示。

图6 RVI 堆芯围筒STL模型Fig.6 STL model for RVI Shroud

本文系统主要实现的功能有:

1)STL网格模型读取与绘制;

2)三角面片数统计;

3)网格数据及模型更新;

4)模型QEM简化算法实现;

5)模型旋转与远近大小的改变;

6)模型连续细节层次显示的建立

通过对比图6与图7简化前后模型网格拓扑结构可以发现,当采用基于QEM算法简化模型到14977个面片即简化率为74.03%时,模型大部分细节能得以保留,继续简化到3446面片时即简化率为94.02%时,模型基本细节可以保留,简化率见表2。

图7 RVI堆芯围筒STL简化模型Fig.7 Simplification of STL model for RVI shroud

RVI简化前STL模型面片数57 672RVI简化后STL模型面片数3 446简化率94.02%

图8展示了利用简化后建立的模型连续细节层次效果,结果显示细节层次表示视觉效果较好,没有视觉上大的跳跃感。

图8 简化后建立的连续层次模型显示效果Fig.8 Continuous level of detail for simplification models

4 结语

本文通过利用基于QEM简化算法建立了不同精度的AP1000核电站设备层次模型,分析且验证了基于QEM简化算法的简化效果,与此同时利用双向链表记录了简化的顺序,实现了边折叠与点分裂互逆操作,实现了模型连续细节层次表示,为解决虚拟现实技术模型复杂性和显示实时性提供了一种方案,有利于虚拟现实技术在AP1000核电站中的进一步应用。

猜你喜欢

面片核电站顶点
如果离我不远的核电站出现泄漏该怎么办
过非等腰锐角三角形顶点和垂心的圆的性质及应用(下)
初次来压期间不同顶板对工作面片帮影响研究
核电站护卫队
关于顶点染色的一个猜想
核电站的“神经中枢”
海上核电站提速
甜面片里的人生
青海尕面片
老伴逼我擀面片