一种用于航电设备综合显示控制的软件平台的制作方法

文档序号:20909493发布日期:2020-05-29 12:56阅读:296来源:国知局
一种用于航电设备综合显示控制的软件平台的制作方法

本发明涉及航电设备综合显示控制技术领域,尤其涉及一种用于航电设备综合显示控制的软件平台。



背景技术:

现代飞机上通常使用统一处理器对飞机上各种航空电子设备的信息进行统一处理,将功能相同或相近的设备组合在一个组件内,在显示器上综合显示相关的参数,并在各航空电子设备之间通过机载数据总线来传送有关信息,从而使整个飞机上所有航空电子设备的性能达到更高的水平,这样的系统称为综合航电系统。

综合航电系统中包括功能众多的各种设备,例如数据接口单元diu、大气数据系统adc、组合导航系统ins/gnss、综合无线电系统cns、平视显示单元hud、以及座舱监视系统等,这些设备所需显示数据和对应控制操作各异。

综合航电系统中的综合显示控制单元,作为航电系统中的主要人机交互设备,集成了大气航姿显示子系统、引擎燃油显示子、无线电导航子系统、无线电通信管理子系统、飞行计划和导航子系统、警告和故障显示子系统、电子飞行检查子系统和合成视觉子系统等。在不同的飞行程序、任务和导航阶段,需要对不同的子系统进行操作和组合显示。

在各种机载航电设备的复杂度越来越高,所需要处理的数据量越来越大的情况下,现有综合显示控制单元中的软件平台进行完成3d导航地图显示以及视觉合成等任务时,不仅计算速度较慢延迟过大,且功耗过高,稳定性和安全性较低。



技术实现要素:

本发明的目的之一至少在于,针对如何克服上述现有技术存在的问题,提供一种用于航电设备综合显示控制的软件平台,其加载速度快,图形绘制和资源渲染效率高,能够实现实时、高效的人机交互及资源管理,且稳定性高,功耗低,适用于各种通用航空电子系统中机载设备的综合显示控制软件模块的开发,能够缩短开发周期,提高开发效率。

为了实现上述目的,本发明采用的技术方案包括以下各方面。

一种用于航电设备综合显示控制的软件平台,软件平台包括:驱动层、逻辑层、以及用户层;

其中,驱动层包括板级支持包bsp、数据接口和图形接口;板级支持包具有主板硬件和实时操作系统,用于与外部设备交互数据;数据接口和图形接口分别与板级支持包连接,分别用于传输数据和图形;

逻辑层包括业务逻辑处理单元、数据处理单元和图形绘制引擎;数据处理单元与数据接口连接,用于将数据进行融合处理后发送给业务逻辑处理单元;图形绘制引擎与图形接口连接,用于绘图并发送业务逻辑处理单元;业务逻辑处理单元根据预设的业务规则提取数据中的消息和事件,并与图形进行组合处理;

用户层包括人机交互界面,用于显示业务逻辑处理单元的组合处理结果并接收输入的控制指令,实现飞行员与机载设备之间的人机交互。

作为优选方案,板级支持包bsp与以太网、rs422总线、按键和旋钮以及显卡连接,以接收和/或发送数据和图形。

作为优选方案,逻辑层的业务逻辑处理单元包括初始化与自检模块、飞行仪表指示模块、通讯导航指示模块、机体/引擎信息指示模块、设备状态指示模块、视景合成模块、电子检查单模块、航路规划模块、以及告警与提示模块;其中的每个模块独立从数据处理单元获取相应的数据并进行预设业务的逻辑处理,生成业务逻辑结果数据,并根据飞行状态和飞行阶段,实时组合和更新业务逻辑结果数据。

作为优选方案,逻辑层的数据处理单元包括套接字处理模块、rs422数据处理模块、导航数据库处理模块、以及数据管理模块;其中,数据管理模块用于将套接字处理模块、rs422数据处理模块、导航数据库处理模块所产生的各种数据进行融合和分类处理,从根节点开始对套接字处理模块、rs422数据处理模块、导航数据库处理模块所发送的各种数据进行分类,并分别存储为最末端的节点的数据资源。

