# Chapter 10 : Protective Equipment and Transmission System Protection¶

## Example 10.1 Page No : 542¶

In [1]:
import math
from numpy import exp

# GIVEN DATA
X_d = 0.14*1j ; # reactancw of generator in pu
E_g = 1*exp(1j*0*math.pi/180) ;
S_B = 25*10**3 ; # voltage in kVA
V_BL_V = 13.8 ; # low voltage in kV

# CALCULATIONS
I_f = E_g/X_d ; # Subtransient fault current in pu
I_BL_V = S_B/( math.sqrt(3)*V_BL_V) ; # Current base for low-voltage side
I_f1 = abs(I_f)*I_BL_V ; # magnitude of fault current in A

# DISPLAY RESULTS
print ("EXAMPLE : 10.1 : SOLUTION :-") ;
print " Subtransient fault current for 3-Φ fault in per units = pu ", ; print I_f ;
print " Subtransient fault current for 3-Φ fault in ampere = %.f A "%(I_f1) ;

EXAMPLE : 10.1 : SOLUTION :-
Subtransient fault current for 3-Φ fault in per units = pu  -7.14285714286j
Subtransient fault current for 3-Φ fault in ampere = 7471 A


## Example 10.2 Page No : 542¶

In [2]:
import math

# GIVEN DATA
# For case (a)
I_f = 7.1428571 ; # Subtransient fault current in pu . Result of exa 10.1

# For case (d)
V_pf = 13800 ; # voltage in V
zeta = 1.4 ;
I_f1 = 7471 ; # magnitude of fault current in A

# CALCULATIONS
# For case (a)
I_fdc_max = math.sqrt(2)*I_f ; # Max dc current in pu

# For case (b)
I_f_max = 2*I_fdc_max ; # Total max insmath.tanmath.taneous current in pu

# For case (c)
I_momt = 1.6*I_f ; # Total rms momentary current

# For case (d)
S_int = math.sqrt(3)*(V_pf)*I_f1*zeta*10**-6 ; # Interrupting rating in MVA

# For case (e)
S_momt = math.sqrt(3)*(V_pf)*I_f1*1.6*10**-6 ; # Momentary duty of CB in MVA

# DISPLAY RESULTS
print ("EXAMPLE : 10.2 : SOLUTION :-") ;
print " a) Maximum possible dc current component , I_fdc_max = %.1f pu "%(I_fdc_max) ;
print " b) Total maximum instantaneous current , I_max = %.1f pu "%(I_f_max) ;
print " c) Momentary current , I_momentary = %.2f pu "%(I_momt) ;
print " d) Interrupting rating of a 2-cycle CB , S_interrupting = %.f MVA "%(S_int) ;
print " e) Momentary duty of a 2-cycle CB , S_momentary = %.2f MVA "%(S_momt) ;

EXAMPLE : 10.2 : SOLUTION :-
a) Maximum possible dc current component , I_fdc_max = 10.1 pu
b) Total maximum instantaneous current , I_max = 20.2 pu
c) Momentary current , I_momentary = 11.43 pu
d) Interrupting rating of a 2-cycle CB , S_interrupting = 250 MVA
e) Momentary duty of a 2-cycle CB , S_momentary = 285.72 MVA


## Example 10.4 Page No : 557¶

In [3]:
import math
from numpy import degrees,arctan2

# GIVEN DATA
z_l = 0.2 + 1j * 0.7 ; # Line impedance in pu
f_l = 0.7 ; # Fault point at a dismath.tance from A in pu
f_m = 1.2 ; # magnitude of fault current in pu
l = 10.3 ; # Line spacing in ft
p = 100 ; # Power in MVA
v = 138 ; # voltage in kV
i = 418.4 ; # current in A
z = 190.4 ; # Impedance in Ω

# CALCULATIONS
# For case (a)
I = f_m * i ; # Current in arc in A
R_arc = 8750 * l/(I**1.4) ; # Arc resistance in Ω
R_arc1 = R_arc/z ; # Arc resistance in pu

# For case (b)
Z_L = z_l * f_l ;
Z_r = Z_L + R_arc1 ; # Impedance seen by the relay in pu

# For case (c)
phi_1 = degrees(arctan2(Z_L.imag,Z_L.real )) ; # Line impedance angle without arc resistance in degree
phi_2 = degrees(arctan2(Z_r.imag,Z_r.real) ) ; # Line impedance angle with arc resistance in degree

# DISPLAY RESULTS
print ("EXAMPLE : 10.4 : SOLUTION :-") ;
print " a) Value of arc resistance at fault point in Ω , R_arc = %.2f Ω "%(R_arc) ;
print "     Value of arc resistance at fault point in pu , R_arc = %.2f pu "%(R_arc1) ;
print " b) Value of line impedance including the arc resistance ( Z_L + R_arc = pu ", ; print Z_r ;
print " c) Line impedance angle without arc resistance , Φ = %.2f degree "%(phi_1) ;
print "     Line impedance angle with arc resistance , Φ = %.2f degree "%(phi_2) ;

