重型飞机拦阻系统的仿真可视化研究

2013-09-18 10:30昇,吴
微型电脑应用 2013年7期
关键词:应用程序可视化建模

袁 昇,吴 娟

0 引言

飞机拦阻系统的应用愈来愈引起世界各国航空领域的高度重视,已成为机场的重要常务保障设施,其作用是对正常降落和因意外原因冲出跑道的飞机进行拦阻,保障人机安全。随着航空技术的迅速发展和现代战争对快速反应能力的需要,拦阻设备的作用已从单一的应急安全防护装置,向正常着陆拦阻设施发展。目前我国有代表性的飞机拦阻设备有如国产 LZ—II 型飞机拦阻设备、LZ—III 型飞机拦阻设备和液压控制摩擦盘式飞机拦阻设备。在以往设计中大多针对的是低吨位飞机,随着我国飞机拦阻设备技术的快速发展,以及大型飞机的研制,对重型飞机拦阻系统的研制将成为趋势。可视化技术作为一门新颖的技术,将其应用于重型飞机拦阻系统的仿真,可直观反映各参数对重型飞机拦阻效果产生的影响。

本文在重型飞机拦阻系统的数学模型的基础上,对飞机拦阻可视化仿真过程进行建模分析, 并建立各仿真模型, 在此基础上进行整个拦阻过程的可视化仿真。通过可视化技术可以逼真地实时重现整个飞机拦阻的过程,反映出飞机的拦阻状态。

1 飞机拦阻系统的组成

飞机拦阻系统主要由立网机构、拦阻网体、水涡轮制动器等组成,具体结构,如图1所示:

图1 飞机拦阻系统

飞机拦阻系统制动机构采用水涡轮制动器,分别安装在距起降方向跑道端头200米至300米左右的保险跑道上。拦阻设备结构组成包括了水涡轮制动器、拦阻网带、立网机构、网体剪切离合器、电控系统、网带回收复位机构等部分。进行飞机拦阻时,水涡轮制动器通过拦阻网带拦阻飞机,不断吸收撞网飞机的动能,使飞机做减速运动,直至将飞机安全拦停。最终,飞机的动能转化为制动器内拦阻液体的热能,以及其他形式的摩擦发热,如地面摩擦力,运动空气阻力等等。

2 系统的仿真计算

Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统,既适于自上而下(Top—down)的设计流程,又适于自下而上(Bottom—up)逆程设计。在重型飞机拦阻系统的数学模型的基础上,应用 Simulink仿真软件建立重型飞机拦阻系统的仿真模型,如图2所示:

图2 重型飞机拦阻系统仿真模型

图2多数模块须根据前面的数学模型和参数自身的定义来构造,Simulink可以创建这些模块的内部参数对话框,仿真过程中能方便地修改这些参数。为了便于VC对仿真模型变量的调用,模型输入参数用变量代替,模型的输出调用To Workspace模块,将其输出至工作空间,准备与VC的数据交换。

3 可视化仿真的实现

3.1 可视化仿真设计概述

仿真可视化,就是把仿真中的数字信息变为直观的、以图形图像形式表示的、随时间和空间变化的仿真过程呈现在研究人员面前,使研究人员能够知道系统中变量之间、变量与参数之间、变量与外部环境之间的关系,直接获得系统的静态和动态特性。仿真可视化不仅是用图形与图像来表征仿真计算结果的,更重要的是为研究人员提供了观察数据交互作用的手段,实时地跟踪并有效地驾驭数据模拟与实验过程。

本飞机拦阻系统由VC控制整个系统的用户界面、仿真计算和可视化,采用Creator建立场景中的模型,通过Vega将这些孤立的模型统一于同一场景之下。VC通过Matlab引擎调用图2模型,代入变量值进行计算,驱动场景中飞机的实时运行,实现飞机拦阻的可视化。其中拦阻网的拉伸效果要通过Opengl来实现。整个系统的结构框图,如图3所示:

图3 系统结构框图

3.2 三维仿真模型的建立

三维实体模型的创建是进行可视化仿真的基础和重要步骤之一,模型建立的质量直接影响仿真的逼真度和实时性。Multigen Creator系列软件是Multigen-Paradigm公司专门针对可视化仿真行业应用特点,推出的实时可视化三维建模软件系统。基于对实时应用优化的OpenFlight数据格式,Multigen提供了强大的多边形建模、矢量建模以及大面积地形精确生成等功能,用户能够高效地生成实时三维模型数据库,并与后续的实时仿真软件紧密结合。Creator 与许多重要的 VR 开发环境兼容,其主要模块包括:基本建模环境模块、地形建模模块、仪表建模模块和标准道路建模模块等。用户可以根据实际需要选用合适的模块进行工作。

本文利用Multigen Creator主要构建了机场跑道、立网支架、水涡轮制动器、某重型飞机以及一些必要的地景草坪等场景中包括的素材。其中,水涡轮三维模型创建了 DOF节点,可以控制它的所有节点按照设置的自由度进行移动或旋转运动,节省了很多代码,为可视化仿真带来了很大的便利,如图4所示:

图4 Creator用户界面与DOF节点

3.3 虚拟场景的建立

Vega是一套完整地用于开发交互式、可视化仿真应用的软件平台和工具集,它最基本的功能是驱动、控制、管理虚拟场景并能够方便地实现大量特殊视觉和声音效果。主要有系统配置模块、图形状态模块、管道窗口模块、渲染通道模块、模型对象模块、观察者模块、运动模式模块等。Vega包含了一整套可以提供最充分的软件控制,同时,又具有最大灵活性的C语言应用程序接口(API),一个可以大大简化应用程序开发过程的图形环境用户界面——Lynx,多种方便实用的可视化编辑工具,以及丰富的实用库函数、大量的可供使用和参考的源程序。

