diff options
Diffstat (limited to 'Introduction_to_Power_Electronics_by_V._Jagannathan')
-rw-r--r-- | Introduction_to_Power_Electronics_by_V._Jagannathan/chapter2.ipynb | 680 | ||||
-rw-r--r-- | Introduction_to_Power_Electronics_by_V._Jagannathan/chapter3.ipynb | 893 | ||||
-rw-r--r-- | Introduction_to_Power_Electronics_by_V._Jagannathan/chapter4.ipynb | 327 | ||||
-rw-r--r-- | Introduction_to_Power_Electronics_by_V._Jagannathan/chapter5.ipynb | 210 | ||||
-rw-r--r-- | Introduction_to_Power_Electronics_by_V._Jagannathan/chapter7.ipynb | 186 | ||||
-rw-r--r-- | Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/avgArmCurr7_.png | bin | 0 -> 32557 bytes | |||
-rw-r--r-- | Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/speedmotor7.png | bin | 0 -> 23871 bytes | |||
-rw-r--r-- | Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/triggeringangle7.png | bin | 0 -> 27253 bytes |
8 files changed, 2296 insertions, 0 deletions
diff --git a/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter2.ipynb b/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter2.ipynb new file mode 100644 index 00000000..f58090bf --- /dev/null +++ b/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter2.ipynb @@ -0,0 +1,680 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 2 - Power Switching Devices & Their Characteristics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.1 page 67" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "VA = 1.10 V\n" + ] + } + ], + "source": [ + "V1=1 # V across SCR\n", + "IG=0 # A\n", + "Ih=2 # mA holding current\n", + "R=50 # ohm\n", + "\n", + "# Applying kirchoff law\n", + "#VA-(IAK*R)-V1=0\n", + "VA=(Ih*10**-3*R)+V1 # V (let IAK=Ih)\n", + "print 'VA = %.2f V'%(VA)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.2 page 67" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Minimum duration of gating pulse = 10 us\n" + ] + } + ], + "source": [ + "diBYdt=1000 # A/s (rate of rise of current)\n", + "il=10 # mA (latching current = diBYdt * tp)\n", + "tp=il*10**-3/diBYdt # s\n", + "print 'Minimum duration of gating pulse = %.f us'%(tp*10**6)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.3 page 68" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Gate power dissipation = 4 W\n", + "\n", + " Resistance to be connected = 14 ohm\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "m=16 # V/A (gradient)\n", + "t_on=4 # us\n", + "IG=500 # mA\n", + "VS=15 # V\n", + "\n", + "VG=m*IG/1000 # V\n", + "#Load line equation\n", + "#VG=VS-IG*RS\n", + "RS=(VS-VG)/(IG/1000) # ohm\n", + "Pg=VS*(IG/1000)**2 # # W\n", + "print 'Gate power dissipation = %.f W'%(Pg)\n", + "print '\\n Resistance to be connected = %.f ohm'%(RS)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.4 page 68" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Value of resistance to be added in series = 44.11 ohm\n" + ] + } + ], + "source": [ + "from numpy import roots\n", + "# VG=0.5+8*IG -- eqn(1)\n", + "f=400# # Hz\n", + "delta=0.1 # # (Duty Cycle)\n", + "P=0.5 # W\n", + "VS=12 # V\n", + "\n", + "Tp=1/f*10**6 # us\n", + "# P= VG*IG -- eqn(2)\n", + "# solving eqn 1 and 2\n", + "#8*IG*IG**2+0.5*IG-P=0\n", + "p=[8, 0.5, -P] # polynomial for IG\n", + "IG=roots(p) # A \n", + "IG=IG[1] # A (discarding -ve value)\n", + "VG=0.5+8*IG # V\n", + "# VS=VG+IG*RS\n", + "RS=(VS-VG)/IG\n", + "print 'Value of resistance to be added in series = %.2f ohm'%(RS)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.5 page 69" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Value of resistance to be connected in series = 6.97 ohm\n", + "\n", + " Triggering frequency = 5.00 kHz\n", + "\n", + " Duty Cycle = 0.1 \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "# VG=10*IG -- eqn(1)\n", + "PGM=5 # W\n", + "PGav=.5 # W\n", + "VS=12 # V\n", + "Tp=20 # us\n", + "\n", + "# PGM = VG*IG where VG=10*IG\n", + "\n", + "IG=sqrt(PGM/10) # A\n", + "VG=10*IG # V\n", + "# During the application of pulse VS = VG+(IG*RS)\n", + "RS=(VS-VG)/IG # ohm\n", + "f=PGav/(PGM*Tp*10**-6)/1000 # kHz\n", + "delta=f*1000*Tp*10**-6 # Duty Cycle\n", + "print 'Value of resistance to be connected in series = %.2f ohm'%(RS)\n", + "print '\\n Triggering frequency = %.2f kHz'%(f)\n", + "print '\\n Duty Cycle = %.1f '%(delta)\n", + "# Note : ans in the textbook is not accurate." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.6 page 70" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Value of R = 31.25 kohm\n", + "\n", + " Value of C = 1.20e-07 F\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "VS=3 # kV\n", + "IS=750 # A\n", + "\n", + "VD=800 # V\n", + "ID=175 # A\n", + "dr=30/100 # de-rating factor\n", + "IB=8 # mA\n", + "delQ=30 # u Coulomb\n", + "# dr = 1-IS/np*ID\n", + "np = round(IS/(1-dr)/(ID)) # # no. of parallel string\n", + "ns = round(VS*1000/(1-dr)/(VD)) # # no. of series string\n", + "R=(ns*VD-VS*1000)/(ns-1)/(IB/1000)/1000 # kohm\n", + "C=(ns-1)*delQ*10**-6/(ns*VD-VS*1000)\n", + "print 'Value of R = %.2f kohm'%(R)\n", + "print '\\n Value of C = %.2e F'%(C)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.7 page 71" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " no. of series connection = 7\n", + "\n", + " no. of parallel connection = 5\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import ceil\n", + "VS=4 # kV\n", + "IS=800 # A\n", + "\n", + "VD=800 # V\n", + "ID=200 # A\n", + "dr=20/100 # de-rating factor\n", + "# for series connection\n", + "ns = ceil(VS*1000/(1-dr)/(VD)) # # no. of series string\n", + "# for parallel connection\n", + "np = round(IS/(1-dr)/(ID)) # # no. of parallel string\n", + "print '\\n no. of series connection = %d'%(ns)\n", + "print '\\n no. of parallel connection = %d'%(np)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.8 page 72" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Series resistance = 0.007 ohm\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "IS1=100 # A\n", + "IS2=150 # A\n", + "vd1=2.1 # V\n", + "vd2=1.75 # V\n", + "I=250 # A\n", + "\n", + "rf1=vd1/IS1 # ohm\n", + "rf2=vd2/IS2 # ohm\n", + "# Equating voltage drops\n", + "# vd1+IS1*re = vd2+IS2*re\n", + "re=(vd1-vd2)/(IS2-IS1)\n", + "print ' Series resistance = %.3f ohm'%(re)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.9 page 72" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Average power loss = 34.8 W\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "Vf1=1 # V\n", + "If1=0 # A\n", + "Vf2=1.9 # V\n", + "If2=60 # A\n", + "IT=20*pi # A\n", + "# PAV = 1/T*integrate(VT*IT,0,T)*dt = ITAV+0.015*IRMS**2\n", + "ITAV=IT/pi # A\n", + "ITRMS=IT/2 # A\n", + "dt=ITAV+0.015*ITRMS**2 # W\n", + "print 'Average power loss = %.1f W'%(dt)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.10 page 73" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Minimum gate pulse width = 8.7 us\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "R=10 # ohm\n", + "L=0.1 # H\n", + "delta_i=20/1000 # A\n", + "Vs=230 # V4\n", + "f=50 # Hz\n", + "theta=45 # degree\n", + "\n", + "delta_t = L*delta_i/Vs# # s\n", + "delta_t = delta_t*10**6 # us\n", + "print 'Minimum gate pulse width = %.1f us'%(delta_t)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.11 page 73" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "gate source resistance = 2.0 kohm\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "m=3*10**3 # gradient (VG/IG)\n", + "VS=10 # V\n", + "PG=0.012 # W\n", + "# IG = VG/m & PG=VG*IG\n", + "VG=sqrt(PG*m)\n", + "IG=VG/m # # A\n", + "RS=(VS-VG)/IG/1000 # kohm\n", + "print 'gate source resistance = %.1f kohm'%(RS)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.12 page 74" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Value of resistance = 6.82 kohm\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "VS=300 # V\n", + "delta_i = 50/1000 # A\n", + "R=60 # ohm\n", + "L=2 # H\n", + "TP=40*10**-6 # s\n", + "\n", + "I1=VS/L*TP # A (at the end of pulse)\n", + "# as I1 << delta_i\n", + "I2=delta_i # A (anode current with RL load)\n", + "\n", + "Rdash = VS/(I2-I1)/1000 # kohm\n", + "print 'Value of resistance = %.2f kohm'%(Rdash)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.13 page 74" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "For half sine wave current : \n", + "\n", + "(i) Average ON State current = 31.83 A\n", + "\n", + "(ii) Average ON State current = 22.51 A\n", + "\n", + "(iii) Average ON State current = 12.54 A\n", + "\n", + "\n", + " For rectangular wave current : \n", + "\n", + "(i) Average ON State current = 35.36 A\n", + "\n", + "(ii) Average ON State current = 25.00 A\n", + "\n", + "(i) Average ON State current = 14.43 A\n", + "\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt\n", + "Im=50 # A\n", + "\n", + "print 'For half sine wave current : \\n'\n", + "# theta=180 # degree\n", + "theta=180 # degree\n", + "Iav=Im/pi # A\n", + "Irms=Im/2 # A\n", + "FF=Irms/Iav # form factor\n", + "ITav=Im/FF # # A\n", + "print '(i) Average ON State current = %.2f A\\n'%(ITav) \n", + "\n", + "# theta=90 # degree\n", + "theta=90 # degree\n", + "Iav=Im/2/pi # A\n", + "Irms=Im/2/sqrt(2) # A\n", + "FF=Irms/Iav # form factor\n", + "ITav=Im/FF # # A\n", + "print '(ii) Average ON State current = %.2f A\\n'%(ITav) \n", + "\n", + "# theta=180 # degree\n", + "theta=180 # degree\n", + "Iav=Im*0.0213 # A\n", + "Irms=Im*0.0849 # A\n", + "FF=Irms/Iav # form factor\n", + "ITav=Im/FF # # A\n", + "print '(iii) Average ON State current = %.2f A\\n'%(ITav) \n", + "\n", + "print '\\n For rectangular wave current : \\n'\n", + "# theta=180 # degree\n", + "theta=180 # degree\n", + "Iav=Im/2 # A\n", + "Irms=Im/sqrt(2) # A\n", + "FF=Irms/Iav # form factor\n", + "ITav=Im/FF # # A\n", + "print '(i) Average ON State current = %.2f A\\n'%(ITav) \n", + "\n", + "# theta=90 # degree\n", + "theta=90 # degree\n", + "Iav=Im/4 # A\n", + "Irms=Im/2 # A\n", + "FF=Irms/Iav # form factor\n", + "ITav=Im/FF # # A\n", + "print '(ii) Average ON State current = %.2f A\\n'%(ITav) \n", + "\n", + "# theta=180 # degree\n", + "theta=180 # degree\n", + "Iav=Im/12 # A\n", + "Irms=Im/2/sqrt(3) # A\n", + "FF=Irms/Iav # form factor\n", + "ITav=Im/FF # # A\n", + "print '(i) Average ON State current = %.2f A\\n'%(ITav) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.14 page 76" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Value of L = 16.67 uH\n", + "\n", + " Value of R = 3.3 ohm\n", + "\n", + " Value of Ip = 175.0 A is greater than permissible peak current = 125.0 A\n", + " change the value of Rs\n", + "\n", + " Value of C = 0.78 uF\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "VS=500 # V\n", + "IP=250 # A\n", + "diBYdt=60 # A/us\n", + "dvaBYdt=200 # V/us\n", + "RL=20 # ohm\n", + "r=0.65 # ohm\n", + "eps=0.65 # damping ratios\n", + "\n", + "F=2 # saftety factor\n", + "IP=IP/2 # A\n", + "diBYdt=60/2 # A/us\n", + "dvaBYdt=200/2 # V/us\n", + "L=VS/diBYdt # uH\n", + "R=L*10**6/VS*dvaBYdt/10**6 # ohm\n", + "print 'Value of L = %.2f uH'%(L)\n", + "print '\\n Value of R = %.1f ohm'%(R)\n", + "\n", + "Ip=VS/RL+VS/R # A\n", + "if Ip > IP :\n", + " print '\\n Value of Ip = %.1f A is greater than permissible peak current = %.1f A\\n change the value of Rs'%(Ip,IP)\n", + " Rs=6 # ohm\n", + "\n", + "Ip=VS/RL+VS/Rs # A\n", + "Cs=(2*eps/Rs)**2*L # uF\n", + "print '\\n Value of C = %.2f uF'%(Cs)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 2.15 page 77" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "I2t rating = 45000 A**2/s\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import ceil,sqrt\n", + "Isb=3000 # A\n", + "f=50 # Hz\n", + "I=sqrt((Isb**2*1/2/f)*f) # A\n", + "I2t=I**2/2/f # A**2/s\n", + "print 'I2t rating = %d A**2/s'%(ceil(I2t))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter3.ipynb b/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter3.ipynb new file mode 100644 index 00000000..ee71b34f --- /dev/null +++ b/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter3.ipynb @@ -0,0 +1,893 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 3 - AC to DC Converters" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.1 page 117" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power delivered = 199.11 W\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "R=100 # ohm\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "alpha=45 # degree\n", + "\n", + "Vo=Vs*sqrt(2)/2/pi*(1+cos(pi/180*alpha)) # V\n", + "Io=Vo/R # A\n", + "Vor=Vs/sqrt(2)*sqrt(1/180*((180-alpha)+sin(pi/180*2*alpha)/2)) # V\n", + "Ior=Vor/R # A\n", + "P=Ior**2*R # W\n", + "print 'Power delivered = %.2f W'%(P)\n", + "\n", + "#Ans in the textbook is not accurate." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.2 page 118" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power supplied to battery = 593 W\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,asin,cos,sin\n", + "\n", + "R=10 # ohm\n", + "E=165 # V\n", + "#vt=330*sin(314*t)\n", + "Vm=330 # V\n", + "f=314/2/pi # Hz\n", + "alpha1=asin(E/Vm) # radian\n", + "alpha2=pi-alpha1 # radian\n", + "Io=1/2/pi/R*(2*Vm*cos(alpha1)-E*(alpha2-alpha1)) # A\n", + "P=E*Io # W\n", + "\n", + "print 'Power supplied to battery = %d W'%(P)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.3 page 119" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "part (a)\n", + "\n", + " dc voltage Vo = 88.3 V\n", + "\n", + " & Current Io = 4.415 A\n", + "\n", + "\n", + " part (b)\n", + "\n", + " rms voltage Vor = 154.943 V\n", + "\n", + " & Current Ior = 7.747 A\n", + "\n", + "\n", + " part (c)\n", + "\n", + " dc Power = 389.85 W\n", + "\n", + " ac Power = 1200.37 W\n", + "\n", + " Rectification efficiency = 0.3248\n", + "\n", + "\n", + " part (d)\n", + "\n", + " Form factor = 1.755 \n", + "\n", + " Ripple factor = 1.442 \n", + "\n", + "\n", + " part (e)\n", + "\n", + " VA rating = 1781.8 VA\n", + "\n", + " Transformer Utilization factor = 0.2188\n", + "\n", + "\n", + " part (f)\n", + "\n", + " Peak inverse voltage = 325 V\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "#v2t = 325*sin(w*t)\n", + "R=20 # ohm\n", + "alfa=45 # degree\n", + "vm=325 # V\n", + "V=230 # V\n", + "print 'part (a)\\n'\n", + "Vo=vm/2/pi*(1+cos(pi/180*alfa)) # V\n", + "Io=Vo/R # A\n", + "print ' dc voltage Vo = %.1f V'%(Vo)\n", + "print '\\n & Current Io = %.3f A'%(Io)\n", + "print '\\n\\n part (b)\\n'\n", + "Vor=vm/2/sqrt(pi)*sqrt((pi-pi/180*alfa)+1/2*sin(pi/180*2*alfa)) # V\n", + "Ior=Vor/R # A\n", + "print ' rms voltage Vor = %.3f V'%(Vor)\n", + "print '\\n & Current Ior = %.3f A'%(Ior)\n", + "print '\\n\\n part (c)'\n", + "Pdc=Vo*Io # W\n", + "Pac=Vor*Ior # W\n", + "eta=Pdc/Pac # rectification efficiency\n", + "print \"\\n dc Power = %.2f W\"%(Pdc)\n", + "print \"\\n ac Power = %.2f W\"%(Pac)\n", + "print \"\\n Rectification efficiency = %.4f\"% (eta)\n", + "print '\\n\\n part (d)'\n", + "FF=Vor/Vo # form factor\n", + "RF=sqrt(FF**2-1)\n", + "print '\\n Form factor = %.3f '%(FF)\n", + "print '\\n Ripple factor = %.3f '%(RF)\n", + "print '\\n\\n part (e)'\n", + "VA=V*Ior # VA\n", + "TUF=Pdc/V/Ior # Transformer Utilization factor\n", + "print \"\\n VA rating = %.1f VA\"%(VA)\n", + "print \"\\n Transformer Utilization factor = %.4f\"%TUF\n", + "print '\\n\\n part (f)'\n", + "Vp=vm # V\n", + "print \"\\n Peak inverse voltage = %d V\"%Vp" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.4 page 120" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(a) Average value of current = 3.60 A\n", + "\n", + " (b) Power supplied to battery = 593 W\n", + "\n", + " (c) Power dissipated in the resistor = 1216.14 W\n", + "\n", + " (d) Power factor = 0.7043\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin,asin\n", + "\n", + "R=10 # ohm\n", + "E=165 # V\n", + "#vt=330*sin(314*t)\n", + "Vm=330 # V\n", + "Vs=233 # V\n", + "f=314/2/pi # Hz\n", + "theta1=asin(E/Vm) # radian\n", + "#alpha2=pi-alpha1 # radian\n", + "Io=1/2/pi/R*(2*Vm*cos(theta1)-E*(pi-2*theta1)) # A\n", + "print '(a) Average value of current = %.2f A'%(Io)\n", + "P=E*Io # W\n", + "print '\\n (b) Power supplied to battery = %d W'%(P)\n", + "Ior=sqrt(1/2/pi/R**2*((pi-2*theta1)*(Vs**2+E**2)+Vm**2*sin(2*theta1)-4*Vm*E*cos(theta1))) # A\n", + "Pr=Ior**2*R # W\n", + "print '\\n (c) Power dissipated in the resistor = %.2f W'%(Pr)\n", + "pf=(Pr+P)/Vs/Ior # power factor\n", + "print '\\n (d) Power factor = %.4f'%(pf)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.5 page 122" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Average load voltage = 193.2 V\n", + "\n", + " Average load current = 9.66 A\n", + "\n", + " rms load current = 11.33 A\n", + "\n", + " Average thyristor current = 4.83 A\n", + "\n", + " rms thyristor current = 8.014 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "R=20 # ohm\n", + "V=230 # V\n", + "f=50 # Hz\n", + "alpha=30 # degree\n", + "Vm=V*sqrt(2) # V\n", + "Vo=Vm/pi*(1+cos(alpha*pi/180)) # V\n", + "print 'Average load voltage = %.1f V'%(Vo)\n", + "Io=Vo/R # A\n", + "print '\\n Average load current = %.2f A'%( Io)\n", + "Vor=V/sqrt(pi)*sqrt((pi-alpha*pi/180)+sin(2*alpha*pi/180)/2) # V\n", + "Ior=Vor/R # A\n", + "print '\\n rms load current = %.2f A'%( Ior)\n", + "Iav=Io/2 # A\n", + "print '\\n Average thyristor current = %.2f A'%( Iav)\n", + "Irms=Ior/sqrt(2) # A\n", + "print '\\n rms thyristor current = %.3f A'%( Irms)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.6 page 122" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Average load current = 4.642 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "R=10 # ohm\n", + "L=100/1000 # H\n", + "E=100 # V\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "alpha = 45 # degree\n", + "Vm=Vs*sqrt(2) # V\n", + "Vo=2*Vm/pi*cos(alpha*pi/180) # V\n", + "Io=(Vo-E)/R # A\n", + "print 'Average load current = %.3f A'%(Io)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.7 page 123" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Average load voltage = 179.33 V\n", + "\n", + " Average load current = 89.67 A\n", + "\n", + " Power factor = 0.7797\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "R=2 # ohm\n", + "L=0.3 # H\n", + "E=100 # V\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "alpha = 30 # degree\n", + "Vm=Vs*sqrt(2) # V\n", + "Vo=2*Vm/pi*cos(alpha*pi/180) # V\n", + "print ' Average load voltage = %.2f V'%( Vo)\n", + "Io=(Vo)/R # A\n", + "print '\\n Average load current = %.2f A'%( Io)\n", + "Is=Io # A\n", + "Is1=4*Io/pi/sqrt(2) # A\n", + "PF=Vo*Io/Vs/Is # power factor\n", + "print '\\n Power factor = %.4f'%(PF)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.8 page 123" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Average load voltage = 176.75 V\n", + "\n", + " Average load current = 33.35 A\n", + "\n", + " Power factor = 0.7685\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "R=5 # ohm\n", + "L=1 # H\n", + "E=10 # V\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "alpha = 45 # degree\n", + "Vm=Vs*sqrt(2) # V\n", + "Vo=Vm/pi*(1+cos(alpha*pi/180)) # V\n", + "print ' Average load voltage = %.2f V'%( Vo)\n", + "Io=(Vo-E)/R # A\n", + "print '\\n Average load current = %.2f A'%( Io)\n", + "PF=(Io**2*R+E*Io)/Vs/Io # power factor\n", + "print '\\n Power factor = %.4f'%(PF)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.9 page 124" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " (i) Average voltage across 50 ohm resistor = 179.33 V\n", + "\n", + " (ii) rms current = 2.5361 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "R=50 # ohm\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "alpha = 30 # degree\n", + "Vm=Vs*sqrt(2) # V\n", + "Vo=2*Vm/pi*cos(alpha*pi/180) # V\n", + "print ' (i) Average voltage across 50 ohm resistor = %.2f V'%( Vo)\n", + "Io=(Vo)/R # A\n", + "Ior=Io/sqrt(2) # A\n", + "print '\\n (ii) rms current = %.4f A'%( Ior)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.10 page 124" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "emf on load side = 123.54 V\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "R=2 # ohm\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "alpha = 120 # degree\n", + "Ia=10 # A\n", + "\n", + "Vo=2*sqrt(2)*Vs*cos(alpha*pi/180)/pi\n", + "V=Ia*R-Vo # V\n", + "print 'emf on load side = %.2f V'%( V)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.11 page 125" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "part(i)\n", + "\n", + " dc output voltage = 146.4 V\n", + "\n", + " Active power = 732.1 W\n", + "\n", + " Reactive power = 732.1 VAR\n", + "\n", + "\n", + " part(ii)\n", + "\n", + " dc output voltage = 176.7 V\n", + "\n", + " Active power = 1066.8 W\n", + "\n", + " Reactive power = -441.9 VAR\n", + "\n", + "\n", + " part(iii)\n", + "\n", + " Average load voltage = 88 V\n", + "\n", + " Average load current = 3.02 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "Vs=230 # V\n", + "Io=5 # A\n", + "alpha = 45 # degree\n", + "print 'part(i)'\n", + "Vo=2*sqrt(2)*Vs/pi*cos(alpha*pi/180) # V\n", + "print '\\n dc output voltage = %.1f V'%(Vo)\n", + "Pi=Vo*Io # W\n", + "print '\\n Active power = %.1f W'%(Pi)\n", + "Qi=2*sqrt(2)*Vs/pi*sin(alpha*pi/180)*Io # VAR\n", + "print '\\n Reactive power = %.1f VAR'%(Qi)\n", + "print '\\n\\n part(ii)'\n", + "R=Vo/Io # ohm\n", + "Vo=sqrt(2)*Vs/pi*(1+cos(alpha*pi/180)) # V\n", + "print '\\n dc output voltage = %.1f V'%(Vo)\n", + "Io=Vo/R # A\n", + "Pi=Vo*Io # W\n", + "print '\\n Active power = %.1f W'%(Pi)\n", + "Qi=sqrt(2)*Vs/pi*sin(alpha*pi/4)*Io # VAR\n", + "print '\\n Reactive power = %.1f VAR'%(Qi)\n", + "print '\\n\\n part(iii)'\n", + "Vo=sqrt(2)*Vs/pi/2*(1+cos(alpha*pi/180)) # \n", + "print '\\n Average load voltage = %.0f V'%(Vo)\n", + "Io=Vo/R # A\n", + "print '\\n Average load current = %.2f A'%(Io)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.12 page 126" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Average load voltage = 467.818 V\n", + "\n", + " Average load current = 23.391 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "R=20 # ohm\n", + "Vs=400 # V\n", + "f=50 # Hz\n", + "alpha = 30 # degree\n", + "\n", + "Vm=Vs*sqrt(2) # V\n", + "Vo=3*Vm/pi*cos(alpha*pi/180) # V\n", + "Io=Vo/R # A\n", + "print '\\n Average load voltage = %.3f V'%(Vo)\n", + "print '\\n Average load current = %.3f A'%(Io)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.13 page 126" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " (i)\n", + "\n", + " Output voltage = 270 V\n", + "\n", + " Output power = 27009 W\n", + "\n", + "\n", + " (ii)\n", + "\n", + " average current through thyristor = 33.33 A\n", + "\n", + " rms current through thyristor = 57.74 A\n", + "\n", + " peak current through thyristor = 100.00 A\n", + "\n", + "\n", + " (iii)\n", + "\n", + " PIV of thyristor = 565.7 V\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "n=3 # no. of phase\n", + "Vs=400 # V\n", + "f=50 # Hz\n", + "Io=100 # A\n", + "alpha = 60 # degree\n", + "\n", + "Vm=Vs*sqrt(2) # V\n", + "Vo=n*Vm/pi*cos(alpha*pi/180) # V\n", + "Po=Vo*Io # W\n", + "print ' (i)'\n", + "print '\\n Output voltage = %.0f V'%(Vo)\n", + "print '\\n Output power = %.0f W'%(Po)\n", + "print '\\n\\n (ii)'\n", + "Iav=Io*2*pi/3/2/pi # A\n", + "print '\\n average current through thyristor = %.2f A'%( Iav)\n", + "Ior=sqrt(Io**2*2*pi/3/2/pi) # A\n", + "print '\\n rms current through thyristor = %.2f A'%( Ior)\n", + "Ip=Io # A\n", + "print '\\n peak current through thyristor = %.2f A'%( Ip)\n", + "print '\\n\\n (iii)'\n", + "PIV=sqrt(2)*Vs # V\n", + "print '\\n PIV of thyristor = %.1f V'%(PIV)\n", + "# Ans in the book is not accurate." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.14 page 127" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Average load voltage = 467.818 V\n", + "\n", + " Average load current = 7.8 A\n", + "\n", + " input power factor = 0.6752\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "n=3 # no. of phase\n", + "R=60 # ohm\n", + "Vs=400 # V\n", + "alpha = 30 # degree\n", + "\n", + "Vm=Vs*sqrt(2) # V\n", + "Vo=3*Vm/pi*cos(alpha*pi/180) # V\n", + "Io=Vo/R # A\n", + "P=Io**2*R # W\n", + "pf=P/sqrt(3)/Vs/Io # power factor\n", + "\n", + "print '\\n Average load voltage = %.3f V'%(Vo)\n", + "print '\\n Average load current = %.1f A'%(Io)\n", + "print '\\n input power factor = %.4f'%(pf)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.15 page 127" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Average load voltage = 461.08 V\n", + "\n", + " Average load current = 9.22 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin\n", + "\n", + "n=3 # no. of phase\n", + "R=50 # ohm\n", + "Vs=400 # V\n", + "f=50 # Hz\n", + "alpha = 45 # degree\n", + "\n", + "Vm=Vs*sqrt(2) # V\n", + "Vo=3*Vm/2/pi*(1+cos(alpha*pi/180)) # V\n", + "Io=Vo/R # A\n", + "print '\\n Average load voltage = %.2f V'%(Vo)\n", + "print '\\n Average load current = %.2f A'%(Io)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.16 page 128" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Firing angle = 33.59 degree\n", + "\n", + " Overlap angle = 10.20 degree\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin,acos\n", + "\n", + "n=3 # no. of phase\n", + "Vs=400 # V\n", + "f=50 # Hz\n", + "Ls=5/1000 # H\n", + "Io=20 # A\n", + "Ri=1 # ohm\n", + "Vdc=400 # V\n", + "\n", + "Vo=Vdc+Io*Ri # V\n", + "# Vo=3*Vm/pi*cos(alpha*pi/180)-3*2*pi*f*Ls/pi*Io\n", + "Vm=sqrt(2)*Vs # V\n", + "alpha=acos((Vo+3*2*pi*f*Ls/pi*Io)/(3*Vm/pi))*180/pi # degree\n", + "\n", + "# Vo=3*Vm/pi*cos((alpha+mu)*pi/180)-3*2*pi*f*Ls/pi*Io\n", + "mu=acos((Vo-3*2*pi*f*Ls/pi*Io)/(3*Vm/pi))*180/pi-alpha # degree\n", + "print '\\n Firing angle = %.2f degree'%(alpha)\n", + "print '\\n Overlap angle = %.2f degree'%(mu)\n", + "# ans in the textbook is not accurate." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 3.17 page 128" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Load resistance = 36 ohm\n", + "\n", + " Source inductance = 7.3 mH\n", + "\n", + " Overlap angle = 6 degree\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,cos,sin,acos\n", + "\n", + "n=3 # no. of phase\n", + "Vs=400 # V\n", + "f=50 # Hz\n", + "alpha = pi/4 # radian\n", + "Io=10 # A\n", + "Vo=360 # V\n", + "\n", + "# Vo=n*Vs*sqrt(2)/pi/sqrt(2)-3*2*pi*f*Ls*Io/pi\n", + "Ls=(n*Vs*sqrt(2)/pi/sqrt(2)-Vo)/(3*2*pi*f)/(Io/pi)*1000 # mH\n", + "R=Vo/Io # ohm\n", + "print ' Load resistance = %.f ohm'%(R)\n", + "print '\\n Source inductance = %.1f mH'%(Ls)\n", + "# Vo = n*Vs*sqrt(2)/pi*cos(alpha+mu)+3*2*pi*f*Ls*Io/pi\n", + "mu=acos((Vo-3*2*pi*f*Ls/1000*Io/pi)/(n*Vs*sqrt(2)/pi))-alpha # radian\n", + "mu=mu*180/pi # degree\n", + "print '\\n Overlap angle = %.d degree'%(mu)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter4.ipynb b/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter4.ipynb new file mode 100644 index 00000000..975b27ec --- /dev/null +++ b/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter4.ipynb @@ -0,0 +1,327 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 4 - AC to AC Converters" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 4.1 page 158" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " rms load voltage = 101.70 V\n", + "\n", + " rms load current = 20.34 A\n", + "\n", + " rms thyristor current = 14.38 A\n", + "\n", + " input power factor = 0.442 \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,sin\n", + "R=5 # ohm\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "alpha = 120 # degree\n", + "\n", + "Vor=Vs*sqrt(1/pi*(pi-alpha*pi/180+sin(2*alpha*pi/180)/2)) # V\n", + "print '\\n rms load voltage = %.2f V'%( Vor)\n", + "Ior=Vor/R # A\n", + "print '\\n rms load current = %.2f A'%( Ior)\n", + "Irms=Ior/sqrt(2) # A\n", + "print '\\n rms thyristor current = %.2f A'%( Irms)\n", + "pf=sqrt(1/pi*((pi-alpha*pi/180)+sin(2*alpha*pi/180)/2)) # power factor\n", + "print '\\n input power factor = %.3f '%(pf)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 4.2 page 158" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " (a) rms output voltage = 138 V\n", + "\n", + " (b) Power output to load = 1904.4 W\n", + "\n", + " (c) Power input to regulator = 1904.4 W\n", + "\n", + " (d) input power factor = 0.6 \n", + "\n", + " (e) average scr current = 3.727 A\n", + "\n", + " rms scr current = 9.758 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,sin\n", + "R=10 # ohm\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "nc=18 # conducting cycles\n", + "noff=32 # off cycles\n", + "\n", + "k=nc/(nc+noff) # duty ratio\n", + "Vor=Vs*sqrt(k) # V\n", + "Po=Vor**2/R # W\n", + "Pi=Po # W (losses are negligble)\n", + "Ior=Vor/R # A\n", + "pf=Po/Vs/Ior # W\n", + "Im=Vs*sqrt(2)/R # A\n", + "Irms=Im*sqrt(k)/2 # A\n", + "Iav=k*Im/pi # A\n", + "print '\\n (a) rms output voltage = %.0f V'%( Vor)\n", + "print '\\n (b) Power output to load = %.1f W'%( Po)\n", + "print '\\n (c) Power input to regulator = %.1f W'%( Pi)\n", + "print '\\n (d) input power factor = %.1f '%(pf)\n", + "print '\\n (e) average scr current = %.3f A'%( Iav)\n", + "print '\\n rms scr current = %.3f A'%( Irms)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 4.3 page 159" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " rms load voltage = 162.63 V\n", + "\n", + " rms load current = 16.26 A\n", + "\n", + " power input = 2645.00 W\n", + "\n", + " load power factor = 0.7 \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,sin\n", + "R=10 # ohm\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "alpha = 90 # degree\n", + "\n", + "Vor=Vs*sqrt(1/pi*(pi-alpha*pi/180+sin(2*alpha*pi/180)/2)) # V\n", + "Ior=Vor/R # A\n", + "P=Ior**2*R # W\n", + "pf=Vor/Vs # power factor\n", + "print '\\n rms load voltage = %.2f V'%( Vor)\n", + "print '\\n rms load current = %.2f A'%( Ior)\n", + "print '\\n power input = %.2f W'%( P)\n", + "print '\\n load power factor = %.1f '%(pf)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 4.4 page 160" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " rms load voltage = 219.30 V\n", + "\n", + " rms load current = 7.31 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,sin\n", + "\n", + "R=30 # ohm\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "alpha = 45 # degree\n", + "\n", + "Vor=Vs*sqrt(1/pi*(pi-alpha*pi/180+sin(2*alpha*pi/180)/2)) # V\n", + "Ior=Vor/R # A\n", + "print '\\n rms load voltage = %.2f V'%( Vor)\n", + "print '\\n rms load current = %.2f A'%( Ior)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 4.5 page 160" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " max load voltage = 230.00 V\n", + "\n", + " max load current = 16.263 A\n", + "\n", + " range of delay angle = 0 to 45\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,sin,tan\n", + "\n", + "R=10 # ohm\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "fi = 45 # degree\n", + "\n", + "Vmax=Vs # V(max supply voltage)\n", + "XL=R*tan(fi*pi/180) # ohm\n", + "Z=XL*sqrt(2) # ohm\n", + "Imax=Vs/Z # A\n", + "\n", + "print '\\n max load voltage = %.2f V'%( Vmax)\n", + "print '\\n max load current = %.3f A'%( Imax)\n", + "print '\\n range of delay angle = %d to %d'%(0,fi)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 4.7 page 161" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " (i) control range of firing angle = 53.13 to pi\n", + "\n", + " (ii) max rms load current = 46 A\n", + "\n", + " (iii) max power input to load = 6348 W\n", + "\n", + " (iv) max power factor = 0.6 \n", + "\n", + " (v) max rms thyristor current = 32.527 A\n", + "\n", + " max average thyristor current = 20.718 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,pi,sin,atan\n", + "\n", + "R=3 # ohm\n", + "wL=4 # ohm\n", + "Vs=230 # V\n", + "f=50 # Hz\n", + "\n", + "fi=atan(wL/R)*180/pi # degree\n", + "print '\\n (i) control range of firing angle = %.2f to pi'%(fi)\n", + "Imax=Vs/sqrt(R**2+wL**2) # A\n", + "print '\\n (ii) max rms load current = %.f A'%( Imax)\n", + "Pmax=Imax**2*R # W\n", + "print '\\n (iii) max power input to load = %.f W'%( Pmax)\n", + "pf_max=Pmax/Vs/Imax # power factor\n", + "print '\\n (iv) max power factor = %.1f '%( pf_max)\n", + "Ithrms=Imax/sqrt(2) # A\n", + "Ithav=Ithrms/1.57 # A\n", + "print '\\n (v) max rms thyristor current = %.3f A'%( Ithrms)\n", + "print '\\n max average thyristor current = %.3f A'%( Ithav)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter5.ipynb b/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter5.ipynb new file mode 100644 index 00000000..4b5039f8 --- /dev/null +++ b/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter5.ipynb @@ -0,0 +1,210 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 5 - DC to DC Converters (Choppers)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 5.1 page 184" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Average load current = 9.2 A\n", + "\n", + " Power delivered = 2116.00 W\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "R=10 # ohm\n", + "Vs=230 # V\n", + "f=1*1000 # Hz\n", + "Ton=0.4 # ms\n", + "k=0.4 # duty cycle\n", + "\n", + "Vo=Vs*k # V\n", + "Ioav=Vo/R # A\n", + "Vor=Vs*sqrt(k) # V\n", + "Po=Vor**2/R # W\n", + "print '\\n Average load current = %.1f A'%( Ioav)\n", + "print '\\n Power delivered = %.2f W'%(Po)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 5.2 page 185" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " duty ratio = 0.667\n", + "\n", + " chopping frequency = 33.33 Hz\n", + "\n", + " Average load voltage = 200.00 V\n", + "\n", + " Average load current = 40.00 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "\n", + "R=5 # ohm\n", + "Vs=300 # V\n", + "f=1*1000 # Hz\n", + "Ton=20 # ms\n", + "Toff=10 # ms\n", + "\n", + "k= Ton/(Ton+Toff) # duty ratio\n", + "f=1000/(Ton+Toff) # Hz\n", + "Voav=Vs*k # V\n", + "Ioav=Voav/R # A\n", + "print '\\n duty ratio = %.3f'%(k)\n", + "print '\\n chopping frequency = %.2f Hz'%(f)\n", + "print '\\n Average load voltage = %.2f V'%( Voav)\n", + "print '\\n Average load current = %.2f A'%( Ioav)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 5.3 page 185" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " chopping frequency = 15 Hz\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "\n", + "Vs=400 # V\n", + "alfa=0.25 # duty cycle\n", + "delta_I=10 # A\n", + "L=0.5 # H\n", + "R=0 # ohm\n", + "\n", + "Vo=alfa*Vs # V\n", + "#Vo+L*di/dt=Vs -- putting dt=Ton & di=delta_I\n", + "Ton=delta_I/((Vs-Vo)/L)*1000 # ms\n", + "T=Ton/alfa # ms\n", + "f=1/T*1000 # Hz\n", + "print '\\n chopping frequency = %d Hz'%(f)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 5.5 page 186" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pulse width of output voltage, Ton = 200 us & T = 300 us\n", + "\n", + "New output voltage = 330 V\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "\n", + "Vs=220 # V\n", + "Vo=660 # V\n", + "Toff=100 # us\n", + "\n", + "#Vo=Vs/(1-alfa)\n", + "alfa=1-Vs/Vo # duty cycle\n", + "#alfa=Ton/(Ton+Toff)\n", + "Ton=alfa*Toff/(1-alfa) # us\n", + "T=Ton+Toff # us\n", + "print 'Pulse width of output voltage, Ton = %d us & T = %d us'%(Ton,T)\n", + "#(ii) reduce pulse width by 50%\n", + "Ton=Ton/2 # us\n", + "Toff=T-Ton # us\n", + "alfa=Ton/(Ton+Toff) # duty cycle\n", + "Vo=Vs/(1-alfa) # V\n", + "print '\\nNew output voltage = %d V'%(Vo)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter7.ipynb b/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter7.ipynb new file mode 100644 index 00000000..eb5ab53f --- /dev/null +++ b/Introduction_to_Power_Electronics_by_V._Jagannathan/chapter7.ipynb @@ -0,0 +1,186 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 7 - Power Controllers - Their Applications" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 7.1 page 260" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Speed of motor = 517 rpm\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,cos,pi\n", + "N1=1000 # rpm\n", + "Va1=200 # V\n", + "alfa=60 # degree\n", + "Va2=230 # V\n", + "\n", + "N2=2*Va2*sqrt(2)*cos(alfa*pi/180)*N1/Va1/pi\n", + "print '\\n Speed of motor = %d rpm'%(N2)\n", + "# ans in the textbook is not accurate." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 7.2 page 260" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " duty ratio = 0.82\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "\n", + "N1=1100 # rpm\n", + "Va1=220 # V\n", + "N2=900 # rpm\n", + "\n", + "Va2=Va1*N2/N1 # V\n", + "delta=Va2/Va1 # duty ratio\n", + "print '\\n duty ratio = %.2f'%(delta)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 7.3 page 261" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " triggering angle = 57.9 degree\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt,cos,pi,acos\n", + "\n", + "N1=900 # rpm\n", + "Va1=198 # V\n", + "N2=500 # rpm\n", + "Vs=230 # V\n", + "\n", + "Va2=Va1*N2/N1 # V\n", + "# 2*sqrt(2)*Vs*cos(alfa)/pi=Va2\n", + "alfa=acos(Va2/(2*sqrt(2)*Vs)*pi)*180/pi # degree\n", + "\n", + "print '\\n triggering angle = %.1f degree'%(alfa)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ex 7.4 page 261" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " average armature current = 9.35 A\n", + "\n", + " torque = 4.674 Nm\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "Vs=230 # V\n", + "Ton=10 # ms\n", + "Toff=25 # ms\n", + "Ra=2 # ohm\n", + "N=1400 # rpm\n", + "k=0.5 # V/rad/s (back emf constant)\n", + "kt=0.5 # NM-A**-1 (torque constant)\n", + "\n", + "Eb=N*2*pi*k/60 # V\n", + "Va=Vs*Ton/(Toff) # V\n", + "Ia=(Va-Eb)/Ra # A\n", + "T=kt*Ia # Nm\n", + "print '\\n average armature current = %.2f A'%( Ia)\n", + "print '\\n torque = %.3f Nm'%( T)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/avgArmCurr7_.png b/Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/avgArmCurr7_.png Binary files differnew file mode 100644 index 00000000..5620405b --- /dev/null +++ b/Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/avgArmCurr7_.png diff --git a/Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/speedmotor7.png b/Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/speedmotor7.png Binary files differnew file mode 100644 index 00000000..482bd324 --- /dev/null +++ b/Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/speedmotor7.png diff --git a/Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/triggeringangle7.png b/Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/triggeringangle7.png Binary files differnew file mode 100644 index 00000000..8fe09343 --- /dev/null +++ b/Introduction_to_Power_Electronics_by_V._Jagannathan/screenshots/triggeringangle7.png |