APP下载

一种简易高效的直升机座舱显示系统开发方法

2019-07-12秦正运徐振黔张青峰

电子技术与软件工程 2019年9期
关键词:图符指令集座舱

文/秦正运 徐振黔 张青峰

在现代航空电子系统中,座舱显示系统(CDS: Cockpit Display System)作为人机信息交互的第一接口,为飞行员提供起飞、导航、空中任务、着陆等关键信息。近年来,航空电子技术和现代传感技术的迅速发展,以及对飞机任务、作战等性能要求的提高,使得座舱显示的内容成爆炸性增长,显示的复杂度不断提高,造成开发和维护的成本不断提高。2001年,ARINC 661规范(座舱显示到用户系统的接口规范)在这种情况下应运而生,并广受关注。但是在国内直升机领域,此规范的研究工作相对较少,并且此标准主要应用于民用航空领域,在军用航空领域由于战略性、保密性等考虑尚未应用。为此,本文提出一种新的直升机座舱显示系统开发和通讯方法,能够降低座舱显示的开发时间、降低后期维护成本。

1 直升机座舱显示系统构成

座舱显示系统是飞机航电系统的重要组成,主要承接了导航、通信、飞控等系统的数据,加以处理和转化,并通过显示器显示飞行信息和告警信息。一般直升机的座舱显示系统主要是由综合任务处理机、多功能显示器(MFD)、多功能键盘(MFK)或其他输入设备等构成,如图1所示。

本文讨论的内容有关的设备为综合任务处理机和多功能显示器,下面通过对这两个设备的功能分析,将系统功能划分为数据收发与处理单元、显示数据处理单元、图形显示单元3个部分,如图2所示。

数据采集与处理单元主要通过总线完成对导航、大气、飞控等系统数据的采集,并将接收的总线数据进行解包处理;或将显示处理单元处理后的数据发送给其他航电子系统。

图1:直升机座舱显示系统构成

图2:座舱显示系统内部逻辑架构

图3:基于指令的座舱显示

显示数据处理单元是将处理后的总线数据,根据多功能显示器的画面的显示内容所需要的数据,发送到图形显示单元;并根据接收的多功能显示器的交互数据,进行页面切换、向数据采集和处理单元发送交互信息等操作。图形显示单元主要完成飞机姿态、航线、通讯、告警等信息的画面绘制工作和按键等交互信息发送给显示数据处理单元。

2 设计思想

目前在我国直升机领域,座舱显示方法主要采用的是数据方式。这种方式的原理是:多功能显示器中的显示内容以画面为单位,综合任务处理机将整个画面所需要的全部数据周期发送到多功能显示器。例如在PFD画面中,存在罗盘、地平仪、以及告警信息,多功能显示器显示软件设计者需要先设计出整个页面,并提供画面数据接口;综合任务处理机软件设计者在设计软件显示处理单元部分时,根据显示软件设计者提供的数据接口,将处理后的各个航电系统的数据发送到多功能显示器,完成整个显示过程。

从开发过程上讲,基于数据方式的设计方法,显示设计者不仅要承担图形符号的设计工作,还要承担画面的布局工作,使得显示设计者无法从繁重的图形符号设计工作中解脱出来,不但增加了显示开发成本,而且还加大了座舱显示系统增加新的显示功能的难度。从后期维护及改型上讲,基于数据方式的设计方法是将整副画面作为一个整体,一旦发生维护更改或者后期改型,就会更改整个画面内容及接口,进而需要改动显示软件和任务机的逻辑控制软件这两个软件配置项,大大增加了软件的不可控性。

因此,本文提出一种基于指令的座舱显示开发方法,其思想是将常用的仪器仪表图符、基本图元、字符、属性等分别作为一个独立的显示单元,使其和画面分开,并将这些独立的显示单元进行指令化关联。这样,CDS显示软件只需要识别指令,根据指令进行不同的显示单元绘制,而无需考虑画面布局;而运行在综合任务处理机上的显示控制软件根据用户交互,通过发送不同的指令即可以控制画面的显示,原理如图3所示。

3 实现

3.1 指令定义

通过对显示功能的分解,将显示分为图元、字符、属性、图符四类。图元是组成所有显示内容的基本单元,包含点、直线、弧形、圆形、方形、三角形、多边形、填充圆形、填充方形、填充三角形、填充多边形等;字符指的是符合GB2312的中英文字符;属性是指与绘图相关的属性设置,如颜色、字体大小、线宽、线型等等;图符是指复杂的仪器仪表图形,如罗盘、地平仪、机电油量柱状图等等,这些图形是需要专业人员设计符合标准及人机功效的图形。

