多模导航三维动态可视化仿真平台的构建方法技术

技术编号:15639970 阅读:93 留言:0更新日期:2017-06-16 02:56
本发明专利技术公开一种多模导航三维动态可视化仿真平台的构建方法,本发明专利技术的具体步骤包括:在VC++和OSG三维渲染引擎环境下,基于MFC微软基础类库搭建人机交互平台,利用OSGEarth地形渲染工具包渲染三维数字地球场景及自然环境,利用三维建模软件建立飞机的三维模型和机场的虚拟仿真场景模型,并加载到三维数字地球场景中。获取飞行航线关键点数据,经处理得到插值航线点数据,用于驱动飞机飞行。在飞机飞行过程中,利用漫游器跟踪观察飞机,利用事件处理器更新飞机的飞行数据,并实时显示飞行数据。本发明专利技术具有易进行二次开发、实时高效的优点,提高了数据显示的实时效率。

【技术实现步骤摘要】
多模导航三维动态可视化仿真平台的构建方法
本专利技术属于通信
,更进一步涉及计算机模拟仿真
中的一种多模导航三维动态可视化仿真平台的构建方法。本专利技术可对多模导航系统提供一个具有三维可视化效果的动态的仿真平台,该平台可用于为多模导航系统硬件设备的测试提供动态的飞行相关数据。
技术介绍
飞机导航系统是可以确定飞机的位置并引导飞机按预定航线飞行的整套设备。早期的飞机主要靠目视导航,后来逐渐出现了仪表着陆系统(ILS)、伏尔导航系统(VOR)和微波着陆系统(MLS),着重保障民用航空在进近和着陆过程中的飞行安全,塔康系统(TACAN),着重保障巡航过程中的飞行安全。由以上几种导航系统组合起来所构成的性能更为完善的导航系统称为多模导航系统,本文针对多模导航系统,意在为其提供三维动态可视化的仿真平台。许志在其发表的硕士论文“塞斯纳172飞机飞行数据可视化仿真技术”(中国民用航空飞行学院硕士论文.四川.2015.05)中通过对大数据的分析与处理,搭建了一个基于塞斯纳172飞机的飞行数据可视化仿真平台。该平台的仿真方法是对FlightGear进行二次开发实现了飞行数据的状态重现,利用C++语言编程实现飞行数据的UDP通信并使用VS2010开发了数字仪表客户端,实现了重要飞行参数与飞行状态的显示。该方法存在的不足之处是,对FlightGear进行二次开发实现飞行数据可视化平台;使用VS2010开发数字仪表客户端显示飞行参数与飞行状态,在飞行数据可视化平台与数字仪表客户端之间利用C++语言编程实现飞行数据的UDP通信,飞行数据从飞行数据可视化平台传输到数字仪表客户端的过程中产生了延时,影响了飞行数据显示的实时效率。哈尔滨工程大学拥有的专利技术“一种近水面飞行器机动飞行视景仿真方法”(专利号:201210228942.6公开号:CN102800130B)中公开了一种近水面飞行器机动飞行视景仿真方法。该方法使用VisualStudio2003.NET软件和VegaPrime视景仿真软件相结合的方法进行近水面飞行器机动飞行视景仿真。利用Creator软件建立海浪和岛屿模型,使用LynXPrime图形界面设计软件进行三维场景模型匹配及初始化设置,采用粒子系统和静态图像纹理映射的方法进行特殊效果模型的实现,通过键盘、鼠标触发事件实现人机交互漫游、视角切换和实体信息查询响应。但是,该专利技术仍然存在的不足之处是,VegaPrime作为一个需要付费且不开源的视景仿真软件,在一定程度上提高该视景仿真的成本,并且不利于对该技术进行二次开发,无法在现有的软件上进行定制修改和功能扩展。
技术实现思路
本专利技术的目的在于克服上述已有技术的不足,提供一种多模导航三维动态可视化仿真方法,以解决地面模拟仿真试验所需试验设备复杂、试验成本极高、可重复性差的问题。本专利技术的具体思路是:在VC++和OSG三维渲染引擎环境下,基于MFC微软基础类库搭建人机交互平台,利用OSGEarth地形渲染工具包渲染三维数字地球场景及自然环境,利用三维建模软件建立飞机的三维模型和机场的虚拟仿真场景模型,并加载到三维数字地球场景中。获取飞行航线关键点数据,经处理得到插值航线点数据,用于驱动飞机飞行。在飞机飞行过程中,利用漫游器跟踪观察飞机,利用事件处理器更新飞机的飞行数据,并实时显示飞行数据。本专利技术实现上述目的的具体步骤如下:(1)搭建人机交互平台:在VC++和OSG三维渲染引擎环境下,基于MFC微软基础类库搭建人机交互平台;(2)渲染三维数字地球场景及自然环境:(2a)在已搭建的人机交互平台上,利用OSGEarth地形渲染工具包,对三维数字地球场景进行渲染;(2b)在已搭建的人机交互平台上,利用OSGEarth地形渲染工具包,对太阳、月亮、星空场景以及云、雨、雪天气效果进行渲染;(3)获取飞行航线关键点数据:从国际民用航空组织ICAO统一的国际民航技术标准和国际航行规则中提取民用航空飞行航线的数据信息,并从中拣选航线关键点的经度、纬度、高度及飞行速度信息;(4)从首个飞行航线关键点开始,依次取两个关键点,得到相邻三个关键点;(5)判断相邻三个关键点的位置是否在同一条直线上,若是,则执行步骤(6),否则,执行步骤(7);(6)等距插值处理:(6a)对飞行航线关键点中相邻三个关键点中的前两个关键点进行直线连接,得到前两个关键点间的线段;(6b)在前两个关键点间的线段上,等距的插入多个点,得到插值航线点;(7)拐角平滑处理:(7a)依次连接飞行航线关键点中相邻三个关键点;(7b)在飞行航线关键点中相邻三个关键点的第二个关键点前后相距等长度的位置处分别插入一个点,得到两个插入点;(7c)以两个插入点为切点作垂线,相交得到交点;(7d)以交点为圆心绘制两插入点间的圆弧曲线;(7e)在两插入点间的圆弧曲线上,等弧度的插入多个点,得到插值航线点;(8)判断所有相邻的飞行航线关键点间是否都已得到插值航线点,若是,则执行步骤(10),否则,执行步骤(9);(9)从上一次所选的飞行航线关键点的第二个关键点开始,依次取两个关键点,得到相邻三个关键点后,执行步骤(5);(10)建立模型:利用三维动画渲染制作软件3DSMAX和三维虚拟仿真建模软件MultigenCreator,建立飞机的三维模型和机场的虚拟仿真场景模型;(11)加载模型:(11a)在三维数字地球场景中,加载机场的虚拟仿真场景模型,所加载的模型覆盖三维数字地球场景中已渲染生成的机场地形和影像;(11b)将飞机的三维模型加载到飞行航线起始点处,调整飞机机身水平,机头朝向飞行航线方向;(11c)对机场的虚拟仿真场景模型位置进行调整,使飞机的三维模型位于虚拟仿真场景模型中的飞行跑道起始端,飞行航线平行于虚拟仿真场景模型中的飞行跑道平面;(12)驱动飞机飞行:(12a)根据飞机完成一次飞行过程所需要经过的阶段,从插值航线点中提取与各个阶段对应的航线点;(12b)创建多个驱动文件,分别存储不同飞行阶段的航线点以及飞机完成一次飞行任务的航线点;(12c)将飞机完成一次飞行过程的驱动文件设置为初始的驱动文件,驱动飞机飞行;(12d)在进行飞行过程阶段性仿真时,打开并读入对应的飞行阶段的驱动文件,驱动飞机飞行;(13)漫游器跟踪观察飞机:在启动飞机飞行时,将漫游器的跟踪对象设置为飞机的三维模型对象,实现飞机飞行过程的实时跟踪观察;(14)显示俯视缩略图:在飞行仿真场景中创建新的视口,显示飞行仿真场景的俯视缩略图;(15)显示飞行数据:在屏幕每一帧的刷新过程中,利用事件处理器更新飞机的飞行数据,并实时显示飞行数据。本专利技术与现有技术相比具有如下优点:第一,本专利技术是在VC++和OSG三维渲染引擎环境下,基于MFC微软基础类库搭建人机交互平台,克服了现有技术中不利于对现有技术进行二次开发,无法在现有的软件上进行定制修改和功能扩展的缺陷,使本专利技术可以在OSG三维渲染引擎基础上进行二次开发,实现定制修改和功能扩展。第二,本专利技术在屏幕每一帧的刷新过程中,利用事件处理器更新飞机的飞行数据,并实时显示飞行数据,克服了现有技术中飞行数据从飞行数据可视化平台传输到数字仪表客户端的过程中产生了延时,影响了飞行数据显示的实时效率的缺陷,使本专利技术可以在屏幕每一帧本文档来自技高网
...
多模导航三维动态可视化仿真平台的构建方法

