关于EFB的应用控制接口标准的研究

2016-05-08 19:10燕秀秀

燕秀秀

摘 要:电子飞行包(简称EFB)是一项不断发展的现代化新技术,不仅能够取代传统的纸质资料显示多种航空信息数据,并且可以进行飞机性能、燃油等的基本计算。本文首先阐述了EFB的定义,然后介绍了当前EFB的发展应用,最后研究了EFB的应用程序管理机制、各阶段中相应的操作和任务、EFB的接口标准ACI协议以及ACI协议的五种主要命令的用法,解释了ACI协议的规范标准。ACI标准的研究在EFB的设计上提供理论基础。

关键词:ACI;EFB;APP;AM

中图分类号: G717 文献标识码: A 文章编号: 1673-1069(2016)18-161-2

1 概述

随着电子信息技术的迅速发展,高集成度的航空信息系统在航空公司的需求日益迫切,而电子飞行包(Electronic Flight Bag,简称EFB)也应运而生。美国联邦航空局的咨询通告对EFB的定义[1]是: 在驾驶舱/ 机舱使用的电子显示系统。中国民用航空飞行标准司颁布的咨询通告[2]对EFB的定义是:包含用于支持一定功能的软硬件,用于驾驶舱或客舱的电子显示系统。

波音787和空客A380等新机型都配备了EFB[3]。波音777飞机驾驶舱已经采用了第三版杰普逊电子飞行包[4]。国内,2013年12月,中航波音777F的3级EFB也获得

了运行批准,还有多家航空公司已经启动了相应的准备工作[3]。

随着应用软件的种类及复杂度的增加,集成到EFB也更耗时。标准化EFB平台中APP接口,制定统一的规范就十分迫切。

2 应用程序管理

在EFB中应用程序管理器(AM)实现的就是通常的任务栏的功能。AM分为两个组件:用户界面组件(UI)和应用控制组件(ACC),UI发送用户对APP选择的信息,ACC接收该信息后,转换焦点,并与某个APP进行通讯。应用程序控制接口协议(ACI)定义了在EFB上所有的APP与ACC之间的通讯方法。

3 APP和ACC的通讯

APP软件的生命周期分为4个阶段:启动阶段、初始化阶段、操作阶段、终止阶段[5],其中终止阶段不是必须的阶段。

3.1 启动阶段

AM负责启动APP,此刻AM建立配置信息(IP地址等)给APP。APP发起启动时间超过60s则被认为启动失败。

3.2 初始化阶段

当ACC与APP建立了TCP/IP连接后,APP发送协议版本号的命令,并等待ACC的响应。一旦存在一个可接受的协议版本,APP就发送AppStarted消息并进入初始化阶段。该阶段中APP不可以作为焦点。

允许APP长达60s之内不与ACC进行交互,APP可以随意的延长初始化阶段,时间可以超过AppInit信息发送的初始化时间段,在APP超过时间溢出后还没有被再次延长就认为是初始化失败。APP在这个阶段发送AppReady命令进入操作阶段。

3.3 操作阶段

在操作阶段, APP可以向ACC自动汇报状态,也可以等待ACC的事件消息来汇报,当APP收到需要状态的事件消息,则必须在3s之内提供状态。该阶段APP可以作為焦点。

3.4 终止阶段

当期望结束APP的时候,ACC会预先通知给APP,其中,准备终止的可用时间在AccEventTerminating命令中指定。在APP接收到这个信息后,APP可以在任意时刻终止通讯。在连接断了之后,ACI的通讯也就中断。

4 ACI协议

ACI消息通讯使用XML消息流,一个是来自与APP的XML文件,一个是来自ACC的XML文件。“Acc”开头的命令来自ACC,“App”开头的来自APP。

4.1 版本协议命令

AppProtocolVersion和AccProtocolVersion用于确定ACC和APP之间的通讯协议版本。

4.2 初始化命令消息

