版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实时飞行仿真显示系统设计刘意华;涂春霞【摘要】Incurrentdesignsoftheaircraft,dataanalysesrelyonthejointimplementationofmultipleaircraftinstruments,anditisinflexibleinoperation,theresearchanddevelopment,production,maintenanceandextensionoftheequipmentsareinconvenientaswell.Tosolvetheproblemaddressedabove,wedesignareal-timedisplaysystemofsimulativeflightusingvirtualinstrumenttechnology,whichusesadistributedinteractivenetworkstructure.Inthispaper,wediscusstheOpenGLandC++Builderhybridprogramming.Thedisplaysystema-doptsmathematicalsimulationtosimulatetheenvironmentandtheequipmentinflight,somekeytechniquesinthisareaareelaboratelyelucidated,andareappliedtothedatacalculationofthereal-timedisplaysystemofsimulativeflight.Itdoesincreasetheconvenienceofflyingdataanalysisandimprovethetestingmethods.Theapplicationeffectshowsthatthissystemrunswithreliability,andisadaptabletoacertainextent;itimprovestheefficiencyofdataanalysisandtest.%目前飞行器设计中的数据分析,依赖多台飞行器仪器共同完成,操作不灵活;设备的研制、生产、维修、扩展也很不方便.采用虚拟仪器技术设计实时飞行仿真显示系统,该系统采用分布交互式网络结构.讨论了OpenGL和C++Builder混合编程,采用数学仿真,仿真环境及设备.重点阐述了其中的一些关键性的技术,并将其运用于实时飞行仿真显示系统的数据计算中,提高了飞行数据研究的便利性和测试方法.应用结果表明该系统运行可靠,具有一定的适用性,提高了数据分析、测试的效率.【期刊名称】《计算机应用与软件》【年(卷),期】2012(029)002【总页数】4页(P231-233,265)【关键词】虚拟仪器;数据采集处理中心;信号;数据【作者】刘意华;涂春霞【作者单位】贵航飞机设计研究所贵州安顺561000;贵航飞机设计研究所贵州安顺561000【正文语种】中文【中图分类】TP391.90引言随着技术的发展,仿真技术的应用在扩大。采用实物进行飞行实时测试需要多台元器件共同完成,且维护、扩展、操作、运输极不方便。通过飞行中的数据,直观地再现飞行状态。因此实时飞行仿真显示系统适用于研究开发、方案论证和设计阶段。本系统采用在工程应用领域内连续系统仿真的数学仿真方法,并模拟生成人的感觉环境的各种物理效应设备(包括视觉、动感等人能感知物理环境的模拟生成、显示系统)。为了适应在数字计算机上进行数学仿真,按变量(包括按时间)进行离散化处理,以及根据精度与计算速率要求选用适当算法,将原始数据模型变换为仿真数学模拟[1]。实时飞行仿真显示系统具有仿真操纵系统、清晰的仿真显示画面、逼真度高的飞行动力学特性、连续的性能仿真、良好的人机交互界面,具有动态感和交互性的环境仿真。通过建立数学模拟、利用先进的虚拟和计算机仿真技术,仿真再现飞行显示系统画面,可以通过设置各种飞行参数和条件实施飞行模拟操作,可以通过CRT、打印机、绘图仪显示输出仿真结果。采用实时飞行仿真显示系统可以实时运行,也可以在非实时条件下运行。1实时飞行仿真显示系统设计方案本系统采用分布式交互协同工作,以模块化的建模方法,仿真飞行显示系统画面。实时飞行仿真显示系统大体由数据采集处理中心模块、子系统模拟器模块、仿真显示器模块、飞行控制台模块组成,结构如图1所示。图1实时飞行仿真显示系统总体结构子系统模拟器在网络终端提供各种飞行实时数据,它是通过键盘指令或文件的数据源,向数据采集处理中心提供所需数据;数据采集处理中心负责控制网络中的数据源,并且利用子系统模拟器的数据源,加载飞机运动方程,转化为飞行状态数据,向仿真显示器提供飞行数据;仿真显示器除了显示飞行数据及画面,还提供外部环境画面。子系统模拟器和显示系统模块在网络中通过点到点的方式连接到数据采集处理中心上,由该数据采集处理中心向目的终端传送信息。数据采集处理中心执行集中式通信控制策略,在此网络结构中任何两个终端要进行通信都必须经过数据采集处理中心。由飞行控制台传来的操纵控制指令提供飞行输入数据,在飞行控制模块中,根据操纵指令和控制规律计算飞行状态,由起落架力和力矩模块负责计算飞机起飞和降落时在地面运动的力和相应的力矩,气动力/力矩模块计算气动系数和气动力/力矩;飞机六自由度运动方程模块解算飞机六自由度非线性全量运动方程,计算出姿态、位置、加速度和角速度等飞行状态信息,并将飞行状态信息在反馈给气动系数模块、起落架力和力矩模块,同时输出到实时飞行仿真显示系统的其他子系统。飞行仿真的主要功能是对飞行控制系统的输入作出反应,对飞机飞行状态进行仿真[2];解算飞机的六自由度非线性运动方程;并对环境变化、飞机本身的变化和飞行造成的影响进行仿真解算。在Windows环境下,采用C++Builder和OpenGL作为编程工具,运用面向对象的设计方法,开发实时飞行仿真显示系统。该系统按指定机种提供的真实图形仿真飞行画面,数据采集处理中心负责把画面显示数据存放在显示数据存储器中;仿真显示器负责从显示数据存储器中读取数据;仿真显示器定时调度数据画面,并对所有显示符号、线段、数字的静态及动态象素坐标进行实时计算,生成仿真飞行画面[3];仿真显示器实时接收解算数据采集处理中心所得数据,并将其作为仿真显示器的驱动数据,为充分保证飞行状态的准确性和连续性,对数据进行精度提取和高速插值计算。同时,采用融合消隐技术和抗锯齿算法解决飞行画面中抖动和旋转时出现的锯齿问题。数据传输系统采用基于UDP传输协议的Socket编程技术,结合数据压缩和调度算法,解决网络编程时数据安全可靠传输的技术难题。为了提高数据传输的稳定性和实时性,数据采集处理中心同时开设多个端口,一些端口用于发送飞机的飞行数据,一些端口分别实时接收其他子系统模拟器发送的飞行数据,并用其作为仿真飞行显示的驱动数据。实时飞行仿真显示系统的网络结构,体积小、耗费低,便于管理、维护、调试;控制简单,建网容易。通过构建飞行动力学模型,实现飞机的俯仰、滚转、偏航等飞行姿态的模拟,模拟逼真,实时性强。OpenGL3D声音引擎仿真飞行过程中听到的主要环境音效和实现语音提示功能,OpenGL具有表现多通道三维位置音效的能力,主要是在来源物体、音效缓冲和收听者中编码。来源物体包含一个指向缓冲区的指标、声音的速度、位置和方向,以及声音的强度。通过采用OpenGL纹理控制,基于glut核心函数库编程、视点控制处理、数据传输,自主开发场景画面,实时动态渲染,运行效率高,场景模拟真实感强,实现了实时飞行仿真显示系统图形图像显示。2实时飞行仿真显示系统软件功能结构图2实时飞行仿真显示系统软件功能结构数据采集处理中心有一个主线程和多个子线程。主线程负责终端的接入连接请求,然后创建一个子线程来处理这个终端网络连接。每个子线程按照既定的协议与数据采集处理中心通讯。在网络通讯中,当其中一个终端正在向数据采集处理中心发送数据块时,其它某个终端正在向数据采集处理中心请求这个数据块时,数据采集处理中心采用互斥的方法,将完全接收完整个数据块,然后才向请求的终端发送完整的数据块。终端向数据采集处理中心发送数据,数据采集处理中心保存这些数据,终端也可以向数据采集处理中心请求数据。所以每个终端有可能是很多数据的发送者或请求者。在同一时间内,飞行实时图形仿真系统可能有多个数据的发送和请求终端存在,数据的读写速度成为数据采集处理中心的重要性能指标。数据采集处理中心的采用消息列表的方式,提高数据的读取处理,为数据的可靠性提供保障[4]。网络通讯采用MIL-STD-1553B总线通讯规则[5],该标准确定了美国军用飞机数字式数据总线的各种要求。网络数据消息块包含有指令字、状态字、数据字。并相应设计了10种消息格式,即〃信息传输格式”。在此系统设计中,增加了消息的生存时间字,用于记录消息的生存时间,判定消息是否应该驻留在系统中,还是该删除。当要求通信的终端发出通信请求后,数据采集处理中心查看被叫终端是否空闲,是否建立通路响应,从而决定是否能建立双方的物理连接。终端向数据采集处理中心请求数据时,先向数据采集处理中心询问数据是否存在,数据采集处理中心收到请求数据命令,在消息列表查询,如果请求的数据不存在,数据采集处理中心向请求数据的终端发送〃失败”消息。如果请求的数据存在,数据采集处理中心向请求数据的终端发送〃成功”消息,然后向请求的终端发送请求的数据。数据采集处理中心同时也处理从各个终端接收到的数据,向子系统模拟器模块、显示系统模块发送相应数据,仿真显示器从正视、后视、左视、右视等角度直观反映飞行状态。数据采集处理中心数据包格式如表1所示。表1数据包格式―字123..._名称网络标识连接状态生存时间…子系统模拟器提供实时飞行仿真显示系统必须的飞行用数据,其数据源读入有两种方式:一种为人工设置(分为静态和动态数据),另一种为原始飞行数据文件(文件流fstream读入飞行数据文件)。实时飞行仿真系统一般运动动力学方程组为:Fx,Fy,Fz;u,v,w;p,q,r为作用在飞机上的所有外力的和F,飞机的质心速度v,质心转动的角速度w在机体坐标系三个坐标轴Ox,Oy,Oz上的分量;Ix,Iy,Iz为转动惯量。动力学方程组为力和力矩方程,利用坐标转换关系计算飞机相对于地面固定坐标系的方程和飞行轨迹运动学方程如下:仿真显示器需要使用一种计算能力很强的计算机语言对其数据进行处理,仿真显示飞行画面。OpenGL提供了数百个库函数,可以方便地绘制具有真实感的3D图形。图形的绘制只是一部分工作,更多的工作集中在场景数据结构、图形对象、三维交互和图形用户界面的设计上[6]。OpenGL与窗口系统无关,不提供任何交互手段,必须由程序员自己编写所有的交互功能。它的大部分指令是立即接口操作方式,说明对象可以马上进行硬件操作[7]。本系统在仿真显示器图形设计时,定义了视场局部坐标系以及相应的图形变换。采用最小单元法,其中基础对象定义了矢量、矩阵运算;常用几何图元的绘制(线、圆、刻度带等),图形函数将数据转化为几何模型绘制出来,使用继承方法扩充新的几何图元;点阵中文字体用于可视化图形的标注。该系统设计中汉字的形状复杂多变,所以显示汉字较难,采用汉字显示中的线性列表方法,先由CreateFontIndirect函数创建需要的中文字体、然后判断每一个字符是否为双字节,如果是就多处理一个字节,创建中文显示列表、运用投影矩阵和模型变换矩阵显示需要的文字。实时飞行仿真显示系统显示画面具有固定的视场范围[8],根据显示器画面的视场范围,计算实时飞行仿真显示系统的仿真显示器像素换算比例K,用以确定元素在仿真显示器中的位置。环境、动画场景的实时处理,是将图像存储在帧缓存中,帧缓存是多个显示缓存的逻辑集合,通过双缓存技术完成环境、动画场景的实时显示。环境形态的变化、位置的变化以及颜色的变化通过网络数据及程序的定时器控制。图形显示工作流程如图3所示。图3图形显示工作流程C++Builder具有快速的可视化开发环境,内置了100多个完全封装了Windows公用特性且具有完全可扩展性的可重用控件[9]。利用相关控件组建外部接口模块、操作模块。夕卜部接口主要完成人机界面的设计,为使用者提供有好方便的操作图形创建首先检索指定窗口的客户区域环境的句柄Picture_hdc=GetDC(PanePicture->Handle);再创建一个新的Open-GL渲染描述表,此描述表适用于绘制到由Picture_hdc返回的设备,这个渲染描述表将有和设备上下文一样的像素格式Picture_hrc=WglCreateContext(Picture_hdc);然后设定OpenGL当前线程(线程相关性)的渲染环境,以后这个线程所有的Open-GL调用都是在这个Picture_hdc标识的设备上绘制wglMakeCurrent(Picture_hdc,Picture_hrc)。仿真显示器画面坐标系根据国家标准规定的坐标轴系定义,实时飞行仿真显示系统画面的生成采用光栅扫描法。与真实飞行显示系统相比,某检测画面如下:图4为某一真实显示器的画面,图5为仿真显示器的画面。经检测证明:实时飞行仿真显示系统能满足飞行模拟使用,数据显示准确,画面清晰、正确,适合飞行仿真试验研究。图4真实显示器的画面图5仿真显示器的画面3结语本文介绍了采
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年江西省高安市高考历史自测卷附完整答案【易错题】
- 新媒体营销期末考试试卷4及答案
- 2026安阳中医院面试题及答案
- 爬行类繁育工岗前操作安全考核试卷含答案
- 汽车饰件制造工岗前情绪管理考核试卷含答案
- 石脑油吸附分离装置操作工安全应急水平考核试卷含答案
- 山石工岗前实操知识考核试卷含答案
- 砌筑工操作水平考核试卷含答案
- 液氯工QC管理强化考核试卷含答案
- 工业气体生产工诚信道德模拟考核试卷含答案
- 2026年中国全民营养周-营养餐桌家庭健康课件
- 2026云南红河州个旧市自然资源局招聘执法监察协管员3人考试备考试题及答案解析
- 2026春三年级科学下册期末测试卷一
- 2026年医院招聘病理学《医学相关知识》常考点含答案详解【A卷】
- 2026国网新疆电力有限公司招聘430人(第二批)笔试参考题库及答案解析
- 康复科护工培训课件
- 2025年职工职业技能竞赛(泵站运行工赛项)参考试指导题库(含答案)
- 银行支行高端客户维护及营销策略方案
- 实验室耗材管理试题及答案
- 产科大出血的麻醉与手术团队协同处理
- 公安警综平台培训课件
评论
0/150
提交评论