变压器分接头实时数据库系统开发

2011-06-07 06:25卫志农王成亮姜理源
电力工程技术 2011年6期
关键词:数据库系统面向对象数据表

于 峰 ,卫志农 ,王成亮 ,姜理源

(1.河海大学能源与电气学院,江苏南京 210098;2.江苏方天电力技术有限公司,江苏南京 211102)

变压器是交流输电、变电、配电过程中的主要设备之一,随着电网的扩大、发电机容量的增大、输电电压的提高以及输电功率的加大,其运行参数直接影响着电力系统的稳定、经济运行[1,2]。因此,建立一套变压器分接头数据库,以供运行人员进行数据管理维护和电力系统运行分析十分必要。

.NET框架是一个功能非常丰富的平台,可开发、部署和执行分布式程序[3]。结合公共信息模型(CIM)对变压器分接头相关数据的面向对象型描述,采用应用程序接口函数(API)存储分接头实时数据,然后通过编写.NET数据提供程序访问读取实时数据库系统数据,并采用Ajax(Asynchronous Java-Script and XML)网页技术,实现了变压器分接头实时数据库系统的B/S模式访问。

1 变压器分接头

变压器是电力系统中实现电能传输和分配的核心元件,而变压器分接头起着调节高低压两侧电压、优化电网无功分布和调节系统稳定运行的作用。

变压器等值网络如图1所示。图中各参数均用标幺值表示,其中ZT为变压器的阻抗,K为变比标幺值[4]。

由于变压器的变比K总是接近于1,当K>1时,左边阻抗Z1为容性,右边阻抗Z2为感性;当K<1时,左边阻抗为感性,右边阻抗为容性,相当于在变压器的一侧放置并联电容器,另一侧放置并联电抗器,前者向系统送出感性无功,后者从系统吸收感性无功。优化变比K能优化变压器两侧系统无功潮流分布和变压器两侧电压。然而分接头的调节并不总是有益的,当系统中无功电源缺乏时,若通过改变变比来升高电压,会使系统其他地方无功更加缺乏,更甚者将导致电压崩溃。

2 实时数据库系统的开发

2.1 功能简介

变压器分接头实时数据库系统通过B/S模式发布,用户通过IE浏览器进行访问,为用户提供变压器分接头实时数据的浏览,包括当前实时数据的显示和历史数据的查询。

2.2 数据模型

目前,实时数据库有关系、层次和面向对象3种数据模型[5]。关系模型简单、易维护、用户界面友好,但只适合处理不包含拓扑关系的数据,对电力系统拓扑结构的描述和应用软件的接入比较困难;层次模型允许定义有父子层次关系的二维表,层间通过层次指针进行关联,目前许多运行的电力系统应用软件均基于层次型实时库;面向对象模型与面向对象的软件工程自然结合,但实现比较复杂,未有成熟的产品。

2.2.1 CIM简介

CIM描述了电力企业的所有主要对象,通过提供一种用对象类和属性及他们之间的关系来表示电力系统的标准方法,从而方便了各独立开发的应用的集成[6]。CIM由完整的一组包组成,主要有核心包(core)、域包(Domain)、发电包(Generation)、发电动态包(Generation Dynamics)、负荷模型包(Load-Model)、 量 测 包 (Meas)、停 运 包 (Outage)、 生 产 包(Production)、保护包(Protection)、拓扑包(Topology)、电线包(Wires)。单个的实体可以具有越过许多包边界的关联,从而每一个应用将使用多个包所表示的信息。

2.2.2 变压器分接头的CIM描述

Wires包是Core和Topology包的扩展,建立了输电和配电网络电气特性的信息模型。Wires类图中变压器分接头主要类的描述如图2所示。

为更加有效地存储和利用变压器分接头的相关数据,结合CIM包面向对象的特点,本实时数据库系统采用对象-关系型数据模型。

2.3 数据分类

变压器分接头相关数据主要包括:静态数据和实时动态数据。

2.3.1 静态数据

在实时数据库中,静态数据不随时间的变化而变动,包括分接头的型号、变压器的连接组别、分接头档位数、高压侧和低压侧电压基准值等。

2.3.2 实时动态数据

在实时数据库中,被周期写入数据库的是实时动态数据,它主要包括分接头所在档位、高压侧和低压侧实际电压等。一个实时动态数据对象对应一个采样时刻,有效期为本次采样时刻到下次采样时刻的间隔。

2.4 数据结构设计

变压器分接头数据库的建立旨在分析变压器分接头相关数据对系统运行的作用,为方便各分析应用程序的集成和扩展,采用基于CIM描述变压器模型相关类的数据存储结构,建立了数据结构,如图3所示。

2.5 数据表的建立

根据图3所示的数据结构,建立分区表、变电站表、变压器数据表和变压器分接头数据表,其描述如表1—4所示。

其中,分区表的主键(key)为分区编号,其他表不设主键;各数据表之间的ER关系如图4所示。

表1 分区表结构

表2 变电站表结构

表3 变压器数据表结构

表4 变压器分接头数据表结构

以查询某个变压器分接头数据为例。首先查询该变压器分接头所在分区编号,然后由分区编号查询所在变电站编号,再由变电站编号查询所在变压器编号,最终找到所在绕组,查询得到该分接头的所有数据信息。