作为优选方案,逻辑层还包括中断信息处理单元和显示模式管理单元;其中,中断信息处理单元根据数据管理模块发送的数据产生数据中断指令,并向业务逻辑处理单元进行分发数据管理模块融合处理之后的数据。

作为优选方案,数据管理模块对节点及资源的处理包括:将树形数据资源结构中的节点设置为显示元素,并配置位置、大小、以及状态多个属性参数和操作函数;将每个节点通过绘制函数将显示元素绘制为包括点、线、矩形、曲线的形状图元;通过遍历函数和添加子节点函数来创建其他节点;以及,将每个节点设置为显示子系统。

作为优选方案,显示模式管理单元还用于通过中断信息处理单元设置事件处理策略,在图形绘制引擎绘制每一帧画面之前,都对根据断信息处理单元发送的事件中断指令对树形数据资源结构进行遍历,执行数据更新、插入、删除操作,并对业务逻辑处理单元的各模块对应的显示数据资源进行剪裁处理。

作为优选方案,对显示数据资源进行剪裁处理包括:首先进行投影瓦片的3d数字化,将平面的瓦片图片,按照墨卡托投影方式将,瓦片图片还原成球瓦片贴图,并通过多个球瓦片贴图生成3d数字地球;通过视椎体中近剪裁面、远剪裁平面以及二者之间上下左右的4个平面组合成的6面剪裁锥体,对3d数字地球的瓦片进行剪裁;并且仅将位于在剪裁锥体内部的瓦片以及与剪裁锥体相交的瓦片送入渲染队列。

作为优选方案,图形接口采用opengles2.0的相应api;图形绘制引擎采用opengles2.0作为渲染引擎,用于在显示模式管理单元的控制下根据各业务逻辑结果数据绘制gui图形界面并进行渲染。

作为优选方案,图形绘制引擎在进行3d数字地球渲染时,首先按照4叉树的方式,构造一个完整的3d数字地球球面;根据当前显示需要,确定细分显示的级别;对显示数据资源进行剪裁处理,计算当前显示级别的中心显示区域位置、及瓦片数量;对显示边缘区域,采用低一级别的瓦片;在3d数字地球移动的过程中,当中心区域图片正在细分加载时,采用上一级别瓦片用于临时显示;在3d数字地球缩放的过程中,直接对中心区域的图片予以缩放,动态加载的瓦片,并在异步加载成功后更新。

综上,由于采用了上述技术方案,本发明至少具有以下有益效果:

通过分层逻辑架构来提高对各种机载设备的兼容性;采用opengles2.0的绘图机制,提高了图形绘制的效率;通过对资源树状化,优化了资源的管理,提升了资源的渲染效率;通过引入4叉树对数字地图资源进行分级管理、优化了管理目录,提升渲染效率;通过视椎体剪裁,减少预存的数据量,提高加载速度和渲染速度。

附图说明

图1是根据本发明实施例的用于航电设备综合显示控制的软件平台结构示意图。

图2是根据本发明实施例的驱动层和逻辑层的结构示意图。

图3是根据本发明实施例的数据管理模块中树形数据资源结构示意图。

图4是根据本发明实施例的数据管理模块对节点及资源的处理示意图。

图5是根据本发明实施例的进行投影瓦片的3d数字化示意图。

图6是根据本发明实施例的剪裁锥体示意图。

图7是根据本发明实施例的3d数字地球的瓦片剪裁示意图。

具体实施方式

下面结合附图及实施例,对本发明进行进一步详细说明,以使本发明的目的、技术方案及优点更加清楚明白。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

图1示出了根据本发明实施例的用于航电设备综合显示控制的软件平台结构示意图,其包括:驱动层、逻辑层、以及用户层。

其中,驱动层包括板级支持包bsp、数据接口和图形接口;板级支持包具有主板硬件和ucos、vxworks、rtlinux等实时操作系统,用于与外部设备交互数据;数据接口和图形接口分别与板级支持包连接,分别用于传输数据和图形;

