李 寒, 张成宇, 王同勋, 王 翀
1(北方工业大学 计算机学院,北京 100144)
2(大规模流数据集成与分析技术北京市重点实验室,北京 100144)
3(全球能源互联网研究院先进输电技术国家重点实验室,北京 102211)
4(国网江苏省电力有限公司 信息通信分公司,南京 210024)
随着我国电网规模的逐年扩大,电力业务计算的复杂度愈来愈高,各类支撑电力系统的应用系统应运而生. 电力仿真系统即为一类重要的电力应用系统,主要负责通过计算机系统支撑电力系统的相关分析,涉及电力电气分析、电能管理以及潮流稳态计算等. 近年来,随着谐波源的不断出现,给电力系统的安全、经济、运行带来了严重危害,谐波问题在世界范围内受到关注. 为了更有效的发现和治理谐波源,有必要将电力仿真系统应用于谐波分析.
目前,主流的电力仿真系统各有侧重,普遍存在对谐波分析模型的支持度有限,谐波源类型和谐波分析模型类型不完善的不足. 此外,随着物联网和智能电网技术的发展,电力大数据的规模迅速增加. 若能将电力大数据与谐波仿真系统相结合,基于实测数据的谐波仿真能够实现未监测测点谐波数据的预估、谐波源特性的分析,以及附加新谐波源后的电网分析和规划等.
针对上述情况,本文设计并实现了一种基于电力大数据的谐波仿真系统.
电力仿真系统的出现最早可追溯到1950年,而后随着计算机技术的快速更迭,电力仿真系统得以不断发展[1]. 目前,广泛应用的各类电力仿真系统各有侧重.电力电气分析与电能管理分析系统(ETAP)、电力系统仿真分析系统(EMTDC)和电力系统分析系统包(BPA)分别侧重输配电、交直流电、潮流和稳态计算等分析功能[2-4]. 在国内,由中国电力科学研究院研发的综合电力系统分析程序(PSASP)在行业内得到普遍认可. 尽管PSASP能够支持大部分电力计算模型,但在谐波源类型和谐波分析模型方面的支持有限[5]. 在谐波仿真分析方面,openDSS是美国电科院提供的一个开源的配电网潮流软件[6]. 它不仅支持配电网的潮流计算,还具有基本的谐波计算功能,并具有可扩展性,提供如C++、Vb、Python、Matlab等接口. 由上述文献可知,目前尚无独立的针对谐波分析的电力仿真系统.
可视化建模是电力仿真系统的重要环节. 早期的电力仿真系统采用位图图像和Java Applet的方式实现可视化建模. 鉴于位图图像的属性相对固定且不可交互,Java Applet在可操作性、可重用性和效率方面存在不足,基于位图图像和Java Applet的可视化建模已不再适应大电网仿真在交互性,易操作性等方面的需求. 目前,国内主流的电力仿真系统PSASP基于ActiveX实现电网图的可视化绘制和编辑,但ActiveX技术具有IE依赖性,配置复杂,以及更新不灵活的不足. 可缩放矢量图形(SVG)是一种基于XML的图像文件格式[7].鉴于SVG在可视化呈现和所支持浏览器的多样性方面的优势,可采用基于SVG+JS的方式来实现谐波仿真系统的可视化建模[8],但基于SVG的可视化建模方式具有编辑不灵活、代码实现复杂、不易于维护的问题. 因此,需要一种能够灵活实现图形编辑的技术支持电力仿真系统的可视化建模. GEF是一个图形编辑框架,可以图形化的方式展示和编辑模型,具有轻巧、功能丰富的特点[9]. Vasile G. Teodorovici在文献[10]中指出GEF相比其他框架减少了模型和视图之间的依赖,不受开发框架的局限. JavaFX是基于Java平台的丰富互联网应用开发平台[11]. JavaFX技术的发展已较为成熟,在可视化系统的开发中得到广泛应用[12,13]. 总之,在各种图形化技术中,GEF能够提供强大的图形编辑功能,JavaFX在界面呈现方面具有优势.
数据是软件系统的核心要素. 近年来,已有电力专家学者提出将大数据引入各类电力应用系统,但实际应用还较少. 文献[14]分析了工程仿真数据的特点,指出大数据技术已成为现代仿真建模领域重要支撑技术之一. 文献[15]通过梳理大数据在智能电网领域的研究现状,指出将大数据与电力系统相结合能够有效提高电网的运行管理水平,以及对社会和用户的服务水平.文献[16]分析仿真计算数据与大数据的相关性,提出将大数据技术引入电力系统仿真的基本框架,还阐述了大数据技术可能带来的边际效应、决策困境等问题,是大数据技术与电力仿真的结合积极探索. 由此可知,电力大数据对电力行业的应用系统具有重要和特殊的意义. 在谐波仿真领域,电力专家将电力大数据引入谐波仿真系统的实际意义归纳为:能够实现对未检测测点的数据估计; 能够支持谐波源特性分析; 能够发现新的谐波源; 能够辅助电网规划设计. 因此,有必要将电力大数据与谐波仿真计算相结合.
综上所述,本文设计和实现了一种基于电力大数据的谐波仿真系统,并探讨了可视化建模、仿真计算、以及电力大数据与谐波仿真系统结合的问题.
考虑到系统的易操作性和可扩展性,本文设计的谐波仿真系统的总体架构分为3个层次,分别是数据层、数据转换层和应用层,见图1.
图1 谐波仿真系统总体架构
如图1所示,数据层由电力大数据平台和本地存储系统构成. 研究采用的电力大数据平台是国家电网提供的谐波监测平台. 为了利用平台中采用HBase存储的各省网谐波监测数据,系统通过数据抽取、格式转换和结构化存储将谐波仿真需要的数据存入本地存储系统的元件数据库. 本地文件存储系统则由四个部分构成. 文件系统负责存储线路图模型文件,计算脚本等谐波仿真计算的过程文件. 元件数据库存储提取的电力大数据. 基础数据库存储元件的元数据. 结果数据库存储供可视化呈现的结果数据.
应用层由可视化建模模块、谐波计算模块和结果呈现模块构成. 可视化建模模块提供图元和线路图的绘制和编辑. 谐波计算模块是系统的核心,负责执行谐波仿真计算任务. 基于openDSS引擎,该模块包含多种传统和新型的谐波计算模型. 结果呈现模块则负责整理谐波计算结果,并采用电网图叠加数据和统计图表的方式呈现.
针对系统各模块的输入输出数据格式之间存在差异,数据转换层负责数据格式的转换,包括可视化图形到线路图模型文件的转换,线路图模型文件到计算脚本的转换,计算结果到可视化呈现文件的转换等.
可视化建模、谐波仿真计算,以及电力大数据与谐波仿真系统的结合是本文的研究重点,接下来将从上述3个方面进行阐述.
可视化建模指用图形交互的方式构建线路图,而图元是构建线路图的基本元素.考虑到元件类型、元件的电力属性、元件之间的拓扑关系都是完成谐波计算的必要信息. 为提供获取上述信息的渠道,可视化建模由图元的绘制、图元的操作和图元参数编辑部分构成.
电力系统的线路图是由各类元件连接构成. 为了清晰的呈现各类元件,引入元件图元展示电力元件样式. 系统以ANSI/IEC图元标准为基础,为11种电力元件建立图元,如表1所示.
系统采用JavaFX技术实现元件图元的绘制.JavaFX支持多种基本图形的绘制,构成系统图元的基本图形如表2所示.
基于JavaFX提供的基本图形,可以通过组合构成元件图元. 以三绕组变压器为例,其图元由椭圆构成,代码片段如图2所示.
系统用11个JavaFX类实现11种元件图元. 为了构建结构正确且布局合理的线路图,还需要根据仿真需求连接并编辑图元. GEF提供丰富的图形编辑功能,其图元操作流程如图3所示.
如图3所示,GEF类似MVC架构,由控制器(controller)、模型(model)、视图(view)构成. 首先,用户通过控制器提供的方法对图元发出编辑指令,如拖拽和旋转. 其次,线路图模型文件是包含图元位置信息和拓扑信息的模型,编辑指令作用于线路图模型文件,并更新线路图模型文件. 最后,视图采用JavaFX绘制都更新的线路图模型,完成图元编辑,并返回用户.
表1 元件图元
表2 JavaFX基本图形
图2 三绕组变压器的图元代码
图3 GEF的工作流程
图元是元件的可视化呈现,线路图中的图元能提供元件的拓扑信息,却无法提供计算信息. 因此,系统通过编辑图元参数支持计算属性的配置. 按照属性是否与谐波相关,计算属性被分为基本计算属性和谐波计算属性. 在谐波仿真系统中,不同元件具有不同的计算属性,表3所示为负荷的部分计算属性,包含4个基本计算属性和1个谐波计算属性.
表3 负荷的属性
配置的计算属性和由线路图获取的拓扑信息均保存至线路图模型文件. 线路图模型文件是一种自定义的基于XML的图形描述文件,包含11种元件标签,并针对元件基本信息、计算属性和拓扑信息设计了相应的子标签,第7节给出了线路图描述文件的示例.
系统基于openDSS引擎扩展谐波计算模型,支持时序谐波潮流计算、随机谐波潮流计算等新型模型.图4所示为仿真计算的流程,由生成计算文件和调用openDSS引擎执行仿真计算任务两个阶段构成.
在第一阶段,为了支持新型谐波计算模型,计算文件由Java程序和计算脚本两部分构成. 其中,Java程序主要用于控制脚本执行流程和编辑计算参数. 以随机谐潮流计算为例,Java程序根据随机次数限定脚本的执行次数,并为各次执行提供计算参数. 按照openDSS引擎的要求,计算脚本含3类信息,分别是元件信息,谐波计算模型信息,以及全局属性. 表4所示为3类信息的计算脚本语法和示例.
为了获取计算脚本所需信息,第一阶段的输入有四类,分别是线路图模型文件、谐波计算模型库、元件数据库和基础数据库. 线路图模型文件图提供元件的拓扑信息,如母线1的J侧连接线路1的I侧. 谐波计算模型库提供谐波计算模型的类型及参数; 元件数据库提供由大数据平台抽取的监测数据,如电源的实测电压和负荷的实测功率; 基础数据库提供元件的基本计算属性.
在第二阶段,由于openDSS引擎仅提供com接口,系统采用J-Integra封装COM组件,形成Java API,再执行谐波计算任务. 第二阶段的输出为谐波分析的结果,完整结果以CSV格式保存于文件系统,主要指标的结果保存于结果数据库.
图4 谐波计算的工作流程
表4 计算脚本的语法和示例
通常,用户完成谐波仿真计算后,先要观测主要的指标值以确定仿真结果的有效性,再对详细结果进行分析. 针对上述需求,系统采用线路图叠加主要指标值和统计图表的方式呈现结果.
第一种方式指在线路图上直观的呈现主要指标的数据值,能够提升用户判定结果有效性的效率. 具体的,在可视化建模的过程中,预先为每个图元设置一组结果标签,包括电压、电流和功率值. 当计算结束后,将相应的计算结果赋值给图元的相应标签,即可在线路图中呈现主要指标的计算结果.
为了直观的呈现指标的变化趋势,系统基于JavaFX Chart绘制统计图,如用柱状图对比基波潮流计算结果中的三相电压幅值,用折线图呈现阻抗扫描结果中的阻抗幅值. 此外,还基于JavaFX TableView将结果详情以表格形式呈现.
智能电网的发展使电力大数据的种类和规模逐年增长,这些长期积累的数据不仅在电力运行监管方面发挥着作用,也开始应用于电网业务. 谐波监测数据是用于评估电能质量的电力大数据. 鉴于将电力大数据引入谐波仿真计算,具有实现对未检测测点的数据估计; 形成谐波源特性; 发现新谐波源; 辅助电网规划设计等用途,本文尝试将谐波监测数据与谐波仿真系统相结合. 以国家电网的谐波监测大数据为数据源,根据谐波仿真需求,对部分指标指定时间段的数据进行抽取,格式转换,并存储于谐波仿真系统的元件数据库.
谐波监测数据存储于HBase数据库,行健由时间戳和元件ID构成,列限定符为指标标记符,如相数(phases)、频率(frequency)等,共计34种. 针对谐波监测数据的大规模特性,系统采用MapReduce计算模型实现数据抽取. 经实验验证,基于5台16核32 GB内存500 GB硬盘的Hadoop-2.6.0-CDH5.11.0的Xen6.5虚拟机集群,从累积2个月总计15 TB的数据集中提取单一指标某天的数据,平均时间约1500 s.
为了使抽取的数据便于使用和共享,系统采用关系型数据库MySQL存储抽取结果. 为每一类元件建立相应的数据表,仍以元件ID和时间戳作为主键. 需要注意的是,在HBase数据向MySQL数据库存储的过程中,由于HBase表的数据类型为字节型,需要对数据进行格式转换,由字节型转为String、Int或Float类型.
本节以IEEE标准4节点模型作为案例验证系统的可行性. IEEE标准4节点模型包含4条母线、1个电压源、1个二绕组变压器、2条输电线和1个负荷.图5所示为系统界面,中间画布为可视化建模系统的绘图区; 右侧面板为元件的图元选择区; 左侧上部为工程菜单,每个列表项代表包含一个线路模型及其相关的谐波仿真计算任务; 左侧下部导航栏,可按类型检索并定位线路图中的元件. 依据IEEE标准4节点模型绘制线路图,绘制结束后获得线路图模型文件,包含9个元件标签,属性相关的内容近50行.
图5 系统界面
谐波计算相关的元件参数分为拓扑信息和计算属性. 拓扑信息由线路图中元件的连接关系获取. 基本计算属性在图元的属性对话框中设置,图6所示为负荷的属性对话框,包含额定电压、额定有功功率、额定无功功率等计算属性,为验证本系统的准确性,输入与IEEE标准4节点模型相同的计算属性数据进行计算.以负荷元件为例,其所有属性值均与IEEE标准4节点模型一致,如图6所示.
图7所示为由HBase抽取的电压幅值计算获得的频谱数据. 当属性设置完毕后,线路图中所有元件的拓扑信息和计算属性将同时保存于线路图模型文件.图8所示为4节点线路图模型文件的部分内容,涉及母线(bus)、二绕组变压器(transformer2)、电压源(generator). 完整的线路图模型文件包含9个元件标签,其相应的基本信息、计算属性和拓扑信息作为子标签存储.
图6 负荷的属性对话框
图7 HBase提取的频谱数据
基于线路图模型文件,结合用户输入的谐波计算模型及参数,将生成计算文件,并调用openDSS引擎执行谐波分析任务. 图9所示为IEEE4节点计算文件的脚本部分,涉及二绕组变压器(t1)和输电线(line1)等.如图9所示,bus2=n2记录拓扑信息,代表输电线line1的J侧连接母线(n2); length=2000记录计算信息,代表line1的长度为2000英尺.
谐波仿真系统的计算结果将以本地文件系统的形式保存,并采用统计图表和线路图叠加数据的方式呈现. 图10所示为叠加母线电压和元件电流的线路图结果,用户可以通过观察上述数据直接判断结果的有效性.
图8 线路图模型文件片段
图9 计算脚本片段
为验证系统执行谐波仿真计算的准确性,采用与IEEE标准4节点模型相同的线路图和相同的输入数据进行验证. 执行谐波仿真计算时,系统通过提取线路图模型文件中的元件类型、拓扑和计算信息,构造计算脚本,并调用openDSS引擎执行仿真任务. 将谐波潮流计算结果与IEEE提供的谐波潮流计算结果进行对比,如图11所示. 其中,奇数行为本系统的仿真结果,偶数行为IEEE的仿真结果. 由图11可知,两种计算结果基本吻合. 尽管部分数据存在偏差,但偏差很小,最大误差约为1%.
图10 叠加计算结果的线路图
图11 谐波计算结果对比
经上述验证,基于电力大数据的谐波仿真系统能够支持多种类型的谐波仿真计算,并具有较好的准确性. 此外,如表5所示,将本系统与其他类似电力仿真系统对比发现该系统在融合电力大数据、支持可视化建模,仿真计算模型的丰富性和结果呈现方式的多样性方面均具有一定优势.
表5 各电力系统对比
本文从可视化建模、仿真计算、以及电力大数据与谐波仿真系统的结合三方面对谐波仿真系统展开研究. 在可视化建模方面,运用GEF图形编辑框架和JavaFX技术实现了线路图的可视化建模,以及多种形式的图形化结果呈现,直观且操作简单. 在谐波仿真计算方面,基于openDSS引擎的谐波计算模块,将java程序与计算脚本相结合,不仅支持传统的谐波仿真计算模型,还实现多种新型仿真计算模型,并具有可扩展性. 在电力大数据与谐波仿真系统的结合方面,系统以电力大数据为数据源,将实测数据运用于仿真计算,能够提高仿真计算的准确性,使系统具有预估未监测测点谐波数据、发现新谐波源、辅助电网规划等潜在能力. 为了验证系统的可行性,本文以IEEE标准4节点模型为案例进行验证. 案例分析表明系统能够支持多种类型的谐波仿真计算,准确性良好,并在仿真计算模型丰富性、结果呈现方式的多样性、直观性、灵活性等方面具有优势. 本文下一步的研究重点是增加新型的谐波源和谐波仿真计算模型.