本文利用Vega的Lynx将Creator创建的三维模型导入虚拟场景,并调整三维模型位姿及相互之间的关系,运用动态预览工具观察效果,最后可生成用于Vega程序的应用程序定义文件——ADF文件,建立起虚拟场景。

3.4 可视化仿真的实现

3.4.1 Vega开发函数库简介

Vega本质上是一套与图形硬件无关的开发高级视景仿真应用的软件接口,它包含了几百个用 C语言编写的应用程序编程接口(API)函数,可以通过这些函数高效地对虚拟场景进行实时的交互控制,从而实现复杂的视景仿真应用。Vega将这些API函数封装在类中,每个Vega类都包含了实现特定功能的各种参数、以及设置和调整他们的功能函数,而这些类都包含在Vega开发函数库和Vega实用函数库两个常用函数库中,如图5所示:

图5 Vega函数库结构

3.4.2 Matlab 引擎及其库函数

Matlab引擎(engine),是指一组Matlab供给的接口函数,支撑C/C++、C#等,经由这些接口函数,用户可以在其它编程语言中实现对Matlab的调用。Matlab 引擎让Matlab 完成数学计算、绘图等功能。Matlab 引擎库函数主要包括engOpen, engClose, engEvalString , engGetArray, engPutArray等,主要完成启动、关闭Matlab引擎、执行命令字符串、从Matlab 工作空间中拷贝变量名、将变量放入Matlab 空间等功能。

在编写应用程序时, 可以用VC作前台界面, 而将仿真计算等任务交给Matlab在后台完成,这样可以大大缩短软件开发周期。调用Matlab引擎时, 我们的程序只需与较小的引擎库连接, 而不必与整个 Matlab 相连, 这样可节省系统资源。

3.4.3 可视化仿真整体设计

直接使用Windows API进行Vega应用程序的开发是一个非常繁琐的过程,很多基础工作都需要自己动手写,编写代码的工作量非常大。因此,本文采用一种高效而且简单的方法——利用可视化的应用程序开发工具 Visual C++编写基于MFC的Vega应用程序。MFC即微软基础类库,是用来编写 Windows应用程序的 C++类库,封装了大部分的Windows API函数、OLE API函数、DAO API函数、WinSocket API函数、IS API等底层函数,并提供了更高级的应用程序接口,从而简化了Windows应用程序的编写。

MFC 应用程序框架的核心是文档/视图(Document/View)结构,可以把应用程序中负责数据管理的程序代码和负责数据显示的程序代码分离开。本文采用单文档(SDI)主框架窗口结构实现可视化控制平台的设计。控制界面窗口的菜单栏、工具栏、状态栏等都由 MFC APPWizard创建,只需要修改其中的少量代码或重写虚函数,即可改变控制界面的风格、功能等。

本系统调用Matlab进行动态仿真计算,并将动态仿真结果实时地动画显示,整个可视化仿真过程的控制由VC实现。其中VC通过调用Matlab引擎的库函数engOpen实现VC与 Matlab的连接,利用 engEvalString , engGetArray,engPutArray等库函数进行数据的交换;通过调用Vega的开发函数库中的函数vgInitSys、vgDefineSys、vgSynFrame 、vgGetObserv等实现虚拟场景的视景控制。由于Vega不支持中文字体的显示,所以本文应用Opengl库函数实现虚拟场景的中文字体显示,将拦阻过程变量数据显示在虚拟场景中。系统在运行中可以打开参数设置对话框,改变拦阻参数,观察不同参数对拦阻效果的影响,参数设置窗口,如图,6所示:

图6 参数设置窗口

拦阻运行结束后,用户可以选择查看拦阻过程物理变化曲线,如速度曲线、过载曲线、带拉力曲线等,物理变量变化曲线,如图7所示,整个仿真可视化系统运行界面,如图8所示:

图7 拦阻过程物理变量变化曲线

图8 系统运行界面

4 结束语

本飞机拦阻系统运用VC++的MFC框架编写用户控制界面,充分利用Matlab的高效计算、计算精度高和Vega、Creator的易用性、高效性、集成性等优点,提出了一种基于VC的重型飞机拦阻系统的仿真可视化方法,实现了重型飞机拦阻过程的可视化仿真,为飞机拦阻系统的研究,提供了更直观形象的研究途径,对于设计飞机拦阻系统具有一定的指导意义,可广泛应用于科研领域。

[1]赵开宇,吴娟,李永恒. 飞机拦阻过程的三维动画模拟[J].微型电脑应用,2011,27(4):43-46.

[2]吴娟,孙娟萍,杜娟. 飞机拦阻系统的最优拦阻力设计[J]. 飞行力学,2009,27(3):23-26.

[3]吴娟,孙娟萍,杜娟. 飞机拦阻系统的最优拦阻力设计[J]. 飞行力学,2009,27(3):23-26.

[4]吴娟,符芳涌,肖勇. 重型飞机拦阻系统的仿真分析[J].系统仿真学报,2009,21(20):6643-6646.

[5]吴娟,符芳涌,肖勇. 重型飞机拦阻系统的仿真分析[J].系统仿真学报,2009,21(20):6643-6646.

[6]明日科技,等.Visual C++开发技术大全[M].北京:人民邮电出版社,2007.

猜你喜欢
应用程序可视化建模
基于CiteSpace的足三里穴研究可视化分析
思维可视化
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
基于CGAL和OpenGL的海底地形三维可视化
删除Win10中自带的应用程序
“融评”:党媒评论的可视化创新
谷歌禁止加密货币应用程序
基于PSS/E的风电场建模与动态分析
不对称半桥变换器的建模与仿真
三元组辐射场的建模与仿真