已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
电力系统潮流上机课程设计报告 院 系:电气与电子工程学院 班 级: 电网1102 学 号: 24 学生姓名: 王超 指导教师: 王莉丽 设计周数: 两周 成 绩: 日期:2013年12月30日 课程 课程设计报告 电网王超 24一、课程设计的目的与要求培养学生的电力系统潮流计算机编程能力,掌握计算机潮流计算的相关知识二、设计正文(详细内容见附录)1 手算要求应用牛顿-拉夫逊法或P-Q分解法手算求解,要求迭代两次。节点1为平衡节点,电压,节点2为PQ节点,负荷功率,节点3是PV节点,两条支路分别为,对地支路2 计算机计算见电脑3.思考题 3.1潮流计算的方法有哪些?各有何特点? 答:潮流计算方法主要包括:高斯-赛德尔迭代法、牛顿-拉夫逊迭代法、P-Q分解法等算法。各方法特点如下所示:方法高斯-赛德尔法牛顿-拉夫逊迭代法P-Q分解法初值要求不高高高迭代次数多少多收敛速度慢较快最快精度一样一样一样应用早期应用多,现在较少广泛应用应用较多3.2如果交给你一个任务,请你用已有的潮流计算软件计算北京城市电网的潮流,你应该做哪些工作?(收集哪些数据,如何整理,计算结果如何分析) 答:1.所需要收集的数据: A.电网中所有节点的数据:a各节点的类型,包括平衡节点、PV 节点、PQ 节点b. 对于平衡节点要了解节点的电压大小相位、及节点所能提供的最大最小有功无功功率c. PV节点要知道节点电压大小注入有功功率及节点所能提供的最大和最小无功功.率d. PQ节点要知道节点的注入有功和无功功率B电网中所有支路的数据:a.各支路类型,即是否含有变压器b.各支路的电阻、电感、电纳c.各变压器的变比。2数据整理:将上述数据资料进行分类整理,并为每个节点及支路编上编号。将整理的结果写成本 实验中所要求的格式(原始数据的 txt 文档) ,再用本实验所编制的程序进行求解,得到各节 点电压、相位,各线路传输功率、损耗,平衡节点注入功率等数值。3.计算结果分析:可以大致了解整个电网的运行状况并按照电力系统知识依次进行所需的调整。如调节各节点电压的大小以防止超出规定限度,调整各线路的有功无功分布状况分析整个系统的网损是否达到标准等。3.3设计中遇到的问题和解决的办法。 1.在设计最开始遇到的问题就是由于以前C+语言所学习的知识遗忘较多,对于程序的使用不太熟练,通过老师讲解、看书、询问同学逐渐扫除了这个障碍。 2.设计的时候对于电力系统整体的知识脉络不是很清晰,编写程序时所定义的变量容易弄混淆,编写的程序产生了较多的错误,经过仔细学习和对每一排程序的排查,找出了产生错误的地方。同时也对潮流计算的过程有了更清楚的认识。3. 另外一个要注意的就是c+中数组是从0开始的,课本都是从1开始,这个在编程时要十分注 意。三、课程设计总结或结论将近两周的潮流计算让我不仅对本学期学习的电力系统有了一个更深刻的认识,而且还巩固了我的编程能力和c+的知识。刚开始的几天是熟悉C+上机环境,在老师的简单介绍下,温习了接一个简单的方程组,然后学会了简单的文件的输入和输出以及在电脑上显示你的数据。这些都是简单的应用,在后面的程序编写中都是以这个为基础的。幸运的是,老师给出了几个子程序的例子,不但让我们有了一个参照的标准,并且提高了编程的正确率。元旦过后,正式进入状态,开始大规模编写程序。在课本和老师的指导下,从文件的读入,到形成节点导纳矩阵,都花费了很长时间,在形成雅克比矩阵中,我的程序出现了错误,结果查明是下表没有对应。最后一部分就是计算线路功率和损耗。这部分老师没有给出例子。但是经过这样一个时间的训练,在课本公式的推导下,我把公式分解成实部和虚部,分别计算。在输入时,还是要十分注意下标的对应。最后部分的编写解释主程序,主要是负责把几个已经编号的子程序调用,还要同时编写控制循环精度和次数的条件。这部分主要是应用Break语句和循环,让迭代过程收敛。整个程序的验收是通过验证5节点的一个网络和计算一个9节点的网络,最后应该都达到了预期的目的。通过这次潮流对c+的面向对象编程及其过程有了更深入的了解。对于潮流计算,我更深刻的掌握了牛拉法解潮流方程的方法以及对数学高次多元方程线性化在迭代求解的方法有了更深入的认识。通过这次课程设计,自己动手编写潮流计算的程序,仔细分析了潮流计算各个步骤,理论与实践相结合,对潮流计算的思想和方法以及过程有了更深入的理解。在两周的潮流上机过程中,我完成了程序的编写,掌握了计算机潮流计算的基本方法与步骤,了解了计算机潮流计算的优点与重要性。潮流计算最关键的是进行C+语言的编程,没有良好的C+语言基础很难快速地编出潮流计算程序,编写时需要注意循环和嵌套的使用,我在编写的过程中由于循环没有用好以及粗心等原因,导致多次编出来的程序出现错误,这在潮流计算中都是不应该出现的。另外一个要注意的就是c+中数组是从0开始的,课本都是从1开始,这个在编程时要十分注意。总之,潮流计算设计是一个及时巩固c+编程和电力系统基础知识的良好手段。四、参考文献1. 电力系统计算:电子数字计算机的应用,西安交通大学等合编。北京:水利电力出版社;2. 现代电力系统分析,王锡凡主编,科学出版社;3. 电力系统稳态分析,陈珩,中国电力出版社,1995年,第三版;形成节点导纳矩阵设非平衡节点电压初值ei(0) ,fi(0)输入原始数据启动附录(设计流程图、程序、表格、数据等)1、设计流程图 令迭代次数k=0对PQ节点计算对PV节点计算 令节点号i=1雅可比矩阵是否已形成,in? 是 计算雅可比矩阵各元素Hij(k)、Nij(k)、Jij(k)、Lij(k)增加迭代次数k=k+1否增加节点号i=i+1解修正方程,由及雅可比矩阵用牛顿-拉夫逊法求各节点的ei,fi计算节点的新电压ei(k+1)=ei(k)+ei(k)fi(k+1)=fi(k)+fi(k)求出max(|dei|,|dfi|)判断迭代是否收敛|dei|,|dfi|计算平衡节点的功率及线路功率停止#include stdafx.h#include fstream#include iostream#include DataFormm.h#include NEquation.h#include math.husing namespace System;using namespace std;#define PI 3.1415926void DataRead();void FormY();void VoltageInitial();void SetUnbalance();void FormJacobi();void GetRevised();void GetNewVoltageValue();void BusBalance();void BranchPQ();void BranceLoss();int main(array args) /主程序int k,flag;float mm,DeltaU2*(BusNum-1);DataRead();FormY();VoltageInitial();for(k=0;k100;k+) SetUnbalance(); FormJacobi(); GetRevised(); GetNewVoltageValue(); mm=fabs(DeltaU0);for(int i=1;i2*(BusNum-1);i+)if(mmfabs(DeltaUi) mm=fabs(DeltaUi); if(mmPrecision) /满足精度退出循环 break;coutk;BusBalance();BranchPQ();BranceLoss(); Console:WriteLine(LHello World); return 0;void DataRead() /节点、支路数据读入子程序 ifstream infile1; infile1.open(BranchData2.txt); for(int i=0;iBranchi.NumBranchi.BusFirstBranchi.BusEndBranchi.RBranchi.XBranchi.BBranchi.K; infile1.close(); ifstream infile2; infile2.open(BusData2.txt); for(int i=0;iBusi.NumBusi.BusTypeBusi.VoltageBusi.PhaseBusi.PgBusi.QgBusi.PlBusi.Ql; infile2.close();void FormY() /形成节点导纳矩阵子程序 for(int i=0;iBusNum;i+)for(int j=0;jBusNum;j+) Gij=0; Bij=0;int m,n;/设置两个变量分别存储之路手摸节点的编号for(int i=0;iBranchNum;i+)/以支路循环 float GG,BB,B0,G1,G2,B1,B2; m=Branchi.BusFirst-1;/减是因为数组下标从开始,节点号从开始n=Branchi.BusEnd-1;/以下为变压器变比不唯Branchi.R=Branchi.K*Branchi.R; Branchi.X=Branchi.K*Branchi.X;/将变压器变比引起的对地之路转换成电(=_=)哪里?G1=(1-Branchi.K)/(Branchi.K*Branchi.K)/(Branchi.R*Branchi.R+Branchi.X*Branchi.X)*Branchi.R; B1=-(1-Branchi.K)/(Branchi.K*Branchi.K)/(Branchi.R*Branchi.R+Branchi.X*Branchi.X)*Branchi.X; /将变压器变比引起的对地之路换成daona,末端 G2=(Branchi.K-1)/Branchi.K/(Branchi.R*Branchi.R+Branchi.X*Branchi.X)*Branchi.R; B2=-(Branchi.K-1)/Branchi.K/(Branchi.R*Branchi.R+Branchi.X*Branchi.X)*Branchi.X; /变压器非标准变比处理完毕GG=Branchi.R/(Branchi.R*Branchi.R+Branchi.X*Branchi.X); BB=-Branchi.X/(Branchi.R*Branchi.R+Branchi.X*Branchi.X);B0=Branchi.B;/接地数据Gmm+=GG+G1;Gmn-=GG; Gnm-=GG; Gnn+=GG+G2; Bmm+=BB+B0+B1; Bmn-=BB; Bnm-=BB; Bnn+=BB+B0+B2;ofstream outfile1(resultY2.txt);for(int i=0;iBusNum;i+)for(int j=0;jBusNum;j+) outfile1GijtBijt; outfile1endl;outfile1.close();void VoltageInitial() /设置节点电压子程序 for(int i=0;iBusNum;i+) if(Busi.BusType=3)Uei=1.04; Ufi=0.0;else Uei=1.0; Ufi=0.0;coutUei Ufiendl;void SetUnbalance() /计算功率不平衡量子程序 for(int i=1;iBusNum;i+) Pi=0; Qi=0;for(int j=0;jBusNum;j+) Pi=Pi+Uei*(Gij*Uej-Bij*Ufj)+Ufi*(Gij*Ufj+Bij*Uej); Qi=Qi+Ufi*(Gij*Uej-Bij*Ufj)-Uei*(Gij*Ufj+Bij*Uej); /coutPi Qiendl; if(Busi.BusType=1) /PQ DeltaPi=Busi.Pg-Busi.Pl-Pi; DeltaQU2i=Busi.Qg-Busi.Ql-Qi; else if(Busi.BusType=2) /PV DeltaPi=Busi.Pg-Busi.Pl-Pi; DeltaQU2i=Busi.Voltage*Busi.Voltage-(Uei*Uei+Ufi*Ufi); for(int i=0;iBusNum-1;i+) Delta2*i=DeltaPi+1; Delta2*i+1=DeltaQU2i+1; /形成delta值 ofstream outfile2(Delta2.txt);for(int j=0;j2*(BusNum-1);j+)outfile2Deltajendl;outfile2.close();void FormJacobi() /形成雅各比矩阵子程序float HBusNum-1BusNum-1,NBusNum-1BusNum-1,JBusNum-1BusNum-1,LBusNum-1BusNum-1; float aBusNum,bBusNum; for(int i=1;iBusNum;i+) ai=Gii*Uei-Bii*Ufi; bi=Gii*Ufi+Bii*Uei; for(int j=0;jBusNum;j+) if(j!=i) ai=ai+(Gij*Uej-Bij*Ufj); bi=bi+(Gij*Ufj+Bij*Uej); for(int i=1;iBusNum;i+) for(int j=1;jBusNum;j+) if(i=j) Hii=-Bii*Uei+Gii*Ufi+bi; Nii=Gii*Uei+Bii*Ufi+ai; if(Busi.BusType=1) Jii=-Gii*Uei-Bii*Ufi+ai; Lii=-Bii*Uei+Gii*Ufi-bi; else if(Busi.BusType=2) Jii=2*Ufi; Lii=2*Uei; else if(i!=j) Hij=-Bij*Uei+Gij*Ufi; Nij=Gij*Uei+Bij*Ufi;if(Busi.BusType=1) Jij=-Gij*Uei-Bij*Ufi; Lij=-Bij*Uei+Gij*Ufi; else if(Busi.BusType=2) Jij=0; Lij=0; for(int i=0;iBusNum-1;i+) for(int j=0;jBusNum-1;j+) Jacobi2*i2*j=Hi+1j+1; Jacobi2*i2*j+1=Ni+1j+1; Jacobi2*i+12*j=Ji+1j+1; Jacobi2*i+12*j+1=Li+1j+1; ofstream outfile4;outfile4.open(Jacobi2.txt);for(int i=0;i2*(BusNum-1);i+) for(int j=0;j2*(BusNum-1);j+) outfile4Jacobiijt ;outfile4endl;outfile4.close();void GetRevised() /求解修正方程得到电压增量子程序NEquation Object;/建立一个对象Object.SetSize(2*(BusNum-1);/设置矩阵的维数ifstream infile1;infile1.open(Jacobi2.txt);for(int i=0;i2*(BusNum-1);i+) for(int j=0;jObject.Data(i,j); infile1.close(); ifstream infile2;infile2.open(Delta2.txt);for(int i=0;iObject.Value(i);infile2.close();Object.Run(); for(int i=0;i(BusNum-1);i+) /DeltaUi=Object.Value(i); DeltaUfi=Object.Value(2*i);DeltaUei=Object.Value(2*i+1);DeltaU2*i=DeltaUfi;DeltaU2*i+1=DeltaUei;/结果输出 ofstream outfile5(revised equation2.txt);for(int j=0;j2*(BusNum-1);j+)outfile5DeltaUjendl;outfile5.close();void GetNewVoltageValue() /得到新的电压子程序 for(int i=0;iBusNum-1;i+)/if(Busi.BusType!=3) Uei+1+=DeltaUei; Ufi+1+=DeltaUfi; ofstream outfile6(new voltage value2.txt);for(int i=0;iBusNum-1;i+)/if(Busi.BusType=1|Busi.BusType=2)outfile6Uei+1 Ufi+1endl; outfile6.close(); void BusBalance() /计算平衡节点功率子程序 for(int i=0;iBusNum;i+) if(Busi.BusType=3) Pi=0.0;Qi=0.0; for(int j=0;jBusNum;j+) Pi+=Uei*(Gij*Uej-Bij*Ufj)+Ufi*(Gij*Ufj+Bij*Uej);/有功Qi+=Ufi*(Gij*Uej-Bij*Ufj)-Uei*(Gij*Ufj+Bij*Uej);/无功 ofstream outfile7(BusBalance2.txt);for(int i=0;iBusNum;i+)if(Busi.BusType=3)outfile7Pi tQiendl;outfile7.close();void BranchPQ() /计算支路功率子程序 float B0; for(int i=0;iBusNum;i+) for(int j=0;jBusNum;j+) if(i!=j&(Gij)!=0&(Bij)!=0) B0=Branchi.B;BranchPij=Uei*(-Ufi*B0+Uei*0+(Uei-Uej)*Gij-(Ufi-Ufj)*Bij)+Ufi*(Uei*B0+Ufi*0+(Uei-Uej)*Bij+(Ufi-Ufj)*Gij); BranchQij=Ufi*(-Ufi*B0+Uei*0+(Uei-Uej)*Gij-(Ufi-Ufj)*Bij)-Uei*(Uei*
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 不锈钢水箱合同范本
- 个人抵债协议书范本
- 供应商物流合同范本
- 内燃机供应合同范本
- 出资项目投资协议书
- 借用厂房参茶协议书
- 山东东营市事业单位招考人员易考易错模拟试题(共500题)试卷后附参考答案
- 服装店房东合同范本
- 出售花园的合同范本
- 印刷专用标志协议书
- 青少年无人机课程:第一课-马上起飞
- 护工照顾老人协议书范本
- DB29-296-2021 海绵城市雨水控制与利用工程设计规范
- 风电波动性电源对电解水制氢电解槽影响的研究进展
- 中医诊疗技术规范
- 义务教育质量监测应急专项预案
- ZY-T 001.9-1994 中医骨伤科病证诊断疗效标准
- 美术作品与客观世界 课件-2023-2024学年高中美术湘美版(2019)美术鉴赏
- 八年级上册语文全品作业本电子版
- GB/T 893-2017孔用弹性挡圈
- GB/T 29531-2013泵的振动测量与评价方法
评论
0/150
提交评论