电力系统导论实验报告 2.docx
《电力系统导论实验报告 2.docx》由会员分享,可在线阅读,更多相关《电力系统导论实验报告 2.docx(21页珍藏版)》请在冰豆网上搜索。
电力系统导论实验报告2
实验报告
实验课程:
电力系统导论(双语)
学生姓名:
学号:
专业班级:
电力系统及其自动化111班
Content
1、BusAdmittanceMatrix
2、BusImpedanceMatrix
3、Newton-RaphsionPowerFlow
BusAdmittanceMatrix
1.Objective
•TowriteasimpleprograminMATLAB®forthealgorithmofbusadmittancematrix.
2.SystemRequirement
ComputerwithMATLAB®6oraboveinstalled.
3.Procedure
1.0LaunchtheMATLABprogram.
2.0GotoFILENEWM-file.
3.0WriteafunctionY=The_Node_Admittance_Matrix(TopoStructureAndBranchPara)fortheformationofthebusadmittancematrix.
4.0TopoStructureAndBranchParaisthetransmissionline,cableandtransformerinputdataandcontainsfivecolumnsparameters.Thefirsttwocolumnsarethelinebusnumbersandtheremainingcolumnscontainthelineresistanceandreactanceinper-unitandtransformertapratioorcapacitoroftransmissionline.
5.0Thefunctionshouldreturnthebusadmittancematrix.
4.Exercises
Usethewrittenfunction,Y=The_Node_Admittance_Matrix(TopoStructureAndBranchPara)toobtaintheYbusofthefollowingpowersystemnetwork:
Q1.YouarerequiredtowritetheYbustopologicalstructureandparameterintoatextfile.(Hint:
usethematlabtextcompilertowritedownthetable1data,usingthecommatoseparatetheparameters,andsaveitusethenameof4_Power_System_Data.dbf)
Q2.Youarerequiredtowriteouttheprogramflowfigureofforminganodaladmittancematrix.
Hint.YouarerequiredtocompileaprogramtoformtheYbusMatrix,thefollowingprogramisareferenceprogramtoyou.
Figure:
One-linediagramofpowersystem
Forexample,fromthetextbook“powersystemanalysis”No.2edition3onpage61~62
Table1:
TransformerandtransmissssionLinedata
FromBus#
ToBus#
R(p.u)
X(p.u)
B(p.u)orratioK
Others
1
2
0.1
0.4
j0.01528
1
3
0
0.3
1.1
1
4
0.12
0.5
j0.01920
2
4
0.08
0.40
J0.01413
NodalAdmittanceMatrix =
1.0421 - 8.2429i -0.5882 + 2.3529i 0 + 3.6667i -0.4539 + 1.8911i
-0.5882 + 2.3529i 1.0690 - 4.7274i 0 0
0 + 3.6667i 0 0 - 3.3333i 0
-0.4539 + 1.8911i 0 0 0.9346 - 4.2616i
5.Theflowchart
Figure:
TheflowchartofFormingNodalAdmittanceMatrix
MATLABprogram
%functionOutPut=The_Node_Admittance_Matrix(handles)
%isasubroutineofPowerSystemCalculation
functionOutPut=The_Node_Admittance_Matrix(handles)
%thefollowingprogramisopenadatafileandgettheNumberof
%NodeandBranchdatatoformanodaladdmittancematrix
%thefollowingcodeisopenafileandreadthedataofpowersystemnetwork
[fname,pname]=uigetfile('*.dbf','Selectthenetworkparametredata-file');
TopoStructureAndBranchPara=csvread(fname);
[NumberOfBranch,NumberOfPara]=size(TopoStructureAndBranchPara);
Temporary1=max(TopoStructureAndBranchPara(:
1));
Temporary2=max(TopoStructureAndBranchPara(:
2));
ifTemporary1>Temporary2
NumberOfNode=Temporary1;
else
NumberOfNode=Temporary2;
end
%ThefollowingprogramistoformtheNodalAdmittanceMatrix
%andtheTopologicstructureandBranchParametresarearranged
%I,J,R,X,C/K,andpayattentiontotheinpedenceoftransformerisinthe
%sideofNodeJandtheratiooftransformer1:
KisinthesideofNodeI
forCircleNumber1=1:
NumberOfBranch
forCircleNumber2=1:
NumberOfBranch
NodalAdmittanceMatrix(CircleNumber1,CircleNumber2)=0;
end
end
forCircleNumber=1:
NumberOfBranch
ifTopoStructureAndBranchPara(CircleNumber,5)>0.85
NodalAdmittanceMatrix(TopoStructureAndBranchPara(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,1)))=...
NodalAdmittanceMatrix(TopoStructureAndBranchPara(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,1)))+...
TopoStructureAndBranchPara(CircleNumber,5)^2/...
(TopoStructureAndBranchPara(CircleNumber,3)+...
j*TopoStructureAndBranchPara(CircleNumber,4));
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,2),TopoStructureAndBranchPara(CircleNumber,2))=...
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,2),TopoStructureAndBranchPara(CircleNumber,2))+...
1/((TopoStructureAndBranchPara(CircleNumber,3)+j*TopoStructureAndBranchPara(CircleNumber,4)));
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,2))=...
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,2))...
-TopoStructureAndBranchPara(CircleNumber,5)/...
((TopoStructureAndBranchPara(CircleNumber,3)+j*TopoStructureAndBranchPara(CircleNumber,4)));
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,2),TopoStructureAndBranchPara(CircleNumber,1))=...
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,2));
else
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,1))=...
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,1))+...
+1/(TopoStructureAndBranchPara(CircleNumber,3)+...
j*TopoStructureAndBranchPara(CircleNumber,4))+j*TopoStructureAndBranchPara(CircleNumber,5);
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,2),TopoStructureAndBranchPara(CircleNumber,2))=...
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,2),TopoStructureAndBranchPara(CircleNumber,2))+...
+1/(TopoStructureAndBranchPara(CircleNumber,3)+...
j*TopoStructureAndBranchPara(CircleNumber,4))+j*TopoStructureAndBranchPara(CircleNumber,5)
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,2))=...
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,2))...
-1/(TopoStructureAndBranchPara(CircleNumber,3)+...
j*TopoStructureAndBranchPara(CircleNumber,4));
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,2),TopoStructureAndBranchPara(CircleNumber,1))=...
NodalAdmittanceMatrix(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,2));
end
end
BusImpedanceMatrix
1.Objective
•TowriteasimpleprograminMATLAB®forthealgorithmofbusimpedancematrix.
2.SystemRequirement
ComputerwithMATLAB®6oraboveinstalled.
3.Procedure
1.0LaunchtheMATLABprogram.
2.0GotoFILENEWM-file.
3.0WriteafunctionZ=znbus(z)fortheformationofthebusimpedancematrix.
4.0zisthelineinputandcontainsthreecolumns.Thefirsttwocolumnsarethelinebusnumbersandtheremainingcolumnscontainthelineresistanceinper-unit.
5.0Thefunctionshouldreturnthebusimpedancematrix.
4.Exercises
Usethewrittenfunction,Z=znbus(z)toobtaintheYbusofthefollowingpowersystemnetwork:
Example1
Figure3:
One-linediagramofpowersystem
Forexample,fromthetextbook“powersystemanalysis”No.2edition3onpage61~62
Table1:
TransformerandtransmissssionLinedata
FromBus#
ToBus#
R(p.u)
X(p.u)
B(p.u)orratioK
Others
1
2
0.1
0.4
j0.01528
1
3
0
0.3
1.1
1
4
0.12
0.5
j0.01920
2
4
0.08
0.40
J0.01413
Q2.YouarerequiredtowritetheZbusintoatextfile.(Hint:
usethematlabtextcompiler)
Example2
Forthesystemshown,formZbusmatrixusingthebuildingalgorithm
Solution
Alinelist
ApplyKronreductiontoeliminatethelastrow
Hint.YouarerequiredtocompileaprogramtoformtheZbusMatrix.thefollowingprogramisareferenceprogramtoyou.
MATLABprogram
%functionOutPut=The_Node_impedance_Matrix(handles)
%isasubroutineofPowerSystemCalculation
functionOutPut=The_Node_impedance_Matrix(handles)
%thefollowingprogramisopenadatafileandgettheNumberof
%NodeandBranchdatatoformanodalimpedancematrix
%thefollowingcodeisopenafileandreadthedataofpowersystemnetwork
[fname,pname]=uigetfile('*.dbf','Selectthenetworkparametredata-file');
Topo_Structure_And_Branch_Para=csvread(fname);
%gettheelectricpowersystemthenumberofbranchandtheparametreof
%elements
[NumberOfBranch,NumberOfPara]=size(Topo_Structure_And_Branch_Para);
%Temporary1---temporaryvariable1
%Temporary2---temporaryvariable2
Temporary1=max(Topo_Structure_And_Branch_Para(:
1));
Temporary2=max(Topo_Structure_And_Branch_Para(:
2));
ifTemporary1>Temporary2
NumberOfNode=Temporary1;
else
NumberOfNode=Temporary2;
end
%ThefollowingprogramistoformtheNodalimpedanceMatrix
%andtheTopologicstructureandBranchParametresarearranged
%I,J,R,X,C/K,andpayattentiontotheinpedenceoftransformerisinthe
%sideofNodeJandtheratiooftransformer1:
KisinthesideofNode%I
%settheinitialvalueofNodalAdmittanceMatrixtozero
forCircleNumber1=1:
NumberOfNode
forCircleNumber2=1:
NumberOfNode
Nodal_impedance_Matrix(CircleNumber1,CircleNumber2)=0;
end
end
forCircleNumber=1:
NumberOfBranch
ifTopo_Structure_And_Branch_Para(CircleNumber,5)>0.85
Nodal_impedance_Matrix(Topo_Structure_And_Branch_Para(Topo_Structure_And_Branch_Para(CircleNumber,1),Topo_Structure_And_Branch_Para(CircleNumber,1)))=...
Nodal_impedance_Matrix(Topo_Structure_And_Branch_Para(Topo_Structure_And_Branch_Para(CircleNumber,1),Topo_Structure_And_Branch_Para(CircleNumber,1)))+Topo_Structure_And_Branch_Para(CircleNumber,5)^2/(Topo_Structure_And_Branch_Para(CircleNumber,3)+...
j*Topo_Structure_And_Branch_Para(CircleNumber,4));
Nodal_impedance_Matrix(Topo_Structure_And_Branch_Para(CircleNumber,2),Topo_Structure_And_Branch_Para(CircleNumber,2))=...
Nodal_impedance_Matrix(Topo_Structure_And_Branch_Para(CircleNumber,2),Topo_Structure_And_Branch_Para(CircleNum