Sunteți pe pagina 1din 11

SHANTILAL SHAH ENGINEERING COLLEGE

Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

Aim: Prepare Linknet structure for given Network & find out the primary &
Back-up relay pairs.

Figure: Power system network

P a g e | 2.1

SHANTILAL SHAH ENGINEERING COLLEGE


Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

Figure: Algorithm for preparing Linknet Structure for any network

P a g e | 2.2

SHANTILAL SHAH ENGINEERING COLLEGE


Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

Here is the MATLAB Program to find out Linknet structure for any Network of Power
system.
% THIS PROGRAM IS FOR MAKING LINKNET STRUCTURE OF GIVEN NETWORK
clc, clear all,
% TO CLEAR SCREEN & ALL VARIABLES
B=input('No of branch=');
% NO. OF BRANCHES OF NETWORK
a=1; b=2;
% Node A & B - Numeric equivalent
Node=zeros(2,B);
% NODE MATRIX = NULL MATRIX
End=zeros(2,B);
% END MATRIX = NULL MATRIX
List=zeros(2,B);
% LIST MATRIX = NULL MATRIX
Far=zeros(2,B);
% FAR MATRIX = NULL MATRIX
Next=zeros(2,B);
% NEXT MATRIX = NULL MATRIX
%==========LOOP FOR GIVING NODE(A) & NODE(B) OF BRANCHES============
for l=1:1:B;
fprintf('Enter Node A of branch %d =',l);
Node(a,l)=input('');
End(a,l)=(l*2-1);
fprintf('Enter Node B of branch %d =',l);
Node(b,l)=input('');
End(b,l)=(l*2);
end
%==========LOOP FOR FIND OUT END(A) & END(B) OF BRANCHES============
for l=1:1:B;
End(a,l)=(l*2-1);
% END(A)=(2*BRANCH)-1
List(a,l)=End(a,l);
End(b,l)=(l*2);
% END(B)=(2*BRANCH)
List(b,l)=End(b,l);
end
%==========LOOP FOR FIND OUT FAR(END) OF BRANCHES============
for l=1:1:B;
Far(a,l)=Node(b,l);
% FAR(END(A))=NODE(B)
Far(b,l)=Node(a,l);
% FAR(END(B))=NODE(A)
end
%==========LOOP FOR FIND OUT NEXT(END)=LIST(NODE) OF BRANCHES============
for l=1:1:B;
if l==1;
% IF FIRST BRANCH, THEN ENTER IN LOOP
Next(a,l)=0;
% NEXT(END(A))=0 FOR FIRST BRANCH
Next(b,l)=0;
% NEXT(END(B))=0 FOR FIRST BRANCH
elseif l>0;
% IF BRANCH IS NON-ZERO, THEN ENTER IN LOOP
%==========FOR FINDING NEXT(A) OF ALL BRANCHES===============
x=l;
% TAKIN x=l AS VARIABLE
while (x>1)
% EVALUATE LOOP TILL FOR x>1 & LOOP END IF x=0
if Node(a,l)==Node((b),(x-1)) % EVALUATE LOOP, IF NODE(A) OF
BRANCH (l) IS EQUAL TO NODE(B) OF BRANCH(x-1)
Next(a,l)=End((b),(x-1));
% NEXT(A) OF BRANCH (l) IS EQUAL
TO END(B) OF BRANCH(x-1)
elseif Node(a,l)==Node(a,(x-1)) % EVALUATE LOOP, IF NODE(A) OF
BRANCH (l) IS EQUAL TO NODE(A) OF BRANCH(x-1)
Next(a,l)=End(a,(x-1)); % NEXT(A) OF BRANCH (l) IS EQUAL
TO END(A) OF BRANCH(x-1)
end
if Next(a,l)==0 % EVALUATE LOOP,IF NEXT(A) OF BRANCH(l) IS EQUAL
TO ZERO
x=x-1;
else
x=0;
end
end

P a g e | 2.3

SHANTILAL SHAH ENGINEERING COLLEGE


Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

P a g e | 2.4

SHANTILAL SHAH ENGINEERING COLLEGE


Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

%==========FOR FINDING NEXT(B) OF ALL BRANCHES===============


y=l;
% TAKIN y=l AS VARIABLE
while (y>1)
% EVALUATE LOOP TILL FOR y>1 & LOOP END IF y=0
if Node(b,l)==Node((a),y)
% EVALUATE LOOP, IF NODE(B) OF
BRANCH (l) IS EQUAL TO NODE(A) OF BRANCH(y)
Next(b,l)=End((a),y);
% NEXT(B) OF BRANCH (l) IS EQUAL
TO END(A) OF BRANCH(y)
elseif Node(b,l)==Node(b,(y-1)) % EVALUATE LOOP, IF NODE(B) OF
BRANCH (l) IS EQUAL TO NODE(B) OF BRANCH(y-1)
Next(b,l)=End(b,(y-1)); % NEXT(B) OF BRANCH (l) IS EQUAL
TO END(B) OF BRANCH(y-1)
End
if Next(b,l)==0 % EVALUATE LOOP,IF NEXT(B) OF BRANCH(l) IS EQUAL
TO ZERO
y=y-1;
else
y=0;
end
end
end
end
% ALL VARIABLE ARE STORED AS FOLLOW
% B = NO. OF BRANCHs
% Node(A,l) = NODE(A) OF BRANCH(l)
% End(A,l) = NODE(A) OF BRANCH(l)
% List(A,l) = NODE(A) OF BRANCH(l)
% Next(A,l) = NODE(A) OF BRANCH(l)
% Far(A,l) = NODE(A) OF BRANCH(l)

