summaryrefslogtreecommitdiff
path: root/Power_Electronics/Power_electronics_ch_2.ipynb
diff options
context:
space:
mode:
authorThomas Stephen Lee2015-08-28 16:53:23 +0530
committerThomas Stephen Lee2015-08-28 16:53:23 +0530
commitdb0855dbeb41ecb8a51dde8587d43e5d7e83620f (patch)
treeb95975d958cba9af36cb1680e3f77205354f6512 /Power_Electronics/Power_electronics_ch_2.ipynb
parent5a86a20b9de487553d4ef88719fb0fd76a5dd6a7 (diff)
downloadPython-Textbook-Companions-db0855dbeb41ecb8a51dde8587d43e5d7e83620f.tar.gz
Python-Textbook-Companions-db0855dbeb41ecb8a51dde8587d43e5d7e83620f.tar.bz2
Python-Textbook-Companions-db0855dbeb41ecb8a51dde8587d43e5d7e83620f.zip
add books
Diffstat (limited to 'Power_Electronics/Power_electronics_ch_2.ipynb')
-rwxr-xr-xPower_Electronics/Power_electronics_ch_2.ipynb2357
1 files changed, 0 insertions, 2357 deletions
diff --git a/Power_Electronics/Power_electronics_ch_2.ipynb b/Power_Electronics/Power_electronics_ch_2.ipynb
deleted file mode 100755
index 6e52e316..00000000
--- a/Power_Electronics/Power_electronics_ch_2.ipynb
+++ /dev/null
@@ -1,2357 +0,0 @@
-{
- "metadata": {
- "name": ""
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "heading",
- "level": 1,
- "metadata": {},
- "source": [
- "Chapter 2: Thyristors"
- ]
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.1, Page No.39 "
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Anode current\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "alfa_1 = 0.35 # Gain of PNP transistor of two transistor model\n",
- "alfa_2 = 0.40 # Gain of NPN transistor of two transistor model\n",
- "Ig = 40*10**-3 # Gate current\n",
- "\n",
- "\n",
- "#Calculations\n",
- "Ia = (alfa_2*Ig)/(1-(alfa_1+alfa_2))\n",
- "\n",
- "#Result\n",
- "print(\"Anode current = %d * 10^-3 A\"%(Ia*1000))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Anode current = 64 * 10^-3 A\n"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.2, Page No.41"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Equivalent capacitor\n",
- "\n",
- "import math\n",
- "# Variable declaration\n",
- "dv_by_dt = 190 # in Volt per micro-sec\n",
- "Ic= 8 *10**-3 # Capacitive current\n",
- "\n",
- "#Calculation\n",
- "C = Ic/(dv_by_dt*10**6)\n",
- "\n",
- "#Result\n",
- "print(\"C = %.1f * 10^12 F\"%(C*10**12))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "C = 42.1 * 10^12 F\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.3, Page No. 42"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Thyristor\n",
- "\n",
- "import math\n",
- "# Variable declaration\n",
- "Vt = 0.75 # Thyristor trigger voltage\n",
- "It = 7*10**-3 # Thyristor trigger current\n",
- "Vcc = 20 # Suppy voltage, given data\n",
- "Rg = 2000 # gate resistor, given data\n",
- "R = 200 # input resistor\n",
- "\n",
- "#Calculations\n",
- "#(a)\n",
- "V0 = 20 # when thyristor is not conducting, there is no current through it.\n",
- "#(b)\n",
- "Vs = Vt+It*Rg\n",
- "#(c)\n",
- "i= 5*10**-3 #to have holding curernt\n",
- "v1= i*R\n",
- "#(d)\n",
- "drop =0.7 # voltage drop across thyristor\n",
- "v2=v1+drop\n",
- "\n",
- "#Result\n",
- "print(\"(a) V0 = %d\\n(b) Vs = %.2f\\n(c) Vcc should be reduced to less than %d V if thyristor is ideal.\\n(d) Vcc should be reduced to less than %.1f V\"%(V0,Vs,v1,v2))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) V0 = 20\n",
- "(b) Vs = 14.75\n",
- "(c) Vcc should be reduced to less than 1 V if thyristor is ideal.\n",
- "(d) Vcc should be reduced to less than 1.7 V\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.4, Page No.42"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# calculation of Vg,Ig and Rg\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "Vs = 25 # gate signal amplitude\n",
- "Pavg_loss = 0.6 # Avg power loss\n",
- "\n",
- "#Calculations\n",
- "P_loss = Pavg_loss*2*math.pi/math.pi\n",
- "Ig =(-1+(math.sqrt(1**2-4*9*(-1.2))))/(2*9) #alfa=(-b+sqrt(b^2-4ac))/2a-->solution for quadratic equation\n",
- "Ig = math.ceil(Ig*1000)/1000\n",
- "Vg = 1+9*Ig #given data\n",
- "Rg = (24-9*Ig)/Ig\n",
- "\n",
- "#Calculations\n",
- "print(\"Vg = %.3f \\nIg = %.3f\\nRg = %.2f\"%(Vg,Ig,Rg))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Vg = 3.826 \n",
- "Ig = 0.314\n",
- "Rg = 67.43\n"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.5, Page No.42"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Minimum width of gate pulse\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 100 # DC supply voltage\n",
- "L = 10 # Inductance\n",
- "i = 80*10**-3 # latching current of thyristor\n",
- "\n",
- "#Calculations\n",
- "t = L*i/V\n",
- "\n",
- "#Result\n",
- "print(\"Width of pulse should be more than %d milli-second.\"%(t*10**3))\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Width of pulse should be more than 8 milli-second.\n"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.6, Page No. 43"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Minimum width of gate pulse\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 100 # DC supply voltage\n",
- "R = 10 # Resistance\n",
- "L = 5 # Inductance\n",
- "i = 50*10**-3 # latching current of thyristor\n",
- "\n",
- "#Calculation\n",
- "t = math.log((1-(i*R)/V))/((-R/L)*math.log(math.e)) # i = (V/R)*(1-e^(-R*t/L))\n",
- "\n",
- "#Result\n",
- "print(\"Minimum width of gate pulse is %.1f milli-second.\"%(t*10**3))\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Minimum width of gate pulse is 2.5 milli-second.\n"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.7, Page No. 43"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# resistor value\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 90.0 # DC supply voltage\n",
- "i = 40*10**-3 # latching current of thyristor\n",
- "t = 40* 10**-6 # pulse width\n",
- "R = 25.0 # load Resistance\n",
- "L = 0.5 # Inductance\n",
- "#Calculation\n",
- "#(a)\n",
- "i2 = (V/R)*(1-math.e**(-R*t/L))\n",
- "\n",
- "#(b)\n",
- "R = V/(i-i2)\n",
- "\n",
- "#Result\n",
- "print(\"(a)\\nAt the end of the gate pulse, i = %.4f A\"%i2)\n",
- "print(\"Since the current is less than latching current, thyristor will not turn on.\")\n",
- "print(\"\\n(b)\\nR should be less than %d ohm.\"%math.ceil(R))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a)\n",
- "At the end of the gate pulse, i = 0.0072 A\n",
- "Since the current is less than latching current, thyristor will not turn on.\n",
- "\n",
- "(b)\n",
- "R should be less than 2744 ohm.\n"
- ]
- }
- ],
- "prompt_number": 18
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.8, Page No.44"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Resistor value\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 100.0 # DC supply voltage\n",
- "i = 50*10**-3 # holding current of thyristor\n",
- "t = 50* 10**-6 # pulse width\n",
- "R = 20.0 # load Resistance\n",
- "L = 0.5 # Inductance\n",
- "\n",
- "#Calculations\n",
- "i2 = (V/R)*(1-math.e**(-R*t/L))\n",
- "Rmax = V/(i-i2)\n",
- "\n",
- "#Result\n",
- "print(\"When firing pulse ends, i = %.2f mA\"%(i2*10**3))\n",
- "print(\"Since this current is less than holding current, the thyristor will not remain on and return to off state.\")\n",
- "print(\"Maximum value of R = %.3f ohm\"%(math.floor(Rmax*1000)/1000))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "When firing pulse ends, i = 9.99 mA\n",
- "Since this current is less than holding current, the thyristor will not remain on and return to off state.\n",
- "Maximum value of R = 2499.375 ohm\n"
- ]
- }
- ],
- "prompt_number": 26
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.9, Page No.44"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# triggering angle \n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 240 # AC supply voltage\n",
- "f = 50 # supply frequency\n",
- "R = 5 # load resistance\n",
- "L = 0.05 # inductance\n",
- "\n",
- "#Calculation\n",
- "theta = math.atan(2*math.pi*f*L/R)\n",
- "theta = theta*180/math.pi\n",
- "fi = theta+90\n",
- "print(\"theta = %.2f\u00b0\"%(theta))\n",
- "print(\"\\nCurrent transient is maximun(worst) if\\nsin(fi-theta) = 1\")\n",
- "print(\"therefore, fi-%.2f\u00b0 = 90\u00b0\"%theta)\n",
- "print(\"fi = %.2f\u00b0\"%fi)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "theta = 72.34\u00b0)\n",
- "\n",
- "Current transient is maximun(worst) if\n",
- "sin(fi-theta) = 1\n",
- "therefore, fi-72.34\u00b0 = 90\u00b0\n",
- "fi = 162.34\u00b0\n"
- ]
- }
- ],
- "prompt_number": 37
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.10, Page No.47"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "print(\"Theoretical example \")"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Theoretical example \n"
- ]
- }
- ],
- "prompt_number": 38
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.11, Page No.50"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "print(\"Theoretical example \")"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Theoretical example \n"
- ]
- }
- ],
- "prompt_number": 39
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.12, Page No. 53"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# rms current and form factor\n",
- "\n",
- "import math\n",
- "# variable declaration\n",
- "I = 120 # Current in Ampere\n",
- "gamma = 180.0 # in degrees, thyristor conducts between alfa and alfa+gamma in each 360\u00b0 \n",
- "\n",
- "# calculations\n",
- "#(a)-- formulas\n",
- "#(b)\n",
- "Irms = I*math.sqrt(gamma/360)\n",
- "Iavg = I*(gamma/360)\n",
- "ff = Irms/Iavg\n",
- "\n",
- "#result\n",
- "print(\"RMS curent = %.2f A\\nAverage Current = %.0f A\\nForm factor = %.3f\"%(Irms,Iavg,ff))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "RMS curent = 84.85 A\n",
- "Average Current = 60 A\n",
- "Form factor = 1.414\n"
- ]
- }
- ],
- "prompt_number": 40
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.13, Page No.53"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Power supplied to the load and average load current\n",
- "\n",
- "import math\n",
- "from scipy.integrate import quad\n",
- "# variable declaration\n",
- "R = 100.0 # load resistance\n",
- "V = 230.0 # Supply Voltage\n",
- "\n",
- "#Calculations\n",
- "#(a)\n",
- "def f(x):\n",
- " return math.sin(x)**2\n",
- "wt_lower=math.pi/3\n",
- "wt_upper =math.pi\n",
- "val = quad(f,wt_lower,wt_upper)\n",
- "I = ((math.sqrt(2)*V/R)**2)*val[0]/(2*math.pi)\n",
- "Irms = math.sqrt(I)\n",
- "P =(Irms**2)*R\n",
- "\n",
- "#(b)\n",
- "def f(x):\n",
- " return math.sin(x)**2\n",
- "wt_lower2=math.pi/4\n",
- "wt_upper2 =math.pi\n",
- "val2 = quad(f,wt_lower2,wt_upper2)\n",
- "x = (math.sqrt(2)*V/R)\n",
- "x = math.floor(x*100)/100\n",
- "I2 = (x**2)*val2[0]/(2*math.pi)\n",
- "Irms2 = math.sqrt(I2)\n",
- "P2 =(Irms2**2)*R\n",
- "\n",
- "#(c)\n",
- "def f(x):\n",
- " return (3.25/(2*math.pi))*math.sin(x)\n",
- "wt_lower3=math.pi/3\n",
- "wt_upper3 =math.pi\n",
- "val3 = quad(f,wt_lower3,wt_upper3)\n",
- "wt_lower4=math.pi/4\n",
- "wt_upper4 =math.pi\n",
- "val4 = quad(f,wt_lower4,wt_upper4)\n",
- "\n",
- "\n",
- "print(\"(a)\\nRMS current = %.2f A\\nPower supplied to load = %d W\"%(Irms,math.ceil(P)))\n",
- "print(\"\\n\\n(b)\\nRMS current = %f A\\nPower supplied to load = %f W\"%(Irms2,P2))\n",
- "print(\"\\n(c)\\nWhen firing angle is 60\u00b0, Average current = %.3f A\" %val3[0])\n",
- "print(\"When firing angle is 45\u00b0, Average current = %.3f A\" %val4[0])\n",
- "# for (b) answer matches to the book if val2[0] = 1.4255"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a)\n",
- "RMS current = 1.46 A\n",
- "Power supplied to load = 213 W\n",
- "\n",
- "\n",
- "(b)\n",
- "RMS current = 1.549431 A\n",
- "Power supplied to load = 240.073727 W\n",
- "\n",
- "(c)\n",
- "When firing angle is 60\u00b0, Average current = 0.776 A\n",
- "When firing angle is 45\u00b0, Average current = 0.883 A\n"
- ]
- }
- ],
- "prompt_number": 81
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.14, Page No.54"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# average power loss in thyristor\n",
- "\n",
- "import math\n",
- "# Variable declaration\n",
- "Iavg = 200 # Average current\n",
- "v1 = 1.8 # voltage drop across thyristor for 200A current\n",
- "v2 = 1.9 # voltage drop across thyristor for 400A current\n",
- "\n",
- "#Calculations\n",
- "#(a)\n",
- "A1 = Iavg # amplitude of rectangular current wave\n",
- "P1 = A1*v1\n",
- "#(b)\n",
- "A2 = 2*Iavg\n",
- "P2 = A2*v2*math.pi/(2*math.pi)\n",
- "\n",
- "#Result\n",
- "print(\"(a) Average power loss = %d W\"%P1)\n",
- "print(\"(b) Average power loss = %d W\"%P2)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Average power loss = 360 W\n",
- "(b) Average power loss = 380 W\n"
- ]
- }
- ],
- "prompt_number": 83
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.15, Page No.55"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# average on state current\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "I = 40 # rms on state current\n",
- "f = 50 # frequency\n",
- "cp_a =170 # conduction period\n",
- "cp_b =100 # conduction period\n",
- "cp_c =40 # conduction period\n",
- "\n",
- "#Calculations\n",
- "alfa_a = 180-cp_a\n",
- "alfa_b = 180-cp_b\n",
- "alfa_c = 180-cp_c\n",
- "Im_a = math.sqrt(((I**2)*2*math.pi)/(((math.pi-alfa_a*math.pi/180)/2)+math.sin(2*alfa_a*math.pi/180)/4))\n",
- "Iv_a = 0.316*Im_a\n",
- "Im_b = math.sqrt(((I**2)*2*math.pi)/(((math.pi-alfa_b*math.pi/180)/2)+math.sin(2*alfa_b*math.pi/180)/4))\n",
- "Iv_b = 0.1868*Im_b\n",
- "Im_c = math.sqrt(((I**2)*2*math.pi)/(((math.pi-alfa_c*math.pi/180)/2)+math.sin(2*alfa_c*math.pi/180)/4))\n",
- "Iv_c = 0.0372*Im_c\n",
- "\n",
- "#Result\n",
- "print(\"(a) Iavg = %.3f A\"%(math.ceil(Iv_a*1000)/1000))\n",
- "print(\"(b) Iavg = %.2f A\"%Iv_b)\n",
- "print(\"(c) Iavg = %.2f A\"%(math.floor(Iv_c*100)/100))\n",
- "#answer for(b) is not matching with the answer given in the book."
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Iavg = 25.295 A\n",
- "(b) Iavg = 19.13 A\n",
- "(c) Iavg = 11.62 A\n"
- ]
- }
- ],
- "prompt_number": 105
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.16, page No. 56"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# power dissiopation\n",
- "\n",
- "import math\n",
- "from scipy.integrate import quad\n",
- "#variable declaration\n",
- "It = 20 # constant current\n",
- "\n",
- "#Calculations\n",
- "#(a)\n",
- "Vt = 0.9+ 0.02*It\n",
- "P1 = Vt*It\n",
- "#(b)\n",
- "def f(x):\n",
- " return (0.9+0.02*(20*math.pi*math.sin(x)))*(20*math.pi*math.sin(x))/(2*math.pi)\n",
- "# if denominator math.pi value is taken as 3.14, then answer for P2 =37.75\n",
- "theta_lower = 0\n",
- "theta_upper = math.pi\n",
- "val = quad(f,theta_lower,theta_upper)\n",
- "P2 = val[0]\n",
- "#(c)\n",
- "P3 = P1/2\n",
- "#(d)\n",
- "P4 = P1/3\n",
- "\n",
- "#result\n",
- "print(\"(a) Power dissipation = %d W\"%P1)\n",
- "print(\"(b) Mean Power dissipation = %.2f W\"%P2)\n",
- "print(\"(c) Mean Power dissipation = %d W\"%P3)\n",
- "print(\"(d) Mean Power dissipation = %.2f W\"%P4)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Power dissipation = 26 W\n",
- "(b) Mean Power dissipation = 37.74 W\n",
- "(c) Mean Power dissipation = 13 W\n",
- "(d) Mean Power dissipation = 8.67 W\n"
- ]
- }
- ],
- "prompt_number": 115
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.17, Page No. 57"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# I^2t rating \n",
- "\n",
- "import math\n",
- "# Variable declaration\n",
- "Is = 2000.0 # half cycle surge current rating for SCR\n",
- "f = 50.0 # operating AC frequency\n",
- "\n",
- "#Calculation\n",
- "T = 1/f\n",
- "t_half = T/2\n",
- "t = t_half/2\n",
- "I = math.sqrt((Is**2)*t/t_half)\n",
- "rating = (I**2)*t_half\n",
- "\n",
- "#Result\n",
- "print(\"I^2t rating = %d A^2 secs\"%rating)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "I^2t rating = 20000 A^2 secs\n"
- ]
- }
- ],
- "prompt_number": 138
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.18, Page No. 59"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Resistance and average power loss\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "P = 6 #peak power loss\n",
- "d = 0.3 # duty cylce \n",
- "\n",
- "#calculations\n",
- "#(a)\n",
- "#solution of equation 9Ig^2+Ig-6 = 0\n",
- "Ig =(-1+(math.sqrt(1**2-4*9*(-6))))/(2*9) #alfa=(-b+sqrt(b^2-4ac))/2a-->solution for quadratic equation\n",
- "Ig = math.ceil(Ig*1000)/1000\n",
- "Rg = (11/Ig)-9 #from KVL equation of gate circuit\n",
- "#(b)\n",
- "Pavg = P*d\n",
- "\n",
- "#Result\n",
- "print(\"(a)\\nIg = %.3f A \\nRg = %.3f ohm\"%(Ig,Rg))\n",
- "print(\"\\n(b) Average power loss = %.1f W \"%Pavg)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a)\n",
- "Ig = 0.763 A \n",
- "Rg = 5.417 ohm\n",
- "\n",
- "(b) Average power loss = 1.8 W \n"
- ]
- }
- ],
- "prompt_number": 144
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.19, Page No. 59"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# trigger current and voltage for gate power dissipation\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "Vs = 12 # supply voltage\n",
- "P = 0.3 # Power dissipation\n",
- "Rs = 100 # load line slope i.e. source resistance\n",
- "\n",
- "#Calculation\n",
- "#solution for equation 100Ig^2-12Ig+0.3 = 0\n",
- "Ig =(-(-Vs)-(math.sqrt((-Vs)**2-4*Rs*(P))))/(2*Rs) #alfa=(-b(+/-)sqrt(b^2-4ac))/2a-->solution for quadratic equation\n",
- "Vg = P/Ig\n",
- "print(\"Ig = %.1f mA\\nVg = %.2f V\"%(Ig*1000,Vg))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Ig = 35.5 mA\n",
- "Vg = 8.45 V\n"
- ]
- }
- ],
- "prompt_number": 150
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.20, Page No. 59"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Finding values of resistors\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "Es = 12.0 # Supply voltage\n",
- "V = 800.0 # SCR voltage rating\n",
- "I = 110.0 # SCR currert rating\n",
- "imax = 250*10**-3 # Maximum permissible current through battery\n",
- "isc = 600*10**-3 # short circuit current of the battery\n",
- "Vg = 2.4 # required gate voltage\n",
- "Ig = 50*10**-3 # required gate current\n",
- "Vgmax = 3 # maximum gate voltage\n",
- "Igmax = 100*10**-3 # maximum gate current\n",
- "\n",
- "\n",
- "#Calculations\n",
- "Rs = Es/isc\n",
- "#considering R2 is not connected\n",
- "R1 =(Es/imax)-Rs\n",
- "#R1 must be 28 or more so that battery curenrt doesnot exceeds 250mA\n",
- "R1min = Es/Igmax-Rs\n",
- "R1max = ((Es-Vg)/Ig)-Rs\n",
- "R1 = 125 #selected \n",
- "R2 = Vgmax*(Rs+R1)/(Es-Vgmax)\n",
- "\n",
- "# Result\n",
- "print(\"Rs = %d ohm \\n\\nR1 must be more than %.0f ohm and must be less than %.0f ohm.\\nTherefore, select R1 = %.0f \"%(Rs,R1min,R1max,R1))\n",
- "print(\"\\nR2 should be less than %.3f ohm.\\nTherefore, select R2 = %.0f ohm\"%(R2,math.floor(R2)))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Rs = 20 ohm \n",
- "\n",
- "R1 must be more than 100 ohm and must be less than 172 ohm.\n",
- "Therefore, select R1 = 125 \n",
- "\n",
- "R2 should be less than 48.333 ohm.\n",
- "Therefore, select R2 = 48 ohm\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.21, Page No. 68"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Surface temperature\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "l = 0.2 # length of aluminium rod\n",
- "w = 0.01 # width of aluminium rod\n",
- "d = 0.01 # depth of aluminium rod\n",
- "tc = 220 # thermal conductivity\n",
- "T1 = 30 # temperature at far end\n",
- "P = 3 # injected heat\n",
- "\n",
- "#Calculation\n",
- "theta = l/(tc*w*d)\n",
- "T2 = P*theta+T1\n",
- "\n",
- "#Result\n",
- "print(\"Temperature of the surface where heat is injected is %.2f\u00b0C\"%T2)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Temperature of the surface where heat is injected is 57.27\u00b0C\n"
- ]
- }
- ],
- "prompt_number": 13
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.22, Page No. 68"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "#Power losses\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "l = 2*10**-3 # lengthh of aluminium plate\n",
- "a = 12*10**-4 # cross-section area\n",
- "tc = 220 # thermal conductivity\n",
- "td = 4 # desired thermal drop along length\n",
- "\n",
- "#Calculations\n",
- "theta = l/(a*tc)\n",
- "theta = math.floor(theta*10**6)/10**6\n",
- "P_loss = td/theta\n",
- "\n",
- "#Result\n",
- "print(\"power losses = %.2f W\"%P_loss)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "power losses = 528.05 W\n"
- ]
- }
- ],
- "prompt_number": 18
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.23, Page No. 68"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "#thermal resistance of heat sink\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "P = 30.0 # power dissipation\n",
- "T1 =125.0 # max junction temperature\n",
- "T2 = 50.0 # max ambient temperature\n",
- "tr1 =1.0 # thermal resistance of thyristor\n",
- "tr2 = 0.3 # therrmal resistance of insuulator\n",
- "\n",
- "#calculations\n",
- "Tr = (T1-T2)/P\n",
- "Tr_hs = Tr-tr1-tr2\n",
- "\n",
- "#Result\n",
- "print(\"Thermal resistance of heat sink = %.1f\u00b0C/W\"%Tr_hs)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Thermal resistance of heat sink = 1.2\u00b0C/W\n"
- ]
- }
- ],
- "prompt_number": 23
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.24, Page No.68"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Junction temperature\n",
- "\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "tr = 0.627 # thermal resistance of device\n",
- "T = 93 # heat sink temperature\n",
- "V = 3 # voltage at junction\n",
- "I = 25 # current at junction\n",
- "\n",
- "#calculation\n",
- "T_junction = tr*V*I+T\n",
- "\n",
- "#Result\n",
- "print(\"Junction Temperature = %d\u00b0C\"%T_junction)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Junction Temperature = 140\u00b0C\n"
- ]
- }
- ],
- "prompt_number": 25
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.25, Page No. 68"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "#Thermal resistance\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "P = 40.0 #steady power loss in an SCR\n",
- "Tr_hs = 0.8 # heat sink resistance\n",
- "T1 = 120.0 # Maximumm junction temperature\n",
- "T2 = 35.0 # ambient temperature\n",
- "\n",
- "#calculation\n",
- "Tr = (T1-T2)/P\n",
- "Rsh = Tr - Tr_hs\n",
- "\n",
- "#Result\n",
- "print(\"Resistance of heat sink = %.3f\u00b0C/W\"%Rsh)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Resistance of heat sink = 1.325\u00b0C/W\n"
- ]
- }
- ],
- "prompt_number": 28
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.26, Page No. 69"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# power loss and % increase in rating\n",
- "\n",
- "import math\n",
- "# variable declaration\n",
- "Tj = 125 # maximum junction temperature\n",
- "Ts1 = 80 # max heat sink temperature\n",
- "tr_jc = 0.7 # thermal resistance from junction to case \n",
- "tr_cs = 0.4 # thermal resistance from case to sink\n",
- "Ts2 = 50 # decreased heat sink temperature \n",
- "#calculations\n",
- "#(a)\n",
- "Pav1 = (Tj-Ts1)/(tr_jc+tr_cs)\n",
- "#(b)\n",
- "Pav2 =(Tj-Ts2)/(tr_jc+tr_cs)\n",
- "rating = 100*(math.sqrt(Pav2)-math.sqrt(Pav1))/math.sqrt(Pav1)\n",
- "rating = math.floor(rating*100)/100\n",
- "# result\n",
- "print(\"(a)\\nAverage power loss = %.2fW\"%Pav1)\n",
- "print(\"\\n(b)\\nAverage power loss = %.2fW\\n%% increase in rating = %.2f%%\"%(Pav2,rating))\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a)\n",
- "Average power loss = 40.91W\n",
- "\n",
- "(b)\n",
- "Average power loss = 68.18W\n",
- "% increase in rating = 29.09%\n"
- ]
- }
- ],
- "prompt_number": 34
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.27, Page No. 75"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "#Minnimum and maximum firing angle of triac\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "Vs = 230.0 # Supply voltage\n",
- "f = 50.0 # supply frequency\n",
- "Vc = 25.0 # breakdown voltage\n",
- "C = 0.6*10**-6 # capacitance\n",
- "Rmin = 2000 # minimum resistance \n",
- "Rmax = 20000 # maximum resistance\n",
- "\n",
- "#Calculations\n",
- "#(a)\n",
- "pi = math.ceil(math.pi*10**4)/10**4\n",
- "Xc = 1/(2*pi*f*C)\n",
- "Xc = math.floor(Xc*100)/100\n",
- "Z1_m = math.sqrt(Rmin**2+Xc**2)\n",
- "Z1_angle=math.atan(Xc/Rmin)\n",
- "I1_m = Vs/Z1_m\n",
- "I1_m = math.ceil(I1_m*10**5)/10**5\n",
- "I1_angle = Z1_angle\n",
- "Vc_m = I1_m*Xc\n",
- "Vc_m = math.ceil(Vc_m*100)/100\n",
- "Vc_angle = I1_angle*(180/math.pi)-90\n",
- "alfa1 = (180/math.pi)*math.asin(Vc/(math.sqrt(2)*Vc_m))+(-Vc_angle)\n",
- "\n",
- "#(b)\n",
- "Z2_m = math.sqrt(Rmax**2+Xc**2)\n",
- "Z2_m = math.floor(Z2_m*10)/10\n",
- "Z2_angle=math.atan(Xc/Rmax)\n",
- "I2_m = Vs/Z2_m\n",
- "I2_m = math.floor(I2_m*10**6)/10**6\n",
- "I2_angle = Z2_angle\n",
- "V2c_m = I2_m*Xc\n",
- "V2c_m = math.ceil(V2c_m*100)/100\n",
- "V2c_angle = I2_angle*(180/math.pi)-90\n",
- "alfa2 = (180/math.pi)*math.asin(Vc/(math.sqrt(2)*V2c_m))+(-V2c_angle)\n",
- "\n",
- "#Result\n",
- "print(\"Xc = %.2f ohms\"%Xc)\n",
- "print(\"\\n(a) When R = %d ohms\\n Z(magnitude) = %.2f\\t\\tZ(angle) = %.2f\u00b0\"%(Rmin,Z1_m,-Z1_angle*(180/math.pi)))\n",
- "print(\" I(magnitude) = %.5f\\t\\tI(angle) = %.2f\u00b0\"%(I1_m,I1_angle*(180/math.pi)))\n",
- "print(\"\\nVoltage across capacitor,\\nV(magnitude) = %.2f\\t\\tV(angle) = %.2f\u00b0\"%(Vc_m,Vc_angle))\n",
- "print(\"\\nMinimum firing angle = %.2f\u00b0\"%alfa1)\n",
- "\n",
- "print(\"\\n(b) When R = %d ohms\\n Z(magnitude) = %.2f\\t\\tZ(angle) = %.2f\u00b0\"%(Rmax,Z2_m,-Z2_angle*(180/math.pi)))\n",
- "print(\" I(magnitude) = %f\\t\\tI(angle) = %.2f\u00b0\"%(I2_m,I2_angle*(180/math.pi)))\n",
- "print(\"\\nVoltage across capacitor,\\nV(magnitude) = %.2f\\t\\tV(angle) = %.2f\u00b0\"%(V2c_m,V2c_angle))\n",
- "print(\"\\nMaximum firing angle = %.2f\u00b0\"%(math.ceil(alfa2*10)/10))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Xc = 5305.15 ohms\n",
- "\n",
- "(a) When R = 2000 ohms\n",
- " Z(magnitude) = 5669.62\t\tZ(angle) = -69.34\u00b0\n",
- " I(magnitude) = 0.04057\t\tI(angle) = 69.34\u00b0\n",
- "\n",
- "Voltage across capacitor,\n",
- "V(magnitude) = 215.23\t\tV(angle) = -20.66\u00b0\n",
- "\n",
- "Minimum firing angle = 25.37\u00b0\n",
- "\n",
- "(b) When R = 20000 ohms\n",
- " Z(magnitude) = 20691.60\t\tZ(angle) = -14.86\u00b0\n",
- " I(magnitude) = 0.011115\t\tI(angle) = 14.86\u00b0\n",
- "\n",
- "Voltage across capacitor,\n",
- "V(magnitude) = 58.97\t\tV(angle) = -75.14\u00b0\n",
- "\n",
- "Maximum firing angle = 92.60\u00b0\n"
- ]
- }
- ],
- "prompt_number": 88
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.28, Page no. 80"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# UJT relaxation circuit\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 32.0 #voltage\n",
- "h = 0.63 # voltage gain\n",
- "Ip = 10*10**-6 # current \n",
- "Vv = 3.5 # voltage drop\n",
- "Iv = 10*10**-3 # current through the circuit\n",
- "Vf = 0.5 # forward voltage drop across p-n junction\n",
- "f = 50.0 # frequency of ascillation \n",
- "t = 50.0*10**-6 # width of triggering pulse(given value is 50ms but used value is 50 micro-sec) \n",
- "C = 0.4*10**-6 # Capacitance(assumed)\n",
- "\n",
- "#Calculations\n",
- "T = 1/f\n",
- "Vp = V*h+Vf\n",
- "Rmax = (V-Vp)/Ip # R should be less than the given value\n",
- "Rmin = (V-Vv)/Iv # R should be more than the given value\n",
- "R = T/(C*math.log(1/(1-h)))\n",
- "R4 = t/C\n",
- "R3 = 10**4/(h*V)\n",
- "\n",
- "#Result\n",
- "print(\"The value of R = %.2f*10^3 ohm is within the Rmax = %.3f*10^6 ohm and Rmin = %.2f*10^3 ohm\"%(R*10**-3,Rmax*10**-6,Rmin*10**-3))\n",
- "print(\"Hence the value is suitable.\\n\\nR4 = %d ohm \\nR3 = %d ohm\"%(R4,R3))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "The value of R = 50.29*10^3 ohm is within the Rmax = 1.134*10^6 ohm and Rmin = 2.85*10^3 ohm\n",
- "Hence the value is suitable.\n",
- "\n",
- "R4 = 125 ohm \n",
- "R3 = 496 ohm\n"
- ]
- }
- ],
- "prompt_number": 101
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.29, Page No. 81"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "#values of various components of circuit(referring to fig.2.36(a))\n",
- "\n",
- "import math\n",
- "# variable declaration\n",
- "f = 2.0*10**3 # ouutput frequency\n",
- "Vdc = 10 # input voltage\n",
- "h = 0.6 # voltage gain\n",
- "I = 0.005 # peak discharge current\n",
- "v = 0.5 # voltage drop across p-n junction(assumed)\n",
- "\n",
- "#Calculation\n",
- "Vp = (Vdc*h)+v\n",
- "R = (Vdc-Vp)/I # R should be less than this value\n",
- "T = 1.0/f\n",
- "C1 = 0.5*10**-6 # capacitance(assumed)\n",
- "R1 = (T)/(C1*math.log(1/(1-h)))\n",
- "\n",
- "C2 = 1.0*10**-6 # capacitance(assumed)\n",
- "R2 = (T)/(C2*math.log(1/(1-h)))\n",
- "\n",
- "#Result\n",
- "print(\"for C = %.1f micro-F, R = %d Ohm. \\nThis value of R is not suitable because R must be less than %d ohm.\"%(C1*10**6,R1,R))\n",
- "print(\"\\nfor C = %.1f micro-F, R = %.1f Ohm.\\nThis value is suitable because R is less than %d ohm\"%(C2*10**6,R2,R))\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "for C = 0.5 micro-F, R = 1091 Ohm. \n",
- "This value of R is not suitable because R must be less than 700 ohm.\n",
- "\n",
- "for C = 1.0 micro-F, R = 545.7 Ohm.\n",
- "This value is suitable because R is less than 700 ohm\n"
- ]
- }
- ],
- "prompt_number": 112
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.30, Page No. 82"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Range of firing angle\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "Vs = 230.0 # supply voltage\n",
- "Rmin= 1000.0 # minimum value of R1 resistor\n",
- "Rmax = 22*10**3 # maximum value of R1 resistor\n",
- "Vg = 2.0 # gate triggering voltage\n",
- "C = 0.47*10**-6 # capacitor value\n",
- "f = 50.0 # frequency\n",
- "#Calculations\n",
- "# For Rmin\n",
- "theta = (180/math.pi)*math.atan(2*math.pi*f*C*Rmin)\n",
- "theta = math.ceil(theta*10)/10\n",
- "Vc = Vs*math.cos(theta*math.pi/180)\n",
- "Vc = math.floor(Vc*100)/100\n",
- "alfa = ((180/math.pi)*math.asin(Vg/(math.sqrt(2)*Vc)))+theta\n",
- "alfa = math.floor(alfa*10)/10\n",
- "\n",
- "# for Rmax\n",
- "theta2 = (180/math.pi)*math.atan(2*math.pi*f*C*Rmax)\n",
- "theta2 = math.ceil(theta2*10)/10\n",
- "Vc2 = Vs*math.cos(theta2*math.pi/180)\n",
- "Vc2 = math.floor(Vc2*100)/100\n",
- "alfa2 = ((180/math.pi)*math.asin(Vg/(math.sqrt(2)*Vc2)))+theta2\n",
- "alfa2 = math.ceil(alfa2*10)/10\n",
- "\n",
- "#Result\n",
- "print(\"Minimum firing angle = %.1f\u00b0\"%alfa)\n",
- "print(\"Maximum firing angle = %.1f\u00b0\"%alfa2)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Minimum firing angle = 8.7\u00b0\n",
- "Maximum firing angle = 74.1\u00b0\n"
- ]
- }
- ],
- "prompt_number": 137
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.31, Page No. 83"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# UJT relaxation oscillator design(reffering to fig.2.40)\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "f = 50.0 # frequency of supply\n",
- "Vbb = 12.0 # typical input vpltage\n",
- "P = 300*10**3 # maximumm average power dissipation\n",
- "Rbb = 5.6*10**3 # base resistor\n",
- "Iv = 4*10**-3 # Valley point voltage\n",
- "h = 0.63 # intrinsic stand off ratio\n",
- "Vd = 0.5 # drop across p-n junction\n",
- "Vv = 2.0 # Valley point voltage\n",
- "Ip = 5*10**-6 # peak point current\n",
- "v = 0.18 # minimum voltage for which SCR will not trigger\n",
- "\n",
- "#calculation\n",
- "T = 1/f\n",
- "#operating point should be on the left of valley point\n",
- "R_1 = (Vbb-Vv)/Iv # R should be greater than this value\n",
- "Vp = (h*Vbb)+Vd\n",
- "#operation point should lie in the negative resistance region of characteristics of UJT\n",
- "R_2 = (Vbb-Vp)/Ip # R should be less than this value\n",
- "C = 0.02*10**-6 # assumed\n",
- "R_3 = T/(C*math.log(1/(1-h)))\n",
- "\n",
- "C2 = 0.04*10**-6 # assumed\n",
- "R_4 = T/(C2*math.log(1/(1-h)))\n",
- "R = 500*10**3 # assumed\n",
- "Rmax = R+R_1\n",
- "R3_1 = (10**4)/(h*Vbb)\n",
- "R3 = 1200 # assumed\n",
- "R4_1 = v*(R3+Rbb)/(Vbb-v) # R4 value should be less than this value\n",
- "R4 = 100 # assumed \n",
- "tw = R4*C2\n",
- "tow_min = R_1*C2*math.log(1/(1-h))\n",
- "alfa_min = tow_min*(360/T)\n",
- "tow_max = Rmax*C2*math.log(1/(1-h))\n",
- "alfa_max = tow_max*(360/T)\n",
- "\n",
- "#Result\n",
- "print(\"For C = %.2f micro F, R = %.2f k-ohm\\nThis value of R is more than maximum of %d k-ohm.\"%(C*10**6,R_3/1000,R_2/1000) )\n",
- "print(\"Hence not suitable.\")\n",
- "print(\"\\nFor C = %.2f micro F, R = %.2f K-ohm.\"%(C2*10**6,R_4/1000))\n",
- "print(\"As this is less than max value. It is suitable. \\nLets assume R = %d k-ohm\"%(R/1000))\n",
- "print(\"Rmax = %.1f k-ohm\"%(Rmax/1000))\n",
- "print(\"\\nR3 = %.2f k-ohm. so take nearest value R3 = %.1f k-ohm\"%(R3_1/1000,R3/1000.0))\n",
- "print(\"\\nR4 = %.2f ohm. so take nearest value R4 = %.1f ohm\"%(R4_1,R4))\n",
- "print(\"\\nMinimum firing angle = %.2f\u00b0\"%alfa_min)\n",
- "print(\"Maximum firing angle = %.1f\u00b0\"%alfa_max)\n",
- "print(\"\\nThough maximum firing angle available is %.1f\u00b0, it will not be needed\"%alfa_max)\n",
- "print(\"because in a single phase full wave converter the maximum firing angle is 180\u00b0\")"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "For C = 0.02 micro F, R = 1005.78 k-ohm\n",
- "This value of R is more than maximum of 788 k-ohm.\n",
- "Hence not suitable.\n",
- "\n",
- "For C = 0.04 micro F, R = 502.89 K-ohm.\n",
- "As this is less than max value. It is suitable. \n",
- "Lets assume R = 500 k-ohm\n",
- "Rmax = 502.5 k-ohm\n",
- "\n",
- "R3 = 1.32 k-ohm. so take nearest value R3 = 1.2 k-ohm\n",
- "\n",
- "R4 = 103.55 ohm. so take nearest value R4 = 100.0 ohm\n",
- "\n",
- "Minimum firing angle = 1.79\u00b0\n",
- "Maximum firing angle = 359.7\u00b0\n",
- "\n",
- "Though maximum firing angle available is 359.7\u00b0, it will not be needed\n",
- "because in a single phase full wave converter the maximum firing angle is 180\u00b0\n"
- ]
- }
- ],
- "prompt_number": 166
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.32, Page No.92"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# conduction time of thyristor\n",
- "\n",
- "import math\n",
- "#variable declaratrion\n",
- "R =0.8 # load resistance\n",
- "L = 10*10**-6 # inductance\n",
- "C = 50*10**-6 # capacitance\n",
- "\n",
- "#calculations\n",
- "R1 = math.sqrt(4*L/C) # R should be less than this value\n",
- "t = math.pi/(math.sqrt((1/(L*C))-((R**2)/(4*L**2))))\n",
- "\n",
- "#Result\n",
- "print(\"Value of sqrt(4L/C) is %.4f and give R = %.1f\\nTherefore, the circuit is underdamped.\"%(R1,R))\n",
- "print(\"\\nt0 = %.2f*10**-6 seconds\"%(t*10**6))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Value of sqrt(4L/C) is 0.8944 and give R = 0.8\n",
- "Therefore, the circuit is underdamped.\n",
- "\n",
- "t0 = 157.08*10**-6 seconds\n"
- ]
- }
- ],
- "prompt_number": 169
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.33, Page No. 92"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "#Values of L and C\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "I = 8.0 # load current\n",
- "V = 90.0 # Supply voltage\n",
- "t = 40.0*10**-6 # turn off time\n",
- "\n",
- "#calculation\n",
- "#print(\"Assume peak value of capacitor current to be twice the load cuuren.\")\n",
- "C_by_L = (2*I/V)**2 # using eq 2.33\n",
- "#print(\"Assume that thyristor is reverse biased for one-fourth period of resonant circuit.\")\n",
- "CL = (t*2/math.pi)**2\n",
- "# (2*I/V)^2*L^2 =(t*2/math.pi)^2\n",
- "\n",
- "L = math.sqrt(CL/C_by_L)\n",
- "C =C_by_L*L\n",
- "\n",
- "print(\"L = %.2f*10**-6 H\\nC = %.3f*10**-6 F\"%(L*10**6,C*10**6))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "L = 143.24*10**-6 H\n",
- "C = 4.527*10**-6 F\n"
- ]
- }
- ],
- "prompt_number": 173
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.34, Page No. 92"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "#Value of C for commutation\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "R = 10 # load resistace\n",
- "V = 100 # supply voltage \n",
- "t = 50 * 10**-6 # turn off time\n",
- "\n",
- "#Calculations\n",
- "C = t/(R*math.log(2))\n",
- "\n",
- "#Result\n",
- "print(\"C = %.2f*10^-6 F\"%(C*10**6))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "C = 7.21*10^-6 F\n"
- ]
- }
- ],
- "prompt_number": 176
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.35, Page No. 93"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# L and C of commutation circuit\n",
- "\n",
- "import math\n",
- "# variable declaration\n",
- "V = 100 # supply voltage\n",
- "I = 40 # maximumm load current\n",
- "T = 40*10**-6 # turn off time\n",
- "t = 1.5 # extra 50% tolerance\n",
- "\n",
- "#Calculation\n",
- "T = T*t\n",
- "C = I*T/V\n",
- "L = (V**2)*C/(I**2)\n",
- "Ip = V*math.sqrt(C/L)\n",
- "L2 = 2* 10**-4 # assume\n",
- "Ip2 = V*math.sqrt(C/L2)\n",
- "print(\"C = %.0f*10^-6 F\\nL = %.1f*10^-4 H\\nPeak capacitor current = %d A\"%(C*10**6,L*10**4,Ip))\n",
- "print(\"\\nPeak capacitor current should be less than maximum load currentof %d A. If L is selected as %d *10^-4 H,\"%(I,L2*10**4))\n",
- "print(\"the peak capacitor current will be %.1f A. Since this is less than %d A, this value of L is satisfactory.\"%(Ip2,I))\n",
- "print(\"\\nHence,\\nC = %.0f*10^-6 F\\nL = %.1f*10^-4 H\"%(C*10**6,L2*10**4))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "C = 24*10^-6 F\n",
- "L = 1.5*10^-4 H\n",
- "Peak capacitor current = 40 A\n",
- "\n",
- "Peak capacitor current should be less than maximum load currentof 40 A. If L is selected as 2 *10^-4 H,\n",
- "the peak capacitor current will be 34.6 A. Since this is less than 40 A, this value of L is satisfactory.\n",
- "\n",
- "Hence,\n",
- "C = 24*10^-6 F\n",
- "L = 2.0*10^-4 H\n"
- ]
- }
- ],
- "prompt_number": 187
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.36, Page No. 93"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# current rating of the thyristor\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "Vdc = 100.0 # input voltage\n",
- "L = 0.1 *10**-3 # Inductance\n",
- "C = 10*10**-6 # capacitance\n",
- "Vc = 100.0 # iinitial voltage on capacitor\n",
- "t = 25.0*10**-6 # thyristor turn offf time\n",
- "I = 10.0 # Thyristor load current\n",
- "\n",
- "#Calculations\n",
- "t_off = Vc*C/I\n",
- "Ic = Vdc*math.sqrt(C/L)\n",
- "\n",
- "# Result\n",
- "print(\"t_off = %d *10^-6 S\\nt_off is more than thyristor turn off time and is thus sufficient to commutate the main circuit.\"%(t_off*10**6))\n",
- "print(\"\\nPeak capacitor current = %.2fA \"%Ic)\n",
- "print(\"Maximum current rating of thyristor should be more than %.2fA\"%Ic)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "t_off = 100 *10^-6 S\n",
- "t_off is more than thyristor turn off time and is thus sufficient to commutate the main circuit.\n",
- "\n",
- "Peak capacitor current = 31.62A \n",
- "Maximum current rating of thyristor should be more than 31.62A\n"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.37, Page No. 97"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# value of R and C for snubber circuit\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "dv_by_dt = 25*10**6 # Thyristor's dv/dt rating\n",
- "L = 0.2 *10**-3 # source inductance\n",
- "V = 230 # Supply voltage\n",
- "df = 0.65 # damping factor\n",
- "\n",
- "#Calculation\n",
- "Vm = V*math.sqrt(2) \n",
- "C = (1/(2*L))*(0.564*Vm/dv_by_dt)**2\n",
- "R = 2*df*math.sqrt(L/C)\n",
- "\n",
- "#Result\n",
- "print(\"C = %.2f*10^-9 F\\n\\nR = %.1f ohm\"%(C*10**9,R))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "C = 134.62*10^-9 F\n",
- "\n",
- "R = 50.1 ohm\n"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.38, Page No.97"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# snuubber circuit parameters\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "V = 300.0 # input voltage\n",
- "Rl = 10.0 # load resistance\n",
- "f = 2000.0 # operating frequency otf the circuit\n",
- "dv_by_dt = 100.0*10**6 # required dv/dt rating of the circuit\n",
- "I = 100.0 # discharge current\n",
- "\n",
- "#calculations\n",
- "#(a)\n",
- "R = V/I\n",
- "C = (1-(1/math.e))*Rl*V/(dv_by_dt*((R+Rl)**2))\n",
- "C = math.floor(C*10**9)/10**9\n",
- "#(b)\n",
- "P = (C*V**2*f)/2\n",
- "\n",
- "#Result\n",
- "print(\"(a)\\nR = %f ohm\\nC = %.3f*10^-6 F\"%(R,C*10**6))\n",
- "print(\"\\n(b)\\nSnubber power loss = %.2f W\"%P)\n",
- "print(\"\\nAll the energy stored in capacitor C is dissipated in resistance R. Hence power rating of R is %.2f W.\"%P)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a)\n",
- "R = 3.000000 ohm\n",
- "C = 0.112*10^-6 F\n",
- "\n",
- "(b)\n",
- "Snubber power loss = 10.08 W\n",
- "\n",
- "All the energy stored in capacitor C is dissipated in resistance R. Hence power rating of R is 10.08 W.\n"
- ]
- }
- ],
- "prompt_number": 37
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.39, Page No.98"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# maximum permissiible values of dv/dt and di/dt\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "R = 4.0 # resistance\n",
- "L = 6.0*10**-6 # inductance\n",
- "C = 6.0*10**-6 # capacitance\n",
- "V = 300.0 # Supply voltage\n",
- "\n",
- "#calculations\n",
- "di_dt = V/L\n",
- "Isc = V/R\n",
- "dv_dt =(R* di_dt)+(Isc/C)\n",
- "\n",
- "#Result\n",
- "print(\"Maximum di/dt = %.0f*10^6 A/s\\n\\nmaximum permissible dv/dt = %.1f*10^6 V/s\"%(di_dt*10**-6,dv_dt*10**-6))\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Maximum di/dt = 50*10^6 A/s\n",
- "\n",
- "maximum permissible dv/dt = 212.5*10^6 V/s\n"
- ]
- }
- ],
- "prompt_number": 39
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.40, Page No.98"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# snubber circuit designe\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "\n",
- "Rl = 8.0 # load resistance\n",
- "V = 230.0 # supply voltage\n",
- "I = 200.0 # repititive peak current \n",
- "di_dt = 40.0*10**6 # max. di/di rating\n",
- "dv_dt = 150.0*10**6 # max. dv/dv rating\n",
- "sf = 2.0 # safety factor for thyristor\n",
- "\n",
- "#Calculation\n",
- "\n",
- "I1 = I/2.0\n",
- "di_dt2 = di_dt/2.0\n",
- "dv_dt2 = dv_dt/2\n",
- "Vp = V*math.sqrt(2)\n",
- "#Vp = math.floor((Vp*10)/10)\n",
- "L2 = Vp/di_dt2\n",
- "L2 = math.floor(L2*10**8)/10**8\n",
- "R2 = L2*dv_dt2/Vp\n",
- "Ip = Vp/Rl\n",
- "Ic = (math.floor(Vp*10)/10)/R2\n",
- "It = math.floor(Ip*100)/100+Ic\n",
- "Ic_max = I1 - Ip\n",
- "Ic_max = math.ceil(Ic_max*100)/100\n",
- "R = Vp /Ic_max\n",
- "R = math.ceil(R)\n",
- "h = 0.65 #assumed \n",
- "C = 4*(h**2)*L2/R**2\n",
- "dv_dt3 = Vp/((R+Rl)*C)\n",
- "\n",
- "#Result\n",
- "print(\"when safety factor is 2 ,maximum permisible ratings are:\")\n",
- "print(\"max. di/dt = %.0f*10^6 A/s\\nmax. dv/dt = %.0f*10^6 V/s\"%(di_dt2*10**-6,dv_dt2*10**-6))\n",
- "print(\"\\nPeak value of input voltage = %.1f V\"%(math.floor(Vp*10)/10))\n",
- "print(\"L = %.2f*10^-6 H \\nR = %.2f ohm\"%(L2*10**6,R2))\n",
- "print(\"Peak load current = %.2fA\\nPeak capacitor discharge current = %.2f A\"%(math.floor(Ip*100)/100,Ic))\n",
- "print(\"Total current through capacitor = %.2f\"%It)\n",
- "print(\"\\nSince total current through capacitor is more than permissible vale. Hence max capacitor discharge current = %.2fA\"%Ic_max)\n",
- "print(\"R = %.0f ohm\\nC = %.4f*10^-6F\"%(R,C*10**6))\n",
- "print(\"dv/dt = %.2f*10^6 V/s\\nSince this value is within specified limit the design is safe. \"%(math.floor(dv_dt3*10**-4)/100))\n",
- "print(\"Hence, R = %d ohm, C = %.4f micro-F and L = %.2f micro-H\"%(R,C*10**6,L2*10**6))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "when safety factor is 2 ,maximum permisible ratings are:\n",
- "max. di/dt = 20*10^6 A/s\n",
- "max. dv/dt = 75*10^6 V/s\n",
- "\n",
- "Peak value of input voltage = 325.2 V\n",
- "L = 16.26*10^-6 H \n",
- "R = 3.75 ohm\n",
- "Peak load current = 40.65A\n",
- "Peak capacitor discharge current = 86.74 A\n",
- "Total current through capacitor = 127.39\n",
- "\n",
- "Since total current through capacitor is more than permissible vale. Hence max capacitor discharge current = 59.35A\n",
- "R = 6 ohm\n",
- "C = 0.7633*10^-6F\n",
- "dv/dt = 30.43*10^6 V/s\n",
- "Since this value is within specified limit the design is safe. \n",
- "Hence, R = 6 ohm, C = 0.7633 micro-F and L = 16.26 micro-H\n"
- ]
- }
- ],
- "prompt_number": 83
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.41, Page No. 100"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Fault clearing time(referring to fig.2.59)\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "I2t = 30 # I2t rating of thyristor\n",
- "V = 230 # supply voltage\n",
- "#For resistor values refer to fig 2.59\n",
- "R1 = 2.0\n",
- "R2 = 1.0\n",
- "R3 = 5.0\n",
- "R4 = 6.0\n",
- "R5 = 5.0 \n",
- "#calculation\n",
- "Rnet = R1+(R3*R2)/R4\n",
- "If = math.sqrt(2)*V/Rnet\n",
- "tc = I2t/(If**2)\n",
- "\n",
- "#Result\n",
- "print(\"tc = %.3f*10^-3 seconds \"%(math.ceil(tc*1000*1000)/1000))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "tc = 2.277*10^-3 seconds \n"
- ]
- }
- ],
- "prompt_number": 90
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.42, Page No.103"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# number of thyristors in series and parallel\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "V = 3*10**3 # supply voltage\n",
- "I = 750.0 # supply current\n",
- "V1 = 800.0 # Thyristor voltage rating\n",
- "I1 = 175.0 # Thyristor current rating\n",
- "d = 0.25 # derating\n",
- "\n",
- "\n",
- "# Calculation\n",
- "np = I/((1-d)*I1)\n",
- "ns = V/((1-d)*V1)\n",
- "print(\"np = %.2f or %d\"%(np,math.ceil(np)))\n",
- "print(\"ns = %d\"%(math.ceil(ns)))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "np = 5.71 or 6\n",
- "ns = 5\n"
- ]
- }
- ],
- "prompt_number": 97
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.43, Page No. 104"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Value of R and C\n",
- "\n",
- "import math\n",
- "#variable declaration(referring to example 2.42)\n",
- "V = 3*10**3 # supply voltage\n",
- "I = 750.0 # supply current\n",
- "V1 = 800.0 # Thyristor voltage rating\n",
- "I1 = 175.0 # Thyristor current rating\n",
- "d = 0.25 # derating\n",
- "Ib = 8*10**-3 # maximum forward leakage current\n",
- "del_Q = 30*10**-6 # recovery charge difference\n",
- "ns = 5 # number of series thyristors \n",
- "\n",
- "#Calculations\n",
- "R = ((ns*V1)-V)/((ns-1)*Ib)\n",
- "C = (ns-1)*del_Q/(ns*V1-V)\n",
- "\n",
- "#Result\n",
- "print(\"R = %.2f*10^3 ohm\\nC = %.2f*10^-6 F\"%(R/1000,C*10**6))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "R = 31.25*10^3 ohm\n",
- "C = 0.12*10^-6 F\n"
- ]
- }
- ],
- "prompt_number": 99
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.44, Page No. 104"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# series resistance\n",
- "\n",
- "import math\n",
- "# variabe declaration\n",
- "I1 = 200 # thyristor1 current rating\n",
- "I2 = 300 # thyristor2 current rating\n",
- "V1 = 1.5 # on state voltage drop of thyristor1 \n",
- "V2 = 1.2 # on state voltage drop of thyristor2\n",
- "\n",
- "#Calculations\n",
- "R = (V1-V2)/(I2-I1)\n",
- "\n",
- "#Result\n",
- "print(\"R = %.3f ohm\"%R)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "R = 0.003 ohm\n"
- ]
- }
- ],
- "prompt_number": 100
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.45, Page No.104"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Thyristor parameters\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "ns = 12 # no of series thyristors\n",
- "V = 16*10**3 # maximum DC voltage rating\n",
- "Ib = 10*10**-3 # maximum leakage current of thyristor\n",
- "del_Q = 150 *10**-6 # recovery charge differences of thyristors\n",
- "R = 56*10**3 # resistance\n",
- "C = 0.5 *10**-6 # Capacitance\n",
- "\n",
- "#Calculations\n",
- "Vd1 = (V+(ns-1)*R*Ib)/ns\n",
- "ssvd = 1-(V/(ns*Vd1))\n",
- "Vd2 = (V+((ns-1)*del_Q/C))/ns\n",
- "tsvd = 1-(V/(ns*Vd2))\n",
- "\n",
- "#Result\n",
- "print(\"(a) Maximum steady state voltage rating = %.2f V\"%Vd1)\n",
- "print(\"(b) Steady state voltage derating = %.3f or %.1f%%\"%(ssvd,ssvd*100))\n",
- "print(\"(c) Maximum transient state voltage rating = %.2f V\"%Vd2)\n",
- "print(\"(d) Transient state voltage derating = %.3f or %.1f%%\"%(tsvd,tsvd*100))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Maximum steady state voltage rating = 1846.67 V\n",
- "(b) Steady state voltage derating = 0.278 or 27.8%\n",
- "(c) Maximum transient state voltage rating = 1608.33 V\n",
- "(d) Transient state voltage derating = 0.171 or 17.1%\n"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.46, Page No.104"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# No of Thyristor\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "V = 500.0 # single thyristor voltage rating\n",
- "I = 75.0 # single thyristor current rating\n",
- "Vmax = 7.5*10**3 # overall voltage rating of the circuit\n",
- "Imax = 1.0*10**3 # overall current rating of the circuit\n",
- "df = 0.14 # derating factor\n",
- "\n",
- "#Calcaulations\n",
- "ns = Vmax/((1-df)*V)\n",
- "np = Imax/((1-df)*I)\n",
- "\n",
- "#Result\n",
- "print(\"No of thyristors in series, ns = %.2f say %d\"%(ns,math.ceil(ns)))\n",
- "print(\"No of thyristors in parallel, np = %.2f say %d\"%(np,math.ceil(np)))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "No of thyristors in series, ns = 17.44 say 18\n",
- "No of thyristors in parallel, np = 15.50 say 16\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 2.47, Page No. 105"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Turn off voltage and discharge current through SCR\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "Vmax = 8.0*10**3 # max voltage rating of the circuit\n",
- "R = 20.0*10**3 # static equalising resistance \n",
- "Rc = 25.0 # Resistace of dynamic equalising circuit\n",
- "C = 0.1*10**-6 # Capacitance of dynamic equalising circuit\n",
- "Ib1 = 22.0*10**-3 # leakage current of thyristor1\n",
- "Ib2 = 20.0*10**-3 # leakage current of thyristor2\n",
- "Ib3 = 18.0*10**-3 # leakage current of thyristor3\n",
- "\n",
- "\n",
- "#Calculations \n",
- "#(a)\n",
- "I = ((Vmax/R)+(Ib1+Ib2+Ib3))/3\n",
- "V1 = (I-Ib1)*R\n",
- "V2 = (I-Ib2)*R\n",
- "V3 = (I-Ib3)*R\n",
- "#(b)\n",
- "I1 = V1/Rc\n",
- "I2 = V2/Rc\n",
- "I3 = V3/Rc\n",
- "\n",
- "#Result\n",
- "print(\"Voltage across SCR 1 = %.1fV\"%(math.floor(V1*10)/10))\n",
- "print(\"Voltage across SCR 2 = %.1fV\"%(math.floor(V2*10)/10))\n",
- "print(\"Voltage across SCR 3 = %.1fV\"%(math.floor(V3*10)/10))\n",
- "print(\"Discharge current through SCR 1 = %.2fA\"%(math.floor(I1*100)/100))\n",
- "print(\"Discharge current through SCR 2 = %.2fA\"%(math.floor(I2*100)/100))\n",
- "print(\"Discharge current through SCR 3 = %.2fA\"%(math.floor(I3*100)/100))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Voltage across SCR 1 = 2626.6V\n",
- "Voltage across SCR 2 = 2666.6V\n",
- "Voltage across SCR 3 = 2706.6V\n",
- "Discharge current through SCR 1 = 105.06A\n",
- "Discharge current through SCR 2 = 106.66A\n",
- "Discharge current through SCR 3 = 108.26A\n"
- ]
- }
- ],
- "prompt_number": 23
- }
- ],
- "metadata": {}
- }
- ]
-} \ No newline at end of file