通过将显示内容的分类,可以看到图元、字符、属性都是无需设计的图形,而图符则是显示工作的重点,是座舱显示标准化的基础。我们将这4种图形集对应建立4种类型的指令集,分别对应为图元指令集、字符指令集、图符指令集、属性指令集,并将所有图形都分配一个唯一的指令,格式如下:

指令名:长度为16bit的整形数字,为指令的唯一标识符;

指令坐标:长度为32bit,分别为16bit的x轴坐标和16bit的y轴坐标;

指令长度:长度为16bit,规定了紧跟其后的数据的长度(单位byte),最大长度65535;

图4:指令格式

图5:通讯指令包格式

图6:绘图流程

指令数据:长度为每个指令的具体内容,如圆形指令为半径长度,字符指令为字符 串数据等。

以上定义为通用的指令格式(图4a),指令名和数据是必须的,而坐标和长度根据指令集的不同做相应的删减。图元指令集和图符指令(图4b)集中图形的指令的长度基本上是固定的,因此可以删减指令长度这一条目;属性指令集(图4c)指示表征了当前绘图属性的设置功能,因此无坐标这一条目;字符指令集(图4a)为变长的,其格式为包含通用格式的所有条目。

3.2 指令通讯

串行化(Serialization)是计算机科学的一个概念,它是指将对象存储在介质中或以二进制方式进行传输,通过反串行化则可以重新构建原始对象。

综合任务处理机与显示器之间的指令通讯为主从结构,综合任务处理机将从各个航电系统接收到的数据进行数据融合与处理,根据用户的交互数据将所需要显示的所有图形全部转换为指令,按照通讯协议进行数据串行化,向显示器发送显示指令数据包;多功能显示器接收到指令数据包后,按照通讯协议进行反串行化,得到图形的树形结构,进行图形绘制。两者之间采用周期通讯,多功能显示器只有在收到指令数据包的情况下才可以进行图形显示,否则认为与综合任务处理机的通讯中断,进而进入应急显示。采用的通讯指令包按照图5格式。

数据包头:指令数据包包头识别码,长度16bit,用来判断数据包的开始位置。

包长度:整个数据包的长度,长度为16bit,单位为Byte,包含包头、长度、指令、包尾、校验的总长度。

指令:各个指令集中的指令,按照绘图或环境设置的先后顺序写入数据包;绘图时按照指令顺序来绘制。

包尾:指令数据包包尾识别码,长度16bit,表征指令结束。

校验:除本身外的其他数据的校验,可以采用多种校验方式,长度为16bit。

3.3 图形显示

为了保证图形显示的可移植性,仪器仪表图符要尽量形成标准的图符库,并且本方法支持所有仪器仪表开发工具,即可以将已开发的图符进行指令化处理,与指令关联即可;而比较简单的信息(例如告警信息、通知信息等),则可以直接使用图元指令集、字符指令集、属性指令集在综合任务处理机端实现。

多功能显示器工作时,只需要将接收的指令数据包进行反串行化操作,得到指令信息,获取指令名,通过指令名索引到相应的指令回调函数,从而解析指令的具体内容,然后根据图形指令信息在图形渲染库中查找所需要的图形或者设置相应的环境属性,进行渲染绘制即可。具体流程如图6。

4 结论

基于指令的座舱显示开发与通讯方法是基于层次化、模块化、低耦合的设计思想,最大的优点是将CDS显示与用户的控制逻辑分开,并给出了显示图符的标准化接口,提高了显示模块的通用性,降低了显示与控制的耦合性,并使得CDS显示开发者能够专注于仪器仪表的图符开发,并能够为将来应用新型号或增加新功能提供良好的扩展基础。本方法已在国产某型号直升机上成功应用,结果表明,该方法大大减少了开发难度以及后期的维护成本。

猜你喜欢

图符指令集座舱
开放式数字座舱软件平台IndiGO
3DNow指令集被Linux淘汰
NDT推出面向下一代智能座舱应用的压感触控解决方案
未来民机座舱显示控制系统初探
实时微测量系统指令集及解析算法
论“坡芽歌书”符号形象的审美意蕴
什么是AMD64
计算机辅助飞机制造协调路线图设计研究
基于覆盖率驱动的高性能DSP指令集验证方法
压力容器法兰的参数化绘制方法