# Chapter - 3 : Special-Purpose Diode¶

## Example 3.1 : Page No 179¶

In :
from __future__ import division
# Given data
V1 = 18 # in V
V2 = 10 # in V
R = 270 # in ohm
I_S = (V1-V2)/R # in A
V_L = 10 # in V
R_L = 1 # in K ohm
R_L = R_L*1000 # in ohm
I_L = V_L/R_L # in A
I_Z = I_S-I_L # in A
print "The zener current = %0.1f mA" %(I_Z*10**3)

The zener current = 19.6 mA


## Example 3.5 : Page No 186¶

In :
# Given data
I_Z = 2*10**-3 # in A
R_Z = 8.5 # in V
del_VL = I_Z*R_Z # in V
V1 = 10 # in V
print "Change in load voltage = %0.2f V" %del_VL
V_L = V1 + del_VL # in V
print "The load voltage = %0.2f V" %V_L

# Note: There is calculation error to evaluate the value of del_VL. So the answer in the book is wrong.

Change in load voltage = 0.02 V
The load voltage = 10.02 V


## Example 3.6 : Page No 194¶

In :
# Given data
R_L = 1.2 # in K ohm
R_L = R_L * 10**3 # in ohm
V_i = 16 # in V
R_i = 1 # in K ohm
R_i = R_i * 10**3 # in ohm
V = (R_L * V_i)/(R_L + R_i) # in V
V_L = V # in V
print "The load voltage = %0.2f V" %V_L
V_R = V_i - V_L # in V
print "The voltage = %0.2f V" %V_R
I_Z = 0 # A
print "The zener diode current = %0.f A" %I_Z
V_Z = 10 # in V
P_Z = V_Z*I_Z # in W
print "Power dissipation = %0.f watt" %P_Z

The load voltage = 8.73 V
The voltage = 7.27 V
The zener diode current = 0 A
Power dissipation = 0 watt


## Example 3.7 : Page No 195¶

In :
# Given data
I_Z1 = 20 # in mA
I_Z1= I_Z1*10**-3 # in A
I_Z2 = 30 # in mA
I_Z2= I_Z2*10**-3 # in A
V_Z1 = 5.6 # in V
V_Z2 = 5.75 # in V
del_IZ = I_Z2-I_Z1 # in A
del_VZ = V_Z2-V_Z1 # in V
r_Z = del_VZ/del_IZ # in ohm
print "Resistance of zener diode = %0.f ohm" %r_Z

Resistance of zener diode = 15 ohm


## Example 3.8 : Page No 195¶

In :
# Given data
R = 1 # in K ohm
R = R * 10**3 # in ohm
V_Z = 10 # in V
V_i = 50 # in V
I_ZM = 32 # in mA
I_ZM= I_ZM*10**-3 # in A
R_Lmin = (R*V_Z)/(V_i-V_Z) # in ohm
print "The minimum value of R_L = %0.f ohm" %R_Lmin
V_R = V_i-V_Z # in V
I_R = V_R/R # in A
I_Lmin = I_R-I_ZM # in A
print "The minimum value of I_L = %0.f mA" %(I_Lmin*10**3)
R_Lmax = V_Z/I_Lmin # in ohm
print "The maximum value of R_L = %0.2f kohm" %(R_Lmax*10**-3)

The minimum value of R_L = 250 ohm
The minimum value of I_L = 8 mA
The maximum value of R_L = 1.25 kohm


## Example 3.9 : Page No 196¶

In :
# Given data
V_Z = 20 # in V
R_L = 1.2 # in K ohm
R_L = R_L * 10**3 # in ohm
R = 220 # in ohm
I_ZM = 60 # in mA
I_ZM= I_ZM*10**-3 # in A
Vi_min = (R_L + R)/R_L*V_Z # in V
print "The minimum value of Vi = %0.2f V" %Vi_min
V_L= V_Z # in V
I_L= V_L/R_L # in A
Vi_max= (I_ZM+I_L)*R+V_Z # in V
print "The maximum value of Vi = %0.2f V" %Vi_max

The minimum value of Vi = 23.67 V
The maximum value of Vi = 36.87 V


## Example 3.10 : Page No 197¶

In :
# Given data
V1 = 18 # in V
V2 = 270 # in V
R = 1 # in K ohm
R = R*1000 # in ohm
V = (V1*R)/(V2+R) # in V
print "The open circuit voltage = %0.1f volts" %V
if V>=10 :
print "The zener diode is operating in the breakdown region."

The open circuit voltage = 14.2 volts
The zener diode is operating in the breakdown region.


## Example 3.11 : Page No 198¶

In :
# Given data
R_L = 300 # in ohm
R = 200 # in ohm
V_i = 20 # in V
V = (R_L/(R_L+R))*V_i # in V
print "The value of V_L = %0.f Volts" %V
V_L = 10 # in V
V_Z= V_L # in V
I_L = V_L/R_L # A
print "The value of I_L = %0.2f mA" %(I_L*10**3)
I_R = (V_i-V_L)/R # in A
print "The value of I_R = %0.f mA" %(I_R*10**3)
I_Z = I_R-I_L # in A
print "The value of I_Z = %0.2f mA" %(I_Z*10**3)
# Formula V_Z= R_L*V_i/(R_L+R)
R_L= R*V_Z/(V_i-V_Z) # in ohm
print "The value of R_L = %0.f ohm" %R_L

The value of V_L = 12 Volts
The value of I_L = 33.33 mA
The value of I_R = 50 mA
The value of I_Z = 16.67 mA
The value of R_L = 200 ohm


## Example 3.12 : Page No 199¶

In :
# Given data
V_Z = 5 # in V
I_Zmin = 2 # in mA
I_Zmin= I_Zmin*10**-3 # in A
I_Zmax = 20 # in mA
I_Zmax=I_Zmax*10**-3 # in A
R_L = 1 # in kohm
R_L = R_L * 10**3 # in ohm
I_L = V_Z/R_L # in A
I = I_L + I_Zmin # in A
Vin_min = V_Z + (I*R_L) # in V
print "The minimum input voltage = %0.f V" %Vin_min
I = I_L + I_Zmax # in A
Vin_max = V_Z + I* R_L # in V
print "The maximum input voltage = %0.f V" %Vin_max

The minimum input voltage = 12 V
The maximum input voltage = 30 V


## Example 3.13 : Page No 200¶

In :
# Given data
V_in1 = 18 # in V
V_in2 = 22 # in V
V_o = 6 # in V
I_L = 50 # in mA
I_L= I_L*10**-3 # in A
I_Zmin = 5 # in mA
I_Zmin= I_Zmin*10**-3 # in A
P_Z = 0.5 # in Watt
V_Z= 6 # in V
I_Zmax = P_Z/V_Z # in A
print "Zener diode current = %0.2f mA" %(I_Zmax*10**3)
R_S1 = (V_in2 - V_Z)/(I_L+I_Zmax) # in ohm
print "The minimum value of Rs = %0.f ohm" %R_S1
R_S2 = (V_in1-V_Z)/(I_L+I_Zmin) # in ohm
print "The maximum value of Rs = %0.1f ohm" %R_S2

Zener diode current = 83.33 mA
The minimum value of Rs = 120 ohm
The maximum value of Rs = 218.2 ohm


## Example 3.14 : Page No 201¶

In :
# Given data
R_S = 91 # in ohm
V_Z = 8 # in V
P_Z = 400 # in mW
P_Z= P_Z*10**-3 # in W
R_L = 0.22 # in K ohm
R_L = R_L * 10**3 # in ohm
I_L = V_Z/R_L # in A
I_Z = P_Z/V_Z # in A
print "The value of I_Zmax = %0.f mA" %(I_Z*10**3)
Vin_min = (V_Z*(R_S+R_L))/R_L # in V
print "The minimum input voltage = %0.2f V" %Vin_min
I_R = I_L + I_Z # in A
Vin_max = V_Z + (I_R*R_S) # in V
print "The maximum input voltage =%0.2f V" %Vin_max

The value of I_Zmax = 50 mA
The minimum input voltage = 11.31 V
The maximum input voltage =15.86 V


## Example 3.15 : Page No 202¶

In :
# Given data
V_L = 12 # in V
I_Lmin = 0 # in mA
I_Lmin =I_Lmin *10**-3 # in A
I_Lmax = 200 # in mA
I_Lmax =I_Lmax *10**-3 # in A
I_Zmin = 5 # in mA
I_Zmin= I_Zmin*10**-3 # in A
I_Zmax = 200 # in mA
I_Zmax= I_Zmax*10**-3 # in A
V_i = 16 # in V
V_Z = V_L # in V
print "The value of V_Z = %0.f V" %V_Z
R_Lmin = V_L/I_Lmax # in ohm
print "The minimum value of R_L = %0.f ohm" %R_Lmin
# R_L2 = V_L/I_Lmin # in ohm
print "The maximum value of R_L = infinite"
I_Z = I_Zmin+I_Zmax # in A
print "The zener current = %0.f mA" %(I_Z*10**3)
P_Zmax = V_Z*I_Z # in Watt
print "The maximum value of Pz = %0.2f Watt" %P_Zmax
R_S = (V_i-V_L)/(I_Zmin+I_Lmax) # in ohm
print "The value of R_S = %0.2f ohm" %R_S

