admin 管理员组文章数量: 1184232
2024年4月20日发(作者:android studio怎么导出apk)
龙源期刊网
一种基于ARINC 661的定义文件自动修改
工具简介
作者:易子淳
来源:《科技视界》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.
[责任编辑:田吉捷]
龙源期刊网
龙源期刊网
版权声明:本文标题:一种基于ARINC 661的定义文件自动修改工具简介 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1713606592a643031.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论