首页 > 范文大全 > 正文

浙江电网继电保护设备评价管理系统的构建

开篇:润墨网以专业的文秘视角,为您筛选了一篇浙江电网继电保护设备评价管理系统的构建范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要: 浙江电网继电保护设备评价管理系统目标在于针对各个厂家的设备运行数据,进行客观的评价考核,形成对各厂家各设备的评价体系,为继电保护设备的管理和选型工作建立标准。系统采用开发J2EE技术,基于Struts + Spring + Hibernate的经典MVC架构,使用AJAX技术以提高前台展现效果。文章阐述了继电保护设备评价管理系统的物理结构和总体技术框架,详细描述了功能模块的划分,分析了关键技术(数据同步技术、jQuery、工作流技术与模板引擎技术、JACOB和POI等)在系统中的应用。系统为继电保护状态检修的辅助决策以及设备选型与管理等工作提供了重要手段,有效地提高了电网的信息化管理水平。

关键词: 继电保护设备; 评价管理系统; J2EE技术架构; jQuery; 工作流技术; 模板引擎技术

中图分类号:TP315 文献标识码:A 文章编号:1006-8228(2012)04-24-05

Evaluation and management system of Zhejiang Grid relay protection equipments

Qian Lidan

(Department of Information & Technology, Zhejiang Professional Training College of Economic & Trade, Hangzhou, Zhejiang 310018, China)

Abstract: The purpose of evaluation and management system of Zhejiang Grid Relay Protection Equipments is to provide an objective evaluation and assessment, and establish standards of selection and management of relay protection equipments for Zhejiang Grid, through analyzing the running data of manufacturers’ relay protection equipments. To ensure the technology leading in a period of time, the system, which is based on Struts + Spring + Hibernate classic MVC architecture, uses the latest J2EE technologies. It employs AJAX technology to improve the front-desk exhibition effect. The system's physical structure and overall technical framework are introduced in this paper. Then its function modules and some key technologies (including Data synchronization, jQuery, workflow and template engine technology, JACOB and POI) are discussed. Building the system, on one hand, provides decision support for relay protection equipment maintenance, and a reference for selection and management of relay protection equipments, on the other hand, can effectively improve the information management level.

Key words: relay protection equipments; evaluation and management system; J2EE technical architecture; jQuery; workflow; template engine technology

0 引言

随着电网规模不断扩大以及微机保护技术的日趋成熟,继电保护设备数量急剧增长,保护设备制造厂家呈现多元化的趋势,不同厂家保护设备型号多,产品运行质量也参差不齐,这给继电保护入网管理、设备选型等工作带来了很大的挑战,迫切需要开展各厂家保护设备运行质量评价工作[1]。此外,继电保护状态评估时对家族性信息的依赖性非常大,因此也有必要对保护设备(线路保护、母线保护、变压器保护、电抗器保护等)的运行信息进行综合统计,形成相应的指标为继电保护设备检修的辅助决策提供依据。继电保护设备评价管理系统针对各个厂家的设备运行数据,进行客观的评价考核,形成对各厂家各设备的评价体系,为继电保护设备的管理和选型工作建立标准。

继电保护设备评价管理系统必须达到下列目标:符合现代信息技术发展的趋势,保证系统在一定时期内的技术领先性;模块化结构,支持跨平台互联;系统能够适应不断增加的功能要求,并能以最简单的方式、最小的投资进行功能扩充;采用“面向数据的设计方法及面向对象的开发方法”将各种不同的原始数据和文档加工成数字化信息,实现信息的统一管理;采用WWW技术,实现各种维护、查询界面的统一性;在确保应用系统本身稳定运行的基础上,科学地划分业务人员的权限,根据权限确定其可以使用的功能,防止企业核心信息及机密信息的外泄,以确保系统的安全性和保密性;适应电力行业的需要,符合电力行业标准;系统遵循ISO9000的有关软件开发的国际标准。

1 系统设计

1.1 系统物理结构

