内蒙古电力技术  2017, Vol. 35 Issue (03): 14-18, 24   PDF    
基于XML的电磁暂态工程模型转换方法研究
谢国超1, 刘崇茹1, 胡海洋1, 王超1, 徐得超2    
1. 华北电力大学, 北京 102206;
2. 中国电力科学研究院, 北京 100192
摘要: 在详细研究ADPSS和PSCAD两种仿真软件模型及其存储数据的基础上,提出了一种基于解析XML文件数据的工程模型转换方法,在Microsoft Visual Studio平台使用C++语言编写转换程序,利用Libxml2函数库高效精确解析数据,实现PSCAD与ADPSS大规模电磁暂态工程模型的双向自动转换。使用GIGRE标准算例对转换方法的有效性进行验证,仿真结果表明:系统拓扑和动态特性均能保持一致,误差可以控制在2%以下,从而验证了该转换方法的准确性。
关键词工程模型转换     电磁暂态仿真     ADPSS     PSCAD     XML    
Research on Electromagnetic Transient Engineering Model Conversion Method Based on XML
XIE Guochao1, LIU Chongru1, HU Haiyang1, WANG Chao1, XU Dechao2    
1. North China Electric Power University, Beijing 102206, China;
2. China Electric Power Research Institute, Beijing 100192, China
Abstract: Based on the detailed study of the model and storage data of the PSCAD and ADPSS simulation software, this paper presents a model conversion method based on the analysis of XML file data.The proposed method realizes the bidirectional automatic conversion of large-scale electromagnetic transient model between PSCAD and ADPSS, which uses the C++language to write the conversion program on the Microsoft visual studio platform, and uses the Libxml2 function library to analyze the data accurately and efficiently.The validity of the conversion program is verified by GIGRE standard example.The simulation results show that the system topology and dynamic characteristics can be consistent, and the error can be controlled within 2%, thus validating the practicability and accuracy of the model conversion method.
Key words: engineering model conversion     electromagnetic transient simulation     ADPSS     PSCAD     XML    
0 引言

电磁暂态仿真软件PSCAD被广泛应用于交直流系统仿真和电力电子仿真及其控制[1-4]。然而,PSCAD作为非实时电磁暂态仿真软件,大规模电力系统建模的工作量较大且仿真耗时过长,这给相关的研究工作带来了困难。

由中国电力科学研究院自主研发的电力系统仿真软件ADPSS可实现大规模交直流混合电力系统机电—电磁暂态的实时仿真,在机电—电磁暂态混合仿真的模式下,将FACTS及HVDC系统中电力电子设备用电磁暂态模型模拟,其余交流网络用机电暂态模型模拟,兼顾了机电暂态仿真的仿真规模大和电磁暂态仿真准确性高的优点[5-6]

PSCAD在电力系统离线仿真中应用广泛,具有精确性高和可操作性强的特点[7],许多电力工程已经建立了PSCAD工程模型。随着ADPSS电磁暂态仿真的日趋成熟,其应用需求不断扩大,同一电力系统同时建立PSCAD和ADPSS工程模型,已经逐渐显示出必要性[8-9]。因此,实现PSCAD与ADPSS工程模型的自动转换,不仅能够减少工作量,还能有效避免数据的多重维护。

结合测试算例,提出一种基于解析XML文件数据的PSCAD与ADPSS工程模型转换方法(ADPSS与PSCAD X4及其后续版本均使用基于XML文件格式的数据存储方式[10])。转换方法如下:PSCAD(ADPSS)文件数据的读取和存储,PSCAD(ADPSS)数据向ADPSS(PSCAD)数据转换以及ADPSS(PSCAD)数据写入PSCAD(ADPSS)文件。其中,数据转换部分包括元器件参数转换和拓扑图形转换。

1 PSCAD与ADPSS文件数据结构1.1 PSCAD文件数据格式

PSCAD文件数据以XML格式存储,其节点树如图 1所示。

图 1 PSCAD文件节点树

