基于.NET的燃油加油机检测数据智能化管理系统的研究与实现

2013-05-14 07:26陈全印
计量技术 2013年11期
关键词:加油机引擎燃油

王 凯 陈全印 吴 薇

(西安计量技术研究院,西安 710068)

0 引言

近年来,伴随着我国经济实力的不断增强,计量事业的蓬勃发展,业务量的不断增加,如何有效地提升计量技术机构的管理水平、工作效率、服务质量,从而提高整体竞争力是目前计量工作面临的重要课题。

计量检测数据的获取、处理与管理是计量技术机构日常检测工作中最为常见,也最为繁琐的一项工作。该工作是保证检定、校准数据和结果准确性的关键,具有重复度高、工作量大、数据计算量大、专业性强、技术性含量高的特点,以往靠人工处理费时费力,准确性难以保证,并且智能分析、统计、汇总检测数据难度大,因此,对数据信息实行智能化管理、自动化处理是当务之急[1]。

基于上述原因,为了有效地提高工作效率与工作质量,针对我院的燃油加油机检定项目,主要依据JJG 443—2006《燃油加油机》检定规程[2],提出了构建燃油加油机检测数据智能化管理系统。

1 解决方案

燃油加油机检测数据智能化管理系统是基于Word+.NET+SQL Server解决方案。该方案主要是通过使用.NET平台开发的应用程序,对通过便携或者固定的计算机终端录入系统的原始检测数据按照规程的规定要求进行智能化处理,将数据处理结果插入已经设计好的Word模版中,同时把相应的检测数据及其处理结果存储到SQL Server数据库中;当需要对检测数据以及数据处理结果进行查询、统计、汇总时从数据库中提取相应数据;从而构成以一个集数据处理、统计、汇总,业务查询、分析为一体的智能化管理系统。

该解决方案成功实施的关键是“Word数据自动转化引擎”的实现,其数据转换如图1所示。

图1 Word数据自动转化示意图

基于该解决方案实现“燃油加油机检测数据智能化管理系统”的优点如下:

1)实现计量检测从数据采集,检测数据有效性验证、自动处理、自动计算,检测标准自动查找;记录审核、签发、打印;信息数据统计、汇总、综合查询、科学分析、领导管理等全过程智能化、自动化。

2)记录模版灵活控制。由于原始记录模版是采用Word编辑生成,而Word具有普及面广,易操作等特点;当原始记录、数据汇总等模版的要求发生变化时,用户可以根据实际情况方便、快捷地重新定制。

3)易于与其它系统集成。系统中的所有数据都是以XML形式存在,且都有对应的Schema,这样系统所采集进来的数据或已汇总的数据都可被外部系统使用。

2 数据自动转化引擎的设计与实现

Microsoft Office Word是使用最为广泛的办公软件,它具有强大的功能,非常友好的用户操作界面。在实际应用中,Word不仅具有文字编辑功能,还可作为其它应用程序的可扩展环境输出结果。在本系统中,通过应用程序对Word进行控制,满足特定要求。

图3 数据自动转化引擎类图

2.1 数据自动转化引擎的设计

数据自动转化引擎主要解决系统与Word交互的问题,通过引擎把与检测相关的数据及其处理结果与数据库中存储的信息数据输出到设计好的Word模板上,它的作用相当于一个数据转换管理器,以一个软件组件的形式运行在业务应用中。“引擎内部用例”的活动图如图2所示。

引擎设计思路是从够用、灵活和低成本的设计原则出发。基于设计原则,引擎的设计主要从以下几个方面考虑:

1)引擎支持顺序、分支、并发、循环、同步、异步流程的流转,在分支上可以定义条件,实现按条件自动流转,条件转移之间还可设置逻辑关系;

2)用户之间相互协作,交换数据,从而提高引擎处理业务流程的灵活性和适用范围;

3)如引擎状态异常,可对引擎进行重新启动,如重新启动几次后仍然异常,发信号给备份服务器启动引擎,加载原有引擎工作状态,保证关键业务不被中断。

2.2 数据自动转化引擎的实现

Word的开发形式一般有两种:一种是VBA;另一种是高级语言。本系统采用高级语言的形式,由.NET环境下的C#托管代码,该方法执行效率高,可控性强。采用程序控制的形式需要导入COM组件,利用COM技术在C#程序中使用COM提供的各种函数来达到完全操作Word文档的目的;COM技术既提供了组件之间进行交互的规范,也提供了实现交互的环境。

