APP下载

一种基于ARINC 661的定义文件自动修改工具简介

2017-08-21易子淳

科技视界 2017年10期
关键词:批量组件工具

易子淳

【摘 要】随着现代民用航空的快速发展,驾驶舱的集成度和复杂度变得越来越高。ARINC 661[1]标准为民用飞机驾驶舱设计提供了统一的用户接口、通信协议和管理方式,极大提高了各个子系统之间的兼容性与平台可扩展性。而部署于A661服务器端的定义文件(Definition File)包含了所有显示元素和信息,结构相当复杂。本文尝试通过对DF文件进行解析,实现对特定属性、特定元素的批量处理,并形成自动化工具,缩短迭代开发周期。

【关键词】DF;ARINC 661;自动修改

0 引言

ARINC 661规范是针对飞机驾驶舱显示系统的开发设计的一份指导性文件,由于波音,空客等公司的支持,并且该标准自身也在不断地修订和完善,这份指导性的文件已经逐渐成为了驾驶舱显示系统的行业标准。ARINC 661中,针对显示系统中可能用到的基本显示组件,定义了一个Widget Library,这个Library中,包含了42个基本的Widget,8个Widget Expansion Supplement 1类型,7个Widget Expansion Supplement 2类型,8个Widget Expansion Supplement 3类型,3个Widget Expansion Supplement 4类型。对于每个Widget,又明确定义了States,StyleSet,Position,Size等详细属性以及Widget之间可能的关系。

在实际的驾驶舱软件开发过程中,往往通过建模软件,自动化构建生成符合ARINC 661规范的DF图形模型文件,大大简化了显示系统的设计工作。以法国Esterel公司生产的SCADE Display工具为例,通过进行可视化的图形建模,可以自动生成XML格式的DF文件。

1 方案概述

在軟件开发过程中经常会遇到这样的问题:由于顶层POP的变化和调整,图形文件的通用属性都需要进行大量的修改,例如字体、颜色、线型。每一次的变更都会带来繁琐的重复劳动和引入人为错误,影响了显示软件的研制效率。

而基于ARINC 661的显示子系统一般采用MBD模式进行开发,其图形模型使用工具进行搭建,而其工程文件是符合语法规范的XML文件。所有的图形组件,包括其属性,都以符合XML语法规范的格式进行定义。那么,是否可以通过解析图形文件,当顶层POP输入变更的时候,快速实现通用组件属性的调整和修改?本论文正是基于这个出发点,通过整理和分析开发过程中遇到的实际问题,应用软件工程方法,最终完成对于该工具软件的实现

2 工具需求分析

图1 软件用例图

提供一个文件选择器,能够导入目标图形文件。基于SCADE Display的图形文件以sgfx为扩展名称的,但其本质是XML文件,导入该图形文件以后,可以按照标准XML格式进行解析;能够读取并且分析XML文件,按照固有格式进行解析,将原有的树形结构的文件转化为二维平面格式,并且在软件中进行显示;能够对所有的Widget按照特定的属性进行排序;能够对图形文件中所有的字体字号进行批量修改;能够对图形文件中所有的颜色进行批量修改;能够对图形文件中的流线宽度进行批量修改;能够对所有的WidgetID进行批量修改,这个功能主要是考虑到后期的系统集成时的需要;对上述需求绘制如图1的软件用例图。

通过对上述用例的继续细化,形成以下的详细功能点:

●功能1:系统应提供一个文件选择器,该选择器可以定位到磁盘中的任何位置,指定目标文件之后,获取文件句柄。其前置条件为磁盘未被读保护,后置条件为工具获得文件句柄和文件名称;

●功能2:通过获得的文件句柄,系统能够对文件进行读取操作。以XML文件为例,工具能够获得根节点信息,根节点信息本质上是一个文件指针,当其不为空时,可以依次操作连续的地址空间;

●功能3:应按照XML Schema定义的过程依次读取所有子节点信息,Schema中定义了树形的具体结构,并且都是统一的;

●功能4:能够将所有读取到的Widget和Widget属性信息显示在界面当中,显示界面应该是二维表格形式的,表格行首显示属性名称,列首显示Widget名称,其他部分显示具体属性值;

●功能5:点击属性按钮之后,能够对属性值进行分类排序;

●功能6:对所有图形中出现的文字进行批量字号修改。这是出于CUI一致性的考虑,在软件研制过程中,不可避免要进行整体风格的变更,对所有字号进行统一批量修改。这就降低了可能出错的概率;

●功能7:对所有的组件颜色属性进行修改。为了保证全机显示风格的一致性,对于特定颜色,比如说绿色,有一个定义好的RGB值,或者是一个Index值;

●功能8:批量修改WidgetID。这个功能是非常有必要的,主要是在后期系统集成的时候,由于在开始初始,每个子系统都单独成文件,编号未进行全系统的统一分配。在系统集成的过程中就需要进行矢量增益,该功能可以解决这个问题;

●功能9:对所有其他属性进行批量修改,可以以下拉框和属性设置文本区域的方法来实现。

3 工具概要设计

上述的图2为系统类图,类图描述了系统的软件方面的静态结构,主要是定义每一个软件组件之间的调用关系,包含关系和层级。在这一阶段可以给出大致的类的属性和方法,但不需要对操作进行太具体的定义和分析。

4 总结

该工具软件实现了对于图形模型的解析,将树形的图形组件结构转化为二维的表格形式,方便对于图形模型的评审;提供了自动分析功能,快速发现模型中的错误和缺陷;提供了对于通用组件属性的批量修改功能;记录了所有的变更历史,方便进行错误跟踪和版本控制。通过该工具,实现了每一个版本的快速迭代,并且极大减少了人为引入错误的概率。

【参考文献】

[1]COCKPIT DISPLAY SYSTEM INTERFACES TOUSER SYSTEMS ARINC SPECIFICIATION 661-4[S].2010:396.

[责任编辑:田吉捷]

猜你喜欢

批量组件工具
无人机智能巡检在光伏电站组件诊断中的应用
波比的工具
波比的工具
新型碎边剪刀盘组件
U盾外壳组件注塑模具设计
“巧用”工具
浅议高校网银批量代发
风起新一代光伏组件膜层:SSG纳米自清洁膜层
基于AUTOIT3和VBA的POWERPOINT操作题自动批量批改
考虑价差和再制造率的制造/再制造混合系统生产批量研究