基于IDATA及天脉1操作系统的座舱显示技术研究

2020-06-04 12:55郑悦黄子硕陈康张孟
数字技术与应用 2020年3期
关键词:人机交互

郑悦 黄子硕 陈康 张孟

摘要:座舱显示系统受限于国外操作系统的限制,已不能满足当前国内航空机载设备的发展要求。本文提供了一种基于IDATA人机界面开发工具及国产天脉1操作系统嵌入式开发平台的简单、通用、标准、自主可控的座舱图形显示软件开发方式,重点介绍了该方法的开发流程及解决的问题,并运用该方法开发了飞行显示器显示画面。结果显示,该方法开发的座舱图形画面显示清晰、流畅,性能稳定。

关键词:座舱显示;IDATA;天脉1操作系统;自主可控;人机交互

中图分类号:TN873 文献标识码:A 文章编号:1007-9416(2020)03-0121-02

0 引言

随着航空技术的发展,座舱图形显示软件的开发周期短,平台也多样化,传统的开发方式灵活性差,对不同平台的移植性及继承性差,这就急需一种简单、通用、标准、移植性好的座舱图形显示软件开发方式。此外,当前国内外的座舱图形显示开发大多基于Vxworks嵌入式操作系统[1],VxWorks以其良好的可靠性和卓越的实时性在国内被广泛应用,但是由于VxWords操作系统没有提供完备的汉字显示解决方案,在中文显示方面需要借助于各种工具和方法实现,增加了开发难度,延长了运行时间,当前国际关系的复杂化和不确定性使得沿用VxWorks操作系统开发具有一定的风险,难以实现座舱显示研发过程真正自主可控的目标。鉴于上述几点,本文引入了一种基于IDATA人机界面开发工具及天脉1操作系统的座舱图形显示软件开发方式,可以实现当前国内座舱显示开发所需的简单、通用、标准、移植性好和自主可控。

1 天脉1操作系统

1.1 天脉1操作系统简介

天脉1操作系统是中航工業六三一所牵头研发的一款面向机载嵌入式设备的实时操作系统,为国内自主研发[2],为程序员提供高效的实时多任务调度、中断/异常管理以及实时的任务间通信等功能。

天脉1操作系统作为一个针对航空应用需求设计的操作系统,具有内核小、可剪裁、稳定性高等特点[3],能够完全满足机载环境所提出的高可靠、强实时、高安全、可升级性等特殊要求。借助于与之配套的集成开发环境LambdaAE,用户可以快速完成嵌入式应用的开发、调试和部署。

针对航空电子系统的应用需求,该产品还提供VxWorks兼容包、OpenGL图形支持等诸多功能组件。

1.2 天脉1操作系统特点

强实时性:内核可抢占、中断可嵌套、优先级抢占、防止优先级反转、中断响应快速;

可剪裁、可配置:面向对象的设计方法、功能组件可剪裁、系统功能可配置;

适用性:支持三代机使用处理器,支持常用功能组件,支持系统级调试;

升级性:模块化、层次化结构;接口符合标准;

可靠性:提供错误接管机制,基于MMU存储保护;

兼容性:支持C/C++语音,提供符合POSIX接口的运行时库,提供VxWorks兼容包。

2 座舱图形显示软件开发流程

座舱图形显示软件的开发流程为:首先依据显示需求及功能文档基于IDATA人机界面交互软件生成所需的显示画面模型,其次通过代码生成器将显示画面模型生成符合OpenGL ES标准的代码,在将上述代码集成到与天脉1操作系统配套的集成开发环境LambdaAE中调试成功后运行生成目标代码,最后将目标代码加载到具备天脉1操作系统的产品中。开发流程如图1所示。

2.1 遮挡问题

OpenGL ES中的实现遮挡有两种实现方式,模板遮挡方式及深度调节实现遮挡方式。IDATA工具有模板遮挡的功能,通过设置模板缓冲区的方式实现遮挡。模板遮挡的关键技术在于遮挡画面在树状结构中的先后顺序,处于树状结构下层的遮挡模板会覆盖上层的遮挡模板[4]。模板遮挡应用时,需对模板属性进行设置,即通过Visibility窗口下的Stencil属性对模板区域内及区域外显示的问题进行设置。深度遮挡方式即通过将绘制遮挡外框及遮挡内框,绘图区域分别放置于三个深度画面层,最外层为遮挡外框,通过将外框上的内框区域的深度设置为最底层,将画面绘制于内层和外层中间,启动深度测试后,外层画面显示,则在内框区域内显示绘制画面,其余部分被外框所覆盖,类似于在外框上通过一个视窗看图形画面,遮挡原理如图2所示。