一级子节点主要包括Paramlist(Setting)、Hierar⁃ chy、Definitions。Paramlist(Setting)定义了工程的仿真参数;Hierarchy定义了工程的图层组织大纲,包含默认存在的Station和Main图层以及Main下的用户定义的各级子图层;Definitions定义了各个图层元件信息和拓扑关系,分为Station工程站定义和User⁃ Cmp用户图层定义2种,每个Definition对应一个图层。用户图层定义中包含图层基本属性、图形定义以及电路图定义,其中电路图定义描述了该图层所有元件的位置及参数信息;图形定义描述了该模块的图形、端口、文字等显示信息。

1.2 ADPSS文件数据格式

ADPSS工程模型的数据按照XML格式组织,一个ADPSS工程模型由若干个XML格式文件组成,每个XML格式文件对应PSCAD工程模型中的一个图层。其节点树如图 2所示。

图 2 ADPSS文件节点树

Components节点表示一个元件类别,Metadata节点记录了该类别元件所有参数的意义以及对应的标识符,Component节点记录了该元件的参数信息、位置信息和拓扑连接信息。

2 基于XML解析技术的工程模型转换方法

本文在Microsoft Visual Studio平台使用C++语言编写转换程序,并调用Libxml2函数库完成XML数据的解析[11-14],进而实现不同仿真平台电磁暂态工程模型的自动转换。具体流程如下:首先,根据两种仿真软件元件种类和文件数据结构特点,在VS2010中定义变量类以存储数据,其中PSCAD(ADPSS)类用以存储读取PSCAD(ADPSS)文件得到的数据,ADPSS(PSCAD)类用以存储从PSCAD(ADPSS)类转换而得到的数据;然后利用Libxml2编写程序读取数据并保存,并在两种仿真软件之间进行数据转换;最后,写成ADPSS(PSCAD)格式文件。

2.1 转换程序的数据结构

(1)元件基类:用于存储所有元件类的共有参数,如名称、类型、位置坐标等;为每类元件建立一个子类继承自基类,将其所有元件参数定义为相应的成员变量,并为之声明读入、写出的成员函数。实例化后可存储每个元件的所有信息。

(2)图层类:定义图层的基本参数信息以及所有元件类的Vector容器,实例化后可存储一个图层中所有元件的信息。

(3)文件类:定义图层类的Vector容器以及相关的读入、写出成员函数,实例化后可存储一个工程的所有信息。

2.2 PSCAD工程模型数据的读取

读取PSCAD工程模型的Paramlist(Setting)节点时,只需要在遍历到节点名时获取节点属性,并将所需数据赋给定义的变量。读取Definition节点时,首先识别Definition中所有元件所属的图层,然后读取Definition中的元件信息,方法和读取运行信息时类似,通过识别元件名称遍历该图层中所有元件,保存元件数量、名称等属性信息,通过遍历元件的子节点获取其参数信息,并将值赋给所属图层中的变量。读取Hierarchy节点时,利用递归函数逐行读取图层信息,将图层名、所属层级等记录于相应的变量,Hierarchy节点数据读取流程见图 3

图 3 Hierarchy节点数据读取流程

读取图层信息时,最重要的是确定图层之间的隶属关系。图层隶属关系确定方法如下:设置当前图层的层级为K,如果当前图层有子图层,则设置子图层层级为K+1,同时,当前图层被标记为子图层的父图层;如果当前图层有兄弟图层,则设置兄弟图层的层级和当前图层同时为K,并且这两个图层有相同的父图层。读取时采用深度优先搜索完成图层的遍历。

2.3 PSCAD工程模型数据的写入

首先采用Libxml2函数库加载PSCAD空工程文件,修改Paramlist(Setting)中的仿真参数,然后修改并添加图层信息。空文件中设有默认图层Station和Main,设置层级分别为0和1,如果转换的工程模型中多于两个图层,则分情况写入数据,如果待添加图层与当前图层层级相同,则将待添加图层写入当前图层的上一级图层,即与当前图层为兄弟图层;如果待添加图层与当前图层层级相差为1,则将待添加图层写入当前图层,即为当前图层的子图层,具体流程如图 4所示。