P a g e | 2.5

SHANTILAL SHAH ENGINEERING COLLEGE


Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

Figure: Algorithm to find out Primary-Backup relay Pairs.


P a g e | 2.6

SHANTILAL SHAH ENGINEERING COLLEGE


Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

P a g e | 2.7

SHANTILAL SHAH ENGINEERING COLLEGE


Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

Here is the Matlab Program to find out Primary / Back-up relay pairs of given network
from Linknet Structure.
relay=B*2;
% No. OF RELAY
NodeR=zeros(1,relay);
% NODE(RELAY) MATRIX = NULL MATRIX
FarR=zeros(1,relay);
% FAR(RELAY) MATRIX = NULL MATRIX
NextR=zeros(1,relay);
% NEXT(RELAY) MATRIX = NULL MATRIX
EndR=zeros(1,relay);
% END(RELAY) MATRIX = NULL MATRIX
ListR=zeros(1,relay);
% LIST(RELAY) MATRIX = NULL MATRIX
ListD=zeros(1,relay);
BranchR=zeros(1,relay);
% BRANCH(RELAY) MATRIX = NULL MATRIX
% AS WE KNOW, WE GET "BRANCH","END","LIST","NODE","FAR" & "NEXT" MATRIXs OF SIZE
(2 x No. branch).
% BUT FOR SIMPLICITY OF CALCULATION WE REQUIRE IT AS RAW MATRIX
% OF (1 x (2*No. branches))
% SO "BranchR","EndR","ListR","NodeR","FarR" & "NextR" ARE REQUIRED MATRIX.
%=========="BranchR"==========
for i=1:1:B;
BranchR(2*i-1)=i;
BranchR(2*i)=i;
end
%=========="EndR"==========
for i=1:1:B;
EndR(2*i-1)=End(1,i);
EndR(2*i)=End(2,i);
end
%=========="ListD"==========
for i=1:1:B;
ListD(2*i-1)=List(1,i);
ListD(2*i)=List(2,i);
end
%=========="NodeR"==========
for i=1:1:B;
NodeR(2*i-1)=Node(1,i);
NodeR(2*i)=Node(2,i);
end
%=========="FarR"==========
for i=1:1:B;
FarR(2*i-1)=Far(1,i);
FarR(2*i)=Far(2,i);
end
%=========="NextR"==========
for i=1:1:B;
NextR(2*i-1)=Next(1,i);
NextR(2*i)=Next(2,i);
end

P a g e | 2.8

SHANTILAL SHAH ENGINEERING COLLEGE


Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

% FIND THE LIST OF RELAY


y=max(NodeR);
% TAKIN VARIABLE y = MAXIMUM OF VALUE OF "NodeR"
for i=1:1:y;
% TAKING LOOP FROM 1 TO y IN STEP OF 1.
for NR=1:1:B;
% TAKIN VARIABLE NR= 1 TO No. BRANCH
% LOGIC TO CONVERT "LIST" MATRIX OF (2 x NO. OF BRANCH) IN TO ROW MATRIX OF
% (1 x NO. OF RELAYS)
if Node(1,NR)==i
ListR(i)= List(1,NR);
elseif Node(2,NR)==i
ListR(i)= List(2,NR);
end
end
end
% FOR FIND OUT PRIMARY/BACK-UP RELAY PARIS
RBU=null(relay,relay);
% RBU = null MATRIX
IF=zeros(1,relay);
% IF = ZERO MATRIX
IN=zeros(1,relay);
% IN = ZERO MATRIX
IT=zeros(1,relay);
% IT = ZERO MATRIX
IFLT=zeros(1,relay);
% IFLT = ZERO MATRIX
IB=zeros(1,relay);
% IB = ZERO MATRIX
IS=zeros(1,relay);
% IS = ZERO MATRIX
% TO FIND OUT, IS THE RELAY ODD OR EVEN?
for R=1:1:relay;
rr=R;
while (rr>2)
if rr>2
rr=rr-2;
end
end
if rr-1==0
% IF RELAY = OOD, EVALUATE LOOP
IT(R)=R+1;
% IT = RELAY + 1
IFLT(R)=FarR(R);
% IFLT = FAR(RELAY)
IB(R)=ListR(IFLT(R));
% IB = LIST(IFLT)
IS(R)=FarR(IT(R));
% IS = FAR(IT)
elseif rr-2==0
% IF RELAY = EVEN, EVALUATE LOOP
IT(R)=R-1;
% IT = RELAY - 1
IFLT(R)=FarR(R);
% IFLT = FAR(RELAY)
IB(R)=ListR(IFLT(R));
% IB = LIST(IFLT)
IS(R)=FarR(IT(R));
% IS = FAR(IT)
end
rbu=1;
% TAKING RBU=1 AS INITIAL VALUE
v=relay-1;
% TAKING VARIABLE v = relay - 1
while(v>0)
% EVALUATE LOOP IF v > O
IF(R)=FarR(IB(R));
% IF = FAR(IB)
IN(R)=NextR(IB(R));
% IN = NEXT(IB)