系统的物理结构如图1所示,其中,数据库服务器为整个系统提供数据库服务,采用Oracle 10g数据库作为系统数据库。采用Tomcat(或JBOSS)作为WEB应用容器。客户端:系统采用B/S结构,客户端直接用浏览器访问服务器,采用IE 6以上版本作为客户端,也可使用Opera、Firefox等浏览器。数据同步服务器用于为系统提供数据同步服务,用于与生产管理系统和项目检修辅助决策系统进行数据交互,可与应用程序服务器合并。

图1 应用系统物理结构图

1.2 总体技术框架

J2EE[2]是一种利用Java 2平台来简化诸多与多级企业解决方案的开发、部署和管理相关的复杂问题的体系结构。本系统采用最新的J2EE技术,基于Struts + Spring + Hibernate经典MVC架构,使用AJAX技术提高前台展现效果,使用jQuery作为AJAX应用框架。利用以上多种主流开源技术能够构建成一个完整的、可扩展性强的整体技术框架。系统技术框架结构如图2所示。

图2 总体技术框架图

系统从职责上分为四层:WEB层、业务逻辑层、数据持久层和实体层。其中使用Struts作为系统的整体基础架构,负责MVC的分离;在Struts框架的模型部分,利用Hibernate框架对持久层提供支持,业务层用Spring支持。具体做法是:用面向对象的分析方法,根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO接口,并给出Hibernate的DAO实现,采用DAO类来实现Java类与数据库之间的转换和访问,最后由Spring完成业务逻辑的处理。

系统的基本处理流程是[3]:在WEB表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts2根据Annotation(约定大于配置)将Struts2Filter接收到的Request委派给相应的Action处理。在业务层中,管理服务组件的Spring IOC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。而在持久层中,则利用Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。

采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,可以提高系统的可复用性。而且由于不同层之间耦合度小,有利于团队成员并行工作,提高开发效率[4]。

浙江电网继电保护设备评价管理系统利用大型数据库Oracle提供高性能、可靠性高的海量数据存储能力储存浙江电网继电保护运行质量评价考核系统业务数据。目前浙江电网继电保护运行质量评价考核系统支持Oracle 10g及以上数据库。

1.3 功能模块

系统共分为7个功能模块:用户登录模块、地区继电保护专业考核、设备台账管理、设备缺陷分析、继电保护运行质量评价、用户权限管理、系统公共模块。应用系统功能模块划分如图3所示。

图3 应用系统功能模块图

⑴ 用户登录模块

用户登录模块提供了用户登录到系统、用户安全退出系统的功能。用户登录后,系统根据不同的权限设置显示不同的菜单结构。用户登录之后显示的默认首页中,除系统头部和菜单区域之外,有最新动态、当前正在进行的地区专业考核信息、当前正在进行的运行质量考核信息、设备台帐查询入口、缺陷分析查询入口、几个关键的报表(设备概况、市场占有率、缺陷分类、制造厂家分类)。

⑵ 地区继电保护专业考核

地区继电保护专业考核以地区为考核对象,从各项设定的考核项目按照规定的检查标准和评分标准,对考核地区按照相应流程进行考核评分。

其中的考核项目维护模块提供了对考核项目增删查改的功能。考核报告模板维护模块提供对考核报告模板的增删查改操作,主要是通过填写报告名称、上传模板文件,删除模板,修改模板关联的文件来实现的。在模板内容中,需要动态统计考核结果才能得出的数据可以以占位符的形式存在报告模板中,在考核结束导出word格式评价报告时系统会将占位符替换为相关数值或文字。考核模块提供整个实际考核流程的相关功能,具体包含:新建考核、当前考核维护与查询、 考核、考核流程、考核结束、考核结果查看。

考核评分统计报表模块提供对考核结果的统计功能。历史记录查询模块提供对历史考核和历史评价报告的查询功能。

⑶ 设备台账管理

可以统计各厂家保护设备的数量、型号,可以计算某型号保护装置的故障率、平均无障碍时间、使用寿命等指标。

其中。原始数据导入模块可通过导入excel文件或数据库接口同步。继电保护设备查询模块:设置字段的查询条件,对导入的数据列表进行筛选,显示符合查询条件的数据。查询条件设置,采用了输入框和下拉列表选择结合的方式。继电保护设备分析模块:根据excel导入的数据,按用户选择的报表类型,设置相应的算法,生成报表。自定义报表模块,可根据用户自定义的报表模板生成统计报表。

⑷ 设备缺陷分析

为了使运行考核系统从现行的故障运行系统中获取继保设备的故障记录,设备缺陷分析模块包含三个子模块:缺陷数据导入模块、缺陷数据查询模块、缺陷报告管理模块。缺陷数据导入模块提供两种数据导入方式:使用excel导入缺陷数据时,需要excel格式正确无误;使用Database文件导入时,要求文件后缀名为.sql。导入后缺陷数据将写入系统数据库。缺陷数据查询模块提供对缺陷数据各字段的检索功能。缺陷报告管理模块提供用户自定义报表、报表模板维护、生成报表功能。自定义报表目前支持2维报表,用户可以选择报表的横列、纵列、表名、单元格运算公式等。生成报表功能根据用户选择的报表模板生成统计报表。

⑸ 继电保护运行质量评价

继电保护运行质量评价模块以制造厂家为评价对象,不再区分保护类别。它从质量控制体系、工程服务、运行质量、售后服务等四个方面考核厂家的运行质量和服务质量。除故障率需要统一计算外,其他项目系统按照地区局上报的厂家运行质量服务投诉记录进行倒扣分。

其中的评价项目维护模块提供了对评价项目增删查改的功能。评价报告模板维护模块提供对评价报告模板的增删查改操作。该模块通过上传模板文件使报告模板与特定模板文件关联。评价模块提供整个运行质量评价流程的相关功能,评价流程为:根据缺陷分析模块的数据,计算出相关厂商的设备故障率,并根据算法计算设备故障率栏目下的得分;导入厂家运行质量服务投诉记录,系统解析该记录,并对评价中的各项目计算最终得分。

质量投诉记录模块提供了对日常服务记录的增删查改功能。评分统计报表模块提供对评价结果的统计功能。历史记录查询模块提供对历史评价和历史评价报告的查询功能。

⑹ 用户权限管理

为系统管理员提供用户的增加、删除功能,并为普通用户提供修改密码的功能。系统管理员可在此设置用户的角色,并可定义用户权限。

普通用户不能自行修改用户名、角色、权限等系统设置,其它信息用户可在个人设定里进行更改。

角色管理为系统提供各种角色的管理。为方便管理员进行管理,系统默认设置了系统管理员、数据管理员、检查员、项目负责人、地区用户、普通用户六个类型的角色。默认情况下,系统管理员可进行任意操作,数据管理员可进行基础数据维护及台帐数据、运行数据的维护。

系统管理员可在此进行权限的管理,包括进行角色权限定义和用户权限的设置。

⑺ 系统公共模块

主要提供了修改用户登录密码的功能。该模块还提供数据字典管理功能。数据字典管理是在新系统数据流程图的基础上,进一步定义和描述所有数据的工具,包括对一切动态数据(数据流)和静态数据(数据存储)的数据结构和相互关系的说明,是数据分析和数据管理的重要工具,是系统设计阶段进行数据库(文件)设计的参考依据。该模块主要是是对整个系统的一些数据经行增删改查操作。除此,该模块提供远程数据库设置功能,

2 系统使用的关键技术

2.1 数据同步

根据实际情况,可采用几种同步方式:

⑴ 数据库直接同步:利用Oracle数据库提供的数据同步功能,可以直接让系统的数据与生产管理系统的数据库中的台帐和运行数据同步。这种方式实时性最好,但对硬件要求较高,同时有可能会给生产管理系统的数据库带来额外的负担。

⑵ 通过数据接口获取数据:在生产管理系统提供数据接口的前提下,用户可配置定时读取的时间和内容,然后在系统中调用数据接口进行读取。由于系统采用的技术框架中利用了IOC技术,在后期只要对提供的数据接口进行简单的再次封装和配置,系统就能完成该功能。实时性基本可以满足系统需求。

⑶ 导入导出Excel文件数据:系统利用Apache的POI组件,可提取Excel文件中的数据,并放入数据持久层,然后由数据持久层写入到数据库中。采用这种方式实时性最差,操作人员的工作量也较大。

2.2 jQuery

jQuery[5]是继prototype之后又一个优秀的Java script框架。其宗旨是写更少的代码,做更多的事情。jQuery是轻量级的js库,它兼容CSS3,还兼容各种浏览器,如IE,FF,Safari,Opera9等。jQuery使用户能更方便地处理HTML documents、events,实现动画效果,并且方便地为网站提供AJAX交互[6]。jQuery提供了许多成熟的插件,能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。系统使用jQuery作为AJAX应用框架,有效地简化了系统开发工作。我们对评价模块中的新增考核项页面的有效性验证就用了jQuery,给出代码如下:

$(document).ready(function(){

//聚焦第一个输入框

$("#name").focus();

//为inputForm注册validate函数

$("#inputform").validate({

rules: { name:{required:true, maxlength:250},

scoreStandard:{required:true, maxlength:250},

scoreMethod:{required:true, maxlength:250},

basePoint:{ required:true, number:true, min:0 },

weight:{ required:true, number:true },

displayTypeId:{ required:true } },

messages: { }

});

});

2.3 工作流技术与模板引擎技术

⑴ 工作流技术

jBPM[7],全称是Java Business Process Management(业务流程管理),它是覆盖了业务流程管理、工作流、服务协作等领域的一个开源的、灵活的、易扩展的可执行流程语言框架。jBPM最大的特色就是它的业务逻辑定义没有采用目前的一些规范,如WfMC´s XPDL, BPML, ebXML, BPEL4WS等,而是采用了它自己定义的JBoss jBPM Process definition language (jPdl)。jPdl认为一个业务流程可以被看作是一个UML状态图,可通过图型化的流程定义,直观地描述业务流程。jBPM的另一个特色是它使用Hibernate来管理它的数据库。Hibernate是目前Java领域最好的一种数据存储层解决方案,只要是Hibernate 支持的数据库, jBPM 也就支持。通过Hibernate,jBPM将数据的管理职能分离出去,自己专注于业务逻辑的处理。

系统采用了jBPM工作流技术,搭建以现场服务记录为基准、以工作流引擎为线索、以预设考核指标为标准的多级电网继电设备考核评审工作流程,确保从现场环境到管理部门的分工合作,使考核评价工作全流程达到客观、高效的目标。

⑵ 模板引擎技术

Velocity[8]是一个基于Java的模板引擎(template engine)。它允许任何人只要简单地使用模板语言(template language)来引用由Java代码定义的对象。当Velocity应用于Web开发时,界面设计人员可以和Java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由Java程序开发人员关注业务逻辑编码。Velocity将Java代码从Web页面中分离出来,为Web站点的长期维护提供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案。

Velocity的能力远不限于Web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。Velocity也可以为Turbine Web开发架构提供模板服务(template service)。

我们采用Velocity模板引擎技术,构建了基于模板引擎技术的考核指标算法定义系统,利用模板语言进行公式、参数、算法的定义和计算,实现了考核指标的灵活智能化定义,保证了考核评价工作的规范化和客观化。

2.4 JACOB和POI

为了提供自动生成考核评价报告的功能,系统采用了JACOB(Java-COM-Bridge)组件操作Word模板文档,用统计运算后的考核数据替换模板中的占位符,从而实现了评价报告的自动生成。在地区继电保护专业考核等模块中,系统利用Apache的POI组件,提取Excel文件中的数据,并放入数据持久层,然后由数据持久层写入到数据库中,在对数据进行统计分析后,最终生成相应的Excel报表。

⑴ JACOB组件

JACOB[9]是 JAVA-COM Bridge的缩写,是一个开始于 1999年的开源项目。JACOB提供自动化访问com的功能,通过JNI访问Windows平台下的com组件或者Win32系统库。JACOB具有可扩展的特性,利用它可以轻松实现在Java中操作word文档,目前最新的版本是JACOB-1.省略/下载。系统的地区继电保护专业考核模块和继电保护运行质量评价模块都使用了JACOB组件,用于导出地区专业考核报表以及生成最终评价报告。