2.2 中文显示问题

目前,在IDATA中无法直接实现中文的显示,本研究方法在LambdaAE开发环境中进行中文的设置,并将字库文件依托于目标机的文件系统,通过IDE的目标连接进行。显示所需中文字库可使用Windows系统中现成的默认字库文件,无需额外创建中文字库文件,节约资源和时间成本。

先要在LambdaAE的远程系统中新建目标机连接,配置与目标机体系结构并设置好IP地址,配置好后上电启动就可以连接至目标机。

以拷贝软件字库文为例,如果向将拷贝到FLASH文件系统中,首先从PC端“C:\Windows\Fonts\”路径下找到后缀为.ttf的文件,右键选择复制然后直接粘贴到“目标机→文件系统→驱动器→C:\”下即可。而在IDATA绘制中文字符时,采用英文字符,目的在于设置中文字符的位置并生成相应代码。如果板卡上的应用程序需要访问FLASH文件系统上的文件系统上的字库文件,可采用字库文件标准I/O操作,类似fopen(“c:/***.ttf”,“rb”)。

此种方式可解决实际工程中中文显示的问题,并且字库文件为PC端自带的文件系统,不需要重复制作所需字库文件,易于操作,适用性强。

3 应用结果

应用本研究方法在实际的产品上做了应用验证,硬件方面,采用飞思卡尔P1013为控制CPU、景嘉微电子JM5400为图形处理器,运行1天脉操作系统。

软件方面首先基于IDATA完成所需画面的绘制工作,然后在集成开发环境LambdaAE中完善软件并生成目标代码,最后将目标代码加载到本产品中,具体的仿真结果图如图3所示。

应用结果显示,产品显示画面中线条、图形、图片、字符显示无走样,无色差,且产品可正确天地球、速度带、高度带等画面逻辑信息,画面整体显示流畅,刷新及时。

4 结语

本文提供了一种通过IDATA人机界面开发工具及天脉1操作系统嵌入式开发平台的座舱图形显示软件开发方式,对开发过程及关键技术进行了研究,并针对具体型号产品进行了仿真。结果表明,该方法灵活性、继承性、移植性好、并具有跨平台的优势、简单通用、开发周期短,对人员要求相对较低,明显优于传统的编程开发方式,更适用于未来产品画面复杂程度增加、显示信息量增大的座舱图形显示软件开发。

此外,本文提供的方法可打破国外对同类产品的操作系统技术封锁,提升了航空武器装备的自主保障能力,为国防武器装備的信息安全提供了有力保证,为基础软件的自主发展奠定了基础。

参考文献

[1] 胡靖宇.基于IData和VxWorks的飞机座舱显示系统[D].西安:西安电子科技大学,2014.

[2] 李向东,徐宁,郝玉锴,等.基于国产天脉1型操作系统的嵌入式软件开发配置[J].信息通信,2016(12):162-164.

[3] 梅涛,王宏伟,麦先根.天脉1下龙芯1B网卡驱动设计与实现[J].电子科技,2016(10):60-63.

[4] 赵双双,孙旭东.基于IData的先进座舱多功能显示器的仿真研究[J].飞机设计,2011(03):57-59+72.

Abstract:Currently, the development of domestic airborne equipment are limited by foreign operating system, because of the little selectivity for operating system. This paper proposes a method of software development based on IDATA and ACoreOS1, which is simple, general, standard and self-controlled. The paper introduces the development process and some key problems, and applies the method to develop the cockpit display system for a flight multi-function display. Test results show that the application of the research above on cockpit display delivers detailed visuals while keeping the framerate smooth and stable.

Key words:cockpit display; IDATA; ACoreOS1; self control; human-computer interaction

猜你喜欢
人机交互
人机交互课程创新实验
图像处理耦合模板定位的答题卡识别研究与应用