逻辑层包括业务逻辑处理单元、数据处理单元和图形绘制引擎;数据处理单元与数据接口连接,用于将数据进行融合处理后发送给业务逻辑处理单元;图形绘制引擎与图形接口连接,用于绘图并发送业务逻辑处理单元;业务逻辑处理单元根据预设的业务规则提取数据中的消息和事件,并与图形进行组合处理;

用户层包括人机交互界面(如软件图形用户界面、实体按键旋钮、油门与驾驶杆手动操纵杆hotas等),用于显示业务逻辑处理单元的组合处理结果并接收用户输入的控制指令,实现飞行员与机载设备之间的人机交互。

图2示出了根据本发明实施例的驱动层和逻辑层的结构示意图。其中,逻辑层的板级支持包bsp与以太网、rs422总线、按键和旋钮以及显卡连接,以接收和/或发送数据和图形。图形接口采用opengles2.0的相应api。

逻辑层的业务逻辑处理单元包括初始化与自检模块、飞行仪表指示模块、通讯导航指示模块、机体/引擎信息指示模块、设备状态指示模块、视景合成模块、电子检查单模块、航路规划模块、告警与提示模块等。每个模块独立从数据处理单元获取相应的数据并进行预设业务的逻辑处理,生成业务逻辑结果数据。并且,还可以根据飞行状态和飞行阶段(例如导航、紧密近进和非紧密近进等),实时组合和更新业务逻辑结果数据。

逻辑层的数据处理单元包括套接字处理模块、rs422数据处理模块、导航数据库处理模块、以及数据管理模块;其中,数据管理模块用于将套接字处理模块、rs422数据处理模块、导航数据库处理模块所产生的各种数据进行融合和分类处理,并存储为树形数据资源结构。

逻辑层还包括中断信息处理单元和显示模式管理单元。其中,中断信息处理单元根据数据管理模块发送的数据产生数据中断指令,并向业务逻辑处理单元进行分发数据管理模块融合处理之后的数据。

图形绘制引擎采用opengles2.0作为主要的渲染引擎,用于在显示模式管理单元的控制下根据各业务逻辑结果数据绘制gui图形界面并进行渲染。由于opengles2.0,摒弃了opengl中一些效率比较低的函数和管线(如固定渲染管线、显示列表、绘图函数、矩阵操作函数等)。从而保障了使用opengles开发程序的高效性。

图3示出了根据本发明实施例的数据管理模块中树形数据资源结构示意图。数据管理模块用于从根节点开始对套接字处理模块、rs422数据处理模块、导航数据库处理模块所发送的各种数据进行分类,并分别存储为最末端的节点的数据资源。例如,如果数据符合菜单栏节点数据资源特征,则进一步将数据分类存储为燃油状态指示节点、无线电调频节点或引擎状态指示节点的数据资源;如果数据符合内容显示区节点数据资源特征,则进一步将数据分类存储为导航页节点、自动定向adf节点、发动机燃油节点、电子检查单节点等的数据资源;对于导航页节点的数据资源,则可以进一步将数据存储为航图导航节点或机场导航节点的数据资源;而且,对应航图导航节点的数据资源,进一步分别存储到卫星节点、目视飞行规则vfr节点、高仪表飞行规则ifrhigh节点、或者低仪表飞行规则ifrlow节点的数据资源。通过数据资源结构将所有的数据资源都囊括在了一个树状结构上面,它们从一个根节点派生出来。每个派生出的节点都可以存在多个节点。对节点进行管理,就可以达到对子系统、功能页及绘图元素的管理,从而提高数据管理效率。

图4示出了根据本发明实施例的数据管理模块对节点及资源的处理示意图。对于树形数据资源结构中的每个节点,可以设置为显示元素(例如显示文字、图像、图层、画布等),并具有位置、大小、状态等多个属性参数和操作函数,以进行移动、旋转、缩放。每个节点可以通过绘制函数将显示元素绘制为点、线、矩形、曲线等形状图元,也可以通过遍历函数和添加子节点函数来创建其他节点。每个节点也可以设置为显示子系统,例如,节点设置为主飞行显示(pfd)子系统节点,则可以包括:俯仰、横滚、航向、指示空速、真空速、地速、马赫数、气压高度、无线电高度、升降速度、机外温度、攻角、侧滑角等、地平指示、偏离指示、航向下滑指示、mb信标提示、合成视觉、以及3d近地告警显示(3d-taws)等诸多飞行数据。

