电力系统分析课程设计-无功功率补偿_第1页
电力系统分析课程设计-无功功率补偿_第2页
电力系统分析课程设计-无功功率补偿_第3页
电力系统分析课程设计-无功功率补偿_第4页
电力系统分析课程设计-无功功率补偿_第5页
已阅读5页,还剩28页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

/目录摘要11.任务及题目要求22.设计原理3无功功率对电压的影响5无功功率负荷6无功功率电源8发电机8】同步调相机8静电电容器9静止无功补偿器9静止无功发生器9无功补偿方式10高压补偿10低压补偿103.计算过程及步骤12\的系统参数12各系统元件参数计算12无补偿的功率平衡估算14补偿后的功率平衡计算174.计算结果分析195.体会小结20参考文献21附录:无功功率计算源程序22…本科生课程设计成绩评定表39摘要@电压是衡量电能质量的一个重要指标。质量合格的电压应该在供电电压偏移,电压波动和闪变,电网谐波和三相不对称程度这四个方面都能满足有关国家标准规定的要求。本课程设计能容为电力系统各元件的无功功率电压特性,无功功率平衡和各种调压手段的原理及应用。保证用户的电压接近额定值是电力系统运行调整的根本任务之一。电力系统的运行电压水平取决于无功功率的平衡。系统中各种无功电源的无功功率的输出应能满足系统负荷和网络损耗在额定电压下对无功功率的要求,否那么电压就会偏离额定值。电力系统无功功率平衡的根本要求是:系统中的无功电源可能发出的无功功率应该大于或至少等于符合所需要的无功功率和网络中的无功损耗之和。为了保证运行可靠性和适应无功负荷的增长,系统还必须配置一定的无功备用容量。关键词:无功功率平衡,电压调整,无功补偿…〔1.任务及题目要求系统如下图,电力系统电压为110KV,有电源G1和G2,变压器T1,T2和T3,以及双回路L1和L2。负载都为30+MVA。`令QGC为电源供给的无功功率之和,QLD为无功负荷之和,QL为网络无功功率损耗之和,QQQres>0表示系统中无功功率可以平衡且有适量的备用;如Q系统无功电源的总出力QGC包括发电机的无功功率QG∑Q一般要求发电机接近于额定功率因数运行,故可按额定功率因数计算它所发出的无功功率。此时如果系统的无功功率能够平衡,那么发电机就保持有一定的无功备用,这是因为发电机的有功功率是留有备用的。调相机和静电电容器等无功补偿装置按额定容量计算器无功功率。/2.设计原理总无功负荷QLD按负荷的有功功率和功率因数计算。为了减少输送无功功率引起的网损,我国有关技术导那么规定,以35kV及以上电压等级直接供电的工业负荷功率因数要到达以上,对其他负荷,功率因数不低于网络的总无功功率损耗QL暴多变压器的无功损耗QLT∑、线路电抗的无功损耗ΔQL∑和线路电纳德尔无功功率ΔQ从改善电压质量和降低网络损耗考虑,应该尽量防止通过电网元件大量地传送无功功率。因此,仅从全系统的角度进行无功功率平衡是不够的,更重要的是还应该分电压等级地进行无功功率平衡。有时候,某一地区无功功率电源有充裕,另一地区那么存在缺额,调余补缺往往是不适宜的,这时就应该分别进行处理。在现代大型地理系统中,超高压输电网的线路分布电容能产生大量的无功功率,从系统平安运行考虑,需要装设并联电抗器予以吸收,根据我国有关技术导那么,330~500kV电网应按无功分层就地平衡的根本要求配置高、低压并联电抗器。一般情况下,上下压并联电抗器的总容量应到达超高压线路补偿功率的90%以上。在超高压电网配置并联电抗补偿的同时,较低电压等级的配电网络也需要配置必要的并联电容补偿,这样情况是正常的。电力系统的无功功率平衡应分别按正常最大和最小负荷的运行方式进行计算。必要时还应校验某些设备检修时或故障后运行方式下的无功功率平衡。?根据无功平衡的需要,增添必要的无功补偿容量,并按无功功率就地平衡的原那么进行补偿容量的分配。小容量的、分散的无功补偿可以采用静电容电器;大容量的、配置那么在系统中枢点的无功补偿那么应采用同步调相机或静止补偿器。电力系统在不同运行方式下,可能分别出现无功功率缺乏和无功功率过剩的情况,在采取补偿措施时应该统筹兼顾,选用技能发出又能吸收无功功率的补偿设备。拥有大量超高压线路的大型电力系统在低谷负荷时,无功功率往往是过剩的,导致电压升高超出容许范围,如不妥善解决,将危及系统及用户的用电设备的平安运行。为了改善电压质量,除了借助各类补偿装置意外,还应考虑发电机进相运行〔即功率因数超前〕的可能性。电力系统的电压运行水平取决于无功功率平衡,为了确保系统的运行电压具有正常水平,系统拥有的无功功率电源必须满足正常电压水平下的无功功率需求,并留有必要的备用容量。电力系统中既有有功功率电源,又有无功功率电源,为保证电能的质量,系统内的功率必须保持平衡。无功功率平衡的根本原理是:把具有容性功率负荷的装置与感性功率负荷并联接在同一电路,能量在两种负荷之间相互交换。这样,感性负荷所需要的无功功率可由容性负荷输出的无功功率补偿。电网中的许多用电设备是根据电磁感应原理工作的。它们在能量转换过程中建立交变磁场,在一个周期内吸收的功率和释放的功率相等,这种功率叫无功功率。电力系统中,不但有功功率平衡,无功功率也要平衡。有功功率、无功功率、视在功率之间的关系为:S=图1各功率几何关系~其中:S为视在功率(kVA);P为有功功率(kW);Q为无功功率(kVar);φ角为功率因数角,它的余弦cosφ是有功功率与视在功率之比,即cosPS。由功率三角形可以看出,在一定的有功功率下,用电企业功率因数cosφ越小,那么所需的无功功率越大。如果无功功率不是由电容器提供,那么必须由输电系统供给,为满足用电的要求,供电线路和变压器的容量需要增大。这样,不仅增加供电投资、降低设备的利用率,也将增加线路损耗。为此,国家供用电规那么规定:无功电力应就地平衡,用户应在提高用电自然功率因数的根底上,设计和装置无功补偿设备,并做到随其负荷和电压变动及时投入或切除,防止无功倒送。还规定用户的功率因数应无功功率对电压的影响在电力系统运行中,要求电源的无功出力在任何时刻都同负荷的无功功率和网络无功损耗之和相等。即:Q现以一发电机经过一段线路向负荷供电来说明无功电源对电压的影响。略去各元件电阻,用表示发电机电抗与线路电抗之和,等值电路如下列图所示:图2无功功率和电压关系的解释图假定发电机和负荷的有功功率为额定值,根据向量图可以确定发电机送到负荷节点的功率为P=VIQ=VI#Q=负荷增加时,其无功电压特性如曲线所示,如果系统的无功电源没有相应增加,电源的无功特性仍然是曲线1,这时曲线1和曲线的交点就代表了新的无功平衡点,并由此决定了负荷点的电压为,显然<,这说明负荷增加后,系统的电源已不能满足在电压下无功平衡的需要,因而只好降低电压运行,以取得在较低电压下的无功平衡。'当电势为一定值是,同的关系是一条向下开口的抛物线。负荷的主要成分是异步电动机,其无功电压特性如图中曲线2所示。图3按无功功率平衡确定电压如果发电机具有充足的无功备用,通过调节励磁电流增大发电机电势E,那么发电机的无功特性曲线将上移到曲线的位置,从而使曲线与曲线的交点所确定的负荷节点电压到达或接近原来的数值。同样,如果发电机的电势E增大而负荷没有增加,那么由发电机的无功特性曲线与负荷无功特性曲线2的交点为,决定了负荷点的电压为,此时>,负荷点的电压偏高。由此可见,系统中的无功电源对系统中的电压的影响为当无功电源比拟充足时,能满足较高电压水平下的无功平衡需要,系统就有较高的运行电压水平;反之,无功缺乏就反映为运行电压水平偏低。因此,应该力求实现在额定电压下的系统无功功率平衡,并根据这个要求装设必要的无功补偿装置。无功功率负荷异步电动机在电力系统负荷〔特别是无功负荷〕中占得比重很大。系统无功负荷的电压特性主要由异步电动机绝帝国。异步电动机的简化等值电路如图,它所消耗的无功功率为Q`其中,Qm为励磁功率,它同电压平方成正比,实际上,当电压比拟高时,由于饱和影响,励磁电抗Xm的数值还有所下降,因此,励磁功率Qm随电压变化的曲线稍高于二次曲线;Qσ为漏抗Xσ中的无功损耗,如果负载功率不变,那么PM=I变压器的无功损耗QLT包括励磁损耗ΔQ0Q励磁功率大致与电压平方成正比。当通过变压器的是在功率不变时,漏抗中的损耗的无功功率与电压平方成反比。因此变压器的无功损耗电压特性也与异步电动机的相似。变压器的无功功率损耗在系统的无功需求中占有相当的比重。假定一台变压器的空载电流I0%=1.5,短路电压Vs%=10.5,在额定满载下运行时,无功功率的消耗将达额定容量的输电线路用π型等值电路表示,线路串联电抗中的无功功率损耗ΔQΔ线路电容的充电功率ΔQB与《ΔB/2为π型电路中的等值电纳。线路的武功总损耗为Δ35kV及以下的架空线路的充电功率甚小,一般说,这种电路都是消耗无功功率的。110kV及以上的架空线路当传输功率较大时,电抗中消耗的无功功率将大于电抗中产生的无功功率,线路成为无功负载;当传输的无功较小〔小于自然功率〕时,电纳中产生的无功功率,除了抵偿电抗中的损耗以外,还有多余,这是线路就成为无功电源。~无功功率电源电力系统的无功功率电源,除了发电机外,还有同步调相机、静电电容器、静止无功补偿器和近年开展起来的静止无功发生器,这四种装置又称为补偿装置。静电电容器只能吸收容性无功功率〔即发出感性无功功率〕,其余既能补偿装置既能吸收容性无功,亦能吸收感性无功。发电机发电机既是唯一的有功功率电源,又是最根本的无功功率电源。发电机在额定状态下运行时,可发出无功功率—QSGN、PGN、发电机正常运行时以滞后功率因数运行为主,必要时也可以减少励磁电流在超前功率因数下运行,即所谓进相运行,即吸收系统中多余的无功功率。当系统低负荷运行时,输电线路电抗中的无功功率损耗明显减少,线路电容产生的无功功率将有大于缓解电压调整的困难。进相运行时,发电机的δ角增大,为保证静态稳定,发电机的有功功率输出应随着电势的下降逐渐减小。进相运行时,定子端部漏磁增加,定子端部温升是限制发电机功率输出的又一个重要因素。发电机进相运行对定子端部温升的影响随发电机的类型、结构、容量和冷却方式的不同而异,不以精确计算。同步调相机同步调相机相当于空载运行的同步电动机。在过励磁运行时,它向系统供给感性无功功率而起无功电源的作用,能提高系统电压;在欠励磁运行时,它从系统吸取感性无功功率而起无功负荷作用,可降低系统电压。由于实际运行的需要和对稳定性的要求,欠励磁最大容量只有过励磁容量的〔50%~65%。装有自动励磁调节装置的同步调相机,能根据装设地点电压的数值平滑改变输出〔或吸取〕的无功功率,进行电压调节。特别是有强行励磁装置时,在系统故障情况下,还能调整系统的电压,有利于提高系统的稳定性。但是同步调相机是旋转机械,运行维护比拟复杂。它的有功功率损耗较大,在满负荷时约为额定容量的〔%~5%,容量越小,百分值越大。小容量的调相机每千伏安容量的投资费用也较大。?故同步调相机宜大容量集中使用,容量小于5MVA的一般不装设。在我国,同步调相机常安装在枢纽变电所,以便平滑调节电压和提高系统稳定性。静电电容器静电电容器供给的无功功率QC与所在节点的电压VQ静止电容器的结构比拟简单,装设容量可大可小,而且既可集中使用,又可分散装设来就地供给无功功率,以降低网络的电能损耗。静止电容器的优点是经济、灵活、损耗低、安装维护方便。为了在运行中调节电容器的功率,可将电容器连接成假设干组,根据负荷的变化,分组投入或切除,可控硅投切型电容器补偿装置就可以实现补偿功率的调节。静止无功补偿器*静止补偿器是近年来开展起来的一种动态无功功率补偿装置。它是将电力电容器与电抗器并联起来使用,电容器可发出无功功率,电抗器可吸收无功功率,两者结合起来,再配以适当的调节装置,就成为能够平滑地改变输出〔或吸收〕无功功率的静止补偿器。静止补偿器有四种不同类型,即可控饱和电抗器型,自饱和电抗器型,可控硅控制电抗器型,以及可控硅控制电抗器和可控硅投切电容器组合型静止补偿器。电压变化时,静止补偿器能快速地、平滑地调节无功功率,以满足动态无功补偿的需要。与同步调相机比拟,运行维护简单,功率损耗较小,能作到分相补偿以适应不平衡的负荷变化,对于冲击负荷也有较强的适应性,在我国电力系统中它将得到日益广泛的应用。晶闸管投切电容器单独使用时只能作为无功功率电源,发出感性武功,且不能平滑调节输出的功率,由于晶闸管对控制信号的相应极为迅速,通断次数又不受限制,其运行性能还是明显优于机械开关投切的电容器。静止无功发生器80年代以来出现了一种更为先进的静止型无功补偿装置,这就是静止无功发生器。它的主题局部是一个电源型逆变器,逆变器中六个可关断晶闸管分别于六个二极管反向并联,适当控制GTO的通断,可以把电容C上的直流电压转换成与电力系统电压同步的三相交流电压,逆变器的交流侧通过电抗器或变压器并联接入系统。适当控制逆变器的输出电压,就可以灵活的改变SVG的运行工况,使其处于容性负荷、感性负荷或零负荷状态。与静止补偿器相比,静止无功发生器的优点是,响应速度更快,运行范围更宽,谐波电流含量跟梢,尤其重要的是,电压较低时仍可向系统注入较大的无功电流,它的储能元件的容量远比他所提供的无功容量要小。无功补偿方式~无功补偿就其补偿方式来说分为高压补偿和低压补偿。高压补偿通常是在变电所高压侧进行,仅能补偿补偿点前端的无功功率,对补偿点后的线路和负载的无功功率起不到补偿作用;低压补偿可直接补偿配电线路和负载的无功功率,补偿效果较为理想。无功补偿应根据分级就地平衡和便于调整电压的原那么进行配置。集中补偿与分散补偿相结合,以分散补偿为主;高压补偿与低压补偿相结合,以低压补偿为主;调压与降损相结合,以降损为主;并且与配电网建设改造工程同步规划、设计、施工、同步投运。高压补偿高压无功补偿装置广泛地采用高压并联电容器,装设在变电站主变压器的低压侧,作用是对电网无功进行补偿,改善电网的功率因数,提高变电所的母线电压,补偿变电所主变压器和高压线路的无功损耗,充分发挥供电设备的效率。因此应根据负荷的增长,安排、设计好变电所的无功补偿容量,运行中在保证电压合格和无功补偿效果最正确的情况下,尽可能使电容器投切开关的操作次数减少。低压补偿低压补偿方式有三种:集中补偿、分散补偿和就地补偿。,集中补偿是将电容器装设在用户专用变电所或配电室的低压母线上,对无功进行统一补偿。这种补偿方式比拟适合在负荷集中、离变电所较近,无功补偿容量较大的场合。集中补偿的优点是:可以就地补偿变压器的无功功率损耗。由于减少了变压器的无功电流,相应地减少了变压器的容量,也就是说,可以增加变压器所带的有功负荷。可以补偿变电所母线、变压器和受电线路的功率损耗,节约能源。当负荷变化时,能对母线电压起一定的调节作用,从而改善电压质量。便于管理、维护、操作及集中控制。缺点是:它只能减少装设点以上线路和变压器因输送无功功率所造成的损耗,而不能减少用户内部通过低压线路向用电设备输送无功功率所造成的损耗。分散补偿是将电容器组按低压配电网的无功负荷分布分组装设在相应的母线上,或者直接与低压干线相联接,形成低压电网内部的多组分散补偿方式,适合负荷比拟分散的补偿场合。分散补偿的优点:对负荷比拟分散的电力用户,有利于无功进行分区控制,实现无功负荷就地平衡,减少配电网络和配电变压器中无功电流的损耗和电压损失,使线损显著降低;在负载不变的条件下,可增加网络的输出容量;补偿方式灵活,易于控制。分散补偿的缺点是:如果装设的电容器无法分组,那么补偿容量无法调整,运行中可能出现过补偿或欠补偿;补偿设备的利用率较集中补偿方式低;安装分散,维护管理比拟不方便。就地补偿用电设备所消耗的无功功率,将电容器组直接装设在用电设备旁边,与用电设备的供电回路并联,以提高用电系统的功率因数,从而获得明显的降损效益。就地补偿的优点是:无功电流仅仅与附近的用电设备相互交换,不流向网络其它点,在网络中无功电流的无功损耗和电压损耗小,既对系统补偿,也对用户内部无功损耗补偿,大大减少了电能损失,被补偿网络运行最经济;在配电设备不变的情况下,可增加网络的供电容量,导线截面可相应减小;适应性好,既可三相补偿,对容量较大的电动机个别补偿,也可进行两相、单相补偿,并且单台补偿装置的容量较小,电容器投切冲击电流小,对于宾馆、大楼等无功补偿特别适合。就地补偿的缺点是:对于电网内公用负荷,与集中补偿和分散补偿相比,补偿相同容量的无功负荷所需的补偿电容器总容量和补偿装置总数量增加,投资较大,补偿装置利用率较低。,3.计算过程及步骤计算过程是一个复杂的过程,需要经过参数的计算,系统模型的建立,系统模型的简化,初步的估算,功率平衡计算等几步。的系统参数…发电机,:,,变压器:,,,,,变压器、:,,,,,线路:,,,,线路:,,,,,各系统元件参数计算变压器T1两台并联:变压器T2、T3:?线路L1:线路L2:、由以上计算可画出系统的等值电路如图如下所示:图4系统等值电路图:无补偿的功率平衡估算作为初步估算,先用负荷功率计算变压器绕组损耗和线路损耗。线路L1的阻抗及相关损耗:'线路L2的阻抗及相关损耗:累计到发电机端的输电系统总功率需求为:〔假设发电机在满足有功需求时按额定功率因数运行,其输出功率为此时无功缺额到达这种方式的估算可能和实际有一定的误差,因为功率是不满足叠加原理,所以还要进行必要的检验,根据潮流计算的方式,潮流计算是电力系统分析中的一种最根本的计算,它的任务是对给定的运行条件确定系统的运行状态,如各母线上的电压〔幅值及相角〕,网络中的功率分布及功率损耗等。常用的计算潮流分析的方法有牛顿—拉夫逊法,P—Q分解法等。本次设计采用牛顿—拉夫逊法进行计算。牛顿—拉夫逊法(简称牛顿法)在数学上是求解非线性代数方程式的有效方法,其要点是把非线性方程式的求解过程变成反复地对相应的线性方程式进行求解的过程,即通常所称的逐次线性化过程。假定已给出各变量的初值,….,令,,…..分别为各变量的修正量,使其满足方程(3-1).将上式中的n个多元函数在初始值附近分别展成泰勒级数,并略去含有,,……,二次及以上阶次的各项,便得.(3-2)?方程式3-2也可以写成矩阵形式(3-3)方程式3-2是对于修正量,,……,的线性方程组,称为牛顿法的修正方程式.利用高斯消去法或三角分解法可以解出修正量,,……,。然后对初始近似值进行修正(i=1,2,….,n)(3-3)如此反复迭代,在进行k+1次迭代时,从求解修正方程式〕(3-4)得到修正量,,,并对各变量进行修正根据以上对无功功率缺额的编程的精确计算,拟在变压器T-2和T-3侧设置10Mvar补偿容量。补偿前负荷功率因数为,补偿后可提高到。计及补偿后线路和变压器绕组损耗还会减少,发电机能在额定功率因数附近运行。那么进行的补偿能满足要求,根据无功平衡的需要,增添必要的无功补偿容量,并按无功功率就地平衡的原那么进行补偿容量的分配。小容量的、分散的无功补偿可以采用静电容电器;大容量的、配置那么在系统中枢点的无功补偿那么应采用同步调相机或静止补偿器。电力系统在不同运行方式下,可能分别出现无功功率缺乏和无功功率过剩的情况,在采取补偿措施时应该统筹兼顾,选用技能发出又能吸收无功功率的补偿设备。拥有大量超高压线路的大型电力系统在低谷负荷时,无功功率往往是过剩的,导致电压升高超出容许范围,如不妥善解决,将危及系统及用户的用电设备的平安运行。为了改善电压质量,除了借助各类补偿装置意外,还应考虑发电机进相运行〔即功率因数超前〕的可能性。补偿后的功率平衡计算补偿后负荷功率为"各节点流过的功耗大小如下:¥输电系统要求发电机的输出功率为此时发电机的功率因数为\4.计算结果分析根据计算结果,在变压器T-2和T-3侧设置10Mvar补偿容量。补偿前负荷功率因数为,补偿后可提高到。按照这种补偿方案进行实际补偿后进行校验,可以得到发电机此时的功率因数。计算结果说明,所选补偿量是适宜的。%以上的方案是在平均补偿的条件下进行无功平衡的,如果改变补偿方式进行非平均补偿,即两个负载的补偿量不一样时,通过计算可以知道系统的功率因数根本上还是维持在左右,不会有太大的波动。由此可以得到如果在对系统要求不是很高时,可以用小的无功补偿量来代替大的无功补偿量。这样可以在满足要求时,花费最少,使设计到达最经济的效果。当系统的无功功率供给比拟充裕是,各变电所的调压问题可以通过选择变压器的分接头来解决。当最大负荷和最小负荷两种情况下的电压变化幅度不很大又不要求逆调压时,适当调整普通变压器的变压器。有载调压变压器可以装设枢纽变电所,也可以装设在大容量的用户处。加压调压的变压器。有载调压变压器还可以串联在线路上,对于辐射性电路,其主要目的是为了调压,对于环网,还能改善功率分布。装设在系统间联络线上的串联加压器,还可以起隔离作用,是两个系统的电压调整互不影响。`5.体会小结"电力系统中无功功率是否平衡,直接影响电压的质量。为保证电压质量,满足用户的用电要求,系统中必须有充足的无功电源备用。当系统中的无功功率大于〔或不能满足〕无功负荷的需要时,就得调整无功功率的输出,采用调压措施,调整负荷侧电压,以改善电压的偏移。在电压调整的过程中,不可无视无功功率的平衡。通过这次课程设计,我进一步掌握了电力系统的根本分析方法。对于一个给定的电力系统,根据已有的题设条件以及系统接线图,可以先计算各个元件的参数或标幺值,建立电力系统模型,画出等值电路图,以便进行后续分析与计算。并且还是用了MATLAB的编程,用牛顿拉夫逊法编程计算出无功功率补偿所需要的无功功率,这种方式不仅可以精确的计算出各点的功率,还可以给出各点的无功大小,从而计算系统的无功补偿的大小,确定补偿的方案。本设计主要涉及了电力系统的无功功率平衡问题,让我对电力系统无功平衡有了更加深入的学习和了解,掌握了各种无功补偿措施以及补偿装置的特点和使用场合。通过采用适宜的无功补偿措施,对电力系统进行分地区、分电压等级地进行无功平衡,能够有效地改善电压质量,使用户处的电压接近额定值,同时能够提供功率因数,降低电网损耗,大大提高系统的运行效率。通过分析和计算,加强了我的理论分析能力,加深了我对于电力系统分析的理解,通过MATLAB的编程,我的软件编程能力也得到了提升,尤其是对于复杂的提供模型的构建,逻辑的推导都有很好地锻炼。[参考文献、[1]何仰赞、温增银.电力系统分析.武汉:华中科技大学出版社,[2]刘宗岐、郭家骥.电力系统分析学习指导.北京:中国电力出版社,2005[3]熊信银、张步涵.电气工程根底.武汉:华中科技大学出版社,[4]郑大钟.线型系统理论.北京:清华大学出版社,1990[5]王凯、李俊.MATLAB编程及实例指导.北京.机械工业出版社,2010、?·附录:无功功率计算的源程序#include<>:#include<>#defineM40/*矩阵阶数*/#defineN10/*最大迭代次数*/inti,j,k,a,b,l,z;/*循环变量*/intn,/*节点数*/m,/*支路数*/dd,/*对地支路数*/~pq,/*PQ节点数*/pv,/*PV节点数*/byq;/*变压器数*/floateps, /*精度*/bb,/*变比*/max;/*指标标志*/floatyy[M];/*中间变量*/staticfloatG[M][M],B[M][M],B1[M][M],B2[M][M],B3[M][M];?structjiedian/*定义节点结构体*/{intnum,s;/*num为节点号,s为节点类型*/ floatp,q,u,f,v;floatdp,dq,df,du;}jiedian[M];structzhilu/*定义支路结构体*/…{intnum; intp1,p2;/*支路的两个节点*/ floatr,x;/*支路的电阻与电抗*/}zhilu[M];FILE*fp1,*fp2;/*文件指针*/voiddata1()/*读取数据函数*/!{inth,numb,a,b;a=1;fp1=fopen("d:\","r");if(fp1==NULL){printf("cannotopenfile!\n");exit(0);}fscanf(fp1,"%d,%d,%d,%d,%d,%d,%f\n",&n,&m,&dd,&pq,&pv,&byq,&eps);/*输入节点数,支路数,对地支路数,PQ节点数,PV节点数,变压器数和精度*/《j=1;k=pq+1;for(i=1;i<=n;i++)/*输入节点类型的输入功率和节电电压初值*/{ fscanf(fp1,"%d,%d",&numb,&h); if(h==1)/*类型h=1是PQ节点*/…{fscanf(fp1,",%f,%f,%f,%f\n",&jiedian[j].p,&jiedian[j].q,&jiedian[j].u,&jiedian[j].f);/*输入PQ节点的数据*/ jiedian[j].num=numb; jiedian[j].s=h; j++; } if(h==2)/*类型h=2是pv节点*/【{fscanf(fp1,",%f,%f,%f,%f\n",&jiedian[k].p,&jiedian[k].v,&jiedian[k].u,&jiedian[k].f);/*输入PV节点的数据*/ jiedian[k].num=numb; jiedian[k].s=h; k++; } if(h==3)/*类型h=3是平衡节点*/ {fscanf(fp1,",%f,%f\n",&jiedian[n].u,&jiedian[n].f);/*输入平衡节点的数据*/ jiedian[n].num=numb;。 jiedian[n].s=h; }}for(i=1;i<=m;i++)/*输入支路阻抗*/{fscanf(fp1,"%d,%d,",&zhilu[i].num,&h); if(h==0)/*输入非变压器支路阻抗*/ {fscanf(fp1,"%d,%d,%f,%f\n",&zhilu[i].p1,&zhilu[i].p2,&zhilu[i].r,&zhilu[i].x);。 }if(h==1)/*输入变压器支路阻抗*/{fscanf(fp1,"%f,%d,%d,%f,%f\n",&bb,&zhilu[i].p1,&zhilu[i].p2,&zhilu[i].r,&zhilu[i].x);zhilu[i].r=zhilu[i].r*bb;zhilu[i].x=zhilu[i].x*bb; b=m+a; zhilu[b].num=b; zhilu[b].p1=zhilu[i].p1;【zhilu[b].p2=0;zhilu[b].r=zhilu[i].r*bb/(1-bb);zhilu[b].x=zhilu[i].x*bb/(1-bb); zhilu[b+1].num=b zhilu[b+1].p1=zhilu[i].p2;zhilu[b+1].p2=0;zhilu[b+1].r=zhilu[i].r/(bb-1);zhilu[b+1].x=zhilu[i].x/(bb-1);& a=a+2; }}fclose(fp1);if((fp2=fopen("d:\","w"))==NULL){printf("cannotopenfile!\n");exit(0);},fprintf(fp2,"\n\n*********原始数据*********\n");fprintf(fp2,"===================================================================\n")fprintf(fp2,"节点数:%2d支路数:%2d对地支路数:%2d变压器数:%2d\nPQ节点数:%2dPV节点数:%2d精度:%f\n",n,m+2*byq,dd,byq,pq,pv,eps);fprintf(fp2,"\n");for(i=1;i<=pq;i++)fprintf(fp2,"PQ节点节点%2dP[%d]=%+fQ[%d]=%+f\n", jiedian[i].num,jiedian[i].num,jiedian[i].p,jiedian[i].num,jiedian[i].q);:for(i=pq+1;i<=pq+pv;i++)fprintf(fp2,"PV节点节点%2dP[%d]=%+fV[%d]=%+f\n", jiedian[i].num,jiedian[i].num,jiedian[i].p,jiedian[i].num,jiedian[i].v);fprintf(fp2,"平衡节点节点%2du[%d]=%+ff[%d]=%+f\n", jiedian[n].num,jiedian[n].num,jiedian[n].u,jiedian[n].num,jiedian[n].f);fprintf(fp2,"\n");for(i=1;i<=m+2*byq;i++)fprintf(fp2,"支路%2d相关节点:%2d,%2dR=%+fX=%+f\n",〕 i,zhilu[i].p1,zhilu[i].p2,zhilu[i].r,zhilu[i].x);fprintf(fp2,"===================================================================\n");}voidform_y()/*形成节点导纳矩阵函数*/{floatS;for(i=1;i<=m+2*byq;i++)/*节点导纳矩阵的主对角线上的导纳*/"for(j=0;j<=n;j++) if((zhilu[i].p1==j)||(zhilu[i].p2==j)) {S=zhilu[i].r*zhilu[i].r+zhilu[i].x*zhilu[i].x; if(S==0)continue; G[j][j]+=zhilu[i].r/S; B[j][j]+=-zhilu[i].x/S; }for(i=1;i<=m+2*byq;i++)/*对地导纳*/){j=zhilu[i].p1;k=zhilu[i].p2; if((j==0)||(k==0)) {S=zhilu[i].r*zhilu[i].r+zhilu[i].x*zhilu[i].x;if(S==0){G[0][i]=B[0][i]=G[i][0]=B[i][0]=0;continue;}if(j==0){G[0][k]+=zhilu[i].r/S;B[0][k]+=-zhilu[i].x/S;|G[k][0]=G[0][k];B[k][0]=B[0][k]; }if(k==0){G[0][j]+=zhilu[i].r/S;B[0][j]+=-zhilu[i].x/S;G[j][0]=G[0][j];B[j][0]=B[0][j];% } }}for(k=1;k<=m-dd;k++)/*节点导纳矩阵非主对角线上的导纳*/{i=zhilu[k].p1;j=zhilu[k].p2; S=zhilu[k].r*zhilu[k].r+zhilu[k].x*zhilu[k].x; if(S==0)continue;: G[i][j]+=-zhilu[k].r/S; B[i][j]+=zhilu[k].x/S; G[j][i]=G[i][j]; B[j][i]=B[i][j]; }for(i=1;i<=(pq+pv);i++)/*形成B'矩阵*/for(j=1;j<=(pq+pv);j++)B1[i][j]=B[jiedian[i].num][jiedian[j].num];!for(i=1;i<=pq;i++)/*形成B''矩阵*/for(j=1;j<=pq;j++)B2[i][j]=B[jiedian[i].num][jiedian[j].num];/*输出节点导纳矩阵、系数矩阵B'、系数矩阵B''*/fprintf(fp2,"\n\n*********计算结果*********\n");fprintf(fp2,"===================================================================\n")fprintf(fp2,"\n节点导纳矩阵为:");【for(i=1;i<=n;i++){fprintf(fp2,"\n");for(j=1;j<=n;j++)fprintf(fp2,"%++j%+",G[i][j],B[i][j]); }fprintf(fp2,"\n\n");fprintf(fp2,"\n节点导纳矩阵实部G为:");for(i=1;i<=n;i++)\{fprintf(fp2,"\n");for(j=1;j<=n;j++)fprintf(fp2,"%+",G[i][j]); }fprintf(fp2,"\n\n");fprintf(fp2,"\n节点导纳矩阵虚部B为:");for(i=1;i<=n;i++){fprintf(fp2,"\n");~for(j=1;j<=n;j++)fprintf(fp2,"%+",B[i][j]); }fprintf(fp2,"\n\n");fprintf(fp2,"\n系数矩阵B'为:");for(i=1;i<=pv+pq;i++){fprintf(fp2,"\n");for(j=1;j<=pv+pq;j++)|fprintf(fp2,"%+",B1[i][j]); }fprintf(fp2,"\n\n");fprintf(fp2,"\n系数矩阵B''为:");for(i=1;i<=pq;i++){fprintf(fp2,"\n");for(j=1;j<=pq;j++)fprintf(fp2,"%+",B2[i][j]);· }fprintf(fp2,"\n==============================================================\n");}voidgaoshi(intA,floataa[M][M],floatbb[M])/*高斯计算函数*/{inti,j,z;intk=0;floata;for(i=k+1;i<A;i++)〕{for(z=0;(z+i)<A;z++){aa[i+z][k]=aa[i+z][k]/aa[k][k];/*校验过程*/bb[i+z]=bb[i+z]-aa[i+z][k]*bb[k];for(j=k+1;j<A;j++){aa[i+z][j]=aa[i+z][j]-aa[i+z][k]*aa[k][j];}}k=k+1;}|bb[A-1]=bb[A-1]/aa[A-1][A-1];for(i=A-2,k=A-2;i>=0;i--){a=0;for(j=i+1;j<A;j++){a=aa[i][j]*bb[j]+a;}bb[i]=(bb[i]-a)/aa[i][i];}…}floatsolve(floatmax)/*迭代函数*/{floataa[M],bb[M];/**********************************求节点有功功率不平衡量dp**************************************************/for(i=1;i<=(pq+pv);i++)/*求dp*/{jiedian[i].dp=jiedian[i].p;for(j=1;j<=n;j++)<{jiedian[i].dp=jiedian[i].dp-jiedian[i].u*jiedian[j].u*(G[jiedian[i].num][jiedian[j].num]*cos(jiedian[i].f-jiedian[j].f)+B[jiedian[i].num][jiedian[j].num]*sin(jiedian[i].f-jiedian[j].f));}}for(i=1;i<=(pq+pv);i++)/*定义各节点的dP/U*/if(jiedian[i].s!=3)yy[i]=fabs(jiedian[i].dp/jiedian[i].u);max=yy[1];/*求dP/U的最大值*/for(i=1;i<=(pq+pv);i++)〔if(yy[i]>max){max=yy[i];}for(i=1;i<=(pq+pv);i++)fprintf(fp2,"有功功率不平衡量dP[%d]=%+f\n",jiedian[i].num,jiedian[i].dp);fprintf(fp2,"\n\n");/*********************************求各节点的相位角f,df**************************************************/{a=1;/*装换为高斯函数的标准形式*/for(i=1;i<=n;i++){if(jiedian[i].s==3){a=a+1;continue;}'aa[i-a]=jiedian[i].dp/jiedian[i].u;b=1;for(j=1;j<=n;j++){if(jiedian[j].s==3){b=b+1;continue;}B3[i-a][j-b]=[i+1-a][j+1-b]*jiedian[i].u;}}gaoshi((pv+pq),B3,aa);/*代入高斯函数求解方程*/>a=1;for(i=1;i<=n;i++){if(jiedian[i].s==3){a++;continue;}jiedian[i].df=aa[i-a];jiedian[i].f=jiedian[i].f+jiedian[i].df;}for(i=1;i<=(pq+pv);i++)fprintf(fp2,"df[%d]=%f电压的相位角f[%d]=%+f\n",jiedian[i].num,jiedian[i].df,jiedian[i].num,jiedian[i].f);fprintf(fp2,"\n\n");?/*********************************求节点的无功功率不平衡量dq********************************************/for(i=1;i<=n;i++)/*求dq*/{jiedian[i].dq=jiedian[i].q;for(j=1;j<=n;j++){jiedian[i].dq=jiedian[i].dq-jiedian[i].u*jiedian[j].u*(G[jiedian[i].num][jiedian[j].num]*sin(jiedian[i].f-jiedian[j].f)-B[jiedian[i].num][jiedian[j].num]*cos(jiedian[i].f-jiedian[j].f));}|}for(i=1;i<=pq;i++)/*定义各节点的dQ/U*/yy[i]=fabs(jiedian[i].dq/jiedian[i].u);for(i=1;i<=pq;i++)/*求所有dP/U和dQ/U中的最大值*/if(yy[i]>max){max=yy[i];}for(i=1;i<=pq;i++)、fprintf(fp2,"无功功率不平衡量dQ[%d]=%+f\n",jiedian[i].num,jiedian[i].dq);fprintf(fp2,"\n\n");/********************************计算各节点电压***************************************************/for(i=1;i<=n;i++)/*装换为高斯函数的标准形式*/for(j=1;j<=n;j++)B3[i-1][j-1]=0-B2[i][j];a=1;$for(i=1;i<=n;i++){if(jiedian[i].s!=1){a=a+1;continue;}bb[i-a]=jiedian[i].dq/jiedian[i].u;}gaoshi(pq,B3,bb);/*代入高斯函数求解方程*/a=1;for(i=1;i<=n;i++){if(jiedian[i].s==3){a++;continue;}《jiedian[i].du=bb[i-a];jiedian[i].u=jiedian[i].u+jiedian[i].du;}for(i=1;i<=n;i++)if(jiedian[i].s==1)fprintf(fp2,"dU[%d]=%f电压的大小U[%d]=%+f\n",jiedian[i].num,jiedian[i].du,jiedian[i].num,jiedian[i].u);fprintf(fp2,"\n==============================================================\n");`}return(max);/*返回循环标志值*/}floatmul_Re(x1,y1,x2,y2)/*求实部*/floatx1,x2,y1,y2;{floatx;x=x1*x2-y1*y2;return(x);~}floatmul_Im(x1,y1,x2,y2)/*求虚部*/floatx1,x2,y1,y2;{floaty;y=x1*y2+x2*y1;return(y);}voiddata2()/*潮流计算结果*/、{floatsp=0,sq=0,mo1,mo2,mo3,mo4,mo5,mo6,ff,tt[M];inti1,j1,i11=0,j11=0;staticfloatP[M][M],Q[M][M];fprintf(fp2,"\n\n各节点电压为:");for(i=1;i<=n;i++) {tt[M]=jiedian[i].u; jiedian[i].u=(jiedian[i].u)*(cos(jiedian[i].f));/*由极坐标转化为直角坐标*/ jiedian[i].f=(tt[M])*(sin(jiedian[i].f));…fprintf(fp2,"\nU[%d]=%++j%+", jiedian[i].num,jiedian[i].u,jiedian[i].f);}/*输出直角坐标节点电压*/fprintf(fp2,"\n==============================================================\n");fprintf(fp2,"\n\n平衡节点功率为:");for(i=1;i<=n;i++){i1=jiedian[n].num; j1=jiedian[i].num; sp+=mul_Re(G[i1][j1],-B[i1][j1],jiedian[i].u,-jiedian[i].f);( sq+=mul_Im(G[i1][j1],-B[i1][j1],jiedian[i].u,-jiedian[i].f);}jiedian[n].p=mul_Re(jiedian[n].u,jiedian[n].f,sp,sq);jiedian[n].q=mul_Im(jiedian[n].u,jiedian[n].f,sp,sq);fprintf(fp2,"\nS[%d]=%++j%+",jiedian[n].num,jiedian[n].p,jiedian[n].q);fprintf(fp2,"\n==============================================================\n");fprintf(fp2,"\n\n线路功率如下:\n");for(k=1;k<=(m-dd);k++)|{i1=zhilu[k].p1; j1=zhilu[k].p2; for(l=1;l<=n;l++) {if(jiedian[l].num==i1) i=l; if(jiedian[l].num==j1) j=l; }[ sp=mul_Re((jiedian[i].u-jiedian[j].u),(-jiedian[i].f+jiedian[j].f), -G[i1][j1],B[i1][j1]); sq=mul_Im((jiedian[i].u-jiedian[j].u),(-jiedian[i].f+jiedian[j].f), -G[i1][j1],B[i1][j1]);mo1=jiedian[i1].u*jiedian[i1].u+jiedian[i1].f*jiedian[i1].f; P[i1][j1]=mul_Re(jiedian[i].u,jiedian[i].f,sp,sq)+mo1*G[i1][0]; Q[i1][j1]=mul_Im(jiedian[i].u,jiedian[i].f,sp,sq)-mo1*B[j1][0]; sp=mul_Re((jiedian[j].u-jiedian[i].u),(-jiedian[j].f+jiedian[i].f),^ -G[j1][i1],B[j1][i1]); sq=mul_Im((jiedian[j].u-jiedian[i].u),(-jiedian[j].f+jiedian[i].f), -G[j1][i1],B[j1][i1]); mo2=jiedian[j1].u*jiedian[j1].u+jiedian[j1].f*jiedian[j1].f;P[j1][i1]=mul_Re(jiedian[j].u,jiedian[j].f,sp,sq)+mo2*G[j1][0]; Q[j1][i1]=mul_Im(jiedian[j].u,jiedian[j].f,sp,sq)-mo2*B[j1][0]; if((i1!=i11)||(j1!=j11))!{fprintf(fp2,"\n线路%d-%d的功率:",i1,j1); fprintf(fp2,"%++j%+",P[i1][j1],Q[i1][j1]); fprintf(fp2,"\n线路%d-%d的功率:",j1,i1); fprintf(fp2,"%++j%+",P[j1][i1],Q[j1][i1]); }i11=i1,j11=j1;}for(i=1;i<=(m-dd);i++)/*求平行支路的功率分布〔功率按导纳分布〕*/】{z=1;mo3=zhilu[i].r*zhilu[i].r+zhilu[i].x*zhilu[i].x;mo3=1/sqrt(mo3);for(j=i+1;j<=(m-dd);j++){if((zhilu[i].p1==zhilu[j].p1)&&(zhilu[i].p2==zhilu[j].p2)){i1=zhilu[i].p1; j1=zhilu[i].p2; mo4=zhilu[j].r*zhilu[j].r+zhilu[j].x*zhilu[j].x;|mo4=1/sqrt(mo4);mo3=mo3+mo4;z++;}}if(z>1) {fprintf(fp2,"\n==============================================================\n");fprintf(fp2,"节点%d-%d之间有%d条平行支路\n",zhilu[i].p1,zhilu[i].p2,z);fprintf(fp2,"功率分布为:\n");。for(k=i;k<z+i;k++){mo5=zhilu[k].r*zhilu[k].r+zhilu[k].x*zhilu[k].x;mo6=1/sqrt(mo5);ff=mo6/mo3;fprintf(fp2,"\n导纳Y=%+的支路",mo6);fprintf(fp2,"\n支路%d-%d的功率:",zhilu[i].p1,zhilu[i].p2);fprintf(fp2,"%++j%+",ff*P[i1][j1],ff*Q[i1][j1]);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论