您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > 基于Visual Basic和MATLAB联合编成的电力系统课程设计
信息工程学院电力系统分析课程设计报告书题目:电力系统短路故障的计算机算法程序设计专业:电气工程及其自动化班级:0309407学号:030940733学生姓名:刘堃指导教师:钟建伟2012年3月5日信息工程学院课程设计任务书学生姓名刘堃学号030940733成绩设计题目电力系统短路故障的计算机算法程序设计设计内容电力系统故障的计算程序设计及编制和调试。根据所给的电力系统,编制短路电流计算程序,通过计算机进行调试,最后完成一个切实可行的电力系统计算应用程序。通过自己设计电力系统计算程序对电力系统分析有进一步理解,同时加强计算机实际应用能力的训练。设计要求1、运用合理的计算方法,就是要求所选用的计算方法能快速准确地得出正确结果,同时还应要求在解算过程中占用内存少,以利提高计算机的解题规模。2、选择合适的语言编写程序,就是首先确定用什么计算机语言来编制程序;其次是作出计算的流程图;第三根据流程图用选择的语言编写计算程序。3、考虑影响问题的主要因素,而忽略一些次要因素,使数学模型既能正确地反映实际问题,又使计算不过于复杂。时间安排1、先熟悉编程语言一周时间2、复习电力系统分析相关内容一周时间3、建立模型,确定算法,编程,完成任务参考资料(1)《电力系统分析》(上册)华中科技大学出版社何仰赞(2)《电力系统故障的计算机辅助分析》重庆大学出版社米麟书等(3)《电力系统故障分析》清华大学出版社周荣光(4)《短路电流实用计算方法》电力工业出版社西安交通大学等目录1任务提出与方案论证................................................11.1任务提出....................................................11.2方案论证....................................................12设计思路..........................................................22.1项目分析....................................................23详细设计..........................................................43.1VB界面制作详细程序.........................................43.2测试算例....................................................94总结...........................................................18参考文献........................................................19信息工程学院课程设计(论文)11任务提出与方案论证1.1任务提出随着社会的发展,电能已成为现代社会最重要的能源之一,电网的覆盖面积已逐渐遍布世界各个角落,电力系统也随之变得庞大和复杂,而电力系统的计算也变得重要和繁琐,如果仅靠人工计算不仅困难而且容易出错,于是基于计算机的电力系统算法程序便应运而生。电力系统的故障有很多种,而短路则是最为严重的一种,包括一相短路接地,两相短路,两相短路接地,三相短路,其中三相短路在电力系统中虽然发生的概率很小,但一旦发生产生的影响非常严重,电力系统中设备的动稳定和热稳定校验都要以三相短路电流为依据,因此我选择做电力系统三相短路的计算程序更有意义。1.2方案论证本课程设计根据电力系统分析课程中所讲的基于节点方程的三相短路计算的原理和方法,编程实现了三相短路计算。本程序输入含有网络拓扑信息和电器元件的参数,输出三相短路的短路电流和短路后网络各节点的电压参数和各支路的电流参数,并以文件的形式保存,方便用户的读取、打印,实现了设计的要求。对于编程语言的选择有很多种,目前比较流行的是C语言和MATLAB两种,因为这两种语言相对较简单,而MATLAB作为专门的数学软件又更具简介性和直观性,是一种基于解释的语言,目标在于用户方便,开发简单,但编译器则承担了更大重任,因此程序执行效率方面也有损失。VB语言是目前世界上最为流行使用最为广泛的面向对象设计语言用他来设计界面,很多软件的界面都使用VB编写的,能起到美化界面的作用,就我个人而言,我学过VB课程,相对于其他语言来说,VB的运用更为熟悉和了解,因此,在本课程设计中我选择VB语言进行界面的美化,MATLAB在后台调用函数对电力系统对称短路计算,从而实现VB和MATLAB联合编程。信息工程学院课程设计(论文)22设计思路2.1项目分析电力系统短路电流的实际工程计算中,许多实际问题的解决并不需要十分精确地结果,因此采用近似计算法,在建立系统节点方程时,采用网络模型和参数做简化处理,等值电路的制定通常将发电机作为含源支路,表示为节点注入电流源和节点电抗的形式,系统中存在同步发电机时,按发电机支路处理,同时忽略发电机、变压器和输电线路的电阻,不计线路的电容,略去变压器的励磁电流,负荷忽略不计,在标幺参数计算时,选取各级平均额定电压作为基准电压,忽略元件的额定电压和平局电压的差别,认为变压器变比的标幺值为1,假定所有的发电机的电势具有相同的相位,所有的元件仅用电抗表示,避免复数运算。本课程设计的关键部分是利用系统节点导纳矩阵形成节点阻抗矩阵,本程序采用LDU分解法,然后利用节点导纳矩阵和阻抗矩阵的乘积为单位矩阵列些方程,节点导纳矩阵经LDU分解后,回代求解系统阻抗矩阵。利用节点阻抗矩阵进行短路计算,首先利用故障前的节点注入电流和系统节点阻抗矩阵求取故障前系统的各节点电压,然后利用金属短路时短路点残压为0、对地点电阻为0,计算短路点电流,最后利用故障前节点电压、节点阻抗和短路点电流求得短路后各节点电压和各支路电流。应用计算机进行电力系统计算,首先要建立电力系统相应的数学模型,如建立电力系统等效网络和节点方程,其次是运用合理的计算方法计算结果,如三角分解发,LDU分解法等,第三则是选择合适的计算机语言编制计算程序,实现程序的准确性,提高精确度。本设计利用节点方程来实现电力系统三相短路计算。首先,根据给定的电力系统运行方式制定系统的一相等值网络,计算出各元器件的参数,其次根据网络方程利用变压器和线路参数形成不含发电机和负荷的节点导纳矩阵Y,然后利用系统形成的节点导纳矩阵求解系统阻抗矩阵Z,最后应用节点阻抗矩阵计算短路电流。信息工程学院课程设计(论文)32.2总流程图程序的总流程图如图2-1所示。信息工程学院课程设计(论文)43详细设计3.1VB界面制作详细程序Dimn%Dimf%Dimz_data()AsDoubleDimcnt%PrivateSubcmmd1_Click()n=Val(Text1.Text)f=Val(Text2.Text)Ifn0Andf0Thencmmd1.Enabled=FalseCmmd3.Enabled=TrueLab1.Caption=总共&Str(n)&个节点&Space(5)&当前输入&Str(cnt)&个EndIfReDimz_data(n,n)'重定义大小EndSubPrivateSubcmmd2_Click()n=0f=0Text1.Text=Text2.Text=Text3.Text=cmmd1.Enabled=TrueCmmd3.Enabled=FalseCmmd4.Visible=FalseLab1.Caption=Pic.ClsPic.Cls信息工程学院课程设计(论文)5EndSubPrivateSubCmmd3_Click()DimI%If(cntn)ThenForI=0Ton-1z_data(cnt,I)=Val(Split(Text3.Text,,)(I))NextEndIfcnt=cnt+1Lab1.Caption=总共&Str(n)&个节点&Space(5)&当前输入&Str(cnt)&个If(cnt=n)Thencmmd1.Enabled=Falsecmmd2.Enabled=FalseCmmd4.Visible=Truecnt=0Text3.Text=EndIfEndSubPrivateSubCmmd4_Click()DimYAsVariantDimI1AsVariantDimIAsVariantDimXAsIntegerDimjAsIntegerDimqiuAsNewcurrent_c.currentDimtempAsDoubleCallqiu.curren_cat(3,Y,I1,I,n,f,z_data)Pic.PrintPic.Print导纳矩阵:信息工程学院课程设计(论文)6DimstroutAsStringDimsAsStringForX=1TonForj=1Tontemp=Round(Y(X,j),4)s=Str(temp)IfAbs(temp)1Andtemp0Thens=Str(Abs(temp))Iftemp0Thens=0&Trim(s)Elses=-0&Trim(s)EndIfEndIfPic.Prints,NextjPic.Prints=NextXPic.PrintPic.Print各支路电流:Pic.PrintForX=1TonForj=1Tontemp=Round(I(X,j),4)s=Str(temp)IfAbs(temp)1Andtemp0Thens=Str(Abs(temp))Iftemp0Thens=0&Trim(s)Elses=-0&Trim(s)EndIfEndIfPic.Prints,NextjPic.Prints=NextXPic.Printstrout=Chr(10)&Str(Round(I1,4))信息工程学院课程设计(论文)7Pic.Print短路点电流:,stroutCmmd4.Enabled=Falsecmmd2.Enabled=TrueEndSubPrivateSubCommand1_Click()DimstraAsStringDimY%Dimd%Dimtemp()AsStringDimtdata()AsDoubleWithCommonDialog1.CancelError=True.InitDir=App.Path'予设存档路径.Filter=文档文件(*.txt)|*.txt.ShowSave'或commonDialog1.Action=2保存文件EndWithOpenCommonDialog1.FileNameForInputAs#1stra=StrConv(InputB$(LOF(1),#1),vbUnicode)Close#1temp=Split(stra,,)ReDimtdata(UBound(temp))ForY=0ToUBound(temp)tdata(Y)=Val(temp(Y))Nextn=tdata(0)f=tdata(1)Text1.Text=nText2.Text=fForY=2ToUBound(tdata)tdata(Y-2)=tdata(Y)NextReDimz_data(n,n)信息工程学院课程设计(论文)8ForY=0Ton-1Ford=0Ton-1z_data(Y,d)=tdata(Y*n+d)NextNextCmmd4.Enabled=TrueCmmd4.Visible=Truecmmd1.Enabled=FalseEndSubPrivateSubForm_Load()Cmmd3.Enabled=FalseCmmd4.Visible=Falsecnt=0EndSubPrivateSubText1_KeyPress(KeyAsciiAsInteger)IfKeyAsciiAsc(0)OrKeyAsciiAsc(9)ThenKeyAscii=0En
本文标题:基于Visual Basic和MATLAB联合编成的电力系统课程设计
链接地址:https://www.777doc.com/doc-57853 .html