EXAMPLE : 10.4 : SOLUTION :-
a) Value of arc resistance at fault point in Ω , R_arc = 14.92 Ω
Value of arc resistance at fault point in pu , R_arc = 0.08 pu
b) Value of line impedance including the arc resistance ( Z_L + R_arc = pu  (0.218360327606+0.49j)
c) Line impedance angle without arc resistance , Φ = 74.05 degree
Line impedance angle with arc resistance , Φ = 65.98 degree


## Example 10.5 Page No : 558¶

In [4]:
%matplotlib inline
import math
from numpy import arange,zeros
from matplotlib.pyplot import subplot,plot,xlabel,ylabel,suptitle,text

T = arange(0,300.01,0.01)
po = zeros(len(T))

for i in range(int(len(T)/1.1)):
po[i] = 4 ;

for i in range(int(len(T)/1.1),len(T)):
po[i] = 5 ;

io = zeros(len(T))
for i in range(int(len(T)/1.1)):
io[i] = 4 ;

for i in range(int(len(T)/1.1),len(T)):
io[i] = 3 ;

subplot(2,1,1) ; # To plot 2 graph in same graphic window
plot(T,po)#,3,'012','',[0, 0, 310, 7]) ;
plot(T,io)#,3,'012','',[0, 0, 310, 7]) ;
suptitle("Fig 10.5 (a)   Zones of protection for relay R_12") ;
text(25,3.8,'[]') ;
text(45,4.2,'(1)') ;
plot(45,4,'+') ;
text(60,3.8,'[]') ;
text(60,4.2,'B_12') ;
text(120,3.8,'[]') ;
text(120,4.2,'B_21') ;
text(140,4.2,'(2)') ;
plot(140,4,'+') ;
text(155,3.8,'[]') ;
text(155,4.2,'B_23') ;
text(220,3.8,'[]') ;
text(220,4.2,'B_32') ;
text(270,5.0,'(3)') ;
text(285,2.8,'[]') ;
text(285,3.2,'B_35') ;
text(285,4.8,'[]') ;
text(285,5.2,'B_34') ;
text(85,3.4,'TL_12') ;
text(180,3.4,'TL_23') ;
text(60,3,'ZONE 1') ;
text(100,2,'ZONE 2') ;
text(190,1,'ZONE 3') ;

# For case (b)
vo = zeros(len(T))
for i in range(int(len(T)/4)):
vo[i] = 0.5;

for i in range(int(len(T)/4),len(T/1.7)):
vo[i] = 2;

for i in range(int(len(T)/1.7),len(T)):
vo[i] = 4

uo = zeros(len(T))
for i in range(int(len(T)/2.14),len(T/1.35)):  # plotting Voltage values
uo[i] = 0.5;

for i in range(int(len(T)/1.35),len(T)):
uo[i] = 2;

subplot(2,1,2)
plot(T,vo)#,2,'012','',[0, 0, 310, 7]) ;
plot(T,uo)#,2,'012','',[0 ,0 ,310, 7]) ;
ylabel("OPERATING TIME") ;
xlabel("IMPEDANCE") ;
suptitle("Fig 10.5 (b) Coordination of dismath.tance relays , Operating time v/s Impedance") ;
text(0.1,0.3,'T_1') ;
text(30,0.6,'R_12') ;
text(58,1.3,'T_2') ;
text(100,2.0,'R_12') ;
text(160,3.0,'T_3') ;
text(230,4.0,'R_12') ;
text(160,0.6,'R_23') ;
text(260,2.1,'R_23') ;

# DISPLAY RESULTS
print ("EXAMPLE : 10.5 : SOLUTION :-") ;
print " a The zone of protection for relay R_12 is shown in Fig 10.5 a " ;
print "  ZONE 1 lies b/w 1 & B_21 " ;
print "  ZONE 2 lies b/w 1 & TL_23 " ;
print "  ZONE 3 lies after 1 " ;
print " b The coordination of the distance relays R_12 & R_21 in terms of Operating time v/s Impedance is shown in Fig 10.5 b" ;

EXAMPLE : 10.5 : SOLUTION :-
a The zone of protection for relay R_12 is shown in Fig 10.5 a
ZONE 1 lies b/w 1 & B_21
ZONE 2 lies b/w 1 & TL_23
ZONE 3 lies after 1
b The coordination of the distance relays R_12 & R_21 in terms of Operating time v/s Impedance is shown in Fig 10.5 b


## Example 10.6 Page No : 560¶

In [5]:
import math

# GIVEN DATA
kv = 230 * 10**3 ; # transmission system voltage in V
VA = 100 * 10**6 ; # Maximum peak load supplied by TL_12 in VA
ZTL_12 = 2 + 1j * 20 ; # Positive-sequence impedances of line TL_12
ZTL_23 = 2.5 + 1j * 25 ; # Positive-sequence impedances of line TL_23
pf = 0.9 ; # Lagging pf