显示模式管理单元通过中断信息处理单元设置事件处理策略,在图形绘制引擎绘制每一帧画面之前,都对根据断信息处理单元发送的事件中断指令(包括触屏、按键、hotas杆、警告故障等信息)对树形数据资源结构进行遍历,执行数据更新、插入、删除等操作,并对业务逻辑处理单元的各模块对应的显示数据资源进行剪裁处理,以保障显示界面的刷新率和实时性。

具体地,对显示数据资源进行剪裁处理包括:首先进行投影瓦片的3d数字化,如图5由上至下依次所示,将平面的瓦片图片,按照墨卡托投影方式将,瓦片图片还原成球瓦片贴图,并通过多个球瓦片贴图生成3d数字地球;通过如图6所示的视椎体中近剪裁面、远剪裁平面以及二者之间上下左右的4个平面组合成的6面剪裁锥体,对3d数字地球的瓦片进行剪裁,如图7所示;并且仅将位于在剪裁锥体内部的瓦片以及与剪裁锥体相交的瓦片送入渲染队列,从而减少渲染计算量,缩短渲染时间,提高渲染效率。对于剪裁锥体之外的瓦片,可以根据渲染进度进行缓存或者删除。

显示模式管理单元在控制图形绘制引擎在进行渲染时,通过地图显示模块设置背景层和缩放层。其中,背景层的级别是固定的,在地图初始化时即加载完毕,以后不再改变,地图缩放及拖动时背景层消耗的资源很少;缩放层的级别设置为当前地图的级别,即地图进行级别切换时只改变缩放层的相关资源,因此不会因为地图级别变大而增加额外的计算量及资源消耗。

具体地,缩放层设置为包括15*15的瓦片阵列所,当地图移动时,不更新缩放层的所有瓦片,只对其中的部分瓦片进行更新。例如,当地图向左侧移动时,最左侧一列瓦片被移动到最右侧,然后重新加载瓦片图片,即只有一列瓦片会被更新;当地图向上移动时,最上面的一行被移动到最下面,然后重新加载图片,即只有一行瓦片会被更新。通过这种瓦片部分移动和不同地图级别瓦片共用的方式,有效的减少了地图级别放大时的计算量和资源消耗,提高了载入速度。

在优选的实施例中,图形绘制引擎在进行3d数字地球渲染时,首先按照4叉树的方式,构造一个完整的3d数字地球球面;根据当前显示需要,确定细分显示的级别;利用上述方法对显示数据资源进行剪裁处理,计算当前显示级别的中心显示区域位置、及瓦片数量;对显示边缘区域,采用低一级别的瓦片;在3d数字地球移动的过程中,当中心区域图片正在细分加载时,采用上一级别瓦片用于临时显示;在3d数字地球缩放的过程中,直接对中心区域的图片予以缩放,动态加载的瓦片,并在异步加载成功后更新。

在航电设备的具体应用中,往往会需要在3d数字地球球面叠加显示包括目标点、途径点、导航路径等2d信息,因此,显示模式管理单元可以进一步设置为在控制图形绘制引擎在完成3d数字地球球面渲染后,进一步将2d信息通过帧缓存座标映射的方式,叠加到3d数字地球上方,从而避免了在显示2d信息内容时,3d页面发生显示形变的问题。

在本申请所提供的上述实施例中,应该理解到,所揭露的软件平台,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,单元的划分,可以仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元、模块可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的单元(例如,各功能单元、处理器、存储器等)可以全部集成在一个单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

本领域技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(readonlymemory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。

当本发明上述集成的单元以软件功能单元的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。

以上,仅为本发明具体实施方式的详细说明,而非对本发明的限制。相关技术领域的技术人员在不脱离本发明的原则和范围的情况下,做出的各种替换、变型以及改进均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1