P a g e | 2.9

SHANTILAL SHAH ENGINEERING COLLEGE


Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

% CHECK FOR "IF=IS" & "IN=O" & "IB=IT"


if IF(R)==IS(R) && IN(R)==0 && IB(R)==IT(R) % EVALUATE LOOP,IF YES.
v=v-v;
else
% EVALUATE LOOP,IF NO.
if IF(R)==IS(R)
% CHECK "IF=IS", IF YES THEN EVALUATE LOOP.
if IB(R)==IT(R)
% CHECK "IB=IT", IF YES THEN EVALUATE LOOP.
if IN(R)==0
% CHECK "IN=0", IF YES THEN EVALUATE LOOP.
v=v-v;
else
IB(R)=IN(R);
% IF "IN~=0", THEN EVALUATE LOOP.
v=v-1;
end
else
% IF "IB~=IT", THEN EVALUATE LOOP.
RBU(R,rbu)=IB(R);
% BACK-UP RELAY = IB
rbu=rbu+1;
% INCREAMENT BACK-UP RELAY COUNT
if IN(R)==0
% IF "IB~=IT" & "IN=0", THEN EVALUATE LOOP.
v=v-v;
else
% IF "IB~=IT" & "IN~=0", THEN EVALUATE LOOP.
IB(R)=IN(R);
% IB = IN
v=v-1;
end
end
else
% IF "IF~=IS", THEN EVALUATE LOOP.
RBU(R,rbu)=IB(R);
% BACK-UP RELAY = IB
rbu=rbu+1;
% INCREAMENT BACK-UP RELAY COUNT
if IN(R)==0
% IF "IF~=IS" & "IN=0", THEN EVALUATE LOOP.
v=v-v;
else
% IF "IF~=IS" & "IN~=0", THEN EVALUATE LOOP.
IB(R)=IN(R);
% IB = IN
v=v-1;
end
end
end
end
end
% DISPLY LINKNET STRUCTURE & PRI/BACKUP RELAY PAIR ON COMMAND WINDOW
fprintf(' LINKNET STRUCTURE FOR GIVE NETWORK \n');
fprintf(' """""""""""""""""""""""""""""""""" \n');
fprintf(' Branch Node End
Next List Far \n');
datasave=[(BranchR')
(NodeR') (EndR') (NextR')
(ListD')
(FarR')];
disp(datasave)
fprintf(' PRIMARY / BACK-UP RELAY PAIRS IF GIVEN NETWORK \n');
fprintf(' """""""""""""""""""""""""""""""""""""""""""""" \n');
fprintf(' backup 1st
2nd
3rd
4th
5th
6th
7th
8th \n');
fprintf('
pri \n');
datasave=[(EndR') (RBU)];
disp(datasave)

P a g e | 2.10

SHANTILAL SHAH ENGINEERING COLLEGE


Subject:- Modern Power System Protection

Department:- ELECTRICAL ENGINEERING

Specialization : Power System (M.E. 1st )(2012-13)

Experiment No. : 2 (Relay co-ordination & Linknet)

Input:
No of
Enter
Enter
Enter
Enter
Enter
Enter
Enter
Enter
Enter
Enter
Enter
Enter

branch=6
Node A of
Node B of
Node A of
Node B of
Node A of
Node B of
Node A of
Node B of
Node A of
Node B of
Node A of
Node B of

branch
branch
branch
branch
branch
branch
branch
branch
branch
branch
branch
branch

1
1
2
2
3
3
4
4
5
5
6
6

=1
=2
=1
=2
=1
=3
=2
=4
=3
=5
=3
=5

Output :
LINKNET STRUCTURE FOR GIVE NETWORK
""""""""""""""""""""""""""""""""""
Branch Node
End
Next List Far
1
1
1
0
1
2
1
2
2
0
2
1
2
1
3
1
3
2
2
2
4
2
4
1
3
1
5
3
5
3
3
3
6
0
6
1
4
2
7
4
7
4
4
4
8
0
8
2
5
3
9
6
9
5
5
5
10
0
10
3
6
3
11
9
11
5
6
5
12
10
12
3
PRIMARY / BACK-UP RELAY PAIRS IF GIVEN NETWORK
""""""""""""""""""""""""""""""""""""""""""""""
backup 1st
2nd
3rd
4th
5th
6th
7th
pri
1
7
4
2
5
3
3
7
2
4
5
1
5
11
9
6
3
1
7
0
0
8
4
2
9
12
0
10
11
6
11
10
0
12
9
6

8th

P a g e | 2.11

S-ar putea să vă placă și