基于.NET技术的航空装备IETM应用研究

2013-10-17 03:19李保刚
计算机与现代化 2013年1期
关键词:控件航空装备

李保刚

(1.海军航空工程学院兵器科学与技术系,山东 烟台 264001;2.海军航空工程学院研究生管理大队,山东 烟台 264001)

0 引言

交互式电子技术手册(IETM)是一种按标准的数字格式编制,采用文字、图形、表格、音频和视频等形式,以人机交互方式提供装备基本原理、使用操作和维修等内容的技术出版物。国内外装备保障实践充分证明,应用IETM能够极大地提高装备维修保障、装备人员训练和用户技术资料管理的效率和效益。特别是对于飞机、导弹这类复杂的航空武器装备而言,采用IETM技术所带来的优势就更加突出。美军在F-16、F/A-18飞机等装备的试验结果表明,与传统纸质资料相比,使用IETM可使查找信息的时间缩短50%,故障排除的正确率提高35%,效率提高30% ~60%[1-2]。并且,为适应信息战争维修保障的发展需要,越来越多的IETM产品采用基于网络环境的开发模式,而.NET技术在这一方面具有得天独厚的优势,因此,采用.NET技术研发航空装备IETM产品已成为IETM发展的重要方向和趋势。

1 .NET技术简介[3-4]

1.1 .NET Framework 概述

Microsoft发布的.NET Framework简称为.NET,是微软公司为适应Internet发展的需要而推出的特别适合网络编程和网络服务开发的软件平台,它提供了执行环境托管的、简化的开发和部署以及与各种编程语言的集成功能。

.NET Framework主要有两个组件:公共语言运行时(CLR)和.NET Framework类库。公共语言运行时是.NET Framework的基础。可以将其看作一个在执行管理代码的代理,它提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的类型安全性以及可提高安全性和可靠性的其他形式的代码准确性。事实上,代码管理的概念是运行时的基本原则。以运行时为目标的代码称为托管代码,而不以运行时为目标的代码称为非托管代码。

.NET Framework的另外一个组件是类库,它是一个综合性的面向对象的可重用类型集合,可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面(GUI)应用程序,也包括基于ASP.NET所提供的新增的应用程序(如Web窗体和XML Web Services)。

.NET Framework平台的结构示意如图1所示。

图1 .NET Framework平台

1.2 ASP.NET 概述

ASP.NET是统一的Web应用程序平台,它提供了为建立和部署企业级Web应用程序所必需的服务。ASP.NET为能够面向任何浏览器或设备的更安全的、更强的可升级性,更稳定的应用程序提供新的编程模型和基础结构。

ASP.NET 是 Microsoft.NET Framework 的一部分,是一种可以在高度分布的Internet环境中简化应用程序开发的计算环境。.NET Framework包含公共语言运行时,它提供了各种核心服务,如内存管理、线程管理和代码安全。它也包含.NET Framework类库,这是一个开发人员用于创建应用程序的综合的、面向对象的类型集合。

ASP.NET具有可管理性、安全性,易于部署、灵活的输出缓存,对移动设备的支持,扩展性和可用性,跟踪和调试等诸多优点。

使用ASP.NET创建的XML Web服务可使用户远程访问服务器。使用XML Web服务,厂家可以提供其数据或商业规则的可编程接口,之后可由客户端和服务器端应用程序获得和操作。通过在客户端/服务器和服务器/服务器方案中的防火墙范围内使用标准(如XML消息处理和HTTP),XML Web服务可启用数据交换。以任何语言编写的且运行在任何操作系统上的程序都能调用XML Web服务。

2 IETM开发标准选择[5-7]

当前,航空装备的信息化程度不断提高,相应地对维修保障的信息化要求也就越来越高,因此,信息共享、产品数据的互操作就成为了航空装备IETM的核心问题。为了使不同的IETM之间具有良好的互用性和兼容性,需要制定相应的技术标准,用于指导IETM的创作与实施。虽然目前指导IETM的标准、规范很多,但最具影响力、使用最为广泛的是美军制定的 MIL-PRF-87268C、MIL-PRF-87269C、MIL-HDBK-511,以及欧洲的ASD/AIA S1000D,其内容比较如表1所示。

表1 IETM相关标准比较

