c#潮流计算软件课程报告.docx
《c#潮流计算软件课程报告.docx》由会员分享,可在线阅读,更多相关《c#潮流计算软件课程报告.docx(18页珍藏版)》请在冰点文库上搜索。
c#潮流计算软件课程报告
研究生课程考试成绩单
(试卷封面)
院系
电气工程学院
专业
电气工程
学生姓名
郝攀
学号
152247
课程名称
电气工程设计与开发1_偏软(S016156)
授课时间
2015年9月至2016年6月
周学时
2
学分
2.0
简
要
评
语
考核论题
总评成绩
(含平时成绩)
备注
任课教师签名:
日期:
年月日
学号:
152247
东南大学
研究生课程
《电气工程设计与开发1_偏软》
课程报告
院(系、所)
电气工程学院
学科(专业)
电气工程
研究生姓名
郝攀
学科门类与学位级别
工学硕士
导师姓名
张金旺
入学年月
2015年8月31日
结题报告日期
2016年5月16日
东南大学电气工程学院
一、课程结题报告
选题题目
基于C#的潮流计算软件
研究
方向
电力系统及其自动化
题目来源
国家
部委
省
市
厂、矿
自选
有无合同
经费数
备注
✓
题目
类型
基础
研究
应用
研究
综合研究
其它
基础研究
课程
指导
教师
选择
(备注:
每位同学可以选择指导教师中的两位,其中一位为主选,另一位为备选,指导教师从以下三位教师中选择:
蒋浩、黄允凯、王玉荣。
)
主选教师:
蒋浩
备选教师:
黄允凯
结题报告内容
一、课程设计目标:
(1)目标:
从工程化角度培养学生从事软件特别是面向对象程序的架构设计、编程开发和软件测试能力。
(2)要求:
1.开发语言的选择:
C++/JAVA/C#及其他面向对象程序语言,数据库平台的选择不限;
2.软件功能的要求:
软件具有完整的功能,具有可视化人机交互功能,具有基本的输入输出界面,可以进行数据的输入、输出,数据保存推荐数据库的方式;
3.工作量的要求:
除系统自动生成的代码外,独立开发的代码以不低于2000行为宜。
4.备注:
本课程是软件设计与开发,不能采用仿真形式代替,不能以课题组已经开发的软件代替。
二、设计步骤:
(1)根据给定的参数或工程具体要求,收集和查阅资料;学习相关软件(软件自选:
本设计选择C#进行设计;
(2)编写潮流计算界面;
(3)编写潮流计算程序,实现界面的功能;
(4)找到案例电力网络的等值电路图,在编写的软件上调试。
(5)运用设计软件进行潮流计算,并与参考结果比对测试。
(6)根据测试结果,记录测试bug,修改原程序。
(7)编写课程设计报告。
三、设计原理
(1)牛顿-拉夫逊原理
牛顿迭代法是取x0之后,在这个基础上,找到比x0更接近的方程的跟,一步一步迭代,从而找到更接近方程根的近似跟。
牛顿迭代法是求方程根的重要方法之一,其最大优点是在方程f(x)=0的单根附近具有平方收敛,而且该法还可以用来求方程的重根、复根。
电力系统潮流计算,一般来说,各个母线所供负荷的功率是已知的,各个节点电压是未知的(平衡节点外)可以根据网络结构形成节点导纳矩阵
(1),然后由节点导纳矩阵列写功率方程
(2)(3)(4),由于功率方程里功率是已知的,电压的幅值和相角是未知的,这样潮流计算的问题就转化为求解非线性方程组的问题了。
为了便于用迭代法解方程组,需要将上述功率方程改写成功率平衡方程(5)(6),并对功率平衡方程求偏导(7)(8),得出对应的雅可比矩阵,给未知节点赋电压初值,一般为额定电压,将初值带入功率平衡方程,得到功率不平衡量,这样由功率不平衡量、雅可比矩阵、节点电压不平衡量(未知的)构成了误差方程,解误差方程,得到节点电压不平衡量,节点电压加上节点电压不平衡量构成新的节点电压初值,将新的初值带入原来的功率平衡方程,并重新形成雅可比矩阵,然后计算新的电压不平衡量,这样不断迭代,不断修正,一般迭代三到五次就能收敛。
有关潮流计算基本原理如下:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(2)牛顿—拉夫逊迭代法的一般步骤:
1.形成各节点导纳矩阵Y;
2.设个节点电压的初始值U和相角初始值e还有迭代次数初值;
3.计算各个节点的功率不平衡量;
4.根据收敛条件判断是否满足,若不满足则向下进行;
5.计算雅可比矩阵中的各元素;
6.修正方程式个节点电压;
7.利用新值自第(3)步开始进入下一次迭代,直至达到精度退出循环;
8.计算平衡节点输出功率和各线路功率。
四、软件说明书
(1)功能目标及总体设计
本软件具有两大模块,分别实现两大计算功能:
第一,不限节点个数的节点导纳矩阵,如图1;第二,不限节点个数的无控制潮流计算,如图2;本软件采用C/S架构,用户需用PC、工作台等安装软件并运行。
两大模块中,节点导纳矩阵计算是潮流计算的基础,需要先进行节点导纳矩阵计算,再进行潮流计算。
本软件的功能模型流程图如图3。
图1.节点导纳计算按钮
图2.潮流计算按钮
图3.功能模型流程图
(2)主模块详细设计
1.模块一的实现:
通过用户指定的节点个数、支路索引矩阵、支路参数矩阵,动态的建立存储节点导纳矩阵实部和虚部的G阵、B阵。
计算思路及相应的界面如下:
a)根据索引,作为G阵、B阵脚标的依据,根据参数阵中r,x的值计算各支路互导纳,再计算出节点的自导纳。
相对应代码在Line355-390;
b)根据参数阵中的b,修正导纳矩阵B阵的自导纳。
相对应代码在Line390-408;
c)根据参数阵中的变比k及变压器π型等效电路的计算规则,对已得的G阵、B阵修正。
相对应代码在Line409-460;
d)除了在含有对地电容的支路,B阵计算思路基本与G阵相同;
e)模块一界面数据输入部分:
如图4;
图4.模块一界面数据输入部分
f)模块一界面数据输出部分:
如图5;
图5.模块一界面数据输出部分
2.模块二的实现:
本算法采用牛顿拉夫逊法求解潮流,计算原理同设计原理,计算思路及相应的界面如下:
a)设个节点电压的初始值U和相角初始值e还有迭代次数初值。
相对应代码在Line499-551;
b)计算各个节点的功率不平衡量。
相对应代码在Line557-589;
c)根据收敛条件判断是否满足,若不满足则向下进行。
相对应代码在Line556;
d)计算雅可比矩阵中的各元素。
相对应代码在Line590-710;
e)修正方程式个节点电压。
相对应代码在Line715-730;
f)利用新值自第c)步开始进入下一次迭代,直至达到精度退出循环;
g)计算平衡节点输出功率,PV节点注入无功。
相对应代码在Line745-761;
h)计算各线路功率。
相对应代码在Line762-800;
i)模块二界面数据输入部分:
如图6;
图6.模块二界面数据输入部分
j)模块二界面数据输出部分:
如图7。
图7.模块二界面数据输出部分
(3)辅助功能介绍
1.文件菜单栏:
如图所示,包含新建、打开、保存、退出功能,如图8。
图8.文件菜单栏
2.关于菜单栏:
如图所示:
包含如何支路索引、如何赋值支路、如何解读结果,如图9,并给出如何索引支路的例子,如图10。
图9.关于菜单栏
图10.关于菜单栏例
(4)测试
1.测试文档1
测试用例选择现代电力系统分析2003版,王锡凡主编,P74页的5节点系统,并附计算结果可供读者参考,如图11,12。
图11.测试用例
图12.测试用例参考结果
图13.测试1结果
2.测试文档2
选用IEEE14节点典型算例数据对软件进行测试。
给出IEEE14节点系统接线图,如图14所示:
图14.IEEE14节点系统接线图
IEEE14节点系统包括5台发电机(节点1、2、3、6、8,其中1节点为平衡节点,节点2、3、6、8为PV节点),3台可调变压器(支路4—7、4—9、5—6)和1个无功补偿点(节点9),系统数据统计表如下表所示:
表1.IEEE14节点基本数据统计表
节点数
支路数
可调变压器数
无功补偿设备数
发电机数
14
20
3
1
5
表2.IEEE14发电机数据
节点号
有功下限
有功上限
无功下限
无功上限
电压下限
电压上限
1
0.1
1.0
-0.4
0.5
0.95
1.1
2
0.2
0.5
-0.4
0.5
0.95
1.1
3
0
0
0
0.4
0.95
1.1
6
0
0
-0.06
0.24
0.95
1.1
8
0
0
-0.06
0.24
0.95
1.1
表3.IEEE14节点系统支路参数数据
支路号
首末节点
电阻
电抗
1/2电纳
1
1-2
0.01938
0.05917
0.02640
2
2-3
0.04699
0.01979
0.02190
3
2-4
0.05811
0.17632
0.01870
4
1-5
0.05403
0.22304
0.02460
5
2-5
0.05695
017388
0.01700
6
3-4
0.06701
0.17103
0.01730
7
4-5
0.01335
0.04211
0.00640
8
7-8
0.0000
0.17615
0.00000
9
7-9
0.0000
0.11001
0.00000
10
9-10
0.03181
0.08450
0.00000
11
6-11
0.09498
0.19890
0.00000
12
6-12
0.12291
0.15581
0.00000
13
6-13
0.06615
0.13027
0.00000
14
9-14
0.12711
0.27038
0.00000
15
10-11
0.08205
0.19207
0.00000
16
12-13
0.22092
0.19988
0.00000
17
13-14
0.17093
0.34802
0.00000
表4.IEEE14节点系统变压器数据
支路号
首末节点
电阻
电抗
变比
变比下限
变比上限
18
5-6
0
0.25202
0.932
0.9
1.1
19
4-7
0
0.20912
0.978
0.9
1.1
20
4-9
0
0.55618
0.969
0.9
1.1
表5.IEEE14节点系统负荷数据
母线号
有功
无功
2
0.217
0.127
3
0.942
0.19
4
0.478
-0.039
5
0.076
0.016
6
0.112
0.075
9
0.295
0.166
10
0.09
0.058
11
0.035
0.018
12
0.061
0.016
13
0.135
0.058
14
0.149
0.05
图15.测试2结果
3.测试bug记录
对于数据自身问题,程序存在计算不收敛现象。
4.功能测试结果:
只要是合理的电力系统数据,计算功能良好,均可以正常实现计算功能。
五、结束语
本课程设计采用Visualstudio2015为开发平台,应用VC#语言开发了一套简单的电网潮流计算软件,数据的存储利用txt文本。
实现一系列复杂的复数运算和非线性方程的迭代计算,可以进行电力系统的节点导纳矩阵计算、潮流计算。
非常感谢蒋浩老师在设计过程中的帮助和支持,以及来自同学的热心帮助。
六、参考文献
[1]何鹏飞,王征.C#实用编程百例.北京:
清华大学出版社,2004.1-20
[2]李春葆,曾平.C#程序设计教程.第3版.北京:
清华大学出版社,2015.3-7
[3]于国防,李剑.C#语言Windows程序设计.第2版.北京:
清华大学出社,2015.46-55
[4]单渊达,等.电能系统基础.北京:
机械工业出版社,2001.
[5]刘天琪.现代电力系统分析理论与方法.北京:
中国电力出版社,2007.47-63
[6]吴锡凡.现代电力系统分析.北京:
科学出版社,2003.113-147
[7]张伯明等.高等电力网络分析.第2版.北京:
清华大学出版社,2007.241-275
研究生签名:
年月日
指
导
教
师
对
选
题
报
告
的
综
合
意
见
指导教师(签名)
年月日
选
题
报
告
审
议
情
况
记
录
1、课程审核小组成员:
组长:
成员:
2、课程审核小组意见记录
3、课程审核小组组长(签名)
课程审核小组成员(签名)
年月日
备注: