1、电力系统仿真软件MATPOWER 的功能研究 摘要 近年来,电力系统仿真技术发展较快,出现了多种高性能的可视化仿真工具 如:MatEMTP,MatPower等,这些软件的开发都基于现在日益流行的Matlab语言环境.继承了 Matlab的强大数学运算分析能力, 基于Matlab的电力系统仿真软件在可读性、 可移植性方面 有了大幅提高。MATPOWER是一个基于matlab.m文件的组建包,用来解决电力潮流和优化潮流 的问题。它致力于为研究人员和教育从业者提供一种易于使用和可更新的仿真工具。 Matpower的设计理念是用尽可能简单、易懂,可更新的代码来实现最优秀的功能。Matpower 是康奈
2、尔大学电气学院电力系统工程研究中心的ZIMMENNRman,CARLOS.Murillo和甘德强在 ROBOERT THOMAS的指导下开发出来的。最初的基于Matlab的电力系统潮流和最优潮流代码和 为项目POWER WEB 的需要编写的,并且该软件完全免费。Matpower是一直广泛应用于电力系 统的仿真分析。它具有较好的扩展和衍生性能。作为一种仿真工具,它为用户提供了一个强 大的灵活的仿真环境。从而更好地对现实中的电力系统进行模拟分析和计算。 关键词:MTPOWER 电力系统仿真 潮流计算 I II Power system simulation software MATPOWER fu
3、nction research In recent years, power system simulation technology is developing fast, appeared multiple high-performance visualization simulation tools,such as:MatEMTP, MatPower etc, these software development are based on now increasingly popular Matlab language environment.Inherited Matlab power
4、ful mathematical analysis ability, based on the Matlab power system simulation software in a readable, transportability aspects have been vastly improved.MATPOWER is a package of MATLAB M-files for solving power flow and optimal power flow problems.It is intended as a simulation tool for researchers
5、 and educators that is easy to use and modify.MATPOWER is designed to give the best performance possible while keeping the code simple tounderstand and modify.MATPOWER was developed by Ray D. Zimmerman, Carlos E. Murillo-Snchez and Deqiang Gan of PSERC at Cornell University。Initially the POWER syste
6、m based on Matlab trend and optimal tide code and the need for project POWER WEB, and the software written completely free。Matpower is has been widely used in power system simulation analysis. It has good expansion and derivative performance. As a kind of simulation tools, it provides the user with
7、a powerful flexible simulation environment. So as to better for the reality of power system is simulated and analyzed and calculated. Keyword: MATPOWER Power system simulation Flow calculation 目录 第一章 绪论1 1.1 选题背景.1 1.2 MATPOWER 的简介.1 第二章 MATPOWER的功能与使用方法2 2.1 数据格式.2 2.2 模型.3 2.3 电力潮流和最优潮流计算方程 5 2.4
8、MATPOWER 选项10 第三章 电力系统潮流计算14 3.1 潮流计算的定义和应用 14 3.2 电力系统潮流计算方法.15 3.21 牛顿-拉夫逊法15 3.23 P-Q分解法.17 第四章 MATPOWER在电力系统潮流计算上的应用.21 4.1 引言21 4.2 电力系统潮流计算模型22 4.3 仿真分析23 4.5 小结25 谢辞26 参考文献27 I 东南大学成贤学院毕业论文 第一章 绪论 1.1 选题背景 潮流计算是电力系统计算分析的一种最基本计算, 通过求取在给定运行方式下电网各节 点电压、电流和功率分布来检查各元件是否过负荷、各点电压是否满足要求、功率分布和功 率省耗是否合
9、理等电力系统状态情况,因此受到电力系统运行部门、科研机构的高度重视。 潮流计算最早是由人工进行计算,后来随着计算机技术的飞跃发展,利用计算机语言编写潮 流仿真计算软件来完成是目前主要计算方法,国内常见的软件有:中国电力科学研究院的 PASAP、 美国Bonneville电力局的BPA、 美国PTI公司的PSSE、 美国电力科学研究院的ETMSP、 德国西门子公司的NETOMAC等。这些软件大多功能强大并且应用于电力系统的实际仿真计算 和科学研究,但对于研究人员和教育从业者来说,由于科研经费有限无力购买这些昂贵的软 件,因而寻求免费软件成为他们工作的一个较为重要的选择,美国康奈尔大学电力系统工程
10、 研究中心的RAY DZimmenrman、CARLOS EMurillo和甘德强注意到这些问题, ,在ROBERT Thomas的指导下应用MAlrI AB语言开发成功电力系统潮流仿真计算免费软件MATPOWER。最初 的基于Matlab的电力系统潮流和最优潮流代码和为项目POWER WEB 的需要编写的,并且该软 件完全免费。Matpower是一直广泛应用于电力系统的仿真分析。它具有较好的扩展和衍生性 能。作为一种仿真工具,它为用户提供了一个强大的灵活的仿真环境。从而更好地对现实中 的电力系统进行模拟分析和计算。 1.2 MATPOWER简介 MATPOWER是一个基于matlab.m文件
11、的组建包,用来解决电力潮流和优化潮流的问题。它 致力于为研究人员和教育从业者提供一种易于使用和可更新的仿真工具。 Matpower的设计理 念是用尽可能简单、易懂,可更新的代码来实现最优秀的功能。Matpower是康奈尔大学电气 学院电力系统工程研究中心的ZIMMENNRman,CARLOS.Murillo和甘德强在ROBOERT THOMAS的 指导下开发出来的。最初的基于Matlab的电力系统潮流和最优潮流代码和为项目POWER WEB 的需要编写的,并且该软件完全免费。Matpower是一直广泛应用于电力系统的仿真分析。它 具有较好的扩展和衍生性能。作为一种仿真工具,它为用户提供了一个强
12、大的灵活的仿真环 境。从而更好地对现实中的电力系统进行模拟分析和计算。 系统要求 MATLAB 5.0 或以上版本1 MATLAB 最优化工具箱(一小部分最优潮流算法需要) 两者都可以从MathWorks获得(见http:/ 安装 步骤一:到MATPOWER主页(http:/www.pserc.cornell.edu/mathpower/)上按照下载指导 下载。 步骤二:解压下载的文件。 步骤三:将解压后的文件放到MATLAB的PATH 路径下。 1 东南大学成贤学院毕业论文 第二章 MATPOWER的功能与使用方法 2.1 数据格式 MATPOWER所用的所有数据文件均为MATLAB的M文件
13、或者MAT文件,用来定义和返回变量: baseMVA、bus、branch、gen等。 baseMVA变量是一个标量,用来设置基准容量。对于计算中采用有名值,可以根据需要设置, 如IOOMVA;对于计算中采用标么值,一般设置为1。 bus变量是一个矩阵,用来设置电网中各母线参数,其格式为:bus_i、type、Pd、Qd、Gs、 Bs、83“ea、Vm、Va、baseKV、zone、Vmax、Vmin。bus-i用来设置母线编号,范围为129997。 type用来设置母线类型,1为PQ节点母线,2为PV节点母线,3为平衡(参考)节点母线。Pd 和Qd用来设置母线注入负荷的有功和无功功率。Gs、
14、Bs用来设置与母线并联电导和电纳。 baseKV用来设置该母线基准电压。Vm和Va用来设置母线电压的幅值、相位初值。Vmax和Vmin 用来设置工作时母线最高、最低电压幅值。area和zone用来设置电网断面号和省耗分区号, 一般都设置为1,前者可设置范围为l100,后者可设置范围为1999。 branch变量是一个矩阵,用来设置电网中各支路参数,其格式为:fbus、tbus、r、x、b、 rateA、mteB、mteC、ratio、aJlgle、status。fbus和tbus用来设置该支路由起始节点(母 线)编号和终止节点(母线)编号。r、x和b用来设置该支路的电阻、电抗和充电电纳。rat
15、eA、 rateB和rate(;分别用来设置该支路长期、短期和紧急允许功率。ratio用来设置该支路的 变比,如果支路元件仅仅是导线为O;如果支路元件为变压器,则该变比为fl,us侧母线的基 准电压与thus侧母线的基准电压之比。angle用来设置支路的相位角度,如果支路元件为变压 器,就是变压器的转角;如果支路元件不是变压器,相位角度为0度。status用来设置支路工 作状态,1表示投入运行,0表示退出运行。 gen变量也是一个矩阵,用来设置接入电网中的发电机(电源)参数,其格式为:bus、魄、Qg、 Qmax、Qmin、Vg、mBase、status、Pmax、Pmin。bus用来设置接人
16、发电机(电源)的母线编号。 Pg和Qg用来设置接人发电机(电源)的有功和无功功率。Pmax和Pmin用来设置接入发电机(电 源)的有功功率最大、最小允许值。9max和Qmin用来设置接入发电机(电源)的无功功率最大、 最小允许值。Vg用来设置接人发电机(电源)的工作电压。mBase用来设置接入发电机(电源) 的功率基准,如为缺省值,就是baselVA变量的值。status用来设置发电机(电源)工作状 态,l表示投入运行,0表示退出运行。 2 东南大学成贤学院毕业论文 2.2 模型 交流模型( AC) 固定负荷被当作恒定有功和无功功率注入,Pd 和 Qd 分别被指定为 bus 矩阵的第三列和第
17、四列。任何母线的恒阻抗泄漏元件的泄漏导纳都通过 Gsh和 Bsh 被指定到第五和第六列。 所有的线路,包括输电线路、变压器和调相机,都通过标准的“p ”模型建立包括串联电阻 R 电抗 X 以及所有的线路充电电容 Bc,和理想的变压器串联,对于调相机包括调节比例 t 移相角 qshift。参数 R,X,B,t 和 qshift,在线路矩阵 branch 的第 3,4,5,9 和 10 列。线路首端和末端的电压和电流通过线路导纳矩阵 br 通过以下公式相关联: 分散的线路导纳矩阵和母线泄漏导纳矩阵被 MATPOWER 联合成为复合母线导纳矩阵 Ybus, 并以它来关联母线电压向量 Vbus 和母线
18、电流向量 Ibus: I =YV 类似的,通过形成导纳矩阵 Yf 和 Yt 来计算线路首末端的电流向量,在给定母线电 压 Vbus 的情况下: 母线功率注入和线路功率注入的复向量可以表达为: 其中 Vf 和 Vt 分别为所有支路首末端电压的复向量,diag()将一个向量转变为一个以它 为对角元素的对角矩阵 3 东南大学成贤学院毕业论文 直流公式(DC) 对直流模型来说,仍然是使用原来的参数,并且做了以下的假设: 线路阻抗 R 和充电电容 Bc 被忽略(也就是说支路是无损的) 所有的母线电压都认为接近与标么值 1 电压角相 差很小,认为 联合这些假设和方程 1 以及考虑 S =VI* ,有功潮流
19、和电压相角之间的关系 可以写为: 4 东南大学成贤学院毕业论文 2.3 电力潮流和最优潮流 电力潮流 MATPOWER 拥有 5 种潮流计算方法,他们可以通过 runpf 来调用。除了可以输出到屏 幕之外(作为默认方式) ,runpf 还可以有以下的返回选项可以选择参数来输出解: baseMVA,bus,gen,branch,success,et=runpf(casename); 这些解的值被存储在以下的结果中: bus(:,VM) bus voltage magnitudes(母线电压幅值) bus(:,VA) bus voltage angles (母线电压相角) gen(:,PG) ge
20、nerator real power injections(发电机有功输入) gen(:,QG) generator reactive power injections(发电机无功输入) branch(:,PF) real power injected into “from” end of branch(支路首端的有功输入) branch(:,PT) real power injected into “to” end of branch(支路末端的有功输入) branch(:,QF) reactive power injected into “from” end of branch(支路首端的
21、无功输入) branch(:,QT) reactive power injected into “to” end of branch(支路末端的无功输入) success 1=solved successfully,0=unable to solve(1 表示计算成功,0 表示失败) et computation time required for solution(计算所用时间) 默认的潮流计算方法是标准的潮流法12,采用全雅克比矩阵,迭代求解。这种方法在 许多文教科书中都有提到。法则 2和法则 3 是改进型快速解耦算法10.MATPOWER采用 XB 和 BX 变换,参见文献1.法则 4
22、是标准的高斯赛德尔方法5,基于意大利 Bologna 大学的 Alberto Borhetti 的贡献的代码开发。要使用出默认的牛顿法之外的其他算法, PF_ALG 选项必须正确的设置。比如说,要使用 XB 快速解耦算法: mpopt= mpoption(PF_ALG,2); runpf(casename,mpopt); 最后一种算法是直流潮流算法13,它的使用是通过设置 PF_DC 为 1,运行 runpf 而进行 的,或者直接使用 rundcpf。直流潮流的计算是通过直接的不迭代的的方法解母线电压相角 和指定母线的有功注入获得, 基于方程 2, 3和 4。 对于交流潮流解法, 如果 ENF
23、ORCE_Q_LIMS 选项被设为 true(默认为 false) ,并且运行过程中有任何发电机组的无功越限,相应的母 线被转换为 PQ 母线(节点) ,将无功出力设定在限制值,并且案例重新计算。该母线的电 压幅值为满足无功限制的要求将偏离指定值。 如果参考母线 (节点) 的有功出力达到限制值, 该节点将自动转化为 PQ母线(节点) ,在下一轮迭代中第一个依然存在的 PV 母线(节点) 将被当作松弛母线(节点) ,这将导致该母线(节点)的机组有功出力稍微偏离指定值。 5 东南大学成贤学院毕业论文 通常,没有 MATPOWER 的潮流解法中不包含变压器分接头的改变或者操作,或者部分系统从 网络中
24、解列等。 潮流计算的解法,除了高斯赛德尔法之外,都可以很好的解决甚至是大规模网络,因为这 些算法和计算充分利用了 MATLAB 的内部稀疏矩阵处理 最优潮流 MATPOWER 提供多种解算最优潮流问题(OPF)的方法,可以通过访问函数 runopf 的方法实 现。除了提供将计算结果输出到屏幕之外(默认) ,runopf函数还可以通过设置以下的参数 返回解到其他地方。 baseMVA,bus,gen,gencost,branch,f,success,et=runopf(casename); 除了最优潮流解法之外,OPF的运算还包括一下的值: bus(:,LAM_P) 母线(节点)的有功失配拉格朗
25、日乘子 bus(: , LAM_Q) 母线(节点)的无功失配拉格朗日乘子 bus(:,MU_VMAX) 母线(节点)的电压上限龙格库塔乘子 bus(:,MU_VMIN) 母线(节点)的电压下限龙格库塔乘子 gen(:,MU_PMAX) 发电机组有功出力上限的龙格库塔乘子 gen(:,MU_QMAX) 发电机组无功出力上限的龙格库塔乘子 gen(:,MU_PMIN) 发电机组有功出力下限的龙格库塔乘子 gen(:,MU_QMIN) 发电机组无功出力下限的龙格库塔乘子 branch(:,MU_SF) 支路首端的潮流限制龙格库塔乘子 branch(:,MU_ST) 支路末端的潮流限制龙格库塔乘子 f
26、 最后的目标函数值 MATPOWER的第一个(按年代顺序排列)OPF解法是基于包含在MATLAB早期版本 最优化工具箱中的constr 函数,它成功的使用了一种二次规划技术,对海森矩阵采用了拟 牛顿逼近法。第二种方法基于线性规划。它可以使用最优化工具箱中的LP(线性规划)解 法或者其他可以获得的MATLAB LP解法。MATPOWER3.0 版提供一种通用的OPF模型, 允许一般的线性约束加入到最优化变量中,但是要求能够获得MATLAB 最优化工具箱2.0 或以上版本中的fmincom.m文件,或者最优化MINOPF 包中的基于MINOS 的MEX 文件 (见http:/www.pserc.c
27、ornell.edu.minopf/ ) 。MINOPF 被独立的发布出来是因为它比 MATPOWER 有更加严格的授权要求。 6 东南大学成贤学院毕业论文 基于线性规划的OPF解法(LPconstr) 基于线性规划的 OPF 方法在今天已经在工业界获得了广泛的应用。但是,MATPOWER 中 的基于 LP的算法远远比工业应用软件中的算法要简单得多。 MATPOWER基于 LP的算法和 基于 constr 的算法采用相同的模型,包括 CCV(变动成本约束)的分段线性成本案例。 OPF 的简化模型可以写成分离的等式约束和不等于约束 g,以及分离的变量(包括状态变量和控 制变量) ,如下: x 表
28、示系统的电压幅值和相角, 2 x 表示系统的机组哟嘎和无功出力(以及相应的CCV模 型对应的成本变量) 。这是一个典型的非线性规划问题,假定当2 x 给定时等式约束可以用来 解出下1 x 。 基于 LP 的OPF 解法依托函数LPconstr 执行,她类似于constr 函数,且使用相同的M 文 件来计算目标函数,约束条件以及各自的斜率。除此之外,在给定2 x 后,需要使用另外一 个m文件(lpeqslvr.m)来计算约束条件的解1 x 。 该算法的计算过程如下所示,上标表示迭代次数 7 东南大学成贤学院毕业论文 8 东南大学成贤学院毕业论文 广义交流最优潮流解法 和经典的MATPOWER 传
29、统方法相比,采用fmincon 和MINOPF 算法的广义交流 最优潮流解法有一些特殊的优点: 可以混合多项式和分段线性成本函数 负荷调度 机组PQ 容量曲线 支路相角差限制 附加用户供应线性约束 附加用户供应成本 MATPOWER3.1 提供了新的广义用户供应成本公式,机组容量曲线、支路角差限 制和简单的线性约束在3.0 版本中就已经提供。 该问题从三组优化变量来进行处理,分别是x,y和z。x 变量是OPF的变量,包括 每条母线(节点)的电压相角q 和幅值V ,以及机组的有功和无功注入g P 和g Q 。y变量 包 括分段线性函数 CCV所使用的附加变量。其他的附加用户自定义变量被规为 z。
30、 9 东南大学成贤学院毕业论文 对传统的OPF模型的最大改进在于广义成本包含w以及在通用线性约束中包含了矩阵 A,在一下两节中将会予以描述。这两个结构使得在建模系统时有很大的适应性,从而使 MATPOWR更加适合于作为研究的工具。 申明:在最优化工具箱3.0 及之前的版本当中,fmincon 好像不能正确提供约束的影子 价格。而这些并不会发生在 constr 中,这也许是这些版本的最优化工具箱的一个 bug。 2.4 MATPOWER选项 MATPOWER 使用一个选项向量来实现对选项的控制。它类似于MATLAB 最优化工具箱早 期版本中由foptions函数提供的现象向量。最主要的差别就在于
31、不用再记住每个选项的索 引, 只需要根据选项的名称就可以对选型的值作出修改。MATPOWER的默认选项向量是通过调 用无参数mpoption来获得的。因此,输入: runopf(case30,mpoption) 就是另外一种执行默认选项的 OPF算法的方法。 MATPOWER选项向量实现对以下的控制: 10 东南大学成贤学院毕业论文 潮流算法 潮流计算的中止标准 最优潮流(OPF)算法 对不同成本模型的默认OPF算法 OPF的成本转换参数 OPF的中止标准 冗余水平 结果输出方式 文件汇总 文档文件: README MATPOWER的基本介绍 README.txt MATPOWER的基本介绍,
32、为 windows 用户使用 docs/CHANGES MATPOWER的修改历史 docs/CHANGES.txt MATPOWER的修改历史,为windows 用户使用 docs/manual.pdf MATPOWER的用户手册,pdf版 cdf2matp.m 将数据从IEEE CDF的格式转换成MATPOWER的格式 runcomp.m 运行两个最优潮流并且比较他们的结果 rundcopf.m 运新一个直流最优潮流计算 rundcpf.m 运行一个直流潮流计算 runduopf.m 运行一个可以处理高价机组停机的直流OPF runopf.m 运行一个最优潮流计算程序 runpf.m 运行
33、一个潮流计算程序 runuopf.m 运行一个可以处理高价机组停机的OPF (以下的其他opf.m,copf.m,fmincopf.m,lpopf.m也可以当作高层方案使用) 数据输入文件:caseformat.m 输入数据格式匹配的文档 case_ieee30.m IEEE30 节点系统 case118.m IEEE118 节点系统 case14.m IEEE14节点系统 case30.m 改进的IEEE30 节点系统 case300.m IEEE300节点系统 case30pwl.m 分段线性成本结构的case30.m case30Q.m 带无功成本的case30.m case39.m 3
34、9 节点系统 case4gs.m 从Grainger & Steveson转化的4 节点系统 case57.m IEEE57节点系统 case6ww.m 来自于Wood & Wollenberg的1 节点系统 case9.m 3机9节点系统(默认案例) case9Q.m 带无功成本的9 节点系统 11 东南大学成贤学院毕业论文 各种方案使用的通用源文件和功能函数: bustypes.m 创建参考节点,PV节点和PQ节点的节点向量 compare.m 输出两种解法之间的差别概要信息 dAbr_dV .m 计算线路视在功率对电压的偏导,OPF使用 dSbr_dV .m 计算线路视在功率对电压的偏导
35、,OPF和状态估计使用 dSbus_dV .m 计算节点注入复功率对电压的偏导,OPF、牛顿法潮流计算和状 态估计使用 Ext2int.m 将数据矩阵从外部节点编号转换为内部节点编号 hasPQcap.m 检查机组的PQ 容量曲线约束 have_fcn.m 检查选项功能能否获得 idx_area.m 对area矩阵的列索引定义命名 idx_brch.m 对branch矩阵的列索引定义命名 idx_bus.m 对bus矩阵的列索引定义命名 idx_cost.m 对gencost矩阵的列索引定义命名 idx_gen.m 对gen矩阵的列索引定义命名 int2ext.m 将内部编号的数据矩阵转换为按
36、外部编号的矩阵 isload.m 检查机组是否是可调度负荷 loadcase.m 将数据从文件或者结构体中导入到数据矩阵中 makeB.m 形成快速解耦算法所需要的B矩阵 makeBdc.m 形成直流PF和OPF所需的B矩阵 makePTDF.m 形成直流PTDF矩阵 makeSbus.m 对指定的机组和负荷形成节点复功率注入 makeYbus.m 形成节点导纳矩阵 mp_lp.m 用可获得的最佳算法计算线性规划问题 mp_qp.m 用可获得的最佳算法计算二次规划问题 mpver.m 输出MATPOWER版本信息 printpf.m PF或者OPF解的完美输出 savecase.m 保存数据矩
37、阵中的数据到案例文件中 mpoption.m 设置 MATPOWER选项 潮流计算(PF) dcpf.m 执行直流潮流计算 fdpf.m 执行快速解耦潮流计算 gausspf.m 执行高斯赛德尔潮流计算 newtonpf.m 执行牛顿法潮流计算 pfsoln.m 用潮流计算的解更新数据矩阵 最优潮流(OPF) : 12 东南大学成贤学院毕业论文 各种OPF算法的通用文件 opf_form.m 返回提供OPF算法规则的代码 opf_slvr.m 返回提供OPF算法解法的代码 opf.m 高层算法OPF解的程序 poly2pwl.m 生成用对多项式成本的分段线性逼近的函数 pqcost.m 将机组
38、成本矩阵gencost 分为用功和无功成本 totcost.m 对指定的调度情况计算所有的成本 仅由直流OPF使用的文件 dcopf.m 执行直流最优潮流计算 仅由传统OPF所使用的文件(基于constr 和LP的OPF) fg_names.m 返回函数的名字和给定算法的斜率 fun_ccv.m 对CCV规则计算目标函数和约束 fun_std.m 对标准规则计算目标函数和约束 grad_ccv.m 计算CCV规则下目标函数和约束的斜率 grad_std.m 计算标准规则下目标函数和约束的斜率 opfsoln.m 用OPF的解来根新数据矩阵 t_auction.m 测试extras/smartm
39、arket中的auction.m t_aution_case.m t_auction的测试案例 t_aution_fmincopf.m 基于 fmincon的对extras/smartmarket中的auction.m的测试 t_begin.m 开始一个测试集合 t_case9_opf.m OPF测试的案例文件(版本1的格式) t_case9_opfv2.m OPF测试的案例文件(版本2的格式) t_case9_pf.m 潮流计算测试的案例文件(版本1 的格式) t_case9_pfv2.m 潮流计算测试的案例文件(版本2 的格式) t_end.m 停止一个测试集合并且输出数值 t_hasPQ
40、cap.m 测试hasPQcap.m t_is.m 测试两个矩阵是否在一定的范围内是一样的 t_jacobian.m 对偏导进行数值测试 t_loadcase.m 测试load_case.m t_makePTDF.m 测试makePTDF.m t_off2case.m 测试off2case.m t_ok.m 测试一个表达式是否为真 t_opf.m 测试OPF解法 t_pf.m 测试潮流计算解法 t_run_tests.m 运行一系列测试的框架 t_runmarket.m 测试runmarket.m t_skip.m 跳过指定的测试 test_matpower.m 运行所有的可运行的 MATPO
41、WER测试 13 东南大学成贤学院毕业论文 第三章 电力系统潮流计算 3.1 潮流计算的定义和应用 作为研究电力系统稳态运行情况的一种基本电气计算,潮流计算的任务是根据 给定的运行条件和网路结构来确定整个系统的运行状态,比如各母线上的电压(幅 值及相角) ,网络中的功率分布以及功率损耗等。潮流计算的结果是电力系统稳定性 计算和故障分析的基础。 在电力系统运行方式和规划方案的研究中, 都需要进行潮流计算以比较运行方式 或规划供电方案的可行性、可靠性和经济性。同时,为了实时监控电力系统的运行 状态,也需要进行大量而快速的潮流计算。因此,潮流计算是电力系统中应用最广 泛、最基本和最重要的一种电气运算
42、。在系统规划设计和安排系统的运行方式时, 采用离线潮流计算;在电力系统运行状态的实时监控中,则采用在线潮流计算。 3.2 电力系统潮流计算方法 3.2.1 潮流分析的主要方法 随着电力系统的规模的扩大,原始的用解析法进行手工计算的方法进行潮流分析已 经是不可能的了,基本上现在的潮流分析都是在计算机上进行的。 运用计算机进行 潮流分布计算,一般要完成以下四个步骤: (1) 建立数学模型。电力系统潮流计算属于稳态分析范畴,不涉及系统元件的动态 特性和过渡过程。因此其数学模型不包含微分方程,是一组高阶非线性方程。 (2) 确定计算方法。非线性代数方程组的解法离不开迭代,因此,潮流计算方法首 先要求它
43、是能可靠的收敛,并给出正确答案。随着电力系统规模的不断扩大,潮流 问题的方程式阶数越来越高,目前已达到几千阶甚至上万阶,对这样规模的方程式 并不是采用任何数学方法都能保证给出正确答案的。这种情况下就必须寻找一些新 的更可靠的计算方法。现在比较常用的方法有牛顿-拉夫逊法和P-Q分解法。 (3) 制定计算流程并编制程序。无论采用什么编程语言,其基本流程都是绘制程序 流程图,根据选定的计算方法进行循环迭代从而得到最终的计算结果。 (4) 上机计算及对计算结果进行分析。 3.2.2 潮流计算的牛顿-拉夫逊法 牛顿-拉夫逊(简称牛顿法)是数学中解决非线性方程式的典型方法,有较好的收敛性。在解 决电力系统
44、潮流计算问题时,是以导纳矩阵为基础的,因此,只要我们能在迭代过程中尽可 能保持方程式矩阵的稀疏性,就可以大大提高牛顿法潮流程序的效率,从60年代中期,在牛 顿法中利用了最佳顺序消去法以后, 牛顿法在收敛性、 内存要求、 速度方面都超过了阻抗法, 成为60年代末期以后广泛采用的优秀方法。设非线性方程() 0 fx (1) 若其近似解为 (0) x ;而近似解与真解的差为 x ,且有 14 东南大学成贤学院毕业论文 (0) xxx (2) 式中 x 近似解 (0) x 的修正量。 将牛顿法推广到多变量非线性方程组时,有 () () 1 () kkk kkk Fx J X XXX (3) 式中 ()
45、 () () 11 2 () () () () 21 2 () () () 12 ( , ) ( , ) () . ( , ) kk k n kk k k n kk k nn fx x x fxx x FX fxx x () () () () 12 ( , ) kkkk n Xxxx T T() () () () 12 ( , ) kkkk n Xxxx () () () () () () () () (,) () (,) (,) ( ) kk k kk kk k Pe f Je f Qe f VV 其中 为雅可比矩阵; 为函数向量; J () FX x 为修正向量。 潮流计算的牛顿-拉夫逊法 应用牛顿-拉夫逊法进行潮流计算的关键是根据功率议程找出其相应的修正方程, 同时在迭代计算时要根据各节点的给定量及各变量的约束条件进行适当处理。 (1) 功率方程 功率方程形式在牛顿-拉夫逊法中要求写在f(x)=0 的形式,但由于电力系统各节点给 定量不同,其相应的方程也有所不同。 对于 PQ 节点(i=1,2,s23,m),给定量为节点注入功率,记为 15 东南大学成贤学院毕业论文 16