我国在消化吸收国外先进IETM标准的基础上,相继编写了GB/T 24463系列国家标准和GJB6600系列国家军用标准。两者都是以欧洲S1000D规范为基础的,在技术上具有良好的兼容性。其中GJB6600是规范我国军工企业开发武器装备IETM的技术文本,分为总则、数据模块编码和信息控制编码、模式、数据字典等4个部分。它规定了装备交互式电子技术手册的功能、内容、样式、数据格式和管理信息要求,规定了装备交互式电子技术手册的数据模块代码、信息控制代码编码要求,给出了数据模块模式的通用层信息和信息层信息的要求以及数据模块通用层、信息层元素的要素及关系等。本文后续所述的航空装备IETM系统开发过程即遵循GJB6600标准。

3 基于.NET技术的航空装备IETM设计与实现

3.1 航空装备IETM数据访问架构设计[8-12]

数据访问是IETM最基本也是最重要的功能。一个优秀的数据访问架构设计,可以为IETM的高效运行打下坚实的基础。依据GJB6600标准的要求,航空装备IETM的数据描述方法采用XML,结合B/S架构模式,其数据访问模型如图2所示。

图2 航空装备IETM数据访问模型示意图

(1)数据访问请求的响应。

数据访问机制是一种响应请求机制,在用户通过浏览器使用IETM系统时,用户的点击操作会向服务器发送所需访问数据的DMC码、ICN码,服务器在接收到这些用户数据以后,会判定用户行为。如果判定用户正通过数据的DMC码、ICN码请求访问数据时,服务器上的运行程序会利用用户发送的DMC码、ICN码向数据库查询并匹配数据,数据库响应查询,如果数据库认为查询和数据出库请求是合法的,则允许数据访问,并将用户请求的数据发给运行程序,由运行程序转码以后发回客户端浏览器。

(2)XML文件到HTML文件的转换。

由于本文描述的IETM系统采用了XML的数据描述方法,而浏览器本身对XML文档没有友好的显示界面,只会将XML文档解析为文本文件。为了使用户拥有良好的用户体验,当用户请求数据时,不能将XML文件直接显示给用户,而是要把XML文档转换成为HTML文档,然后发送给用户。这中间要用到可扩展样式语言转换(XSLT),通过XSLT可以轻松实现不同格式语言间的转换。XSLT在.NET环境下的转换过程如图3所示。

图3 XSLT转换过程示意图

3.2 系统主界面设计

根据GJB6600标准要求,显示窗口应至少由标题栏、菜单栏和内容区组成,必要时可包括底部状态栏。显示区应具有在屏幕上最少同时显示3个窗口的能力,但任何时候都仅能操作其中一个窗口。系统应允许显示的窗口重叠、相邻(平铺)和层叠(重叠,但显示标题栏)。

当显示信息所需的窗口比可视窗口面积大时,系统应提供滚动条等控制手段。滚动条应包含滚动范围、滑块以及指示方向的箭头等要素。

根据上述基本要求,本文设计的航空装备IETM系统主界面如图4所示。

图4 航空装备IETM系统主界面

3.3 目录树模块设计

目录是整个航空装备技术文档的集中概括。在航空装备IETM系统中,这也是访问技术文档的最基本途径。为了实现目录与程序的分离,实现目录的动态读取,保证目录更新的便捷性,提高Web程序的适应性,程序使用了ASP.NET的TreeView控件和XMLDataSource控件,通过将TreeView控件的数据源绑定在XMLDataSource控件上,读取XMLDataSource控件绑定的XML文件内容,动态地获取目录信息。

当目录信息有所变化的时候,用户不用像以往一样去更新整个Web程序来实现目录的更新。用户只需在目录树文件(.xml文件)所在的文件夹中更新.xml文件就能够完成目录的更新工作,方便了IETM技术资料的增减和更新。

3.4 适应性过滤设计

由于航空装备由众多子系统组成,每个子系统又有大量的技术手册,将它们全部放到目录区域显示出来,明显不便于手册信息的查找,为了使用户快速地定位到自己想要的内容,程序中设置了适应性过滤模块。

具体过程是:首先判定用户所选的机型,然后根据机型动态生成系统选项,当用户选择系统以后,程序在服务器端动态更改XML DataSource控件绑定的Tree View目录文件(.xml文件),使得用户只能看到所选机型所选系统的技术资料,实现技术手册的过滤。

实现代码如下:

(1)动态生成系统选项。

(2)动态更改目录。

3.5 文本显示设计

由于本文所叙述的IETM系统描述数据用到的语言是XML,但XML文件在客户端浏览器下无法友好显示,不能直接把XML文件发给用户。因此,在文字显示区域,用到了ASP.NET的XML控件,该控件可以读取XML文件,并使用程序给定的XSLT文件将XML文件转换为HTML文本发送给用户,使得用户获取良好的用户体验。

