CN110059436B - 航天飞行器自主保障系统三维可视化软件开发 - Google Patents
航天飞行器自主保障系统三维可视化软件开发 Download PDFInfo
- Publication number
- CN110059436B CN110059436B CN201910347259.6A CN201910347259A CN110059436B CN 110059436 B CN110059436 B CN 110059436B CN 201910347259 A CN201910347259 A CN 201910347259A CN 110059436 B CN110059436 B CN 110059436B
- Authority
- CN
- China
- Prior art keywords
- model
- dimensional
- fault
- display
- format
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/15—Vehicle, aircraft or watercraft design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开一种航天飞行器三维模型层次化故障显示,以及三维模型信息提取和动画交互的实现方法,所述飞行器自主保障系统三维可视化软件主要包含软件B/S框架的搭建、三维实体模型信息提取及格式转换、三维模型的显示及其动画交互操作的加入和故障产品显示及透视化部件操作四大部分。软件B/S框架的搭建主要负责三维场景的显示功能;三维实体模型信息提取及格式转换主要负责模型关键信息的提取,从而达到轻量化模型的目的;三维模型的显示及其动画交互操作的加入模块主要负责添加模型、相机、光源以及渲染器,实现模型的翻滚、平移和缩放;故障产品显示及透视化部件模块主要负责故障模块的定位从而高亮故障系统位置,帮助用户透视化干扰部件。本发明能够实现三维模型的分级显示、三维动画交互和故障定位及高亮显示,具有极高的实时性与稳定性。
Description
技术领域
本发明涉及飞行器健康管理三维建模技术,主要涉及航天飞行器三维模型层次化故障诊断,以及三维模型信息提取和动画交互。
背景技术
在航天员执行空间任务的过程中,需要传感器数据来确定重要部件的姿态、运动方式和健康状态。目前的二维显示诊断软件在辅助指挥、迅速分析、判断和决策方面有很好的作用,然而三维可视化软件仿真在显示效果和开发空间上比二维显示软件有很大的优势。三维可视化技术是1980年出现的有关程序数据分析和图像识别技术的先进前沿技术,它的优点是能够在三维视角下重现物体,真实地反映现实世界中物体的信息,另一个优点就是这套程序拥有实时交互能力,能够再现真实的物质世界。三维可视化技术是将相关现象的数据描述为图形、图像,并应用色彩、透视、动画和视觉形式,例如实时变化的观察点,使人们能够观察到物体的不可见属性,深入到内部结构中。三维可视化是近年来科研人员普遍选用的一种计算机技术,主要被用来呈现三维世界中的模型,可以表示模型实际的三维数据以及物理结构,这种技术手段能够实现人与机器之间的相互交流,就像现实世界一样。三维显示软件开发越来越成熟,我们对三维显示技术的研究也越来越深入。时代在发展,人们对于三维可视化的需求也在日益增长,这门计算机技术已广泛应用于人们生活生产的许多领域,如国家信息化、部队研发、卫生健康、地形改造、医疗设备等。自主保障技术验证系统用于实现对飞行器全寿命周期配置管理、异常告警、故障检测与隔离、健康评估、维修保障辅助决策等主要功能、兼具数据管理及分析、试验项目管理、三维视景显示、故障重演等功能。
航天飞行器全寿命周期自主保障技术是先进故障诊断、故障预测与维护保障任务决策技术的综合,以现代信号、建模、推理等智能技术为基础,已成为近十余年理论研究和工程应用的热点。现代复杂航天器通过配置健康管理系统,正逐步改变传统的维护保障体制,从以统计可靠性指标为依据的定期维修,向基于实际健康状态的视情维修转换。然而以各类智能信息处理、算法为基础的自主保障系统也给航天飞行器的设计、验证、评估、成熟化带来诸多技术挑战。本发明通过多信号流图建模以及分支定界算法来进行故障诊断和故障定位,从而得到发生故障的部件以及功能正常的部件,最后通过三维可视化分布式软件高亮显示故障部分以及实现与用户的交互操作。
发明内容
航天飞行器自主保障系统三维可视化软件首先构造一个实现交互功能的软件开发框架,实现的功能主要有:用户权限设置,文件格式转换,三维场景显示以及交互动画加入,诊断以及故障部分的高亮显示,如图1所示。
自主保障系统前端使用脚本实现三维模型的演示功能。该脚本支持OBJ/MTL格式模型文件。其中,OBJ文件提供模型基本结构参数,MTL文件提供三维模型的材质及外观信息。故障诊断模块中,用户需要对发生故障的模块进行定位。转化后的模型中保存了产品PBS编码-区域模型的映射字典。Django后端根据URL请求参数向三维显示前端发送故障模块位置代码,前端再通过JS对故障区域进行变色渲染,从而实现故障产品的显示功能。
本发明的优点在于:
1.所述三维可视化软件采用B/S架构,相比起C/S架构,具有系统轻便,实时性强,移植性强,多任务并行的特点,尤其适合分布式全寿命自主保障系统三维可视化软件。
2.三维模型的加载采用Three.js作为网页3D引擎,对插件式web3D引擎的优势相对明显:外界不需要安装相关三维模型插件、在多种设备上兼容性好。通过在网页中设置场景、相机、渲染器和光源,浏览器前端即可利用three.js加载OBJ/MTL模型文件,再通过鼠标捕捉实现鼠标控制模型的翻滚、平移、缩放等功能,从而达到飞行器模型三维动态展示的功能。
3.三维模型信息的提取采用CATIAProduct格式转STP/CGR格式来实现模型的轻量化,可以实现模型的快速加载与显示。
4.网页前端可以实时通过接收主控服务端发送的故障信息对故障单元部分进行高亮,并支持通过鼠标点击对周围干扰部件进行虚化显示。
附图说明
图1为自主保障系统三维可视化软件开发框架
图2为MVT模式层次职责表
图3为Django处理HTTP请求流程
图4为CATIA中载人飞船整体模型的显示
图5为CATIA中前舱航电部分局部模型的显示
图6为OBJ/MTL文件内容
图7为三维模型导入网页展示
图8为三维模型的故障显示以及子部件的透视化
具体实施方案
下面结果附图对本发明提供的自主保障技术验证系统三维可视化软件进行详细说明:
1.基于B/S架构的三维场景展示功能
自主保障系统三维可视化软件采用Django框架开发。Django是基于Python语言的开源Web框架,其采用模型(model)、视图(view)及控制器(control)的MVC设计模式,它们具体的职责如图2所示。此设计模式的关键优势在于构成系统的所有组件都是松散结合的,每个由Django驱动的Web应用都有明确的目的,可独立更改而不影响其它部分。又因为Django底层基于开源的Python语言开发,所以服务器后端可以更灵活地使用基于Python的脚本与算法,大幅简化了不同平台算法的移植难度。Django和其他Web框架一样,HTTP的处理流程基本类似:接受request,返回response内容,有关Django处理HTTP请求流程结构如图3所示。
2.三维实体模型信息提取及格式转换
3D模型文件来源于CATIA软件,CATIA提供了比较齐全的设计能力:三维模型信息的提取利用及实时显示,二维与三维视图转换以及对数据信息的有效管理。CATIA中整体模型的显示以及前舱航电部分局部显示如图4及图5所示。
本发明采用STP及CGR格式文件作为中间格式,进行CATProduct及CATPart模型文件的轻量化工作。STP格式能够在不同的软件之间传递并保持良好的兼容性,该格式文件包含零部件装配信息,在格式转换过程中损失信息相对较少。这种特性使得不同平台下的协作成为可能,但同时也无法最大程度地压缩模型。CGR格式是三维设计软件CATIA的文件保存格式之一,是一种特殊的可视化文件,它只保存了零件的外形信息,不包含任何参数化的数据。该格式文件虽然极大地压缩了模型文件大小,但同时也省略了模型的结构分解信息。
针对以上两种格式的特点,本发明采用将两种格式相结合的方法显示三维模型。先将需要进行结构分解的单机模型从原模型中取出,采用STP格式转换,其余部分使用CGR格式进行轻量化处理,最后再将两种格式的模型文件进行拼装,从而达到模型最大程度轻量化的目的,最终转换成OBJ/MTL格式,具体模型信息如图6所示。
3.三维模型的显示及其动画交互操作的加入
本发明中利用了THREE.Scene场景容器,它能够把三维模型、光源、照相机还有渲染器全部加入到场景之中。THREE.Scene属性通常又称为场景显示,它在某种意义上来讲充当着数组的作用,并且还可以容纳三维实体模型的各个节点数据。THREE.Object3D模型也可以有自己的子模块,我们能够利用它的子属性来创立一个Three.js编译和生成的对象树。
在二维空间映射到三维空间方式中,主要分为透视投影和正投影这两种。透视投影的特点是:离摄像机距离越近,显示的物体越大,离摄像机距离越远,显示的物体越小,这与我们平时生活中的规律是相似的。正投影的特点是:无论物体离摄像机远还是近,都根据一样的大小进行显示,一般是在建筑领域和开发等领域需要从不同的角度来显示物体,这种投影普遍被大多数人接受,因此在此设置透视投影方式。网页的三维模型显示中采用的光源主要有点光源和聚光灯这两大类。其实除了这两大类光源外,有一种特殊的点光源叫做平行光源,还可以对光源的参数以及属性进行设置。相应地,Three.js中可以设置点光源、聚光灯、平行光源,和环境光。通常而言,大多数都会选择环境光和点光源等。假如我们不加入环境光,那就会让整个场景视野变得比较灰暗。
本发明利用OBJLoader脚本将已经转换成功的OBJ文件加载到场景scene之中。模型加载成功后,提供的回调函数就会被调用,其中可以通过position属性来设置坐标,scale属性来设置导入模型的大小。由于要加载材质,所以需要在上述加载器基础上再加入一个有关材质的加载器MTLLoader脚本,由于版本的更替,本发明采用加载器MTLLoader脚本来导入3D模型的材质,具体展示效果如图7所示。
另外,本发明利用TrackballControls脚本实现模型的翻滚、平移和缩放。将这个插件固定在相机上,刷新相机的position可以在渲染循环中完成。通过时钟函数快速地处理出上次调用后需要的间隔,或者单次渲染需要的时间,调用时钟间隔函数会提供此次选择和上次选择之间经过的时间。本发明调用轨迹函数来更新相机的位置,为了保证相机能平缓地移动和旋转,我们需要传入精确的时间差。
4.故障产品显示及透视化部件操作
故障诊断模块中,用户需要对发生故障的模块进行定位。通过结构化模型分解及模型转化,三维模型显示界面可根据故障数据高亮显示故障系统位置。转化后的模型中保存了产品PBS编码-区域模型的映射字典。Django后端根据URL请求参数向三维显示前端发送故障模块位置代码,前端再通过JS对故障区域进行变色渲染,从而实现故障产品的显示功能。
三维选择干扰部件透视化的具体实现如下:在canvas画布上使用鼠标单击选中一个三维模型的子部件,三维模型自动变半透明。要实现这一点首先把鼠标单机位置的屏幕坐标转化为标准设备坐标,要借助Vector3对象的方法unproject把标准设备坐标转化为世界坐标,然后利用鼠标单击位置对应的屏幕坐标转化得到的世界坐标和相机对象的世界坐标两个参数创建一个射线对象Raycaster。通过方法addEventListener可以实时监控鼠标事件,一旦发生鼠标单击事件就执行函数ray。执行ray函数,通过鼠标事件返回的事件对象event的坐标属性offsetX/clientX、offsetY/clientY获得鼠标单机位置相对浏览器窗口客户区的坐标,最终故障显示效果如图8所示。
Claims (2)
1.一种基于三维可视化软件的航天飞行器自主保障系统,其特征在于:所述基于三维可视化软件的航天飞行器自主保障系统包括B/S框架的搭建模块、三维实体模型信息提取及格式转换模块、三维模型的显示及其动画交互操作的加入模块和故障产品显示及透视化部件操作模块;所述软件B/S框架的搭建模块负责三维场景的显示功能;所述三维实体模型信息提取及格式转换模块负责模型关键信息的提取,从而达到轻量化模型的目的;所述三维模型的显示及其动画交互操作的加入模块负责添加模型、相机、光源以及渲染器,实现模型的翻滚、平移和缩放;所述故障产品显示及透视化部件操作模块负责故障的定位从而高亮故障系统位置,帮助用户透视化干扰部件;所述基于三维可视化软件的航天飞行器自主保障系统实现三维模型的分级显示、三维动画交互和故障定位及高亮显示;
所述的三维实体模型信息提取及格式转换模块,包括模型的轻量化和OBJ/MTL文件格式信息读取;采用STP及CGR格式文件作为中间格式,进行CATProduct及CATPart模型文件的轻量化工作;STP格式文件在不同的软件之间传递并保持良好的兼容性,所述STP格式文件包含零部件装配信息,在格式转换过程中损失信息少,这种特性在不同平台下协作,但同时也无法最大程度地压缩模型;CGR格式文件是三维设计软件CATIA的文件保存格式之一,所述CGR格式文件是一种特殊的可视化文件,所述CGR格式文件只保存了零件的外形信息,不包含任何参数化的数据;所述CGR格式文件虽然压缩了模型文件的大小,但同时也省略了模型的结构分解信息;针对所述STP格式文件和所述CGR格式文件的特点,采用所述STP格式和所述CGR格式相结合的方法显示三维模型;先将需要进行结构分解的单机模型从原模型中取出,采用所述STP格式转换,其余部分使用所述CGR格式进行轻量化处理,最后再将所述STP格式和所述CGR格式的模型文件进行拼装,从而达到模型最大程度轻量化的目的,将所述模型文件转换成OBJ/MTL格式,最后对OBJ/MTL文件进行解析,获取模型的参数信息;
所述故障产品显示及透视化部件操作模块,包括故障诊断模块、模型分解识别模块以及模型透视化模块;在所述故障诊断模块中,用户需要对发生故障的模块进行定位;通过多信号流图建模以及分支定界算法来进行故障诊断和故障定位,从而得到发生故障的部件以及功能正常的部件;通过结构化模型分解及模型转化,三维模型显示界面根据故障数据高亮显示故障系统位置;转化后的模型中保存了产品PBS编码-区域模型的映射字典;Django后端根据URL请求参数向三维显示前端发送故障模块位置代码,三维显示前端再通过JS对故障区域进行变色渲染,从而实现故障产品的显示功能;三维选择干扰部件透视化的具体实现如下:首先把鼠标单击位置的屏幕坐标转化为标准设备坐标,要借助Vector3对象的方法unproject把标准设备坐标转化为世界坐标,然后利用鼠标单击位置对应的屏幕坐标转化得到的世界坐标和相机对象的世界坐标两个参数创建一个射线对象Raycaster;通过方法addEventListener实时监控鼠标事件,一旦发生鼠标单击事件就执行函数ray;执行ray函数,通过鼠标事件返回的事件对象event的坐标属性offsetX/clientX、offsetY/clientY获得鼠标单机位置相对于浏览器窗口客户区的坐标,最后根据获取到的数据信息进行实时的故障诊断以及模型显示。
2.根据权利要求1所述的基于三维可视化软件的航天飞行器自主保障系统,其特征在于:所述三维模型的显示及其动画交互操作的加入模块,利用了THREE.Scene场景容器,将三维模型、光源、照相机还有渲染器全部加入到场景之中;THREE.Object3D模型具有子模块,通过所述THREE.Object3D模型的子模块建立一个Three.js编译和生成的对象树;利用OBJLoader脚本将已经转换成功的OBJ文件加载到场景Scene之中,模型加载成功后,提供的回调函数就会被调用,其中通过Position属性来设置坐标,Scale属性来设置导入模型的大小;利用TrackballControls脚本实现模型的翻滚、平移和缩放,将这个插件固定在相机上,刷新相机的Position在渲染循环中完成;通过时钟函数快速地处理出上次调用后需要的间隔,或者单次渲染需要的时间,调用时钟间隔函数会提供此次选择和上次选择之间经过的时间;通过调用轨迹函数来更新相机的位置,为了保证相机平缓地移动和旋转,需要传入精确的时间差。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910347259.6A CN110059436B (zh) | 2019-04-28 | 2019-04-28 | 航天飞行器自主保障系统三维可视化软件开发 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910347259.6A CN110059436B (zh) | 2019-04-28 | 2019-04-28 | 航天飞行器自主保障系统三维可视化软件开发 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110059436A CN110059436A (zh) | 2019-07-26 |
CN110059436B true CN110059436B (zh) | 2021-07-06 |
Family
ID=67321189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910347259.6A Active CN110059436B (zh) | 2019-04-28 | 2019-04-28 | 航天飞行器自主保障系统三维可视化软件开发 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110059436B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111198674B (zh) * | 2019-12-23 | 2021-10-15 | 华为技术有限公司 | 一种软件架构的可视化方法及装置 |
CN112307576B (zh) * | 2020-09-30 | 2022-04-08 | 成都飞机工业(集团)有限责任公司 | 一种三维立体化铣样板快速设计方法 |
CN115291842B (zh) * | 2022-08-24 | 2024-01-30 | 金航数码科技有限责任公司 | 一种cad结构件轻量化转换与在线浏览方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799619A (zh) * | 2012-06-19 | 2012-11-28 | 北京航空航天大学 | 一种基于产品三维模型的故障模式可视化方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103886120B (zh) * | 2012-12-21 | 2017-08-11 | 中国直升机设计研究所 | 一种大型产品数字样机轻量可视化方法 |
US8788138B1 (en) * | 2013-02-26 | 2014-07-22 | Honeywell International Inc. | Diagnostic methods and systems for an aircraft |
CN104517011B (zh) * | 2014-12-15 | 2017-09-19 | 北京航空航天大学 | 一种基于3d数字化模型的产品组件故障可视化方法 |
CN107193911B (zh) * | 2017-05-14 | 2020-10-30 | 北京比目鱼信息科技有限责任公司 | 一种基于bim模型的三维可视化引擎及web应用程序调用方法 |
-
2019
- 2019-04-28 CN CN201910347259.6A patent/CN110059436B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799619A (zh) * | 2012-06-19 | 2012-11-28 | 北京航空航天大学 | 一种基于产品三维模型的故障模式可视化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110059436A (zh) | 2019-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Engelke et al. | Content first: a concept for industrial augmented reality maintenance applications using mobile devices | |
CN110059436B (zh) | 航天飞行器自主保障系统三维可视化软件开发 | |
EP3909017A1 (en) | Object permanence in surface reconstruction | |
US10909764B2 (en) | Providing augmented reality target images in a web browser | |
Guo et al. | An evaluation method using virtual reality to optimize ergonomic design in manual assembly and maintenance scenarios | |
US20210090343A1 (en) | Method, and a system for design reviews and trainings | |
Albuquerque et al. | Digital Twins as Foundation for Augmented Reality Applications in Aerospace | |
Kharroubi et al. | Marker-less mobile augmented reality application for massive 3d point clouds and semantics | |
Valentini | Natural interface in augmented reality interactive simulations: This paper demonstrates that the use of a depth sensing camera that helps generate a three-dimensional scene and track user's motion could enhance the realism of the interactions between virtual and physical objects | |
Elfarargy et al. | VirMuF: The virtual museum framework | |
Schubert et al. | A Pipeline for Vision-Based On-Orbit Proximity Operations Using Deep Learning and Synthetic Imagery | |
Kotthäuser et al. | Validating vision and robotic algorithms for dynamic real world environments | |
EP3649644A1 (en) | A method and system for providing a user interface for a 3d environment | |
Merckel et al. | Multi-interfaces approach to situated knowledge management for complex instruments: First step toward industrial deployment | |
Hempe et al. | A semantics-based, active render framework to realize complex eRobotics applications with realistic virtual testing environments | |
Wang et al. | Virtual assembly, maintenance and training system based on the virtual-real fusion technology | |
Buonocore et al. | Digital Twin, from Industry to Cultural Heritage | |
Zhao et al. | Research on maintenance guiding system based on augmented reality | |
Pomerantz et al. | Multi-mission, interactive 3d visualization in a web browser for robotic system and space flight mission development and operations | |
Lutfi et al. | Virtual Reality in Model Based Systems Engineering: A Review Paper | |
Martini et al. | Obstacle Avoidance and Interaction in Extended Reality: An Approach Based on 3D Object Detection | |
Lee et al. | Virtual mission operation framework | |
Bezpalko | IMPROVING THE INTEGRATION OF THREE-DIMENSIONAL MODELS IN AUGMENTED REALITY TECHNOLOGY. | |
Hempe et al. | Realizing the eRobotics approach in semantics-based multi-domain VR simulation systems | |
Toledo-Lopez et al. | Robust decision making via cooperative estimation: creating data saturated, autonomously generated, simulation environments in near real-time |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |