配网台账抽取工具的设计与实现
扫描二维码
随时随地手机看文章
引言
图模库一体化是当前EMS重要的建模技术,该建模方式可大大减轻用户生成和维护网络拓扑关系的工作量,将传统PAS系统的网络拓扑等功能,方便地移植到SCADA系统上来,是调度自动化系统及PAS分析软件实用化的重要基础。图模库一体化输出的文件采用SVG格式,包括设备的图形化抽象、设备状态、设备连接关系、设备台账信息、设备运行信息等。
1系统设计
1.1技术架构
本项目基于JavaEE平台构建,包括Java容器Apache/Tomcat服务器以及中间件Spring+IBatiS+DwR。Spring是为了解决企业应用开发的复杂性而创建的,它是一个轻量级的控制反转(IoC)和面向切面(AoP)的JavaBean容器框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情,具有轻便、易使用、易扩充、用途广泛等特点。
IBatiS是对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲地使用对象编程思维来操纵数据库。iBatiS摒除了大部分的JDBC代码、手工设置参数和结果集重获,只使用简单的XML和注解来配置和映射基本数据类型、Map接口和PoJo到数据库记录。相对Hibernate和ApacheoJB等"一站式"oRM解决方案而言,iBatiS是一种"半自动化"的oRM实现,它使得程序的持久化过程变得可以重用、可配置、易于编写和管理,而且也易于调试。
DwR是RPC技术,它通过反射等技术将后台的Java服务类直接暴露给前台JavaScript,使得前台JS代码调用后台的Java方法就如同直接调用JS方法一样,直截了当,简单方便。
1.2数据处理流程
软件系统把大量的图模一体SVG文件解析出来,生成一个庞大的设备树,树的层次简单分为:茂名局一变电站一馈线一支线/设备一设备。软件系统按照数据库表结构要求,逐一生成每个设备的参数信息,插入到对应的数据表中。软件系统基于数据库表来导出需要的设备台账XLS文件,或者提供各种设备台账查询及统计功能。
这里除了需要1.1所列的技术框架支持外,还主要用到EXcel的JavaAPI接口如POI/SAX技术,以产生输出各种台账XLS文件。如杆塔设备,由于数据量庞大,需要使用SAX技术,以避免Java由于行数过多而导致的处理异常。
数据处理流程如图1所示。
图1数据处理流程图
1.3单线图SVG文件分析
单线图SVG文件完整的描述参见《结构化图模一体SVG单线图格式规范》,其与SVG标准严格兼容,不增加任何私有标记,能通过SVG标准的严格校验,可由通用的标准SVG显示软件(如AdobeIlluStrator)正常显示。单个SVG图形文件中包含拓扑信息、设备信息与自动化信息,不存在图模不一致问题。图形导入时可自动建立自动化系统数据库信息点表。设备参数中包含GPS坐标,可实现地理沿布图的自动绘制。
SVG文件描述的核心就是设备,包括容器设备和简单设备。容器设备是指包含其他设备的设备,有馈线、支线、环网柜、分支箱、开关站、配电房、箱变、间隔、母联等:其中环网柜、分支箱、开关站、配电房、箱变这五种容器设备又特别称为"组合设备"。与容器设备对应,简单设备指不包含其他电气设备的设备,有杆塔、导线、开关、刀闸、地刀、熔断器、电流互感器、电压互感器、配变、电站、母线等。除了容器设备和简单设备,还有一种特殊的设备是附属设备,它们没有电气连接关系,而是包含在其他设备中的设备,如故障指示器、数据终端、量测等。
以下为几个容器设备/简单设备在SVG文件中的保存格式说明:
1.3.1刀闸
刀闸的供电分局、变电所、变电站信息要从刀闸所属的顶层节点一馈线里解析获得,支线信息从属支线节点里获得(直接属于馈线的刀闸,支线名称用馈线名)。在刀闸元素<metadata>子节点里可以解析获得刀闸名称、设备编号、运行状态等信息。
1.3.2杆塔
杆塔的供电分局、变电所、变电站信息要从杆塔所属的顶层节点一馈线里解析获得,支线信息从属支线节点里获得(直接属于馈线的杆塔,支线名称用馈线名)。在杆塔元素<metadata>子节点里可以解析获得杆塔名称、运行状态、经纬度等信息。
1.3.3支线
支线是图模一体文件中一个重要的元素,设备的层次结构通过支线这个元素来描述实现。支线元素节点里的子节点是支线上的设备,排列顺序就是设备的连接次序、连接关系。支线里还会包括支线,依次递归。
支线元素的所属支线信息,从SVG文件支线节点的上层支线元素获得,若上层是馈线,则所属支线名称用馈线名。其他信息与上面设备相似。
1.4数据库设计
数据库表包括变电站表、线路表(馈线/支线)、组合电器表(环网柜/分支箱/开关站/配电房/箱变)、分解箱表(环网柜/分支箱)、开关表、刀闸表、配变表、母线表、导线表等等。数据库字段设计如图2所示。
2系统功能
2.1登录与用户管理
(1)角色管理:系统提供角色管理模块,将用户分成不同的类别等级,以赋予不同用户不同的操作权限。
(2)用户管理:用户管理提供系统访问用户的创建、修改、删除功能。
(3)私有信息管理:该模块给用户提供便利的修改密码的功能。用户密码通过加密,保存到数据库用户表里。
(4)用户登录:系统访问的入口。
2.2主界面
系统主界面提供工具软件的总入口和功能总体展示,包括菜单工具条以及模块功能介绍信息块等。
2.3GIS图模文件上传
用户指定SVG文件目录,将该目录下的所有SVG上传至服务器。系统生成的GIS图模文件数量众多,全部文件或大量文件上传用时太长,系统支持按压缩方式上传,压缩文件上传服务器后系统再解压到指定目录下。另外,也支持少量几个文件的上传功能。
服务器端包括两个目录,一个目录是全部文件的目录A,另一个是本次上传的文件目录B。每次上传文件,将目录B所有文件删除,再把文件拷贝到该目录,同时将上传文件拷贝到目录A(增加或覆盖)。
2.4GIS图模文件解析器
GIS文件格式参见前面所述。
文件解析器模块包括两个线程,一个负责文件解析,一个负责将内存IA0导入到数据库里。GIS图模文件解析目录A下的所有文件,得出设备台账信息,维护N个二维内存表,然后将这几个内存表依次导入到设备台账数据库里。
2.5设备台账模型导出
模型导出工作分全模型导出和差异模型导出,分别对应3个界面。全模型导出,将所有设备的台账导出,保存为XLS文件:差异模型导出,模型表具有版本信息,按照版本信息,导出差异模型XLS文件。另外下载到客户端。
导出模块耗时较长,由状态控制器负责管理,以防止多用户操作冲突以及单用户多次执行、未结束重复执行的情形发生。另外还要包括数据库事务功能,防止数据错乱。
2.6单线图浏览及设备查看
左侧列出所有的SVG文件列表,按字母顺序排列:右侧是SVG单线图浏览面板,选择馈线SVG文件,在右侧显示SVG单线图,组件可方便地支持SVG的拖动缩放。
2.7设备模型浏览
设备模型浏览实现设备参数的查询浏览。左栏是设备树,右栏分两部分,上面是设备列表,下面是选择设备的台账信息。设备子节点的顺序以及右上部设备列表的顺序就是设备电气连接关系的顺序。点击容器/组合电器节点,右上部显示该电器包含的子设
备:点击简单设备,右上部只显示一条记录,即该简单设备。
2.8操作日志查看
操作日志记录上传SVG文件的操作信息(日期、文件个数、版本号等),提供按时间范围以及日志类型的查询。点击详情,可查看该操作处理的SVG文件的列表等信息。
3结语
此次研究充分利用挖掘了图模一体化SVG文件这一大数据资源,解析出了配网全系统的设备台账数据,提供了多种形式的设备台账查询功能,并能按需导出设备台账的XLS格式的文件,以松耦合的方式,方便地给其他系统提供台账数据。