3.6 图形、视频显示设计[13-14]

在文本显示区域中,会出现一些需要展示和说明的图形和视频文件,以增强IETM的表现力和动态效果。但在XML文件中不可以放置图片或视频,且在GJB6600中,XML数据文档中只给出了图片或视频的ICN编码和名称。在HTML标准中,这两个信息都不足以在Web页显示图片或视频信息。为了解决此问题,程序设计中采取了使用特征码提取数据技术,程序将ICN码和图片或视频的TITLE作为特征码发送给图片、视频显示模块,使得图片或视频文件得以正常显示。

本文所叙述的IETM系统将文档中的图片或视频放到了主界面的右上角显示,如图4所示。用户只需要点击文档中的图片或视频链接,就可以在显示区域看到与之对应的图片或视频,如果用户觉得在显示区域看图太小,用户可以点击图片或视频,程序会新开一个Web界面用以显示大图。

需要注意的是,由于图片的显示是通过单击图片链接实现的,所以,图片显示模块必须使用局部刷新,一般而言,可以通过ASP.NET中的Ajax控件可以实现网页的局部刷新,但本文中为简化程序设计,在实现网页局部刷新的问题上采取了Iframe局部刷新架构,程序将图片显示模块放在了一个Iframe中,在用户点击图片链接时,浏览器只需要刷新Iframe中放置的网页就可以实现图片的显示,从而实现图片显示的局部刷新。实现代码如下:

当用户尝试访问ShowLittleFigure.aspx界面时,主界面就会产生局部刷新效果。

4 结束语

武器装备IETM的研制是一个复杂的系统工程,技术涉及面广,开发要求高。本文依据GJB6600系列标准,基于.NET技术,设计了IETM系统的数据访问架构,通过XSLT实现了XML文件解析,利用Iframe解决了图片显示模块的局部刷新问题,完成了某型航空装备IETM系统开发工作。符合装备保障信息化发展趋势,具有较好的易用性和可扩展性,为其它航空装备IETM系统的开发提供了一个有益的借鉴和参考。

[1]徐宗昌.装备IETM研制工程总论[M].北京:国防工业出版社,2012.

[2]朱兴动.武器装备交互式电子技术手册—IETM[M].北京:国防工业出版社,2009.

[3]钟志东.ASP.NET4(C#)项目开发教程[M].北京:北京航空航天大学出版社,2011.

[4]孙士保,等.ASP.NET数据库网站设计教程(C#版)[M].北京:电子工业出版社,2010.

[5]刘洪,陈志勇,杨瑛.基于GJB6600的 IETM创作研究[J].舰船电子工程,2011,31(5):34-37.

[6]刘洪,黄振和,洪金珠.基于GJB6600的IETM通用创作平台研究[J].指挥信息系统与技术,2011,2(1):11-15.

[7]李宗亮.基于S1000D标准的IETM系统技术研究[D].广州:广东工业大学,2006.

[8]梁琰,贺喆,马力.交互式电子技术手册通用开发平台设计与实现[J].计算机测量与控制,2011,19(5):1145-1147.

[9]常雷,杜晓明,邵云峰,等.装备IETM内容数据模型研究[J].微计算机信息,2008,24(1):290-292.

[10]王瑜,方群,杨斌.基于.NET的IETM在指挥自动化装备保障中的应用研究[J].电脑与信息技术,2010,18(6):59-63.

[11]胡耀光,孟小华,李展.S1000D规范下IETM中数据模块的设计与实现[J].计算机工程与设计,2009,30(13):3222-3224,3250.

[12]王卫国,朱觅.空空导弹交互式电子技术手册探讨[J].国防技术基础,2007,8(8):46-49.

[13]孙惠,许洁.交互式电子技术手册技术插图的研究与探讨[J].信息与电脑:理论版,2011(10):7-8.

[14]张月雷.航空维修IETM关键技术研究和应用框架设计[D].南京:南京航空航天大学,2007.

猜你喜欢
控件航空装备
好装备这样造
港警新装备
“闪电航空”来啦
“闪电航空”来啦
防晒装备折起来
关于.net控件数组的探讨
达美航空的重生之路
ASP.NET服务器端验证控件的使用
一战航空百年回眸
基于嵌入式MINIGUI控件子类化技术的深入研究与应用