ACC和APP的通讯是基于服务器-客户端模式,服务器ACC监听来自APP的请求,客户端APP开启TCP/IP连接到ACC,当连接建立,双方开始进行ACI协议通讯。在APP启动期间,ACC通过命令向APP提供端口和ID号。在提供连接后60s内必须返回AppStart命令,ACC在接收到该命令后发送AccConnected,此时,APP进入初始化阶段。

当App完成初始化任务后,就能够及时响应事件消息了,APP发送AppReady并切换到操作阶段。如果ACC在APP进入初始化后,60s之内没收到APP发送的AppInit或者AppReady命令,则APP启动失败。

4.3 环境信息

AM负责向APP提供平台系统的相关信息,如果APP对这些信息发送请求,AM就使用请求/响应的方式回应。典型的环境信息命令如下所示。

①AppGetDisplayInfo,AccEFBDisplayInfo

APP用于获取EFB显示屏的几何信息,ACC响应APP显示屏的显示区域信息。

②AppGetBezelButtonInfo,AccEFBBezelButtonInfo

APP请求关于按键的信息。ACC响应相关的按键信息,包括按键名称、按键坐标等,在多数平台下,屏幕左上角被作为原点坐标(0,0)。

③AppGetInstallLocation,AccEFBInstallLocation

当飞机安装多个EFB时,本信息用于获取安装位置。ACC响应EFB的安装位置。

④AppGetDayNightMode,AccEFBDayNightMode

APP获取当前亮度设置信息。ACC响应当前亮度模式,日模式或者夜模式。

4.4 APP的请求消息

当APP需要改变EFB的状态时候,需要发送状态改变请求消息,例如改变日夜模式或者某些提醒消息的显示。

①AppSetDayNightMode,设置当前EFB的日夜模式的请求消息。

②AppActivateAnnunciation,当 APP需要在EFB的屏幕上面激活一个通知时候发送该请求消息,参数包括显示通知的内容文本和优先级。

①AppRequestFocus,当APP需要獲得焦点权限的时候,发送该请求消息。焦点转换只能在操作阶段进行,并且只有当APP汇报给ACC的状态是“Normal Operation”或者“Idle”才可以进行。

②AppReportStatus,APP汇报当前运行状态,可以随时汇报,但是当ACC发出请求APP的状态消息命令时,则APP必须在3s内回应状态,状态包括Busy、Normal Operation、Idle、Shutting Down、Error。

4.5 事件消息

事件消息是来自ACC主动发送给APP的信息,不需要像典型的ACI协议的请求/响应模式。ACC可以随时发送事件消息。典型的事件信息命令如下所示。

①AccEventFocusProvided,当用户选择了某个APP,ACC发送该消息到APP,转换焦点到APP。转换焦点可以是基于对AppTransferFocus的响应,也可以是由于其他原因,AM需要转换焦点到某个APP。

②AccEventFocusRemoved,当用户选择了其他的APP,则ACC发送该消息到APP,或者是由于其他原因,AM需要运行一个前景APP。

③AccEventTerminating,当要关闭某个APP时,ACC发送该消息,APP应开始关闭程序,参数是APP关闭前所使用的最少时间。

④AccEventEnvironmentUpdated,当系统环境发生变化时,该消息用于通知APP系统环境的改变。

5 总结

EFB是一项仍处于发展完善中的新技术,更多的接口标准需要规范和统一。随着其不断完善,定可提高研发效率,获得规模效益。

参 考 文 献

[1] 吕小平.电子飞行包系统介绍[J].中国民用航空,2007,10(82):45-50.

[2] AC-121-FS-2009-32.电子飞行包(EFB)的适航和运行批准指南[S].北京:中国民用航空飞行标准司,2009.

[3] 杨军利.电子飞行包的应用与发展[N].中国民航报,

2014.10.16第六版.

[4] 宇迪.波音获准为777飞机装备杰普逊电子飞行包[J].航空制造技术,2004(6).

[5] ELECTRONIC FLIGHT BAG (EFB) APPLICATION CONTROL INTERFACE (ACI) STANDARD AEEC AERONAUTICAL RADIO, INC. 2012.11.20.