# Chapter 09 : AC Voltage Controllers¶

## Example 9.1, Page No 560¶

In [1]:
import math
#initialisation of variables
V_s=230.0
V_m=math.sqrt(2)*V_s
a=45.0

#Calculations
R=20
I_or=V_or/R
P_o=I_or**2*R
I_s=I_or
VA=V_s*I_s
pf=P_o/VA
I_ON=V_o/R

#Results
print("rms value of o/p voltage=%.3f V" %V_or)
print("i/p pf=%.4f" %pf)
print("avg i/p current=%.4f A" %I_ON)

rms value of o/p voltage=224.716 V
i/p pf=0.9770
avg i/p current=-0.7581 A


## Example 9.2, Page No 560¶

In [2]:
import math
#initialisation of variables
V_s=230.0
V_m=math.sqrt(2)*V_s
a=45.0

#Calculations
R=20
I_or=V_or/R
P_o=I_or**2*R
I_s=I_or
VA=V_s*I_s
pf=P_o/VA

#Results
print("rms value of o/p voltage=%.3f V" %V_or)
print("i/p pf=%.2f" %pf)
print("avg thyristor current=%.2f A" %I_TA)
print("rms value of thyristor current=%.2f A" %I_Tr)

rms value of o/p voltage=219.304 V
i/p pf=0.95
avg thyristor current=4.42 A
rms value of thyristor current=7.75 A


## Example 9.3 Page No 564¶

In [3]:
import math
#initialisation of variables
V_s=230.0
n=6.0 #on cycles
m=4.0 #off cycles

#Calculations
k=n/(n+m)
V_or=V_s*math.sqrt(k)
pf=math.sqrt(k)
R=15
I_m=V_s*math.sqrt(2)/R
I_TA=k*I_m/math.pi
I_TR=I_m*math.sqrt(k)/2

#Results
print("rms value of o/ voltage=%.2f V" %V_or)
print("i/p pf=%.2f" %pf)
print("avg thyristor current=%.2f A" %I_TA)
print("rms value of thyristor current=%.2f A" %I_TR)

rms value of o/ voltage=178.16 V
i/p pf=0.77
avg thyristor current=4.14 A
rms value of thyristor current=8.40 A


## Example 9.4, Page No 569¶

In [4]:
import math
#initialisation of variables
V_s=230.0
V_m=math.sqrt(2)*V_s
R=3.0

#Calculations
I_TAM1=2*V_m/(2*math.pi*R)
I_TRM2=V_m/(2*R)
f=50
w=2*math.pi*f
t_c=math.pi/w

#Results
print("max value of avg thyristor current=%.3f A" %I_TAM1)
print("max value of avg thyristor current=%.3f A" %I_TRM2)
print("ckt turn off time=%.0f ms" %(t_c*1000))

max value of avg thyristor current=34.512 A
max value of avg thyristor current=54.212 A
ckt turn off time=10 ms


## Example 9.5 Page No 575¶

In [5]:
import math
#initialisation of variables
R=3.0
X_L=4.0

#Calculations
phi=math.degrees(math.atan(X_L/R))
V_s=230
Z=math.sqrt(R**2+X_L**2)
I_or=V_s/Z
P=I_or**2*R
I_s=I_or
pf=P/(V_s*I_s)
I_TAM=math.sqrt(2)*V_s/(math.pi*Z)
I_Tm=math.sqrt(2)*V_s/(2*Z)
f=50
w=2*math.pi*f
di=math.sqrt(2)*V_s*w/Z

#Results
print("min firing angle=%.2f deg" %phi)
print("\nmax firing angle=%.0f deg" %180)
print("i/p pf=%.1f" %pf)
print("max value of rms load current=%.0f A" %I_or)
print("max power=%.0f W" %P)
print("max value of avg thyristor current=%.3f A" %I_TAM)
print("max value of rms thyristor current=%.3f A" %I_Tm)
print("di/dt=%.0f A/s" %di)

min firing angle=53.13 deg

max firing angle=180 deg
i/p pf=0.6
max value of rms load current=46 A
max power=6348 W
max value of avg thyristor current=20.707 A
max value of rms thyristor current=32.527 A
di/dt=20437 A/s


## Example 9.6 Page No 576¶

In [6]:
import math
#initialisation of variables
V=230.0
R=3.0 #ohm
X_L=5.0 #ohm
a=120.0 #firing angle delay

#Calculations
phi=math.degrees(math.atan(X_L/R))
b=0
i=1
while (i>0) :
if math.fabs(LHS-RHS)<= 0.01 :
B=b
i=2
break

b=b+.1

#Results
print("Extinction angle=%.1f deg" %B) #answer in the book is wrong as formulae for RHS is wrongly employed
print("rms value of output voltage=%.2f V" %V_or) #answer do not match due to wrong B in book

Extinction angle=156.1 deg
rms value of output voltage=97.75 V


## Example 9.8, Page No 581¶

In [7]:
import math
#initialisation of variables
V_s=230.0
V_m=math.sqrt(2)*V_s
a=60.0
R=20.0

#Calculations
I1=math.sqrt(2)*I_T1r
I3=math.sqrt((math.sqrt(2)*I_T1r)**2+(math.sqrt(2)*I_T3r)**2)
r=V_s*(I1+I3)
P_o=V_or**2/R
pf=P_o/r

#Results
print("rms value of o/p voltage=%.2f V" %V_or)
print("rms value of current for upper thyristors=%.2f A" %I_T1r)
print("rms value of current for lower thyristors=%.2f A" %I_T3r)
print("t/f VA rating=%.2f VA" %r)
print("i/p pf=%.2f" %pf)

rms value of o/p voltage=424.94 V
rms value of current for upper thyristors=14.59 A
rms value of current for lower thyristors=3.60 A
t/f VA rating=9631.61 VA
i/p pf=0.94