图 4 图层数据写入流程
2.4 ADPSS工程模型数据的读取与写入

ADPSS工程模型为多个XML文件的组合,每个XML格式文件对应PSCAD工程模型中的一个图层,记录了本图层所有的元件信息和连接关系。写入数据时,为每个图层建立一个XML文件,仿照PSCAD数据的写入方式写入ADPSS数据;读取数据时,先确定所有图层的隶属关系,再仿照PSCAD数据的读取方式读取ADPSS数据。

2.5 参数转换

PSCAD和ADPSS均具有非常完备的元件库,大部分ADPSS元件在PSCAD中可找到对应元件或者由某些元件的组合来等效。然而,由于两种仿真软件对于同一元器件的模拟并不完全一致,因此当参数转换时,需要根据转换需求得出具体元件在PSCAD与ADPSS之间的转换规则。本文针对PSCAD与ADPSS元器件上的差异,对两种软件共有的一次元件和二次元件的模型进行对比,开发了PSCAD与ADPSS元器件参数自动转换程序,进而实现参数自动转换。

2.6 拓扑转换

PSCAD元件端口之间有效的连接方式有3种:端口直接相连、通过连接线相连以及通过母线相连,而ADPSS两个电气元件端口只能通过具有特定ID号码的母线相连。当ADPSS工程模型拓扑向PSCAD转换时,应保持对应元件的位置不变,解析ADPSS工程模型中拓扑连接关系,并以此建立PSCAD连接线,实现PSCAD工程模型的拓扑连接;当PSCAD工程模型拓扑向ADPSS转换时,则需通过解析PSCAD工程模型中元件的连接关系,筛选出PSCAD工程模型中母线的位置,分别得出工程模型一次系统与二次系统的拓扑信息,进而完成ADPSS模型的拓扑连接。

3 仿真验证分析

PSCAD与ADPSS之间工程模型转换是为了对大电网进行电磁暂态仿真提供数据支撑,因此必须确保转换过程中网络结构和模型的准确性。

3.1 PSCAD工程模型向ADPSS转换验证

为了验证工程模型转换前后仿真结果的正确性,本文使用广泛用于直流系统测试的CIGRE标准算例作为测试算例。测试算例在PSCAD中于整流侧与逆变侧分别添加了读取直流线路与交流线路的电压、电流显示元件。图 5图 6分别为转换前后CIGRE标准算例主电路图。对比图 5图 6可知,转换前后电路拓扑保持一致。

图 5 PSCAD中CIGRE算例拓扑

图 6 ADPSS中CIGRE算例拓扑

整流侧直流电压和直流电流波形对比如图 7图 8所示。整流侧交流母线L1相电压波形如图 9所示,其中仿真总时间为10 s。测量误差见表 1

图 7 ADPSS与PSCAD中的整流侧直流电压波形对比

图 8 ADPSS与PSCAD中的整流侧直流电流波形对比

图 9 整流侧交流电压波形对比

表 1 PSCAD工程模型向APPSS转换前后测量误差

对比主要测量波形可以看出,PSCAD与ADPSS的仿真趋势基本一致,即两个工程模型的动态响应基本一致。由测量误差可以看出,参数误差可以控制在2%以下,分析出现误差的原因在于转换得到的ADPSS工程模型中,没有体现换流器的阀参数(包括关断电阻、反向击穿电压等)和有关变压器饱和曲线的相关参数,即误差主要来源于两种仿真软件工程模型本身的差异。

3.2 ADPSS工程模型向PSCAD转换验证

将上述转换得到的CIGRE算例反向转换为PSCAD工程模型以验证ADPSS工程模型向PSCAD转换方法的正确性。图 10为转换后的PSCAD中CI⁃ GRE标准算例主电路图。对比图 10图 6可知,转换前后电路拓扑保持一致。