The value of V_Z = 12 V
The minimum value of R_L = 60 ohm
The maximum value of R_L = infinite
The zener current = 205 mA
The maximum value of Pz = 2.46 Watt
The value of R_S = 19.51 ohm


## Example 3.16 : Page No 203¶

In :
# Given data
V_in = 20 # in V
R_S = 220 # in ohm
V_Z = 10 # in V
P_Z = 400 # in mW
# Part (I)
R_L = 200 # in ohm
print "Part (I) For R_L= 200 Ω"
V_L = V_Z # in V
print "Load voltage = %0.f V" %V_L
I_L = V_L/R_L # in A
print "Load current = %0.2f A" %I_L
I_R = (V_in-V_Z)/R_S # in A
print "The current through resistor = %0.3f A" %I_R
I_Z = I_R-I_L # in A
print "The value of I_Z = %0.2e A" %I_Z
# Part (II)
R_L = 50 # in ohm
print "Part (II) For R_L= 50 Ω"
V_L = V_Z #
print "Load voltage = %0.f V" %V_L
I_L = V_L/R_L # in A
print "Load current = %0.1f A" %I_L
I_R = (V_in-V_Z)/R_S # in A
print "The current through resistor = %0.3f A" %I_R
I_Z = I_R-I_L # in A
print "Zener current = %0.3f A" %I_Z
print "For both values of R_L, the current I_R is less than I_L and I_Z is negative."
print "It shows that given circuit can not work successfully as a voltage regulator"

Part (I) For R_L= 200 Ω
The current through resistor = 0.045 A
The value of I_Z = -4.55e-03 A
Part (II) For R_L= 50 Ω
The current through resistor = 0.045 A
Zener current = -0.155 A
For both values of R_L, the current I_R is less than I_L and I_Z is negative.
It shows that given circuit can not work successfully as a voltage regulator


## Example 3.17 : Page No 204¶

In :
# Given data
I_Zmin = 1 # in mA
I_Zmin=I_Zmin*10**-3 # in A
I_Zmax = 5 # in mA
I_Zmax=I_Zmax*10**-3 # in A
I_Lmin = 0 # in mA
I_Lmin=I_Lmin*10**-3 # in A
I_Lmax = 4 # in mA
I_Lmax=I_Lmax*10**-3 # in A
R = 5 # in kohm
R = R * 10**3 # in ohm
V_Z = 50 # in V
print "Part (A)"
V_max = (I_Zmax+ I_Lmin)*R+V_Z # in V
print "The maximum Voltage = %0.f V" %V_max
V_min = (I_Zmin+I_Lmax)*R + V_Z # in V
print "The minimum Voltage = %0.f V" %V_min
print "Part (B)"
V_L = 50 # in V
V_in = 75 # in V
R_L = 15 # in kohm
R_L= R_L*10**3 # in ohm
I_L = V_L/R_L # in A
V_max = (I_Zmax+I_L)*R+V_Z # in V
print "The maximum Voltage = %0.f V" %round(V_max)
V_min = (I_Zmin+I_L)*R+V_Z # in V
print "The minimum Voltage = %0.f V" %round(V_min)

Part (A)
The maximum Voltage = 75 V
The minimum Voltage = 75 V
Part (B)
The maximum Voltage = 92 V
The minimum Voltage = 72 V


## Example 3.18 : Page No 205¶

In :
# Given data
V_S = 7.5 # in V
V_Z = 5 # in V
R_S = 4.75 # in ohm
I_Zmin= 0.05 # in A
I_Zmax=1.0 # in A
I_S = (V_S-V_Z)/R_S # in A
I_Lmax= I_S-I_Zmin # in A
print "The maximum value of load current = %0.3f A" %I_Lmax
# when
V_S= 10 # in V
I_S = (V_S-V_Z)/R_S # in A
I_Lmin= I_S-I_Zmax # in A
print "The minimum value of load current = %0.2f A" %I_Lmin
print "Thus, the range of load current for regulation =",round(I_Lmin,2),"<= I_L <=",round(I_Lmax,3),"A"

The maximum value of load current = 0.476 A
The minimum value of load current = 0.05 A
Thus, the range of load current for regulation = 0.05 <= I_L <= 0.476 A