首页 计划总结 工作报告 领导讲话 致辞演讲 心得体会大全 应用材料 实用文档 党团建设 专题范文 思想汇报 发言稿 述职报告
  • 党的会议
  • 全国两会
  • 工作体会
  • 学习心得
  • 感悟体会
  • 专题教育
  • 观读后感
  • 评语寄语
  • 【电力系统课程设计潮流计算】电力系统潮流课程设计

    时间:2021-03-05 00:03:47 来源:职场写作网 本文已影响 职场写作网手机站

    电力系统课程设计潮流计算 摘 要    潮流计算是电力系统非常重要的分析计算,用以研究系统规划和运行中提出的各种问题。对规划中的电力系统,通过潮流计算可以检验所提出的电力系统规划方案能否满足各种运行方式的要求;
    对运行中的电力系统,通过潮流计算可以预知各种负荷变化和网络结构的改变会不会危及系统的安全,系统中所有母线的电压是否在允许的范围以内,系统中各种元件(线路、变压器等)是否会出现过负荷,以及可能出现过负荷时应事先采取哪些预防措施等。

    潮流计算是电力系统分析最基本的计算。除它自身的重要作用之外,潮流计算还是网损计算、静态安全分析、暂态稳定计算、小干扰静态稳定计算、短路计算、静态和动态等值计算的基础。

    实际电力系统的潮流计算主要采用牛顿-拉夫逊法。按电压的不同表示方法,牛顿-拉夫逊潮流计算分为直角坐标形式和极坐标形式两种。本次计算采用直角坐标形式下的牛顿-拉夫逊法,牛顿-拉夫逊法有很好的收敛性,但要求有合适的初值。

    传统的潮流计算程序缺乏图形用户界面,结果显示不直接难与其他分析功能集成。网络原始数据输入工作大量且易于出错。本文采用MATLAB语言运行WINDOWS操作系统的潮流计算软件。目前MATLAB已成为国际控制界最流行、使用最广泛的语言了。它的强大的矩阵处理功能给电力系统的分析、计算带来很多方便,而且采用MATLAB界面直观,运行稳定,计算准确。所以本次课程设计程序设计采用MATLAB计算。

    关键词:
    电力系统潮流计算 牛顿—拉夫逊法潮流计算 MATLAB 目 录 一、 概述 1.1 设计目的与要求..................................................3 1.1.1 设计目的.....................................................3 1.1.2 设计要求.....................................................3 1.2 设计题目.....................................................3 1.3 设计内容.....................................................3 二 电力系统潮流计算概述......................................4 2.1 电力系统简介...................................................4 2.2 潮流计算简介...................................................4 2.3 潮流计算的意义及其发展..................... ...................5 三 潮流计算设计题目...........................................6 3.1 潮流计算题目................................................. 6 3.2 对课题的分析及求解思路....................................... 7 四 潮流计算算法及手工计算....................................7 4.1 极坐标下P-Q法的算法..........................................7 4.2 节点电压方程..................................................8 4.3 节点导纳矩阵..................................................9 4.4 导纳矩阵在潮流计算............................................10 4.5 潮流计算的手工计算............................................12 五 Matlab概述..................................................13 5.1 Matlab简介................................................... 14 5.2 Matlab的应用..................................................14 5.3 矩阵的运算.................................................... 14 5.3.1 与常数的运算.................................................. 14 5.3.2 基本数学运算...................................................14 5.3.3 逻辑关系运算...................................................14 5.4 Matlab中的一些命令............................................. 15 六 潮流计算流程图及源程序......................................18 6.1 潮流计算流程图..................................................18 6.2 潮流计算源程序图................................................19 6.3 运行计算结果....................................................27 七 总结...................................................29 八 参考文献...............................................29 第一章 系统概述 1.1 设计目的与要求 1.1.1 设计目的 1. 掌握电力系统潮流计算的基本原理;

    2. 掌握并能熟练运用一门计算机语言(MATLAB语言或C语言或C++语言);

    3. 采用计算机语言对潮流计算进行计算机编程。

    1.1.2 设计要求 1. 程序源代码;

    2. 给定题目的输入,输出文件;

    3. 程序说明;

    4. 给定系统的程序计算过程;

    5. 给定系统的手算过程(至少迭代2次)。

    1.2 设计题目 电力系统潮流计算(牛顿-拉夫逊法、P-Q分解法) 1.3 设计内容 1. 根据电力系统网络推导电力网络数学模型,写出节点导纳矩阵;

    2. 赋予各节点电压变量(直角坐标系形式)初值后,求解不平衡量;

    3. 形成雅可比矩阵;

    4. 求解修正量后,重新修改初值,从2开始重新循环计算;

    5. 求解的电压变量达到所要求的精度时,再计算各支路功率分布、功率损耗和平衡节点功率;

    6. 上机编程调试;

    7. 计算分析给定系统潮流分析并与手工计算结果做比较分析;

    8. 书写课程设计说明书。

    第二章 电力系统潮流计算概述 2.1电力系统叙述 电力工业发展初期,电能是直接在用户附近的发电站(或称发电厂)中生产的,各发电站孤立运行。随着工农业生产和城市的发展,电能的需要量迅速增加,而热能资源和水能资源丰富的地区又往往远离用电比较集中的城市和工矿区,为了解决这个矛盾,就需要在动力资源丰富的地区建立大型发电站,然后将电能远距离输送给电力用户。同时,为了提高供电的可靠性以及资源利用的综合经济性,又把许多分散的各种形式的发电站,通过送电线路和变电所联系起来。这种由发电机、升压和降压变电所,送电线路以及用电设备有机连接起来的整体,即称为电力系统。

    现代电力系统提出了“灵活交流输电和新型直流输电”的概念。灵活交流输电技术是指运用固态电子器件与现代自动控制技术对交流电网的电压、相位角、阻抗、功率以及电路的通断进行实时闭环控制,从而提高高压输电线路的诉讼能力和电力系统的稳态水平。新型直流输电技术是指应用现电力电子技术的最新成果,改善和简化变流站的造价等。

    运营方式管理中,潮流是确定电网运行方式的基本出发点:在规划领域,需要进行潮流分析验证规划方案的合理性;
    在实时运行环境,调度员潮流提供了电网在预想操作预想下的电网的潮流分布以及校验运行的可靠性。在电力系统调度运行的多个领域都涉及到电网潮流计算。潮流是确定电力网咯运行状态的基本因素,潮流问题是研究电力系统稳态问题的基础和前提。

    2.2潮流计算简介 电力系统潮流计算是研究电力系统稳态运行情况的一种计算,它根据给定的运行条件及系统接线情况确定整个电力系统各部分的运行状态:各母线的电压。各元件中流过的功率,系统的功率损耗等等。在电力系统规划的设计和现有电力系统运行方式的研究中,都需要利用潮流计算来定量的分析比较供电方案或运行方式的合理性。可靠性和经济性。此外,电力系统的潮流计算也是计算机系统动态稳定和静态稳定的基础,所以潮流计算是研究电力系统的一种和重要和基础的计算。

    电力系统潮流计算也分为离线计算和在线计算两种,前者主要用于系统规划设计和安排系统的运行方式,后者则用于正在运行系统的经常监视及实时控制。

    利用电子数字计算机进行潮流计算从50年代中期就已经开始了。在这20年内,潮流计算曾采用了各种不同的方法,这些方法的发展主要围绕着对潮流计算的一些基本要求进行的,对潮流计算的要求可以归纳为以下几点:
    (1) 计算方法的可靠性或收敛性;

    (2) 对计算机内存量的要求;

    (3) 计算速度;

    (4) 计算的方便性和灵活性。

    2.3潮流计算的意义及其发展 电力系统潮流计算是电力系统分析中的一种最基本的计算,是对复杂电力系统正常和故障条件下稳态运行状态的计算。潮流计算的目标是求取电力系统在给定运行状态的计算,即节点电压和功率分布,用以检查系统各元件是否过负荷。各点电压是否满足要求,功率的分布和分配是否合理以及功率损耗等。对现有的电力系统的运行和扩建,对新的电力系统进行规划设计以及对电力系统进行静态和稳态分析都是以潮流计算为基础。潮流计算结果可用如电力系统稳态研究,安全估计或最优潮流等对潮流计算的模型和方法有直接影响。实际电力系统的潮流技术那主要采用牛顿—拉夫逊法。

    运行方式管理中,潮流是确定电网运行方式的基本出发点;
    在规划领域,需要进行潮流分析验证规划方案的合理性;
    在实时运行环境,调度员潮流提供了多个在预想操作情况下电网的潮流分布以及校验运行可靠性。在电力系统调度运行的多个领域问题是研究电力系统稳态问题的基础和前提。

    在用数字解算计算机解电力系统潮流问题的开始阶段,普遍采取以节点导纳矩阵为基础的逐次代入法。这个方法的原理比较简单,要求的数字计算机内存量比较差下,适应50年代电子计算机制造水平和当时电力系统理论水平,但它的收敛性较差,当系统规模变大时,迭代次数急剧上升,在计算中往往出现迭代不收敛的情况。这就迫使电力系统的计算人员转向以阻抗矩阵为基础的逐次代入法。阻抗法改善了系统潮流计算问题的收敛性,解决了导纳无法求解的一些系统的潮流计算,在60年代获得了广泛的应用,阻抗法德主要缺点是占用计算机内存大,每次迭代的计算量大。当系统不断扩大时,这些缺点就更加突出,为了克服这些缺点,60年代中期发展了以阻抗矩阵为基础的分块阻抗法。这个方法把一个大系统分割为几个小的地区系统,在计算机内只需要存储各个地区系统的阻抗矩阵及它们之间联络的阻抗,这样不仅大幅度的节省了内存容量,同时也提高了计算速度。

    克服阻抗法缺点是另一个途径是采用牛顿-拉夫逊法。这是数学中解决非线性方程式的典型方法,有较好的收敛性。在解决电力系统潮流计算问题时,是以导纳矩阵为基础的,因此,只要我们能在迭代过程中尽可能保持方程式系数矩阵的稀疏性,就可以大大提高牛顿法潮流程序的效率。自从60年代中期,牛顿法中利用了最佳顺序消去法以后,牛顿法在收敛性。内存要求。速度方面都超过了阻抗法,成为了60年代末期以后广泛采用的优秀方法。

    第三章 潮流计算设计题目 3.1 潮流计算课题 题目:在图1所示的简单电力系统中,系统中节点1、2为节点,节点3为节点,节点4为平衡节点,已给定,,,,,,网络各元件参数的标幺值如表2所示,给定电压的初始值如表2所示,收敛系数。试求:
    图1 简单电力系统 表1 网络各元件参数的标幺值 支路 电阻 电抗 输电线路 变压器变比k 1—2 0.03 0.09 0.02 — 1—3 0.02 0.05 0.02 — 2—3 0.04 0.08 — — 2—4 0.0 0.05 — 0.9625 3—4 0.03 0.07 — — 表2 各节点电压(初值)标幺值参数 节点i 1 2 3 4 1.00+j0.0 1.0+j0.0 1.0+j0.0 1.05+j0.0 3.2 对课题的分析及求解思路 此电力系统是一个4节点,5支路的电力网络。综合比较牛顿拉夫逊法(直角坐标、极坐标)、PQ分解法等多种求解方法的特点,最后确定采用牛顿拉夫逊法(极坐标)。因为此方法所需解的方程组最少。

    第四章 潮流计算算法及手工计算 4.1 极坐标下P-Q法的算法 4.1.1 节点导纳矩阵Y 根据题目提供的各节点的参数,求得节点导纳矩阵 = 4.1.2 简化雅可比矩阵B/和B// 通过上一步的导纳矩阵,形成有功迭代和无功迭代的简化雅可比矩阵B/和B// 对雅可比矩阵进行三角分解,形成因子表,为后面进行修正方程计算作好准备。

    4.1.3 修正和迭代 第一步,给定PQ节点初值和各节点电压相角初值。

    第二步,作第一次有功迭代,按公式计算节点有功功率不平衡量。

    第三步,做第一次无功迭代,按公式计算无功功率不平衡量,计算时电压相角最新的修正值。解修正方程式,可得各节点电压幅值的修正量。

    第四步,第一轮有功迭代和无功迭代便做完了。

    第五步,按公式计算平衡节点功率。直到节点不平衡功率下降到10-5以下,迭代便可以结束。

    4.2 潮流计算算法 本题采用了题目要求的牛顿-拉夫逊潮流计算的方法。

    牛顿-拉夫逊法潮流计算的公式。把牛顿法用于潮流计算,采用极坐标形式表示的如式(1-3)所示的形式。其中电压和支路导纳可表示为:
    将上述表示式(1-2)代入(1-1)式的右端,展开并分出实部和虚部,便得:
    (1-3) 按照以上的分类,PQ节点的输出有功功率和无功功率是给定的,则第i节点的给定功率设为和(称为注入功率)。

    假定系统中的第1、2、…、m节点为PQ节点,对其中每一个节点的N-R法表达式 F(x)=0[如、、]形式有些下列方程:
    (1-4) =(1、2、…、m) PV节点的有功功率和节点电压幅值是给定的。假定系统中的第m+1、m+2、…、n-1节点为PV节点,则对其中每一PV节点可以列写方程:
    (1-5) =(m+1、m+2、…、n-1) (6)形成雅可比矩阵。N-R法的思想是;
    本例;
    对F(x)求偏导的式(1-6)、式(1-7),即式(1-4)、式(1-5)中的、、是多维变量的函数,对多维变量求偏导(、、、、、、、…),并以矩阵的形式表达称为雅可比矩阵。

    当j=i时,对角元素为 (1-6) 当时,矩阵非对角元素为:
    (1-7) 由上式不难看出,雅可比矩阵有以下特点。

    ① 雅可比矩阵中的诸元素都是节点电压的函数,因此在迭代过程中,它们将随着节点电压的变化而不断的变化。

    ② 雅可比矩阵具有结构对称性,数据不对称。如非对角,,。

    ③ 由式(1-7)可以看出,当导纳矩阵中非对角元素为零时,。雅可比矩阵中相应的元素也为零,即矩阵是非常稀疏的。因此,修正方程的求解同样可以应用稀疏矩阵的求解技巧。正是由于这一点才使N-R法获得广泛的应用。

    4.3 手工计算 4.3.1 节点导纳矩阵 求得节点导纳矩阵Y = 各节点的导纳值如下:
    ;Y11= 10.2299 -27.2214i Y12= -3.3333 +10.0000i Y13=-6.8966 +17.2414i Y14=0 Y21= -3.3333 +10.0000i Y22=8.3333 -38.5181i Y23=-5.0000 +10.0000i Y24= 0 +19.2500i Y31=-6.8966 +17.2414i Y32= -5.0000 +10.0000i Y33=17.0690 -39.3003i Y34= -5.1724 +12.0690i Y41=0 Y42= 0 +19.2500i Y43=-5.1724 +12.0690i Y44=5.1724 -32.0690i 4.3.2 简化雅可比矩阵 迭代中的雅克比矩阵: -27.5862 10.0000 17.5862 -10.0920 3.3333 10.0000 -40.4125 10.2000 3.3333 -8.2333 17.5862 10.2000 -40.8881 7.0345 5.1000 10.3678 -3.3333 -7.0345 -26.8566 10.0000 -3.3333 8.4333 -5.1000 10.0000 -36.6237 -28.3886 10.6530 17.7355 -10.1563 3.4957 10.6198 -42.3389 10.5574 3.5953 -8.8273 17.9892 10.7970 -40.8881 6.8278 5.0990 10.9577 -3.4957 -7.4620 -27.7952 10.6530 -3.5953 9.4444 -5.5781 10.6198 -42.1163 -28.3429 10.6190 17.7239 -10.1386 3.4922 10.5905 -42.2491 10.5416 3.5776 -8.7973 17.9700 10.7682 -40.8881 6.8312 5.1009 10.9386 -3.4922 -7.4464 -27.7429 10.6190 -3.5776 9.3973 -5.5540 10.5905 -41.8495 -28.3426 10.6189 17.7238 -10.1385 3.4921 10.5903 -42.2486 10.5414 3.5777 -8.7971 17.9700 10.7682 -40.8881 6.8310 5.1007 10.9385 -3.4921 -7.4465 -27.7426 10.6189 -3.5777 9.3971 -5.5541 10.5903 -41.8486 -28.3427 10.6189 17.7238 -10.1385 3.4921 10.5903 -42.2486 10.5414 3.5777 -8.7971 17.9700 10.7682 -40.8881 6.8310 5.1007 10.9385 -3.4921 -7.4465 -27.7427 10.6189 -3.5777 9.3971 -5.5541 10.5903 -41.8486 4.3.3 修正、迭代 给定PQ节点初值和各节点电压相角初值 V1=1.0 ,V2(0)=V3(0)=1.0,V4=1.05 δ2(0)=δ3(0)=0, δ4(0)=0 1 作第一次有功迭代,按公式计算节点有功功率不平衡量 迭代中的△P:
    -0.2621 -0.2000 0.3156 0.0007 0.0086 -0.0167 -0.0000 0.0000 0.0008 0.0000 -0.0000 -0.0000 0.0000 -0.0000 0.0000 2做第一次无功迭代,按公式计算无功功率不平衡量,计算时电压相角最新的修正值。

    迭代中的△Q:
    0.0648 1.6944 -0.0033 -0.0887 -0.0000 -0.0002 -0.0000 -0.0000 -0.0000 -0.0000 解修正方程式,可得各节点电压幅值的修正量为 迭代中电压的模: 1.0159 1.0470 1.0150 1.0448 1.0150 1.0448 1.0150 1.0448 1.0150 1.0448 到这里为止,第一轮有功迭代和无功迭代便做完了。

    3 按公式计算平衡节点功率,得:
    P1+jQ1= 0.3159 + 1.3621i 经过四轮迭代,节点不平衡功率也下降到10-5以下,迭代到此结束。

    4.4输出功率的手工计算 全线路各个点的功率分配如下:
    0 -0.0582 - 0.3378i -0.3418 + 0.0172i 0 0.0612 - 0.4727i 0 -0.0958 - 0.4238i -0.2654 - 0.9014i 0.3441 - 0.0424i 0.1013 - 0.3746i 0 -0.0455 - 0.4275i 0 0.2654 + 0.9332i 0.0505 + 1.2558i 0 第五章 Matlab概述 5.1 Matlab简介 MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平   MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

    5.2 Matlab的应用 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。

    MALAB 产品族可以用来进行以下各种工作:
      ● 数值分析   ● 数值和符号计算   ● 工程与科学绘图   ● 控制系统的设计与仿真   ● 数字图像处理 技术   ● 数字信号处理 技术   ● 通讯系统设计与仿真 ● 财务与金融工程   MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。

    5.3与常数的运算 常数与矩阵的运算即是同该矩阵的每一元素进行计算。但需注意进行数除时,常数通常只能做除量。

    基本函数运算中,矩阵的函数运算是矩阵预算中最实用的部分,常用的主要有以下几个:
    det(a) 求矩阵a的行列式 eig(a) 求矩阵a的特征值 inv(a)或a^(-1) 求矩阵a的逆矩阵 rank(a) 求矩阵a的秩 trace(a) 求矩阵a的迹(对角线元素之和) 我们进行工程计算时常常遇到矩阵对应元素之间的运算。这种运算不同于前面讲的数学运算,为有所区别,我们称之为数组运算。

    5.4基本数学运算 数组的加、减与矩阵的加、减运算完全相同。而乘除法运算有相当大的区别,数组的乘除法是指两同维数组对应元素之间的乘除法,它们的运算符为“.*”和“./”或“.\。”前面讲过常数与矩阵的除法运算中常数只能做除数。在数组运算中有了“对应关系”的规定,数组与常数之间的除法运算没有任何限制。

    另外,矩阵的数组运算中还有幂运算(运算符.^)、指数运算(exp)、对数运算(log)、和开方运算(sqrt)、等,有了“对应元素”的规定,数组的运算实质上就是针对数组内部的每个元素进行的。矩阵的幂运算与数组的幂运算有很大的区别。

    5.5 逻辑关系运算 逻辑运算是MATLAB中数组运算所特有的一种运算形式,也是几乎所有的高级语言普遍适用的一种运算。

    5.6 Matlab中的一些命令 1)一般MATLAB命令格式为 [输出参数1,输出参数2,……]=(命令名)(输入参数1,输入参数2,……) 输出参数用方括号,输入参数用圆括号如果输出参数只有一个可不使用括号。

    2)可用↑、↓键来重现已输入的数据或命令。用←、→键来移动光标进行修改。

    3)所有MATLAB命令都用小写字母。大写字母和小写字母分别表示不同的变量。

    4)常用数有特定的名字,如pi(=3.141596) 、Inf(=∞)、NaN则表示不定型求得的结果(如0/0)。

    5)矩阵的输入要一行一行的进行,每行各元素用空格或(,)分开,每行用(;
    )分开。

    6)MATLAB书写格式为A=[1 2 3 ;
    4 5 6 ;
    7 8 9] 在MATLAB中运行如下程序可得到A矩阵 a=[1 2 3;4 5 6;7 8 9] a = 1 2 3 4 5 6 7 8 9 7)需要显示命令的计算结果时,则语句后面不加“;
    ”号,否则要加“;
    ”号。

    运行下面两种格式可以看出他们的区别 a=[1 2 3;4 5 6;7 8 9] a=[1 2 3;4 5 6;7 8 9]; a = (不显示计算结果) 1 2 3 4 5 6 8)当输入语句过长需要换行时,应加上“…”后再回车,则可连续输入。

    9)diary命令 使用该命令可以在窗口中以ASCII码形式记录所有的输入和输出。但这个命令不是存储数据,而是存储输入与屏幕上输出的内容。它可以记录下工作的过程。在每个工作过程之前使用该命令,工作结束后使用diary off 则能将整个工作过程记录下来。

    格式diary(文件名)(扩展名) . . diary off 一般来说扩展名可取,m这样就可在MATLAB\BIN\目录下存入该文件。

    10)save 命令 该命令存储定义的变量或演算结果,也可以用来存储指定的变量。

    命令格式为 save 文件名 . 扩展名 11)what 命令 该命令可以在当目录下显示MATLAB文件和MAT数据文件 12)dir 命令 显示当前目录下的所有文件. 13)clear命令 14)[d1,d2,d3,..]=size(a) 求矩阵的大小,对m*n二维矩阵,第一个为行数m,第二个为列数n。

    如果输入 calear a b c ,则表示清除工作空间中指定变量a,b,c;
    如果仅仅输入calear命令,则清除整个工作空间。

    与此同时,MATLAB具有强大的矩阵运算功能, 但由于我们在求节点导纳矩阵时用的不多, 因此这里我们只作简单介绍。

    1) 在MATLAB中表示一个矢量要用方括号, 而列矢量的输入只需在行矢量输入格式基础上加转置符(‘)即可。

    如 x=[1 2 3;4 5 6] x = 1 2 3 4 5 6 而 x=[1 2 3;4 5 6]' (加转置符) x = 1 4 2 5 3 6 注意上面两式的区别。

    2) 下面三条命令可以产生一个行矢量 1 a=linspace(x,y,n) 2 a=logspace(x,y,n) 3 a=[x:n:y] 第一条命令可以在线性空间产生一个值在10x至10y之间间隔点数为n的行矢量(一组数据)。

    第二条命令可以在对数空间产生一个值在x至y之间等间隔的行矢量(一组数据)。其行矢量的起始值是x, 终值为y, 点数为n。

    第三条命令产生X至y步长为n的行矢量。

    但是, 三个命令之间存在差别,下面的例子可以说明这一点。

    例一 x=logspace(0,5,6) x = 1 10 100 1000 10000 100000 例二 x=linspace(0,10,11) x = 0 1 2 3 4 5 6 7 8 9 10 例三 x=[0:1:10] x = 0 1 2 3 4 5 6 7 8 9 10 通过上面三个例子可以看出例一, 例二中n代表选取的点数。而在例三 中n则表示步长. 我们应当注意它们的区别。

    3) 矩阵的加, 减, 乘, 除等, 和其它语言书写一样。但要注意的是在运算符 前面加有(.)则表示是元素对元素的操作. 4)以下是常用的运算命令 运算命令名 功能 Angle 求复数的角 Min 求最小值 Max 求最大值 Sum 求和 Roots 求多项式的根 Poly 由多项式的根求多项式的系数 Polyval 求给定点多项式的值 Polyder 多项式求导 在进行潮流分布计算时,实际上是由多个简单系统构成的复杂系统,在求节点导纳矩阵时的要用到反馈的指令,所以在MATLAB中有下面几种命令可以解决两个系统间的连接问题。

    1)系统的并联 parallel 命令可以实现两个系统的并联。示意图如下:
    系统1 系统2 u1 y1 u + y u2 y2 并联后的系统传递函数表示式为:
    其中n1、d1和n2、d2分别为g1(s)、g2(s)的传递函数分子、分母系数行矢量。

    命令格式:
    [ n,d ] = paralltl(n1,d1,n2,d2) [a,b,c,d] = paralltl(a1,b1,c1,d1,a2,b2,c2,d2) 2)系统的串联 series命令实现两个系统的串联,示意图如下:
    g2(s) g1(s) u1 y u2 y2 串联后系统的传递函数为 命令格式:
    [ n,d ] = series(n1,d1,n2,d2) [ a,b,c,d ] = series(a1,b1,c1,d1,a2,b2,c2,d2) 3)系统的反馈 feedback命令实现两个系统的反馈连接,示意图如下:
    u1 + y1 ± g2(s) g1(s) y2 u2 连接后系统的传递函数表示为:
    命令格式:
    [ n,d ] = feedback(n1,d1,n2,d2) 或:[ n,d ] = feedback(n1,d1,n2,d2,sign) [ a,b,c,d ] = feedback(a1,b1,c1,d1,a2,b2,c2,d2,sign) 其中sign是指示y2到u1连接的符号,缺省时默认为负(即sign = -1)。

    4)系统的闭环 cloop命令可以将系统的输出反馈到系统的输入构成闭环系统,示意图如下:
    g1(s) u y ± 正、负反馈后闭环系统为:
    命令格式:
    [ n,d ] = cloop (n1,d1,sign) [ ac,bc,cc,dc] = cloop(a,b,c,d,sign) 通过以上对MATLAB基本指令的了解,我们就可以对所求的电力系统网络的节点导纳矩阵进行画编程框架图。

    第六章 潮流计算流程图及源程序 6.1潮流计算流程图 本次课程设计采用极坐标下的牛顿-拉夫逊计算网络的潮流计算。其牛顿-拉夫逊潮流计算程序框图如下所示。

    输入原始数据 形成节点导纳矩阵 给定节点电压初值ei(0),fi(0) 用公式计算不平衡功率△Pi(k)i △Qi(k)i△Vi2(k)i max(|△Pi(K)i△Qi(i)i△Vi2(k)i|<ε )<ε 解修正方程求△δ(k)△V(k) δ(k+1)=δ(k)+△δ(k) △V(k+1)=V(k)+△V(k) K 0 计算平衡节点功率及全部路线功率 输出 K+1=k 是 图3.1 极坐标下的牛顿-拉夫逊潮流计算程序框图 6.2 MATLAB程序设计 6.2.1 程序 电力系统极坐标下的牛顿-拉夫逊法潮流计算 disp('电力系统极坐标下的牛顿-拉夫逊法潮流计算:'); clear n=input('请输入结点数:n='); n1=input('请输入PV结点数:n1='); n2=input('请输入PQ结点数:n2='); isb=input('请输入平衡结点:isb='); pr=input('请输入精确度:pr='); K=input('请输入变比矩阵看:K='); C=input('请输入支路阻抗矩阵:C='); y=input('请输入支路导纳矩阵:y='); U=input('请输入结点电压矩阵:U='); S=input('请输入各结点的功率:S='); Z=zeros(1,n);N=zeros(n1+n2,n2);L=zeros(n2,n2);QT1=zeros(1,n1+n2); for m=1:n for R=1:n C(m,m)=C(m,m)+y(m,R); if K(m,R)~=0 C(m,m)=C(m,m)+1/(C(m,R) /( K(m,R) * (K(m,R)-1))) ; C(R,R)=C(R,R)+1/(C(m,R)/(1-K(m,R))); C(m,R)=C(m,R)/K(m,R); C(R,m)=C(m,R); end end end for m=1:n for R=1:n if m~=R Z(m)=Z(m)+1/C(m,R); end end end for m=1:n for R=1:n if m==R Y(m,m)=C(m,m)+Z(m); else Y(m,R)=-1/C(m,R); end end end disp('结点导纳矩阵:'); disp(Y); disp('迭代中的雅克比矩阵:'); G=real(Y); B=imag(Y); O=angle(U); U1=abs(U); k=0; PR=1; P=real(S); Q=imag(S); while PR>pr for m=1:n2 UD(m)=U1(m); end for m=1:n1+n2 for R=1:n PT(R)=U1(m)*U1(R)*(G(m,R)*cos(O(m)-O(R))+B(m,R)*sin(O(m)-O(R))); end PT1(m)=sum(PT); PP(m)=P(m)-PT1(m); PP1(k+1,m)=PP(m); end for m=1:n2 for R=1:n QT(R)=U1(m)*U1(R)*(G(m,R)*sin(O(m)-O(R))-B(m,R)*cos(O(m)-O(R))); end QT1(m)=sum(QT); QQ(m)=Q(m)-QT1(m); QQ1(k+1,m)=QQ(m); end PR1=max(abs(PP)); PR2=max(abs(QQ)); PR=max(PR1,PR2); for m=1:n1+n2 for R=1:n1+n2 if m==R H(m,m)=U1(m)^2*B(m,m)+QT1(m); else H(m,R)=-U1(m)*U1(R)*(G(m,R)*sin(O(m)-O(R))-B(m,R)*cos(O(m)-O(R))); end end end for m=1:n1+n2 for R=1:n2 if m==R N(m,m)=-U1(m)^2*G(m,m)-PT1(m); else N(m,R)=-U1(m)*U1(R)*(G(m,R)*cos(O(m)-O(R))+B(m,R)*sin(O(m)-O(R))); end end end for m=1:n2 for R=1:n1+n2 if m==R J(m,m)=U1(m)^2*G(m,m)-PT1(m); else J(m,R)=U1(m)*U1(R)*(G(m,R)*cos(O(m)-O(R))+B(m,R)*sin(O(m)-O(R))); end end end for m=1:n2 for R=1:n2 if m==R L(m,m)=U1(m)^2*B(m,m)-QT1(m); else L(m,R)=-U1(m)*U1(R)*(G(m,R)*sin(O(m)-O(R))-B(m,R)*cos(O(m)-O(R))); end end end JJ=[H N;J L]; disp(JJ); PQ=[PP';QQ']; DA=-inv(JJ)*PQ; DA1=DA'; for m=1:n1+n2 OO(m)=DA1(m); end for m=n:n1+n2+n2 UU1(m-n1-n2)=DA1(m); end UD2=diag(UD); UU=UU1*UD2; for m=1:n1+n2 O(m)=O(m)+OO(m); end for m=1:n2 U1(m)=U1(m)+UU(m); end for m=1:n1+n2 o(k+1,m)=180/pi*O(m); end for m=1:n2 u(k+1,m)=U1(m); end k=k+1; end for m=1:n b(m)=U1(m)*cos(O(m)); c(m)=U1(m)*sin(O(m)); end U=b+i*c; for R=1:n PH1(R)=U(isb)*conj(Y(isb,R))*conj(U(R)); end PH=sum(PH1); for m=1:n for R=1:n if m~=R C1(m,R)=1/C(m,R); else C1(m,m)=C(m,m); end end end for m=1:n for R=1:n if (C(m,R)~=inf)&(m~=R) SS(m,R)=U1(m)^2*conj(C1(m,m))+U(m)*(conj(U(m))-conj(U(R)))*conj(C1(m,R)); end end end disp('迭代中的△P:');disp(PP1); disp('迭代中的△Q:');disp(QQ1); disp('迭代中相角:');disp(o); disp('迭代中电压的模:');disp(u); disp('平衡结点的功率:');disp(PH); disp('全部线路功率分布:');disp(SS); 6.2.2 程序结果 请输入结点数:n=4 请输入PV结点数:n1=1 请输入PQ结点数:n2=2 请输入平衡结点:isb=4 请输入精确度:pr=0.00001 请输入变比矩阵看:K=[0 0 0 0;0 0 0 0.9625;0 0 0 0;0 0 0 0] 请输入支路阻抗矩阵:C=[0 0.03+0.09i 0.02+0.05i inf; 0.03+0.09i 0 0.04+0.08i 0.0+0.05i;0.02+0.05i 0.04+0.08i 0 0.03+0.07i;inf 0.0+0.05i 0.03+0.07i 0] 请输入支路导纳矩阵:y=[0 0.01i 0.01i 0;0.01i 0 0 0;0.01i 0 0 0;0 0 0 0] 请输入结点电压矩阵:U=[1+0i 1+0i 1.02+0i 1.05+0i] 请输入各结点的功率:S=[-0.4-0.3i -0.3-0.2i 0.4 0] 结点导纳矩阵: 10.2299 -27.2214i -3.3333 +10.0000i -6.8966 +17.2414i 0 -3.3333 +10.0000i 8.3333 -38.5181i -5.0000 +10.0000i 0 +19.2500i -6.8966 +17.2414i -5.0000 +10.0000i 17.0690 -39.3003i -5.1724 +12.0690i 0 0 +19.2500i -5.1724 +12.0690i 5.1724 -32.0690i 迭代中的雅克比矩阵: -27.5862 10.0000 17.5862 -10.0920 3.3333 10.0000 -40.4125 10.2000 3.3333 -8.2333 17.5862 10.2000 -40.8881 7.0345 5.1000 10.3678 -3.3333 -7.0345 -26.8566 10.0000 -3.3333 8.4333 -5.1000 10.0000 -36.6237 -28.3886 10.6530 17.7355 -10.1563 3.4957 10.6198 -42.3389 10.5574 3.5953 -8.8273 17.9892 10.7970 -40.8881 6.8278 5.0990 10.9577 -3.4957 -7.4620 -27.7952 10.6530 -3.5953 9.4444 -5.5781 10.6198 -42.1163 -28.3429 10.6190 17.7239 -10.1386 3.4922 10.5905 -42.2491 10.5416 3.5776 -8.7973 17.9700 10.7682 -40.8881 6.8312 5.1009 10.9386 -3.4922 -7.4464 -27.7429 10.6190 -3.5776 9.3973 -5.5540 10.5905 -41.8495 -28.3426 10.6189 17.7238 -10.1385 3.4921 10.5903 -42.2486 10.5414 3.5777 -8.7971 17.9700 10.7682 -40.8881 6.8310 5.1007 10.9385 -3.4921 -7.4465 -27.7426 10.6189 -3.5777 9.3971 -5.5541 10.5903 -41.8486 -28.3427 10.6189 17.7238 -10.1385 3.4921 10.5903 -42.2486 10.5414 3.5777 -8.7971 17.9700 10.7682 -40.8881 6.8310 5.1007 10.9385 -3.4921 -7.4465 -27.7427 10.6189 -3.5777 9.3971 -5.5541 10.5903 -41.8486 迭代中的△P:
    -0.2621 -0.2000 0.3156 0.0007 0.0086 -0.0167 -0.0000 0.0000 0.0008 0.0000 -0.0000 -0.0000 0.0000 -0.0000 0.0000 迭代中的△Q:
    0.0648 1.6944 -0.0033 -0.0887 -0.0000 -0.0002 -0.0000 -0.0000 -0.0000 -0.0000 迭代中相角: -0.4654 -0.7337 0.5516 -0.4902 -0.7209 0.4972 -0.4886 -0.7199 0.4992 -0.4887 -0.7199 0.4991 -0.4887 -0.7199 0.4991 迭代中电压的模: 1.0159 1.0470 1.0150 1.0448 1.0150 1.0448 1.0150 1.0448 1.0150 1.0448 平衡结点的功率: 0.3159 + 1.3621i 全部线路功率分布: 0 -0.0582 - 0.3378i -0.3418 + 0.0172i 0 0.0612 - 0.4727i 0 -0.0958 - 0.4238i -0.2654 - 0.9014i 0.3441 - 0.0424i 0.1013 - 0.3746i 0 -0.0455 - 0.4275i 0 0.2654 + 0.9332i 0.0505 + 1.2558i 0 第七章 总 结 此次课程设计首先让我明白了要使电力系统运行的稳定,必须经过精密的设计和计算。在进行课题设计的过程中,加深了我对潮流计算的认识,尤其是对牛顿拉夫逊潮流计算的求解思路有了比较透彻的理解。同时由于求解过程中用到求节点导钠矩阵,求矩阵的逆等等,又使我对以前所学的知识有了一次很好的温习。同时也看到了研究性学习的效果,从研究中去学习,理论结合实际,将理论运用到实际,同时在实践中发现问题,然后解决问题, 通过这次课程设计我在MATLAB编程,潮流计算,WORD文档的编辑方面均有所提高,但也暴露出了一些问题;
    我发现了自己的基础知识有很多的不足,对MATLAB的性能和特点还不能有一个全面的把握,这些基础的缺乏给我的设计计划造成了不小的障碍,相信通过以后的学习能弥补这些不足,从而达到一个新的层次。

    第八章 参考文献 [1] 何仰赞等.电力系统分析[M]. 武汉:华中理工大学出版社,2002.3 [2] 西安交通大学等.电力系统计算[M].北京:水利电力出版社,1993.12 [3] 陈 衍.电力系统稳态分析[M].北京:水利电力出版社,2004.1 [4] 李光琦.电力系统暂态分析[M].北京:
    水利电力出版社,2002.5 [5] 于永源,杨绮雯. 电力系统分析(第二版)[M]. 北京:中国电力出版社,2004.3