数据自动转换组件最终是借助映射机制实现数据自动转换,具体方法是:通过调用COM组件中的对象,来实现数据自动转换。步聚如下:读取模版,建立映射,导出数据,生成Word文档。添加调用的COM组件为:Microsoft.word 11.0 object library,调用后会在“解决方案资源管理器”引用项中多出三个引用:Microsoft.Office.Core,Microsoft.office.Inte- rop.Word,VBIDE。引擎的实现就围绕着以上三个引用。

数据自动转化引擎的功能实现采用面向对象的方法,将引擎具有的功能分成各个方面,进行开发。引擎主要包含:WordOperation类,FunctionManage类,DbHelperOleDb类,AutoGenerate类,类图如图3所示。把这些类封装成组件,相互配合实现数据自动转化引擎的功能。

3 燃油加油机检测数据智能化管理系统的实现

3.1 系统功能与体系结构

该系统完成的主要功能模块:系统管理,数据库维护,计量基础数据管理,计量检测数据计算平台,计量检测数据管理,计量标准器及辅助检测设备管理,计量检定规程、规范及人员管理,模板管理,数据统计分析管理等。

系统采用三层体系架构,将各种通用的或专用的模块封装在组件中,作为一个共享的服务的集合,它是一种跨应用、可重用的服务平台,便于开发与维护,与目前计算机软件技术的发展相一致。系统具有良好的伸缩性、扩展性,能最大限度地重用功能相同的组件,达到软件组件重用性的目的【3】。这三层分别是:客户层、业务处理层、数据层。系统体系架构如图4所示。

图4 系统体系架构

3.2 系统实现

本平台的开发环境为C#.Net2008,WCF(Windows Communication Foundation),SQL Server 2005【4】。下面着重介绍计量检测数据计算平台的实现,运行界面如图5所示。

该平台能够采用便携或者固定的计算机终端现场采集原始检测数据,通过计算、分析得出检定结论;可生成、查看、保存检定原始记录文档,保存数据到数据库存档;可对相关计算参数进行设置管理,根据参数系统能实时更新数据。平台界面参照原始记录的格式进行设计,减小了操作人员的熟悉时间,降低了误操作的可能性,检定员在界面上输入必要的计算参数,系统会自动计算出过程变量和最终结果。输入的必要参数包括:检定介质油品和量器材质、标准值、分度值、油枪出口处温度、标准量器内温度、标准量器刻度、加油机示值、时间和外观情况。结果值包括:标准量器示值、流量、实际体积值、单次测量相对误差、示值误差、重复性和检定结论。对于常用参数可以保存到系统中,避免重复输入。原始记录生成后可以直接打印或者保存为Word文档,也可以保存到后台数据库,并提供查看,方便了以后检定信息数据的管理[5-6]。

4 结束语

本文介绍了我院的燃油加油机检测数据自动化处理软件, 该软件使用后极大地减轻了我院加油加气检测中心检定人员的工作量,提高了工作效率与工作质量,规范了检测数据和文档管理,使检定工作更加有效、统一的开展。在该系统基础上还可进一步进行检定项目的扩充,使软件系统覆盖的检定项目更加全面,更加符合计量技术机构的业务需求。

图5 系统运行界面

[1] 黄松涛,水利民.计量器具软件检测亟待开展.计量技术,2009(6)

[2] 王子钢,等.JJG 443—2006 燃油加油机检定规程

[3] 汪洋.NET应用架构设计:原则、模式与实践.北京:机械工业出版社,2012

[4] Dejan Sunderic著.SQL Server 2005 T-SQL&.NET高级编程.第3版.曹俊,姜龙芳,译.北京:清华大学出版社,2008

[5] 周涛,周星明.加油机检定中应注意的两个问题.计量技术,2008(1)

[6] 李论国.加油机检定技术若干问题的研究.中国高新技术企业,2007(5)

猜你喜欢
加油机引擎燃油
日本首架KC-46A加油机完成首次空中测试
燃油加油机检测中的事故防范
燃油泄漏闯了祸
运-20加油机能载多少油
蓝谷: “涉蓝”新引擎
无形的引擎
基于Cocos2d引擎的PuzzleGame开发
奔驰S500车燃油表不准
迈腾1.8TSI车燃油消耗量大
奔驰GLA200车燃油表显示异常