本申请属于仿真系统设计技术领域,特别涉及一种用于飞机座舱的音效模拟方法及系统。所述方法包括步骤S1、采用QT构建当前进行仿真的实际机型的通讯子类;步骤S2、在一个循环中通过网络轮询飞机的子系统的状态数据;步骤S3、通过所述状态数据驱动内置的音效生成函数,由所述音效生成函数调用告警音生成函数生成告警音,以及调用环境音生成函数生成环境音,所述告警音及环境音预先封装在QT的基础播放库中。本申请具有良好的易用性、通用性、扩展性、跨平台性,能够适应各种机型,各种交战场景的仿真需求,为空战对抗模拟器提供支持。
【技术实现步骤摘要】
一种用于飞机座舱的音效模拟方法及系统
本申请属于仿真系统设计
,特别涉及一种用于飞机座舱的音效模拟方法及系统。
技术介绍
进行空战对抗仿真时,战斗机座舱中环境音、告警音的播放,能够增强飞行员驾驶飞机的真实感,也能够为飞行员对飞机的飞行状况提供更加直观、准确的判断。目前已有的环境音、告警音播放方法因为仿真任务的不同,都有其各自的缺陷,其不足主要体现在以下几个方面:1)硬件播放设备,单独的环境音、告警音仿真硬件设备,只能针对确定的机型进行音效仿真,维护和调试都需要生产厂家的专业人员实施,几乎无法进行升级,通用性很差。2)使用DirectSound音频播放库的系统,DirectSound音频播放库是微软的Windows系统中DirectX多媒体库中的一员,使用DirectSound实现的音频仿真系统只能使用在Windows系统中,当仿真系统需要部署在Linux系统或者有跨平台使用需求时,便无法满足要求。3)与飞机模拟器的数据耦合性高,多数音频仿真方案针对具体机型进行设计,直接使用飞机模拟器上的ICD数据处理音频播放,导致仿真系统的通用性不强,无法对新机型进行适配,升级、维护都很困难。4)不能进行分布式部署,很多音频仿真方案与飞机模拟器是一个进程,或者是同一台机器中通过进程间通信进行沟通的两个进程,导致部署音频仿真系统时不够灵活,无法将音频仿真系统与飞机模拟器、态势、HMI等系统进行分布式部署。
技术实现思路
本申请提供了一种采用QT软件进行飞机模拟系统的HMI绘制的方法及系统,为空战对抗模拟器提供支持。本申请第一方面提供了一种用于飞机座舱的音效模拟方法,包括:步骤S1、采用QT构建当前进行仿真的实际机型的通讯子类;步骤S2、在一个循环中通过网络轮询飞机的子系统的状态数据;步骤S3、通过所述状态数据驱动内置的音效生成函数,由所述音效生成函数调用告警音生成函数生成告警音,以及调用环境音生成函数生成环境音,所述告警音及环境音预先封装在QT的基础播放库中。优选的是,步骤S1之前,进一步包括将仿真系统对外通讯接口的基类设计为抽象基类,该通讯的实现方式在在具体各机型对应的通讯子类中完成,在仿真系统对外通讯接口的基类中,通过模块类型获取函数给出具体子类的机型,并通过若干控制函数对通讯子类进行控制。优选的是,所述控制函数包括启动函数、暂停函数、停止函数以及初始化函数。优选的是,所述模块类型获取函数自加载的配置文件中获取当前进行仿真的实际机型的通讯子类。优选的是,步骤S2中,飞机的子系统包括机电、航点、飞控分系统。优选的是,采用socket通信方式在飞机模拟器与音频仿真系统之间进行通信。本申请第二方面提供了一种用于飞机座舱的音效模拟系统,包括:通讯构建模块,用于采用QT构建当前进行仿真的实际机型的通讯子类;数据获取模块,用于在一个循环中通过网络轮询飞机的子系统的状态数据;音效生成模块,用于通过所述状态数据驱动内置的音效生成函数,由所述音效生成函数调用告警音生成函数生成告警音,以及调用环境音生成函数生成环境音,所述告警音及环境音预先封装在QT的基础播放库中。优选的是,还包括通讯设置模块,用于将仿真系统对外通讯接口的基类设计为抽象基类,该通讯的实现方式在在具体各机型对应的通讯子类中完成,在仿真系统对外通讯接口的基类中,通过模块类型获取函数给出具体子类的机型,并通过若干控制函数对通讯子类进行控制。优选的是,所述控制函数包括启动函数、暂停函数、停止函数以及初始化函数。优选的是,所述模块类型获取函数自加载的配置文件中获取当前进行仿真的实际机型的通讯子类。本申请具有良好的易用性、通用性、扩展性、跨平台性,能够适应各种机型,各种交战场景的仿真需求,为空战对抗模拟器提供支持。附图说明图1是本申请用于飞机座舱的音效模拟方法的一优选实施例的流程图。图2是本申请用于飞机座舱的音效模拟系统的一优选实施例的音频仿真系统结构图。图3是本申请通讯类中间层接口类图。图4是本申请HMI系统典型部署图。具体实施方式为使本申请实施的目的、技术方案和优点更加清楚,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施方式是本申请一部分实施方式,而不是全部的实施方式。下面通过参考附图描述的实施方式是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。基于本申请中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。下面结合附图对本申请的实施方式进行详细说明。本申请第一方面提供了一种用于飞机座舱的音效模拟方法,如图1所示,主要包括:步骤S1、采用QT构建当前进行仿真的实际机型的通讯子类;步骤S2、在一个循环中通过网络轮询飞机的子系统的状态数据;步骤S3、通过所述状态数据驱动内置的音效生成函数,由所述音效生成函数调用告警音生成函数生成告警音,以及调用环境音生成函数生成环境音,所述告警音及环境音预先封装在QT的基础播放库中。本申请用于飞机座舱的音效模拟方法采用QT软件开发,本方案使用QTMultimedia为基础音频播放库,QT的音频播放库使用简单、文档丰富、使用者社区庞大,遇到问题易于解决,而且QT框架使用C++实现,运行速度极快,对音频仿真的实时性也有保证。可以理解的是,QT本身为跨平台框架,利用QT的跨平台特性,软件可以运行在Windows、Linux系统上。本申请具备通用性、可扩展性,通过设计中间层,对各种机型的ICD告警数据与音频仿真系统对外接口进行解耦,保持音频仿真系统的通用性,为未来增加机型和扩展功能提供保证。本申请采用分布式部署,通过socket通信方式,能够使音频仿真系统的部署十分灵活,无论是与飞机模拟器部署在同一台计算机,还是双方通过网络进行通信,都可以使用socket连接方式进行通信。在一些可选实施方式中,步骤S1之前,进一步包括将仿真系统对外通讯接口的基类设计为抽象基类,该通讯的实现方式在在具体各机型对应的通讯子类中完成,在仿真系统对外通讯接口的基类中,通过模块类型获取函数给出具体子类的机型,并通过若干控制函数对通讯子类进行控制。本实施例中,对已知全部的环境音、告警音进行封装,并针对通用类型与个别机型的声音进行分类归纳,便于根据不同机型进行复用。本实施例中,重点设计通信中间层模块,将不同机型的ICD接口与音频仿真系统对外接口进行适配,减少音频仿真系统与不同机型飞机模拟器之间的耦合性;每次增加新的机型,只需要增加新的通信中间层子类,使耦合性保持在通信中间层,音频仿真模块本身不需要进行修改。在一些可选实施方式中,所述控制函数包括启动函数、暂停函数、停止函数以及初始化函数。具体本文档来自技高网...
【技术保护点】
1.一种用于飞机座舱的音效模拟方法,其特征在于,包括:/n步骤S1、采用QT构建当前进行仿真的实际机型的通讯子类;/n步骤S2、在一个循环中通过网络轮询飞机的子系统的状态数据;/n步骤S3、通过所述状态数据驱动内置的音效生成函数,由所述音效生成函数调用告警音生成函数生成告警音,以及调用环境音生成函数生成环境音,所述告警音及环境音预先封装在QT的基础播放库中。/n
【技术特征摘要】
1.一种用于飞机座舱的音效模拟方法,其特征在于,包括:
步骤S1、采用QT构建当前进行仿真的实际机型的通讯子类;
步骤S2、在一个循环中通过网络轮询飞机的子系统的状态数据;
步骤S3、通过所述状态数据驱动内置的音效生成函数,由所述音效生成函数调用告警音生成函数生成告警音,以及调用环境音生成函数生成环境音,所述告警音及环境音预先封装在QT的基础播放库中。
2.如权利要求1所述的用于飞机座舱的音效模拟方法,其特征在于,步骤S1之前,进一步包括将仿真系统对外通讯接口的基类设计为抽象基类,该通讯的实现方式在在具体各机型对应的通讯子类中完成,在仿真系统对外通讯接口的基类中,通过模块类型获取函数给出具体子类的机型,并通过若干控制函数对通讯子类进行控制。
3.如权利要求2所述的用于飞机座舱的音效模拟方法,其特征在于,所述控制函数包括启动函数、暂停函数、停止函数以及初始化函数。
4.如权利要求2所述的用于飞机座舱的音效模拟方法,其特征在于,所述模块类型获取函数自加载的配置文件中获取当前进行仿真的实际机型的通讯子类。
5.如权利要求1所述的用于飞机座舱的音效模拟方法,其特征在于,步骤S2中,飞机的子系统包括机电、航点、飞控分系统。
6.如...
【专利技术属性】
技术研发人员:白金鹏,张方齐,王鹤,李婷珽,刘昊雨,林鑫,
申请(专利权)人:中国航空工业集团公司沈阳飞机设计研究所,
类型:发明
国别省市:辽宁;21
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。