2.6 实时数据的写入

2.6.1 读取内存数据

实时数据通过读取内存数据,并形成数据库语句来实现数据的更新。

采用C#语言编写应用程序读取内存数据,通过引入kernel32.dll实时连接库调用应用程序接口(API)函数实现,代码如下:

其中,hProcess为获取参数上传进程句柄,lpB-aseAddress为读取数据的起始地址,lpBuffer为存放数据的缓存区地址,nSize为要读取的字节数,lpN-umberOfBytesRead为实际读取数存放地址。如果读取失败,则在下一时刻重新读取。

2.6.2 存入数据库

标准结构化查询语言(SQL)能对数据库进行各种操作,通过配置文件提供的数据库连接字符串,连接数据库,利用读取内存数据的变量lpBuffer形成后台代码,插入语句如下:

INSERT INTO Table_Tap(value,……);

实时数据存入数据库时,将当前数据的上传时间作为字段之一存入数据表中,以方便运行人员对历史数据的统计和分析。

3 系统的发布和访问

3.1 ADO.NET

ADO.NET是.NET框架中对数据存取的解决方案,它包括所有的System.Data命名空间及其嵌套的命名控件,例如System.Data.OracleClient和System.Data.OleDb。通过ADO访问数据库的原理如图5所示。

以连接Oracle数据库为例,假设连接字符串connectionStr= “Data Source=db;Persist Security Info=True;User ID=userid;Password=password;Unicode=True”,执行连接数据库语句表示为:

OracleConnection myCon=new Oracle Connection(connectionStr);myCon.Open();

3.2 ASP.NET

ASP.NET是一种基于Microsoft.NET平台的Web应用程序开发技术,它构建在公共语言运行时(CLR)之上,可以使用.NET框架所提供的全部功能。ASP.NET的页面执行过程如图6所示。

3.3 Ajax

Ajax主要包括的技术有JavaScript函数的应用、级联样式表(CSS)对Web页面的控制、XMLHttpRequest进行异步数据的查询、检索以及DOM(Document Object Model)进行动态显示与交互。Ajax允许通过异步回送和动态的客户端Web页面处理,改进Web应用程序的用户界面。Ajax包含技术在Web浏览器模型中的使用原理如图7所示。

3.4 数据绑定

可扩展标记语言(XML)具有自描述性,可以对复杂对象进行详尽的结构化描述;具有语言独立性,可把数据、结构和显示方式相分离;并具有良好的可扩展性和平台无关性。利用XML数据文件与Dataset的数据交互,可以提高数据库访问的效率。

当服务器收到客户端查询请求时,服务器将先检测存储该查询所得数据的XML文件是否存在,如果存在,用Dataset读取,然后绑定数据显示控件,返回客户端;否则,重新连接数据库形成XML数据文件,其实现流程如图8所示。

图8 XML数据绑定流程

3.5 建立Web站点

使用 IIS (Internet Information Service) 发布VS2005开发的网站目录,通过设置IP地址和访问端口,局域网内用户即可通过电脑客户端根据用户权限操作使用。变压器分接头数据库发布模块结构如图9所示。

图9 变压器分接头数据库模块结构图

3.6 Web站点访问

客户端通过访问实时数据库系统发布站点可以对分接头数据库进行实时访问。

4 结束语

本文结合CIM包面向对象的特点,采用Oracle数据库软件,利用.NET框架平台工具,使用API函数读取内存数据,通过配置文件提供的数据库连接字符串连接系统数据库,并采用缓存XML文档作为绑定数据,以B/S模式进行访问,提高了数据库访问的效率。为方便分接头数据在电网稳定分析和经济运行分析的应用,需进一步完善分接头数据的共享和分析的功能。

[1]赵兴勇,张秀彬,何 斌.优化有载调压变压器改善电压稳定性的新算法[J].高电压技术,2007,33(10):170-173.

[2]李林川,李俊元,武文杰.考虑变压器分接头动作次数限制的综合无功优化[J].中国电力,2005,38(2):49-52.

[3]NAGEL C,EVJEN B.C#2005&.NET3.0高级编程(第 5版)[M].北京:清华大学出版社,2007.

[4]李向荣.变压器分接头与广西电网无功电压水平的关系分析[J].广西电力,2007(1):9-10.

[5]张慎明,卜凡强,姚建国,等.遵循IEC 61970标准的实时数据库管理系统[J].电力系统自动化,2002,26(24):26-30.

[6]电力系统控制及其通信委员会.DL/T 890.301—2004能量管理系统应用程序接口(EMS-API)第301部分:公共信息模型(CIM)基础[M].北京:中国电力出版社,2005.

猜你喜欢
数据库系统面向对象数据表
湖北省新冠肺炎疫情数据表(2.26-3.25)
湖北省新冠肺炎疫情数据表
基于列控工程数据表建立线路拓扑关系的研究
微细铣削工艺数据库系统设计与开发
江苏省ETC数据库系统改造升级方案探讨
实时数据库系统数据安全采集方案
面向对象Web开发编程语言的的评估方法
核反应堆材料数据库系统及其应用
峰丛洼地农作物面向对象信息提取规则集
基于面向对象的车辆管理软件的研制与开发