本站小编为你精心准备了BPA软件接口设计论文参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
1CIM数据解析流程与实现
1.1公共信息模型(CIM)概述现代电力系统是一个实时变化的复杂系统,它覆盖发电、输电、配电和售电等多个环节,包涵发电机、变压器、断路器、线路、继电保护、电能计量,用电设备等各种电气设备,随着经济社会的发展,电力系统还会日益庞大和复杂。CIM为电力系统的建模提供了一种行之有效的方法,CIM采用先进的面向对象的建模技术,使用统一建模语言(UML)将CIM定义成一系列逻辑包,每一个包含一个或多个类图,用图形方式可以方便地表示包中所有类之间的关系[2],使得复杂的电力系统在抽象逻辑层次上得到可视化和模块化,用分而治之的思想统筹分析电力系统。
1.2CIM/XML解析CIM解析模块用于将CIM/XML与CIM/E格式的文本读入内存,同时经过XML文档解析建立起数据关系,最终将CIM中的各对象及其属性存入字典结构中。凭借着C#丰富的库资源,CIM/XML文本的解析是极为方便的,使用foreach循环语句与Elements()等方法,少量的代码便能实现XML文本的全文检索,同时还具有优秀的性能。
1.3CIM/E解析虽然CIM/E文本借鉴了XML的语法风格,但它在设计之初就摒弃了常规XML繁琐冗余的标签,正是这样才成就了E语言的高效能。因此CIM/E文本的解析与2.2有所不同,它的实现有更多面向结构的特点。
1.4拓扑分析CIM定义了终端和联结点用以表示导电设备间的连接。大多数导电设备是双端连接的,这就涉及到2个联结点。这种模式描述了电网全部的原始的信息,称作开关/节点模型(Node/Breaker),如图2(a)所示。但对于一些高级应用来讲,例如潮流计算、状态估计等,根据等电位原理(如变电站中互通的母线、刀闸、断路器等)形成了逻辑上的拓扑点[3]。这种由拓扑点和拓扑点间带阻抗的电气设备连接表达的电力网络模型,叫做母线/支路模型(Bus/Branch),见图2(b)。开关/节点模型是母线/支路模型的基础,因此它又被称为物理模型。通过对开关/节点模型进行所谓的拓扑分析,就能得到母线/支路模型(计算模型),这种模型归纳出了电网的拓扑结构,而隐藏了诸如开关等设备的开闭状态,是潮流计算能够接受的模型。本节的文本解析模块所得的结果与原始CIM文档一致,都是基于开关/节点模型,那么如何合理地省略闭合的刀闸、断路器,形成拓扑点,实现到母线/支路模型的转换,是本节拓扑分析计算模块要完成的任务。根据图论相关理论,在同一个拓扑点中,以其包含的联结点为顶点,以联结点之间的开关为边,实际上构成了一幅树形或带环的无向连通图。结合电力系统的实际特点,该连通图中不存在自身环(起点和终点都是同个点的边),并且任意2个顶点间的边不会超过1条。换言之,对于相邻的若干个开关类(switch)元件构成的无向连通图,一幅图对应一个拓扑点,显然,这在电路理论上是成立的。因此,存在这么一种算法,通过对图的遍历尝试找到该图所对应的拓扑点及其所属的所有联结点。从给定的连通图中任一顶点(联结点)出发,沿着一些边遍访该图中所有的顶点,直至每个顶点都只被访问一次为止,称作图的遍历。目前遍历连通图的算法主要有2种:深度优先搜索DFS(depthfirstsearch)和广度优先搜索BFS(breadthfirstsearch)。本文采用前者算法,结合CIM的导电设备模型,进行顶点的合并处理。深度优先搜索也叫纵向优先搜索算法,其基本思路是:访问了起始顶点v之后,选择某一个与v相连但未曾被访问过的顶点w访问之,再从顶点w开始进行深度优先搜索。当到达一个与其连接的顶点都被访问过的顶点时,就从这个顶点开始,依次回退到还有相连顶点未被访问过的顶点u,从u开始再次进行深度优先搜索。如此往复,直到所有顶点都被访问过。综上所述,DFS算法具有如下特征:1)每访问到的当前顶点需要作已访问标志。2)整个遍历是个递归过程。归纳出DFS算法的基本框图如图3所示。
2bpa数据接口
2.1BPA数据卡片的填写要求在CIM模型被转换为母线/支路模型之后,事实上已经奠定了潮流计算的数据基础,接下来只需根据BPA数据格式的要求输出数据文件即可[4]。BPA软件采用的是较传统的“数据卡片”设计概念,特别强调数据卡片的格式要求[5]。BPA程序支持的数据卡片众多,本文使用到的只占其中很小一部分,包括B卡(交流节点卡)、L卡(对称线路卡)、T卡(变压器卡)三大类。现以B卡为例,说明卡片的填写方法。如:BQXIJING113.8GX65.50.37.-25.1.0的填写方法如表1所示。数据长度:卡片中的每一个数据项均不能超过起始列号与结束列号所规定的长度。例如BusName从第7列开始,到第14列结束,那么其长度只有8列,如实际节点名长度不足8列,留空即可;超过8列的只能保留最多8列。数据类型:BPA数据卡片中一般有3种数据类型:空、字符、浮点数。1)字符:其格式表示为An,其中n为长度。例如上文中的BusName,格式为A8,A可以理解为ASCII字符,8是指字符个数。每个数字、大/小写英文字母和其他ASCII字符均占1个长度,特别地,一个中文汉字占2个长度,因此对于A8格式来说,若全部填中文,最多只能填4个汉字。2)浮点数:BPA程序广泛使用缺省小数点规则增加数据的有效位数。浮点数的格式表示为Fn.n,其中n为位数。例如表1中的“安排的Vmin(标幺值)”,格式为F4.3,F可以理解为Float,即浮点数,“4”表示浮点数位数(包括小数点),“3”表示缺省的小数点后位数。填法3和填法4即缺省小数点法。对于F4.3格式来说,如果不填小数点,BPA程序将自动取3位小数。如果要使电压控制在1.015,只需填入1015,显然此时用缺省小数点法是最合适的。
2.2BPA数据输出模块在实际开发过程中,格式问题其实是相对简单的部分,但是仅仅满足BPA程序的数据卡片格式要求是远远不够的,还必须考虑其他问题以保证转换出来的数据文件的正确性。下面分述之。
2.2.1多回线路的回路标志问题为确保供电可靠性,电力系统广泛存在双回甚至多回线路。以双回线为例,从2.4节可知,这种线路即2个拓扑点间存在2个连接,如果以此为基础直接转换生成2个对称线路卡(L卡),则BPA程序会报错终止计算。为解决这个问题,需要按照BPA有关数据文件的要求,给系统中所有双回线路赋予回路标志号(1,2,…,n)。
2.2.2无功补偿问题BPA软件提供了可投切电抗、电容器组卡(X卡)来输入无功补偿数据。本文的接口程序根据电力系统实时数据的特点,并没有直接输出X卡,而是将各拓扑点的无功补偿容量(如果有的话)进行累加,作为“并联导纳无功负荷”添加到B卡中,从而避免了生成X卡的困难,并能简化数据文件[6]。
3计算规模的处理
在工程实际中,往往需要选取不同大小规模的电网进行计算,因此接口程序必须能灵活处理以适应这种要求。最简单的情况是,从调度中心的EMS接口获取实时数据,经过模型解析和数据转换,生成符合BPA数据格式的.dat文件后,直接在BPA软件里打开该.dat文件执行潮流计算。如此一来,计算的电网规模与EMS中的模型是一样的。省调或地调除了关注所调度区域的运行情况,往往还参考上一级调度下达的所谓全网模型,即包含区域外电网数据的更详细的.dat数据文件。为了能使省调或地调的计算达到全网规模,本文的接口程序能将区域电网数据嵌入至全网模型中,方便考察区域电网在全网中的运行状况。具体做法如下:1)搜集区域电网与外部电网相连的联络线,那么这些联络线在区域电网内的节点所围成的范围即是区域电网。2)从1)中得到的节点出发,进行网络扫描,找出所有区域电网内的节点、线路和变压器。3)将2)所扫描出的区域电网(对应于BPA的B卡、L卡、T卡)在全网模型文件中删除。4)把EMS数据转为BPA格式后,插入至全网模型文件中,形成包含更新后的区域电网的全网模型文件。
4BPA软件潮流验算
本节数据源采自南瑞继保PCS-9000调度自动化系统,选取2014年3月11日11时27分42秒广西主网断面,遥测合格率98.92%。利用本文程序将实时数据转化成BPA潮流数据文件,指定岩滩电厂1号机组为全网平衡机(BS卡)。计算结果收敛,牛顿-拉夫逊法迭代次数为5次。平衡机(额定有功300MW)出力数据如表2所示。
5结论
本文针对在当前电力系统运行与规划中,由于SCADA应用平台广泛采用基于IEC61970标准的数据格式,造成软件之间的互操作性缺失的困难,通过对CIM模型的解析及转换,搭建了一条从CIM到BPA潮流程序的数据桥梁,从而使BPA或自编潮流程序等分析工具采用电力系统实时数据计算成为可能。利用转换出来的数据文件,工程计算人员可以方便地在BPA软件中准确重现任意时间段面下电力系统的历史运行情况,为基于实时状态的分析提供可信的计算数据,并以此为基础开展更多与实际生产相关的分析工作,为电网的安全稳定运行提供建议。
作者:邓秋荃刘文泰孙艳覃秀君王德付单位:广西电网有限责任公司广西大学电气工程学院