⑵ POI组件

Apache的POI组件是Java操作Microsoft Office办公套件的强大API,对Word,Excel和PowerPoint都有支持。由于Office 2007的文件结构完全不同于2003,所以对于两个版本的Office组件,POI有不同的处理API,需要分开使用。POI组件可以方便地操作Excel中的所有元素。以Office 2003为例,生成Excel文件的一般步骤是:首先利用HSSFWorkbook和HSSFSheet生成工作表,接着利用HSSFCellStyle设置单元格样式、利用HSSFRow生成表格头、利用HSSFCell设置表头内容(包括创建单元格、设置列宽、填写表格实际内容)、最后设置具体的考核项目内容。Office 2007的处理流程与2003是类似的,区别就是使用的对象不同,2003中对象是HSSF*格式的,而2007是XSSF*格式的[10]。

3 系统特点及实现

继电保护设备评价管理系统采用了多种主流开源技术,系统具有很强的可扩展性,系统针对各厂家继电保护设备运行数据进行客观评价与考核,为继电保护设备的管理和选型工作建立标准。系统的运行界面如图4所示,系统具备如下特点:

⑴ 搭建以现场服务记录为基准、以工作流引擎为线索、以预设考核指标为标准的多级电网继电设备考核评审工作流程,确保从现场环境到管理部门的分工合作,使考核评价工作全流程达到客观、高效的目标。

⑵ 构建基于模板引擎技术的考核指标算法定义系统,利用模板语言进行公式、参数、算法的定义和计算,实现了考核指标的灵活智能化定义,保证了考核评价工作的规范化和客观化。

⑶ 构建电网继电设备台帐和电网继电设备缺陷数据库,并在该数据库上实现了自定义多维统计报表,可以灵活进行多方位的数据统计工作,并形成丰富多样的报表。

图4 系统运行界面

4 结束语

综上所述,继电保护设备评价管理系统采用“面向数据的设计方法及面向对象的开发方法”将各种不同的原始数据和文档加工成数字化信息,实现了信息的统一管理;通过对电网继电保护设备运行信息的综合统计,形成相应的指标,为继电保护状态检修的辅助决策提供了重要的参考依据。继电保护设备评价管理系统针对各个厂家的设备运行数据,进行客观的评价考核,形成对各厂家各设备的评价体系,适应了电力行业的需要,符合电力行业标准,能够为继电保护设备的管理和选型工作提供帮助。

参考文献:

[1] 周宝忠,卢大海,王立冬,等.关于大电网继电保护统计分析及运行管理系统[J].黑龙江电力,2010.3(26):458~460

[2] 任勇.基于J2EE的管理信息系统的开发与研究[D]. 北京化工大学,2006.

[3] 王海涛,贾宗璞.基于Struts和Hibernate的Web应用开发[J].计算机工程,2011.37(9):112~114

[4] 张琛,吴跃,邱会中.基于Struts+Spring+Hibernate的整合架构及其在电信业务中的应用[J].计算机应用,2006.26(12):265~266

[5] 罗小平.小议JavaScript库―Dojo、jQuery和PrototypeJS的比较[J]. 程序员,2008.8:105~108

[6] 尹婷,赵思佳. 基于jQuery框架的AJAX网站设计模式的研究[J].湖南环境生物职业技术学院学报,2010.16(3):1~4

[7] 顾文轩,王琼, 徐汀荣.基于JBPM的工作流管理系统的研究与设计[J].计算机应用与软件,2009.26(5):104~106

[8] 邢昊,张凌,张平,等.基于Velocity的J2EE开发模式及其应用[J].计算机应用,2003.23(1):48~50

[9] peter. Java调用com组件操作word使用总结(JACOB)[EB/OL].(2010-12-16)[2011-6-30]. .

[10] sarin. Apache POI组件操作Excel:制作报表[EB/OL].(2011-5-29)[2011-7-12]. sarin.省略/blog/845035.