diff options
Diffstat (limited to 'Power_Electronics/Power_electronics_ch_5.ipynb')
-rwxr-xr-x | Power_Electronics/Power_electronics_ch_5.ipynb | 1095 |
1 files changed, 0 insertions, 1095 deletions
diff --git a/Power_Electronics/Power_electronics_ch_5.ipynb b/Power_Electronics/Power_electronics_ch_5.ipynb deleted file mode 100755 index eed0454a..00000000 --- a/Power_Electronics/Power_electronics_ch_5.ipynb +++ /dev/null @@ -1,1095 +0,0 @@ -{
- "metadata": {
- "name": ""
- },
- "nbformat": 3,
- "nbformat_minor": 0,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "heading",
- "level": 1,
- "metadata": {},
- "source": [
- "Chapter 5: Choppers"
- ]
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.1, Page No. 249"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# chopper parameters\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "Vi = 200.0 # input voltage\n",
- "Vo = 150.0 # output voltage\n",
- "R = 10.0 # resistance\n",
- "\n",
- "#Calculations\n",
- "#(a)\n",
- "alfa = Vo/Vi\n",
- "#(b)\n",
- "Iavg = Vo/R\n",
- "Irms = math.sqrt(alfa)*Vi/R\n",
- "#(c)\n",
- "Irms_t = Irms\n",
- "#(d)\n",
- "Iavg_i = Iavg\n",
- "#(e)\n",
- "Reff = R/alfa\n",
- "\n",
- "#Result\n",
- "print(\"(a) Alfa = %.2f \"%alfa)\n",
- "print(\"(b) Average load current = %.0f A\\n RMS load current = %.2f A\"%(Iavg,Irms))\n",
- "print(\"(c) RMS thyristor current = %.2f A\"%Irms_t)\n",
- "print(\"(d) Average input current = %.0f A\"%Iavg_i)\n",
- "print(\"(e) Effective input resistance = %.3f ohm\"%Reff)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Alfa = 0.75 \n",
- "(b) Average load current = 15 A\n",
- " RMS load current = 17.32 A\n",
- "(c) RMS thyristor current = 17.32 A\n",
- "(d) Average input current = 15 A\n",
- "(e) Effective input resistance = 13.333 ohm\n"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# periods of conduction and blocking in each cycle\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "Vi = 230.0 # input voltage\n",
- "Vav = 150.0 # output voltage\n",
- "f = 1000.0 # frequency\n",
- "\n",
- "# Calculation\n",
- "T = 1/f\n",
- "Ton = Vav*T/Vi\n",
- "Toff = T -Ton\n",
- "\n",
- "#Result\n",
- "print(\"Conduction Period = %.3f*10^-3 s\\nBlocking period = %.3f*10^-3 s\"%(Ton*1000,Toff*1000))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Conduction Period = 0.652*10^-3 s\n",
- "Blocking period = 0.348*10^-3 s\n"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.3, Page No. 249"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# periods of conduction and blocking\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "Ra = 0.06 # armature resistance\n",
- "Rf = 0.03 # field resistance\n",
- "I = 15.0 # Average circuit current\n",
- "f = 500.0 # chopper frequency\n",
- "Be = 100 # back emf of motor\n",
- "Vi = 200 # input voltage\n",
- "\n",
- "#Calculations\n",
- "Vav = I*(Ra+Rf)+Be\n",
- "T = 1/f\n",
- "Ton = Vav*T/Vi\n",
- "Toff = T -Ton\n",
- "\n",
- "#Result\n",
- "print(\"Conduction Period = %.4f*10^-3 s\\nBlocking period = %.4f*10^-3 s\"%(Ton*1000,Toff*1000))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Conduction Period = 1.0135*10^-3 s\n",
- "Blocking period = 0.9865*10^-3 s\n"
- ]
- }
- ],
- "prompt_number": 16
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.4, Page No.250"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Duty Cycle\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "N = 800.0 # rated speed in rpm\n",
- "I = 20 # rated current\n",
- "Ra = 0.5 # armature resistanc\n",
- "V = 240.0 # supply voltage\n",
- "N1 = 600.0 # motor speed\n",
- "\n",
- "#Calculations\n",
- "#(a)\n",
- "Be_800 = V- I*Ra\n",
- "Be_600 = Be_800*N1/N\n",
- "Vav = Be_600 + I*Ra\n",
- "D1 = Vav/V\n",
- "#(b)\n",
- "Ia = I/2.0\n",
- "Vav2 = Be_600+Ia*Ra\n",
- "D2 = Vav2/V\n",
- "\n",
- "#Result\n",
- "print(\"(a) Since torque is constant,Ia is also constant, i.e. %d A\\n Duty cycle = %.4f \"%(I,D1))\n",
- "print(\"(b) Since torque is reduced to half and flux is constant,armature current is reduced to half, i.e. %d A\\n Duty cycle = %.4f \"%(Ia,D2))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Since torque is constant,Ia is also constant, i.e. 20 A\n",
- " Duty cycle = 0.7604 \n",
- "(b) Since torque is reduced to half and flux is constant,armature current is reduced to half, i.e. 10 A\n",
- " Duty cycle = 0.7396 \n"
- ]
- }
- ],
- "prompt_number": 22
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.5, Page No.256"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# chopper parameters\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 200.0 # input voltage\n",
- "R = 8.0 # load resistance\n",
- "Vt = 2.0 # voltage drop across thyristor\n",
- "f = 800.0 # chopper frequency\n",
- "d = 0.4 # duty cycle\n",
- "alfa = 0.5 # duty cycle for case 5\n",
- "\n",
- "#Calculations\n",
- "#(a)\n",
- "Vav = d*(V-Vt)\n",
- "#(b)\n",
- "Vl = math.sqrt(d)*(V-Vt)\n",
- "#(c)\n",
- "Po = (Vl**2)/R\n",
- "Pi = d*V*(V-Vt)/R\n",
- "eff = Po/Pi\n",
- "#(d)\n",
- "Ri = R/d\n",
- "#(e)\n",
- "Vl2 = 2*(V-Vt)/math.pi\n",
- "sqrt_2 = math.floor(math.sqrt(2)*1000)/1000\n",
- "V1 = Vl2/sqrt_2\n",
- "V1 = math.floor(V1*1000)/1000\n",
- "\n",
- "#Result\n",
- "print(\"(a) Vav = %.1f V\\n(b) Vl = %.3f V\\n(c) Chopper efficiency = %.0f%%\\n(d) Input resistance = %.0f ohm\"%(Vav,Vl,eff*100,Ri))\n",
- "print(\"(e)\\nThe fundamental component (n=1) is,\\nVl = %.2fsin(%d*pi*t)\\nThe rms value of fundamental component is, V1 = %.3f V\"%(Vl2,2*f,V1))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Vav = 79.2 V\n",
- "(b) Vl = 125.226 V\n",
- "(c) Chopper efficiency = 99%\n",
- "(d) Input resistance = 20 ohm\n",
- "(e)\n",
- "The fundamental component (n=1) is,\n",
- "Vl = 126.05sin(1600*pi*t)\n",
- "The rms value of fundamental component is, V1 = 89.144 V\n"
- ]
- }
- ],
- "prompt_number": 48
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.6, Page No. 257"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# chopping frequency\n",
- "\n",
- "import math\n",
- "#Variable declartion\n",
- "V = 400 # input voltage\n",
- "R = 0 # resistance\n",
- "L = 0.05 # inductance\n",
- "alfa = 0.25 # duty cycle of chopper\n",
- "I = 10 # load current\n",
- "\n",
- "#Calculation\n",
- "Vav = V*alfa\n",
- "Ton = L*I/(V-Vav)\n",
- "T = Ton/alfa\n",
- "f = 1/T\n",
- "\n",
- "#Result\n",
- "print(\"Chopper frequency = %d pulses/s\"%(f))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Chopper frequency = 150 pulses/s\n"
- ]
- }
- ],
- "prompt_number": 50
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.7, Page No. 257"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# chopper parameters\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "R = 4.0 # resistance\n",
- "L = 6*10**-3 # inductance\n",
- "V = 200.0 # voltage\n",
- "alfa = 0.5 # duty cycle\n",
- "f = 1000.0 # frequency\n",
- "E = 0 # back emf \n",
- "#calculations\n",
- "T = 1/f\n",
- "#(a)\n",
- "x = R*T/L\n",
- "Imax = ((V/R)*((1-math.e**(-alfa*x))/(1-math.e**(-x))))-(E/R)\n",
- "Imax = math.ceil(Imax*100)/100\n",
- "Imin = ((V/R)*(((math.e**(alfa*x))-1)/((math.e**(x))-1)))-(E/R)\n",
- "Imin = math.floor(Imin*100)/100\n",
- "#(b)\n",
- "ripple = V/(f*R*L)\n",
- "#(c)\n",
- "Iavg = (Imax+Imin)/2\n",
- "#(d)\n",
- "Il = math.sqrt((Imin**2)+(((Imax-Imin)**2)/3)+(Imin*(Imax-Imin)))\n",
- "Il = math.floor(Il*100)/100\n",
- "#(e)\n",
- "Iavg_i =0.5*Iavg\n",
- "#(f)\n",
- "Irms_i = Il*math.sqrt(0.5)\n",
- "\n",
- "#Result\n",
- "print(\"(a) Imax = %.2f A\\tImin = %.2f A\"%(Imax,Imin))\n",
- "print(\"(b) Maximum Ripple = %.2f A\\n(c) Average load current = %.0f A\"%(ripple,Iavg))\n",
- "print(\"(d) rms load current = %.2f A\\n(e) Average input current = %.1f A\\n(f) RMS input current = %.3f A\"%(Il,Iavg_i,Irms_i))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Imax = 29.13 A\tImin = 20.87 A\n",
- "(b) Maximum Ripple = 8.33 A\n",
- "(c) Average load current = 25 A\n",
- "(d) rms load current = 25.11 A\n",
- "(e) Average input current = 12.5 A\n",
- "(f) RMS input current = 17.755 A\n"
- ]
- }
- ],
- "prompt_number": 65
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.8, Page No.258 "
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Load inductance\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 300 # input voltage\n",
- "R = 5 # load resistance\n",
- "f = 250.0 # chopping frequency\n",
- "r = 0.20 # 20% ripple\n",
- "I = 30 # Average load current\n",
- "\n",
- "#Calculations\n",
- "x = r*I\n",
- "L = V/(4*f*x)\n",
- "\n",
- "#Result\n",
- "print(\"L = %.0f *10^-3 H\"%(L*1000))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "L = 50 *10^-3 H\n"
- ]
- }
- ],
- "prompt_number": 66
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.9, Page No.258"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Current at the instannce of turn off of thryster and 5 msec after turn off\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "R = 0.5 # Armature resistance\n",
- "L = 16*10**-3 # Arature inductance\n",
- "V = 200.0 # DC input voltage\n",
- "Be = 100.0 # Back emf\n",
- "Imin = 10.0 # minimum load current\n",
- "Toff = 2*10**-3 # thyristor turn off time\n",
- "delay = 5*10**-3 # current at the to be calculated 5 msec after turn off\n",
- "\n",
- "#Calculation\n",
- "#(a)\n",
- "x = R/L\n",
- "i = (((V-Be)/R)*(1-math.e**(-x*Toff)))+Imin*(math.e**(-x*Toff))\n",
- "i = math.floor(i*100)/100\n",
- "#(b)\n",
- "i2 = i*(math.e**(-x*delay))\n",
- "\n",
- "#Result\n",
- "print(\"(a) Current at the instance of turn off of thyristor = %.2f A\"%i)\n",
- "print(\"(b) After the turn off of thyristor,the current freewheels 5 ms.\\n\\ti = %.2f A\"%i2)\n",
- "# answers in the book are wrong:12.12+9.39=21.41"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Current at the instance of turn off of thyristor = 21.51 A\n",
- "(b) After the turn off of thyristor,the current freewheels 5 ms.\n",
- "\ti = 18.40 A\n"
- ]
- }
- ],
- "prompt_number": 88
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.10, Page No. 258"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Speed of the motor\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 220.0 # input voltage\n",
- "Ra = 1.0 # armature resistance\n",
- "N = 1000.0 # no load speed of the motor\n",
- "alfa = 0.6 # duty cycle\n",
- "I = 20 # motor current\n",
- "E = 220.0 # back emf at no load\n",
- "\n",
- "# Calculations\n",
- "Vi = V*alfa\n",
- "Be = Vi-Ra*I\n",
- "N1 = Be*N/V\n",
- "\n",
- "#Result\n",
- "print(\"Speed of the motor = %.1f rpm\"%N1)\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Speed of the motor = 509.1 rpm\n"
- ]
- }
- ],
- "prompt_number": 90
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.11, Page No.259"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Average load voltage of the chopper\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "Vi = 230.0 # input voltage\n",
- "Ton = 25 # on time in ms\n",
- "Toff = 10 # off time in ms\n",
- "\n",
- "#Calculations\n",
- "V = Vi*Ton/(Ton+Toff)\n",
- "\n",
- "#Result\n",
- "print(\"Average load voltage = %.3f V\"%V)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Average load voltage = 164.286 V\n"
- ]
- }
- ],
- "prompt_number": 84
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.12, Page No. 259"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# max, min and average load current and load voltage\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 100.0 # applied voltage\n",
- "Be = 0 # back emf\n",
- "L = 1.0*10**-3 # inductance\n",
- "R = 0.5 # Resistance\n",
- "T = 3*10**-3 # Ton + Toff\n",
- "Ton = 1*10**-3 # Ton\n",
- "\n",
- "#Calculations\n",
- "alfa = Ton/T\n",
- "x = T*R/L\n",
- "#(a)\n",
- "Imax = (V/R)*((1- math.e**(-alfa*x))/(1-math.e**(-x)))\n",
- "#(b)\n",
- "Imin = (V/R)*((math.e**(alfa*x)-1)/(math.e**(x)-1))\n",
- "#(c)\n",
- "Vavg = alfa*V\n",
- "\n",
- "#Result\n",
- "print(\" Imax = %.2f A\\n Imin = %.1f A\\n Average load current = %.1f A\\n Average output voltage = %.2f V\"%(Imax,Imin,(Imax+Imin)/2,Vavg))\n",
- "\n"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- " Imax = 101.30 A\n",
- " Imin = 37.3 A\n",
- " Average load current = 69.3 A\n",
- " Average output voltage = 33.33 V\n"
- ]
- }
- ],
- "prompt_number": 89
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.13, Page No.259"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# In One quadrant chopper, output voltage and current\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 100.0 # applied voltage\n",
- "Be = 12.0 # back emf\n",
- "L = 0.8*10**-3 # inductance\n",
- "R = 0.2 # Resistance\n",
- "T = 2.4*10**-3 # Ton + Toff\n",
- "Ton = 1*10**-3 # Ton\n",
- "\n",
- "#Calculations\n",
- "alfa = Ton/T\n",
- "x = T*R/L\n",
- "#(a)\n",
- "Imax = (V/R)*((1- math.e**(-alfa*x))/(1-math.e**(-x)))\n",
- "#(b)\n",
- "Imin = (V/R)*((math.e**(alfa*x)-1)/(math.e**(x)-1))\n",
- "#(c)\n",
- "Vavg = alfa*V\n",
- "\n",
- "#Result\n",
- "print(\"(a) Imax = %.2f A\\n(b) Imin = %.1f A\\n(c) Average output voltage = %.2f V\"%(Imax,Imin,Vavg))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Imax = 245.13 A\n",
- "(b) Imin = 172.7 A\n",
- "(c) Average output voltage = 41.67 V\n"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.14, Page No. 260"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Series inductance\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "f = 400.0 # chopping frequency\n",
- "V = 500.0 # input voltage\n",
- "I = 10 # maximum current swing\n",
- "\n",
- "#calculations\n",
- "L = V/(4*f*I)\n",
- "\n",
- "#Result\n",
- "print(\"Series Inductance, L = %.2f*10^-3 H \"%(L*1000))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Series Inductance, L = 31.25*10^-3 H \n"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.15, Pager No.260"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# Motor speed and current swing\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 800.0 # input voltage\n",
- "P = 300.0 # motor power rating in HP\n",
- "eff = 0.9 # motor efficiency\n",
- "R = 0.1 # total armature and field resistance\n",
- "L = 100*10**-3 # inductance\n",
- "alfa = 0.2 # duty cycle\n",
- "N = 900.0 # motor rated speed \n",
- "f = 400.0 # chopping frequency\n",
- "\n",
- "#Calculations\n",
- "Po = P*735.5/1000\n",
- "Pi = Po/eff\n",
- "I = Pi*1000/V\n",
- "Be = V-(I*R)\n",
- "Be_duty = (alfa*V)-(I*R)\n",
- "N2 = N*Be_duty/Be\n",
- "di = (V- (alfa*V))*alfa/(L*f)\n",
- "\n",
- "#Result\n",
- "print(\"Motor speed = %.2f rpm\\nCurrent swing = %.1f A\"%(N2,di))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Motor speed = 151.32 rpm\n",
- "Current swing = 3.2 A\n"
- ]
- }
- ],
- "prompt_number": 16
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.16, Page No. 261"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "print(\"Theoretical example\")"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Theoretical example\n"
- ]
- }
- ],
- "prompt_number": 17
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.17, Page No. 262"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "print(\"Theoretical example\")"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Theoretical example\n"
- ]
- }
- ],
- "prompt_number": 18
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.18, Page No. 264"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# step down chopper parameters\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 200.0 # input voltage\n",
- "R = 2.0 # resistance\n",
- "L = 10*10**-3 # inductance\n",
- "E = 20.0 # back emf\n",
- "T = 1000*10**-6 # chopping cycle\n",
- "Ton =300*10**-6 # Ton time of thyrister\n",
- "\n",
- "#Calculations\n",
- "#(a)\n",
- "f = 1/T\n",
- "x = (R*T)/L\n",
- "alfa_min =(math.log(1+((E/V)*(math.e**(x)-1))))/x\n",
- "alfa = Ton/T\n",
- "#(b)\n",
- "Imax = ((V/R)*((1-math.e**(-alfa*x))/(1-math.e**(-x))))-(E/R)\n",
- "Imax = math.floor(Imax*10)/10\n",
- "Imin = ((V/R)*((math.e**(alfa*x)-1)/(math.e**(x)-1)))-(E/R)\n",
- "Imin = math.floor(Imin*100)/100\n",
- "#(c)\n",
- "Il = (alfa*V-E)/R\n",
- "#(d)\n",
- "x1 = alfa*V\n",
- "x2 = (V*math.sin(math.pi*2*alfa))/math.pi\n",
- "x3 = (V/math.pi)*(1-math.cos(alfa*2*math.pi))\n",
- "x4 = (V*math.sin(math.pi*2*2*alfa))/(math.pi*2)\n",
- "x5 = (V/(2*math.pi))*(1-math.cos(alfa*2*2*math.pi))\n",
- "x6 = (V*math.sin(math.pi*3*2*alfa))/(math.pi*3)\n",
- "x7 = (V/(3*math.pi))*(1-math.cos(alfa*2*3*math.pi))\n",
- "d = f*2*math.pi\n",
- "#(e)\n",
- "Iavg = (alfa*(V-E)/R)-(L*(Imax-Imin)/(R*T))\n",
- "\n",
- "#Result\n",
- "print(\"(a) Minimum required value of alfa = %.4f\\n Actual value of alfa = %.1f\"%(alfa_min,alfa))\n",
- "print(\" Since actual value is more than minimum required for continuous current,the load current is continuous.\")\n",
- "print(\"\\n(b) Imax = %.1f A\\tImin = %.2f A\"%(Imax,Imin))\n",
- "print(\"\\n(c) Average load current = %.0f A\"%Il)\n",
- "print(\"\\n(d) Vl = %d + %.2fcos(%.1ft) + %.2fsin(%.1ft)%.2fcos(%.1ft) + %.2fsin(%.1ft)%.2fcos(%.1ft) + %.2fsin(%.1ft)+....\"%(x1,x2,d,x3,d,x4,2*d,x5,2*d,x6,3*d,x7,3*d))\n",
- "print(\"\\n(e) Average Input current = %.2f A\"%Iavg)\n",
- "# answer for Imin is slightly greater than the answer given in book and hence answer for avg input current"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "(a) Minimum required value of alfa = 0.1095\n",
- " Actual value of alfa = 0.3\n",
- " Since actual value is more than minimum required for continuous current,the load current is continuous.\n",
- "\n",
- "(b) Imax = 22.1 A\tImin = 17.92 A\n",
- "\n",
- "(c) Average load current = 20 A\n",
- "\n",
- "(d) Vl = 60 + 60.55cos(6283.2t) + 83.33sin(6283.2t)-18.71cos(12566.4t) + 57.58sin(12566.4t)-12.47cos(18849.6t) + 4.05sin(18849.6t)+....\n",
- "\n",
- "(e) Average Input current = 6.10 A\n"
- ]
- }
- ],
- "prompt_number": 59
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.19, Page No.266"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# load current values\n",
- "\n",
- "import math\n",
- "#variable declaration\n",
- "V = 200.0 # input voltage\n",
- "R = 4.0 # resistance\n",
- "L = 10*10**-3 # inductance\n",
- "T = 1000*10**-6 # chopping cycle\n",
- "Ton =300*10**-6 # Ton time of thyrister\n",
- "\n",
- "#Calculations\n",
- "f = 1/T\n",
- "alfa = Ton/T\n",
- "x1 = alfa*V\n",
- "x2 = (V*math.sin(math.pi*2*alfa))/math.pi\n",
- "x2 = math.ceil(x2*100)/100\n",
- "x3 = (V/math.pi)*(1-math.cos(alfa*2*math.pi))\n",
- "x3 = math.floor(x3*100)/100\n",
- "x4 = (V*math.sin(math.pi*2*2*alfa))/(math.pi*2)\n",
- "x4 = math.floor(x4*100)/100\n",
- "x5 = (V/(2*math.pi))*(1-math.cos(alfa*2*2*math.pi))\n",
- "x5 = math.floor(x5*100)/100\n",
- "x6 = (V*math.sin(math.pi*3*2*alfa))/(math.pi*3)\n",
- "x6 = math.ceil(x6*100)/100\n",
- "x7 = (V/(3*math.pi))*(1-math.cos(alfa*2*3*math.pi))\n",
- "x7 = math.floor(x7*100)/100\n",
- "\n",
- "sqrt_2 = math.floor(math.sqrt(2)*1000)/1000\n",
- "V1 = math.sqrt((x2**2+x3**2))/sqrt_2\n",
- "V2 = math.sqrt((x4**2+x5**2))/sqrt_2\n",
- "V3 = math.sqrt((x6**2+x7**2))/sqrt_2\n",
- "Z1_mag = math.sqrt(R**2+(2*math.pi*f*L)**2)\n",
- "Z1_angle = math.tan((2*math.pi*f*L)/R)\n",
- "I1 = V1/Z1_mag\n",
- "\n",
- "Z2_mag = math.sqrt(R**2+(2*2*math.pi*f*L)**2)\n",
- "Z2_angle = math.tan((2*2*math.pi*f*L)/R)\n",
- "I2 = V2/Z2_mag\n",
- "\n",
- "Z3_mag = math.sqrt(R**2+(3*2*math.pi*f*L)**2)\n",
- "Z3_angle = math.tan((3*2*math.pi*f*L)/R)\n",
- "I3 = V3/Z3_mag\n",
- "\n",
- "Iavg = alfa*V/4\n",
- "Irms = math.sqrt(Iavg**2+I1**2+I2**2+I3**2)\n",
- "\n",
- "print(\"RMS value of first harmonic component of load current = %.3f A\"%I1)\n",
- "print(\"RMS value of second harmonic component of load current = %.4f A\"%I2)\n",
- "print(\"RMS value of third harmonic component of load current = %.4f A\"%I3)\n",
- "print(\"RMS value of load current = %.4f A\"%Irms)"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "RMS value of first harmonic component of load current = 1.157 A\n",
- "RMS value of second harmonic component of load current = 0.3406 A\n",
- "RMS value of third harmonic component of load current = 0.0492 A\n",
- "RMS value of load current = 15.0485 A\n"
- ]
- }
- ],
- "prompt_number": 74
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.20, Page No.273"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# L and C of the auxiliary commutation circuit\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 200 # input voltage\n",
- "I = 50 # average current\n",
- "Il = 60 # peak load current\n",
- "Toff = 15*10**-6 # thyristor turn off current\n",
- "l = 1.5 # max current limit of 150%\n",
- "\n",
- "\n",
- "#calculation\n",
- "C = Toff*Il/V # C should be greater than this value\n",
- "C1 = 5 *10**-6 # assumed\n",
- "Ic = Il*l-Il\n",
- "L = (V**2*(C1))/(Ic**2)\n",
- "\n",
- "#Result\n",
- "print(\"C > %.1f*10^-6, Therefore assume C = %.1f*10^6 F\"%(C*10**6,C1*10**6))\n",
- "print(\"L = %.2f*10^-6 H\"%(L*10**6))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "C > 4.5*10^-6, Therefore assume C = 5.0*10^6 F\n",
- "L = 222.22*10^-6 H\n"
- ]
- }
- ],
- "prompt_number": 79
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.21, Page No.277"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# period of conduction\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 200.0 # input voltage \n",
- "Vav = 250.0 # output voltage\n",
- "Toff = 0.6*10**-3 # blocking period\n",
- "\n",
- "#calculation\n",
- "Ton = (Vav*Toff/V) - Toff\n",
- "\n",
- "#Result\n",
- "print(\"Ton = %.2f*10^-3 second\"%(Ton*10**3))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Ton = 0.15*10^-3 second\n"
- ]
- }
- ],
- "prompt_number": 81
- },
- {
- "cell_type": "heading",
- "level": 2,
- "metadata": {},
- "source": [
- "example 5.22, Page No.277"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "# period of conduction\n",
- "\n",
- "import math\n",
- "#Variable declaration\n",
- "V = 150.0 # input voltage \n",
- "Vav = 250.0 # output voltage\n",
- "Toff = 1*10**-3 # blocking period\n",
- "\n",
- "#calculation\n",
- "Ton = (Vav*Toff/V) - Toff\n",
- "\n",
- "#Result\n",
- "print(\"Ton = %.4f*10^-3 second\"%(Ton*10**3))"
- ],
- "language": "python",
- "metadata": {},
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Ton = 0.6667*10^-3 second\n"
- ]
- }
- ],
- "prompt_number": 83
- }
- ],
- "metadata": {}
- }
- ]
-}
\ No newline at end of file |