图 10 PSCAD中转换后的CIGRE算例拓扑

整流侧电压和电流波形对比如图 11图 12所示。整流侧交流母线L1相电压波形如图 13所示,其中仿真总时间为10 s。测量误差见表 2

图 11 转换前后整流侧直流电压波形对比

图 12 转换前后整流侧直流电流波形对比

图 13 整流侧交流母线L1相电压波形对比

表 2 ADPSS工程模型向PSCAD转换前后测量误差

对比主要测量波形可以看出,ADPSS与PSCAD的仿真趋势基本一致,参数误差可以控制在极小的范围内,误差主要来自于两种仿真软件模型本身的差异。

4 结语

本文设计了一种用于PSCAD与ADPSS之间进行电磁暂态工程模型转换的方法,选用Libxml2解析器高效准确地解析XML文件数据,实现PSCAD与ADPSS大规模电力系统模型的双向自动转换。通过CIGRE标准算例对工程模型转换方法的有效性进行验证,拓扑对比和仿真结果表明,转换前后的工程模型拓扑一致,动态仿真结果基本一致,其误差可以控制在2%以下,验证了该转换方法的正确性。

参考文献
[1] 汤广福, 贺之渊, 庞辉. 柔性直流输电工程技术研究、应用及发展[J].电力系统自动化, 2013, 37(15): 3–14. DOI:10.7500/AEPS20130224003
[2] 陶华, 许津津, 邹文聪. BPA向PSCAD模型转换的研究[J].电力自动化设备, 2013, 33(8): 152–156.
[3] 胡益, 王晓茹, 胡柏玮. 基于CPS-SPWM调制方法的MMC-HVDC输电系统冗余保护策略研究[J].电工电能新技术, 2016, 35(10): 9–16. DOI:10.3969/j.issn.1003-3076.2016.10.002
[4] 武晓堃, 王奎, 万磊, 等. 模块化多电平变换器三种调制策略及电压平衡控制仿真与对比研究[J].电工电能新技术, 2014, 33(12): 4–9, 29. DOI:10.3969/j.issn.1003-3076.2014.12.002
[5] 田芳, 李亚楼, 周孝信, 等. 电力系统全数字实时仿真装置[J].电网技术, 2008, 32(22): 17–22.
[6] 陈磊, 张侃君, 夏勇军, 等. 基于ADPSS的高压直流输电系统机电暂态-电磁暂态混合仿真研究[J].电力系统保护与控制, 2013, 41(12): 136–142. DOI:10.7667/j.issn.1674-3415.2013.12.022
[7] 鄂志军. 基于PSCAD/EMTDC的电力系统机电暂态与电磁暂态混合仿真[D]. 天津: 天津大学, 2005.
[8] 兰涛. 基于自定义模式的PSS/E与PSASP模型转换与仿真对比[D]. 北京: 华北电力大学, 2014. http://cdmd.cnki.com.cn/Article/CDMD-10079-1014363302.htm
[9] 董炜, 潘秋萍, 雷金勇, 等. BPA与DIgSILENT动态模型的比较与数据转换[J].电力系统自动化, 2016, 40(8): 140–146. DOI:10.7500/AEPS20150601013
[10] Dennetière S, Parisot A, Milin E, et al. Use of XML to import SCADA data into EMTP[C]//Power and Energy Society General Meeting.IEEE, 2011: 1-5.
[11] 谢宁, 吴智韬. 基于XML格式的配电网地理信息系统接口设计[J].电力系统自动化, 2004, 28(9): 77–80.
[12] 孔令波, 唐世渭, 杨冬青, 等. XML数据的查询技术[J].软件学报, 2007(6): 1400–1418.
[13] 陈红梅, 陈静. XML文档解析技术[J].信息技术, 2009(10): 175–177. DOI:10.3969/j.issn.1009-2552.2009.10.053
[14] 张苗, 惠小强. 一种快速的XML文档验证算法[J].计算机技术与发展, 2015, 25(8): 123–127.