# CALCULATIONS
# For case (a)
I_max = VA/(math.sqrt(3)*kv) ; # Maximum load current in A

# For case (b)
CT = 250/5 ; # CT ratio which gives about 5A in secondary winding under the maximum loading

# For case (c)
vr = 69 ; # selecting Secondary voltage of 69 V line to neutral
VT = (kv/math.sqrt(3))/vr ; # Voltage ratio

# For case (d)
Z_r = CT/VT ; # impedance measured by relay . Z_r = (V/VT)/(I/CT)
Z_TL_12 = Z_r * ZTL_12 ; # Impedance of lines TL_12 as seen by relay
Z_TL_23 = Z_r * ZTL_23 ; # Impedance of lines TL_23 as seen by relay

# For case (e)
Z_load = vr * CT * (pf + 1j*math.sin(math.radians(math.acos(pf))))/(I_max) ; # Load impedance based on secondary ohms

# For case (f)
Z_r1 = 0.80 * Z_TL_12 ; # Zone 1 setting of relay R_12

# For case (g)
Z_r2 = 1.20 * Z_TL_12 ; # Zone 2 setting of relay R_12

# For case (h)
Z_r3 = Z_TL_12 + 1.20*(Z_TL_23) ; # Zone 3 setting of relay R_12

# DISPLAY RESULTS
print ("EXAMPLE : 10.6 : SOLUTION :-") ;
print " a) Maximum load current , I_max = %.2f A "%(I_max) ;
print " b) CT ratio , CT = %.1f "%(CT) ;
print " c) VT ratio , VT = %.1f "%(VT) ;
print " d) Impedance measured by relay  = %.3f Z_line "%(Z_r) ;
print " e) Load impedance based on secondary ohms ( Z_load = Ωsecondary) ", ; print Z_load ;
print " f) Zone 1 setting of relay R_12 , Z_r = Ωsecondary) " ; print Z_r1 ;
print " g) Zone 2 setting of relay R_12 , Z_r = Ωsecondary) " ; print Z_r2 ;
print " h) Zone 3 setting of relay R_12 , Z_r = Ωsecondary) " ; print Z_r3 ;

EXAMPLE : 10.6 : SOLUTION :-
a) Maximum load current , I_max = 251.02 A
b) CT ratio , CT = 50.0
c) VT ratio , VT = 1924.5
d) Impedance measured by relay  = 0.026 Z_line
e) Load impedance based on secondary ohms ( Z_load = Ωsecondary)  (12.3694408423+0.108188923746j)
f) Zone 1 setting of relay R_12 , Z_r = Ωsecondary)
(0.0415692193817+0.415692193817j)
g) Zone 2 setting of relay R_12 , Z_r = Ωsecondary)
(0.0623538290725+0.623538290725j)
h) Zone 3 setting of relay R_12 , Z_r = Ωsecondary)
(0.129903810568+1.29903810568j)


## Example 10.7 Page No : 561¶

In [8]:
import math

# GIVEN DATA
Z_r1 = 0.0415692 + 1j*0.4156922 ; # Required zone 1 setting . From result of exa 10.6
Z_r2 = 0.0623538 + 1j*0.6235383 ; # Required zone 2 setting . From result of exa 10.6
Z_r3 = 0.1299038 + 1j*1.2990381 ; # Required zone 3 setting . From result of exa 10.6

# CALCULATIONS
# For case (a)
theta1 = degrees(arctan2(Z_r1.imag,Z_r1.real)) ;
Z_1 = abs(Z_r1)/math.cos(math.radians(theta1 - 30)) ; # Zone 1 setting of mho relay R_12

# For case (b)
theta2 = degrees(arctan2(Z_r2.imag,Z_r2.real)) ;
Z_2 = abs(Z_r2)/math.cos(math.radians(theta2 - 30)) ; # Zone 2 setting of mho relay R_12

# For case (b)
theta3 = degrees(arctan2(Z_r3.imag,Z_r3.real)) ;
Z_3 = abs(Z_r3)/math.cos(math.radians(theta3 - 30)) ; # Zone 3 setting of mho relay R_12

# DISPLAY RESULTS
print ("EXAMPLE : 10.7 : SOLUTION :-") ;
print " a) Zone 1 setting of mho relay R_12 = %.4f Ωsecondary "%(Z_1) ;
print " b) Zone 2 setting of mho relay R_12 = %.4f Ωsecondary "%(Z_2) ;
print " c) Zone 3 setting of mho relay R_12 = %.4f Ωsecondary "%(Z_3) ;

EXAMPLE : 10.7 : SOLUTION :-
a) Zone 1 setting of mho relay R_12 = 0.7157 Ωsecondary
b) Zone 2 setting of mho relay R_12 = 1.0736 Ωsecondary
c) Zone 3 setting of mho relay R_12 = 2.2367 Ωsecondary