CN101908229B - 基于Virtools/HLA的多通道虚拟试验过程可视化系统及方法 - Google Patents
基于Virtools/HLA的多通道虚拟试验过程可视化系统及方法 Download PDFInfo
- Publication number
- CN101908229B CN101908229B CN2010102332126A CN201010233212A CN101908229B CN 101908229 B CN101908229 B CN 101908229B CN 2010102332126 A CN2010102332126 A CN 2010102332126A CN 201010233212 A CN201010233212 A CN 201010233212A CN 101908229 B CN101908229 B CN 101908229B
- Authority
- CN
- China
- Prior art keywords
- data
- visual
- hla
- management
- visual representing
- 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
Landscapes
- Processing Or Creating Images (AREA)
Abstract
基于Virtools/HLA的多通道虚拟试验过程可视化系统及方法,所述的系统包括多通道显示模块,HLA接口模块,表现命令缓冲模块,可视化表现控制管理模块和消息数据转换管理模块;所述的可视化系统运行在计算机集群上,所述的计算机集群包括可视化表现控制服务器和可视化显示节点,可视化表现控制服务器与可视化显示节点计算机通过以太网相连,可视化显示节点包括一个主节点和多个从属节点,可视化显示节点上配置可视化引擎Virtools;本发明可视化方法突破HLA多通道显示系统与HLA体系架构之间的数据通信和消息交互机制,基于Virtools SDK开发接口实现了HLA环境与Virtools引擎之间的交互控制,构建了支持HLA接口的多通道虚拟试验过程可视化系统。
Description
技术领域
本发明涉及虚拟试验过程可视化和虚拟现实领域,特别是涉及基于Virtools/HLA的多通道虚拟试验过程可视化系统。
背景技术
多通道虚拟试验过程可视化技术是以可视化模型和数据的网络传输、虚拟现实环境的合成和三维(二维)可视化系统的控制和管理等技术为基础,将虚拟试验过程可视化技术与高层体系结构(High Level Architecture,简称HLA)相结合,实现分布式的虚拟试验过程多通道可视化表现,为分布式虚拟试验过程提供了一种直观的表现形式,能够给用户以很强的沉浸感,在多个领域具有广泛的应用前景。
达索公司虚拟现实开发平台Virtools的三维引擎在分布式仿真和虚拟试验过程可视化领域逐步得到了应用,国内外对于Virtools应用研究都是直接基于Virtools三维引擎和Server模块进行分布式虚拟现实系统的开发,并利用Virtools Server的网络消息处理机制和网络传输系统实现了与HLA仿真联邦的数据交换,构建了基于服务器数据转换的Virtools/HLA多联邦仿真系统,但这种Virtools/HLA之间的消息和数据交换机制受Virtools Server的C/S网络结构的制约,每一个联邦节点必须要安装Virtools的客户端,而且,所有的数据交换都需要通过Virtools的网络服务器实现,限制了联邦之间基于HLA的数据交换方式,虚拟试验可视化显示节点不能脱离仿真联邦成员单独在分布式仿真系统中运行。
目前,还没有一种基于Virtools/HLA的多通道虚拟试验过程可视化方法。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供一种基于Virtools/HLA的多通道虚拟试验过程可视化方法,该方法突破HLA多通道显示系统与HLA体系架构之间的数据通信和消息交互机制,基于Virtools SDK开发接口实现了HLA环境与Virtools引擎之间的交互控制,构建了支持HLA接口的多通道虚拟试验过程可视化系统。
本发明可视化系统的技术解决方案是:一种基于Virtools/HLA的多通道虚拟试验过程可视化系统,包括多通道显示模块,HLA接口模块,表现命令缓冲模块,可视化表现控制管理模块和消息数据转换管理模块;所述的可视化系统运行在计算机集群上,所述的计算机集群包括可视化表现控制服务器和可视化显示节点,可视化表现控制服务器与可视化显示节点计算机通过以太网相连,可视化显示节点包括一个主节点和多个从属节点,可视化显示节点上配置可视化引擎Virtools;
HLA接口模块,与HLA/RTI网络连接,从HLA/RTI网络接收可视化模型表现数据,并进行差错检测、纠错处理后传输给表现命令缓冲模块;
表现命令缓冲模块,接收HLA接口模块输送的可视化模型表现数据,按照Virtools的刷新频率对所述的表现数据进行缓冲处理,并将缓冲处理后的表现数据解析成表现命令,将表现命令存储在缓冲队列中,等待消息数据转换管理模块处理;
消息数据转换管理模块,从缓冲队列中获取表现命令,并将获取的表现命令进行格式转换,转换成虚拟试验可视化场景中实体对象和实体表现信息,并将转换后的实体对象和实体表现信息,即需要可视化表现的数据和信息发送给可视化表现控制管理模块进行可视化表现;
可视化表现控制管理模块,初始化可视化表现配置参数和交互控制界面,从消息数据转换管理模块接收并存储需要可视化表现的数据和消息,根据可视化表现数据在可视化引擎Virtools中进行实体表现、特效生成、模型数据驱动和相机切换管理,以及虚拟试验过程可视化系统运行过程中交互控制,并将存贮的可视化表现消息发送给多通道显示模块;
多通道显示模块,通过接收可视化表现消息,触发安装在可视化显示节点计算机上的远程可视化控制程序,实现在集群式计算机控制多个虚拟试验过程可视化显示节点的多通道同步运行。
HLA接口模块包括网络接口部件和差错检测/纠错部件两部分,具体工作流程如下:
首先,用户通过创建连接对象加入联邦中,同时进行对象类及对象类属性参数的发布和订购;
其次,网络接口部件对需要从HLA/RTI网络订购的可视化模型的表现数据按照对象类的方式进行定义,并启动侦听线程,开始侦听HLA/RTI网络中的可视化模型表现数据;
最后,差错检测/纠错部件对获取的可视化模型表现数据进行差错检测、纠错处理。
所述的消息数据转换管理模块包括缓冲队列数据读取子模块、消息数据转换管理器、表现数据和消息发送管理子模块;
缓冲队列数据读取子模块根据可视化表现的时间步长从缓冲队列中获取表现命令,消息数据转换管理器根据接收时间将可视化表现命令转换成带有时间参数的模型ID、模型位置和模型姿态信息数据,即实体对象和实体表现信息数据,可视化表现数据和消息发送管理子模块负责将转换后的实体对象和实体表现信息数据发送到基于Virtools三维显示引擎开发的可视化表现控制管理模块中进行处理。
所述的可视化表现控制管理模块包括:可视化运行参数配置子模块、系统运行控制管理子模块、实体管理子模块、表现数据管理子模块、相机管理子模块和交互控制子模块;
可视化运行参数配置子模块,根据系统运行环境配置全局控制参数:可视化场景缩放比例和初始相机位置参数;根据实体列表配置管理参数进行场景实体和天体对象可视化实体对象的模型加载配置;根据本地驱动数据配置参数进行数据文件加载和存贮的配置;根据特效事件配置参数完成特效的触发、运行时间和特效模型的加载配置,从而完成实体管理子模块、表现数据管理子模块、相机管理子模块和交互控制子模块的初始化配置;
系统运行控制管理子模块,首先,对可视化表现控制管理模块进行初始化,加载可视化运行参数配置子模块指定的实体对象模型和数据;其次,从消息数据转换管理模块接收需要可视化表现的数据和消息,并控制表现数据管理子模块对接收的可视化表现数据、消息和本地存贮数据进行存贮;然后,根据所述的可视化表现数据进行时间管理和过程控制,具体为:根据可视化表现数据中的时间参数,以渲染周期为时间步长进行系统时间推进,根据可视化表现数据中的实体对象信息驱动实体管理子模块完成可视化表现实体的添加删除、状态查询和属性管理;根据可视化表现数据对相机的要求,驱动相机管理子模块进行相机动态创建、相机观察点的捕捉、相机的切换和控制管理;最后,将存贮的可视化表现消息发送给多通道显示模块;交互控制子模块,根据可视化表现控制管理模块提供的鼠标和键盘交互接口进行交互控制。
所述的多通道显示模块利用帧同步方法实现多个虚拟试验过程可视化显示节点的多通道同步运行。所述的帧同步方法具体步骤如下:
1)在主节点上创建接收数据线程、渲染显示线程和创建同步控制线程;
2)主节点接收可视化表现数据,推进渲染显示线程,从节点接收所有待渲染帧的序号,并将接收的待渲染帧序号返回给主节点;
3)主节点接收从节点返回的渲染帧序号,判断渲染帧序号与主节点渲染显示线程是否一致,如果一致则主节点和从节点进行渲染,否则一直等待;
4)所有节点渲染完成后,清空上一帧的数据,读入下一帧渲染数据,从步骤2)开始循环执行。
本发明可视化方法的技术解决方案是:一种基于Virtools/HLA的多通道虚拟试验过程可视化方法,所述方法依托的系统包括一个可视化表现控制服务器和可视化显示节点计算机,可视化表现控制服务器与可视化显示节点计算机通过以太网相连,可视化显示节点包括一个主节点和多个从属节点,可视化显示节点上配置可视化引擎Virtools,方法步骤如下:
(1)可视化表现控制服务器从HLA/RTI网络上侦听可视化表现数据,并对获取的可视化表现数据进行差错检测和纠错处理;所述的可视化模型的表现数据按照对象类的方式进行定义;
(2)在可视化表现控制服务器上按照Virtools的刷新频率对差错检测和纠错处理后的数据进行缓冲处理,并将缓冲处理后的表现数据解析成表现命令,将表现命令存储在缓冲队列中;
(3)根据可视化表现的时间步长从缓冲队列中获取表现命令,根据接收时间将可视化表现命令转换成带有时间参数的模型ID、模型位置和模型姿态信息数据,即实体对象和实体表现信息数据;
(4)初始化可视化表现配置参数和交互控制界面,并将上述实体对象和实体表现信息数据,即需要可视化表现的数据和消息在可视化表现控制管理模块内进行存储;
(5)根据可视化表现数据在可视化引擎Virtools中进行实体表现、特效生成、模型数据驱动和相机切换管理,以及可视化过程中的交互控制;
(6)将步骤(5)的过程分布到所有显示节点上,通过显示节点中主节点与从节点之间的信息交互,使所有的显示节点同步执行显示场景的操作,实现多通道虚拟试验过程可视化。
所述步骤(6)中所有显示节点同步执行显示场景的操作具体实现步骤如下:
(6.1)在主节点上创建接收数据线程、渲染显示线程和创建同步控制线程;
(6.2)主节点接收可视化表现数据,推进渲染显示线程,从节点接收所有待渲染帧的序号,并将接收的待渲染帧序号返回给主节点;
(6.3)主节点接收从节点返回的渲染帧序号,判断渲染帧序号与主节点渲染显示线程是否一致,如果一致则主节点和从节点进行渲染,否则一直等待;
(6.4)所有节点渲染完成后,清空上一帧的数据,读入下一帧渲染数据,从步骤(6.2)开始循环执行。
本发明与现有技术相比有益效果为:
(1)本发明多通道虚拟试验过程可视化系统的HLA接口采用对象类及对象类属性、交互类及交互类参数,在分布式仿真系统的对象类、实体数目发生变化的情况下,无需重新编写网络接口;同时系统采用实体管理子模块,通过实体对场景进行管理,使得本系统具有通用性。
(2)本发明将HLA接口与多通道虚拟试验过程可视化系统之间的信息交互通过消息数据转换管理模块桥接实现,打通了异构系统之间的消息交互壁垒,以模块化的方式降低了HLA接口和可视化表现系统之间的耦合。
(3)本发明采用表现命令缓冲队列,解决了三维场景刷新频率与网络数据接收频率不匹配的问题,不会因数据丢失出现场景表现内容失真、画面跳跃等现象。
(4)本发明采用帧同步的控制方式,实现了多通道显示过程中的同步问题。
(5)本发明多通道虚拟试验过程可视化系统采用系统运行配置管理机制,实现了系统运行过程中参数、实体对象、相机、特效事件和驱动数据灵活配置,增加了系统的通用性和可重用性。
附图说明
图1为本发明多通道虚拟试验过程可视化系统结构图;
图2为本发明多通道虚拟试验过程可视化系统的HLA接口模块结构图;
图3为本发明多通道虚拟试验过程可视化系统中的表现命令缓冲模块工作过程图;
图4为本发明多通道虚拟试验过程可视化系统中的表现命令缓冲模块工作过程图;
图5为本发明多通道虚拟试验过程可视化系统中的消息数据转换管理模块工作过程图;
图6为本发明多通道虚拟试验过程可视化系统中的多通道显示表现模块工作过程图;
图7为本发明多通道虚拟试验过程可视化系统中的多通道显示同步控制机制示意图;
图8为本发明多通道虚拟试验过程可视化系统运行环境构成示意图;
图9为本发明可视化表现控制管理模块的系统运行时序图。
具体实施方式
如图1所示为本发明支持HLA接口的多通道虚拟试验过程可视化系统结构图,包括多通道显示模块、可视化表现控制管理模块、消息数据转换管理模块、表现命令缓冲模块和HLA接口模块。下面详细介绍每个模块的具体实现过程。
一、HLA接口模块
HLA接口模块负责实现从HLA/RTI(Run Time Infrastructure,运行时体系结构)上获取需要可视化模型的表现数据,包括可视化模型的名称信息和表现属性数据。
可视化模型的表现数据按照对象类方式进行定义,具体定义格式参见表1、2。
表1对象类结构表
对象类结构表 |
Object VREntity |
表2对象类属性表
HLA接口模块的工作流程如图2所示,用户通过创建连接对象加入联邦中,同时进行对象类及对象类属性进行发布和订购;网络接口部件对需要从HLA/RTI网络订购的可视化模型的表现数据按照对象类的方式进行定义,并启动侦听线程,开始侦听HLA/RTI网络中的可视化模型表现数据;收到数据后,差错检测/纠错部件对获取的可视化模型表现数据进行差错检测、纠错处理,并将处理后的数据交由表现命令缓冲模块进行处理;如果没有侦听到数据则虚拟试验可视化系统运行终止,同时终止网络侦听线程。
上述差错检测、纠错处理采用常用网络数据传输过程中的方法,可视化表现数据的极值和差值检验算法,上述算法为本领域技术人员公知常识,这里不再进行详细说明。
二、表现命令缓冲模块
图3为本发明支持HLA接口的多通道虚拟试验过程可视化系统中表现命令缓冲模块工作过程图,表现命令缓冲模块由数据解析和表现命令缓冲队列组成,负责接收HLA接口模块输送的可视化模型表现数据,按照Virtools的刷新频率对所述的表现数据进行缓冲处理,并将缓冲处理后的表现数据解析成表现命令,将表现命令存储在缓冲队列中,等待消息数据转换管理模块处理。
数据解析则是根据HLA接口模块发送的可视化表现数据,将这些数据解析为可视化表现控制管理模块能够识别的表现命令,这些命令满足了可视化表现控制管理模块的操作要求。
表现命令缓冲队列是一个动态的内存块,只与系统的可用内存相关,不会受其他因素的影响,该缓冲队列满足先进先出的原则,能很好的保证表现时序。三维表现都有一个固定的刷新频率来更新场景的显示内容,刷新频率与硬件有密切关系,在数据的接收频率远远高于三维场景的刷新频率时,不可能保证接收的数据马上反映到三维表现上。表现命令缓冲队列可以解决这一过程中出现数据丢失的问题,场景某一帧到下一帧之间,通过HLA接口接收到的数据,均以表现命令的形式保存在这个缓冲队列中。缓冲队列的引入,能很好的保证接收数据的完整性,从而保证系统运行时序的正确性。
由于利用HLA接口从RTI网络获取表现数据的时间间隔小周期短,数据动态存储要求高,同时,可视化渲染引擎Virtools支持的刷新频率和周期基本确定,所以,表现命令缓冲模块按照Virtools最高刷新频率对可视化模型的表现数据进行缓冲处理,实现可视化表现数据规模的缩小,并将缓冲处理后的数据解析转变成可视化表现模块能够识别的表现命令,即将对象类可视化表现数据转换成为按照固定时间周期间隔存贮的数据信息,包括可视化对象和对象属性,并添加到表现命令缓冲队列;场景刷新时,可视化表现控制管理模块从缓冲队列中依次取出表现命令进行处理,同时释放内存空间。
三、消息数据转换管理模块
图4为本发明支持HLA接口的多通道虚拟试验过程可视化系统中消息数据转换管理模块工作过程图,消息数据转换管理模块包括缓冲队列数据读取子模块、消息数据转换管理器、表现数据和消息发送管理子模块。
可视化表现时间步长的选取与运行环境的硬件配置相关,刷新频率30~60次每秒。缓冲队列数据读取子模块根据可视化表现的时间步长,从缓冲队列中获取表现命令,基于Virtools SDK提供的API接口构建的消息数据转换管理器根据接收时间将可视化表现命令转换成带有时间参数的模型ID、模型位置和模型姿态信息数据,即实体对象和实体表现信息,可视化表现数据和消息发送管理子模块负责将转换后的实体对象和实体表现信息数据发送到基于Virtools三维显示引擎开发的可视化表现控制管理模块中进行处理。
通过HLA接口接收的可视化表现数据,经过表现命令缓冲模块和消息数据转换管理模块的处理(也就是上述实体对象和实体表现信息),按照时间序列以数组的方式存贮在多通道显示节点的本地数据库中,根据可视化表现的需求进行数据调用。
可视化模型的实体对象和实体表现信息格式如下表3所示:
表3实体对象和实体表现信息结构表
对象ID | 对象名称 | 时间 | 位置信息 | 速度信息 | 姿态信息 |
1 | 飞行器 | Time | (X,Y,Z) | (Vx,Vy,Vz) | (α,β,θ) |
四、可视化表现控制管理模块
可视化表现控制管理模块初始化可视化表现配置参数和交互控制界面,从消息数据转换管理模块接收并存储需要可视化表现的数据和消息,根据可视化表现数据在可视化引擎Virtools中进行实体表现、特效生成、模型数据驱动和相机切换管理,以及虚拟试验过程可视化系统运行过程中交互控制,并将存贮的可视化表现消息发送给多通道显示模块;
图5为本发明支持HLA接口的多通道虚拟试验过程可视化系统中可视化表现控制管理模块的构成图,可视化表现控制管理模块包括可视化运行参数配置子模块、系统运行控制管理子模块、实体管理子模块、表现数据管理子模块、相机管理子模块和交互控制子模块。
可视化运行参数配置子模块实现系统运行全局控制参数的配置管理、实体列表配置管理、本地驱动数据配置管理、特效事件的配置;具体实现过程如下:
可视化运行参数配置子模块,根据系统运行环境配置全局控制参数,全局控制参数包括可视化场景缩放比例和初始相机位置参数;从而完成相机管理子模块和交互控制子模块的初始化配置;根据实体列表配置管理参数进行场景实体和天体对象可视化实体对象的模型加载配置,完成实体管理子模块的初始化配置;此处要求提前根据可视化对象将可视化对象场景、天体对象进行建模并在当地存储,可视化场景实体模型、天体对象可视化实体对象模型可以采用美国MAK公司的CREATER软件等进行建模,该方法为公知方法,这里不再详细进行说明。以可视化火箭发射过程为例,需建立的场景实体模型为火箭发射场及发射场周边的环境,天体对象可视化实体对象模型为自然界存在的天体对象,例如地球、月亮和太阳等。根据本地驱动数据配置参数进行数据文件加载和存贮的配置,从而完成表现数据管理子模块的初始化配置;根据特效事件配置参数完成特效的触发、运行时间和特效模型的加载配置。例如可视化火箭发射过程,则特效事件主要为火箭发射尾焰和火箭级间分离,该尾焰模型及级间分离模型同样采用美国MAK公司的CREATER软件进行建模并存储在当地,将尾焰和级间分离模型根据火箭发射时序进行触发。
系统运行控制管理子模块,首先,对可视化表现控制管理模块进行初始化,加载可视化运行参数配置子模块指定的实体对象模型和数据;其次,从消息数据转换管理模块接收需要可视化表现的数据和消息,并控制表现数据管理子模块对接收的可视化表现数据、消息和本地存贮数据进行存贮;然后,根据所述的可视化表现数据进行时间管理和过程控制,具体为:根据可视化表现数据中的时间参数,以渲染周期为时间步长进行系统时间推进,根据可视化表现数据中的实体对象信息驱动实体管理子模块完成可视化表现实体的添加删除、状态查询和属性管理;例如根据火箭发射时序,此时火箭发射已经进行了一、二级分离,则删除火箭一级实体模型,并对火箭的分离状态进行属性管理。根据可视化表现数据对相机的要求,驱动相机管理子模块进行相机动态创建、相机观察点的捕捉、相机的切换和控制管理,该部分内容为可视化领域的公知做法,这里不进行详细说明。最后,将存贮的可视化表现消息发送给多通道显示模块;交互控制子模块,根据可视化表现控制管理模块提供的鼠标和键盘交互接口进行交互控制。
五、多通道显示模块
图6为本发明支持HLA接口的多通道虚拟试验过程可视化系统中多通道显示模块运行图,多通道显示模块,通过接收可视化表现消息,触发安装在可视化显示节点计算机上的远程可视化控制程序(Virtools提供的远程控制伺服程序),通过与可视化显示节点连接的投影终端进行可视化表现,实现在集群式计算机控制多个虚拟试验过程可视化显示节点的多通道同步运行。
图7为本发明支持HLA接口的多通道虚拟试验过程可视化系统中多通道显示的同步运行机制示意图。多通道虚拟试验可视化系统显示过程包括三个阶段:读取数据、渲染场景、显示场景。要保证不同显示节点显示同一时刻的画面,一方面要满足所有显示进程的待渲染数据相同,另一方面要满足显示阶段节点间时差足够小。因此,需要进行两次同步控制:帧同步和显示同步。帧同步是指不同的显示节点显示同一时刻的场景,这就要求不同节点的渲染数据相同。显示同步是指当所有显示节点渲染完毕时,同时执行显示场景的操作。
当所有显示节点待渲染的数据帧不是同一帧时,主节点获得最新数据帧,并将其传输给各从节点,然后所有显示节点根据最新数据帧执行渲染。每个显示节点渲染完毕时,向主节点报告,当所有节点都渲染完毕,主节点通知所有显示节点显示场景。从属节点根据主节点提供的信息执行相应的操作。主节点与从属节点均为多线程设计,接受数据线程接受任务完成传来的数据,同步控制线程用于传输主节点与从节点之间的交互信息。
实施例:
以多通道多视角的船舶行驶虚拟试验为例,基于Virtools/HLA的多通道虚拟试验过程可视化系统需要运行在计算机集群上,计算机集群构成如图8所示。可视化表现控制服务器与表现数据产生服务器通过HLA/RTI网络连接,可视化表现控制服务器与虚拟试验多通道可视化显示节点通过以太网相连,显示节点包括一个主节点和两个从属节点,显示节点与投影终端连接。
在可视化表现控制服务器上配置多通道虚拟试验过程可视化软件系统,在虚拟试验多通道可视化显示节点计算机上配置可视化引擎Virtools。
可视化系统具体实施步骤如下:
1)表现数据产生服务器通过HLA/RTI向可视化表现控制服务器发送可视化表现数据;
2)可视化表现控制服务器上的多通道虚拟试验过程可视化系统利用HLA接口模块,从HLA/RTI(Run Time Infrastructure,运行时体系结构)上获取需要可视化模型的表现数据,包括模型的名称信息和表现属性数据;
可视化模型的表现数据格式采用对象类的方式定义
表4对象类结构表
对象类结构表 |
Object VREntity |
表5对象类属性表
3)HLA接口模块从RTI网络获取可视化模型的表现数据后,按照差错检测和纠错部件的算法进行数据处理,差错检测和纠错的方法采用常用网络数据传输过程中的方法、可视化表现数据的极值和插值检验算法,经过差错检测和纠错处理后的数据提交表现命令缓冲模块进行处理;
4)表现命令缓冲模块把接收到的数据进行解析,按照可视化模型对象、模型属性、时序、位置信息、速度信息、姿态信息、事件序列和当前事件状态等分类进行存储。由于利用HLA接口从RTI网络获取数据的时间间隔小周期短,数据动态存储要求高,同时,可视化渲染引擎Virtools支持的刷新频率和周期基本确定,所以,可视化表现命令缓冲模块按照Virtools最高刷新频率对可视化模型的信息和数据进行缓冲处理,实现可视化表现数据规模的缩小,并把处理后的数据转化为可视化表现的命令,存储在可视化表现命令缓冲对列中;
5)消息数据转换管理模块利用缓冲队列数据读取子模块根据可视化表现的时间步长从缓冲队列中获取数据,消息数据转换管理器根据接收时间将获取的数据进行格式转换,把可视化表现命令转换成带有时间参数的模型ID、模型位置和模型姿态信息数据,即实体对象和实体表现信息,具体参见表6,然后利用数据和消息发送管理子模块负责将转换后的消息发送到基于Virtools三维显示引擎开发的可视化表现控制管理模块中进行处理;
表6实体对象和实体表现信息结构表
对象ID | 对象名称 | 时间 | 位置信息 | 速度信息 | 姿态信息 |
1 | 船舶 | Time | (X,Y,Z) | (Vx,Vy,Vz) | (α,β,θ) |
6)基于可视化渲染引擎Virtools开发的可视化表现控制管理模块包括:可视化运行参数配置子模块、系统运行控制管理子模块、实体管理子模块、表现数据管理子模块、相机管理子模块和交互控制子模块;
可视化运行参数配置子模块,根据系统运行环境配置全局控制参数:可视化场景缩放比例和初始相机位置参数;根据实体列表配置管理参数进行场景实体和天体对象可视化实体对象的模型加载配置;根据本地驱动数据配置参数进行数据文件加载和存贮的配置;根据特效事件配置参数完成特效的触发、运行时间和特效模型的加载配置,从而完成实体管理子模块、表现数据管理子模块、相机管理子模块和交互控制子模块的初始化配置;
系统运行控制管理子模块,首先,对可视化表现管理模块进行初始化,加载可视化运行参数配置子模块指定的实体对象模型和数据;其次,从消息数据转换管理模块接收需要可视化表现的数据和消息,并控制表现数据管理子模块对接收的可视化表现数据、消息和本地存贮数据进行存贮;然后,根据所述的可视化表现数据进行时间管理和过程控制,具体为:根据可视化表现数据中的时间参数,以渲染周期为时间步长进行系统时间推进,根据可视化表现数据中的实体对象信息驱动实体管理子模块完成可视化表现实体的添加删除、状态查询和属性管理;根据可视化表现数据对相机的要求,驱动相机管理子模块进行相机动态创建、相机观察点的捕捉、相机的切换和控制管理;最后,将存贮的可视化表现消息发送给多通道显示模块;交互控制子模块,根据可视化表现控制管理模块提供的鼠标和键盘交互接口进行交互控制。
可视化表现控制管理模块运行时序如图9所示,系统启动后,首先系统运行控制子模块触发根据参数配置管理子模块完成可视化实体对象、表现数据和相机管理的参数设置,同时生成可视化系统交互界面;其次,清除可视化表现数组和相机管理数组的历史数据,根据实体对象的模型配置参数进行模型和实体加载,针对实体模型对象的相机观察属性动态生成相机管理界面,从配置参数指定路径读取数据,完成任务模型、可视化事件驱动程序和可视化数据的初始化;然后,完成可视化事件序列加载,激活相机控制功能,触发系统运行控制模块,等待鼠标和键盘的交互控制消息;最后,把从消息数据转换管理模块接收的可视化实体对象和实体表现信息存贮到可视化表现数组中,按照时间推进的步长进行读取和可视化渲染;交互控制过程中,根据可视化表现需求动态生成交互界面菜单,完成可视化事件的触发管理;系统运行完成后,系统推出。
7)可视化表现控制管理模块通过传递消息对安装在可视化显示节点计算机上的远程可视化控制程序(Virtools提供的远程控制伺服程序)进行激活,触发可视化显示节点上的表现模块进行表现,多通道的同步过程如图7所示,具体步骤概括如下:
1)在主节点上创建接收数据线程、渲染显示线程和创建同步控制线程;
2)主节点接收可视化表现数据,推进渲染显示线程,从节点接收所有待渲染帧的序号,并将接收的待渲染帧序号返回给主节点;上述主节点接收的可视化表现数据与从节点接收的待渲染帧序号构成多通道显示模块接收的可视化表现消息。
3)主节点接收从节点返回的渲染帧序号,判断渲染帧序号与主节点渲染显示线程是否一致,如果一致则主节点和从节点进行渲染,否则一直等待;
4)所有节点渲染完成后,清空上一帧的数据,读入下一帧渲染数据,从步骤2)开始循环执行。
本发明未详细说明部分属于本领域技术人员公知常识。
Claims (8)
1.一种基于Virtools/HLA的多通道虚拟试验过程可视化系统,其特征在于:包括多通道显示模块,HLA接口模块,表现命令缓冲模块,可视化表现控制管理模块和消息数据转换管理模块;所述的可视化系统运行在计算机集群上,所述的计算机集群包括可视化表现控制服务器和可视化显示节点,可视化表现控制服务器与可视化显示节点通过以太网相连,可视化显示节点包括一个主节点和多个从属节点,可视化显示节点上配置可视化引擎Virtools;
HLA接口模块,与HLA/RTI网络连接,从HLA/RTI网络接收可视化模型表现数据,并进行差错检测、纠错处理后传输给表现命令缓冲模块;
表现命令缓冲模块,接收HLA接口模块输送的可视化模型表现数据,按照Virtools的刷新频率对所述的表现数据进行缓冲处理,并将缓冲处理后的表现数据解析成表现命令,将表现命令存储在缓冲队列中,等待消息数据转换管理模块处理;
消息数据转换管理模块,从缓冲队列中获取表现命令,并将获取的表现命令进行格式转换,转换成虚拟试验可视化场景中实体对象和实体表现信息,并将转换后的实体对象和实体表现信息,即需要可视化表现的数据和信息发送给可视化表现控制管理模块进行可视化表现;
可视化表现控制管理模块,初始化可视化表现配置参数和交互控制界面,从消息数据转换管理模块接收并存储需要可视化表现的数据和消息,根据可视化表现数据在可视化引擎Virtools中进行实体表现、特效生成、模型数据驱动和相机切换管理,以及虚拟试验过程可视化系统运行过程中交互控制,并将存贮的可视化表现消息发送给多通道显示模块;
多通道显示模块,通过接收可视化表现消息,触发安装在可视化显示节点上的远程可视化控制程序,实现在集群式计算机控制多个虚拟试验过程可视化显示节点的多通道同步运行。
2.根据权利要求1所述的基于Virtools/HLA的多通道虚拟试验过程可视化系统,其特征在于:HLA接口模块包括网络接口部件和差错检测/纠错部件两部分,具体工作流程如下:
首先,用户通过创建连接对象加入联邦中,同时进行对象类及对象类属性参数的发布和订购;
其次,网络接口部件对需要从HLA/RTI网络订购的可视化模型的表现数据按照对象类的方式进行定义,并启动侦听线程,开始侦听HLA/RTI网络中的可视化模型表现数据;
最后,差错检测/纠错部件对获取的可视化模型表现数据进行差错检测、纠错处理。
3.根据权利要求1所述的基于Virtools/HLA的多通道虚拟试验过程可视化系统,其特征在于:所述的消息数据转换管理模块包括缓冲队列数据读取子模块、消息数据转换管理器、表现数据和消息发送管理子模块;
缓冲队列数据读取子模块根据可视化表现的时间步长从缓冲队列中获取表现命令,消息数据转换管理器根据接收时间将可视化表现命令转换成带有时间参数的模型ID、模型位置和模型姿态信息数据,即实体对象和实体表现信息数据,表现数据和消息发送管理子模块负责将转换后的实体对象和实体表现信息数据发送到基于Virtools三维显示引擎开发的可视化表现控制管理模块中进行处理。
4.根据权利要求1所述的基于Virtools/HLA的多通道虚拟试验过程可视化系统,其特征在于:所述的可视化表现控制管理模块包括:可视化运行参数配置子模块、系统运行控制管理子模块、实体管理子模块、表现数据管理子模块、相机管理子模块和交互控制子模块;
可视化运行参数配置子模块,根据系统运行环境配置全局控制参数:可视化场景缩放比例和初始相机位置参数;根据实体列表配置管理参数进行场景实体和天体对象可视化实体对象的模型加载配置;根据本地驱动数据配置参数进行数据文件加载和存贮的配置;根据特效事件配置参数完成特效的触发、运行时间和特效模型的加载配置,从而完成实体管理子模块、表现数据管理子模块、相机管理子模块和交互控制子模块的初始化配置;
系统运行控制管理子模块,首先,对可视化表现控制管理模块进行初始化,加载可视化运行参数配置子模块指定的实体对象模型和数据;其次,从消息数据转换管理模块接收需要可视化表现的数据和消息,并控制表现数据管理子模块对接收的可视化表现数据、消息和本地存贮数据进行存贮;然后,根据所述的可视化表现数据进行时间管理和过程控制,具体为:根据可视化表现数据中的时间参数,以渲染周期为时间步长进行系统时间推进,根据可视化表现数据中的实体对象信息驱动实体管理子模块完成可视化表现实体的添加删除、状态查询和属性管理;根据可视化表现数据对相机的要求,驱动相机管理子模块进行相机动态创建、相机观察点的捕捉、相机的切换和控制管理;最后,将存贮的可视化表现消息发送给多通道显示模块;交互控制子模块,根据可视化表现控制管理模块提供的鼠标和键盘交互接口进行交互控制。
5.根据权利要求1所述的基于Virtools/HLA的多通道虚拟试验过程可视化系统,其特征在于:所述的多通道显示模块利用帧同步方法实现多个虚拟试验过程可视化显示节点的多通道同步运行。
6.根据权利要求5所述的基于Virtools/HLA的多通道虚拟试验过程可视化系统,其特征在于:所述的帧同步方法具体步骤如下:
1)在主节点上创建接收数据线程、渲染显示线程和创建同步控制线程;
2)主节点接收可视化表现数据,推进渲染显示线程,从属节点接收所有待渲染帧的序号,并将接收的待渲染帧序号返回给主节点;
3)主节点接收从属节点返回的渲染帧序号,判断渲染帧序号与主节点渲染显示线程是否一致,如果一致则主节点和从属节点进行渲染,否则一直等待;
4)所有节点渲染完成后,清空上一帧的数据,读入下一帧渲染数据,从步骤2)开始循环执行。
7.一种基于Virtools/HLA的多通道虚拟试验过程可视化方法,其特征在于:所述方法依托的系统包括一个可视化表现控制服务器和可视化显示节点,可视化表现控制服务器与可视化显示节点通过以太网相连,可视化显示节点包括一个主节点和多个从属节点,可视化显示节点上配置可视化引擎Virtools,方法步骤如下:
(1)可视化表现控制服务器从HLA/RTI网络上侦听可视化表现数据,并对获取的可视化表现数据进行差错检测和纠错处理;所述的可视化表现数据按照对象类的方式进行定义;
(2)在可视化表现控制服务器上按照Virtools的刷新频率对差错检测和纠错处理后的数据进行缓冲处理,并将缓冲处理后的表现数据解析成表现命令,将表现命令存储在缓冲队列中;
(3)根据可视化表现的时间步长从缓冲队列中获取表现命令,根据接收时间将可视化表现命令转换成带有时间参数的模型ID、模型位置和模型姿态信息数据,即实体对象和实体表现信息数据;
(4)初始化可视化表现配置参数和交互控制界面,并将上述实体对象和实体表现信息数据,即需要可视化表现的数据和消息在可视化表现控制管理模块内进行存储;
(5)根据可视化表现数据在可视化引擎Virtools中进行实体表现、特效生成、模型数据驱动和相机切换管理,以及可视化过程中的交互控制;
(6)将步骤(5)的过程分布到所有显示节点上,通过显示节点中主节点与从属节点之间的信息交互,使所有的显示节点同步执行显示场景的操作,实现多通道虚拟试验过程可视化。
8.根据权利要求7所述的基于Virtools/HLA的多通道虚拟试验过程可视化方法,其特征在于:所述步骤(6)中所有显示节点同步执行显示场景的操作具体实现步骤如下:
(6.1)在主节点上创建接收数据线程、渲染显示线程和创建同步控制线程;
(6.2)主节点接收可视化表现数据,推进渲染显示线程,从属节点接收所有待渲染帧的序号,并将接收的待渲染帧序号返回给主节点;
(6.3)主节点接收从属节点返回的渲染帧序号,判断渲染帧序号与主节点渲染显示线程是否一致,如果一致则主节点和从属节点进行渲染,否则一直等待;
(6.4)所有节点渲染完成后,清空上一帧的数据,读入下一帧渲染数据,从步骤(6.2)开始循环执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102332126A CN101908229B (zh) | 2010-07-16 | 2010-07-16 | 基于Virtools/HLA的多通道虚拟试验过程可视化系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102332126A CN101908229B (zh) | 2010-07-16 | 2010-07-16 | 基于Virtools/HLA的多通道虚拟试验过程可视化系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101908229A CN101908229A (zh) | 2010-12-08 |
CN101908229B true CN101908229B (zh) | 2011-11-16 |
Family
ID=43263680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102332126A Active CN101908229B (zh) | 2010-07-16 | 2010-07-16 | 基于Virtools/HLA的多通道虚拟试验过程可视化系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101908229B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385762B (zh) * | 2011-10-20 | 2013-08-28 | 上海交通大学 | 集成Modelica的三维视景仿真系统 |
CN108881117B (zh) * | 2017-05-12 | 2021-10-22 | 上海诺基亚贝尔股份有限公司 | 接入网中部署虚拟现实服务的方法、设备及计算机可读介质 |
CN112800106B (zh) * | 2021-01-15 | 2022-04-01 | 上海大学 | 一种基于数字孪生技术采用历史数据驱动虚拟模型仿真的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1804804A (zh) * | 2005-11-23 | 2006-07-19 | 中国航天科技集团公司第一研究院 | 基于hla的分布交互仿真平台及其实现方法 |
CN101587446A (zh) * | 2009-06-30 | 2009-11-25 | 中国运载火箭技术研究院 | 基于分布交互仿真平台的仿真模型转换方法 |
CN101741906A (zh) * | 2009-12-08 | 2010-06-16 | 中国运载火箭技术研究院 | 支持hla分布交互仿真的网格资源管理系统及其实现方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050017977A1 (en) * | 2003-07-24 | 2005-01-27 | Simpson John J. | Method and apparatus for integrating virtual environments with functional simulations via HLA protocol |
JP4455351B2 (ja) * | 2005-01-20 | 2010-04-21 | 株式会社東芝 | 分散型シミュレーションシステム |
-
2010
- 2010-07-16 CN CN2010102332126A patent/CN101908229B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1804804A (zh) * | 2005-11-23 | 2006-07-19 | 中国航天科技集团公司第一研究院 | 基于hla的分布交互仿真平台及其实现方法 |
CN101587446A (zh) * | 2009-06-30 | 2009-11-25 | 中国运载火箭技术研究院 | 基于分布交互仿真平台的仿真模型转换方法 |
CN101741906A (zh) * | 2009-12-08 | 2010-06-16 | 中国运载火箭技术研究院 | 支持hla分布交互仿真的网格资源管理系统及其实现方法 |
Non-Patent Citations (1)
Title |
---|
JP特开2006-202035A 2006.08.03 |
Also Published As
Publication number | Publication date |
---|---|
CN101908229A (zh) | 2010-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Berta | Integrating vr and cad | |
CN102685239B (zh) | 分布式渲染方法 | |
CN111818120A (zh) | 端云用户交互方法、系统及相应设备、存储介质 | |
CN101853162B (zh) | 一种可编辑的网页三维几何造型渲染方法 | |
CN102707986A (zh) | 子分区与父分区之间的共享存储器 | |
CN104023050A (zh) | 一种设备云环境下设备协同多屏互动系统及其方法 | |
Schulze et al. | CalVR: an advanced open source virtual reality software framework | |
CN103106679A (zh) | 分布式3d多通道渲染方法、系统和平台 | |
CN101169730A (zh) | 虚拟环境中管理等待时间敏感的交互的方法、系统和装置 | |
CN101908229B (zh) | 基于Virtools/HLA的多通道虚拟试验过程可视化系统及方法 | |
CN101482828A (zh) | 一种基于hla的通用分布式视景仿真系统及实现方法 | |
CN106846431B (zh) | 一种支持多表现形式的统一Web图形绘制系统 | |
CN102170462A (zh) | 一种产品设计模型的异地协同方法 | |
Irawati et al. | Varu framework: Enabling rapid prototyping of VR, AR and ubiquitous applications | |
Kim et al. | A multichannel visualization module for virtual manufacturing | |
Park et al. | NAVER: Networked and Augmented Virtual Environment aRchitecture; design and implementation of VR framework for Gyeongju VR Theater | |
CN112446948B (zh) | 虚拟现实课件的处理方法、装置、电子设备及存储介质 | |
KR101343131B1 (ko) | 인터렉티브 전시환경을 위한 통합 미디어 프레임 제공장치 | |
CN112256163A (zh) | 拼接式显示屏配屏方法、装置和系统 | |
Lonauer et al. | A multi-layer architecture for near real-time collaboration during distributed modeling and simulation of cyberphysical systems | |
CN113253965B (zh) | 海量数据多视口可视化交互方法、系统、设备及存储介质 | |
CN108597025A (zh) | 基于人工智能面向虚拟现实的快速模型构建方法和装置 | |
Chen et al. | Research and application of immersive virtual reality system based on 3D geographic information system | |
CN113992906B (zh) | 一种基于Unity3D的CAVE系统多通道同步仿真方法 | |
Zhang et al. | VR Design and Display System of Ceramic Products Based on Cloud Service Platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |