4.0 TopoStructureAndBranchPara is the transmission line, cable and transformer input data and
contains five columns parameters. The first two columns are the line bus numbers and the remaining columns contain the line resistance and reactance in per-unit and transformer tap ratio or capacitor of transmission line. 5.0 The function should return the bus admittance matrix.
4. Exercises
Use the written function, Y = The_Node_Admittance_Matrix (TopoStructureAndBranchPara) to obtain the Ybus of the following power system network:
Q1. You are required to write the Ybus topological structure and parameter into a text file. (Hint:
use the matlab text compiler to write down the table 1 data, using the comma to separate the parameters, and save it use the name of 4_Power_System_Data.dbf)
Q2. You are required to write out the program flow figure of forming a nodal admittance matrix. Hint. You are required to compile a program to form the Ybus Matrix, the following program is a
reference program to you.
Figure : One-line diagram of power system
For example ,from the textbook “power system analysis” No.2 edition 3 on page 61~62
Table 1:Transformer and transmissssion Line data From Bus# 1 1 1 2 To Bus# 2 3 4 4 R(p.u) 0.1 0 0.12 0.08 X(p.u) 0.4 0.3 0.5 0.40 B(p.u)or ratio K j0.01528 1.1 j0.01920 J0.01413 Others 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
2
0 + 3.6667i 0 0 - 3.3333i 0 -0.4539 + 1.8911i 0 0 0.9346 - 4.2616i
5.The flow chart
Figure : The flow chart of Forming Nodal Admittance Matrix
The program is:
%function OutPut=The_Node_Admittance_Matrix(handles) %is a subroutine of PowerSystemCalculation
function OutPut=The_Node_Admittance_Matrix(handles)
%the following program is open a data file and get the Number of % Node and Branch data to form a nodal addmittance matrix
%the following code is open a file and read the data of power system network [fname,pname] = uigetfile('*.dbf','Select the network parametre data-file'); TopoStructureAndBranchPara= csvread(fname);
[NumberOfBranch,NumberOfPara]=size(TopoStructureAndBranchPara); Temporary1=max(TopoStructureAndBranchPara(:,1)); Temporary2=max(TopoStructureAndBranchPara(:,2)); if Temporary1 > Temporary2
NumberOfNode=Temporary1; else
NumberOfNode=Temporary2; end
%The following program is to form the Nodal Admittance Matrix % and the Topologic structure and Branch Parametres are arranged
% I,J,R,X,C/K, and pay attention to the inpedence of transformer is in the % side of Node J and the ratio of transformer 1:K is in the side of Node I for CircleNumber1=1:NumberOfBranch for CircleNumber2=1:NumberOfBranch
NodalAdmittanceMatrix(CircleNumber1,CircleNumber2)=0; end end
for CircleNumber=1:NumberOfBranch
if TopoStructureAndBranchPara(CircleNumber,5) > 0.85
NodalAdmittanceMatrix(TopoStructureAndBranchPara(TopoStructureAndBranchPara(CircleNumber,1),TopoStructureAndBranchPara(CircleNumber,1)))=...
3
Experiment 2 Bus Impedance Matrix
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);
4
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
The result is: 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
Experiment 2 Bus Impedance Matrix
Experiment 2
Power Grid
Bus Impedance Matrix 1. Objective
? To write a simple program in MATLAB? for the algorithm of bus impedance matrix.
2. System Requirement
Computer with MATLAB? 6 or above installed.
3. Procedure
1.0 Launch the MATLAB program.
2.0 Go to FILE NEW M-file.
6