【技术保护点】
一种多模导航三维动态可视化仿真平台的构建方法,包括如下步骤:(1)搭建人机交互平台:在VC++和OSG三维渲染引擎环境下,基于MFC微软基础类库搭建人机交互平台;(2)渲染三维数字地球场景及自然环境:(2a)在已搭建的人机交互平台上,利用OSGEarth地形渲染工具包,对三维数字地球场景进行渲染;(2b)在已搭建的人机交互平台上,利用OSGEarth地形渲染工具包,对太阳、月亮、星空场景以及云、雨、雪天气效果进行渲染;(3)获取飞行航线关键点数据:从国际民用航空组织ICAO统一的国际民航技术标准和国际航行规则中提取民用航空飞行航线的数据信息,并从中拣选航线关键点的经度、纬度、高度及飞行速度信息;(4)从首个飞行航线关键点开始,依次取两个关键点,得到相邻三个关键点;(5)判断相邻三个关键点的位置是否在同一条直线上,若是,则执行步骤(6),否则,执行步骤(7);(6)等距插值处理:(6a)对飞行航线关键点中相邻三个关键点中的前两个关键点进行直线连接,得到前两个关键点间的线段;(6b)在前两个关键点间的线段上,等距的插入多个点,得到插值航线点;(7)拐角平滑处理:(7a)依次连接飞行航线关键点中相邻三个关键点;(7b)在飞行航线关键点中相邻三个关键点的第二个关键点前后相距等长度的位置处分别插入一个点,得到两个插入点;(7c)以两个插入点为切点作垂线,相交得到交点;(7d)以交点为圆心绘制两插入点间的圆弧曲线;(7e)在两插入点间的圆弧曲线上,等弧度的插入多个点,得到插值航线点;(8)判断所有相邻的飞行航线关键点间是否都已得到插值航线点,若是,则执行步骤(10),否则,执行步骤(9);(9)从上一次所选的飞行航线关键点的第二个关键点开始,依次取两个关键点,得到相邻三个关键点后,执行步骤(5);(10)建立模型:利用三维动画渲染制作软件3DS MAX和三维虚拟仿真建模软件Multigen Creator,建立飞机的三维模型和机场的虚拟仿真场景模型;(11)加载模型:(11a)在三维数字地球场景中,加载机场的虚拟仿真场景模型,所加载的模型覆盖三维数字地球场景中已渲染生成的机场地形和影像;(11b)将飞机的三维模型加载到飞行航线起始点处,调整飞机机身水平,机头朝向飞行航线方向;(11c)对机场的虚拟仿真场景模型位置进行调整,使飞机的三维模型位于虚拟仿真场景模型中的飞行跑道起始端,飞行航线平行于虚拟仿真场景模型中的飞行跑道平面;(12)驱动飞机飞行:(12a)根据飞机完成一次飞行过程所需要经过的阶段,从插值航线点中提取与各个阶段对应的航线点;(12b)创建多个驱动文件,分别存储不同飞行阶段的航线点以及飞机完成一次飞行任务的航线点;(12c)将飞机完成一次飞行过程的驱动文件设置为初始的驱动文件,驱动飞机飞行;(12d)在进行飞行过程阶段性仿真时,打开并读入对应的飞行阶段的驱动文件,驱动飞机飞行;(13)漫游器跟踪观察飞机:在启动飞机飞行时,将漫游器的跟踪对象设置为飞机的三维模型对象,实现飞机飞行过程的实时跟踪观察;(14)显示俯视缩略图:在飞行仿真场景中创建新的视口,显示飞行仿真场景的俯视缩略图;(15)显示飞行数据:在屏幕每一帧的刷新过程中,利用事件处理器更新飞机的飞行数据,并实时显示飞行数据。...

【技术特征摘要】
1.一种多模导航三维动态可视化仿真平台的构建方法,包括如下步骤:(1)搭建人机交互平台:在VC++和OSG三维渲染引擎环境下,基于MFC微软基础类库搭建人机交互平台;(2)渲染三维数字地球场景及自然环境:(2a)在已搭建的人机交互平台上,利用OSGEarth地形渲染工具包,对三维数字地球场景进行渲染;(2b)在已搭建的人机交互平台上,利用OSGEarth地形渲染工具包,对太阳、月亮、星空场景以及云、雨、雪天气效果进行渲染;(3)获取飞行航线关键点数据:从国际民用航空组织ICAO统一的国际民航技术标准和国际航行规则中提取民用航空飞行航线的数据信息,并从中拣选航线关键点的经度、纬度、高度及飞行速度信息;(4)从首个飞行航线关键点开始,依次取两个关键点,得到相邻三个关键点;(5)判断相邻三个关键点的位置是否在同一条直线上,若是,则执行步骤(6),否则,执行步骤(7);(6)等距插值处理:(6a)对飞行航线关键点中相邻三个关键点中的前两个关键点进行直线连接,得到前两个关键点间的线段;(6b)在前两个关键点间的线段上,等距的插入多个点,得到插值航线点;(7)拐角平滑处理:(7a)依次连接飞行航线关键点中相邻三个关键点;(7b)在飞行航线关键点中相邻三个关键点的第二个关键点前后相距等长度的位置处分别插入一个点,得到两个插入点;(7c)以两个插入点为切点作垂线,相交得到交点;(7d)以交点为圆心绘制两插入点间的圆弧曲线;(7e)在两插入点间的圆弧曲线上,等弧度的插入多个点,得到插值航线点;(8)判断所有相邻的飞行航线关键点间是否都已得到插值航线点,若是,则执行步骤(10),否则,执行步骤(9);(9)从上一次所选的飞行航线关键点的第二个关键点开始,依次取两个关键点,得到相邻三个关键点后,执行步骤(5);(10)建立模型:利用三维动画渲染制作软件3DSMAX和三维虚拟仿真建模软件MultigenCreator,建立飞机的三维模型和机场的虚拟仿真场景模型;(11)加载模型:(11a)在三维数字地球场景中,加载机场的虚拟仿真场景模型,所加载的模型覆盖三维数字地球场景中已渲染生成的机场地形和影像;(11b)将飞机的三维模型加载到飞行航线起始点处,调整飞机机身水平,机头朝向飞行航线方向;(11c)对机场的虚拟仿真场景模型位置进行调整,使飞机的三维模型位于虚拟仿真场景模型中的飞行跑道起始端,飞行航线平行于虚拟仿真场景模型中的飞行跑道平面;(12)驱动飞机飞行:(12a)根据飞机完成一次飞行过程所需要经过的阶段,从插值航线点中提取与各个阶段对应的航线点;(12b)创建多个驱动文件,分别存储不同飞行阶段的航线点以及飞机完成一次飞行任务的航线点;(12c)将飞机完成一次飞行过程的驱动文件设置为初始...

【专利技术属性】
技术研发人员:张辉杨志妮陈卓然
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1