电力系统仿真软件 MATPOWER 的功能研究
摘要
近 年 来 , 电 力 系 统 仿 真 技 术 发 展 较 快 , 出 现 了 多 种 高 性 能 的 可 视 化 仿 真 工 具
如:MatEMTP,MatPower等,这些软件的开发都基于现在日益流行的Matlab语言环境.继承了
Matlab'的强大数学运算分析能力,基于Matlab的电力系统仿真软件在可读性、可移植性方面
有了大幅提高。MATPOWER是一个基于matlab.m文件的组建包,用来解决电力潮流和优化潮流
的问题。它致力于为研究人员和教育从业者提供一种易于使用和可更新的仿真工具。
Matpower的设计理念是用尽可能简单、易懂,可更新的代码来实现最优秀的功能。Matpower
是康奈尔大学电气学院电力系统工程研究中心的ZIMMENNRman,CARLOS.Murillo和甘德强在
ROBOERT THOMAS的指导下开发出来的。最初的基于Matlab的电力系统潮流和最优潮流代码和
为项目POWER WEB 的需要编写的,并且该软件完全免费。Matpower是一直广泛应用于电力系
统的仿真分析。它具有较好的扩展和衍生性能。作为一种仿真工具,它为用户提供了一个强
大的灵活的仿真环境。从而更好地对现实中的电力系统进行模拟分析和计算。
关键词:MTPOWER 电力系统仿真 潮流计算
I
Power system simulation software MATPOWER function 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 'powerful 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 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-Sánchez and Deqiang Gan of PSERC at Cornell University。Initially the POWER system
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 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
II
目录
第一章 绪论................................................................1
1.1 选题背景...........................................................1
1.2 MATPOWER 的简介.....................................................1
第二章 MATPOWER 的功能与使用方法............................................2
2.1 数据格式...........................................................2
2.2 模型...............................................................3
2.3 电力潮流和最优潮流计算方程 ........................................5
2.4 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 选题背景
潮流计算是电力系统计算分析的一种最基本计算,通过求取在给定运行方式下电网各节
点电压、电流和功率分布来检查各元件是否过负荷、各点电压是否满足要求、功率分布和功
率省耗是否合理等电力系统状态情况,因此受到电力系统运行部门、科研机构的高度重视。
潮流计算最早是由人工进行计算,后来随着计算机技术的飞跃发展,利用计算机语言编写潮
流仿真计算软件来完成是目前主要计算方法,国内常见的软件有:中国电力科学研究院的
PASAP、美国Bonneville电力局的BPA、美国PTI公司的PSS/E、美国电力科学研究院的ETMSP、
德国西门子公司的NETOMAC等。这些软件大多功能强大并且应用于电力系统的实际仿真计算
和科学研究,但对于研究人员和教育从业者来说,由于科研经费有限无力购买这些昂贵的软
件,因而寻求免费软件成为他们工作的一个较为重要的选择,美国康奈尔大学电力系统工程
研究中心的RAY D.Zimmenrman、CARLOS E.Murillo和甘德强注意到这些问题,,在ROBERT
Thomas的指导下应用MAlrI AB语言开发成功电力系统潮流仿真计算免费软件MATPOWER。最初
的基于Matlab的电力系统潮流和最优潮流代码和为项目POWER WEB 的需要编写的,并且该软
件完全免费。Matpower是一直广泛应用于电力系统的仿真分析。它具有较好的扩展和衍生性
能。作为一种仿真工具,它为用户提供了一个强大的灵活的仿真环境。从而更好地对现实中
的电力系统进行模拟分析和计算。
1.2 MATPOWER简介
MATPOWER是一个基于matlab.m文件的组建包,用来解决电力潮流和优化潮流的问题。它
致力于为研究人员和教育从业者提供一种易于使用和可更新的仿真工具。Matpower的设计理
念是用尽可能简单、易懂,可更新的代码来实现最优秀的功能。Matpower是康奈尔大学电气
学院电力系统工程研究中心的ZIMMENNRman,CARLOS.Murillo和甘德强在ROBOERT THOMAS的
指导下开发出来的。最初的基于Matlab的电力系统潮流和最优潮流代码和为项目POWER WEB
的需要编写的,并且该软件完全免费。Matpower是一直广泛应用于电力系统的仿真分析。它
具有较好的扩展和衍生性能。作为一种仿真工具,它为用户提供了一个强大的灵活的仿真环
境。从而更好地对现实中的电力系统进行模拟分析和计算。
系统要求
·MATLAB 5.0 或以上版本1
·MATLAB 最优化工具箱(一小部分最优潮流算法需要)
两者都可以从MathWorks获得(见http://www.mathworks.com/)
安装
步骤一:到MATPOWER主页(http://www.pserc.cornell.edu/mathpower/)上按照下载指导
下载。
步骤二:解压下载的文件。
步骤三:将解压后的文件放到MATLAB的PATH 路径下。
1
东南大学成贤学院毕业论文
第二章 MATPOWER的功能与使用方法
2.1 数据格式
MATPOWER所用的所有数据文件均为MATLAB的M文件或者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用来设置母线编号,范围为1~29997。
type用来设置母线类型,1为PQ节点母线,2为PV节点母线,3为平衡(参考)节点母线。Pd
和Qd用来设置母线注入负荷的有功和无功功率。Gs、Bs用来设置与母线并联电导和电纳。
baseKV用来设置该母线基准电压。Vm和Va用来设置母线电压的幅值、相位初值。Vmax和Vmin
用来设置工作时母线最高、最低电压幅值。area和zone用来设置电网断面号和省耗分区号,
一般都设置为1,前者可设置范围为l~100,后者可设置范围为1—999。
branch变量是一个矩阵,用来设置电网中各支路参数,其格式为:fbus、tbus、r、x、b、
rateA、mteB、mteC、ratio、aJlgle、status。fbus和tbus用来设置该支路由起始节点(母
线)编号和终止节点(母线)编号。r、x和b用来设置该支路的电阻、电抗和充电电纳。rateA、
rateB和rate(;分别用来设置该支路长期、短期和紧急允许功率。ratio用来设置该支路的
变比,如果支路元件仅仅是导线为O;如果支路元件为变压器,则该变比为fl,us侧母线的基
准电压与thus侧母线的基准电压之比。angle用来设置支路的相位角度,如果支路元件为变压
器,就是变压器的转角;如果支路元件不是变压器,相位角度为0度。status用来设置支路工
作状态,1表示投入运行,0表示退出运行。
gen变量也是一个矩阵,用来设置接入电网中的发电机(电源)参数,其格式为:bus、魄、Qg、
Qmax、Qmin、Vg、mBase、status、Pmax、Pmin。bus用来设置接人发电机(电源)的母线编号。
Pg和Qg用来设置接人发电机(电源)的有功和无功功率。Pmax和Pmin用来设置接入发电机(电
源)的有功功率最大、最小允许值。9max和Qmin用来设置接入发电机(电源)的无功功率最大、
最小允许值。Vg用来设置接人发电机(电源)的工作电压。mBase用来设置接入发电机(电源)
的功率基准,如为缺省值,就是base~lVA变量的值。status用来设置发电机(电源)工作状
态,l表示投入运行,0表示退出运行。
2
东南大学成贤学院毕业论文
2.2 模型
交流模型( AC)
固定负荷被当作恒定有功和无功功率注入,Pd 和 Qd 分别被指定为 bus 矩阵的第三列和第
四列。任何母线的恒阻抗泄漏元件的泄漏导纳都通过 Gsh 和 Bsh 被指定到第五和第六列。
所有的线路,包括输电线路、变压器和调相机,都通过标准的“p ”模型建立包括串联电阻
R 电抗 X 以及所有的线路充电电容 Bc,和理想的变压器串联,对于调相机包括调节比例 t
移相角 qshift。参数 R,X,B,t 和 qshift,在线路矩阵 branch 的第 3,4,5,9 和 10
列。线路首端和末端的电压和电流通过线路导纳矩阵 br 通过以下公式相关联:
分散的线路导纳矩阵和母线泄漏导纳矩阵被 MATPOWER 联合成为复合母线导纳矩阵 Ybus,
并以它来关联母线电压向量 Vbus 和母线电流向量 Ibus: I =YV
类似的,通过形成导纳矩阵 Yf 和 Yt 来计算线路首末端的电流向量,在给定母线电
压 Vbus 的情况下:
母线功率注入和线路功率注入的复向量可以表达为:
其中 Vf 和 Vt 分别为所有支路首末端电压的复向量,diag()将一个向量转变为一个以它
为对角元素的对角矩阵
3
东南大学成贤学院毕业论文
直流公式(DC)
对直流模型来说,仍然是使用原来的参数,并且做了以下的假设: 线路阻抗 R 和充电电容
Bc 被忽略(也就是说支路是无损的) ·所有的母线电压都认为接近与标么值 1 电压角相
差很小,认为 联合这些假设和方程 1 以及考虑 S =VI* ,有功潮流和电压相角之间的关系
可以写为:
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) generator 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(支路首端的无功输入)
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 是标准的高斯-赛德尔方法[5],基于意大利 Bologna
大学的 Alberto Borhetti 的贡献的代码开发。要使用出默认的牛顿法之外的其他算法,
PF_ALG 选项必须正确的设置。比如说,要使用 XB 快速解耦算法:
>> mpopt= mpoption('PF_ALG',2);
>> runpf(casename,mpopt);
最后一种算法是直流潮流算法[13],它的使用是通过设置 PF_DC 为 1,运行 runpf 而进行
的,或者直接使用 rundcpf。直流潮流的计算是通过直接的不迭代的的方法解母线电压相角
和指定母线的有功注入获得,基于方程 2,3 和 4。对于交流潮流解法,如果 ENFORCE_Q_LIMS
选项被设为 true(默认为 false),并且运行过程中有任何发电机组的无功越限,相应的母
线被转换为 PQ 母线(节点),将无功出力设定在限制值,并且案例重新计算。该母线的电
压幅值为满足无功限制的要求将偏离指定值。如果参考母线(节点)的有功出力达到限制值,
该节点将自动转化为 PQ 母线(节点),在下一轮迭代中第一个依然存在的 PV 母线(节点)
将被当作松弛母线(节点),这将导致该母线(节点)的机组有功出力稍微偏离指定值。
5