diff options
Diffstat (limited to 'A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja')
12 files changed, 17467 insertions, 0 deletions
diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter40.ipynb b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter40.ipynb new file mode 100644 index 00000000..e434627c --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter40.ipynb @@ -0,0 +1,1989 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# CHAPTER 40: D.C TRANSMISSION AND DISTRIBUTION\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.1 ,Page No :- 1574" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "percentage saving in copper is = 50.0 %.\n" + ] + } + ], + "source": [ + "#A DC 2-wire feeder supplies a constant load with a sending-end voltage of 220V.Calculate the saving in copper\n", + "#if this voltage is doubled with power transmitted remaining the same.\n", + "##################################################################################################################\n", + "\n", + "\n", + "\n", + "#Given\n", + "V1 = 220.0\n", + "V2 = 440.0\n", + "##Let us assume the wire has##\n", + "#length -> length \n", + "#area -> area\n", + "#current density -> cd\n", + "#power -> P\n", + "P = 10000.0 #assumption\n", + "length = 1000.0 #assumption \n", + "cd = 5.0 #assumption\n", + "#The values are assumed as these terms cancel out while calculating percentage.\n", + "I1 = P/V1\n", + "area = I1/cd\n", + "#Vol of Cu required for 220V ->vol1\n", + "vol1 = 2*area*length\n", + "\n", + "\n", + "I2 = P/V2\n", + "area = I2/cd\n", + "#Vol of Cu required for 440V ->vol2\n", + "vol2 = 2*area*length\n", + "\n", + "#percentage saving of copper is\n", + "per_cent = ((vol1-vol2)/vol1)*100\n", + "print 'percentage saving in copper is ',per_cent,'%.'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.2 ,Page No :- 1577" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum voltage drop from one end is = 12.0 V.\n", + "Maximum voltage drop from both end is = 3.0 V.\n" + ] + } + ], + "source": [ + "#A uniform 2-wire d.c distributor 200 metres long is loaded with 2 amperes/metre.Resistance of\n", + "#single wire is 0.3 ohm/kilometre.Calculate the maximum voltage drop if the distributor is fed\n", + "#(a)from one end (b)from both ends with equal voltages.\n", + "#################################################################################################\n", + "\n", + "#Given\n", + "length = 200.0 #metres\n", + "#current per unit length is\n", + "cur = 2.0 #amp/metre\n", + "#resistance per unit length is\n", + "res = 0.3/1000 #ohm/metre\n", + "\n", + "#total resistance is\n", + "R = res*length #ohm\n", + "#total current is\n", + "I = cur*length #amp\n", + "#Total drop over a distributor fed from one end is given by\n", + "drop1 = (1/2.0)*I*R #volts\n", + "#Total drop over a distributor fed from both ends is given by\n", + "drop2 = (1/8.0)*I*R\n", + "print 'Maximum voltage drop from one end is = ',drop1,'V.'\n", + "print 'Maximum voltage drop from both end is = ',drop2,'V.'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.3 ,Page No :- 1577" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cross sectional area of distributor = 116.412 cm^2\n" + ] + } + ], + "source": [ + "#A 2-wire d.c distributor AB is 300 metres long.It is fed at point A.The various loads and\n", + "#their positions are given below.\n", + "# At point distance from A in metres concentrated load in A\n", + "# C 40 30\n", + "# D 100 40 \n", + "# E 150 100\n", + "# F 250 50\n", + "#If the maximum permissible voltage drop is not to exceed 10V,find the cross-sectional\n", + "#area of the distributor.Take resistivity = 1.78*10^(-8) ohm-m.\n", + "###########################################################################################\n", + "\n", + "\n", + "#Given\n", + "resistivity = 1.78e-8 #ohm-m\n", + "drop_max = 10.0 #V\n", + "#loads and their positions\n", + "I1 = 30.0 #A\n", + "l1 = 40.0 #m\n", + "I2 = 40.0 #A\n", + "l2 = 100.0 #m\n", + "I3 = 100.0 #A\n", + "l3 = 150.0 #m\n", + "I4 = 50 #A\n", + "l4 = 250 #m\n", + "#We know that R = resistivity*length/Area\n", + "#Also max drop = I1*R1 + I2*R2 + I3*R3 + I4*R4 , using this\n", + "area = 2*(I1*l1 + I2*l2 + I3*l3 + I4*l4)*resistivity/drop_max #m^2\n", + "area = area*1000000 #cm^2 \n", + "print 'Cross sectional area of distributor =',area,'cm^2'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.4 ,Page No :- 1578" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hence drop at minimum potential where load is 70 A is = 48.4 V.\n" + ] + } + ], + "source": [ + "#A 2-wire d.c distributor F1F2 1000 metres long is loaded as under:\n", + "#Distance from F1(in metres): 100 250 500 600 700 800 850 920\n", + "#Load in amperes: 20 80 50 70 40 30 10 15\n", + "#The feeding points F1 and F2 are maintained at the same potential.Find which point will have the\n", + "#minimum potential and what will be the drop at this point?Take the cross-section of the conductors\n", + "#as 0.35 cm^2 and specific resistance of copper as 1.764*10^(-6) ohm-cm\n", + "#####################################################################################################\n", + "\n", + "#Given\n", + "import numpy as np\n", + "resistivity = 1.764e-8 #ohm-m\n", + "area = 0.35e-4 #m^2 \n", + "#loads and their positions taking from F1\n", + "I1 = 20 #A\n", + "l1 = 100 #m\n", + "I2 = 80 #A\n", + "l2 = 150 #m\n", + "I3 = 50 #A\n", + "l3 = 250 #m\n", + "I4 = 70 #A\n", + "l4 = 100 #m\n", + "I5 = 40 #A\n", + "l5 = 100 #m\n", + "I6 = 30 #A\n", + "l6 = 50 #m\n", + "I7 = 10 #A\n", + "l7 = 70 #m\n", + "I8 = 15 #A\n", + "l8 = 80 #m \n", + "\n", + "#sum of loads from F1\n", + "load1 = I1*l1 + I2*(l1+l2) + I3*(l1+l2+l3) #A-m\n", + "load2 = I8*l8 + I7*(l7+l8) + I6*(l6+l7+l8) + I5*(l5+l6+l7+l8) #A-m\n", + "\n", + "#guessing the point of minimum potential\n", + "if load1>load2:\n", + " load2_new = load2 + I4*(l4+l5+l6+l7+l8)\n", + " if load2_new>load1:\n", + " pivot = I4\n", + "\n", + "#solving 2 equations simultaneously\n", + "# x + y = 70(pivot) & 47000(load1) + 600(l1+l2+l3)x = 20,700(load2) + 400(l5+l6+l7+l8)y)\n", + "line1 = l1+l2+l3+l4 #m\n", + "line2 = l4+l5+l6+l7+l8 #m \n", + "\n", + "a = [[1,1],[line1,-line2]]\n", + "b = [pivot,load2-load1]\n", + "soln = np.linalg.solve(a,b) #soln is array with its elements[x,y]\n", + "#drop at minimum potential per conductor (in A-m)\n", + "drop_m = load1 + soln[0]*line1 #A-m\n", + "\n", + "#resistance per metre = resistivity/Area\n", + "res = resistivity/area #ohm/m\n", + "\n", + "#Hence, drop in voltage per conductor is\n", + "drop = drop_m*res #V \n", + "#drop due to both is\n", + "drop = drop*2 #V\n", + "\n", + "print 'Hence drop at minimum potential where load is',pivot,'A is =',round(drop,2),'V.'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.5 ,Page No :- 1579" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The current entering at A is = 88.6 A \n", + "The current entering at B is = 211.4 A.\n" + ] + } + ], + "source": [ + "#The resistance of a cable is 0.1ohm per 1000 metre for both conductors.It is loaded as shown in Fig.40.14(a).\n", + "#Find the current supplied at A and at B.If both the ends are supplied at 200 V\n", + "##############################################################################################################\n", + "\n", + "#Given\n", + "#resistance per metre\n", + "res = 0.1/1000 #ohm/m\n", + "#loads and their positions taking from A\n", + "I1 = 50.0 #A\n", + "l1 = 500.0 #m\n", + "I2 = 100.0 #A\n", + "l2 = 700.0 #m\n", + "I3 = 150.0 #A\n", + "l3 = 300.0 #m\n", + "l4 = 250.0 #m \n", + "\n", + "#Assuming I flows from A to B\n", + "# equation is res*[500*i + 700(i-50) + 300(i-150) + 250(i-300)] = 0\n", + "current_i = (I1*l2+(I1+I2)*l3 + (I1+I2+I3)*l4)/(l1+l2+l3+l4)\n", + "current_AC = current_i\n", + "current_CD = current_i-I1\n", + "current_DE = current_CD-I2\n", + "current_EB = current_DE-I3\n", + "if current_EB<0:\n", + " current_EB = -current_EB;\n", + "print 'The current entering at A is = ',round(current_i,1),'A '\n", + "print 'The current entering at B is = ',round(current_EB,1),'A.' " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.6 ,Page No :- 1580" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current supplied at A is = 88.6 A.\n", + "Current supplied at B is = -211.4 A.\n", + "Current in AC is = 88.6 A.\n", + "Current in CD is = 38.6 A.\n", + "Current in DE is = -61.4 A.\n", + "Current in EB is = -211.4 A.\n", + "Drop over AC is = 4.4 V.\n", + "Drop over CD is = 2.7 V.\n", + "Drop over DE is = -1.8 V.\n", + "Voltage at C is = 195.6 V.\n", + "Voltage at D is = 192.9 V.\n", + "Voltage at E is = 194.7 V.\n" + ] + } + ], + "source": [ + "#The resistance of two conductors of a 2-conductor distributor shown in Fig.39.15 is 0.1ohm per 1000m\n", + "#for both conductors.Find (a)the current supplied at A(b)the current supplied at B\n", + "#(c)the current in each section (d)the voltages at C,D and E.Both A and B are maintained at 200V.\n", + "######################################################################################################\n", + "\n", + "#Given\n", + "#resistance per metre\n", + "res = 0.1/1000 #ohm/m\n", + "#loads and their positions taking from A\n", + "I1 = 50.0 #A\n", + "l1 = 500.0 #m\n", + "I2 = 100.0 #A\n", + "l2 = 700.0 #m\n", + "I3 = 150.0 #A\n", + "l3 = 300.0 #m\n", + "l4 = 250.0 #m \n", + "\n", + "#Assuming I flows from A to B\n", + "# equation is res*[500*i + 700(i-50) + 300(i-150) + 250(i-300)] = 0\n", + "current_i = (I1*l2+(I1+I2)*l3 + (I1+I2+I3)*l4)/(l1+l2+l3+l4)\n", + "current_AC = current_i\n", + "current_CD = current_i-I1\n", + "current_DE = current_CD-I2\n", + "current_EB = current_DE-I3\n", + "print \"Current supplied at A is = \",round(current_i,1),\"A.\"\n", + "print \"Current supplied at B is = \",round(current_EB,1),\"A.\"\n", + "print \"Current in AC is = \",round(current_i,1),\"A.\"\n", + "print \"Current in CD is = \",round(current_CD,1),\"A.\"\n", + "print \"Current in DE is = \",round(current_DE,1),\"A.\"\n", + "print \"Current in EB is = \",round(current_EB,1),\"A.\"\n", + "#Drop in volts is (resistance/metre)*length*current\n", + "drop_AC = res*l1*current_AC #V\n", + "drop_CD = res*l2*current_CD #V \n", + "drop_DE = res*l3*current_DE #V\n", + "print \"Drop over AC is = \",round(drop_AC,1),\"V.\"\n", + "print \"Drop over CD is = \",round(drop_CD,1),\"V.\"\n", + "print \"Drop over DE is = \",round(drop_DE,1),\"V.\"\n", + "\n", + "#Voltages at C,D,E are\n", + "volt_C = 200-drop_AC #V\n", + "volt_D = volt_C-drop_CD #V\n", + "volt_E = volt_D-drop_DE #V\n", + "print 'Voltage at C is = ',round(volt_C,1),'V.'\n", + "print 'Voltage at D is =',round(volt_D,1),'V.'\n", + "print 'Voltage at E is = ',round(volt_E,1),'V.'\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.7 ,Page No :- 1581" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Therefore point of minimum potential is D and minimum potential is = 246.0 V.\n" + ] + } + ], + "source": [ + "#A 200 m long distributor is fed from both ends A and B at the same voltage of 250V.The\n", + "#concentrated loads of 50,40,30 and 25 A are coming on the distributor at distances of 50,75,\n", + "#100 and 150 m respectively from end A.Determine the minimum potential and locate its positions.\n", + "#Also,determine the current in each section of the distributor.It is given that the resistance\n", + "#of the distributor is 0.08ohm per 100 metres for go and return.\n", + "##################################################################################################\n", + "\n", + "\n", + "#Given\n", + "#resistance per metre\n", + "res = 0.08/100 #ohm/m\n", + "V_A = 250.0 #V\n", + "V_B = 250.0 #V\n", + "#load currents and their positions\n", + "I_C = 50.0 #A\n", + "I_D = 40.0 #A\n", + "I_E = 30.0 #A\n", + "I_F = 25.0 #A\n", + "l_AC = 50.0 #m\n", + "l_CD = 75.0 - l_AC #m\n", + "l_DE = 100.0 - l_CD - l_AC #m\n", + "l_EF = 150.0 - l_DE - l_CD - l_AC #m\n", + "l_FB = 200.0-150.0\n", + "#Assuming I flows from A to B\n", + "# equation is res*[50*i + 25(i-50) + 25(i-90) + 50(i-120)+50(i-145)] = 0\n", + "current_i = (l_CD*I_C + l_DE*(I_C+I_D)+l_EF*(I_C+I_D+I_E) + l_FB*(I_C+I_D+I_E+I_F))/200.0\n", + "current_AC = current_i\n", + "current_CD = current_i-I_C\n", + "current_DE = current_CD-I_D\n", + "current_EF = current_DE-I_E\n", + "current_FB = current_EF-I_F\n", + "#As from figure in the book , point D is at minimum potential\n", + "if (current_CD>0) & (current_DE<0):\n", + " point = \"D\"\n", + " \n", + "#drop in volts = resistance/metre*sum(length*current) \n", + "drop_d = res*(l_AC*current_AC + l_CD*current_CD)\n", + "min_pot = V_A-drop_d\n", + "print \"Therefore point of minimum potential is\",point,\"and minimum potential is = \",round(min_pot,1),\"V.\" " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.8 ,Page No :- 1582" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage at point C is = 250.13 V.\n", + "Voltage at point D is = 247.73 V.\n" + ] + } + ], + "source": [ + "#Each conductor of a 2-core distributor,500 metres long has a cross-sectional area\n", + "#of 2 cm^2.The feeding point A is supplied at 255V and the feeding point B at\n", + "#250V and load currents of 120A and 160A are taken at points C and D which are\n", + "#150 metres and 350 metres respectively from the feeding point A.Calculate the\n", + "#voltage at each load.Specific Resistance of copper is 1.7*10^(-6) ohm-cm\n", + "##################################################################################\n", + "\n", + "#Given\n", + "area = 2e-4 #m^2\n", + "resistivity = 1.7e-8 #ohm-m\n", + "#load currents and their positions\n", + "i_c = 120.0 #A\n", + "i_d = 160.0 #A\n", + "l_ac = 150.0 #m\n", + "l_cd = 200.0 #m\n", + "l_db = 150.0 #m\n", + "V_a = 255.0 #V\n", + "V_b = 250.0 #V\n", + "#Resistance = resistivity*length/Area\n", + "#It is a 2 core distributor.Therefore,resistance per metre is\n", + "res = 2*resistivity/area #ohm/m\n", + "#drop over whole distributor is equal to\n", + "drop = V_a - V_b #V\n", + "#Therefore equation of total drop can be written as\n", + "# resistivity*(150i+200(i-120)+150(i-280))=5\n", + "current_i = (drop/res + l_cd*i_c + l_db*(i_c+i_d))/(l_ac+l_cd+l_db) #A\n", + "current_ac = current_i #A\n", + "current_cd = current_ac-i_c #A\n", + "current_db = current_cd-i_d #A\n", + "\n", + "#Voltage at C = 255-drop over AC\n", + "volt_c = V_a-res*l_ac*current_ac #V\n", + "#Voltage at D = 250-drop over DB \n", + "volt_d = V_b -res*l_db*abs(current_db) #V\n", + "print \"Voltage at point C is = \",round(volt_c,2),\"V.\"\n", + "print \"Voltage at point D is = \",round(volt_d,2),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.9 ,Page No :- 1583" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Volatge at point Q is = 225.25 V.\n", + "Voltage at point B is = 236.56 V.\n" + ] + } + ], + "source": [ + "#A 2-wire distributor 500 metres long is fed at P at 250V and loads of 40A,20A,60A,30A are tapped off\n", + "#off from points A,B,C and D which are at distances of 100 metres,150 metres,300 metres and 400 metres\n", + "#from P respectively.The distributor is also uniformly loaded at the rate of 0.1A/m.If the resistance of\n", + "#the distributor per metre(go and return) is 0.0005 ohm,calculate the voltage at(i)pointQ and(ii)point B.\n", + "###########################################################################################################\n", + "\n", + "#Given\n", + "V_P = 250.0 #V\n", + "resistance = 0.0005 #ohm/m\n", + "\n", + "#loads and their positions\n", + "i_a = 40.0 #A\n", + "i_b = 20.0 #A\n", + "i_c = 60.0 #A\n", + "i_d = 30.0 #A\n", + "l_pa = 100.0 #m\n", + "l_ab = 150.0-100.0 #m\n", + "l_bc = 300.0-150.0 #m\n", + "l_cd = 400.0-300.0 #m\n", + "#uniform dstributed load\n", + "cur_uni = 0.1 #A/m\n", + "\n", + "\n", + "#considering drop due to concentrated loading\n", + "drop_pa = (i_a+i_b+i_c+i_d)*l_pa*resistance #V\n", + "drop_ab = (i_b+i_c+i_d)*l_ab*resistance #V \n", + "drop_bc = (i_c+i_d)*l_bc*resistance #V\n", + "drop_cd = i_d*l_cd*resistance #V\n", + "tot_drop = drop_pa + drop_ab + drop_bc + drop_cd #V\n", + "\n", + "#considering drop due to uniform loading(drop = irl^2/2) l = 500m\n", + "drop_uni = cur_uni*resistance*(500.0*500.0)/2 #V\n", + "\n", + "V_Q = V_P - (tot_drop + drop_uni) #V\n", + "#for point B\n", + "#drop due to concentrated loading\n", + "drop_b = drop_pa + drop_ab #V\n", + "#drop due to uniform loading (drop = ir(lx-x^2/2)) l=500m x=150m\n", + "drop_ub = cur_uni*resistance*(500*(l_pa+l_ab)-(l_pa+l_ab)*(l_pa+l_ab)/2) #V\n", + "\n", + "V_B = V_P - (drop_b + drop_ub) #V\n", + "\n", + "print \"Volatge at point Q is = \",round(V_Q,2),\"V.\"\n", + "print \"Voltage at point B is = \",round(V_B,2),\"V.\" " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.10 ,Page No :- 1583" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current in section AC is = 53.75 A.\n", + "Current in section CD is = 33.75 A.\n", + "Current in section DE is = -6.25 A.\n", + "Current in section EF is = -31.25 A.\n", + "Current in section FB is = -61.25 A.\n", + "Minimum voltage is at point D and minimum voltage is = 233.18 V.\n" + ] + } + ], + "source": [ + "#A distributor AB is fed from both ends.At feeding point A,the voltage is maintained at 236V and at B at 237V.\n", + "#The total length of the distributor is 200 metres and loads are tapped off as under:\n", + "#(i) 20A at 50 metres from A (ii) 40A at 75 metres from A. (iii)25A at 100 metres from A (iv)30A at 150 metres from A\n", + "#The reistance per kilometre of one conductor is 0.4ohm.Calculate the currents in the various sections of the distributor,\n", + "#the minimum voltage and the point at which it occurs.\n", + "###########################################################################################################################\n", + "\n", + "\n", + "#Given\n", + "#resistance per metre\n", + "res = 2*0.4/1000 #ohm/m\n", + "V_a = 236.0 #V\n", + "V_b = 237.0 #V\n", + "#loads and their positions\n", + "i_c = 20.0 #A\n", + "i_d = 40.0 #A\n", + "i_e = 25.0 #A\n", + "i_f = 30.0 #A\n", + "l_ac = 50.0 #m\n", + "l_cd = 25.0 #m\n", + "l_de = 25.0 #m\n", + "l_ef = 50.0 #m\n", + "l_fb = 50.0 #m\n", + "#Voltage drop equation res*(50i + 25(i-20)+25(i-60) + 50(i-85) + 50(i-115)=-1)\n", + "current_i = ((V_a-V_b)/res + l_cd*(i_c)+l_de*(i_c+i_d)+l_ef*(i_c+i_d+i_e)+l_fb*(i_c+i_d+i_e+i_f))/200.0\n", + "current_ac = current_i\n", + "current_cd = current_ac-i_c\n", + "current_de = current_cd-i_d\n", + "current_ef = current_de-i_e\n", + "current_fb= current_ef-i_f\n", + "if current_cd>0:\n", + " if current_de<0:\n", + " point = \"D\"\n", + "#Minimum potential is at D as shown in figure\n", + "drop = res*(current_ac*l_ac + current_cd*l_cd)\n", + "V_d = V_a-drop\n", + "print \"Current in section AC is = \",round(current_ac,2),\"A.\"\n", + "print \"Current in section CD is = \",round(current_cd,2),\"A.\"\n", + "print \"Current in section DE is = \",round(current_de,2),\"A.\"\n", + "print \"Current in section EF is = \",round(current_ef,2),\"A.\"\n", + "print \"Current in section FB is = \",round(current_fb,2),\"A.\"\n", + "print \"Minimum voltage is at point\",point,\"and minimum voltage is = \",round(V_d,2),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.11 ,Page No :- 1584" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current supplied by feeder at point A is 46.29 A and that by point B is 109.71 A.\n", + "Voltage at point B is = 240.55 V.\n", + "Voltage at point C is = 239.63 V.\n", + "Voltage at point D is = 239.42 V.\n", + "Voltage at point E is = 239.38 V.\n" + ] + } + ], + "source": [ + "#A distributor cable AB is fed at its ends A and B.Loads of 12,24,72 and 48 A are taken from the cable at\n", + "#points C,D,E and F.The resistances of sections AC,CD,DE,EF and FB of the cable are 8,6,4,10 and 5 milliohm\n", + "#respecively(for the go and return conductors together). The potential difference at point A is 240V,the p.d\n", + "#at the load F is also to be 240V.Calculate the voltages at the feeding point B,the current supplied by each\n", + "#feeder and the p.d.s at the loads C,D and E.\n", + "##############################################################################################################\n", + "\n", + "#Given\n", + "V_a = 240.0 #V \n", + "V_f = 240.0 #V\n", + "#loads and their resistances.\n", + "i_c = 12.0 #A\n", + "i_d = 24.0 #A\n", + "i_e = 72.0 #A\n", + "i_f = 48.0 #A\n", + "\n", + "r_ac = 8e-3 #ohm\n", + "r_cd = 6e-3 #ohm\n", + "r_de = 4e-3 #ohm\n", + "r_ef = 10e-3 #ohm\n", + "r_fb = 5e-3 #ohm\n", + "\n", + "#Voltage drop accross AF is zero.Therefore equation 8i +6(i-12) + 4(i-36)+10(i-108)*10^(-3)\n", + "current_i = (r_cd*i_c + r_de*(i_c+i_d) + r_ef*(i_c+i_d+i_e))/(28.0e-3) #A\n", + "#currents in different sections\n", + "current_ac = current_i #A\n", + "current_cd= current_ac-i_c #A\n", + "current_de = current_cd-i_d #A\n", + "current_ef = current_de-i_e #A \n", + "current_fb = current_ef-i_f #A\n", + "#voltage at different points are\n", + "V_b = V_f - current_fb*r_fb #V\n", + "V_c = V_a - current_ac*r_ac #V\n", + "V_d = V_c - current_cd*r_cd #V\n", + "V_e = V_d - current_de*r_de #V \n", + "\n", + "print \"Current supplied by feeder at point A is\",round(current_ac,2),\"A and that by point B is\",round(abs(current_fb),2),\"A.\"\n", + "print \"Voltage at point B is = \",round(V_b,2),\"V.\"\n", + "print \"Voltage at point C is = \",round(V_c,2),\"V.\"\n", + "print \"Voltage at point D is = \",round(V_d,2),\"V.\"\n", + "print \"Voltage at point E is = \",round(V_e,2),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.12 ,Page No :- 1585" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The current supplied at P is = 143.75 A.\n", + "The current supplied at Q is = 116.25 A.\n", + "Power dissipated in distributor is = 847.34 W.\n" + ] + } + ], + "source": [ + "#A two-wire d.c sdistributor PQ,800 metre long is loaded as under:\n", + "#Distance from P(metres): 100 250 500 600 700\n", + "#Loads in amperes: 20 80 50 70 40\n", + "#The feeding point at P is maintained at 248V and that at Q at 245V.The total resistance of\n", + "#the distributor(lead and return) is 0.1 ohm.Find (a)the current supplied at P and Q and\n", + "#(b)the power dissipated in the distributor.\n", + "##################################################################################################\n", + "\n", + "#Given\n", + "V_p = 248.0 #V\n", + "V_q = 245.0 #V\n", + "res = 0.1/800 #ohm/m \n", + "#loads and their positions\n", + "i1 = 20.0 #A\n", + "i2 = 80.0 #A\n", + "i3 = 50.0 #A\n", + "i4 = 70.0 #A\n", + "i5 = 40.0 #A\n", + "l1 = 100.0 #m\n", + "l2 = 250.0-100.0 #m\n", + "l3 = 500.0 -250.0 #m\n", + "l4 = 600.0-500.0 #m\n", + "l5 = 700.0-600.0 #m\n", + "l6 = 800.0-700.0 #m\n", + "#drop accross the distributor :- 1/8000(100i + 150(i-20) + 250(i-100)+ 100(i-150)+100(i-220)+100(i-260) )=3\n", + "current_i = ((V_p-V_q)/res + l2*i1+l3*(i1+i2)+l4*(i1+i2+i3)+l5*(i1+i2+i3+i4)+l6*(i1+i2+i3+i4+i5))/800.0\n", + "current_p = current_i #A\n", + "current_2 = current_p-i1 #A\n", + "current_3 = current_2-i2 #A\n", + "current_4 = current_3-i3 #A\n", + "current_5 = current_4-i4 #A\n", + "current_q = current_5-i5 #A\n", + "#Power loss = sum(I^2R)\n", + "loss = res*(current_p*current_p*l1 + current_2*current_2*l2 + current_3*current_3*l3 + current_4*current_4*l4 + current_5*current_5*l5 + current_q*current_q*l6)\n", + "print \"The current supplied at P is = \",round(current_p,2),\"A.\"\n", + "print \"The current supplied at Q is = \",round(abs(current_q),2),\"A.\"\n", + "print \"Power dissipated in distributor is =\",round(loss,2),\"W.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.13 ,Page No :- 1586" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The point of minimum potential is D and minimum potential is = 231.76 V.\n", + "Current fed at the end A is = 366.0 A.\n", + "Current fed at the end B is = 454.0 A.\n" + ] + } + ], + "source": [ + "#The two conductors of a d.c distributor cable 1000m long have a total resistance of 0.1 ohm.\n", + "#The ends A and B are fed at 240V.The cable is uniformly loaded at 0.5 A per metre length\n", + "#and has concentrated loads of 120A,60A,100A and 40A at points distant 200,400,700 and 900m.\n", + "#respectively from the end A.Calculate (i)the point of minimum potential on the distributor\n", + "#(ii)the value of minimum potential and (iii) currents fed at the ends A and B.\n", + "###############################################################################################\n", + "\n", + "#Given\n", + "V_a = 240.0 #V\n", + "V_b = 240.0 #V\n", + "res = 0.1/1000 #ohm/m\n", + "#concentrated loads and their positions\n", + "i_c = 120.0 #A\n", + "i_d = 60.0 #A\n", + "i_e = 100.0 #A\n", + "i_f = 40.0 #A\n", + "l_ac = 200.0 #m\n", + "l_cd = 400.0-200.0 #m\n", + "l_de = 700.0-400.0 #m\n", + "l_ef = 900.0-700.0 #m\n", + "l_fb = 1000.0-900.0 #m\n", + "#Uniform loading\n", + "cur_uni = 0.5 #A/m\n", + "#Equation for drop from A to B -> (1/10000)*(200i + 200(i-120)+ 300(i-180)+200(i-280)+100(i-320))=0\n", + "current_i = (l_cd*i_c + l_de*(i_c+i_d)+l_ef*(i_c+i_d+i_e)+l_fb*(i_c+i_d+i_e+i_f))/1000\n", + "\n", + "#point of minimum potential\n", + "current_ac = current_i #A\n", + "current_cd = current_ac-i_c #A\n", + "current_de = current_cd-i_d #A\n", + "current_ef = current_de-i_e #A\n", + "current_fb = current_ef-i_f #A\n", + "\n", + "if current_cd>0:\n", + " if current_de<0:\n", + " point = \"D\"\n", + "#As from figure it is inferred that point of minimum potential is D.\n", + "#Therefore,uniform load from point A to D(supplied from A)\n", + "cur_uni_A = cur_uni*(l_ac + l_cd) #A\n", + "cur_A = cur_uni_A + current_ac #A\n", + "#Therefore,uniform load from point B to D(supplied from B)\n", + "cur_uni_B = cur_uni*(l_de + l_ef + l_fb) #A\n", + "cur_B = cur_uni_B + abs(current_fb) #A\n", + "\n", + "#drop at D due to concentrated load(from A)\n", + "drop_con = res*(current_ac*l_ac + current_cd*l_cd)\n", + "#drop at D due to uniform load(from A)[formula-> irl^2/2]\n", + "drop_uni = cur_uni*res*(l_ac+l_cd)*(l_ac+l_cd)/2\n", + "#total drop is\n", + "drop_tot = drop_con + drop_uni\n", + "\n", + "#potential at D is\n", + "V_d = V_a - drop_tot\n", + "print \"The point of minimum potential is\",point,\"and minimum potential is = \",round(V_d,2),\"V.\"\n", + "print \"Current fed at the end A is = \",round(cur_A,2),\"A.\"\n", + "print \"Current fed at the end B is = \",round(cur_B,2),\"A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.14 ,Page No :- 1587" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage V is = 8.62 V.\n", + "Cross-sectional Area A is = 2.78 cm^2.\n", + "Cross-sectional Area A1 is = 0.26 cm^2.\n", + "Cross-sectional Area A2 is = 2.24 cm^2.\n" + ] + } + ], + "source": [ + "#It is proposed to lay out a d.c distribution system comprising three sections-the first section consists\n", + "#of a cable from the sub-station to a point distant 800 metres from which two cables are taken,one 350 metres\n", + "#long supplying a load of 22kW and the other 1.5 kilometre long and supplying a load of 44kW.Calculate the\n", + "#cross-sectional area of each cable so that the total weight of copper required shall be minimum if the maximum\n", + "#drop of voltage along the cable is not to exceed 5% of the normal voltage of 440V at the consumer's premises.\n", + "#Take specific resistance of copper at working temperature equal to 2*10e-7 ohm-cm.\n", + "###################################################################################################################\n", + "\n", + "#Given\n", + "resistivity = 2*10e-7 #ohm-cm\n", + "dist = 800.0*100 #cm\n", + "#Current taken from 350m section\n", + "cur_1 = 22000.0/440\n", + "#Current taken from 1.5km section\n", + "cur_2 = 44000.0/440\n", + "#Therefore,current in first section\n", + "cur = cur_1 + cur_2\n", + "#Let us assume\n", + "#V->voltage drop accross first section\n", + "#R->resistance of the first section\n", + "#A->cross-sectional area of te first section\n", + "\n", + "from sympy import Eq, var, solve\n", + "var('V') \n", + "#Now , R = V/I\n", + "R = V/cur\n", + "# A = resistivity*l/R -> A = resistivity*l*I/V \n", + "A = resistivity*dist/R\n", + "#Max allowable drop\n", + "max_drop = (5.0/100)*440.0\n", + "#Voltage drop along other sections\n", + "vol_drop = max_drop - V\n", + "#Cross-sectional area of 350 m A = resistivity*l/R \n", + "A1 = resistivity*350.0*100*cur_1/(vol_drop)\n", + "#Cross-sectional area of 1.5km A = resistivity*l/R \n", + "A2 = resistivity*1500.0*100*cur_2/(vol_drop)\n", + "\n", + "\n", + "#Now,Total weight is propotional to total volume \n", + "W = 800.0*A + 350.0*A1+1500.0*A2\n", + "Diff = W.diff(V)\n", + "eq = Eq(Diff,0)\n", + "\n", + "V = solve(eq)\n", + "#We get 2 values of V of which Negative is not possible.Therefore,\n", + "V = float(V[1])\n", + "A = resistivity*dist*cur/V\n", + "vol_drop = max_drop - V\n", + "A1 = resistivity*350.0*100*cur_1/vol_drop\n", + "A2 = resistivity*1500.0*100*cur_2/vol_drop\n", + "print \"Voltage V is = \",round(V,2),\"V.\"\n", + "print \"Cross-sectional Area A is = \",round(A,2),\"cm^2.\"\n", + "print \"Cross-sectional Area A1 is = \",round(A1,2),\"cm^2.\"\n", + "print \"Cross-sectional Area A2 is = \",round(A2,2),\"cm^2.\"\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.15 ,Page No :- 1588" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The point of minimum potential is at 261.74 m from A.\n", + "The minimum potential is = 247.34 V.\n" + ] + } + ], + "source": [ + "#A d.c two-wire distributor AB is 450m long and is fed at both ends at 250 volts.It is loaded as follows:20A at 60m from A,\n", + "#40A at 100m from A and a uniform loading of 1.5A/m from 200 to 450m from A.The resistance of each conductor is\n", + "#0.05ohm/km.Find the point of minimum potential and its potential.\n", + "####################################################################################################################\n", + "\n", + "#Given\n", + "V_a = 250.0 #V\n", + "V_b = 250.0 #V\n", + "res = 0.05/1000 #ohm/m\n", + "cur_uni = 1.5 #A/m (uniform loading)\n", + "#loads and positions\n", + "i_c = 20.0 #A\n", + "i_d = 40.0 #A\n", + "l_ac = 60.0 #m\n", + "l_cd = 40.0 #m\n", + "l_de = 100.0 #m\n", + "l_eb = 250.0 #m\n", + "\n", + "#Let us assume that point of minimum potential is D and let i be current in section CD.\n", + "#Therefore,current from B is (40-i).If r is resistance then\n", + "#(20+i)*60r + i*40r = (40-i)*350r + 1.5*r*250^2/2 [drop over AD = drop over BD as V_a = V_b]\n", + "\n", + "cur_i = (i_d*(l_de+l_eb)*res + cur_uni*res*l_eb*l_eb/2 - i_c*l_ac*res)/((l_ac+l_cd+l_de+l_eb)*res) #A\n", + "\n", + "#cur_i > 40 i.e 40-i is negative,it means D is not point of minimum potential.Let F be point of minimum potential(between DB)\n", + "#current in section DF is\n", + "cur_df = cur_i-i_d #A\n", + "\n", + "#distance EF\n", + "dist_ef = cur_df/cur_uni #m\n", + "\n", + "#distance of F from A is\n", + "dist = l_ac + l_cd + l_de + dist_ef #m\n", + "\n", + "#total drop over AF is [(20+i)*60r + i*40r+ (i-40)*161.7r - 1.5*r*61.7^2/2\n", + "drop_af = 2*res*((i_c+cur_i)*l_ac + cur_i*l_cd + cur_df*(l_de+dist_ef)-cur_uni*dist_ef*dist_ef/2) #V\n", + "#potential at F\n", + "V_f = V_a - drop_af #V\n", + "print \"The point of minimum potential is at\",round(dist,2),\"m from A.\"\n", + "print \"The minimum potential is = \",round(V_f,2),\"V.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.16 ,Page No :- 1588" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current fed at A is = 225.0 A.\n", + "Current fed at B is = 475.0 A.\n", + "Point of minimum potential from B is = 475.0 metres.\n", + "Voltage at minimum potential is = 230.72 V.\n" + ] + } + ], + "source": [ + "#A two-wire d.c distributor AB,1000 metres long,is supplied from both ends,240V at A and 242V at B.There is a\n", + "#concentrated load of 200A at a distance of 400 metre from A and a uniformly distrubuted load of 1.0A/m between\n", + "#the mid-point and end B.Determine (i)the currents fed at A and B(ii)the point of minimum potential and\n", + "#(iii)voltage at this point.Take cable resistance as 0.005 ohm per 100 metre each core.\n", + "#####################################################################################################################\n", + "\n", + "#Given\n", + "#resistance per 100 metres\n", + "res = 2*0.005/100 #ohm/m\n", + "cur_uni = 1.0 #A/m\n", + "cur_con = 200.0 #A\n", + "len_uni = 500.0\n", + "#Let us assume that Ib current flows from point B.\n", + "#Considering a element dx in BD(500 metres) at a distance of X units(100 m each)\n", + "#voltage drop over dx = (1-100*x)*res*dx\n", + "#voltage drop over BD by integrating is = 0.05*Ib - 12.5\n", + "#voltage drop over DC = (Ib-500)*0.01\n", + "#voltage drop over CA = (Ib-700)*0.01*4\n", + "#total drop over AB = \n", + "tot_drop = 242.0-240.0\n", + "#summation of drops from AC + CD + DB\n", + "from sympy import Eq, var, solve\n", + "var('Ib') \n", + "sum = (Ib-500)*0.01 +(Ib-700)*0.01*4 + 0.05*Ib - 12.5\n", + "\n", + "eq = Eq(sum,tot_drop)\n", + "\n", + "Ib = solve(eq)\n", + "Ib = float(Ib[0])\n", + "#Total current\n", + "cur_tot = len_uni*cur_uni + cur_con\n", + "Ia = cur_tot - Ib #A\n", + "#Current in distributed load\n", + "cur_dis = Ia-cur_con #A\n", + "#point of minimum potential from D is\n", + "distD = cur_dis/cur_uni\n", + "#Therefore distance from B is\n", + "distB = len_uni-distD\n", + "#Therefore voltage drop is\n", + "from scipy.integrate import quad\n", + "\n", + "def integrand(x):\n", + " return (Ib-100*x)*res*100\n", + "\n", + "ans, err = quad(integrand, 0, (distB/100))\n", + "#Therefore potential of M is\n", + "pot_M = 242.0-ans #V\n", + "print \"Current fed at A is = \",Ia,\"A.\"\n", + "print \"Current fed at B is = \",Ib,\"A.\"\n", + "print \"Point of minimum potential from B is = \",distB,\"metres.\"\n", + "print \"Voltage at minimum potential is = \",round(pot_M,2),\"V.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.17 ,Page No :- 1590" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage at B is = 236.9 V.\n", + "Voltage at C is = 235.98 V.\n", + "Voltage at D is = 237.45 V.\n" + ] + } + ], + "source": [ + "#A 400-metre ring distributor has loads as shown in Fig. 40.29(a) where distances are in metres.The resistance\n", + "#of each conductor is 0.2 ohm per 1000 metres and the loads tapped off at points B,C,D are as shown.If the\n", + "#distributor is fed at A,find voltages at B,C and D.\n", + "#################################################################################################################\n", + "\n", + "#Given\n", + "\n", + "res = 0.2/1000 #ohm/m\n", + "V_a = 240.0 #V\n", + "#loads and positions\n", + "i_b = 100.0 #A\n", + "i_c = 70.0 #A\n", + "i_d = 50.0 #A\n", + "l_ab = 60.0 #m\n", + "l_bc = 80.0 #m\n", + "l_cd = 90.0 #m\n", + "l_da = 70.0 #m\n", + "\n", + "#total drop ->70i + 90(i-50)+80(i-120)+60(i-220)=0\n", + "cur_i = (l_cd*i_d + l_bc*(i_d+i_c) + l_ab*(i_d+i_c+i_b))/(l_ab+l_bc+l_cd+l_da)\n", + "#drops in different sections\n", + "drop_da = 2*cur_i*l_da*res\n", + "drop_cd = 2*(cur_i-i_d)*l_cd*res\n", + "drop_bc = 2*abs(cur_i-i_d-i_c)*l_bc*res\n", + "drop_ab = 2*abs(cur_i-i_d-i_c-i_b)*l_ab*res\n", + "\n", + "#voltages at different points\n", + "V_d = V_a - drop_da\n", + "V_c = V_d - drop_cd\n", + "V_b = V_a - drop_ab\n", + "print \"Voltage at B is = \",round(V_b,2),\"V.\"\n", + "print \"Voltage at C is = \",round(V_c,2),\"V.\"\n", + "print \"Voltage at D is = \",round(V_d,2),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.18 ,Page No :- 1591" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage at B is = 394.2 V.\n", + "Voltage at C is = 393.42 V.\n", + "Current in section BC is = 43.33 A.\n" + ] + } + ], + "source": [ + "#In a direct current ring main,a voltage of 400V is maintained at A.At B,500 metres away from A,a load of 150A is taken\n", + "#and at C,300 metres from B,a load of 200A is taken.The distance between A and C is 700 metres.The resistance of each\n", + "#conductor of the mains is 0.03ohm per 1000 metres.Find the voltage at B and C and also find the current in the section BC.\n", + "##############################################################################################################################\n", + "\n", + "#Given\n", + "V_a = 400.0 #V\n", + "res = 0.03/1000 #ohm/m\n", + "#loads and positions\n", + "i_b = 150.0 #A\n", + "i_c = 200.0 #A\n", + "l_ab = 500.0 #m\n", + "l_bc = 300.0 #m\n", + "l_ca = 700.0 #m\n", + "\n", + "#total drop-> 500i + 300(i-150) + 700(i-350) = 0\n", + "cur_i = (l_bc*i_b + l_ca*(i_b+i_c))/(l_ab+l_bc+l_ca)\n", + "#current in different sections\n", + "cur_ab = cur_i\n", + "cur_bc = cur_i-i_b\n", + "cur_ca = abs(cur_bc-i_c)\n", + "#drops in different sections\n", + "drop_ab = 2*cur_ab*l_ab*res\n", + "drop_bc = 2*cur_bc*l_bc*res\n", + "#voltages in different sections\n", + "V_b = V_a-drop_ab\n", + "V_c = V_b-drop_bc\n", + "print \"Voltage at B is = \",round(V_b,2),\"V.\"\n", + "print \"Voltage at C is = \",round(V_c,2),\"V.\"\n", + "print \"Current in section BC is = \",round(cur_bc,2),\"A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.19 ,Page No :- 1591" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current in AB,BC,CD,DE,EA is 29.04 A, 19.04 A, 0.96 A, 30.96 A, 40.96 A respectively.\n", + "\n", + "Voltage at B,C,D,E is 217.1 V, 216.14 V, 216.15 V, 216.93 V respectively\n", + "\n", + "Current in AB,BC,DE,CE,EA is 27.72 A, 17.72 A, 32.28 A, 9.76 A, 42.28 A respectively.\n", + "\n", + "Voltage at B,C,D,E is 217.23 V, 216.34 V, 216.02 V, 216.83 V respectively\n" + ] + } + ], + "source": [ + "#A d.c ring main ABCDE is fed at point A from a 220-V supply and the resistances(including both lead and return)\n", + "#of the various sections are as follows(in ohms):AB=0.1;BC=0.05;CD=0.01;DE=0.025 and EA=0.075.The main supplies\n", + "#loads of 10A at B; 20A at C; 30A at D and 10A at E.Find the magnitude and direction of the current flowing in each\n", + "#section and the voltage at each load point.\n", + "#If the points C and E are further linked together by a conductor of 0.05 ohm resistance and the output currents\n", + "#from the mains remain unchanged,find the new distribution of the current and voltage in the network.\n", + "#####################################################################################################################\n", + "\n", + "#Given\n", + "\n", + "V_a = 220.0 #V\n", + "#resistances of different sections\n", + "r_ab = 0.1 #ohm\n", + "r_bc = 0.05 #ohm\n", + "r_cd = 0.01 #ohm\n", + "r_de = 0.025 #ohm\n", + "r_ea = 0.075 #ohm\n", + "#loads\n", + "i_b = 10.0 #A\n", + "i_c = 20.0 #A\n", + "i_d = 30.0 #A\n", + "i_e = 10.0 #A\n", + "#total drop -> 0.1i + 0.05(i-10) + 0.01(i-30) + 0.025(i-60) + 0.075(i-70)=0\n", + "cur_i = (r_bc*i_b + r_cd*(i_b+i_c) + r_de*(i_b+i_c+i_d) + r_ea*(i_b+i_c+i_d+i_e))/(r_ab+r_bc+r_cd+r_de+r_ea)\n", + "#current in different sections\n", + "cur_ab = cur_i\n", + "cur_bc = cur_ab-i_b\n", + "cur_cd = cur_bc-i_c\n", + "cur_de = cur_cd-i_d\n", + "cur_ea = cur_de-i_e\n", + "\n", + "#drops in different sections\n", + "drop_ab = cur_ab*r_ab\n", + "drop_bc = cur_bc*r_bc\n", + "drop_de = abs(cur_de)*r_de\n", + "drop_ea = abs(cur_ea)*r_ea\n", + "#voltages at different points\n", + "V_b = V_a - drop_ab\n", + "V_c = V_b - drop_bc\n", + "V_e = V_a - drop_ea\n", + "V_d = V_e - drop_de\n", + "print \"Current in AB,BC,CD,DE,EA is\",round(cur_ab,2),\"A,\",round(cur_bc,2),\"A,\",round(abs(cur_cd),2),\"A,\",round(abs(cur_de),2),\"A,\",round(abs(cur_ea),2),\"A respectively.\" \n", + "print \"\"\n", + "print \"Voltage at B,C,D,E is\",round(V_b,2),\"V,\",round(V_c,2),\"V,\",round(V_d,2),\"V,\",round(V_e,2),\"V respectively\"\n", + "print \"\"\n", + "#part-2\n", + "#Potential difference between end points of interconnector(CE)\n", + "V_ce = V_e-V_c\n", + "#Resistance between CE ,as shown in figure\n", + "r1 = r_ab+r_bc+r_ea\n", + "r2 = r_de + r_cd\n", + "res_ce = r1*r2/(r1+r2)+ 0.05\n", + "\n", + "#Current in interconnector [I = V/R Ohm's Law]\n", + "cur_ce = V_ce/res_ce\n", + "#Current goes from E to C as E is at higher potential.\n", + "\n", + "#The current in other sections will also change.\n", + "#let us assume i1 along ED, voltage round the closed mesh EDC is zero.\n", + "#total drop -> -0.025*i1-0.01*(i1-30)+0.05*9.75 = 0\n", + "\n", + "cur_i1 = (0.05*cur_ce + r_cd*i_d)/(r_cd+r_de)\n", + "\n", + "current_ea = i_e+cur_i1+cur_ce\n", + "current_ab = (i_b+i_c+i_d+i_e)-current_ea\n", + "current_bc = current_ab-i_b\n", + "current_de = current_ea-i_e\n", + "#new drops\n", + "drop_ab = current_ab*r_ab\n", + "drop_bc = current_bc*r_bc\n", + "drop_ea = current_ea*r_ea\n", + "drop_de = current_de*r_de\n", + "\n", + "#new potentials\n", + "V_b = V_a - drop_ab\n", + "V_c = V_b - drop_bc\n", + "V_e = V_a - drop_ea\n", + "V_d = V_e - drop_de\n", + "\n", + "print \"Current in AB,BC,DE,CE,EA is\",round(current_ab,2),\"A,\",round(current_bc,2),\"A,\",round(current_de,2),\"A,\",round(cur_ce,2),\"A,\",round(current_ea,2),\"A respectively.\"\n", + "print \"\"\n", + "print \"Voltage at B,C,D,E is\",round(V_b,2),\"V,\",round(V_c,2),\"V,\",round(V_d,2),\"V,\",round(V_e,2),\"V respectively\" \n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.20 ,Page No :- 1594" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage across 3 ohm load is = 244.9 V.\n", + "Voltage across 4 ohm load is = 247.9 V.\n" + ] + } + ], + "source": [ + "#In a 3-wire distribution system,the supply voltage is 250V on each side.The load on one side is a 3 ohm\n", + "#resistance and on the other, a 4 ohm resistance.The resistance of each of the 3 conductors is 0.05 ohm.\n", + "#Find the load voltages.\n", + "#########################################################################################################\n", + "\n", + "import numpy as np\n", + "#Given\n", + "#Resistances\n", + "res_1 = 3.0 #ohm\n", + "res_2 = 4.0 #ohm\n", + "res_con = 0.05 #ohm\n", + "V_sup = 250.0 #V\n", + "\n", + "#Let the assumed directions of unknown currents be as shown in figure.\n", + "#KVL for ABCD\n", + "# (3+0.05)x + 0.05(x-y) = 250 -------------- eqn 1\n", + "a = res_1 + 2*res_con\n", + "b = -(res_con)\n", + "#KVL for DCEFD\n", + "# 0.05(y-x) + (4+0.05)y = 250 -------------- eqn 2\n", + "c = res_2+ 2*res_con \n", + "#Solving eqn 1 and eqn2\n", + "m = [[a,b],[b,c]]\n", + "n = [V_sup,V_sup]\n", + "soln = np.linalg.solve(m,n) #soln is array with its elements[x,y]\n", + "#Calculating the load voltages\n", + "#V1 = 250-0.05*x-0.05(x-y)\n", + "vol1 = V_sup - res_con*soln[0]-res_con*(soln[0]-soln[1]) #V\n", + "#V2 = 250 + 0.05(x-y)- 0.05y\n", + "vol2 = V_sup + res_con*(soln[0]-soln[1]) - res_con*soln[1] #V\n", + "print \"Voltage across 3 ohm load is = \",round(vol1,1),\"V.\"\n", + "print \"Voltage across 4 ohm load is = \",round(vol2,1),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.21 ,Page No :- 1594" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Potential Difference across AB is = 248.62 V.\n", + "Potential Difference across QK is = 247.83 V.\n", + "Potential Difference across CD is = 248.4 V.\n", + "Potential Difference across FE is = 247.65 V.\n" + ] + } + ], + "source": [ + "#A 3-wire d.c distributor PQ,250 metres long,is supplied at end P at 500/250V and is loaded as under:\n", + "#Positive side: 20A 150 metres from P ; 30A 250 metres from P.\n", + "#Negative side: 24A 100 metres from P ; 36A 220 metres from P.\n", + "#The resistance of each outer wire is 0.02 ohm per 100 metres and the cross-section of the middle wire\n", + "#is one-half of the outer.Find the voltage across each load point.\n", + "##########################################################################################################\n", + "\n", + "#Given\n", + "V_PN = 250.0 #V\n", + "V_NR = 250.0 #V\n", + "res_out = 0.02/100 #ohm/m\n", + "res_mid = 2*res_out #ohm/m (Area of middle wire is half.As, R = rho*l/A .Therefore,Resistance doubles)\n", + "\n", + "#Given Currents\n", + "i_ab = 20.0 #A\n", + "i_qk = 30.0 #A\n", + "i_cd = 24.0 #A\n", + "i_fe = 36.0 #A\n", + "\n", + "#Currents in different sections\n", + "i_pa = i_ab+i_qk #A\n", + "i_aq = i_qk #A\n", + "i_fk = i_qk #A\n", + "i_bf = i_fe-i_qk #A\n", + "i_bc = i_ab-i_bf #A\n", + "i_cn = i_cd-i_bc #A\n", + "i_de = i_fe #A\n", + "i_dr = i_cd+i_fe #A\n", + "\n", + "\n", + "#lengths of different sections\n", + "l_pa = 150.0 #m\n", + "l_aq = 100.0 #m\n", + "l_kf = 250.0-220.0 #m\n", + "l_bc = 150.0-100.0 #m\n", + "l_bf = 220.0-150.0 #m\n", + "l_cn = 100.0 #m\n", + "l_de = 220.0-100.0 #m\n", + "l_dr = 100.0 #m\n", + "\n", + "#Resistances of different sections\n", + "r_pa = l_pa*res_out #ohm\n", + "r_aq = l_aq*res_out #ohm\n", + "r_kf = l_kf*res_mid #ohm\n", + "r_bc = l_bc*res_mid #ohm\n", + "r_bf = l_bf*res_mid #ohm\n", + "r_cn = l_cn*res_mid #ohm\n", + "r_de = l_de*res_out #ohm\n", + "r_dr = l_dr*res_out #ohm\n", + "\n", + "#Drop across different sections\n", + "drop_pa = r_pa*i_pa #V\n", + "drop_aq = r_aq*i_aq #V\n", + "drop_kf = r_kf*i_fk #V\n", + "drop_bc = r_bc*i_bc #V\n", + "drop_bf = r_bf*i_bf #V\n", + "drop_cn = r_cn*i_cn #V\n", + "drop_de = r_de*i_de #V\n", + "drop_dr = r_dr*i_dr #V\n", + "\n", + "#Voltages across different sections\n", + "vol_ab = V_PN - drop_pa - drop_bc + drop_cn #V\n", + "vol_qk = vol_ab - drop_aq - drop_kf + drop_bf #V\n", + "vol_cd = V_NR - drop_cn - drop_dr #V \n", + "vol_fe = vol_cd + drop_bc - drop_bf - drop_de #V\n", + "\n", + "print \"Potential Difference across AB is = \",round(vol_ab,2),\"V.\"\n", + "print \"Potential Difference across QK is = \",round(vol_qk,2),\"V.\"\n", + "print \"Potential Difference across CD is = \",round(vol_cd,2),\"V.\"\n", + "print \"Potential Difference across FE is = \",round(vol_fe,2),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.22 ,Page No :- 1597" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total load on main generator is = 155.0 kW.\n", + "Load on Balancer 1 is = 22.5 kW.\n", + "Load on Balancer 2 is = 27.5 kW.\n" + ] + } + ], + "source": [ + "#A d.c 3-wire system with 500-V between outers has lighting load of 100kW on the positive and 50kW on the\n", + "#negative side.If,at this loading,the balancer machines have each a loss of 2.5kW,Calculate the kW loading\n", + "#of each balancer machine and the total load on the system.\n", + "###########################################################################################################\n", + "\n", + "#Given\n", + "V_out = 500.0 #V\n", + "load_p = 100.0 #kW (positive side)\n", + "load_n = 50.0 #KW (negative side)\n", + "load_b = 2.5 #kW (balancer machine)\n", + "#total load on main generator\n", + "load_tot = load_p + load_n + 2*load_b #kW\n", + "#Output current of main generator\n", + "cur_out = load_tot*1000/V_out #W/V->A\n", + "#load current on positive side\n", + "cur_p = load_p*1000/(V_out/2) #A\n", + "#load current on negative side\n", + "cur_n = load_n*1000/(V_out/2) #A\n", + "#Current through neutral(Out of balance)\n", + "cur_o = cur_p-cur_n #A\n", + "\n", + "#Currents of balancer\n", + "cur_b1 = cur_p-cur_out #A\n", + "cur_b2 = cur_o - cur_b1 #A\n", + "\n", + "#Load on balancer\n", + "load_b1 = (V_out/2)*cur_b1/1000 #kW\n", + "load_b2 = (V_out/2)*cur_b2/1000 #kW\n", + "\n", + "print \"Total load on main generator is = \",round(load_tot,2),\"kW.\"\n", + "print \"Load on Balancer 1 is = \",round(load_b1,2),\"kW.\"\n", + "print \"Load on Balancer 2 is = \",round(load_b2,2),\"kW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.23 ,Page No :- 1598" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total load on main generator is = 1216.0 kW.\n", + "Current through Balancer 1 is = 168.0 A.\n", + "Current through Balancer 2 is = 232.0 A.\n" + ] + } + ], + "source": [ + "#In a 500/250-V d.c 3-wire system,there is a current of 2000A on the +ve side, 1600A on the negative side\n", + "#and a load of 300 kW across the outers.The loss in each balancer set is 8 kW.Calculate the current in each\n", + "#armature of the balancer set and total load on the main generator.\n", + "#############################################################################################################\n", + "\n", + "#Given\n", + "V_out = 500.0 #V\n", + "cur_p = 2000.0 #A (current on positive side)\n", + "cur_n = 1600.0 #A (current on negative side)\n", + "load_ext = 300.0 #kW (across outers)\n", + "load_b = 8.0 #kW (loss in balancer set)\n", + "#loading on positive side\n", + "load_p = (cur_p*(V_out/2))/1000 #kW\n", + "#loading on negative side\n", + "load_n = (cur_n*(V_out/2))/1000 #kW\n", + "#Total loading on main generator\n", + "load_tot = load_p + load_n + 2*load_b + load_ext #kW\n", + "\n", + "#current on main generator -> I = W/V\n", + "cur_tot = load_tot*1000/V_out #A\n", + "\n", + "#current through neutral(out of balance)\n", + "cur_o = cur_p-cur_n #A\n", + "\n", + "#current through external resistance\n", + "cur_ext = load_ext*1000/V_out #A\n", + "\n", + "#current through balancer sets\n", + "cur_b1 = (cur_p+cur_ext)-cur_tot #A\n", + "cur_b2 = cur_o - cur_b1 #A\n", + "\n", + "print \"Total load on main generator is = \",round(load_tot,2),\"kW.\"\n", + "print \"Current through Balancer 1 is = \",round(cur_b1,2),\"A.\"\n", + "print \"Current through Balancer 2 is = \",round(cur_b2,2),\"A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.24 ,Page No :- 1598" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current supplied by generator is = 7000.0 A.\n", + "Current in positive side is = 6000.0 A.\n", + "Current in negative side is = 8000.0 A.\n", + "Current in neutral is = 2000.0 A.\n", + "Current through armature 1 is = 1000.0 A.\n", + "Current through armature 2 is = 1000.0 A.\n" + ] + } + ], + "source": [ + "#On a 3-wire d.c distribution system with 500V between outers,there is a load of 1500kW on the positive\n", + "#side and 2000 kW on the negative side.Calculate the current in the neutral and in each of the balancer\n", + "#armatures and the total current supplied by the generator.Neglect losses.\n", + "##########################################################################################################\n", + "\n", + "#Given\n", + "V_out = 500.0 #V\n", + "load_p = 1500.0 #kW (load on positive side)\n", + "load_n = 2000.0 #kW (load on negative side)\n", + "#total loading on main generator\n", + "load_tot = load_p + load_n #kW\n", + "#current supplied by generator\n", + "cur_tot = load_tot*1000/V_out #A\n", + "#current on positive side\n", + "cur_p = load_p*1000/(V_out/2) #A\n", + "#current on negative side\n", + "cur_n = load_n*1000/(V_out/2) #A\n", + "#current in neutral(out of balance)\n", + "cur_o = abs(cur_p-cur_n) #A\n", + "#current through armatures\n", + "cur_b1 = cur_tot-cur_p #A\n", + "cur_b2 = cur_o-cur_b1 #A\n", + "\n", + "print \"Current supplied by generator is = \",cur_tot,\"A.\"\n", + "print \"Current in positive side is = \",cur_p,\"A.\"\n", + "print \"Current in negative side is = \",cur_n,\"A.\"\n", + "print \"Current in neutral is = \",cur_o,\"A.\"\n", + "print \"Current through armature 1 is = \",cur_b1,\"A.\"\n", + "print \"Current through armature 2 is = \",cur_b2,\"A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.25 ,Page No :- 1599" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current in balancer set 1 is = 22.0 A.\n", + "Current in balancer set 2 is = 28.0 A.\n", + "Output of main generator is = 119.5 kW.\n" + ] + } + ], + "source": [ + "#A 125/250 V,3-wire distributor has an out-of-balance current of 50 A and larger load of 500 A.The balancer\n", + "#set has a loss of 375 W in each machine.Calculate the current in each of the balancer machines and output\n", + "#of main generator.\n", + "############################################################################################################\n", + "\n", + "#Given\n", + "V_out = 250.0 #V\n", + "#Currents\n", + "cur_p = 500.0 #A\n", + "cur_o = 50.0 #A\n", + "cur_n = cur_p - cur_o #A\n", + "#larger Load\n", + "load_p = cur_p*(V_out/2)/1000 #kW\n", + "#smaller Load\n", + "load_n = cur_n*(V_out/2)/1000 #kW\n", + "#Balancer loss\n", + "loss_b = 2*375.0/1000 #kW\n", + "#total load on generator\n", + "load_tot = load_p + load_n + loss_b\n", + "#current from main generator -> VI = W\n", + "cur_tot = load_tot*1000/V_out #A\n", + "\n", + "#Current in balancer sets\n", + "cur_b1 = cur_p - cur_tot #A\n", + "cur_b2 = cur_o - cur_b1 #A\n", + "print \"Current in balancer set 1 is = \",cur_b1,\"A.\"\n", + "print \"Current in balancer set 2 is = \",cur_b2,\"A.\"\n", + "print \"Output of main generator is = \",load_tot,\"kW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.26 ,Page No :- 1599" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total load on main generator is = 1210.0 kW.\n", + "Load on Balancer set 1 is = 20.0 kW.\n", + "Load on balancer set 2 is = 30.0 kW.\n" + ] + } + ], + "source": [ + "#The load on d.c 3-wire system with 500 V between outers consists of lighting current of 1500 A on the\n", + "#positive side and 1300 A on the negative side while motors connected across the outers absorb 500kW.\n", + "#Assuming that at this loading,the balancer machines have each a loss of 5kW,calculate the load on the\n", + "#main generator and on each of the balancer machines.\n", + "##########################################################################################################\n", + "\n", + "#Given\n", + "cur_p = 1500.0 #A\n", + "cur_n = 1300.0 #A\n", + "V_out = 500.0 #V\n", + "load_ext = 500.0 #kW\n", + "loss_b = 2*5.0 #kW\n", + "\n", + "#current through external load\n", + "cur_ext = load_ext*1000/V_out #A\n", + "#larger load\n", + "load_p = cur_p*(V_out/2)/1000 #kW\n", + "#smaller load\n", + "load_n = cur_n*(V_out/2)/1000 #kW\n", + "#total load on generator\n", + "load_tot = load_p + load_n + loss_b + load_ext #kW\n", + "#current from generator -> VI = W\n", + "cur_tot = load_tot*1000/V_out #A\n", + "#current through neutral(out of balance)\n", + "cur_o = cur_p-cur_n #A\n", + "#current through balancer sets\n", + "cur_b1 = (cur_p+cur_ext)-cur_tot #A\n", + "cur_b2 = cur_o-cur_b1 #A\n", + "#load of balancer sets\n", + "load_b1 = cur_b1*(V_out/2)/1000 #kW\n", + "load_b2 = cur_b2*(V_out/2)/1000 #kW\n", + "\n", + "print \"Total load on main generator is = \",load_tot,\"kW.\"\n", + "print \"Load on Balancer set 1 is = \",load_b1,\"kW.\"\n", + "print \"Load on balancer set 2 is = \",load_b2,\"kW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.27 ,Page No :- 1599" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage across Balancer 1 is = 230.0 A.\n", + "Voltage across Balancer 2 is = 250.0 A.\n", + "Load current on main generator is = 1110.0 A.\n" + ] + } + ], + "source": [ + "#A d.c 3-wire system with 480 V across outers supplies 1200 A on the positive and 1000 A on the negative side.\n", + "#The balancer machines have each an armature resistances of 0.1W and take 10 A on no-load.Find\n", + "#(a)the voltage across each balancer and\n", + "#(b)the total load on the main generator and the current loading of each balancer machine.\n", + "#The balancer field windings are in series across the outers\n", + "################################################################################################################\n", + "\n", + "#Given\n", + "V_out = 480.0 #V\n", + "#currents\n", + "cur_p = 1200.0 #A\n", + "cur_n = 1000.0 #A\n", + "cur_o = cur_p - cur_n #A (out of balance)\n", + "#armature resistance \n", + "res_arm = 0.1 #ohm\n", + "#no-load current\n", + "cur_nold = 10.0 #A\n", + "\n", + "#Let us assume current Im flows through mtoring machine,then (200-Im) flows through generating machine.\n", + "#Let Vg and Vm be potential difference of 2 machines.\n", + "\n", + "#Total losses in sets = no-load losses + Cu losses in two machines\n", + "#loss_set = V_out*cur_nold + 0.1*Im^2+ 0.1*(200-Im)^2\n", + "#Vm*Im = Vg*Ig + loss_set\n", + "#Now, Vm = Eb+Im*Ra Vg = Eb-Ig*Ra\n", + "Eb = V_out/2-res_arm*cur_nold\n", + "\n", + "#Therefore, Vm = 239 + Im*0.1 and Vg = 239 - (200-Im)*0.1\n", + "#Hence,Equation is \n", + "#(239+0.1*Im)*Im = [239 - (200-Im)*0.1]*(200-Im) + loss_set\n", + "#Simplified -> 239Im = 239*(200-Im)+4800\n", + "\n", + "#Solving this equation\n", + "from sympy import Eq, var, solve\n", + "var('Im') \n", + "eq = Eq(Eb*(2*Im-cur_o),V_out*cur_nold)\n", + "Im = solve(eq)\n", + "Im = int(Im[0])\n", + "Ig = cur_o-Im\n", + "#Voltage across balancers\n", + "\n", + "Vm = Eb + Im*res_arm #V\n", + "Vg = Eb - Ig*res_arm #V \n", + "\n", + "#Load on main generator\n", + "cur_load = cur_p - Ig #A\n", + "print \"Voltage across Balancer 1 is = \",round(Vg,2),\"A.\"\n", + "print \"Voltage across Balancer 2 is = \",round(Vm,2),\"A.\"\n", + "print \"Load current on main generator is = \",round(cur_load,2),\"A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.28 ,Page No :- 1600" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage on positive side is = 283.0 V.\n", + "Voltage on negative side is = 177.0 V.\n" + ] + } + ], + "source": [ + "#A d.c 3-wire system with 460V between outers supplies 250kW on the positive and 400kW on the negative side,\n", + "#the voltages being balanced.Calculate the voltage on the positive and negative side,the voltages being balanced.\n", + "#Calculate the voltage on the positive and negative sides repectively,if the neutral wire becomes disconnected\n", + "#from balancer set.\n", + "#################################################################################################################\n", + "\n", + "#Given\n", + "V_mid = 230.0 #V\n", + "V_out = 460.0 #V\n", + "#loads\n", + "load_p = 250.0 #kW\n", + "load_n = 400.0 #kW\n", + "#resistance on positive side -> (V^2/R) = W\n", + "res_p = (V_mid*V_mid)/(load_p*1000) #ohm\n", + "\n", + "#resistance on negative side -> (V^2/R) = W\n", + "res_n = (V_mid*V_mid)/(load_n*1000) #ohm\n", + "\n", + "#Voltages after disconnecting balancer set\n", + "vol_p = (res_p/(res_p+res_n))*V_out #V\n", + "vol_n = V_out - vol_p #V\n", + "\n", + "print \"Voltage on positive side is = \",round(vol_p),\"V.\"\n", + "print \"Voltage on negative side is = \",round(vol_n),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 40.29 ,Page No :- 1601" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Terminal potential difference of the booster is = 180.0 V.\n", + "Output of booster is = 21.6 kW.\n" + ] + } + ], + "source": [ + "#A 2-wire system has the voltage at the supply end maintained at 500.The line is 3 km long.If the full-load\n", + "#current is 120 A,what must be the booster voltage and output in order that the far end voltage may also be 500 V.\n", + "#Take the resistance of the cable at the working temperature as 0.5ohm/kilometre.\n", + "####################################################################################################################\n", + "\n", + "#Total resistance of line\n", + "res_tot = 0.5*3 #ohm\n", + "#Full load current\n", + "cur_full = 120.0 #A\n", + "\n", + "#drop in the line-> V=IR\n", + "drop = res_tot*cur_full #V\n", + "\n", + "#Output of booster ->VI = W\n", + "output = drop*cur_full/1000 #kW\n", + "\n", + "print \"Terminal potential difference of the booster is = \",drop,\"V.\"\n", + "print \"Output of booster is = \",round(output,2),\"kW.\"" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "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.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter41.ipynb b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter41.ipynb new file mode 100644 index 00000000..0a494d2d --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter41.ipynb @@ -0,0 +1,3477 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# CHAPTER 41 : A.C. Transmission and Distribution" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.1 , PAGE NO :- 1613" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cu for 3-phase system = 0.29 * Cu for dc system.\n" + ] + } + ], + "source": [ + "'''A 3-phase, 4-wire system is used for lighting. Compare the amount of copper required with that needed for a\n", + "2-wire D.C. system with same line voltage. Assume the same losses and balanced load. The neutral is one half\n", + "the cross-section of one of the respective outers.'''\n", + "\n", + "from sympy import Symbol\n", + "\n", + "#(a) Two-wire DC\n", + "#We know that, I = P/V .Therefore\n", + "I = Symbol('I')\n", + "#Also let the resistance be R1\n", + "R1 = Symbol('R1')\n", + "#power loss is\n", + "loss1 = 2*(I*I)*R1 \n", + "\n", + "#(b) Three-phase,4-wire\n", + "\n", + "#We know that, I2 = P/3*V .Therefore I2 = I/3\n", + "#Also let the resistance be R2\n", + "R2 = Symbol('R2')\n", + "#power loss is\n", + "loss2 = 3*(I/3*I/3)*R2\n", + "\n", + "#loss1/loss2 = 2*I^2*R1/(I^2*R2*1/3) .Let ratio of resistances is R1/R2 = r1_r2\n", + "#As loss1 = loss2\n", + "r1_r2 = 1.0/6\n", + "\n", + "#Let the ratio of areas of conductors be a1_a2 As R o< 1/A\n", + "a2_a1 = 1/r1_r2\n", + "\n", + "#Cu loss of 3-phase/Cu loss of dc system = 3.5*A2*l/2*A1*l\n", + "ratio = (3.5/2)/a2_a1\n", + "\n", + "print \"Cu for 3-phase system = \",round(ratio,2),\" * Cu for dc system.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.2 , PAGE NO :- 1613" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wt of copper for 3-conductors = 9349.58 kg.\n" + ] + } + ], + "source": [ + "'''Estimate the weight of copper required to supply a load of 100 MW at upf by a 3-phase, 380-kV system over a distance\n", + "of 100 km. The neutral point is earthed. The resistance of the conductor is 0.045 ohm/cm^2/km. The weight of copper\n", + "is 0.01 kg/cm^3. The efficiency of transmission can be assumed to be 90 percent.'''\n", + "\n", + "#Power loss in the line\n", + "loss1 = (1 - 0.9) * 100.0 #MW\n", + "#Line current Il = P/vl*cosQ\n", + "Il = 100 * 1.0e+6/(1.732*380*(1.0e+3)*1) #A\n", + "#Since I^2R loss in 3-conductors is loss1, loss per conductor is\n", + "loss_c = loss1*1.0e+6/3 #W\n", + "\n", + "#Resistance per conductor Using loss = I^2*R\n", + "R_c = loss_c/(Il*Il) #ohm\n", + "#Resistance per conductor per km\n", + "R_km = R_c/100 #ohm\n", + "#Conductor cross-section\n", + "Vol = 0.045/R_km #m^3\n", + "#Volume of copper per meter run\n", + "Vol = Vol*100 #cm^3\n", + "#Weight of copper for 3-conductor for 100 km length\n", + "wt = 3 * (Vol * 0.01) * 100 * 1000 #kg\n", + "\n", + "print \"Wt of copper for 3-conductors = \",round(wt,2),\"kg.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.3 , PAGE NO :- 1614" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Additional power transmitted = 80.5 %.\n" + ] + } + ], + "source": [ + "'''A d.c. 2-wire distribution system is converted into a.c. 3-phase, 3-wire system by adding a third conductor of\n", + "the same size as the two existing conductors. If voltage between conductors and percentage power loss remain the same, calculate\n", + "the percentage additional balanced load which can now be carried by the conductors at 0.95 p.f.'''\n", + "\n", + "from sympy import Symbol\n", + "\n", + "#(a)DC 2-wire system\n", + "\n", + "#Let us assume\n", + "V = 1.0\n", + "R = 1.0\n", + "I1 = Symbol('I1')\n", + "#Power transmitted\n", + "P1 = V*I1\n", + "#Power loss\n", + "loss1 = 2*(I1**2)*R \n", + "#%power loss = power loss/Power transmitted\n", + "ploss1 = loss1/P1\n", + "\n", + "#(b)3-phase, 3-wire system\n", + "\n", + "I2 = Symbol('I2')\n", + "#Power transmitted P = 1.732*VI*cosQ\n", + "P2 = 1.732*V*I2*(0.95)\n", + "#Power loss\n", + "loss2 = 3*(I2**2)*R\n", + "#%power loss = power loss/Power transmitted\n", + "ploss2 = loss2/P2\n", + "\n", + "#As ploss1 == ploss2\n", + "I2 = 2*(0.95)*I1/1.732\n", + "P2 = 1.732*V*I2*(0.95)\n", + "#Add. power transmitted\n", + "ptrans = (P2 - P1)/P1 *100 #%\n", + "\n", + "print \"Additional power transmitted = \",round(ptrans,2),\"%.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.4 , PAGE NO :- 1614" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Additional power transmitted = 30.0 MW.\n" + ] + } + ], + "source": [ + "'''A 2-phase, 3-wire a.c. system has a middle conductor of same cross-sectional area as the outer and supplies a load\n", + "of 20 MW. The system is converted into 3-phase, 4-wire system by running a neutral wire. Calculate the new power which\n", + "can be supplied if voltage across consumer terminal and percentage line losses remain the same. Assume balanced load.'''\n", + "\n", + "from sympy import Symbol\n", + "\n", + "#(a)2-phase 3-wire system\n", + "\n", + "#Let us assume\n", + "V = 1.0\n", + "R = 1.0\n", + "cosQ = 1.0\n", + "I1 = Symbol('I1')\n", + "#Power transmitted\n", + "P1 = 2*V*I1*cosQ\n", + "#Power loss\n", + "loss1 = 2*(I1**2)*R \n", + "#%power loss = power loss/Power transmitted\n", + "ploss1 = loss1/P1\n", + "\n", + "#(b)3-phase, 4-wire system\n", + "\n", + "I2 = Symbol('I2')\n", + "#Power transmitted P = 1.732*VI*cosQ\n", + "P2 = 3*V*I2*cosQ\n", + "#Power loss\n", + "loss2 = 3*(I2**2)*R\n", + "#%power loss = power loss/Power transmitted\n", + "ploss2 = loss2/P2\n", + "\n", + "#As ploss1 == ploss2\n", + "I2 = I1\n", + "P2 = 3*V*I2*cosQ\n", + "#New Power that can be supplied P1/P2 = 20/x\n", + "pnew = 20*P2/P1 #MW\n", + "\n", + "print \"Additional power transmitted = \",round(pnew,2),\"MW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.5 , PAGE NO :- 1617" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "L = 1.02 uH/m.\n", + "L = 10.92 uH/m.\n" + ] + } + ], + "source": [ + "'''What is the inductance per loop metre of two parallel conductors of a single phase system if each has a diameter of 1\n", + "cm and their axes are 5 cm apart when conductors have a relative permeability of (a) unity and (b) 100. The relative\n", + "permeability of the surrounding medium is unity in both cases. End effects may be neglected and the current may be assumed\n", + "uniformly distributed over cross-section of the wires.'''\n", + "\n", + "import math as m\n", + "# (a)\n", + "# u = u0\n", + "u0 = 4*3.14*1.0e-7 #H/m\n", + "ui = 1.0\n", + "L = u0/3.14*(m.log(5.0/0.5) + ui/4)*1.0e+6 #uH/m\n", + "print \"L = \",round(L,2),\"uH/m.\"\n", + "# (b)\n", + "# u = u0\n", + "u0 = 4*3.14*1.0e-7 #H/m\n", + "ui = 100.0\n", + "L = u0/3.14*(m.log(5.0/0.5) + ui/4)*1.0e+6 #uH/m\n", + "print \"L = \",round(L,2),\"uH/m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.6 , PAGE NO :- 1617" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loop impedance is = 19.83 ohm.\n" + ] + } + ], + "source": [ + "'''A 20-km single-phase transmission line having 0.823 cm diameter has two line conductors separated by 1.5 metre.\n", + "The conductor has a resistance of 0.311 ohm per kilometre. Find the loop impedance of this line at 50 Hz.'''\n", + "\n", + "import math as m\n", + "\n", + "#Given\n", + "length = 20.0*1000 #m\n", + "u = 4*3.14*1.0e-7 #H\n", + "ui = 1.0\n", + "D = 1.5 #m\n", + "r = 0.823/2*1.0e-2 #m\n", + "#inductance is\n", + "L = length*(u/3.14*(m.log(D/r) + ui/4 )) #H\n", + "#reactance is\n", + "X = 2*3.14*50.0*L #ohm\n", + "#loop resistance\n", + "R = 2*length*0.311/1000 #ohm\n", + "#impedance is\n", + "Z = m.sqrt(X*X + R*R) #ohm\n", + "\n", + "print \"loop impedance is = \",round(Z,2),\"ohm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.7 , PAGE NO :- 1618" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Capacitance (excluding ground effect) = 0.00928 uF/km\n", + "Capacitance (including ground effect) = 0.00932 uF/km\n" + ] + } + ], + "source": [ + "'''The conductors in a single-phase transmission line are 6 m above ground. Each conductor has a diameter of 1.5 cm\n", + "and the two conductors are spaced 3 m apart. Calculate the capacitance per km of the line\n", + "(i) excluding ground effect and (ii) including the ground effect.'''\n", + "\n", + "import math as m\n", + "#Given\n", + "D = 3.0 #m (distance between conductors)\n", + "r = 1.5/2*1e-2 #m (radius)\n", + "h = 6.0 #m (height from ground)\n", + "eps = 8.85e-12 #epsilon (constant)\n", + "\n", + "#(i)Capacitance per km excluding ground effect\n", + "Cn = 2*3.14*eps/(m.log(D/r))*1.0e+9 #uF/km\n", + "print \"Capacitance (excluding ground effect) = \",round(Cn,5),\"uF/km\"\n", + "\n", + "#(ii)Capacitance including ground effect\n", + "Cn = 2*3.14*eps/(m.log(D/(r*m.sqrt(1 + D*D/(4*h*h)))))*1.0e+9 #uF/km\n", + "print \"Capacitance (including ground effect) = \",round(Cn,5),\"uF/km\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.8 , PAGE NO :- 1620" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sending-end voltage = 3859.08 V.\n" + ] + } + ], + "source": [ + "'''A single-phase line has an impedance of 5ang(60) and supplies a load of 120 A,3,300 V at 0.8 p.f. lagging.\n", + "Calculate the sending-end voltage and draw a vector diagram.'''\n", + "\n", + "import cmath as cm\n", + "import math as m\n", + "#Given\n", + "Er = cm.rect(3300.0,0) #V (Voltage) \n", + "Z = cm.rect(5.0,3.14/3) #ohm (Impedance)\n", + "pf = 0.8 #power factor\n", + "theta = m.acos(pf) #Q (power factor angle)\n", + "\n", + "I = cm.rect(120.0,-theta) #A (current)\n", + "\n", + "#Voltage drop\n", + "V = (I)*(Z) #V\n", + "\n", + "#Sending-end voltage is\n", + "Es = Er + V #V\n", + "\n", + "Es = m.sqrt(Es.real**2 + Es.imag**2)#V\n", + "\n", + "print \"Sending-end voltage = \",round(Es,2),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPE 41.9 , PAGE NO :- 1620" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sending end voltage is = 33.71 V.\n", + "Power factor = 0.796 lag\n" + ] + } + ], + "source": [ + "'''An overhead, single-phase transmission line delivers 1100 kW at 33 kV at 0.8 p.f. lagging. The total resistance of the line is\n", + "10ohm and total inductive reactance is 15ohm . Determine\n", + "(i) sending-end voltage (ii) sending-end p.f. and (iii) transmission efficiency.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "#Given\n", + "P = 1100.0 #kW (Power delivered)\n", + "V = 33.0 #kV (Voltage)\n", + "pf = 0.8 # (Power factor)\n", + "R = 10.0 #ohm (Resistance)\n", + "X = 15.0 #ohm (Reactance) \n", + "#Full-load line current is\n", + "I = P/(V*pf) #A\n", + "theta = m.acos(pf) #Q (power factor angle)\n", + "I = cm.rect(I,-theta) #ohm (impedance)\n", + "#Line-loss\n", + "loss = I*I*R/1000 #kW\n", + "\n", + "\n", + "#(iii)Transmission efficiency\n", + "eff = (P/(P+loss))*100 #%\n", + "#Line voltage drop is IZ\n", + "Z = R + 1j * X\n", + "\n", + "\n", + "#Sending end voltage is\n", + "Es = V + I*Z/1000 #V\n", + "Es1 = m.sqrt(Es.real**2 + Es.imag**2) #V\n", + "print \"Sending end voltage is = \",round(Es1,2),\"V.\"\n", + "\n", + "\n", + "#Sending end pf angle is\n", + "theta2 = theta + cm.phase(Es)\n", + "pf2 = m.cos(theta2) #power factor\n", + "\n", + "print \"Power factor = \",round(pf2,3),\"lag\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.10 , PAGE NO :- 1621" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Max. length in km is = 13.59 km.\n" + ] + } + ], + "source": [ + "'''What is the maximum length in km for a 1-phase transmission line having copper conductors of 0.775 cm^2 cross-section\n", + "over which 200 kW at unity power factor and at 3300 V can be delivered ? The efficiency of transmission is 90 per cent.\n", + "Take specific resistance as (1.725 * 10–8) ohm-m.'''\n", + "\n", + "#Given\n", + "A = 0.775e-4 #m^2 (Area of copper conductor)\n", + "P = 200.0 #kW (Power)\n", + "V = 3300.0 #V (Voltage)\n", + "pf = 1.0 # (Power factor)\n", + "rho = 1.725e-8 #ohm-m (Specific Resistance)\n", + "\n", + "#Sending-end power is\n", + "Es = P/0.9 #kW\n", + "#Line losses\n", + "loss = Es - P #kW\n", + "#Line current\n", + "I = P/(V*pf)*1000 #A\n", + "\n", + "\n", + "#If R is resistance of consuctor then 2*I^2*R = loss\n", + "R = loss/(2*I*I)*1000 #ohm\n", + "\n", + "#Now, using R = rho*l/A . The length is\n", + "l = R*A/rho #m \n", + "l = l/1000 #km\n", + "print \"Max. length in km is = \",round(l,2),\"km.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.11 , PAGE NO :- 1621" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "load current = 209.19 A\n", + "Voltage at sending end is = 2419.76 V.\n", + "Sending power = 526.03 kW.\n", + "Sending end reactive power = 701.38 kVAR.\n", + "Sending end volt ampere kVA = 876.72 kVA.\n" + ] + } + ], + "source": [ + "'''An industrial load consisting of a group of induction motors which aggregate 500 kW at 0.6 power factor lagging is\n", + "supplied by a distribution feeder having an equivalent impedance of (0.15 + j0.6) ohm. The voltage at the load end of\n", + "the feeder is 2300 volts.\n", + "(a) Determine the load current.\n", + "(b) Find the power, reactive power and voltampere supplied to the sending end of the feeder.\n", + "(c) Find the voltage at the sending end of the feeder.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "#Given\n", + "P = 500.0 #kW (Power)\n", + "V = 2300.0 #V (Voltage)\n", + "pf = 0.6 # (Power factor)\n", + "#(a)line current\n", + "I = P*1000/(V*pf*1.732) #A (Current)\n", + "theta = m.acos(pf) # (Power factor angle) \n", + "I1 = cm.rect(I,-theta) #A\n", + "Z = 0.15 + 1j*0.6 #ohm (Impedance)\n", + "\n", + "#Voltage drop is\n", + "drop = I1*Z #V\n", + "#Sending end voltage is\n", + "Es = V + drop #V\n", + "Es = abs(Es)\n", + "\n", + "#Sending end pf angle is\n", + "theta2 = theta + cm.phase(Es)\n", + "pf2 = m.cos(theta2) #power factor\n", + "pf21 = m.sin(theta2) #sinQ component\n", + "\n", + "#Sending power = root(3)*Vl*Il*cosQ\n", + "Ps = 1.732*Es*I*pf2/1000 #kW\n", + "\n", + "#Sending end reactive power = root(3)*Vl*Il*sinQ\n", + "Prs = 1.732*Es*I*pf21/1000 #kVAR\n", + "\n", + "#Sending end volt ampere kVA = root(3)*Vl*Il\n", + "Pvs = 1.732*Es*I/1000 #kVA\n", + "\n", + "print \"load current = \",round(I,2),\"A\"\n", + "print \"Voltage at sending end is = \",round(Es,2),\"V.\"\n", + "print \"Sending power = \",round(Ps,2),\"kW.\"\n", + "print \"Sending end reactive power = \",round(Prs,2),\"kVAR.\"\n", + "print \"Sending end volt ampere kVA = \",round(Pvs,2),\"kVA.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.12 , PAGE NO :- 1622" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Resistance R = 3.24 ohm.\n", + "Reactance X = 6.11 ohm.\n" + ] + } + ], + "source": [ + "'''A 33-kV, 3-phase generating station is to supply 10 MW load at 31 kV and 0.9 power factor lagging over a 3-phase\n", + "transmission line 3 km long. For the efficiency of the line to be 96% , what must be the resistance and reactance of the line?'''\n", + "\n", + "import math as m\n", + "#Given\n", + "#Power Output\n", + "pout = 10.0 #MW (Power output)\n", + "eff = 0.96 # (Efficiency)\n", + "pin = pout/eff #MW (Power input)\n", + "\n", + "#Total loss\n", + "loss = pin - pout #MW\n", + "\n", + "#Full-load current I = P/V*pf*root(3)\n", + "I = pout*1e+6/(31.0e+3*0.9*1.732) #A\n", + "\n", + "#If R is resistance per phase,then 3*I*I*R = loss\n", + "R = loss*1e+6/(3*I*I) #ohm\n", + "\n", + "#Now, Vs per phase is\n", + "Vs = 33/1.732 #kV\n", + "#Vr per phase is\n", + "Vr = 31/1.732 #kV\n", + "#Using Vs = Vr + I(RcosQ + XsinQ )\n", + "X = ((Vs - Vr)/I*1000 - R*0.9)/m.sqrt(1 - 0.9*0.9)\n", + "\n", + "print \"Resistance R = \",round(R,2),\"ohm.\"\n", + "print \"Reactance X = \",round(X,2),\"ohm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 41.13 , PAGE NO :- 1622" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage at recieving end = 59.91 V.\n", + "Angle between voltages = 3.12 degrees.\n", + "Transmission efficiency is = 92.59 %.\n" + ] + } + ], + "source": [ + "'''A balanced Y-connected load of (300 + j100) ohm is supplied by a 3-phase line 40 km long with an impedance of\n", + "(0.6 + j0.7) ohm per km (line-to-neutral). Find the voltage at the receiving end when the voltage at the sending\n", + "end is 66 kV. What is the phase angle between these voltages? Also, find the transmission efficiency of the line.'''\n", + "\n", + "import math as m\n", + "from sympy import Symbol,solve,Eq\n", + "#Resistance for 40 km conductor length\n", + "R = 40 * 0.6 #ohm\n", + "#Reactance for 40 km conductor length\n", + "X = 40 * 0.7 #ohm \n", + "#Total resistance/phase\n", + "R1 = R + 300 #ohm\n", + "#Total reactance/phase\n", + "X1 = X + 100 #ohm\n", + "#Total impedance/phase\n", + "Z = m.sqrt(R1**2 + X1**2) #ohm\n", + "#Line current\n", + "Il = 66000.0/1.732/Z #A \n", + "\n", + "#Now,\n", + "theta = m.atan(100.0/300.0)\n", + "cosQ = m.cos(theta)\n", + "sinQ = m.sin(theta)\n", + "#Voltage drop in conductor resistance\n", + "dropR = Il*R #V\n", + "#Voltage drop in conductor reactance\n", + "dropX = Il*X #V\n", + "\n", + "#Let us assume recieving end voltage as Vr\n", + "Vr = Symbol('Vr')\n", + "#Sending-end voltage is\n", + "Vs1 = 66000.0/1.732 #V\n", + "Vs2 = (Vr + dropR*cosQ + dropX*sinQ)**2 + (dropX*cosQ - dropR*sinQ)**2 #V\n", + "eq = Eq(Vs1*Vs1,Vs2)\n", + "Vr = solve(eq)\n", + "Vr1 = Vr[1] #V\n", + "\n", + "#Line-voltage across load\n", + "Vrl = Vr1*1.732/1000 #kV\n", + "print \"Voltage at recieving end = \",round(Vrl,2),\"V.\"\n", + "\n", + "#Angle between voltages\n", + "a_b = (dropX*cosQ - dropR*sinQ)/(Vr1 + dropR*cosQ + dropX*sinQ)\n", + "theta2 = m.atan(a_b)*180/3.14 #angle\n", + "print \"Angle between voltages = \",round(theta2,2),\"degrees.\"\n", + "#Transmission Efficiency\n", + "eff = (300.0/R1)*100\n", + "print \"Transmission efficiency is = \",round(eff,2),\"%.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.14 , PAGE NO :- 1623" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sending end voltage is = 12.12 V.\n", + "Power factor = 0.76\n", + "Transmission Efficiency = 93.93 %\n", + "Voltage Regulation = 10.2 %\n" + ] + } + ], + "source": [ + "'''Define ‘regulation’ and ‘efficiency’ of a short transmission line.A 3-phase, 50-Hz, transmission line having resistance of \n", + "5ohm per phase and inductance of 30 mH per phase supplies a load of 1000 kW at 0.8 lagging and 11 kV at the receiving end. Find.\n", + "(a) sending end voltage and power factor (b) transmission efficiency (c) regulation.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#Recieving-end Voltage\\phase\n", + "Vr = 11000.0/1.732 #V\n", + "#Line current\n", + "Il = 1000.0e+3/(1.732*11000.0*0.8) #A\n", + "#Inductive reactance\n", + "Xl = 2*3.14*50*30.0e-3 #ohm\n", + "R = 5.0 #ohm\n", + "#Impedance\n", + "Z = R + 1j*Xl #ohm\n", + "#drop per conductor\n", + "theta = m.atan(0.8)\n", + "Il1 = cm.rect(Il,-theta)\n", + "drop = Il1*(Z) #ohm\n", + "\n", + "#(a)Sending end voltage\n", + "Vs = Vr + drop #V\n", + "Vs1 = abs(Vs)*1.732/1000 #kV\n", + "#For power factor\n", + "theta2 = theta + cm.phase(Vs)\n", + "#Power factor\n", + "pf = m.cos(theta2)\n", + "\n", + "#(b)\n", + "#Power loss\n", + "loss = 3*Il*Il*R/1000 #kW\n", + "#Input Power\n", + "pin = 1000.0 + loss #kW\n", + "#Transmission efficiency\n", + "eff = 1000.0/pin *100 #% \n", + "# (c)% Voltage regulation\n", + "reg = (Vs1 - 11.0)/11.0*100 #%\n", + "\n", + "print \"Sending end voltage is = \",round(Vs1,2),\"V.\"\n", + "print \"Power factor = \",round(pf,2)\n", + "print \"Transmission Efficiency = \",round(eff,2),\"%\"\n", + "print \"Voltage Regulation = \",round(reg,2),\"%\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.15 , PAGE NO :- 1624" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Active power = 111397.0 kW.\n", + "Reactive power = 53952.0 kVAR.\n" + ] + } + ], + "source": [ + "'''A short 3-φ line with an impedance of (6 + j8) ohm per line has sending and receiving end line voltages of 120 and\n", + "110 kV respectively for some receiving-end load at a p.f. of 0.9. Find the active power and the reactive power at the\n", + "receiving end.'''\n", + "\n", + "import math as m\n", + "\n", + "#Given\n", + "R = 6.0 #ohm\n", + "X = 8.0 #ohm\n", + "cosQ = 0.9\n", + "sinQ = m.sqrt(1 - 0.9*0.9)\n", + "#Sending end-voltage\n", + "Vs = 120.0/1.732*1000 #V\n", + "#Recieving end-voltage\n", + "Vr = 110.0/1.732*1000 #V\n", + "#Now Vs = Vr + IRcosQ + IXsinQ.Therefore,line current is\n", + "I = (Vs - Vr)/(R*cosQ + X*sinQ) #A\n", + "\n", + "#Active Power at recieving end\n", + "act_pwr = 1.732*110.0*I*cosQ #kW\n", + "#Reactive Power at recieving end\n", + "rct_pwr = 1.732*110.0*I*sinQ #kVAR\n", + "\n", + "print \"Active power = \",round(act_pwr),\"kW.\"\n", + "print \"Reactive power = \",round(rct_pwr),\"kVAR.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.16 , PAGE NO :- 1624" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "-------pf = 0.707------- \n", + "% regulation = 15.18\n", + "Efficiency = 93.8\n", + "-------pf = 0.9--------- \n", + "% regulation = 9.36\n", + "Efficiency = 96.08\n" + ] + } + ], + "source": [ + "'''A 3-phase, 20 km line delivers a load of 10 MW at 11 kV having a lagging p.f. of 0.707 at the receiving end.\n", + "The line has a resistance of 0.02 ohm/km phase and an inductive reactance of 0.07 ohm/km/phase. Calculate the regulation\n", + "and efficiency of the line. If, now, the receiving end p.f. is raised to 0.9 by using static capacitors, calculate the\n", + "new value of regulation and efficiency.'''\n", + "\n", + "import cmath as cm\n", + "import math as m\n", + "\n", + "print \"-------pf = 0.707------- \"\n", + "#(i) When pf = 0.707 (lag)\n", + "pf = 0.707\n", + "#line current \n", + "Il = 10.0e+6/(1.732*11000*pf) #A\n", + "#Vr per phase\n", + "Vr = 11000.0/1.732 #V\n", + "#Total resistance/phase for 20km\n", + "R = 20*0.02 #W\n", + "#Total reactance/phase for 20km\n", + "X = 20*0.07 #W\n", + "\n", + "#Total impedance/phase\n", + "Z = R + 1j*X #ohm\n", + "#If Vr is taken as reference vector,then drop per phase is\n", + "theta = m.acos(pf)\n", + "Il1 = cm.rect(Il,-theta) #A\n", + "#drop/phase\n", + "drop = Il1*Z #V\n", + "#Sending end voltage\n", + "Vs = Vr + drop #V\n", + "Vs1 = abs(Vs) #V\n", + "#% regulation\n", + "reg = (Vs1 - Vr)/Vr*100\n", + "print \"% regulation = \",round(reg,2)\n", + "\n", + "#Total line loss\n", + "loss = 3*Il*Il*R/1.0e+6 #MW\n", + "#Total output\n", + "tot_op = 10.0 + loss #MW\n", + "#Efficiency\n", + "eff = 10.0/tot_op*100\n", + "print \"Efficiency = \",round(eff,2)\n", + "#-----------------------------------------------------------------------------------------------------------------------#\n", + "print \"-------pf = 0.9--------- \"\n", + "#(ii) When pf = 0.9 (lag)\n", + "pf = 0.9\n", + "#line current \n", + "Il = 10.0e+6/(1.732*11000*pf) #A\n", + "\n", + "#If Vr is taken as reference vector,then drop per phase is\n", + "theta = m.acos(pf)\n", + "Il1 = cm.rect(Il,-theta) #A\n", + "#drop/phase\n", + "drop = Il1*Z #V\n", + "#Sending end voltage\n", + "Vs = Vr + drop #V\n", + "Vs1 = abs(Vs) #V\n", + "#% regulation\n", + "reg = (Vs1 - Vr)/Vr*100\n", + "print \"% regulation = \",round(reg,2)\n", + "\n", + "#Total line loss\n", + "loss = 3*Il*Il*R/1.0e+6 #MW\n", + "#Total output\n", + "tot_op = 10.0 + loss #MW\n", + "#Efficiency\n", + "eff = 10.0/tot_op*100\n", + "print \"Efficiency = \",round(eff,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.17 , PAGE NO :- 1625" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sending end-voltage is = 11.86 kV.\n", + "Total loss = 68.57 kW.\n", + "Reduction in loss = 24.69 kW.\n" + ] + } + ], + "source": [ + "'''A load of 1,000 kW at 0.8 p.f. lagging is received at the end of a 3-phase line 10 km long. The resistance and inductance\n", + "of each conductor per km are 0.531 W and 1.76 mH respectively. The voltage at the receiving end is 11 kV at 50 Hz.\n", + "Find the sending-end voltage and the power loss in the line. What would be the reduction in the line loss if the p.f.\n", + "of the load were improved to unity?'''\n", + "\n", + "import cmath as cm\n", + "import math as m\n", + "\n", + "#Line current\n", + "Il = 1000.0 * 1000/(1.732 * 11 * 1000 * 0.8) #A\n", + "#Voltage/phase\n", + "V = 11000/1.732 #V\n", + "X = 2*3.14*50* 1.76e-3 *10 #ohm\n", + "R= 0.531 * 10 #ohm\n", + "Z = R + 1j*X\n", + "#Voltage drop/phase\n", + "theta = m.acos(0.8)\n", + "Il1 = cm.rect(Il,-theta)\n", + "drop = Il1*Z #V\n", + "#Sending end voltage is\n", + "Vs = V + drop #V\n", + "#line-to-line sending-end voltage\n", + "Vs1= abs(Vs)*1.732/1000 #kV\n", + "#Total loss \n", + "loss = 3*Il*Il*R/1000 #kW\n", + "\n", + "#Line current for unity p.f.\n", + "Il2 = 1000/(11*1.732) #A\n", + "#New losses\n", + "new_loss = 3*Il2*Il2*R/1000 #kW\n", + "\n", + "#Reduction in loss\n", + "red_loss = loss - new_loss #kW\n", + "\n", + "print \"Sending end-voltage is = \",round(Vs1,2),\"kV.\"\n", + "print \"Total loss = \",round(loss,2),\"kW.\"\n", + "print \"Reduction in loss = \",round(red_loss,2),\"kW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.18 , PAGE NO :- 1625" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Length of line = 69.55 km.\n" + ] + } + ], + "source": [ + "'''Estimate the distance over which a load of 15,000 kW at 0.85 p.f. can be delivered by a 3-phase transmission line\n", + "having conductors of steel-cored aluminium each of resistance 0.905 W per kilometre. The voltage at the receiving end\n", + "is to be 132 kV and the loss in transmission is to be 7.5% of the load.'''\n", + "\n", + "#Line current\n", + "Il = 15000/(132 * 1.732 * 0.85) #A\n", + "#Total loss\n", + "loss = (7.5/100)*15000 #kW\n", + "\n", + "#If R is the resistance of one conductor, then 3*I^2*R = loss\n", + "R = loss*1000/(3*Il*Il) #ohm \n", + "\n", + "#Length of the line\n", + "length = R/0.905 #km.\n", + "print \"Length of line = \",round(length,2),\"km.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 41.19 , PAGE NO :- 1625" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power factor = 0.797\n", + "Efficiency of transmission line is = 97.15\n" + ] + } + ], + "source": [ + "'''A 3-phase line has a resistance of 5.31 ohm and inductance of 0.0176 H. Power is transmitted at 33 kV, 50-Hz from one end\n", + "and the load at the receiving end is 3,600 kW at 0.8 p.f. lagging. Find the line current, receiving-end voltage,\n", + "sending-end p.f. and efficiency of transmisson.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#Let us assume that Vr is receiving end voltage\n", + "Vr = Symbol('Vr')\n", + "#Power delivered/phase = Vr*I*cosQ.Therefore I is\n", + "I = (3600.0/3)*1000/(0.8*Vr)\n", + "#Sending end voltage/phase =\n", + "Vs = 33000.0/1.732 #V\n", + "R = 5.31 #ohm\n", + "X = 2*3.14*0.0176*50 #ohm\n", + "\n", + "#Now,\n", + "cosQ = 0.8\n", + "sinQ = m.sqrt(1 - 0.8*0.8)\n", + "\n", + "#As we know, Vs = Vr + IRcosQ + IXsinQ\n", + "Vs2 = Vr + I*R*cosQ + I*X*sinQ #V\n", + "eq = Eq(Vs,Vs2)\n", + "Vr = solve(eq)\n", + "Vr1 = Vr[1] #V\n", + "#Line voltage at receiving end\n", + "Vrl = Vr1*1.732/1000 #kV\n", + "I = (3600.0/3)*1000/(0.8*Vr1) #A\n", + "\n", + "Vs = Vr1 + I*(cosQ - 1j*sinQ)*(R + 1j*X) #V\n", + "#Power factor\n", + "theta = m.acos(0.8) + cm.phase(Vs)\n", + "pf2 = m.cos(theta)\n", + "print \"Power factor = \",round(pf2,3)\n", + "#Power lost in line is\n", + "loss = 3*I*I*R/1000 #kW\n", + "#Power at sending end is\n", + "tot_pwr = 3600.0 + loss #kW\n", + "#Eficiency of transmission is\n", + "eff = 3600.0/tot_pwr*100\n", + "print \"Efficiency of transmission line is = \",round(eff,2) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.20 , PAGE NO :- 1626" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total Maximum power = 18.0 MW.\n", + "Total kVAR supplied = 28801.69 kW.\n" + ] + } + ], + "source": [ + "'''A 3-phase short transmission line has resistance and reactance per phase of 15 ohm and 20 ohm respectively. If the sending-end\n", + "voltage is 33 kV and the regulation of the line is not to exceed 10%, find the maximum power in kW which can be transmitted\n", + "over the line. Find also the kVAR supplied by the line when delivering the maximum power.'''\n", + "\n", + "import math as m\n", + "\n", + "#Given\n", + "Vs = 33000.0/1.732 #V (Sending end voltage)\n", + "Vr = Vs/(1 + 10.0/100) #V (Receiving end voltage)\n", + "Z = m.sqrt(15**2 + 20**2) #ohm (impedance)\n", + "R = 15.0 #ohm (resistance)\n", + "X = 20.0 #ohm (reactance) \n", + "#Maximum Power transmitted is given by\n", + "Pmax = (Vr/Z)**2*(Z*(Vs/Vr) - R) #watts/phase\n", + "\n", + "#Total max. power\n", + "ptot = Pmax*3/1e+6 #MW\n", + "\n", + "#kVAR supplied per phase is given by\n", + "pkvar = (Vr/Z)**2*X/1e+3 #kW\n", + "#Total kVAR supplied\n", + "kvartot = 3*pkvar #kW\n", + "\n", + "print \"Total Maximum power = \",round(ptot,2),\"MW.\"\n", + "print \"Total kVAR supplied = \",round(kvartot,2),\"kW.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.21 , PAGE NO :- 1627" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sending end voltage = 67.69 kV.\n", + "Efficiency = 98.8 %\n", + "Max. value of Q for 3-phases are = 346840.0 kVA.\n" + ] + } + ], + "source": [ + "'''A 3-phase, 50-Hz generating station supplies a load of 9,900 kW at 0.866 p.f. (lag) through a short overhead transmission line.\n", + "Determine the sending-end voltage if the receiving-end voltage is 66 kV and also the efficiency of transmission.\n", + "The resistance per km is 4ohm and inductance 40 mH. What is the maximum power in kVA that can be transmitted through\n", + "the line if both the sending and receiving-end voltages are kept at 66 kV and resistance of the line is negligible.?'''\n", + "\n", + "import math as m\n", + "#Resistance\n", + "R = 4.0 #ohm\n", + "#Reactance\n", + "X = 40.0e-3*(2*3.14*50)#ohm\n", + "#Impedance\n", + "Z = m.sqrt(R*R + X*X) #ohm\n", + "#Line current\n", + "I = 9900.0/(1.732*66*0.866) #A\n", + "#Receiving end voltage\n", + "Vr = 66000.0/1.732 #V\n", + "#Now,\n", + "cosQ = 0.866\n", + "sinQ = m.sqrt(1 - 0.866**2)\n", + "#Sending end voltage is\n", + "Vs = Vr + I*R*cosQ + I*X*sinQ #V\n", + "#Line value of sending end voltage\n", + "Vs1 = Vs*1.732/1000 #kV\n", + "print \"Sending end voltage = \",round(Vs1,2),\"kV.\"\n", + "#Total line loss\n", + "loss = 3*I*I*R/1000 #kW\n", + "#Efficiency is\n", + "eff = 9900.0/(9900.0 + loss)*100#%\n", + "print \"Efficiency = \",round(eff,2),\"%\"\n", + "\n", + "#Max. value of Q for 3-phases are (As Vs = Vr R is negligible)\n", + "Z = X #ohm \n", + "max_value = (3*Vr*Vr)/(Z*Z)*X*1e-3 #kVA\n", + "print \"Max. value of Q for 3-phases are = \",round(max_value,-1),\"kVA.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.22 , PAGE NO :- 1627" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power factor at sending end = 0.79\n", + "Transmission efficiency = 94.73 %\n" + ] + } + ], + "source": [ + "'''3-phase load of 2000 kVA,0.8 p.f. is supplied at 6.6 kV, 50-Hz by means of a 33 kV transmission line 20 km long and a 5 : 1\n", + "transformer. The resistance per km of each conductor is 0.4 ohm and reactance 0.5 ohm. The resistance and reactance of the\n", + "transformer primary are 7.5 ohm and 13.2 ohm, whilst the resistance of the secondary is 0.35 ohm and reactance 0.65 ohm.\n", + "Find the voltage necessary at the sending end of transformission line when 6.6 kV is maintained at the load-end and find\n", + "the sending-end power factor. Determine also the efficiency of transmission.'''\n", + "\n", + "import math as m\n", + "#Impedance of high voltage line\n", + "Zh = 8.0 + 1j*10.0 #ohm\n", + "#Impedance of transformer(primary side)\n", + "Zt = 7.5 + 1j*13.2 #ohm\n", + "#Total impedance on high tension side\n", + "Ztot_h = Zh + Zt #ohm\n", + "#Impedance as referred to secondary side\n", + "Zsec = Ztot_h/(5**2) #ohm\n", + "\n", + "#Total impedance on high tension side\n", + "Ztot_l = Zsec + (0.35 + 1j*0.65) #ohm\n", + "\n", + "#Now,kVA load per phase\n", + "load = 2000.0/3 #kVA \n", + "#Receiving-end voltage per phase\n", + "Vr = 6.6/1.732 #kV\n", + "#current in line is\n", + "I = load/Vr #A\n", + "#Now,\n", + "cosQ = 0.8\n", + "sinQ = m.sqrt(1 - 0.8*0.8)\n", + "#Drop per conductor\n", + "drop = I*(Zsec.real*cosQ + Zsec.imag*sinQ) #V\n", + "#Sending end voltage is\n", + "Vs = Vr + drop/1000 #kV\n", + "#Sending end voltage referred from high voltage side\n", + "Vs = Vs*5 #kV\n", + "#Line sending end voltage\n", + "Vsl = Vs*1.732 #kV\n", + "\n", + "#If theta is phase angle at sending end then\n", + "tantheta = (sinQ + I*Zsec.imag/(Vr*1000))/(cosQ + I*Zsec.real/(Vr*1000))\n", + "theta = m.atan(tantheta)\n", + "pf = m.cos(theta)\n", + "print \"Power factor at sending end = \",round(pf,2)\n", + "#power loss/phase\n", + "loss = (I*I)*0.97/1000 #kW\n", + "#power at the receiving end/phase\n", + "power = 2000.0*cosQ/3 #kW\n", + "#Transmission efficiency\n", + "eff = power/(power + loss)*100\n", + "print \"Transmission efficiency = \",round(eff,2),\"%\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.23 , PAGE NO :- 1629" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sending end current is 240.3 A.\n", + "Sending end voltage is 79598.0 V.\n", + "Voltage regulation = 20.6 %.\n" + ] + } + ], + "source": [ + "'''A (medium) single-phase transmission line 50 km long has the following constants :\n", + "\n", + "resistance/km = 0.5 ohm ; reactance/km = 1.6 ohm\n", + "susceptance/km = 28 * 10−6 S ; receiving-end line voltage = 66,000 V\n", + "Assuming that total capacitance of the line is located at receiving end alone, determine the\n", + "sending-end voltage, the sending-end current and regulation. The line is delivering 15,000 kW at\n", + "0.8 p.f. lagging. Draw a vector diagram to illustrate your answer.'''\n", + "\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#Load current at receiving end Using I = P/VcosQ\n", + "Ir = 15.0e+6/(66e+3*0.8) #A\n", + "\n", + "#Total resistance is\n", + "R = 0.5*50.0 #ohm\n", + "#Total reactance is\n", + "X = 1.6*50.0 #ohm\n", + "#Susceptance\n", + "B = 28e-6*50.0 #Siemens\n", + "#Capacitive admittance\n", + "Y = B #Siemens\n", + "#Sending end current Is is vector sum of load current Ir and capacitive current Ic\n", + "Er = 66000.0\n", + "Ic = 1j*Er*Y #A\n", + "theta = m.acos(0.8)\n", + "Irl = cm.rect(Ir,-theta) #A\n", + "\n", + "#Sending end current is\n", + "Is = Irl + Ic #A\n", + "Z = R + 1j*X #ohm\n", + "print \"Sending end current is\",round(abs(Is),2),\"A.\"\n", + "#line drop\n", + "drop = Is*Z #V\n", + "#Sending end voltage is\n", + "Es = Er + drop #V\n", + "print \"Sending end voltage is\",round(abs(Es)),\"V.\"\n", + "#Voltage regulation is\n", + "reg = (abs(Es)-abs(Er))/abs(Er)*100 #%\n", + "print \"Voltage regulation = \",round(reg,2),\"%.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.24 , PAGE NO :- 1631" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Line value of sending end voltage = 155.43 kV.\n", + "Power factor = 0.774 lagging.\n" + ] + } + ], + "source": [ + "'''A 3-phase, 50-Hz overhead transmission line 100 km long with 132 kV between lines at the receiving end has the\n", + "following constants :\n", + "\n", + "resistance/km/phase = 0.15 ohm inductance/km/phase = 1.20 mH\n", + "capacitance/km/phase = 0.01 mF\n", + "\n", + "Determine, using an approximate method of allowing for capacitance, the voltage, current and\n", + "p.f. at the sending end when the load at the receiving end is 72 MW at 0.8 p.f. lagging. Draw vector\n", + "diagram for the circuit assumed.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "#For a 100-km length of line\n", + "#Resistance of line is\n", + "R = 0.15*100 #ohm\n", + "Xl = (2*3.14*50)*(1.2e-3)*100 #ohm\n", + "Xc = 1/(2*3.14*50*0.1e-3)*100 #ohm\n", + "\n", + "#Using nominal T-method\n", + "Vr = 132/1.732 #kV\n", + "#Load current\n", + "Ir = (72e+6)/(1.732*132e+3*0.8) #A\n", + "#Load current is\n", + "theta = m.acos(0.8)\n", + "Irl = cm.rect(Ir,-theta) #A\n", + "#Impedance Zbc is\n", + "Zbc = R/2 + 1j*Xl/2 #ohm\n", + "#Drop/phase over BC is\n", + "drop = Irl*Zbc #V\n", + "#Now, voltage V1 is\n", + "V1 = Vr*1000 + drop #V\n", + "\n", + "#From fig. Ic is\n", + "Ic = V1/(-1j*Xc) #A\n", + "\n", + "#Sending end current is\n", + "Is = Ic + Irl #A\n", + "\n", + "#Impedance Zab is\n", + "Zab = R/2 + 1j*Xl/2 #ohm\n", + "#Drop/phase over AB is\n", + "drop2 = Is*Zab #V\n", + "#Sending end voltage is\n", + "Vs = V1 + drop2 #V\n", + "#Line value of sending end voltage is\n", + "Vsl = 1.732*abs(Vs)/1000 #kV\n", + "print \"Line value of sending end voltage =\",round(Vsl,2),\"kV.\"\n", + "#Phase angle between Vs and Is is\n", + "angle = abs(cm.phase(Vs)) + abs(cm.phase(Is))\n", + "pf = m.cos(angle) #(lag)\n", + "print \"Power factor = \",round(pf,3),\"lagging.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.25 , PAGE NO :- 1632" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Line value of sending end voltage = 117.15 kV.\n", + " sending end current = 110.11 A.\n", + "Efficiency = 95.95 %.\n" + ] + } + ], + "source": [ + "'''A 3-phase, 50-Hz transmission line, 100 km long delivers 20 MW at 0.9 p.f. lagging and at 110 kV. The resistance and\n", + "reactance of the line per phase per km are 0.2 ohm and 0.4 ohm respectively while the capacitive admittance is 2.5 * 10e−6 S per\n", + "km. Calculate (a) the voltage and current at the sending end and (b) the efficiency of transmission. Use the nominal T-method.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#Resistance for 100 km is\n", + "R = 0.2*100 #ohm\n", + "#Reactance for 100 km is\n", + "X = 0.4*100 #ohm\n", + "#Capacitive admittance for 100 km is\n", + "Y = 2.5e-6*100 #Siemens\n", + "#Receiving end voltage Er is\n", + "Er = 110.0/1.732 #kV\n", + "Ir = 20.0e+6/(1.732*110e+3*0.9) #A\n", + "#Now\n", + "cosQ = 0.9\n", + "sinQ = m.sqrt(1 - 0.9*0.9)\n", + "theta = m.acos(0.9) \n", + "Irl = cm.rect(Ir,-theta) #A\n", + "\n", + "#Impedance is\n", + "Zbc = R/2 + 1j*X/2 #ohm\n", + "#Voltage drop between point B and C is\n", + "dropbc = Irl*Zbc #V\n", + "V1 = Er*1000 + dropbc #V\n", + "\n", + "#Current through capacitor \n", + "Ic = V1*1j*Y #A\n", + "\n", + "#Sending end current is\n", + "Is = Ic + Irl #A\n", + "Zab = Zbc\n", + "#Voltage drop between point A and B is\n", + "dropab = Irl*Zab #V\n", + "Vs = V1 + dropab #V\n", + " \n", + "#Line value of sending end voltage is\n", + "Vsl = 1.73*abs(Vs)/1000 #kV\n", + "print \"Line value of sending end voltage =\",round(Vsl,2),\"kV.\"\n", + "print \" sending end current =\",round(abs(Is),2),\"A.\"\n", + " \n", + "#Phase angle between Vs and Is is\n", + "angle = abs(cm.phase(Vs)) + abs(cm.phase(Is))\n", + "pf = m.cos(angle) #(lag)\n", + "\n", + "#Input power\n", + "pin = 1.73*abs(Vsl)*abs(Is)*pf/1e+3 #MW\n", + "\n", + "#Efficiency\n", + "eff = 20.0/pin*100\n", + "print \"Efficiency = \",round(eff,2),\"%.\" \n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.26 , PAGE NO :- 1635" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Line value of sending-end voltage 174.83 kV.\n", + "power factor = 0.75\n" + ] + } + ], + "source": [ + "'''A 3-phase transmission line,100 km long has following constants:\n", + "resistance per km per phase = 0.28 ohm ; inductive reactance per km per phase = 0.63 ohm .\n", + "Capacitive susceptance per km per phase = 4 * 10e-6 siemens.\n", + "If the load at the receiving end is 75 MVA at 0.8 p.f. lagging with 132 kV between lines calculate sending-end voltage,\n", + "current and p.f. Use nominal-pi-method.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#For 100 km length line\n", + "#Resistance/phase\n", + "R = 0.28*100 #ohm\n", + "#Inductive Reactance/phase\n", + "Xl = 0.63*100 #ohm\n", + "#Capacitive Susceptance/phase\n", + "Y = 4.0e-6*100 #S\n", + "#Capacitive Susceptance at each end\n", + "Y = 1j*Y/2 #S\n", + "#Receiving end voltage Vr is\n", + "Vr = 132e+3/1.732 #V\n", + "#Receiving end current Ir is\n", + "Ir = 75.0e+6/(1.732*132e+3*0.8) #A\n", + "theta = m.acos(0.8)\n", + "Irl = cm.rect(Ir,-theta) #A\n", + "#Current through capacitance is\n", + "Ic = Vr*Y #A\n", + "#Now\n", + "Il = Ic + Irl #A\n", + "\n", + "#Drop per conductor is\n", + "Zl = R +1j*Xl #ohm\n", + "drop = Il*Zl #V\n", + "\n", + "#sending end voltage\n", + "Vs = Vr + drop\n", + "#Line value of sending-end voltage\n", + "Vsl = abs(Vs)*1.732/1000 #kV\n", + "print \"Line value of sending-end voltage\",round(Vsl,2),\"kV.\"\n", + "#\n", + "Ic2 = Vs*Y #A\n", + "Is = Ic2 + Il\n", + "\n", + "#Angle between VS and IS\n", + "angle = abs(cm.phase(Vs)) + abs(cm.phase(Is)) \n", + "pf = m.cos(angle)\n", + "#cos41.4 = 0.75 \n", + "print \"power factor = \",round(pf,2) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.27 , PAGE NO :- 1637" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Regulation = 15.18 %\n", + "Transmission efficiency = 95.02 %.\n" + ] + } + ], + "source": [ + "'''A 100-km long, three-phase, 50-Hz transmission line has resistance/phase/km = 0.1 ohm ; reactance/phase/km = 0.5 ohm ; \n", + "susceptance/phase/km = 10 * 10−6 siemens.If the line supplies a load of 20 MW at 0.9 p.f. lagging at 66 kV at the receiving end,\n", + "calculate by nominal ‘p’ method, the regulation and efficiency of the line.Neglect leakage.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "#For a 100 km line\n", + "#resistance/phase\n", + "R = 0.1 * 100 #ohm\n", + "#inductive reactance/phase\n", + "Xl = 0.5 * 100 #ohm\n", + "#Capacitive susceptance/phase\n", + "Yc = 10.0 * 1.0e-6 * 100 #siemens\n", + "#Susceptance at each end\n", + "Yc = 1j*Yc/2 #siemens\n", + "#Voltage at receiving end is\n", + "Vr = 66.0e+3/1.732 #V\n", + "Ir = 20.0e+6/(1.732*66e+3*0.9) #A\n", + "theta = m.acos(0.9)\n", + "Irl = cm.rect(Ir,-theta) #A\n", + "Ic1 = Vr*Yc #A\n", + "Il = Irl + Ic1 #A\n", + "\n", + "#drop/conductor\n", + "Zl = R + 1j*Xl #ohm\n", + "drop = Il*Zl #V\n", + "#Sending end voltage is\n", + "Vs = Vr + drop #V\n", + "#Line value of sending end voltage\n", + "Vsl = abs(Vs)*1.732/1000 #kV\n", + "Ic2 = Vs*Yc #A\n", + "#Sending end current is\n", + "Is = Ic2 + Il #A \n", + "\n", + "#Phase angle between Vs and Is is\n", + "angle = abs(cm.phase(Vs)) + abs(cm.phase(Is))\n", + "pf = m.cos(angle) #(lag)\n", + "\n", + "\n", + "#(i) Regulation is\n", + "reg = (abs(Vsl) - 66.0)/66.0 * 100 \n", + "print \"Regulation = \",round(reg,2),\"%\"\n", + "#(ii)Efficiency\n", + "#Input power is\n", + "pin = 1.732*Vsl*abs(Is)*pf*1000.0/1.0e+6 #MW\n", + "\n", + "eff = 20.0/pin*100 #%\n", + "\n", + "print \"Transmission efficiency = \",round(eff,2),\"%.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.28 , PAGE NO :- 1638" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Line value of sending end voltage = 122.24 kV.\n", + "Sending end current = 195.65 A.\n", + "Transmission efficiency = 95.36 %.\n", + "Receiving end voltage = 63148.47 V.\n", + "Receiving end current = 19.0 A.\n" + ] + } + ], + "source": [ + "'''(a) A 50-Hz, 3-phase, 100-km long line delivers a load of 40 MVA at 110 kV and 0.7 p.f. lag. The line constants\n", + "(line to neutral) are :\n", + "resistance of 11 ohms, inductive reactance of 38 ohms and capacitive susceptance of 3 * 10−4 siemens. Find the sending-end\n", + "voltage, current,power factor and efficiency of power transmission.\n", + "(b) draw the vector diagram.\n", + "(c) If the sending-end voltage is held constant and load is removed, calculate the receiving-end voltage and current.'''\n", + "\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#resistance/phase\n", + "R = 11.0 #ohm\n", + "#inductive reactance/phase\n", + "Xl = 38.0 #ohm\n", + "#Capacitive susceptance/phase\n", + "Yc = 3.0e-4 #siemens\n", + "#Susceptance at each end\n", + "Yc = 1j*Yc/2 #siemens\n", + "#Voltage at receiving end is\n", + "Vr = 110.0e+3/1.732 #V\n", + "Ir = 40.0e+6/(1.732*110e+3) #A\n", + "theta = m.acos(0.7)\n", + "Irl = cm.rect(Ir,-theta) #A\n", + "Ic1 = Vr*Yc #A\n", + "Il = Irl + Ic1 #A\n", + "\n", + "#drop/conductor\n", + "Zl = R + 1j*Xl #ohm\n", + "drop = Il*Zl #V\n", + "#Sending end voltage is\n", + "Vs = Vr + drop #V\n", + "#Line value of sending end voltage\n", + "Vsl = abs(Vs)*1.732/1000 #kV\n", + "Ic2 = Vs*Yc #A\n", + "#Sending end current is\n", + "Is = Ic2 + Il #A \n", + "print \"Line value of sending end voltage = \",round(Vsl,2),\"kV.\"\n", + "print \"Sending end current = \",round(abs(Is),2),\"A.\"\n", + "#Phase angle between Vs and Is is\n", + "angle = abs(cm.phase(Vs)) + abs(cm.phase(Is))\n", + "pf = m.cos(angle) #(lag)\n", + "\n", + "#Efficiency\n", + "#Input power is\n", + "pin = 1.732*Vsl*abs(Is)*pf*1000.0/1.0e+6 #MW\n", + "\n", + "eff = (40.0*0.7)/pin*100 #%\n", + "\n", + "print \"Transmission efficiency = \",round(eff,2),\"%.\"\n", + "\n", + "\n", + "#(c)Under no-load condition, current in the conductor is Ic1\n", + "#Drop/phase =\n", + "drop = Ic1*Zl #V\n", + "#Sending end voltage is\n", + "Vs = Vr + drop #V\n", + "Ic2 = Vs*Yc #A\n", + "Is = Ic1 + Ic2 #A\n", + "print \"Receiving end voltage = \",round(abs(Vs),2),\"V.\"\n", + "print \"Receiving end current = \",round(abs(Is),2),\"A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.29 , PAGE NO :- 1640" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sending end voltage is = 59558.07 V.\n", + "Sending end current is = 282.23 A.\n", + "Sending end power is = 48.99 MW.\n", + "Transmission efficiency = 81.65 %\n" + ] + } + ], + "source": [ + "'''Find the following for a single-circuit transmission line delivering a load of 50 MVA at 110 kV and p.f. 0.8 lagging :\n", + "(i) sending-end voltage, (ii) sending-end current, (iii) sending-end power, (iv) efficiency of\n", + "transmission. (Given A = D = 0.98 ∠3º , B = 110 ∠75º ohm, C = 0.0005 ∠80º ohm).'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#Receiving end voltage Vr is\n", + "Vr = 110.0/1.732 #kV\n", + "Ir = 50.0e+6/(1.732*110e+3) #A\n", + "theta = m.acos(0.8)\n", + "Irl = cm.rect(Ir,theta) #A\n", + "\n", + "#Now,\n", + "A = D = cm.rect(0.98,3*3.14/180)\n", + "B = cm.rect(110.0,75*3.14/180)\n", + "C = cm.rect(0.0005,80*3.14/180)\n", + "\n", + "#(i)Sending end voltage is\n", + "Vs = A*Vr*1000 + B*Irl #V\n", + "print \"Sending end voltage is = \",round(abs(Vs),2),\"V.\"\n", + "#(ii)Sending end current is\n", + "Is = C*Vr*1000 + D*Irl #A\n", + "print \"Sending end current is = \",round(abs(Is),2),\"A.\"\n", + "#Angle between Vs and Is is\n", + "angle = cm.phase(Is) - cm.phase(Vs)\n", + "pf = m.cos(angle)\n", + "\n", + "#(iii)Sending end power is\n", + "s_pwr = 3*abs(Vs)*abs(Is)*pf/1.0e+6 #MW\n", + "print \"Sending end power is = \",round(s_pwr,2),\"MW.\"\n", + "#Receiving end power is\n", + "r_pwr = 50.0*0.8 #MW\n", + "#(iv)Transmission efficiency\n", + "eff = r_pwr/s_pwr*100 #%\n", + "print \"Transmission efficiency = \",round(eff,2),\"%\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.30 , PAGE NO :- 1640" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "A = (0.9325+0.016875j)\n", + "B = (22.5+90j)\n", + "C = (-1.265625e-05+0.001449375j)\n", + "D = (0.9325+0.016875j)\n", + "Voltage regulation = 34.77 %.\n" + ] + } + ], + "source": [ + "'''A 150 km, 3-φ, 110-V, 50-Hz transmission line transmits a load of 40,000 kW at 0.8 p.f. lag at receiving end.\n", + "resistance/km/phase = 0.15 ohm, reactance/km/phase = 0.6 ohm ; susceptance/km/phase = 10e−5 S\n", + "(a) determine the A, B, C and D constants of the line . (b) find regulation of the line.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#For a 150km length line\n", + "R = 0.15*150.0 #ohm\n", + "X = 0.6*150.0 #ohm\n", + "Y = 1j*1.0e-5*150.0 #S\n", + "Z = R + 1j*X #ohm\n", + "\n", + "#(a)\n", + "A = D = 1 + Y*Z/2\n", + "B = Z\n", + "C = Y*(1 + Y*Z/4)\n", + "print \"A = \" ,A\n", + "print \"B = \" ,B\n", + "print \"C = \" ,C\n", + "print \"D = \" ,D\n", + "#(b)\n", + "Vr = 110/1.732*1000 #V\n", + "Ir = 40.0e+6/(1.732*110*0.8*1000)#A\n", + "theta = m.acos(0.8)\n", + "Irl = cm.rect(Ir,-theta) #A\n", + "#Sending end voltage is\n", + "Vs = A*Vr + B*Irl #V\n", + "\n", + "#Now, Vs = A*Vro => Vro = Vs/A\n", + "Vro = Vs/A #V\n", + "\n", + "#Voltage regulation\n", + "reg = (abs(Vro) - abs(Vr))/abs(Vr)*100\n", + "print \"Voltage regulation = \",round(reg,2),\"%.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.31 , PAGE NO :- 1641" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Regulation = 29.97 %\n", + "Charging current Ic = (-7.1+127.64j) A.\n" + ] + } + ], + "source": [ + "'''A 132-kV, 50-Hz, 3-phase transmission line delivers a load of 50 MW at 0.8 p.f. lagging at receiving-end.\n", + "The generalised constants of the transmission line are A = D = 0.95 ∠1.4º ; B = 96 ∠ 7.8º ; C = 0.0015 ∠90º\n", + "Find the regulation of the line and the charging current. Use nominal T-method.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#Given\n", + "A = D = cm.rect(0.95,1.4*3.14/180)\n", + "B = cm.rect(96.0,78*3.14/180)\n", + "C = cm.rect(0.0015,90*3.14/180)\n", + "\n", + "#Receiving end voltage\n", + "Ir = 50e+6/(1.732*132e+3*0.8) #A\n", + "theta = m.acos(0.8)\n", + "Irl = cm.rect(Ir,-theta) #A\n", + "Vr = 132e+3/1.732 #V\n", + "#Sending end voltage\n", + "Vs = A*Vr + B*Irl #V\n", + "#Sending end current\n", + "Is = C*Vr + D*Irl #A\n", + "Vro = abs(Vs)/abs(A)\n", + "\n", + "#% Regulation\n", + "reg = (abs(Vro) - abs(Vr))/abs(Vr)*100 #%\n", + "\n", + "print \"Regulation = \",round(reg,2),\"%\"\n", + "#Charging current\n", + "Ic = Is - Irl #A\n", + "print \"Charging current Ic = \",complex(round(Ic.real,2),round(Ic.imag,2)),\"A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 41.32 , PAGE NO :- 1641" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "A = A1*A2 + B1*C2\n", + "C = A2*C1 + C2*D1\n", + "B = A1*B2 + B1*D2\n", + "D = B2*C1 + D1*D2\n" + ] + } + ], + "source": [ + "'''A 3-phase transmission line consists of two lines 1 and 2 connected in series,line 1 being at the sending end and\n", + "2 at the receiving end. The respective auxiliary constants of the two lines are :\n", + "A1, B1, C1, D1 and A2, B2, C2, D2. Find the A, B, C, D constants of the whole line which is equivalent to two\n", + "series-connected lines.'''\n", + "\n", + "from sympy import Symbol\n", + "A1 = Symbol('A1')\n", + "B1 = Symbol('B1')\n", + "C1 = Symbol('C1')\n", + "D1 = Symbol('D1')\n", + "\n", + "A2 = Symbol('A2')\n", + "B2 = Symbol('B2')\n", + "C2 = Symbol('C2')\n", + "D2 = Symbol('D2')\n", + "\n", + "Vr = Symbol('Vr')\n", + "Ir = Symbol('Ir')\n", + "\n", + "#--------For A &C---------------#\n", + "Ir = 0\n", + "Vr = 1\n", + "#For line no. 2\n", + "V = A2*Vr + B2*Ir\n", + "I = C2*Vr + D2*Ir \n", + "\n", + "#For line no. 1\n", + "Vs = A1*V + B1*I\n", + "Is = C1*V + D1*I\n", + "\n", + "#For A\n", + "print \"A = \",Vs\n", + "print \"C = \",Is\n", + "\n", + "#--------For B & D---------------#\n", + "Ir = 1\n", + "Vr = 0\n", + "#For line no. 2\n", + "V = A2*Vr + B2*Ir\n", + "I = C2*Vr + D2*Ir \n", + "\n", + "#For line no. 1\n", + "Vs = A1*V + B1*I\n", + "Is = C1*V + D1*I\n", + "\n", + "#For A\n", + "print \"B = \",Vs\n", + "print \"D = \",Is\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.33 , PAGE NO :- 1644" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Critical voltage = 136.01 kV.\n" + ] + } + ], + "source": [ + "'''Find the disruptive critical voltage for a transmission line having :\n", + "conductor spacing = 1 m ; conductor (stranded) radius = 1 cm\n", + "barometric pressure = 76 cm of Hg ; temperature = 40ºC\n", + "Air break-down potential gradient (at 76 cm of Hg and at 25ºC) = 21.1 kV (r.m.s.)/cm.'''\n", + "\n", + "import math as m\n", + "\n", + "#Given\n", + "g0 = 21.1 #kV/cm (air breakdown potential gradient)\n", + "m0 = 0.85 #(assumed)\n", + "d = 3.92*76/(273 + 40)\n", + "r = 1.0 #cm\n", + "D = 100.0 #cm\n", + "\n", + "#Vc = 2.3*m0*g0*d*r*log(D/r)\n", + "Vc = 2.3*m0*g0*d*r*m.log10(D/r) #kV\n", + "#Line voltage\n", + "Vc = 1.732*Vc\n", + "print \"Critical voltage = \",round(Vc,2),\"kV.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.34 , PAGE NO :- 1644" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Critical voltage = 152.4 kV.\n", + "visual corona voltage = 157.67 kV.\n" + ] + } + ], + "source": [ + "'''Find the disruptive critical and visual corona voltage of a grid-line operating at 132 kV.\n", + "conductor dia = 1.9 cm ; conductor spacing = 3.81 m\n", + "temperature = 44ºC ; barometric pressure = 73.7 cm\n", + "conductor surface factor : fine weather = 0.8 ; rough weather = 0.66.'''\n", + "\n", + "\n", + "import math as m\n", + "\n", + "#Given\n", + "\n", + "m0 = 0.8 #\n", + "d = 3.92*73.7/(273 + 44)\n", + "r = 1.9 #cm\n", + "D = 381.0 #cm\n", + "\n", + "#Vc = 2.3*m0*g0*d*r*log(D/r)\n", + "Vc = 48.8*m0*d*r/2*m.log10(2*D/r) #kV\n", + "#Line voltage\n", + "Vc = 1.732*Vc\n", + "print \"Critical voltage = \",round(Vc,2),\"kV.\"\n", + "\n", + "#(b)\n", + "#Vv = 2.3*g0*mv*d*r*(1 + 0.3/root(d*r))*log10(D/r)\n", + "mv = 0.66\n", + "Vv = 48.8*mv*d*r*(1 + 0.3/m.sqrt(d*r))*m.log10(D/r)\n", + "print \"visual corona voltage = \",round(Vv,2),\"kV.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 41.35 , PAGE NO :- 1644" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Critical disruptive voltage = 53.34 kV/km.\n", + "Corona loss = 121.49 kW.\n" + ] + } + ], + "source": [ + "'''A certain 3-phase equilateral transmission line has a total corona loss of 53 kW at 106 kV and a loss of 98 kW at 110.9 kV.\n", + "What is the disruptive critical voltage between lines? What is the corona loss at 113 kV?'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#total corona loss P o< (V- Vc)^2\n", + "# P1/P2 = (V1 - Vc)^2/(V2 - Vc)^2\n", + "\n", + "V1 = 106/1.732 #kV\n", + "V2 = 110.9/1.732 #kV\n", + "#Let Vc be distruptive critical voltage\n", + "Vc = Symbol('Vc')\n", + "#ratio P1/P2 =\n", + "P1_P2a = 53.0/98.0\n", + "#Ratio (V1 - Vc)^2/(V2 - Vc)^2\n", + "P1_P2b = (V1 - Vc)**2/(V2 - Vc)**2\n", + "#Equating the ratios\n", + "eq = Eq(P1_P2a,P1_P2b)\n", + "Vc = solve(eq)\n", + "Vc1 = Vc[0] #kV/km\n", + "\n", + "#Now, W/98 = (Vb - Vc)^2/(V2 - Vc)^2\n", + "W = 98*(113/1.732 - Vc1)**2/(V2 - Vc1)**2 #kW\n", + "print \"Critical disruptive voltage = \",round(Vc1,2),\"kV/km.\"\n", + "print \"Corona loss = \",round(W,2),\"kW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.36 , PAGE NO :- 1645" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "corona power loss per km = 1.76 kW/km/phase.\n" + ] + } + ], + "source": [ + "'''A 3-phase, 50-Hz, 220-kV transmission line consists of conductors of 1.2 cm radius spaced 2 metres at the corners of an\n", + "equilateral triangle. Calculate the corona power loss per km of the line at a temperature of 20ºC and barometric pressure of \n", + "72.2 cm.Take the surface factors of the conductor as 0.96.'''\n", + "\n", + "import math as m\n", + "\n", + "#As we know P = 241*(f+25)/d*root(r/D)*(V-Vc)^2\n", + "#Here,\n", + "d = 3.92*(72.2)/(273 + 20)\n", + "#Given\n", + "m0 = 0.96 # (surface factors) \n", + "D = 200.0 #cm (distance btwn condr.)\n", + "r = 1.2 #cm (radius of condr.)\n", + "#Critical Voltage\n", + "Vc = 48.8*m0*d*r*m.log10(D/r) #kV/phase\n", + "V = 220.0/1.732 #kV/phase\n", + "P = 241*(50+25)/d*m.sqrt(r/D)*(V-Vc)**2*1.0e-5 #kW/km/phase\n", + "#Total loss for 3-phase\n", + "loss = 3*P #kW/km/phase\n", + "print \"corona power loss per km = \",round(loss,2),\"kW/km/phase.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.37 , PAGE NO :- 1648" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sheath diameter = 8.29 cm.\n" + ] + } + ], + "source": [ + "'''A single-core lead-covered cable is to be designed for 66-kV to earth. Its conductor radius is 1.0 cm and its three insulating\n", + "materials A, B, C have permittivities of 5.4 and 3 respectively with corresponding maximum safe working stress of 38 kV per cm\n", + "(r.m.s. value), 26-kV per cm and 20-kV per cm respectively. Find the minimum diameter of the lead sheath.'''\n", + "\n", + "import math as m\n", + "from sympy import solve,Symbol,Eq\n", + "\n", + "#Given\n", + "gA = 38.0 #kV/cm (working stress on A)\n", + "gB = 26.0 #kV/cm (working stress on B)\n", + "gC = 20.0 #kV/cm (working stress on C)\n", + "ea = 5.0 # (rel. permittivity of A)\n", + "eb = 4.0 # (rel. permittivity of B)\n", + "ec = 3.0 # (rel. permittivity of C)\n", + "ra = 1.0 #cm (radius A)\n", + "#Working stress O< 1/(rel. permittivty)*(condr. radius)\n", + "#gA/gB = rb*eb/ra*ea\n", + "#Radius of B is\n", + "rb = (gA/gB)*(ra*ea/eb) #cm \n", + "#gA/gC = rc*ec/ra*ea\n", + "#Radius of C is\n", + "rc = (gA/gC)*(ra*ea/ec) #cm\n", + "\n", + "#Now , V = g*r*2.3*log10(r1/r)\n", + "\n", + "V1 = gA*ra*2.3*m.log10(rb/ra) #kV\n", + "V2 = gB*rb*2.3*m.log10(rc/rb) #kV\n", + "V = 66.0 #kV\n", + "V3 = V - V1 - V2 #V\n", + "\n", + "#Let the radius of sheath be rs\n", + "#V3 = gC*rc*2.3*m.log10(rs/rc) #kV . Therefore, rs is\n", + "\n", + "rs = rc * 10**(V3/(gC*rc*2.3)) #cm\n", + "print \"Sheath diameter = \",round(2*rs,2),\"cm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.38 , PAGE NO :- 1649" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Charging current = 4.31 A.\n" + ] + } + ], + "source": [ + "'''The capacitances per kilometer of a 3-phase cable are 0.63 μF between the three cores bunched and the sheath and 0.37 μF\n", + "between one core and the other two connected to sheath. Calculate the charging current taken by eight kilometres of this cable\n", + "when connected to a 3-phase, 50-Hz, 6,600-V supply.'''\n", + "\n", + "#According to question 0.63 = 3*Cs\n", + "Cs = 0.63/3 #uF/km\n", + "#Also 0.37 = 2*C1 + Cs\n", + "C1 = (0.37 - Cs)/2 #uF/km\n", + "#For 8 km\n", + "Cs = Cs*8 #uF\n", + "C1 = C1*8 #uF\n", + "\n", + "Cn = Cs + 3*C1 #uF\n", + "Vp = 6600.0/1.732 #V\n", + "w = 2*3.14*50.0 #rad/s\n", + "#Charging current is\n", + "Ic = Vp*(w*Cn*1e-6) #A\n", + "print \"Charging current = \",round(Ic,2),\"A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.39 , PAGE NO :- 1649" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Charging for 15 km = 48.0 A.\n" + ] + } + ], + "source": [ + "'''A 3-core, 3-phase belted cable tested for capacitance between a pair of cores on single phase with the third core earthed,\n", + "gave a capacitance of 0.4 mF per km. Calculate the charging current for 1.5 km length of this cable when connected to 22 kV, \n", + "3-phase,50-Hz supply.'''\n", + "\n", + "\n", + "Cl = 0.4 #uF (Capacitance)\n", + "Vl = 22000.0 #V (line voltage)\n", + "w = 2*3.14*50 #rad/s\n", + "#Charging current\n", + "Ic = (2.0/1.732)*Vl*Cl*w*1.0e-6 #A/km\n", + "#Charging current for 15 km\n", + "Ic = 15*Ic #A\n", + "print \"Charging for 15 km = \",round(Ic),\"A.\"\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.40 , PAGE NO :- 1649" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Capacitance (i) = 0.33 uF.\n", + "Capacitance (ii) = 0.13 uF.\n", + "capacitance between 2 shorted conductors and the other = 0.49 uF.\n" + ] + } + ], + "source": [ + "'''A 3-core, 3-phase metal-sheathed cable has (i) capacitance of 1 μF between shorted conductors and sheath and (ii) capacitance\n", + "between two conductors shorted with the sheath and the third conductor 0.6 μF. Find the capacitance\n", + "(a) between any two conductors (b) between any two shorted conductors and the third conductor.'''\n", + "\n", + "#(a)\n", + "#(i)As we know 3*Cs = 1.0\n", + "Cs = 1.0/3 #uF\n", + "#(ii) 2*C1 + Cs = 0.6 #uF\n", + "C1 = (0.6 - Cs)/2 #uF\n", + "print \"Capacitance (i) = \",round(Cs,2),\"uF.\"\n", + "print \"Capacitance (ii) = \",round(C1,2),\"uF.\"\n", + "#(b)\n", + "#capacitance between 2 shorted conductors and the other is given by\n", + "Cn = 2*C1 + (2.0/3)*Cs #uF\n", + "print \"capacitance between 2 shorted conductors and the other = \",round(Cn,2),\"uF.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.41 , PAGE NO :- 1650" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage drop from A to B = (7.47+2.78j) V.\n" + ] + } + ], + "source": [ + "'''A 2-wire a.c. feeder 1 km long supplies a load of 100 A at 0.8 p.f. lag 200 volts\n", + "at its far end and a load of 60 A at 0.9 p.f. lag at its mid-point. The resistance and reactance per km\n", + "(lead and return) are 0.06 ohm and 0.08 ohm respectively. Calculate the voltage drop along the\n", + "distributor from sending end to mid-point and from mid-point to far end.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#Voltage at C\n", + "Vc = 200.0 #V\n", + "theta = m.acos(0.8)\n", + "Ic = 100.0 #A\n", + "Icl = cm.rect(Ic,-theta) #A\n", + "#Loop impedance of feeder BC is\n", + "Z = (0.06 + 1j*0.08)/2 #ohm\n", + "#Voltage drop in BC \n", + "drop = Icl*Z #V\n", + "#Voltage at B is\n", + "Vb = Vc + drop #V\n", + "#Current at B is\n", + "Ib = 60.0 #A\n", + "theta = m.acos(0.9)\n", + "Ibl = cm.rect(Ib,-theta) #A\n", + "#Current in feeder AB is\n", + "Iab = Ibl + Icl #A\n", + "#Drop in AB is\n", + "dropab = Iab*Z #V\n", + "print \"Voltage drop from A to B = \",complex(round(dropab.real,2),round(dropab.imag,2)),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.42 , PAGE NO :- 1651" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "drop = 5.0 V.\n" + ] + } + ], + "source": [ + "'''A single-phase a.c. distributor 500 m long has a total impedance of (0.02 + j 0.04) ohm and is fed from one end at\n", + "250V. It is loaded as under :\n", + "(i) 50 A at unity power factor 200 m from feeding point.\n", + "(ii) 100 A at 0.8 p.f. lagging 300 m from feeding point.\n", + "(iii) 50 A at 0.6 p.f. lagging at the far end.\n", + "Calculate the total voltage drop and voltage at the far end.'''\n", + "\n", + "#Using 3rd method\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#The center of gravity(C.G) of load is at the following distance from feeding end\n", + "\n", + "cg = (50.0*200 + 100.0*300 + 50.0*500)/(50 + 100 + 50) #m\n", + "\n", + "#Value of resistance upto CG\n", + "R = cg*0.02/500 #ohm\n", + "#Value of reactance upto CG\n", + "X = cg*0.04/500 #ohm\n", + "#Average pf\n", + "pf = (50*1 + 100.0*0.8 + 50.0*0.6)/200\n", + "cosQ = pf\n", + "sinQ = m.sqrt(1 - pf*pf)\n", + "#Drop is\n", + "Itot = 50.0 + 100.0 + 50.0 #A\n", + "drop = 200.0*(R*cosQ + X*sinQ) #V\n", + "print \"drop = \",round(drop),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.43 , PAGE NO :- 1652" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Supply voltage = 345.0 V.\n", + "Supply Voltage lead B by = 4.59 degrees.\n" + ] + } + ], + "source": [ + "'''A single-phase distributor, one km long has resistance and reactance per conductor of 0.2 ohm and 0.3 ohm respectively. At the\n", + "far end, the voltage VB = 240 V and the current is 100 A at a power factor of 0.8 lag. At the mid-point A of the distributor \n", + "current of 100 A is tapped at a power factor of 0.6 lag with reference to the voltage VA at the mid-point. Calculate the supply\n", + "voltage VS for the distributor and the phase angle between VS and VB.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#Given\n", + "Vb = 240.0 #V (Voltage at B)\n", + "Ib = 100.0 #A (current)\n", + "theta = m.acos(0.8)\n", + "Ibl = cm.rect(Ib,-theta) #A\n", + "X = 0.2 + 1j*0.3 #ohm\n", + "#Drop over AB\n", + "dropab = Ibl*(X) #V\n", + "\n", + "#Voltage at A\n", + "Va = Vb + dropab #V\n", + "\n", + "#Phase angle between A and B\n", + "ang = cm.phase(Va)\n", + "theta2 = m.acos(0.6)\n", + "theta2 = theta2 - ang\n", + "Ia = 100.0 #A\n", + "Ial = cm.rect(Ia,-theta2) #A\n", + "\n", + "#Total I\n", + "I = Ial + Ibl #A\n", + "#Drop in section\n", + "dropsa = I*X #V\n", + "\n", + "#Voltage at S\n", + "Vs = Va + dropsa #V\n", + "print \"Supply voltage = \",round(abs(Vs)),\"V.\"\n", + "print \"Supply Voltage lead B by = \",round(cm.phase(Vs)*180/3.14,2),\"degrees.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.44 , PAGE NO :- 1653" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ia = (25-24j) A.\n" + ] + } + ], + "source": [ + "'''A 1-phase ring distributor ABC is fed at A. The loads at B and C are 20 A at 0.8 p.f. lagging and 15 A at 0.6 p.f.\n", + "lagging respectively, both expressed with reference to voltage at A. The total impedances of the sections AB, BC and\n", + "CA are (1 + j1), (1 + j2) and (1 + j3) ohm respectively. Find the total current fed at A and the current in each section.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "\n", + "#Current in AB is\n", + "theta = m.acos(0.8) \n", + "Iab = cm.rect(20,-theta)\n", + "\n", + "#Current in AC is\n", + "theta = m.acos(0.6) \n", + "Iac = cm.rect(15,-theta)\n", + "\n", + "#Impedances of dif. section\n", + "Zab = 1 + 1j #ohm\n", + "Zbc = 1 + 1j*2 #ohm\n", + "Zca = 1 + 1j*3 #ohm\n", + "\n", + "#Drop over AB is\n", + "dropab = Iab*Zab #V\n", + "\n", + "#Drop over AC is\n", + "dropac = Iac*Zca #V\n", + "\n", + "#Potential diff. B and C is\n", + "pd_bc = dropac - dropab #V\n", + "\n", + "#Equivalent Thevenin's thm impedance across bc\n", + "Ztot = Zab + Zca + Zbc #ohm\n", + "\n", + "#Current in BC\n", + "Ibc = pd_bc/Ztot #A\n", + "\n", + "#Total current in AB is\n", + "Iab2 = Iab + Ibc #A\n", + "\n", + "#Total current in BC is\n", + "Ibc2 = Iac - Ibc #A\n", + "\n", + "#Total current fed at point A\n", + "Ia = Iab2 + Ibc2 #A\n", + "\n", + "print \"Ia = \",Ia,\"A.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.45 , PAGE NO :- 1654" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "I1 = (19.5-16.5j) A.\n", + "I2 = (14.5-19.5j) A.\n", + "I3 = (3.5-4.5j) A.\n", + "Vb = (347.5-22.5j) V.\n", + "Vc = (327-24j) V.\n" + ] + } + ], + "source": [ + "'''A 2-wire ring distributor ABC is supplied at A at 400 V. Point loads of 20 A at a p.f. of 0.8 lagging and 30 A at a p.f. 0.6\n", + "lagging are tapped off at B and C respectively. Both the power factors refer to the voltage at A. The respective go-and-return \n", + "impedances of sections AB,BC and CA are (1 + j2) ohm, (2 + j3) ohm and (1 + j3) ohm. Calculate the current flowing through each\n", + "section and the potentials at B and C. Use Superposition theorem.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "\n", + "#Current in AB is\n", + "theta = m.acos(0.8) \n", + "Iab = cm.rect(20,-theta)\n", + "\n", + "#Current in AC is\n", + "theta = m.acos(0.6) \n", + "Iac = cm.rect(30,-theta)\n", + "\n", + "#Impedances of dif. section\n", + "Zab = 1 + 1j*2 #ohm\n", + "Zbc = 2 + 1j*3 #ohm\n", + "Zca = 1 + 1j*3 #ohm\n", + "\n", + "#Let the currents in AB and AC is Ia1 and Ia2\n", + "Ia1 = Iab*(Zbc + Zca)/(Zbc + Zca + Zab) #A\n", + "\n", + "\n", + "Ia2 = Iab - Ia1 #A\n", + "\n", + "#Let the currents in AB and AC is Ia11 and Ia22\n", + "Ia11 = Iac*(Zca)/(Zbc + Zca + Zab) #A\n", + "Ia22 = Iac - Ia11 #A\n", + "\n", + "#As per superposition thm,\n", + "I1 = Ia1 + Ia11 #A\n", + "I2 = Ia2 + Ia22 #A\n", + "I3 = Ia11 - Ia2 #A\n", + "\n", + "#Potential Of B is\n", + "Vb = 400.0 - I1*Zab #V\n", + "#Potential of C is \n", + "Vc = 400.0 - I2*Zca #V\n", + "\n", + "print \"I1 = \",I1,\"A.\"\n", + "print \"I2 = \",I2,\"A.\"\n", + "print \"I3 = \",I3,\"A.\"\n", + "print \"Vb = \",Vb,\"V.\"\n", + "print \"Vc = \",Vc,\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.46 , PAGE NO :- 1655" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Iab = (139.76-42.81j) A\n", + "Ibc = (99.76-12.81j) A\n", + "Icd = (-20.24-12.81j) A\n", + "Ida = (-80.86+22.2j) A\n" + ] + } + ], + "source": [ + "'''A 3-phase ring main ABCD, fed from end A, supplies balanced loads of 50 A at 0.8 p.f. lagging at B, 120 A at u.p.f. at C and\n", + "70 A at 0.866 p.f. lagging at D, the load currents being referred to the voltage at point A.The impedance per phase of the various\n", + "line sections are :\n", + "section AB = (1 + j0.6)ohm ; section BC = (1.2 + j0.9) ohm\n", + "section CD = (0.8 + j0.5)ohm ; section DA = (3 + j2) ohm\n", + "Determine the currents in the various sections.'''\n", + "\n", + "from sympy import Symbol\n", + "import math as m\n", + "import cmath as cm\n", + "import numpy as np\n", + "\n", + "#Let the current in section AB = (x + jy)A\n", + "x = Symbol('x')\n", + "y = Symbol('y')\n", + "Iab = x + 1j*y #A\n", + "#Current in BC\n", + "theta = m.acos(0.8)\n", + "Icl = cm.rect(50.0,-theta) #A\n", + "Ibc = Iab - Icl #A\n", + "#Current in CD\n", + "Icd = Ibc - 120 #A\n", + "#Current in DA\n", + "theta = m.acos(0.866)\n", + "Idl = cm.rect(70.0,-theta) #A\n", + "Ida = Icd - Idl #A\n", + "#Applying kirchoff's law\n", + "V = (1 + 1j*0.6)*Iab + (1.2 + 1j*0.9)*Ibc + (0.8 + 1j*0.5)*Icd + (3 + 1j*2)*Ida #V\n", + "#Equating V to 0 we get following two equations\n", + "# 6*x - 4*y + 1009.8 = 0 - 1 \n", + "# 4*x + 6*y - 302.2 = 0 - 2\n", + "\n", + "\n", + "a = np.array([[6,-4], [4,6]])\n", + "b = np.array([1009.8,302.2])\n", + "vec = np.linalg.solve(a, b)\n", + "x = vec[0]\n", + "y = vec[1]\n", + "\n", + "\n", + "Iab = x + 1j*y #A\n", + "#Current in BC\n", + "Ibc = Iab - Icl #A\n", + "#Current in CD\n", + "Icd = Ibc - 120 #A\n", + "#Current in DA\n", + "Ida = Icd - Idl #A\n", + "\n", + "print \"Iab = \",complex(round(Iab.real,2),round(Iab.imag,2)),\"A\"\n", + "print \"Ibc = \",complex(round(Ibc.real,2),round(Ibc.imag,2)),\"A\"\n", + "print \"Icd = \",complex(round(Icd.real,2),round(Icd.imag,2)),\"A\"\n", + "print \"Ida = \",complex(round(Ida.real,2),round(Ida.imag,2)),\"A\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.47 , PAGE NO :- 1656" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power transmitted by 1st line = 5283.01 kW.\n", + "Power transmitted by 2nd line = 6716.99 kW.\n", + "Total power(check) = 12000.0 kW.\n" + ] + } + ], + "source": [ + "'''A total load of 12,000 kW at a power factor of 0.8 lagging is transmitted to a substation by two overhead\n", + "three-phase lines connected in parallel. One line has a conductor resistance of 2 ohm per conductor and reactance\n", + "(line to neutral) of 1.5 ohm, the corresponding values for the other line being 1.5 and 1.2 ohm respectively. Calculate\n", + "the power transmitted by each overhead line.'''\n", + "\n", + "import math as m\n", + "import cmath as cm\n", + "\n", + "#Let us assume a line voltage of 1000 kV for convinience.\n", + "Z1 = 2 + 1j*1.5 #ohm \n", + "Z2 = 1.5 + 1j*1.2 #ohm\n", + "#Total load current\n", + "Il = 12000/(1.732*1000*0.8) #A\n", + "theta = m.acos(0.8)\n", + "Il1 = cm.rect(Il,-theta) #A\n", + "\n", + "#Now\n", + "I1 = Il1*Z2/(Z1 + Z2) #A\n", + "\n", + "#Power transmitted by 1st line\n", + "P1 = 1.732*I1.real*1000 #kW\n", + "\n", + "#Now\n", + "I2 = Il1*Z1/(Z1 + Z2) #A\n", + "\n", + "#Power transmitted by 1st line\n", + "P2 = 1.732*I2.real*1000 #kW\n", + "\n", + "#Total power\n", + "power = P1 + P2 #kW\n", + "print \"Power transmitted by 1st line = \",round(P1,2),\"kW.\"\n", + "print \"Power transmitted by 2nd line = \",round(P2,2),\"kW.\"\n", + "print \"Total power(check) = \",round(power,2),\"kW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 41.48 , PAGE NO :- 1658" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "V1 = 7.54 kV\n", + "V2 = 8.29 kV\n", + "V3 = 9.87 kV\n", + "V4 = 12.45 kV\n", + "string efficiency = 76.55 %\n" + ] + } + ], + "source": [ + "'''For a string insulator with four discs, the capacitance of the disc is ten times the capacitance between the pin and earth.\n", + "Calculate the voltage across each disc when used on a 66-kV line. Also, calculate the string efficiency.'''\n", + "\n", + "import math as m\n", + "from sympy import Symbol,solve,Eq\n", + "#Let C be self capacitance and kC be capacitance b/w each link and earth,\n", + "#Given\n", + "k = 10.0\n", + "#Let voltage across 1st disc be\n", + "V1 = Symbol('V1')\n", + "V2 = (1+k)/k*V1 #V\n", + "V3 = (1 + 3/k + 1/k**2)*V1 #V\n", + "V4 = (1 + 6/k + 5/k**2 + 1/k**3)*V1 #V\n", + "#Voltage V is\n", + "Va = V1 + V2 + V3 + V4 #kV\n", + "Vb = 66/1.73 #kV\n", + "eq = Eq(Va,Vb)\n", + "V1 = solve(eq)\n", + "V1l = V1[0] #kV\n", + "V2 = (1+k)/k*V1l #V\n", + "V3 = (1 + 3/k + 1/k**2)*V1l #V\n", + "V4 = (1 + 6/k + 5/k**2 + 1/k**3)*V1l #V\n", + "print \"V1 = \",round(V1l,2),\"kV\"\n", + "print \"V2 = \",round(V2,2),\"kV\"\n", + "print \"V3 = \",round(V3,2),\"kV\"\n", + "print \"V4 = \",round(V4,2),\"kV\"\n", + "#string efficiency\n", + "eff = 66.0/(4*1.732*V4)*100 #%\n", + "print \"string efficiency = \",round(eff,2),\"%\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.49 , PAGE NO :- 1659" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "V1 = 5.51 kV\n", + "V2 = 6.12 kV\n", + "V3 = 7.42 kV\n", + "string efficiency = 85.63 %\n" + ] + } + ], + "source": [ + "'''Explain what is meant by string efficiency and how it can be improved. Each line of a 3-phase, 33-kV system is suspended by a\n", + "string of 3 identical insulator discs. The capacitance of each disc is 9 times the capacitance to ground. Find voltage distribution\n", + "across each insulator and the string efficiency. Suggest a method for improving the string efficiency.'''\n", + "\n", + "import math as m\n", + "from sympy import Symbol,solve,Eq\n", + "#Let C be self capacitance and kC be mutual capacitance b/w each\n", + "#Given\n", + "k = 9.0\n", + "#Let voltage across 1st disc be\n", + "V1 = Symbol('V1')\n", + "V2 = (1+k)/k*V1 #V\n", + "V3 = (1 + 3/k + 1/k**2)*V1 #V\n", + "\n", + "#Voltage V is\n", + "Va = V1 + V2 + V3 #kV\n", + "Vb = 33/1.732 #kV \n", + "eq = Eq(Va,Vb)\n", + "V1 = solve(eq)\n", + "V1l = V1[0] #kV\n", + "V2 = (1+k)/k*V1l #V\n", + "V3 = (1 + 3/k + 1/k**2)*V1l #V\n", + "\n", + "print \"V1 = \",round(V1l,2),\"kV\"\n", + "print \"V2 = \",round(V2,2),\"kV\"\n", + "print \"V3 = \",round(V3,2),\"kV\"\n", + "\n", + "#string efficiency\n", + "eff = 33.0/(3*1.732*V3)*100 #%\n", + "print \"string efficiency = \",round(eff,2),\"%\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.50 , PAGE NO :- 1660" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Bus-bar voltage of station A = 33.79 kV\n", + "phase angle = 1.75 degrees\n" + ] + } + ], + "source": [ + "'''The bus-bar voltages of two stations A and B are 33 kV and are in phase. If station A sends 8.5 MW power at u.p.f.\n", + "to station B through an interconnector having an impedance of (3 + j4) ohm , determine the bus-bar voltage of station A\n", + "and the phase angle shift between the busbar voltages.'''\n", + "\n", + "import cmath as cm\n", + "\n", + "#Voltage of station B is\n", + "Vb = 33000.0/1.732 #V/phase\n", + "\n", + "#Power transferred\n", + "pin = 8.5 #MW\n", + "\n", + "#Current in interconnector\n", + "I = pin*1e+6/(1.732*33000)\n", + "\n", + "#Voltage Va is\n", + "Va = Vb + I*(3+1j*4)\n", + "#Bus-bar voltage of station A is\n", + "Va1 = 1.732*abs(Va)/1000 #kV\n", + "\n", + "print \"Bus-bar voltage of station A = \",round(Va1,2),\"kV\"\n", + "print \"phase angle = \",round(cm.phase(Va)*180/3.14,2),\"degrees\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.51 , PAGE NO :- 1666" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Clearance between conductor and water at mid-way = 62.0 m.\n" + ] + } + ], + "source": [ + "'''A transmission line conductor at a river crossing is supported from two towers at heights of 70 m above water level.\n", + "The horizontal distance between towers is 300 m. If the tension in conductor is 1,500 kg, find the clearance at a point\n", + "midway between the towers. The size of conductor is 0.9 cm2. Density of conductor material is 8.9 g/cm3 and suspension\n", + "length of the string is 2 metres.'''\n", + "\n", + "#Given\n", + "l = 300.0/2 #m (distance of mid pt from one tower)\n", + "T = 1500.0 #kg-wt (tension)\n", + "\n", + "#density = mass/volume. Therefore Weight (W) = rho*l*A\n", + "W = (0.9e-4)*(8.9e+3) #kg-wt\n", + "\n", + "#Sag in the line\n", + "sag = (W*l**2)/(2*T) #m\n", + "\n", + "\n", + "#Clearance between conductor and water at mid-way\n", + "cler = 70.0 - sag - 2.0 #m\n", + "print \"Clearance between conductor and water at mid-way = \",round(cler),\"m.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.52 , PAGE NO :- 1666" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total weight per metre run of line = 2.46 kg-wt/m.\n" + ] + } + ], + "source": [ + "'''The effective diameter of a line is 1.96 cm and it weighs 90 kg per 100 metre length. What would be the additional loading due\n", + "to ice of radial thickness 1.25 cm and a horizontal wind pressure of 30 kg/m^2 of projected area? Also, find the total weight \n", + "per metre run of the line.Density of ice is 920 kg/m^3.'''\n", + "\n", + "import math as m\n", + "\n", + "#Given\n", + "W = 90.0/100 #kg/m (weight of condr)\n", + "#Weight due to ice is Wi = 3.14*rho*R*(D+R)\n", + "Wi = 3.14*920.0*0.0125*(0.0196 + 0.0125) #kg/m (Weight of ice)\n", + "#Weight due to wind is Ww = P*(D + 2*R)\n", + "Ww = 30.0*(0.0196 + 2*0.0125) #kg/m\n", + "\n", + "#Total weight is given by\n", + "\n", + "Wt = m.sqrt((W+Wi)**2 + Ww**2) #kg-wt/m\n", + "\n", + "print \"Total weight per metre run of line = \",round(Wt,2),\"kg-wt/m.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.53 , PAGE NO :- 1666" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "sag = 3.27 m.\n" + ] + } + ], + "source": [ + "'''A transmission line has a span of 150 metres between supports, the supports being at the same level. The conductor has a\n", + "cross-sectional area of 2 cm^2. The ultimate strength is 5,000 kg/cm^2. The specific gravity of the material is 8.9. If the wind\n", + "pressure is 1.5 kg/m length of the conductor, calculate the sag at the centre of the conductor if factor of safety is 5.'''\n", + "\n", + "\n", + "import math as m\n", + "\n", + "#Safety factor = Ultimate stress/Working stress\n", + "sf = 5.0 #Safety factor\n", + "wstress = 5000.0/sf #kg/cm^2\n", + "#Tension\n", + "A = 2.0 #cm^2 (cross-sectional area)\n", + "T = wstress*A #kg-wt\n", + "#Volume of 1m of conductor\n", + "V = A*100.0 #cm^3\n", + "#Wt of 1m of material Using density = mass/volume\n", + "W = 8.9*200.0/1000.0 #kg-wt\n", + "#W is 1.78 and not 1.98\n", + "\n", + "#Total weight per metre\n", + "Wt = m.sqrt(W**2 + 1.5**2)\n", + "\n", + "#Sag = W*l^2/2T\n", + "l = 150.0/2 #m (length from pole to centre)\n", + "sag = Wt*l**2/(2*T) #m\n", + "\n", + "\n", + "print \"sag = \",round(sag,2),\"m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.54 , PAGE NO :- 1667" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Verticle Sag = 5.38 m.\n" + ] + } + ], + "source": [ + "'''A transmission line has a span of 200 metres between level supports. The conductor has a cross-sectional area of 1.29 cm^2,\n", + "weighs 1,170 kg/km and has a breaking stress of 4,218 kg/cm2. Calculate the sag for a factor of safety of 5 allowing a wind pressure\n", + "of 122 kg per m^2 of projected area. What is the vertical sag?'''\n", + "\n", + "import math as m\n", + "\n", + "#Safety factor = ultimate stress/working stress \n", + "wstress = 4218.0/5 #kg/cm2 (working stress)\n", + "#Working tension\n", + "A = 1.29 #cm^2 (cross-sectional area) \n", + "T = wstress*A #kg-wt\n", + "W = 1170.0/1000 #kg-wt/m\n", + "#Let us now find diameter of the conductor from the equation\n", + "# A = 3.14 * d^2/4\n", + "d = m.sqrt(4*A/3.14)/100 #m \n", + "#Projected area of the conductor per metre length\n", + "proArea = d*1 #m^2\n", + "#Weight of wind exerted\n", + "Ww = 122*proArea #kg-wt/m\n", + "\n", + "#Total weight\n", + "Wt = m.sqrt(W**2 + Ww**2) #kg-wt/m\n", + "\n", + "#Slant sag\n", + "l = 200.0/2 #m\n", + "sag = Wt*l**2/(2*T) #m\n", + "\n", + "#Now, tan θ = Ww/W\n", + "tanQ = Ww/W\n", + "#vertical sag\n", + "vsag = sag*m.cos(m.atan(tanQ)) #m\n", + "print \"Verticle Sag = \",round(vsag,2),\"m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.55 , PAGE NO :- 1667" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Max. sag produced = 3.93 m.\n", + "Verticle sag = 2.36 m.\n" + ] + } + ], + "source": [ + "'''A transmission line has a span of 214 metres. The line conductor has a cross-section of 3.225 cm^2 and has an ultimate \n", + "breaking strengh of 2,540 kg/cm^2. Assuming that the line is covered with ice and provides a combined copper and ice load of\n", + "1.125 kg/m while the wind pressure is 1.5 kg/m run (i) calculate the maximum sag produced. Take a factor of safety of 3\n", + "(ii) also determine the vertical sag.'''\n", + "\n", + "import math as m\n", + "\n", + "#(i) Maximum sag\n", + "#Here,\n", + "W = 1.125 #kg-wt/m\n", + "Ww = 1.5 #kg-wt/m\n", + "Wt = m.sqrt(1.125**2 + 1.5**2) #kg-wt/m\n", + "#Safety factor = ultimate stress/working stress\n", + "wstress = 2540.0/3 #kg-wt/cm2\n", + "#Permissible tension\n", + "A = 3.225 #cm^2 (cross-sectional area) \n", + "T = wstress*(3.225) #kg-wt\n", + "#Sag is\n", + "l = 214.0/2 #m \n", + "sag = Wt*l**2/(2*T) #m\n", + "\n", + "#(ii)Verticle Sag\n", + "#Now,\n", + "tanQ = Ww/W\n", + "cosQ = m.cos(m.atan(tanQ))\n", + "#vertical sag\n", + "vsag = sag*cosQ #m\n", + "print \"Max. sag produced = \",round(sag,2),\"m.\"\n", + "print \"Verticle sag = \",round(vsag,2),\"m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.56 , PAGE NO :- 1658" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Minimum clearance = 23.02 m.\n", + "Hence, clearance point = 30.7 m.\n" + ] + } + ], + "source": [ + "'''Two towers of height 30 and 90 m respectively support a transmission line conductor at water crossing. The horizontal\n", + "distance between the towers is 500 m. If the tension in the conductor is 1,600 kg, find the minimum clearance of the\n", + "conductor and the clearance of the conductor mid-way between the supports. Weight of the conductor is 1.5 kg/m. Bases of\n", + "the towers can be considered to be at the water level.'''\n", + "\n", + "\n", + "#Given\n", + "l = 500.0/2 #m (mid-way of towers)\n", + "h = 90.0 - 30.0 #m (height)\n", + "T = 1600.0 #kg-wt (tension)\n", + "W = 1.5 #kg-wt/m (weight)\n", + "\n", + "#Point of maximum sag is\n", + "x1 = l - h*T/(2*W*l)\n", + "\n", + "#Sag is\n", + "sag = W*x1**2/(2*T) #m\n", + "\n", + "#Minimum clearance is\n", + "cler = 30.0 - sag #m\n", + "print \"Minimum clearance = \",round(cler,2),\"m.\"\n", + "#Taking this point as reference , sag of mid-pt is\n", + "sag2 = W*(l-x1)**2/(2*T) #m\n", + "\n", + "#Mid-point Clearance\n", + "cler2 = cler + sag2\n", + "print \"Hence, clearance point = \",round(cler2,2),\"m.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 41.57 , PAGE NO :- 1658" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Clearance of conductor from water surface = 63.89 m.\n" + ] + } + ], + "source": [ + "'''An overhead transmission line at a river crossing is supported from two towers at heights of 50 m and 100 m above the\n", + "water level, the horizontal distance between the towers being 400 m. If the maximum allowable tension is 1,800 kg and the\n", + "conductor weighs 1 kg/m, find the clearance between the conductor and water at a point mid-way between the towers.'''\n", + "\n", + "#Given\n", + "h = 100.0 - 50.0 #m (height)\n", + "l = 400.0/2 #m (mid-way length)\n", + "T = 1800.0 #kg-wt (tension)\n", + "W = 1.0 #kg-wt/m (Weigth)\n", + "#Point of max sag\n", + "x1 = l - h*T/(2*W*l) #m\n", + "x2 = l + h*T/(2*W*l) #m\n", + "\n", + "#Distance of mid-pt from the above point is\n", + "d1 = (x2 - x1)/2 #m\n", + "\n", + "#Therefore height of P above max sag point is\n", + "h1 = W*d1**2/(2*T) #m\n", + "h2 = W*x2**2/(2*T) #m\n", + "\n", + "#Therefore point P from top is\n", + "Psag = h2 - h1 #m\n", + "\n", + "#Clearance above ground is\n", + "cler = 100.0 - Psag #m\n", + "\n", + "print \"Clearance of conductor from water surface = \",round(cler,2),\"m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 41.58 , PAGE NO :- 1659" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Horizontal Tension = 2373.42 kg-wt/m.\n" + ] + } + ], + "source": [ + "'''A conductor is strung across a river, being supported at the two ends at heights of 20 m and 16 m respectively, from the bed\n", + "of the river. The distance between the supports is 375 m and the weight of the conductor = 1.2 kg/m.If the clearance of the\n", + "conductor from the river bed be 9 m, find the horizontal tension in the conductor. Assume a parabolic configuration and that\n", + "there is no wind or ice loading.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#Given\n", + "l = 375.0/2 #m (mid-pt of towers)\n", + "h = 20.0 - 16.0 #m (height)\n", + "W = 1.2 #kg-wt/m\n", + "\n", + "#Let T be the tension in conductor\n", + "T = Symbol('T')\n", + "x1 = l - h*T/(2*W*l) #m\n", + "\n", + "#Minimum clearance\n", + "cler = 9.0 #m \n", + "sag = 16.0 - cler #m\n", + "\n", + "#Now ,sag is also\n", + "sag2 = (W*x1*x1)/(2*T) #m\n", + "\n", + "#Equating the two equations\n", + "eq = Eq(sag,sag2)\n", + "T = solve(eq)\n", + "T1 = T[0] #kg-wt/m\n", + "print \"Horizontal Tension = \",round(T1,2),\"kg-wt/m.\"" + ] + } + ], + "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.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter43.ipynb b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter43.ipynb new file mode 100644 index 00000000..73a5c2a2 --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter43.ipynb @@ -0,0 +1,1992 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# CHAPTER 43: ELECTRIC TRACTION" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.1 , PAGE NO :- 1716" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Max speed of train is = 39.2 km/h.\n" + ] + } + ], + "source": [ + "#A suburban train runs with an average speed of 36 km/h between two stations 2 km apart.Values of acceleration\n", + "#and retardation are 1.8 km/h/s and 3.6 km/h/s.Compute the maximum speed of the train assuming trapezoidal\n", + "#speed/time curve\n", + "################################################################################################################\n", + "import math\n", + "\n", + "#Given\n", + "\n", + "Va = 36.0*5/18.0 #m/s (average speed)\n", + "alpha = 1.8*5/18.0 #m/s^2 (acc.)\n", + "beta = 3.6*5/18.0 #m/s^2 (ret.)\n", + "D = 2000.0 #m (distance )\n", + "t = D/Va #s (time)\n", + "K = (alpha + beta)/(2*alpha*beta) #(constant)\n", + "Vm = (t-math.sqrt(t*t-4*K*D))/(2*K) #m/s (max speed)\n", + "Vm = Vm*18/5.0 #km/h\n", + "print \"Max speed of train is = \",round(Vm,2),\"km/h.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.2 , PAGE NO :- 1716" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The acceleration is = 1.7 km/h/s.\n" + ] + } + ], + "source": [ + "#A train is required to run between two stations 1.5 km apart at a schedule speed of 36 km/h,the duration of stops being\n", + "#25 seconds.The braking retardation is 3 km/h/s.Assuming a trapezoidal speed/time curve,calculate the acceleration if the\n", + "#ratio of maximum speed to average speed is to be 1.25\n", + "##########################################################################################################################\n", + "\n", + "#Given\n", + "D = 1500.0 #m (distance)\n", + "Vsch = 36.0*5/18.0 #m/s (scheduled speed)\n", + "beta = 3.0*5/18.0 #km/h/s (ret.)\n", + "\n", + "time = D/Vsch #s (scheduled time)\n", + "t_stop = 25.0 #s (stopping time)\n", + "t = time-t_stop #s (actual time of run)\n", + "Va = D/t #m/s (average speed)\n", + "Vm = 1.25*Va #m/s (max speed)\n", + "\n", + "#The value of K is\n", + "K = (D/(Vm*Vm))*(Vm/Va-1)\n", + "#We know that K = 1/2*(1/alpha + 1/beta).Therefore,value of alpha is\n", + "alpha = beta/(2*K*beta-1) #m/s^2\n", + "alpha = alpha*18/5.0 #km/h/s\n", + "print \"The acceleration is =\",round(alpha,1),\"km/h/s.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.3 , PAGE NO :- 1716" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Schedule speed of train is 38.7 Km/h.\n" + ] + } + ], + "source": [ + "#Find the scheduled speed of an electric train for a run of 1.5km if the ratio of its maximum to average speed is\n", + "#1.25.It has a braking retardation of 3.6 km/h/s,acceleration of 1.8km/h/s and stop time of 21 seconds.Assume\n", + "#trapezoidal speed/time curve.\n", + "##################################################################################################################\n", + "import math\n", + "\n", + "#Given\n", + "alpha = 1.8*5/18.0 #m/s^2 (acceleration)\n", + "beta = 3.6*5/18.0 #m/s^2 (retardation)\n", + "D = 1500.0 #m (distance)\n", + "ratio = 1.25 #(Vm/Va) \n", + "t_stop = 21 #s (stopping time) \n", + "K = 0.5*(1/alpha + 1/beta)\n", + "\n", + "#Also constant K = (D/Vm^2)*(Vm/Va-1)\n", + "#Therefore Vm^2 = (D/K)*((Vm/Va)-1).\n", + "Vm = math.sqrt(D/K*(ratio-1)) #m/s (Max. speed)\n", + "Va = Vm/ratio #m/s (Avg. speed) \n", + "t = D/Va #s (travel time)\n", + "\n", + "tsch = t + t_stop #s (schedule time)\n", + "Vsch = D/tsch #m/s (scheduled speed)\n", + "Vsch = Vsch*18/5.0 #km/h\n", + "print \"Schedule speed of train is\",round(Vsch,1),\"Km/h.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.4 , PAGE NO :- 1717" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false, + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Duration of acceleration = 26.7 s.\n", + "Duration of coasting = 119.3 s.\n", + "Duration of braking = 14.0 s.\n", + "Total duration = 160.0 s.\n" + ] + } + ], + "source": [ + "#A train runs between two stations 1.6km apart at an average speed of 36 km/h.If the maximum speed is to be limited\n", + "#to 72km/h,acceleration to 2.7km/h/s,coasting retardation to 0.18 km/h/s and braking retardation to 3.2 km/h/s,compute\n", + "#the duration of acceleration,coasting and braking periods.Assume a simplified speed/time curve.\n", + "########################################################################################################################\n", + "\n", + "from sympy import Eq,Symbol, solve\n", + "#Given\n", + "D = 1600 #m (distance)\n", + "Va = 36.0*5/18.0 #m/s (avg speed)\n", + "V1 = 72.0*5/18.0 #m/s (max speed)\n", + "alpha = 2.7*5/18.0 #m/s^2 (acceleration)\n", + "beta = 3.6*5/18.0 #m/s^2 (braking retardation)\n", + "beta_c = 0.18*5/18.0 #m/s^2 (coasting retardation)\n", + "#Duration of acceleration\n", + "t1 = V1/alpha #s\n", + "\n", + "#Actual time of run\n", + "t = D/Va #s\n", + "#Let us assume V2 be the speed at start of braking.\n", + "\n", + "V2 = Symbol('V2')\n", + "t3 = V2/beta #(braking period)\n", + "t2 = (V1-V2)/beta_c #(coasting period)\n", + "\n", + "eq = Eq(t1+t2+t3,t)\n", + "V2 = solve(eq)\n", + "Ve2 = V2[0]\n", + "\n", + "#Now we know the value of V2 that is Ve2.\n", + "t3 = Ve2/beta #(braking period)\n", + "t2 = (V1-Ve2)/beta_c #(coasting period)\n", + "print \"Duration of acceleration = \",round(t1,1),\"s.\"\n", + "print \"Duration of coasting = \",round(t2,1),\"s.\"\n", + "print \"Duration of braking = \",round(t3,1),\"s.\"\n", + "print \"Total duration = \",round(t,0),\"s.\"\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.5 , PAGE NO :- 1724" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The limiting value of train speed = 82.0 km/h.\n" + ] + } + ], + "source": [ + "#The peripheral speed of a railway traction motor cannot be allowed to exceed 44m/s.If gear ratio is 18/75,motor armature\n", + "#diameter 42cm and wheel diameter 91cm,calculate the limiting value of the train speed.\n", + "###########################################################################################################################\n", + "\n", + "#Given\n", + "gratio = 18/75.0 #(gear ratio)\n", + "Vmot = 44.0 #m/s (speed of traction motor)\n", + "wdia = 0.91 #m (wheel diameter)\n", + "mdia = 0.42 #m (motor armature diameter)\n", + "\n", + "#Maximum number of revolutions by armature (in 1s)\n", + "mrev = Vmot/(3.14*mdia) #rps\n", + "#Maximum number of revolutions by driving wheel(in 1s)\n", + "wrev = mrev*gratio #rps\n", + "#Maximum distance travelled by driving wheel (in 1s)\n", + "dist = wrev*(3.14*wdia) #m\n", + "#Therefore,limiting speed is\n", + "vel = dist*18/5.0 #km/h\n", + "print \"The limiting value of train speed = \",round(vel),\"km/h.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.6 , PAGE NO :- 1724" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Torque developed by each motor = 7181.0 N-m.\n" + ] + } + ], + "source": [ + "#A 250-tonne motor coach driven by four motors takes 20 seconds to attain a speed of 42 km/h,starting from rest on an ascending\n", + "#gradient of 1 in 80.The gear ratio is 3.5,gear efficiency 92%,wheel diameter 92cm train resistance 40N/t and rotational inertia\n", + "#10 percent of the dead weight.Find the torque developed by each motor.\n", + "##################################################################################################################################\n", + "\n", + "#Given\n", + "M = 250.0 #tonne (mass of motor)\n", + "Me = 1.1*250.0 #tonne (mass of rotating motor)\n", + "Vm = 42.0 #km/h (speed)\n", + "t1 = 20.0 #s (time)\n", + "G = 1/80.0*100 # (% gradient)\n", + "r = 40.0 #N/tonne(train reistance)\n", + "D = 0.92 #m (wheel diameter)\n", + "gratio = 3.5 # (gear ratio)\n", + "geff = 0.92 # (gear efficiency)\n", + "\n", + "a = Vm/t1 # (acceleration) \n", + "#Now,tractive force is given by\n", + "Ft = 277.8*Me*a + 98*M*G + M*r #N\n", + "#Now Ft = 2*gratio*geff*T/D.Therefore torque 'T' is\n", + "T = Ft*D/(2*gratio*geff) #N-m\n", + "#There are motors.so,torque by each motor is\n", + "torque = T/4 #N-m\n", + "print \"Torque developed by each motor = \",round(torque),\"N-m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.7 , PAGE NO :- 1724" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Time taken to achieve speed of 80km/h is = 44.3 s.\n", + "Current drawn per motor is 488.0 A.\n" + ] + } + ], + "source": [ + "#A 250-tonne motor coach having 4 motors,each developing a torque of 8000 N-m during acceleration,starts from rest.If\n", + "#up-gradient is 30 in 1000,gear ratio 3.5,gear transmission efficiency 90%,wheel diameter 90cm,train resistance 50N/t,\n", + "#rotational inertia effect 10%,compute the time taken by the coach to attain a speed of 80km/h.\n", + "#If supply voltage is 3000V and motor efficiency 85%,calculate the current taken during the acceleration period.\n", + "#########################################################################################################################\n", + "\n", + "#Given\n", + "M = 250.0 #tonne (mass of motor)\n", + "Me = 1.1*250 #tonne (mass of rotating motor)\n", + "r = 50.0 #N/t (train resistance)\n", + "G = 30.0/1000*100 # (% gradient)\n", + "torque = 8000 #N-m (torque of each motor)\n", + "D = 0.90 #m (wheel diameter)\n", + "gratio = 3.5 # (gear ratio)\n", + "geff = 0.90 # (gear efficiency)\n", + "Vm = 80 #km/h (speed)\n", + "meff = 0.85 # (Motor efficiency)\n", + "V = 3000.0 # (Voltage)\n", + "\n", + "T = 4*torque # (total torque)\n", + "#Now,we Know that\n", + "Ft = 2*gratio*geff*T/D #N\n", + "#Also,we know that Ft = 277.8*Me*a + 98MG + Mr\n", + "a = (Ft-98*M*G-M*r)/(277.8*Me) #km/h/s(acceleration)\n", + "#Time taken to attain the speed\n", + "t1 = Vm/a #s\n", + "#Power taken by motor is given by\n", + "Power = Ft*(5.0/18*Vm)/meff #W\n", + "#Total current drawn is (using P = VI)\n", + "I = Power/V #A\n", + "#Current drawn/motor is\n", + "cur = I/4 #A\n", + "\n", + "print \"Time taken to achieve speed of 80km/h is =\",round(t1,1),\"s.\"\n", + "print \"Current drawn per motor is\",round(cur,1),\"A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 43.8 , PAGE NO :- 1725" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Weight of locomotive is = 142.0 tonne.\n", + "Number of axles required are = 7.0\n" + ] + } + ], + "source": [ + "#A goods train weighing 500 tonne is to be hauled by a locomotive up an ascending gradient of 2% with an\n", + "#acceleation of 1 km/h/s.If the coefficient of adhesion is 0.25,train resistance 40N/t and effect of rotational\n", + "#inertia 10%,find the weight of locomotive and number of axles if load is not to increase beyond 21 tonne/axle.\n", + "###############################################################################################################\n", + "\n", + "from sympy import Eq,Symbol, solve\n", + "#Given\n", + "mass = 500.0 #tonne (mass of goods train)\n", + "a = 1 #km/h/s (acceleration)\n", + "coef_ad = 0.25 #(coefficient of adhesion)\n", + "r = 40.0 #N/t (train resistance)\n", + "G = 2.0 # (% gradient)\n", + "w_axle = 21.0 #tonne/axle (weight per axle)\n", + "#Let Ml be mass of locomotive\n", + "Ml = Symbol('Ml')\n", + "#Total mass is given by\n", + "M = mass + Ml\n", + "#Now,tractive force is given by\n", + "Ft1 = M*(277.8*1.1*a + 98*G + r) #N\n", + "#Also,Maximum tractive force is given by\n", + "Ft2 = 1000*coef_ad*Ml*9.8\n", + "#As both Ft1 and Ft2 are same, therefore equating\n", + "eq = Eq(Ft1,Ft2)\n", + "Ml = solve(eq)\n", + "#Mass of locomotive 'M_l' is\n", + "M_l = Ml[0]\n", + "#No of axles required are\n", + "no_axle = round(M_l)/w_axle\n", + "print \"Weight of locomotive is =\",round(M_l),\"tonne.\"\n", + "print \"Number of axles required are = \",round(no_axle)\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.9 , PAGE NO :- 1725" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The trailing weight that can now be hauled up = 1100.0 tonne.\n" + ] + } + ], + "source": [ + "#An electric locomotive weighing 100 tonne can just accelerate a train of 500 tonne(trailing weight) with an acceleration of \n", + "#1 km/h/s on an up-gradient of 0.1%.Train resistance is 45N/t and rotational inertia is 10%.If this locomotive is helped by another\n", + "#locomotive of 120 tonne,find:\n", + "#(i)the trailing weight that can now be hauled up the same gradient under the same conditions.\n", + "#(ii)the maximum gradient,if the trailing hauled load remains unchanged.\n", + "#Assume adhesive weight expressed as percentage of total dead weight as 0.8 for both locomotives.'''\n", + "#############################################################################################################################\n", + "\n", + "#Given\n", + "Ml1 = 100.0 #tonne (locomotive 1)\n", + "Ml2 = Ml1 + 120.0 #tonne (locomotive 1&2)\n", + "mass = 500.0 #tonne (trailing part)\n", + "r = 45.0 #N/t (train resistance)\n", + "G = 0.1 # (% gradient)\n", + "a = 1.0 #km/h/s (acceleration)\n", + "\n", + "#Total mass of train and locomotive\n", + "M = Ml1 + mass #tonne\n", + "Me = 1.1*M #tonne \n", + "#Traction Force is\n", + "Ft = 277.8*Me*a + 98*M*G + M*r #N\n", + "#Let coefficient_of_adhesion be 'ua'.Then the maximium tractive effort by locomotive 1 is Ft = 1000*ua*Ml1*9.8\n", + "ua = Ft/(1000*9.8*Ml1)\n", + "\n", + "#Maximum tractive effort by locomotive 1&2 is\n", + "Ft2 = 1000*ua*Ml2*9.8 #N\n", + "#Also,Ft2 = M2*(277.8*1.1*a + G + r).Therefore,\n", + "M2 = Ft2/(277.8*1.1*a + 98*G + r) #tonne\n", + "#(i)The trailing weight that can be hauled up is\n", + "wtrail = M2-Ml2 #tonne\n", + "#(ii)Now, in this case the total weight of train & locomotive is\n", + "M3 = mass + Ml2\n", + "#Tractive force Ft2 = M3*(277.8*1.1*a + 98G2 + r).Therefore,for max gradient 'G2'\n", + "G2 = (Ft2/M3-277.8*1.1*a-r)/98\n", + "\n", + "print \"The trailing weight that can now be hauled up =\",round(wtrail,2),\"tonne.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.10 , PAGE NO :- 1726" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Max speed = 44.32 km/h.\n", + "Specific energy output = 30.18 Wh/t-km.\n" + ] + } + ], + "source": [ + "#The average distance between stops on a level section of a railway is 1.25km.Motor-coach train weighing 200 tonne has a\n", + "#schedule speed of 30 km/h,the duration of stops being 30 seconds.The acceleration is 1.9 km/h/s and the braking retardation\n", + "#is 3.2 km/h/s.Train resistance to traction is 45 N/t.Allowance for rotational inertia is 10%.Calculate the specific energy\n", + "#output in Wh/t-km.Assume a trapezoidal speed/time curve.\n", + "##############################################################################################################################\n", + "import math as m\n", + "#Given\n", + "alpha = 1.9*5/18.0 #km/h/s (acceleration)\n", + "beta = 3.2*5/18.0 #km/h/s (retardation)\n", + "D = 1.25*1000.0 #m (distance)\n", + "tstop = 30.0 #s (stop time)\n", + "Vsch = 30*5/18.0 #m/s (schedule speed) \n", + "r = 45.0 #N/t (train resistance) \n", + "K = round((alpha + beta)/(2*alpha*beta),1) #(constant K)\n", + "\n", + "tsch = D/Vsch #s (schedule time)\n", + "t = tsch-tstop #s (running time)\n", + "#Now,max speed is given by\n", + "Vm = (t - m.sqrt(t*t-4*K*D))/(2*K) #m/s\n", + "#Braking distance is given by(using newton's III equation of motion)\n", + "dist = Vm*Vm/(2*beta) #m\n", + "#Therefore non-braking distance\n", + "D2 = (D - dist)/1000 #km\n", + "Vm = Vm*18/5.0 #km/h\n", + "D = D/1000 #km\n", + "#Specific energy output is\n", + "spengy = 0.01072*(Vm*Vm/D)*1.1 + 0.2778*r*(D2/D)\n", + "\n", + "print \"Max speed = \",round(Vm,2),\"km/h.\"\n", + "print \"Specific energy output = \",round(spengy,2),\" Wh/t-km.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.11 , PAGE NO :- 1726" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The value of specific energy consumption is 21.6 Wh/t-km.\n" + ] + } + ], + "source": [ + "#A 300-tonne EMU is started with a uniform acceleration and reaches a speed of 40 Km/h in 24 seconds on a level track.\n", + "#Assuming trapezoidal speed/time curve,find specific energy consumption if rotational inertia is 8%,retardation is 3 km/h/s,\n", + "#distance between stops is 3 km,motor efficiency is 0.9 and train resistance is 49N/tonne.\n", + "#############################################################################################################################\n", + "\n", + "#Given\n", + "M = 300.0 #tonne (mass of train)\n", + "Mratio = 1.08 # (Me/M)\n", + "Vm = 40.0 #km/h (speed)\n", + "beta = 3.0 #km/h/s (retardation)\n", + "r = 49.0 #N/t (train resistance)\n", + "meff = 0.9 # (motor efficiency)\n", + "D = 3.0 #km (distance)\n", + "\n", + "#Braking time is(using Newton's Ist eqn)\n", + "t3 = Vm/beta\n", + "#Distance travelled in braking time(using Newton's IInd eqn)\n", + "dist = 0.5*beta*t3*t3/3600 #km\n", + "#Non braking distance D2 is\n", + "D2 = D - dist #km\n", + "#Specific energy consumption is given by,\n", + "spengy = 0.01072*(Vm*Vm/(meff*D))*Mratio + 0.2778*r/meff*(D2/D) #Wh/t-km\n", + "print \"The value of specific energy consumption is\",round(spengy,1),\"Wh/t-km.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.12 , PAGE NO :- 1726" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acceleration = 2.0 km/h/s.\n", + "coasting retardation = 0.2 km/h/s.\n", + "The schedule speed = 30.3 km/h.\n", + "The new schedule speed = 31.6 km/h.\n" + ] + } + ], + "source": [ + "#An electric train accelerates uniformly from rest to a speed of 50km/h in 25 seconds.It then coasts for 70 seconds\n", + "#against a constant resistance of 60N/t and is then braked to rest with uniform retardation of 3.0km/h/s in 12 seconds.\n", + "#Compute :- (i)uniform acceleration (ii)coasting retardation\n", + "#(iii)schedule speed if station stops are of 20-second duration\n", + "#Allow 10% for rotational inertia.How will the scedule speed be affected if duration of stops is reduced to 15 seconds,\n", + "#other factors remaining the same?\n", + "##########################################################################################################################\n", + "\n", + "#Given\n", + "V1 = 50.0 #km/h (Max speed)\n", + "t1 = 25.0 #s (accelerating time)\n", + "t2 = 70.0 #s (coasting time)\n", + "r = 60.0 #N/t (train resistance)\n", + "beta = 3.0 #km/h/s (retardation)\n", + "t3 = 12.0 #s (braking time)\n", + "\n", + "#(i) Uniform acceleration is (using Newton's 1st eqn.)\n", + "alpha = V1/t1 #km/h/s\n", + "print \"acceleration = \",round(alpha,1),\"km/h/s.\"\n", + "#Now in braking period (using Newton's 1st eqn.)-> 0 = V2 - beta*t3\n", + "V2 = beta*t3 #km/h\n", + "#(ii)Now in coasting period (using Newton's 1st eqn.)-> V2 = V1 - beta_c*t2\n", + "beta_c = (V1-V2)/t2 #km/h/s\n", + "print \"coasting retardation = \",round(beta_c,1),\"km/h/s.\"\n", + "#distance travelled in accelerating period (using Newton's 2nd eqn.)\n", + "dis1 = 0.5*alpha*t1*t1/3600 #km\n", + "#distance travelled in coasting period (using Newton's 3rd eqn.)\n", + "dis2 = -(V2*V2 - V1*V1)/(2*beta_c*3600) #km\n", + "#distance travelled in braking period (using Newton's 2nd eqn.)\n", + "dis3 = 0.5*beta*t3*t3/3600 #km\n", + "#Total distance\n", + "D = dis1 + dis2 + dis3 #km\n", + "#Total time\n", + "T = t1 + t2 + t3 + 20.0 #s\n", + "#Scheduled Speed Vsch is\n", + "Vsch = D/T*3600 #km/h\n", + "print \"The schedule speed = \",round(Vsch,1),\"km/h.\"\n", + "#New Total time\n", + "T = t1 + t2 + t3 + 15.0\n", + "#New scheduled speed is\n", + "Vsch = D/T*3600 #km/h\n", + "print \"The new schedule speed = \",round(Vsch,1),\"km/h.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.13 , PAGE NO :- 1727" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The specific energy consumption is = 63.1 Wh/t-km.\n" + ] + } + ], + "source": [ + "#A 350-tonne electric train runs up an ascending gradient of 1% with the following speed/time curves:\n", + "# 1.uniform acceleration of 1.6km/h/s for 25 seconds 2.constant speed for 50 seconds\n", + "# 3.coasting for 30 seconds 4.braking at 2.56 km/h/s to rest.\n", + "#Compute the specific energy consumption if train resistance is 50N/t,effect of rotational inertia 10%,overall efficiency of\n", + "#transmission gear and motor,75%.\n", + "#############################################################################################################################\n", + "\n", + "#Given\n", + "M = 350.0 #tonne (weight of train)\n", + "Me = 1.1*M #tonne (effect of rot. inertia)\n", + "G = 1.0 # (% gradient)\n", + "alpha = 1.6 #km/h/s (acceleration)\n", + "t1 = 25.0 #s (acceleration time)\n", + "t2 = 50 #s (constant speed time)\n", + "t3 = 30 #s (coasting time)\n", + "beta = 2.56 #km/h/s (braking retardation)\n", + "r = 50.0 #N/t (train resistance)\n", + "meff = 0.75 # (motor efficiency)\n", + "\n", + "V1 = alpha*t1 #km/h (Max speed attained)\n", + "#Tractive force during coasting is\n", + "Ft = 98*M*G + M*r #N\n", + "#Also,Tractive force during coasting is given by\n", + "#Ft = 277.8*Me*beta_c . Therefore beta_c is\n", + "beta_c = Ft/(277.8*Me) #km/h/s\n", + "\n", + "#During Coasting period.(Using Newton's 1st eqn.) . \"V2\" is given by\n", + "V2 = V1 - beta_c*t3 #km/h\n", + "t4 = V2/beta #s (braking time) \n", + "\n", + "#Distance travelled during acceleration period.\n", + "dis1 = 0.5*alpha*t1*t1/3600 #km\n", + "#Distance travelled during constant speed period.\n", + "dis2 = V1*t2/3600 #km\n", + "#Distance travelled during coasting period.\n", + "dis3 = (V1+V2)/2*t3/3600 #km\n", + "#Distance travelled during braking period.\n", + "dis4 = 0.5*V2*t4/3600 #km\n", + "#Total distance between stops\n", + "D = dis1 + dis2 + dis3 + dis4 #km\n", + "#Distance travelled during acceleration and constant speed period\n", + "D2 = dis1 + dis2 #km\n", + "#Specific energy consumption is given by\n", + "spengy = (0.01072*(V1*V1/D)*(Me/M) + 27.25*G*(D2/D) + 0.2778*r*(D2/D))/meff #Wh/t-km\n", + "\n", + "print \"The specific energy consumption is =\",round(spengy,1),\"Wh/t-km.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.14 , PAGE NO :- 1728" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total number of locomotives required are = 4.0\n" + ] + } + ], + "source": [ + "#An ore-carrying train weighing 5000 tonne is to be hauled down a gradient of 1:50 at a maximum speed of 30km/h\n", + "#and started on a level track at an acceleration of 0.29 km/h/s.How many locomotives,each weighing 75 tonne,will\n", + "#have to be employed?\n", + "#Train resistance during starting = 29.4 N,Train resistance at 30km/h = 49N/t,Coefficient of adhesion = 0.3\n", + "#Rotational inertia = 10%\n", + "################################################################################################################################\n", + "\n", + "#Given\n", + "M = 5000.0 #tonne (Mass of train)\n", + "Ml = 75.0 #tonne (Mass of locomotive) \n", + "G = 1.0/50 # (gradient)\n", + "Vm = 30.0 #km/h (Max speed)\n", + "a = 0.29 #km/h/s (acceleration) \n", + "r1 = 49.0 # (Train resistance at 30km/h)\n", + "r2 = 29.4 # (Train resistance at starting)\n", + "ua = 0.3 # (coefficient of adhesion)\n", + "\n", + "#Downward force due to gravity\n", + "F = M*G*9.8*1000 #N\n", + "#Train resistance\n", + "Fres = r1*M #N\n", + "#Braking force required is\n", + "Fbrk = F-Fres #N\n", + "#Max. braking force which one locomotive can produce.\n", + "#F = 1000*ua*M*g\n", + "Fbrk_1 = 1000*ua*Ml*9.8 #N\n", + "#Therefore, Number of locomotives required for braking\n", + "num1 = Fbrk/Fbrk_1\n", + "num1 = round(num1)+ 1\n", + "#Considering the starting case.Tractive force required is\n", + "Ft = 277.8*a*M*1.1 + M*r2\n", + "#Therefore, Number of locomotives required for starting\n", + "num2 = Ft/Fbrk_1\n", + "#Number of locomotives required\n", + "if num1>num2:\n", + " num = num1\n", + "else:\n", + " num = num2\n", + "print \"Total number of locomotives required are = \",round(num)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.15 , PAGE NO :- 1729" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Scheduled speed = 32.9 Km/h.\n", + "Specific energy consumption for up-gradient is = 69.08 Wh/t-km.\n", + "Specific energy consumption for down-gradient is = 39.58 Wh/t-km\n" + ] + } + ], + "source": [ + "#A 200-tonne electric train runs according to the following quadrilateral speed/time curve:\n", + "# 1. uniform acceleration from rest at 2 km/h/s for 30 seconds.\n", + "# 2. coasting for 50 seconds\n", + "# 3. duration of braking:15 seconds\n", + "#If up-gradient is =1%,train resistance = 40N/t,rotational inertia effect = 10%,duration of stops = 15s and overall\n", + "#efficiency of gear and motor = 75%,find\n", + "#(i)schedule speed (ii)specific energy consumption (iii)how will the value of specific energy consumption change if\n", + "#there is a down-gradient of 1% rather than the up-gradient ?\n", + "########################################################################################################################\n", + "\n", + "#Given\n", + "M = 200.0 #tonne (Mass of train)\n", + "Me = 1.1*200.0 #tonne (rotational inertia effect on mass)\n", + "alpha = 2.0 #km/h/s (acceleration)\n", + "t1 = 30.0 #s (acceleration time)\n", + "t2 = 50.0 #s (coasting time)\n", + "t3 = 15.0 #s (braking time)\n", + "G = 1.0 # (% gradient)\n", + "r = 40.0 #N/t (train resistance)\n", + "tstop = 15.0 #s (stop time)\n", + "meff = 0.75 # (motor efficiency)\n", + "\n", + "V1 = alpha*t1 #km/h (Max speed)\n", + "#During coasting retardation force is\n", + "Fr = 98*M*G + M*r #N\n", + "#Also this retardation force in terms of coasting retardation beta_c is\n", + "#Fr = 277.8*Me*beta_c.Therefore,\n", + "beta_c = Fr/(277.8*Me) #km/h/s\n", + "#Using newton's Ist eqn in coasting period\n", + "V2 = V1-beta_c*t2 #km/h\n", + "\n", + "#Braking retardation is\n", + "beta = V2/t3\n", + "#Distance travelled during acceleration\n", + "dist1 = 0.5*alpha*t1*t1/3600 #m\n", + "#Distance travelled during coasting\n", + "dist2 = (V1+V2)/2*t2/3600 #m\n", + "#Distance travelled during braking\n", + "dist3 = 0.5*beta*t3*t3/3600 #m\n", + "#Total distance travelled\n", + "D = dist1 + dist2 + dist3 #km\n", + "#Total schedule time\n", + "T = t1 + t2 + t3 + tstop #s\n", + "#(i)Schedule speed\n", + "Vsch = D/T*3600 #km/h\n", + "print \"Scheduled speed = \",round(Vsch,1),\"Km/h.\"\n", + "#(ii)Specific energy consumption is given by\n", + "spengy = (0.01072*(V1*V1/D)*(Me/M) + 27.25*G*(dist1/D)+ 0.2778*r*(dist1/D))/meff #Wh/t-km\n", + "print \"Specific energy consumption for up-gradient is = \",round(spengy,2),\"Wh/t-km.\"\n", + "#If there is a down gradient then during coasting accelerative force is\n", + "Fa = 98*M*(-G) + M*r\n", + "#Also this accelerative force in terms of coasting acceleration alpha_c is\n", + "#Fa = 277.8*Me*alpha_c.Therefore,\n", + "alpha_c = Fa/(277.8*Me) #km/h/s\n", + "#Using newton's Ist eqn in coasting period\n", + "V2 = V1 - alpha_c*t2 #km/h\n", + "#Braking retardation is\n", + "beta = V2/t3\n", + "#Distance travelled during acceleration\n", + "dist1 = 0.5*alpha*t1*t1/3600 #m\n", + "#Distance travelled during coasting\n", + "dist2 = (V1+V2)/2*t2/3600 #m\n", + "#Distance travelled during braking\n", + "dist3 = 0.5*beta*t3*t3/3600 #m\n", + "#Total distance travelled\n", + "D = dist1 + dist2 + dist3 #km\n", + "#(iii)Specific energy consumption is given by\n", + "spengy = (0.01072*(V1*V1/D)*(Me/M) - 27.25*G*(dist1/D)+ 0.2778*r*(dist1/D))/meff #Wh/t-km\n", + "print \"Specific energy consumption for down-gradient is = \",round(spengy,2),\"Wh/t-km\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.16 , PAGE NO :- 1730" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x600a6b0>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#An electric train has an average speed of 45 kmph on a level track between stops 1500m apart.It is accelerated at\n", + "#1.8km/h/s and is braked at 3 km/h/s.Draw the speed-time curve for the run.\n", + "####################################################################################################################\n", + "\n", + "import math as m\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline \n", + "\n", + "#Given\n", + "alpha = 1.8 #km/h/s (acceleration)\n", + "beta = 3.0 #km/h/s (retardation)\n", + "S = 1.5 #km (Distance of run)\n", + "Va = 45.0 #km/h (Average speed)\n", + "\n", + "T = S/Va*3600 #s (Time of run)\n", + "\n", + "#Constant K is given by\n", + "K = 0.5*(1/alpha + 1/beta)\n", + "#Max speed is given by\n", + "Vm = T/(2*K)-m.sqrt(T*T/(4*K*K) - 3600*S/K) #km/h\n", + "#Acceleration time\n", + "t1 = Vm/alpha #s\n", + "#Braking time\n", + "t3 = Vm/beta #s\n", + "#Free running time\n", + "t2 = T - (t1+t3) #s\n", + "\n", + "#SPEED TIME CURVE\n", + "\n", + "plt.plot([0,t1,t1+t2,t1+t2+t3], [0,Vm,Vm,0])\n", + "plt.ylabel('Speed(in km/h)')\n", + "plt.xlabel('Time(in seconds)')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.17 , PAGE NO :- 1731" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum Speed is 72.85 Km/h.\n" + ] + } + ], + "source": [ + "#A train has schedule speed of 60 km per hour between the stops which are 9 km apart.Determine the crest speed over\n", + "#the run,assuming trapezoidal speed-time curve.The train accelerates at 3km/h/s and retards at 4.5 km/h/s.Duration\n", + "#of stops is 75 seconds.\n", + "#########################################################################################################################\n", + "import math as m\n", + "\n", + "#Given\n", + "alpha = 3.0 #km/h/s (acceleration)\n", + "beta = 4.5 #Km/h/s (retardation)\n", + "S = 9.0 #km (distance)\n", + "Vsch = 60.0 #km/h (schedule speed)\n", + "\n", + "Tsch = S/Vsch*3600 #s (schedule time)\n", + "T = Tsch - 75.0 #s (time of run)\n", + "#Constant K is\n", + "K = 0.5*(1/alpha + 1/beta)\n", + "\n", + "#Maximum speed Vm is\n", + "Vm = (T/(2*K)) - m.sqrt(T*T/(4*K*K) - 3600*S/K)\n", + "\n", + "print \"Maximum Speed is\",round(Vm,2),\"Km/h.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.18 , PAGE NO :- 1732" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Schedule speed is 60.0 km/h.\n" + ] + } + ], + "source": [ + "#An electric train is to have acceleration and braking retardation of 1.2 km/h/s and 4.8 km/h/s respectively.If the ratio of\n", + "#maximum to average speed is 1.6 and time for stop is 35 seconds,find schedule speed for a run of 3km.Assume simplified\n", + "#trapezoidal speed-time curve.\n", + "#############################################################################################################################\n", + "import math as m\n", + "alpha = 1.2 #km/h/s (acceleration)\n", + "beta = 4.8 #km/h/s (retardation)\n", + "S = 3.0 #km (distance)\n", + "\n", + "#Constant K is\n", + "K = 0.5*(1/alpha + 1/beta)\n", + "\n", + "#The average speed is Va = S/T . Therefore Va*T = S*3600\n", + "Va_T = S*3600 \n", + "#Now Vm/Va = 1.6 .Therefore,\n", + "Vm_T = Va_T*1.6\n", + "\n", + "#Since, Vm^2*K - Vm*T + 3600*S = 0, Therefore\n", + "#Vm^2 = Vm*T - 3600*S\n", + "Vm = m.sqrt((Vm_T - 3600*S)/K) #km/h\n", + "#Average Speed is\n", + "Va = Vm/1.5 #km/h\n", + "#Actual Time of Run\n", + "T = 3600*S/Va #s\n", + "#Schedule Time\n", + "Tsch = T + 35.0 #s\n", + "#Schedule Speed\n", + "Vsch = S/Tsch*3600 #km/h\n", + "print \"Schedule speed is\",round(Vsch),\"km/h.\" " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.19 , PAGE NO :- 1732" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The rate of acceleration required to operate this service = 1.85 km/h/s.\n" + ] + } + ], + "source": [ + "#An electric train has a schedule speed of 25 kmph between stations 800m apart.The duration of stop is 20 seconds,the\n", + "#maximum speed is 20 percent higher than the average running speed and the braking retardation is 3 km/h/s.Calculate\n", + "#the rate of acceleration required to operate this service.\n", + "###################################################################################################################\n", + "\n", + "#Given\n", + "Vsch = 25.0 #km/h (Schedule speed)\n", + "S = 0.8 #km (Distance)\n", + "beta = 3.0 #km/h/s (Retardation)\n", + "\n", + "Tsch = S/Vsch*3600 #s\n", + "\n", + "#Actual time of run = Tsch - (time of stop)\n", + "T = Tsch - 20.0 #s\n", + "Va = S/T*3600 #km/h (Average speed)\n", + "Vm = 1.2*Va #km/h (Maximum speed)\n", + "\n", + "#Since, Vm^2*K -Vm*T + 3600*S = 0\n", + "#Constant K = (Vm*T - 3600*S)/(Vm^2)\n", + "K = (Vm*T - 3600*S)/(Vm*Vm)\n", + "\n", + "#Also,K = 0.5*(1/alpha + 1/beta).Therefore,\n", + "alpha = 1/(2*K - 1/beta) #km/h/s\n", + "\n", + "print \"The rate of acceleration required to operate this service =\",round(alpha,2),\"km/h/s.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.20 , PAGE NO :- 1733" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Retardation = 0.51 km/h/s.\n" + ] + } + ], + "source": [ + "#A suburban electric train has a maximum speed of 80 kmph.The schedule speed including a station stop of 35 seconds is 50kmph.\n", + "#If the acceleration is 1.5 km/h/s,find the value of retardation when the average distance between stops is 5 km.\n", + "################################################################################################################################\n", + "\n", + "#Given\n", + "Vsch = 50.0 #km/h (schedule speed)\n", + "S = 5.0 #km (distance)\n", + "alpha = 1.5 #km/h/s (acceleration) \n", + "Vm = 80.0 #km/h (Max speed)\n", + "tstop = 30.0 #s (Time of stop)\n", + "\n", + "\n", + "Tsch = S/Vsch*3600 #s (Schedule time)\n", + "T = Tsch - tstop #s (Actual time of run)\n", + "\n", + "#Since, Vm^2*K -Vm*T + 3600*S = 0\n", + "#Constant K = (Vm*T - 3600*S)/(Vm^2)\n", + "K = (Vm*T - 3600*S)/(Vm*Vm)\n", + "\n", + "#Also,K = 0.5*(1/alpha + 1/beta).Therefore,\n", + "beta = 1/(2*K - 1/alpha) #km/h/s\n", + "\n", + "print \"Retardation =\",round(beta,2),\"km/h/s.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 43.21 , PAGE NO :- 1733" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Duration of acceleration = 32.0 s.\n", + "Duration of coasting retardation = 96.84 s.\n", + "Duration of braking retardation = 15.16 s.\n" + ] + } + ], + "source": [ + "#A train is required to run between two stations 1.6 km apart at the average speed of 40 kmph.The run is to be made to a\n", + "#simplified quadrilateral speed-time curve.If the maximum speed is to be limited to 64 kmph,accelerating to 2 km/h/s and\n", + "#coasting and braking retardation to 0.16 km/h/s and 3.2 km/h/s respectively,determine the duration of acceleration,coasting\n", + "#and braking periods.\n", + "#################################################################################################################################\n", + "from sympy import Eq,Symbol,solve\n", + "#Given\n", + "S = 1.6 #km (Distance)\n", + "Va = 40.0 #km/h (Average speed)\n", + "Vm = 64.0 #km/h (Maximum speed)\n", + "alpha = 2.0 #km/h/s (Acceleration)\n", + "beta_c = 0.16 #km/h/s (Coasting retardation)\n", + "beta = 3.2 #km/h/s (braking retardation)\n", + "\n", + "T = S/Va*3600 #s (Actual time of run)\n", + "t1 = Vm/alpha #s (acceleration time)\n", + "#Let us assume the speed at starting of braking be V2\n", + "V2 = Symbol('V2')\n", + "t2 = (Vm-V2)/beta_c #s (coasting period)\n", + "t3 = V2/beta #s (braking period)\n", + "eq = Eq(t1+t2+t3,T)\n", + "V2 = solve(eq)\n", + "Ve2 = V2[0]\n", + "#Therfore coasting and braking periods are\n", + "t2 = (Vm-Ve2)/beta_c #s (coasting period)\n", + "t3 = Ve2/beta #s (braking period)\n", + "\n", + "print \"Duration of acceleration = \",round(t1,2),\"s.\"\n", + "print \"Duration of coasting retardation = \",round(t2,2),\"s.\"\n", + "print \"Duration of braking retardation = \",round(t3,2),\"s.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.22 , PAGE NO :- 1737" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Speed-Armature current graph\n" + ] + }, + { + "data": { + "image/png": "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\nQyKiSdJQ4OWsfRGwWdl+w7K2Vk2dOvXj7YaGBhoaGrq+UjOzOtbY2EhjY2On3kMR1f1FXtIWwM0R\n8dns+TTg9YiYJuksYFBETMpOXF8OjCENM90ObBWtFCiptWYzM2uDJCKiQxcEVbUnIen3QAOwkaS/\nAlOAc4BrJJ0ALCRd0UREPCPpauAZYDlwspPAzKxYVe9JVIN7EmZmHVdJT6IWTlybmVmNckiYmVku\nh4SZmeVySJiZWS6HhJmZ5XJImJlZLoeEmZnlckiYmVkuh4SZmeVySJiZWS6HhJmZ5XJImJlZLoeE\nmZnlckiYmVkuh4SZmeVySJiZWS6HhJmZ5XJImJlZLoeEmZnlckiYmVkuh4SZmeVySJiZWS6HhJmZ\n5XJImJlZLoeEmZnlckiYmVkuh4SZmeVySJiZWa6aDAlJB0h6TtL/SDqr6HrMzHqqmgsJSb2AXwBf\nBLYDjpL0mWKrqkxjY2PRJbSL6+xarrPr1EONUD91VqLmQgLYDZgfEQsjYjlwJXBIwTVVpF7+4bjO\nruU6u0491Aj1U2clajEkNgVeLHv+UtZmZmbdrBZDwszMaoQiougaViFpd2BqRByQPZ8ERERMK9un\ntoo2M6sTEaGO7F+LIbEWMA8YDywGHgSOiohnCy3MzKwH6l10AS1FxEeS/hGYRRoOu9gBYWZWjJrr\nSZiZWe2ouxPX9XKjnaQXJD0h6TFJDxZdT4mkiyU1SXqyrG2QpFmS5kmaKWlgkTVmNbVW5xRJL0l6\nNHscUHCNwyTNlvS0pLmSTsvaa+p4tlLnqVl7rR3PvpIeyP7PzJU0JWuvteOZV2dNHc+spl5ZLTOy\n5x0+lnXVk8hutPsf0vmKvwEPAUdGxHOFFtYKSc8Dn4uIN4qupZykvYF3gEsjYoesbRrwWkScmwXv\noIiYVIN1TgGWRsR/FFlbiaShwNCIeFzSusAjpHt6jqeGjmcbdR5BDR1PAEkDImJZdm7yT8BpwGHU\n0PFso84Dqb3jeQbwOWD9iJhQyf/1eutJ1NONdqIGj29E3AO0DK5DgOnZ9nTg0G4tqhU5dUI6rjUh\nIpZExOPZ9jvAs8Awaux45tRZuveoZo4nQEQsyzb7ks6ZBjV2PCG3Tqih4ylpGHAQ8Juy5g4fy5r7\nIbYa9XSjXQC3S3pI0jeLLmY1BkdEE6QfKMDggutpyz9KelzSb4oedignaQtgJ+B+YEitHs+yOh/I\n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\nuRwSZmaW6/8D4cY6ZaAZBXcAAAAASUVORK5CYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x6499410>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#The torque-armature current characteristics of a series traction motor are given as:\n", + "#Armature Current(amp): 5 10 15 20 25 30 35 40\n", + "#Torque(N-m): 20 50 100 155 215 290 360 430\n", + "#The motor resistance is 0.3 ohm.If this motor is connected across 230V,deduce the speed armature current characteristics.\n", + "############################################################################################################################\n", + "\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "#Given\n", + "V = 230 #V (Supply voltage)\n", + "r = 0.3 #ohm (Motor resistance)\n", + "\n", + "#Current Data Ia\n", + "i1 = 5.0 #A\n", + "i2 = 10.0 #A\n", + "i3 = 15.0 #A\n", + "i4 = 20.0 #A\n", + "i5 = 25.0 #A\n", + "i6 = 30.0 #A\n", + "i7 = 35.0 #A\n", + "i8 = 40.0 #A\n", + "\n", + "#Torque Data \n", + "tau1 = 20.0 #N-m\n", + "tau2 = 50.0 #N-m\n", + "tau3 = 100.0 #N-m\n", + "tau4 = 155.0 #N-m\n", + "tau5 = 215.0 #N-m\n", + "tau6 = 290.0 #N-m\n", + "tau7 = 360.0 #N-m\n", + "tau8 = 430.0 #N-m\n", + "\n", + "#Back EMF Eb = V - Ia*r\n", + "e1 = V - i1*r #V\n", + "e2 = V - i2*r #V\n", + "e3 = V - i3*r #V\n", + "e4 = V - i4*r #V\n", + "e5 = V - i5*r #V\n", + "e6 = V - i6*r #V\n", + "e7 = V - i7*r #V\n", + "e8 = V - i8*r #V\n", + "\n", + "\n", + "#Speed Na = 9.55*Eb*Ia/T\n", + "N1 = 9.55*e1*i1/tau1 #rpm\n", + "N2 = 9.55*e2*i2/tau2 #rpm\n", + "N3 = 9.55*e3*i3/tau3 #rpm\n", + "N4 = 9.55*e4*i4/tau4 #rpm\n", + "N5 = 9.55*e5*i5/tau5 #rpm\n", + "N6 = 9.55*e6*i6/tau6 #rpm\n", + "N7 = 9.55*e7*i7/tau7 #rpm\n", + "N8 = 9.55*e8*i8/tau8 #rpm\n", + "\n", + "print \"Speed-Armature current graph\"\n", + "\n", + "plt.plot([i1,i2,i3,i4,i5,i6,i7,i8], [N1,N2,N3,N4,N5,N6,N7,N8])\n", + "plt.axis([0,40,0,600])\n", + "plt.ylabel('Speed(in r.p.m)')\n", + "plt.xlabel('Armature current Ia(in A)')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.23 , PAGE NO :- 1737" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Speed - Torque Curve\n" + ] + }, + { + "data": { + "image/png": "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\n2B8TkscAAAAASUVORK5CYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x61bc230>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#The following figures give the magnetization curve of d.c. series motor when working as a seperately excited generator at 600 rpm.\n", + "#Field Current(amperes) : 20 40 60 80\n", + "#E.M.F(volts): 215 381 485 550\n", + "#The total resistance of the motor is 0.8 ohm.Deduce the speed-torque curve for this motor when operating at a constant voltage of\n", + "#600 volts.\n", + "################################################################################################################################\n", + "\n", + "#Given\n", + "V = 600.0 #V (Supply voltage)\n", + "r = 0.8 #ohm (total motor resistance)\n", + "\n", + "#Field Current Data(If=Ia)\n", + "i1 = 20.0 #A\n", + "i2 = 40.0 #A\n", + "i3 = 60.0 #A\n", + "i4 = 80.0 #A\n", + "\n", + "#E.M.F data at 600 rpm(E)\n", + "e1 = 215.0 #V\n", + "e2 = 381.0 #V\n", + "e3 = 485.0 #V\n", + "e4 = 550.0 #V\n", + "\n", + "#At constant voltage of 600V. EMF are Eb = V - Ia*Rm\n", + "eb1 = V - i1*r #V\n", + "eb2 = V - i2*r #V\n", + "eb3 = V - i3*r #V\n", + "eb4 = V - i4*r #V\n", + "\n", + "#For DC series motor N1/E1 = N2/E2 . Therefore N2 = N/E*Eb\n", + "n1 = 600/e1*eb1 #rpm\n", + "n2 = 600/e2*eb2 #rpm\n", + "n3 = 600/e3*eb3 #rpm\n", + "n4 = 600/e4*eb4 #rpm\n", + "\n", + "#Now, Torque T = 9.55*Eb*Ia/N2\n", + "tau1 = 9.55*eb1*i1/n1 #N-m\n", + "tau2 = 9.55*eb2*i2/n2 #N-m\n", + "tau3 = 9.55*eb3*i3/n3 #N-m\n", + "tau4 = 9.55*eb4*i4/n4 #N-m\n", + "\n", + "print \"Speed - Torque Curve\"\n", + "\n", + "plt.plot([tau1,tau2,tau3,tau4], [n1,n2,n3,n4])\n", + "#plt.axis([0,40,0,600])\n", + "plt.ylabel('Speed(in r.p.m)')\n", + "plt.xlabel('Torque T(in N-m)')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 43.24 , PAGE NO :- 1738" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Speed of both motors is = 447.87 rpm.\n", + "Voltage across motor A is = 256.35 V.\n", + "Voltage across motor B is = 243.65 V.\n" + ] + } + ], + "source": [ + "#Two d.c. traction motors run at a speed of 900 r.p.m and 950 r.p.m respectively when each takes a current of 50A from 500V mains.\n", + "#Each motor has an effective resistance of 0.3 ohm . Calculate the speed and voltage across each machine when mechanically coupled\n", + "#and electrically connected in series and taking a current of 50A from 500V mains,the resistance of each motor being unchanged.\n", + "#################################################################################################################################\n", + "from sympy import Eq,Symbol,solve\n", + "#Let the two motors be A and B .\n", + "Na = 900.0 #rpm (speed of motor A)\n", + "Nb = 950.0 #rpm (speed of motor B)\n", + "r = 0.3 #ohm (resistance of each motor)\n", + "V = 500.0 #V (applied voltage)\n", + "I = 50.0 #A (current)\n", + "\n", + "#Back emf of motor A when taking current of 50A,\n", + "Eb_a = V - I*r #V\n", + "#Back emf of motor B when taking current of 50A,\n", + "Eb_b = V - I*r #V\n", + "\n", + "#As the machines are mechanically coupled and are connected in series. Therefore,\n", + "#speed will be same. Say 'N'\n", + "#current will be same and equal to 50A\n", + "#summation of voltage drop is 500V\n", + "\n", + "N = Symbol('N') #rpm\n", + "#Let the voltage drop across motors be Va & Vb .Therefore,for Va & Vb we will find back emf of both motors\n", + "eb_A = Eb_a*N/Na #V (using N1/N2 = E1/E2)\n", + "eb_B= Eb_b*N/Nb #V (using N1/N2 = E1/E2)\n", + "\n", + "#For Va & Vb \n", + "Va = eb_A + I*r #V (using Eb = V - Ia*r)\n", + "Vb = eb_B + I*r #V (using Eb = V - Ia*r)\n", + "\n", + "#We know that Va + Vb = 500 . Therefore,\n", + "eq = Eq(Va+Vb,V)\n", + "N = solve(eq)\n", + "Ne = N[0]\n", + "\n", + "#As we know the speed N . Therefore, Va & Vb are\n", + "eb_A = Eb_a*Ne/Na #V (using N1/N2 = E1/E2)\n", + "eb_B= Eb_b*Ne/Nb #V (using N1/N2 = E1/E2)\n", + "\n", + "Va = eb_A + I*r #V (using Eb = V - Ia*r)\n", + "Vb = eb_B + I*r #V (using Eb = V - Ia*r)\n", + "\n", + "print \"Speed of both motors is = \",round(Ne,2),\"rpm.\"\n", + "print \"Voltage across motor A is = \",round(Va,2),\"V.\"\n", + "print \"Voltage across motor B is = \",round(Vb,2),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.25 , PAGE NO :- 1739" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current drawn by supply mains is = 138.32 A.\n" + ] + } + ], + "source": [ + "#A tram car is equipped with two motors which are operating in parallel.Calculate the current drawn from the supply main at 500 V\n", + "#when the car is running at steady speed of 50kmph and each motor is developing a tractive effort of 2100 N.The resistance of each \n", + "#motor is 0.4 ohm.The friction,windage and other losses may be assumed as 3500 watts per motor.\n", + "#################################################################################################################################\n", + "from sympy import Eq,Symbol,solve\n", + "\n", + "V = 500.0 #V (applied voltage)\n", + "Vm = 50.0 #km/h (max. speed)\n", + "Ft = 2100 #N (tractive effort)\n", + "Rm = 0.4 #ohm (motor resistance)\n", + "mloss = 3500.0 #W (losses per motor)\n", + "\n", + "#Power output of each motor\n", + "Pout = Ft*Vm*5.0/18 #W\n", + "#Copper loss = I^2*Rm\n", + "I = Symbol('I')\n", + "cu_loss = (I*I)*Rm #W\n", + "#Input power = Output power + constant losses + Copper losses\n", + "Pin = V*I #W\n", + "eq = Eq(Pin,Pout+mloss+cu_loss)\n", + "I = solve(eq) #A\n", + "#current drawn by motor is\n", + "Ie = I[0] #A\n", + "#Therefore,current drawn by supply mains\n", + "Ie = 2*Ie #A\n", + "print \"Current drawn by supply mains is =\",round(Ie,2),\"A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.26 , PAGE NO :- 1740" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Speed of first motor is = 217.17 rpm.\n", + "Speed of second motor is = 227.27 rpm.\n" + ] + } + ], + "source": [ + "#A motor coach is being driven by two identical d.c. series motors.First motor is geared to driving wheel having diameter of 90cm and\n", + "#other motor to driving wheel having diameter of 86cm.The speed of the first motor is 500 rpm when connected in parallel with the other\n", + "#across 600V supply.Find the motor speeds when connected in series across the same supply.Assume armature current to remain same and\n", + "#armature voltage drop of 10% at this current.\n", + "###############################################################################################################################\n", + "from sympy import Eq,Symbol,solve\n", + "#Given\n", + "V = 600.0 #V (applied voltage)\n", + "d1= 0.90 #m (diameter 1) \n", + "d2 = 0.86 #m (diameter 2) \n", + "N1 = 500.0 #rpm (Speed of first motor)\n", + "\n", + "Eb1 = V-0.1*V #V (Back emf)\n", + "\n", + "#Let the supply voltage across motor 1 & 2 be V1 and V2 respectively\n", + "#Therefore, V1 + V2 = 600\n", + "V1 = Symbol('V1') #V\n", + "V2 = V - V1 #V\n", + "\n", + "#Now , N is directly propotional to (V - IR).Therefore, ratio (N1/N2) is\n", + "\n", + "Nratio1 = (V1 - 0.1*V)/(V2 - 0.1*V)\n", + "\n", + "#Also, we know that N1*d1 = N2*d2 . Therefore (N1/N2) is\n", + "Nratio2 = d2/d1\n", + "\n", + "#As, N1/N2 = Nratio1 = Nratio2\n", + "eq = Eq(Nratio1,Nratio2)\n", + "V1 = solve(eq)\n", + "Ve1 = V1[0] #V\n", + "Ve2 = V - Ve1 #V\n", + "#Now , for the speed of motor 1, we know that for N1 ,back emf is Eb1 and for Ne1 ,back emf is (Ve1-0.1*Ve1)\n", + "Ne1 = N1*(Ve1 - 0.1*V)/Eb1 #rpm (using N1/N2 = E1/E2)\n", + "#Nratio is Ne1/Ne2 .Therefore,\n", + "Ne2 = Ne1/Nratio2 #rpm\n", + "\n", + "print \"Speed of first motor is =\",round(Ne1,2),\"rpm.\"\n", + "print \"Speed of second motor is =\",round(Ne2,2),\"rpm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 43.27 , PAGE NO :- 1741" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Speed of first motor is = 173.74 rpm.\n", + "Speed of second motor is = 181.82 rpm.\n" + ] + } + ], + "source": [ + "#Two similar series type motors are used to drive a locomotive.The supply fed to their parallel connection is 650V.If the first \n", + "#motor 'A' is geared to drive wheels of radius 45 cms and other motor 'B' to 43 cms.And if the speed of first motor 'A' when\n", + "#connected in parallel to 2nd motor 'B' across the main supply lines is 400 rpm,find voltages and speeds of motors when connected\n", + "#in series.Assume Ia to be constant and armature voltage drop of 10% at this current.\n", + "################################################################################################################################\n", + "\n", + "from sympy import Eq,Symbol,solve\n", + "#Given\n", + "V = 650.0 #V (applied voltage)\n", + "r1 = 0.45 #m (radius 1) \n", + "r2 = 0.43 #m (radius 2) \n", + "Na = 400.0 #rpm (Speed of first motor)\n", + "\n", + "Eb_a = V-0.1*V #V (Back emf)\n", + "\n", + "#Let the supply voltage across motor A & B be Va and Vb respectively\n", + "#Therefore, Va + Vb = 650.0 V\n", + "Va = Symbol('Va') #V\n", + "Vb = V - Va #V\n", + "\n", + "#Now , N is directly propotional to (V - IR).Therefore, ratio (N1/N2) is\n", + "\n", + "Nratio1 = (Va - 0.1*V)/(Vb - 0.1*V)\n", + "\n", + "#Also, we know that N1*r1 = N2*r2 . Therefore (N1/N2) is\n", + "Nratio2 = r2/r1\n", + "\n", + "#As, N1/N2 = Nratio1 = Nratio2\n", + "eq = Eq(Nratio1,Nratio2)\n", + "Va = solve(eq)\n", + "Vea = Va[0] #V\n", + "Veb = V - Vea #V\n", + "\n", + "#Now , for the speed of motor A, we know that for Na ,back emf is Eb_a and for Nea ,back emf is (Vea-0.1*Vea)\n", + "Nea = Na*(Vea - 0.1*V)/Eb_a #rpm (using N1/N2 = E1/E2)\n", + "#Nratio is Ne1/Ne2 .Therefore,\n", + "Neb = Nea/Nratio2 #rpm\n", + "\n", + "print \"Speed of first motor is =\",round(Nea,2),\"rpm.\"\n", + "print \"Speed of second motor is =\",round(Neb,2),\"rpm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 43.28 , PAGE NO :- 1744" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Time for which motors are operated in series = 8.44 s.\n", + "Energy loss during starting period = 480.01 W-h.\n" + ] + } + ], + "source": [ + "#Two motors of a motor coach are started on series-parallel system,the current per motor being 350A during the starting period\n", + "#which is 18 sec.If the acceleration during starting period is uniform,the line voltage is 600V and resistance of each motor is\n", + "#0.1W.Find (a)the time during which the motors are operated in series. (b)the energy loss in the rheostat during starting period.\n", + "#####################################################################################################################################\n", + "\n", + "#Given\n", + "V = 600.0 #V (line voltage)\n", + "I = 350.0 #A (current)\n", + "R = 0.1 #ohm (resistance)\n", + "T = 18.0 #s (starting period)\n", + "\n", + "#time for which motors are in series\n", + "ts = 0.5*(V-2*I*R)/(V-I*R)*T #s\n", + "\n", + "#time for which motors are in parallel\n", + "tp = T - ts #s\n", + "\n", + "#back emf of 1 motor during series operation\n", + "Eb_s = V/2 - I*R #V\n", + "#total back emf\n", + "Eb_s = 2*Eb_s #V\n", + "#Emf during parallel operation\n", + "Eb_p = V - I*R #V\n", + "\n", + "#Energy lost during series connection\n", + "enrgy_s = 0.5*(Eb_s)*I*ts/3600 #W-h\n", + "#Energy lost during parallel connection\n", + "enrgy_p = 0.5*(Eb_p/2)*(2*I)*tp/3600 #W-h\n", + "\n", + "#Total energy lost\n", + "enrgy_t = enrgy_s + enrgy_p #W-h\n", + "\n", + "print \"Time for which motors are operated in series = \",round(ts,2),\"s.\"\n", + "print \"Energy loss during starting period = \",round(enrgy_t,2),\"W-h.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.29 , PAGE NO :- 1749" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy lost in rheostat = 441.02 W-h.\n", + "Energy lost in motor = 75.0 W-h.\n", + "Motor output = 909.77 W-h.\n", + "Efficiency at starting = 69.07 %.\n", + "Train speed at which transition from series to parallel = 11.98 km/h.\n" + ] + } + ], + "source": [ + "#Two 750V D.C. series motors each having a resistance of 0.1 ohm are started on series-parallel system.Mean current through-out \n", + "#the starting period is 300A.Starting period is 15 sec. and train speed at the end of this period is 25 km/hr.Calculate\n", + "#(i)Rheostatic losses during series and parallel combination of motors\n", + "#(ii)Energy lost in motor\n", + "#(iii)Motor output\n", + "#(iv)Starting eff\n", + "#(v)Train speed at which transition from series to parallel must be made.\n", + "##############################################################################################################################\n", + "\n", + "V = 750.0 #V (applied voltage)\n", + "R = 0.1 #ohm (resistance)\n", + "I = 300.0 #A (current) \n", + "T = 15.0 #s (starting time)\n", + "S = 25.0 #km/h(speed after staring period)\n", + "\n", + "#Time when motors are in series\n", + "ts = 0.5*(V-2*I*R)/(V-I*R)*T #s\n", + "#Time when motors are in parallel\n", + "tp = T - ts #s\n", + "\n", + "#(i)Energy lost in rheostat\n", + "enrgy_lostr = 0.5*(2*(V/2-I*R))*I*ts + 0.5*(V-I*R)/2*2*I*tp #W-s\n", + "enrgy_lostr = enrgy_lostr/3600 #W-h\n", + "\n", + "#(ii)Total energy supplied\n", + "enrgy_supp = V*I*ts + 2*V*I*tp #W-s\n", + "enrgy_supp = enrgy_supp/3600 #W-h\n", + "\n", + "#Energy lost in armature of 2 motors\n", + "enrgy_losta = 2*(I*I*R)*T\n", + "enrgy_losta = enrgy_losta/3600 #W-h\n", + "\n", + "#Motor output is\n", + "outp = enrgy_supp - enrgy_lostr - enrgy_losta #W-h\n", + "\n", + "#Efficiency at starting\n", + "eff_s = (enrgy_supp-enrgy_lostr)/(enrgy_supp)*100\n", + "\n", + "#Acceleraton is uniform during starting period .Therefore,\n", + "speed = S/T*ts #km/h\n", + "print \"Energy lost in rheostat = \",round(enrgy_lostr,2),\"W-h.\"\n", + "print \"Energy lost in motor = \",round(enrgy_losta,2),\"W-h.\"\n", + "print \"Motor output =\",round(outp,2),\"W-h.\"\n", + "print \"Efficiency at starting =\",round(eff_s,2),\"%.\"\n", + "print \"Train speed at which transition from series to parallel = \",round(speed,2),\"km/h.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.30 , PAGE NO :- 1750" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy loss in series = 213.16 W-h.\n", + "Energy loss in parallel = 263.16 W-h.\n", + "The transition speed = 14.21 km/h.\n" + ] + } + ], + "source": [ + "#Two 600V motors each having a resistance of 0.1 ohm are started on the series-parallel system,the mean current per motor throughout\n", + "#the starting period being 300A.The starting period is 20 seconds and the train speed at the end of this period is 30km per hour.\n", + "Calculate\n", + "#(i)the rheostatic losses during (a)the series and (b) the parallel combination of motors\n", + "#(ii)the train speed at which transition from series to parallel must be made.\n", + "###############################################################################################################################\n", + "\n", + "num_m = 2 # (number of motors)\n", + "V = 600.0 #V (line voltage)\n", + "I = 300.0 #A (current per motor)\n", + "Ts = 20.0 #s (starting period)\n", + "R = 0.1 #ohm (motor resistance)\n", + "Vm = 30.0 #km/h (maximum speed)\n", + "\n", + "#Back emf of each motor in series position,\n", + "Eb_s = V/2 - I*R #V\n", + "#Back emf of each motor in parallel position,\n", + "Eb_p = V - I*R #V\n", + "#time for which motors were in series\n", + "ts = Ts*Eb_s/Eb_p #s\n", + "#time for which motors are in parallel\n", + "tp = Ts - ts #s\n", + "\n", + "#(a) Voltage drop in the starting rheostat in series combination\n", + "V_s = V - 2*I*R #V\n", + "#Energy loss in series is\n", + "enrgy_s = (V_s/2)*I*(ts/3600) #W-h\n", + "#(b) Voltage drop in the starting rheostat in parallel combination\n", + "V_p = V/2 #V\n", + "#Energy loss in parallel is\n", + "enrgy_p = (V_p/2)*(2*I)*(tp/3600)\n", + "\n", + "#Acceleration is\n", + "acc = Vm/Ts #km/h/s\n", + "#Speed at the end of series period\n", + "speed = acc*ts #km/h\n", + "\n", + "print \"Energy loss in series =\",round(enrgy_s,2),\"W-h.\"\n", + "print \"Energy loss in parallel =\",round(enrgy_p,2),\"W-h.\"\n", + "print \"The transition speed = \",round(speed,2),\"km/h.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.31 , PAGE NO :- 1751" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Period of series operation = 11.36 s.\n", + "Period of parallel operation = 13.64 s.\n", + "Speed at which series connection are to be changed = 36.36 km/h.\n" + ] + } + ], + "source": [ + "#Two d.c. series motors of a motor coach have resistance of 0.1ohm each.These motors draw a current of 500A from 600V mains during\n", + "#series-parallel starting period of 25 seconds.If the acceleration during starting period remains uniform,determine:\n", + "#(i)time during which the motors operate in (a)series (b)parallel.\n", + "#(ii)the speed at which the series connections are to be changed if the speed just after starting period is 80kmph.\n", + "####################################################################################################################################\n", + "\n", + "\n", + "num_m = 2 # (number of motors)\n", + "V = 600.0 #V (line voltage)\n", + "I = 500.0 #A (current per motor)\n", + "Ts = 25.0 #s (starting period)\n", + "R = 0.1 #ohm (motor resistance)\n", + "Vm = 80.0 #km/h (maximum speed)\n", + "\n", + "#Back emf of each motor in series position,\n", + "Eb_s = V/2 - I*R #V\n", + "#Back emf of each motor in parallel position,\n", + "Eb_p = V - I*R #V\n", + "#time for which motors were in series\n", + "ts = Ts*Eb_s/Eb_p #s\n", + "#time for which motors are in parallel\n", + "tp = Ts - ts #s\n", + "\n", + "#(ii) Speed at which series connection are to be changed = acc*ts and acc = Vm/Ts.Therefore,\n", + "speed = Vm/Ts*ts #km/h\n", + "\n", + "print \"Period of series operation = \",round(ts,2),\"s.\"\n", + "print \"Period of parallel operation = \",round(tp,2),\"s.\"\n", + "print \"Speed at which series connection are to be changed = \",round(speed,2),\"km/h.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 43.32 , PAGE NO :- 1751" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Braking torque = 930.0 N-m.\n" + ] + } + ], + "source": [ + "#The following figures refer to the speed-current and torque-current characteristics of a 600V d.c. series traction motor.\n", + "#Current(A) : 50 100 150 200 250\n", + "#Speed(Kmph): 73.6 48 41.1 37.3 35.2\n", + "#Torque(N-m): 150 525 930 1335 1750\n", + "#Determine the braking torque at a speed of 48kmph when operating as self excited d.c. generator.Assume resistance of motor and\n", + "#braking rheostat to be 0.6 ohm and 3.0 ohm respectively.\n", + "#############################################################################################################################\n", + "\n", + "Rm = 0.6 #ohm(resistance of motor)\n", + "Rrh = 3.0 #ohm(braking rheostat)\n", + "\n", + "#As a motor\n", + "V = 600.0 #V (terminal voltage)\n", + "#From speed-current characteristics . For a speed of 48kmph,\n", + "I = 100.0 #A (current)\n", + "Eb = V - I*Rm #V (back emf)\n", + "\n", + "#As a generator\n", + "\n", + "#At instant of applying rheostatic braking ,the terminal voltage will be equal to emf developed by machine i.e\n", + "V2 = Eb #V\n", + "Rt = Rm + Rrh #ohm (total resistance)\n", + "\n", + "#Using V=IR\n", + "I2 = V2/Rt #A (current)\n", + "\n", + "if (I2==50):\n", + " tau = 150.0 #N-m\n", + "elif (I2==100):\n", + " tau = 525.0 #N-m\n", + "elif (I2==150):\n", + " tau = 930.0 #N-m\n", + "elif (I2==200):\n", + " tau = 1335.0 #N-m\n", + "elif (I2==250):\n", + " tau = 1750.0 #N-m\n", + "\n", + "print \"Braking torque = \",round(tau,2),\"N-m.\" " + ] + } + ], + "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.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter44.ipynb b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter44.ipynb new file mode 100644 index 00000000..7c8aa53c --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter44.ipynb @@ -0,0 +1,947 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# CHAPTER 44 : INDUSTRIAL APPLICATIONS OF ELECTRIC MOTORS " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.1 , PAGE NO :- 1769" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total annual cost in group drive = RS. 11000.0\n", + "Total annual cost in individual drive = RS. 11400.0\n", + "Hence,Individual drive is costlier than group drive.\n" + ] + } + ], + "source": [ + "'''A motor costing Rs. 10,000 is used for group drive in a certain installation.How will its total annual cost compare with\n", + "the case where four individuals motors each costing Rs. 4000 were used? With group drive,the energy consumption is\n", + "50MWh whereas it is 45MWh for individual drive.The cost of electric energy is 20 paise/kWh.Assume depriciation,\n", + "maintenance and other fixed charges at 10% in the case of group drive and 15 percent in the case of individual drive.'''\n", + "\n", + "\n", + "#Group drive\n", + "cost_g = 10000.0 #Rs (Capital cost)\n", + "other_g = 0.1*cost_g #Rs (Annual depriciation,maintenance and other charges)\n", + "enrgy_g = 50.0*1000*20/100.0 #Rs (Annual cost of energy)\n", + "total_g = enrgy_g + other_g #Rs (total annual cost)\n", + "\n", + "#Individual drive\n", + "cost_i = 4*4000.0 #Rs (Capital cost)\n", + "other_i = 0.15*cost_i #Rs (Annual depriciation,maintenance and other charges)\n", + "enrgy_i = 45.0*1000*20/100.0 #Rs (Annual cost of energy)\n", + "total_i = enrgy_i + other_i #Rs (total annual cost)\n", + "print \"Total annual cost in group drive = RS.\",total_g\n", + "print \"Total annual cost in individual drive = RS.\",total_i\n", + "print \"Hence,Individual drive is costlier than group drive.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.2 , PAGE NO :- 1775 " + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Additional resistance = 5.7 ohm.\n", + "Initial braking Torque = 955.41 N-m.\n", + "Torque at 360 rpm = 766.53 N-m.\n" + ] + } + ], + "source": [ + "'''A 40-kW,440-V,d.c shunt motor is braked by plugging.Calculate(i)the value of resistance that must be placed in series with the\n", + "armature circuit to limit the initial braking current to 150A (ii)the braking torque and(iii)the torque when motor speed falls\n", + "to 360 rpm. Armature resistance Ra = 0.1 ohm,ful-load Ia=100A,full-load speed=600 rpm.'''\n", + "\n", + "V = 440.0 #V (applied voltage)\n", + "Ib = 150.0 #A (initial braking current)\n", + "Ra = 0.1 #ohm (armature resistance)\n", + "Ia = 100.0 #A (armature current)\n", + "N1 = 600.0 #rpm (full load speed)\n", + "N2 = 360.0 #rpm (decreased speed)\n", + "Eb = V - Ia*Ra #V (back emf)\n", + "#Voltage across the armature at the start of braking\n", + "V2 = V + Eb #V\n", + "#(i)Since initial braking current is limited to 150A,total armature circuit resistance required is\n", + "Rt = V2/Ib #ohm\n", + "#Therefore additional resistance R is\n", + "R = Rt - Ra #ohm\n", + "#(ii)For a shunt motor,Torque(Tb) is propotional to Ia\n", + "Tb = 40*1000/(2*3.14*600/60) #N/m\n", + "# .'. Initial braking torque/full-load torque = initial braking current/full-load current\n", + "\n", + "T_ini = Tb*(Ib/Ia) #N/m\n", + "#(iii)The decrease in Eb is directly propotional to decrease in motor speed\n", + "Eb_360 = Eb*(N2/N1) #V\n", + "Ia_360 = (V+Eb_360)/Rt #A\n", + "Tb_360 = Tb*(Ia_360/Ia) #N-m\n", + "\n", + "print \"Additional resistance = \",R,\"ohm.\"\n", + "print \"Initial braking Torque = \",round(T_ini,2),\"N-m.\"\n", + "print \"Torque at 360 rpm = \",round(Tb_360,2),\"N-m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.3 , PAGE NO :- 1776" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Plugging torque = 131.92 N-m.\n" + ] + } + ], + "source": [ + "'''A 30-kW,400-V,3-phase,4 pole,50-Hz induction motor has full-load slip of 5%.If the ratio of standstill reactance to resistance\n", + "per motor phase is 4 ,estimating the plugging torque at full speed.'''\n", + "\n", + "Power = 30.0 #kW (power consumed)\n", + "f = 50.0 #Hz (frequency)\n", + "P = 4 # (pole)\n", + "s1 = 0.05 # (slip)\n", + "Ns = 120*f/P #rpm (Synchronus speed)\n", + "Nf = Ns*(1-s1) #rpm (Full-load speed)\n", + "Tf = Power*1000/(2*3.14*Nf/60) #N-m (Full-load torque)\n", + "R1_X1 = 4.0 \n", + "\n", + "# As T is propotional to (s*R2*E2^2)/(R2^2 + s^2*X2^2) i.e (T2/T1) = (s2/s1)*(1+s1^2(X2/R2)^2/1+s2^2(X2/R2)^2)\n", + "s2 = 2-s1\n", + "Tp = (s2/s1)*(1 +(R1_X1)*(R1_X1)*s1*s1)/(1 +(R1_X1)*(R1_X1)*s2*s2)*Tf\n", + "print \"Plugging torque = \",round(Tp,2),\"N-m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.4 , PAGE NO :- 1780" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hence,energy returned to supply lines = 43.43 kWh.\n" + ] + } + ], + "source": [ + "'''A 500 tonne electric trains travel down a descending gradient of 1 in 80 for 90 seconds during which period its speed is\n", + "reduced from 100 km/h to 60 km/h by regenerative braking.Compute the energy returned to the lines of kWh if tractive\n", + "resistance = 50N/t;allowance for rotational inertia = 10%;overall efficiency of the system = 75%.'''\n", + "\n", + "\n", + "G = 1/80.0*100 # (percent gradient)\n", + "M = 500.0 #tonne (electric train)\n", + "Me_M = 1.1 # (ratio of rotational mass to stationary mass)\n", + "V1 = 100.0 #km/h (initial speed)\n", + "V2 = 60.0 #km/h (decreased speed)\n", + "t = 90.0 #s (braking period)\n", + "r = 50.0 #N/t (tractive resistance)\n", + "eff = 0.75 # (efficiency)\n", + "d = (V1+V2)/2*t/3600\n", + "#Hence,energy returned to supply line is\n", + "enrgy = 0.75*(0.01072*(Me_M)*(V1*V1 - V2*V2) + d*(27.25*G - 0.2778*r)) #Wh/tonne\n", + "enrgy = enrgy*500/1000.0 #kWh\n", + "print \"Hence,energy returned to supply lines =\",round(enrgy,2),\"kWh.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.5 , PAGE NO :- 1780" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power returned to line = 509.0 kW.\n" + ] + } + ], + "source": [ + "'''A 350-t electric train has its speed reduced by regenerative braking from 60 to 40km/h over a distance of 2km along down gradient\n", + "of 1.5%.Calculate (i)electrical energy and (ii)average power returned to the line.Assume specific train resistance = 50 N/t;rotational\n", + "inertia effect = 10% ; conversion efficency of the system = 75%.'''\n", + "\n", + "\n", + "M = 350.0 #tonne (Mass of train)\n", + "eff = 0.75 # (efficiency)\n", + "V1 = 60.0 #km/h (initial speed)\n", + "V2 = 40.0 #km/h (final speed)\n", + "Me = 1.1*M # (rotational mass )\n", + "G = 1.5 # (percent gradient)\n", + "d = 2.0 #km (distance)\n", + "r = 50.0 #N/t (train resistance)\n", + "\n", + "#Energy returned to line is\n", + "enrgy = eff*(0.01072*Me/M*(V1*V1 - V2*V2) + d*(27.25*G - 0.2778*r)) #Wh/t\n", + "enrgy = enrgy*M/1000 #kWh\n", + "\n", + "#(ii)\n", + "\n", + "speed = (V1+V2)/2 #km/h (Average speed)\n", + "time = d/speed #h (time taken)\n", + "\n", + "power = enrgy/time #kW (power returned)\n", + "\n", + "print \"Power returned to line =\",round(power),\"kW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.6 , PAGE NO :- 1780" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power fed to line = 424.38 kW.\n" + ] + } + ], + "source": [ + "'''If in Example 44.5,regenerative braking is applied in such a way that train speed on down gradient remains constant\n", + "at 60 km/h,what would be the power fed into the line?'''\n", + "\n", + "\n", + "M = 350.0 #tonne (Mass of train)\n", + "G = 1.5 # (percent gradient)\n", + "r = 50.0 #N/t (train resistance)\n", + "V = 60.0 #km/h (speed)\n", + "eff = 0.75\n", + "#In down-gradient motors act as generators .Force generated\n", + "Ft = 98*M*G - M*r #N\n", + "#Power that can be recuperated is\n", + "P = Ft*(1000.0/3600)*V #W\n", + "#Power actually sent to line\n", + "P = eff*P/1000 #kW\n", + "print \"Power fed to line = \",round(P,2),\"kW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.7 , PAGE NO :- 1780 " + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power fed = 650.0 kW.\n" + ] + } + ], + "source": [ + "'''A train weighing 500 tonne is going down a gradient of 20 in 1000.It is desired to maintain train speed at 40 km/h by regenerative\n", + "braking.Calculate the power fed into the line.Tractive resistance is 40 N/t and allow rotational inertia of 10% and efficiency\n", + "of conversion of 75%.'''\n", + "\n", + "M = 500.0 #tonne (Mass of train)\n", + "G = 20/1000.0*100 # (percent gradient)\n", + "r = 40.0 #N/t (Tractive resistance)\n", + "V = 40.0 #km/h (speed)\n", + "eff = 0.75 # (efficiency) \n", + "#Tractive Force when motors are driven as generators is\n", + "Ft = 98*M*G - M*r #N\n", + "#Power that can be drawn is\n", + "P = 0.2778*Ft*V #W\n", + "#Power actually fed\n", + "P = eff*P/1000 #kW\n", + "print \"Power fed = \",round(P,0),\"kW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.8 , PAGE NO :- 1781" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Additional resistance = 1.94 ohm.\n", + "Initial braking torque = 1042.27 N-m.\n", + "Braking torque at 200rpm = 719.84 N-m.\n" + ] + } + ], + "source": [ + "'''A 250V d.c shunt motor,taking an armature current of 150 A and running at 550 r.p.m is braked by reversing the connections to the\n", + "armature and inserting additional resistance in series with it.Calculate:\n", + "(a)the value of series resistance required to limit the initial current to 240A.\n", + "(b)the initial value of braking torque.\n", + "(c)the value of braking torque when the speed has fallen to 200 r.p.m.\n", + "The armature resistance is 0.09 ohm.Neglect winding friction and iron losses.'''\n", + "\n", + "V = 250.0 #V (applied voltage)\n", + "Ia = 150.0 #A (armature current)\n", + "Ib = 240.0 #A (initial braking current)\n", + "N = 550.0 #rpm (speed)\n", + "N2 = 200.0 #rpm (decreased speed) \n", + "Ra = 0.09 #ohm \n", + "#Induced emf at full-load\n", + "Eb = V - Ia*Ra #V\n", + "#Voltage across the armature at braking\n", + "Vb = V + Eb #V\n", + "#Resistance to limit the current to 240A\n", + "Rt = Vb/240 #ohm\n", + "#Resistance to be added in the circuit\n", + "R = Rt - Ra #ohm\n", + "\n", + "#(ii)\n", + "Tf = V*Ia/(2*3.14*N/60) #N-m (Full load torque)\n", + "# Initial braking torque/full-load torque = initial braking current/full-load current\n", + "\n", + "T_ini = Tf*(Ib/Ia) #N-m (initial braking torque)\n", + "\n", + "Eb_200 = Eb*N2/N #V (Back emf at 200 rpm)\n", + "Ia_200 = (V + Eb_200)/Rt #A (Current drawn at 200 rpm)\n", + "Tb_200 = Tf*Ia_200/Ia #N-m\n", + "\n", + "print \"Additional resistance = \",round(R,2),\"ohm.\"\n", + "print \"Initial braking torque = \",round(T_ini,2),\"N-m.\"\n", + "print \"Braking torque at 200rpm = \",round(Tb_200,2),\"N-m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.9 , PAGE NO :- 1781" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Starting torque Ts = 0.25 *Tfl.\n" + ] + } + ], + "source": [ + "'''A 400V 3-phase squirrel cage induction motor has a full load slip of 4%.A stand-still impedance of 1.54 ohm and the full load current\n", + "equal to 30A.The maximum starting current which may be taken from line is 75A.What taping must be provided on an auto-transformer starter\n", + "to limit the current to this value and what would be the starting torque available in terms of full-load torque ?'''\n", + "\n", + "import math as m\n", + "from sympy import Eq,solve,Symbol\n", + "\n", + "#considering Transformer action V2/V1 = I1/I2 = X\n", + "V1 = 400.0/(m.sqrt(3)) #V (applied voltage)\n", + "I1 = 75.0 #A (max starting current)\n", + "Z = 1.54 #ohm (impedance)\n", + "X = Symbol('X')\n", + "I2 = I1/X #A\n", + "V2 = Z*I2 #V\n", + "eq = Eq(V1*I1,V2*I2)\n", + "X = solve(eq) \n", + "X1 = X[1] #ohm\n", + "\n", + "I2 = I1/X1 #A\n", + "sfl = 0.04 # (full-load slip)\n", + "Ifl = 30.0 #A (full-load current)\n", + "\n", + "#Ts/Tfl = X^2*(Is/Ifl)^2*sfl\n", + "\n", + "Ts_Tfl = (X1*X1)*(I2/Ifl)*(I2/Ifl)*sfl # (Ts/Tfl)\n", + "print \"Starting torque Ts = \",round(Ts_Tfl,2),\"*Tfl.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.10 , PAGE NO :- 1782" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Additional resistance(constant torque) = 1.02 ohm.\n", + "Additional resistance(torque propotional to speed square) = 1.77 ohm.\n" + ] + } + ], + "source": [ + "'''A 220V,10 HP shunt motor has field and armature resistances of 122ohm and 0.3ohm respectively.Calculate the resistance to be\n", + "inserted in the armature circuit to reduce the speed to 80% assuming motor efficiency at full load to be 80%.\n", + "(a)When torque is to remain constant.\n", + "(b)When torque is propotional to square of the speed.'''\n", + "\n", + "\n", + "V = 220.0 #V (applied voltage)\n", + "Rf = 122.0 #ohm (field resistance)\n", + "Ra = 0.3 #ohm (armature resistance)\n", + "\n", + "If = V/Rf #A (field current)\n", + "\n", + "m_out = 10*746 #W (motor output)\n", + "m_in = m_out/0.8 #W (motor input)\n", + "Il = m_in/V #A (line current)\n", + "\n", + "Ia = Il - If #A (armature current)\n", + "\n", + "Eb1 = V - Ia*Ra #V (back emf)\n", + "\n", + "#As flux is constant N2/N1 = Eb2/Eb1 and N2 = N1*0.8\n", + "\n", + "Eb2 = Eb1*0.8 #V (back emf at reduced speed)\n", + "\n", + "#(a) Torque remains constant ,hence Ia remains constant .Using Eb2 = V - Ia*R\n", + "Rt = (V-Eb2)/Ia #ohm (Total resistance required)\n", + "\n", + "#Therefore, additional resistance is\n", + "R = Rt - Ra #ohm\n", + "print \"Additional resistance(constant torque) = \",round(R,2),\"ohm.\"\n", + "\n", + "#(b) As (T2/T1) = (N2/N1)^2 and (T2/T1) = (Ia2/Ia1)\n", + "\n", + "T2_T1 = (0.8)*(0.8) # (T2/T1)\n", + "\n", + "Ia2 = Ia*T2_T1 #A (Changed armature current)\n", + "\n", + "#(b) Using Eb2 = V - Ia*R\n", + "Rt = (V-Eb2)/Ia2 #ohm (Total resistance required)\n", + "\n", + "\n", + "#Therefore, additional resistance is\n", + "R = Rt - Ra #ohm\n", + "print \"Additional resistance(torque propotional to speed square) = \",round(R,2),\"ohm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.11 , PAGE NO :- 1783" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Initial braking torque = 713.33 N-m.\n", + "Electric braking torque at 1/2 speed = 539.96 N-m.\n" + ] + } + ], + "source": [ + "'''A 37.5 HP, 220V DC shunt motor with a full load speed of 535 rpm is to be braked by plugging.Estimate the value of resistance \n", + "which should be placed in series with it to limit the initial braking current to 200 A.What would be the initial value of the\n", + "electric braking torque and the value when the speed had fallen to half its full load value?Armature resistance of motor is \n", + "0.086 ohm and full load armature current is 140A.'''\n", + "\n", + "V = 220.0 #V (applied voltage)\n", + "Ia = 140.0 #A (full-load armature current)\n", + "Ra = 0.086 #ohm (armature resistance)\n", + "Ib = 200.0 #A (braking current)\n", + "P = 37.5*746 #W (Power)\n", + "N = 535.0 #rpm (Speed)\n", + "Eb = V - Ia*Ra #V (Back emf)\n", + "#Total voltage during braking\n", + "Vb = Eb + V #V\n", + "\n", + "#Total resistance required is (using R = V/I)\n", + "Rt = Vb/Ib #ohm\n", + "Rt = round(Rt,2) #ohm\n", + "#Therefore,additional resistance required is\n", + "R = Rt - Ra #ohm\n", + "#We know that P = Torque*w where w is\n", + "w = 2*3.1416*N/60 #rad/s (angular velocity)\n", + "Tfl = P/w #N-m (full-load torque)\n", + "#As torque is propotional to I\n", + "#(Initial braking torque/Initial braking current) = (Full load torque/Full load current)\n", + "T_ini = Tfl*(Ib/Ia) #N-m (Initial braking torque)\n", + "\n", + "#As speed is propotional to back emf\n", + "Eb_2 = Eb/2 #V (Back emf at 1/2 speed)\n", + "Ib_2 = (V+Eb_2)/Rt #A (initial braking current at 1/2 speed)\n", + "\n", + "T_ini2 = Tfl*(Ib_2/Ia) #N-m (Initial braking torque at 1/2 speed)\n", + "print \"Initial braking torque = \",round(T_ini,2),\"N-m.\"\n", + "print \"Electric braking torque at 1/2 speed = \",round(T_ini2,2),\"N-m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 44.12 , PAGE NO :- 1783" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Speed when torque is constant is = 600.61 rpm.\n", + "Speed when torque is propotional to speed square = 546.14 rpm.\n" + ] + } + ], + "source": [ + "'''A 500V series motor having armature and field resistances of 0.2 and 0.3 ohm runs at 500 rpm when taking 70A.Assumimg unsaturated\n", + "field find out its speed when field diverter of 0.648 ohm is used for following load whose torque\n", + "(a) remains constant\n", + "(b) varies as square of speed '''\n", + "\n", + "\n", + "from sympy import Eq,solve,Symbol\n", + "V = 500.0 #V (applied voltage)\n", + "Ra = 0.2 #ohm (armature resistance)\n", + "Rf = 0.3 #ohm (field resistance)\n", + "N1 = 500.0 #rpm (speed)\n", + "Ia = 70.0 #A (armature current)\n", + "Rd = 0.684 #ohm (diverter resistance)\n", + "Eb1 = V - Ia*(Ra + Rf) #V (Back emf)\n", + "\n", + "#(a)Let Ia2 be armature current when diverter is used\n", + "\n", + "Ia2 = Symbol('Ia2')\n", + "\n", + "#Now If2 (field current when diverter is used) is\n", + "If2 = Ia2*Rd/(Rf+Rd)\n", + "\n", + "#As Torque is constant Ia1*(Flux1) = Ia2*(Flux2) Also,Ia1=If1 is propotional to (flux1)\n", + "eq = Eq(Ia*Ia/If2-Ia2,0)\n", + "Ia2 = solve(eq) \n", + "Ia_2 = Ia2[1] #A (Armature current when diverter is used)\n", + "\n", + "If2 = Ia_2*Rd/(Rf+Rd) #A (field current when diverter is used)\n", + "\n", + "#Resistance of field with diverter\n", + "Rfd = Rf*Rd/(Rf+Rd) #ohm\n", + "#Total resistance\n", + "Rt = Rfd + Ra #ohm\n", + "\n", + "Eb2 = V - Ia_2*Rt #V (Back emf when diverter is used)\n", + "\n", + "#Now, (N1/N2) = (Eb1*flux1/Eb2*flux2) and flux is propotional to If\n", + "N2 = (Eb2/Eb1)*N1*(Ia/If2) #rpm\n", + "print \"Speed when torque is constant is = \",round(N2,2),\"rpm.\"\n", + "####################################################################################\n", + "\n", + "#(B)Let Ia22 be armature current when diverter is used\n", + "#Now, (N1/N2)^2 = T1/T2 As (T1/T2) = Ia1*Ia1/(Ia2*If2)\n", + "\n", + "Ia22 = Symbol('Ia22')\n", + "#Now If2 (field current when diverter is used) is\n", + "If2 = Ia22*Rd/(Rf+Rd)\n", + "\n", + "N1_N2a = Ia*Ia/(Ia22*If2) #N1_N2a -> (N1/N2)^2\n", + "#Also, N1/N2 = Eb1*flux2/(Eb2*flux1)\n", + "N1_N2b = Eb1*If2/((V - Ia22*Rt)*Ia) #N1_N2b -> (N1/N2)\n", + "\n", + "eq = Eq(N1_N2a,N1_N2b*N1_N2b)\n", + "Ia22 = solve(eq)\n", + "Ia_22 = Ia22[1] #A (Armature current when diverter is used)\n", + "\n", + "If2 = Ia_22*Rd/(Rf+Rd)\n", + "N1_N2b = Eb1*If2/((V - Ia_22*Rt)*Ia) \n", + "#Using equation of N1_N2b = N1/N2\n", + "N2 = N1/N1_N2b #rpm\n", + "\n", + "print \"Speed when torque is propotional to speed square = \",round(N2,2),\"rpm.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 44.13 , PAGE NO :- 1784 " + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Additonal resistance required is = 5.9 ohm.\n" + ] + } + ], + "source": [ + "'''A 200V series motor runs at 1000 rpm and takes 20A . Armature and field resistance is 0.4 ohm.Calculate the\n", + "resistance to be inserted in series so as to reduce the speed to 800 rpm,assuming torque to vary as cube of the\n", + "speed and unsaturated field.'''\n", + "\n", + "from sympy import Eq,Symbol,solve\n", + "\n", + "V = 200.0 #V (applied voltage)\n", + "N1 = 1000.0 #rpm (speed 1)\n", + "Raf = 0.4 #ohm (armature and field resistance)\n", + "N2 = 800.0 #rpm (speed 2)\n", + "Ia1 = 20.0 #A (armature current)\n", + "\n", + "\n", + "#Given, T1/T2 = (N1/N2)^3\n", + "\n", + "T1_T2a = (N1/N2)*(N1/N2)*(N1/N2) # (Ratio T1/T2)\n", + "\n", + "#Also T1/T2 = Ia1*flux1/Ia2*flux2 and Ia is propotional to flux\n", + "#Let Ia2 be armature current when speed is 800 rpm.\n", + "\n", + "Ia2 = Symbol('Ia2')\n", + "T1_T2b = Ia1*Ia1/(Ia2*Ia2)\n", + "eq = Eq(T1_T2a,T1_T2b)\n", + "Ia2 = solve(eq)\n", + "Ia_2 = Ia2[1] #A (armature current 2)\n", + "\n", + "Eb1 = V - Ia1*Raf #V (Back emf 1)\n", + "\n", + "#As Eb1/Eb2 = N1*I1/(N2*I2).Therefore Back emf 2 is\n", + "Eb2 = Eb1*(N2/N1)*(Ia_2/Ia1) #V (Back emf 2)\n", + "\n", + "#Also Eb2 = V - Ia2*Rt .Therefore total resistance required is\n", + "Rt = (V - Eb2)/Ia_2 #ohm\n", + "#Therefore,additional resistance required is\n", + "R = Rt - Raf #ohm\n", + "print \"Additonal resistance required is = \",round(R,2),\"ohm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 44.14 , PAGE NO :- 1785" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Speed at which torque is 75% of initial value = 242.79 rpm.\n" + ] + } + ], + "source": [ + "'''A 220V,500 rpm DC shunt motor with an armature resistance of 0.08 ohm and full load armature current of 150A is to be braked by \n", + "plugging.Estimate the value of resistance which is to be placed in series with the armature to limit initial braking current to\n", + "200A.What would be the speed at which the electric braking torque is 75% of its initial value.'''\n", + "\n", + "from sympy import Eq,solve,Symbol\n", + "\n", + "V = 220.0 #V (applied voltage)\n", + "N1 = 500.0 #rpm (speed 1)\n", + "Ra = 0.08 #ohm (armature resistance)\n", + "Ia = 150.0 #A (armature current)\n", + "Ib = 200.0 #A (initial braking current)\n", + "\n", + "\n", + "Eb1 = V - Ia*Ra #V (Back emf) \n", + "#Voltage across armature when braking starts\n", + "Vb = V + Eb1 #V\n", + "\n", + "#Resistance in armature circuit\n", + "Rt = Vb/Ib #ohm \n", + "#Additional resistance required\n", + "R = Rt - Ra #ohm \n", + "#Since field flux is constant therefore 75% torque is produced when armature current is 75% of Ib.\n", + "#As (Eb1/Eb2) = (N1/N2)\n", + "N2 = Symbol('N2') #rpm\n", + "Eb2 = Eb1*(N2/N1) #V\n", + "\n", + "#Voltage across armature when braking starts is V1=V2 =>\n", + "V1 = (0.75*Ib)*Rt #V\n", + "V2 = V + Eb2 #V\n", + "eq = Eq(V1,V2)\n", + "N2 = solve(eq) #rpm\n", + "N_2 = N2[0] #rpm\n", + "print \"Speed at which torque is 75% of initial value =\",round(N_2,2),\"rpm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 44.15 , PAGE NO :- 1785" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Speed of motor with the shunted armature connection = 986.07 rpm.\n", + "Series motor can't be started on no-load.\n" + ] + } + ], + "source": [ + "'''A D.C series motor operating at 250V D.C mains and draws 25A and runs at 1200 rpm Ra = 0.1 ohm and Rs = 0.3 ohm.A resistance of\n", + "25 ohm is placed in parallel with the armature of motor.Determine:\n", + "(i)The speed of motor with the shunted armature connection,if the magnetic circuit remains unsaturated and the load torque remains\n", + "constant.\n", + "(ii)No load speed of motor.'''\n", + "\n", + "from sympy import Eq,Symbol,solve\n", + "\n", + "V = 250.0 #V (applied voltage)\n", + "Ia = 25.0 #A (armature current)\n", + "N1 = 1200.0 #rpm (speed)\n", + "Ra = 0.1 #ohm (armature resistance)\n", + "Rse = 0.3 #ohm (series field resistance)\n", + "Rd = 25.0 #ohm (diverter resistance)\n", + "\n", + "#Let I2 flow from series winding , Ia2 be new armature current and Id be diverter current\n", + "\n", + "I2 = Symbol('I2')\n", + "Vd = V - Rse*I2 #V (Voltage across diverter)\n", + "Id = Vd/Rd #A (V=IR) \n", + "Ia2 = I2 - Id #A (new armature current)\n", + "\n", + "#AS T is constant, (flux1)*Ia1 = (flux2)*Ia2\n", + "\n", + "eq = Eq(Ia*Ia,(I2)*Ia2) # As, flux1/flux2 = Ia/I2\n", + "I2 = solve(eq)\n", + "I_2 = I2[1] #A (current through series winding)\n", + "\n", + "Ia2 = Ia*Ia/I_2 #A\n", + "Eb1 = V - Ia*(Ra+Rse) #V (Back emf 1) \n", + "\n", + "Eb2 = V - I_2*Rse - Ia2*Ra #V (Back emf 2)\n", + "\n", + "#N2/N1 = Eb2*flux1/Eb1*flux2\n", + "N2 = N1*(Eb2/Eb1)*(Ia/I_2) #rpm\n", + "print \"Speed of motor with the shunted armature connection =\",round(N2,2),\"rpm.\"\n", + "print \"Series motor can't be started on no-load.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 44.16 , PAGE NO :- 1786" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Additional Resistance required in (i) is = 0.8 ohm.\n", + "Additional Resistance required in (ii) is = 1.27 ohm.\n" + ] + } + ], + "source": [ + "'''A 4 pole,50 Hz,slip ring Induction Motor has rotor resistance and stand still reactance referred to stator of 0.2 ohm and 1 ohm\n", + "per phase respectively.At full load,it runs at 1440 rpm.Determine the value of resistance to be inserted in rotor in ohm/phase to\n", + "operate at a speed of 1200 rpm,if:\n", + "(i)Load torque remains constant (ii)Load torque varies as square of the speed\n", + "Neglect stator resistance and leakage reactance.'''\n", + "\n", + "from sympy import Eq,solve,Symbol\n", + "\n", + "p = 4.0 # poles\n", + "f = 50.0 #Hz (frequency)\n", + "R2 = 0.2 #ohm (rotor resistance)\n", + "X2 = 1.0 #ohm (stand still reactance)\n", + "N1 = 1440.0 #rpm (speed)\n", + "N2 = 1200.0 #rpm (new speed)\n", + "\n", + "Ns = 120*f/p #rpm (synchronus speed)\n", + "s1 = (Ns-N1)/Ns #rpm (slip 1)\n", + "s2 = (Ns-N2)/Ns #rpm (slip 2)\n", + "\n", + "#(i)Load torque is constant i.e (T1 = T2)\n", + "#T is propotional to (s/R2) , (T1/T2) = (s1/S2)*(R2/Rt).Therefore, new resistance required is \n", + "\n", + "Rt = (s2/s1)*R2 #ohm (total resistance)\n", + "r = Rt - R2 #ohm (additional resistance)\n", + "\n", + "print \"Additional Resistance required in (i) is =\",round(r,2),\"ohm.\"\n", + "\n", + "#(ii) Load torque varies as square of speed (i.e T1/T2 = (N1/N2)^2 )\n", + "T1_T2a = (N1/N2)*(N1/N2) #(T1/T2)\n", + "\n", + "Rt = Symbol('Rt')\n", + "T1_T2b = (s1*R2/(R2*R2 + (s1*X2)*(s1*X2)))/(s2*Rt/(Rt*Rt + (s2*X2)*(s2*X2)))\n", + "eq = Eq(T1_T2a,T1_T2b)\n", + "Rt = solve(eq)\n", + "R_t = Rt[1] #ohm (total resistance)\n", + "\n", + "r = R_t - R2 #ohm (additional resistance)\n", + "print \"Additional Resistance required in (ii) is =\",round(r,2),\"ohm.\"" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "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.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter45.ipynb b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter45.ipynb new file mode 100644 index 00000000..6a963318 --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter45.ipynb @@ -0,0 +1,1281 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# CHAPTER 45 : RATING AND SERVICE CAPACITY" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.1 , PAGE NO :- 1796" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Size of motor = 66.0 KW.\n" + ] + } + ], + "source": [ + "'''An electric motor operates at full-load of 100KW for 10 minutes,at 3/4 full load for the next 10 minutes and at 1/2 load for\n", + "next 20 minutes,no-load for the next 20 minutes and this cycle repeats continously.Find the continous rating of the suitable \n", + "motor.'''\n", + "\n", + "import math as m\n", + "#Loads\n", + "l1 = 100.0 #kW (load 1)\n", + "l2 = 0.75*l1 #kW (load 2)\n", + "l3 = 0.5*l1 #kW (load 3)\n", + "l4 = 0.0 #kW (no-load)\n", + "\n", + "#coresponding time\n", + "t1 = 10.0 #minutes\n", + "t2 = 10.0 #minutes\n", + "t3 = 20.0 #minutes\n", + "t4 = 20.0 #minutes\n", + "\n", + "#size of motor required\n", + "size = m.sqrt((l1*l1*t1 + l2*l2*t2 + l3*l3*t3 + l4*l4*t4)/(t1+t2+t3+t4/3)) #kW\n", + "print \"Size of motor =\",round(size),\"KW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.2 , PAGE NO :- 1797" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Size of motor = 141.0 KW.\n" + ] + } + ], + "source": [ + "'''An electric motor has to be selected for a load which rises uniformly from zero to 200KW in 10 minutes after which it remains \n", + "constant at 200KW for the next 10 minutes,followed by a no-load period of 15 minutes before the cycle repeats itself.Estimate a \n", + "suitable size of continuosly rated motor.'''\n", + "\n", + "import math as m\n", + "#Loads\n", + "l1 = 200.0/2 #kW (load 1)\n", + "l2 = 200.0 #kW (load 2)\n", + "l3 = 0.0 #kW (no-load)\n", + "\n", + "#coresponding time\n", + "t1 = 10.0 #minutes\n", + "t2 = 10.0 #minutes\n", + "t3 = 15.0 #minutes\n", + "\n", + "\n", + "#size of motor required\n", + "size = m.sqrt((l1*l1*t1 + l2*l2*t2 + l3*l3*t3)/(t1+t2+t3/3)) #kW\n", + "print \"Size of motor =\",round(size),\"KW.\"\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.3 , PAGE NO :- 1797 " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Size of motor = 70.0 KW.\n" + ] + } + ], + "source": [ + "'''A certain motor has to perform the following duty cycle:\n", + "(a) 100KW for 10 minutes (No-load for 5 minutes)\n", + "(b) 50KW for 8 minutes (No-load for 4 minutes)\n", + "The duty cycle is repeated indefinitely.Draw the curve for the load cycle.Assuming that the heating is propotional to the square of\n", + "the load,determine suitable size of a continuosly-rated motor.'''\n", + "\n", + "import math as m\n", + "\n", + "#Loads\n", + "l1 = 100.0 #KW (load 1)\n", + "l3 = 50.0 #KW (load 2)\n", + "\n", + "#Time\n", + "t1 = 10.0 #minutes\n", + "t2 = 5.0 #minutes\n", + "t3 = 8.0 #minutes\n", + "t4 = 4.0 #minutes\n", + "\n", + "#Size of the motor is\n", + "size = m.sqrt((l1*l1*t1 + l3*l3*t3)/(t1+t2+t3+t4)) #KW\n", + "print \"Size of motor = \",round(size,-1),\"KW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.4 , PAGE NO :- 1799" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Size of motor = 69.07 H.P.\n" + ] + } + ], + "source": [ + "'''A motor has to perform the following duty cycle :-\n", + "(i) 100 H.P (10 mins) (ii) No Load (5 mins)\n", + "(iii)60 H.P (8 mins) (iv) No Load (4 mins)\n", + "which is repeated infinitely.Determine the suitable size of continuosly rated motor.'''\n", + "\n", + "import math as m\n", + "\n", + "#Loads\n", + "l1 = 100.0 #H.P (load 1)\n", + "l3 = 60.0 #H.P (load 2)\n", + "\n", + "#Time\n", + "t1 = 10.0 #minutes\n", + "t2 = 5.0 #minutes\n", + "t3 = 8.0 #minutes\n", + "t4 = 4.0 #minutes\n", + "\n", + "#Size of the motor is\n", + "size = m.sqrt((l1*l1*t1 + l3*l3*t3)/(t1+t2+t3+t4)) #H.P\n", + "print \"Size of motor = \",round(size,2),\"H.P.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.5 , PAGE nO :- 1800" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Size of motor = 48.11 H.P .\n" + ] + } + ], + "source": [ + "'''A motor working in a coal mine has to exert power starting from zero and rising uniformly to 100 H.P in 5 min\n", + "after which it works at a constant rate of 50 H.P for 10 min.Then, a no load period of 3 min.The cycle is repeated\n", + "indefinitely,estimate suitable size of motor.'''\n", + "\n", + "import math as m\n", + "\n", + "#Load\n", + "l1 = 100.0 #H.P (load 1)\n", + "l2 = 50.0 #H.P (load 2)\n", + "l3 = 0.0 #H.P (no-load)\n", + "\n", + "#Time\n", + "t1 = 5.0 #min (time 1) \n", + "t2 = 10.0 #min (time 2)\n", + "t3 = 3.0 #min (time 3)\n", + "\n", + "#Using Simpson's one-third rule of Integration\n", + "rating = m.sqrt((1.0/3*l1*l1*t1 + l2*l2*t2)/(t1 + t2 + t3) ) #H.P\n", + "\n", + "print \"Size of motor =\",round(rating,2),\"H.P .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.6 , PAGE NO :- 1800" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Size of motor = 263.19 H.P .\n", + "Therefore, suitable size of motor is 300.0 H.P\n" + ] + } + ], + "source": [ + "'''A motor has following duty cycle\n", + "Load rising from 200 to 400 H.P - 4 min.\n", + "Uniform load 300 H.P - 2 min.\n", + "Regenerative braking (50 H.P to 0) - 1 min.\n", + "Idle - 1 min.\n", + "Estimate suitable H.P rating of the motor that can be used.'''\n", + "\n", + "import math as m\n", + "\n", + "#Loads\n", + "l1 = 200.0 #H.P (load 1)\n", + "l2 = 400.0 #H.P (load 2)\n", + "l3 = 300.0 #H.P (load 3)\n", + "l4 = 50.0 #H.P (load 4)\n", + "\n", + "#Time\n", + "t1 = 4.0 #min (time 1)\n", + "t2 = 2.0 #min (time 2)\n", + "t3 = 1.0 #min (time 3)\n", + "t4 = 1.0 #min (idle time)\n", + "\n", + "rating = m.sqrt((1.0/3*(l1*l1 + l1*l2 + l2*l2)*t1 + l3*l3*t2 + 1.0/3*l4*l4*t3)/(t1 + t2 + t3 + t4)) #H.P\n", + "\n", + "print \"Size of motor = \",round(rating,2),\"H.P .\"\n", + "print \"Therefore, suitable size of motor is\",round(rating,-2),\"H.P\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.7 , PAGE NO :- 1802" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Suitable motor size = 30.0 H.P .\n" + ] + } + ], + "source": [ + "'''The load cycle of a motor for 15 min in driving some equipment is as follows :\n", + "0 - 5 min - 30 H.P\n", + "5 - 9 min - No load\n", + "9 - 12 min - 45 H.P\n", + "12 - 15 min - No load\n", + "The load cycle is repeated indefinitely.Suggest a suitable size of continuosly rated motor.'''\n", + "\n", + "import math as m\n", + "\n", + "#Loads\n", + "l1 = 30.0 #H.P\n", + "l3 = 45.0 #H.P\n", + "\n", + "#Time\n", + "t1 = 5.0 #min\n", + "t2 = 4.0 #min\n", + "t3 = 3.0 #min\n", + "t4 = 3.0 #min\n", + "\n", + "#Size of motor is\n", + "Size = m.sqrt((l1*l1*t1 + l3*l3*t3)/(t1+t2+t3+t4)) #H.P\n", + "print \"Suitable motor size =\",round(Size,-1),\"H.P .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.8 , PAGE NO :- 1802" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Size of continously rated motor = 505.0 H.P .\n" + ] + } + ], + "source": [ + "'''A motor driving a colliery winder has the following acceleration period :\n", + " load cycle 0-15 sec : Load rises uniformly from 0-1000 H.P .\n", + " Full speed period : 15-85 sec. Load constant at 600 H.P .\n", + " Decceleration period : 85-95 sec. Regenerative braking the H.P returned uniformly from 200 to 0 H.P.\n", + " 95 - 120 sec : Motor stationary.\n", + "Estimate the size of continuosly rated motor.'''\n", + "\n", + "import math as m\n", + "\n", + "#Loads\n", + "l1 = 1000.0 #H.P (load 1)\n", + "l2 = 600.0 #H.P (load 2)\n", + "l3 = 200.0 #H.P (load 3)\n", + "\n", + "#Time\n", + "t1 = 15.0 #s\n", + "t2 = 70.0 #s\n", + "t3 = 10.0 #s\n", + "t4 = 25.0 #s\n", + "\n", + "#Size of motor is\n", + "\n", + "size = m.sqrt((l1*l1*t1/3 + l2*l2*t2 + l3*l3*t3/3)/(t1+t2+t3+t4)) #H.P\n", + "\n", + "while(round(size)%5!=0):\n", + " size = size + 1\n", + " \n", + "print \"Size of continously rated motor = \",round(size),\"H.P .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.9 , PAGE NO :- 1807" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 1/2 hour rating = 75.13 KW.\n" + ] + } + ], + "source": [ + "'''A 40KW motor when run continuosly on full load,attains a temperature of 35C , above the surrounding air.Its heating time \n", + "constant is 90 min.What would be the 1/2 hour rating of the motor for this temperature rise?Assume that the machine cools down \n", + "completely between each load period and that the losses are propotional to square of the load.'''\n", + "\n", + "\n", + "from sympy import Symbol,Eq,solve\n", + "import math as m\n", + "# Let 'P' KW be 1/2 hour rating of the motor\n", + "# theta1 - final temp rise at P KW\n", + "# theta2 - final temp rise at 40 KW\n", + "#Losses at P KW is directlt propotional to P^2\n", + "\n", + "theta2 = 35.0 # *C\n", + "tau = 1.5 #hr (time constant)\n", + "t = 0.5 #hr (motor running time)\n", + "\n", + "#Now, (theta1/theta2) = loss at P KW/loss at 40KW = (P/40)^2\n", + "P = Symbol('P')\n", + "theta1 = theta2*(P/40)*(P/40) #*C\n", + "\n", + "#Now, theta2 = theta1*(1 - exp(-t/tau))\n", + "\n", + "theta2a = theta1*(1-m.exp(-t/tau)) #*C\n", + "eq = Eq(theta2,theta2a)\n", + "P = solve(eq)\n", + "P1 = P[1] #KW\n", + "\n", + "print \"1/2 hour rating = \",round(P1,2),\"KW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.10 , PAGE NO :- 1807" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1 hour rating = 24.0 H.P.\n" + ] + } + ], + "source": [ + "'''Determine the one-hour rating of a 15 H.P motor having heating time contant of 2 hours.The motor attains the temperature of\n", + "40*C on continuos run at full load.Assume that the losses are propotional to square of the load and the motor is allowed to cool\n", + "down to the ambient temperature before being loaded again.'''\n", + "\n", + "from sympy import Symbol,Eq,solve\n", + "import math as m\n", + "# Let 'P' H.P be 1 hour rating of the motor\n", + "# theta2 - final temp rise at P H.P\n", + "# theta1 - final temp rise at 15 H.P\n", + "#Losses at P H.P is directlt propotional to P^2\n", + "\n", + "theta1 = 40.0 # *C\n", + "tau = 2.0 #hr (time constant)\n", + "t = 1.0 #hr (motor running time)\n", + "\n", + "#Now, (theta2/theta1) = loss at P H.P/loss at 15 H.P = (P/15)^2\n", + "P = Symbol('P')\n", + "theta2 = theta1*(P/15)*(P/15) #*C\n", + "\n", + "#Now, theta1 = theta2*(1 - exp(-t/tau))\n", + "\n", + "theta1a = theta2*(1-m.exp(-t/tau)) #*C\n", + "eq = Eq(theta1,theta1a)\n", + "P = solve(eq)\n", + "P1 = P[1] #H.P\n", + "\n", + "print \"1 hour rating = \",round(P1),\"H.P.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.11 , PAGE NO :- 1808" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Temperature rise of motor = 35.6 *C .\n" + ] + } + ], + "source": [ + "'''The heating and cooling time constants of a motor are 1 hour and 2 hours respectively.Final temperature rise attained is \n", + "100*C.This motor runs at full load for 30 minutes and then kept idle for 12 min and the cycle is repeated indefinitely.Determine \n", + "the temperature rise of motor after one cycle.'''\n", + "\n", + "import math as m\n", + "\n", + "theta2 = 100.0 #*C (Final temperature rise)\n", + "tau_h = 1.0 #hr (heating time constant)\n", + "tau_c = 2.0 #hr (cooling time constant)\n", + "t1 = 30.0/60 #hr (motor running time)\n", + "t2 = 12.0/60 #hr (motor idle time)\n", + "\n", + "#Heating cycle\n", + "theta1 = theta2*(1 - m.exp(-t1/tau_h))\n", + "\n", + "#Cooling cycle\n", + "thetac = theta1*m.exp(-t2/tau_c)\n", + "\n", + "print \"Temperature rise of motor = \",round(thetac,2),\"*C .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.12 , PAGE NO :- 1808" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum overload that can be carried by motor = 25.82 KW.\n" + ] + } + ], + "source": [ + "'''Calculate the maximum overload that can be carried by a 20KW output motor,if the temperature rise is not to exceed 50*C after\n", + "one hour on overload .The temperature rise on full load,after 1 hour is 30*C and after 2 hour is 40*C . Assume losses propotional\n", + "to square of load.'''\n", + "\n", + "from sympy import solve,Symbol,Eq\n", + "import math as m\n", + "\n", + "# As theta = thetaf*(1 - exp(-t/T))\n", + "\n", + "theta1 = 30.0 #*C (temperature rise in time1)\n", + "t1 = 1 #hr (time 1)\n", + "theta2 = 40.0 #*C (temperature rise in time2)\n", + "t2 = 2 #hr (time 2)\n", + "#Now theta1/theta2 = (1-exp(-t1/T))/(1-exp(-t2/T))\n", + "#Let us assume that x = exp(-1/T).Therefore\n", + "x = Symbol('x')\n", + "ratio1 = (1 - x**t1)/(1-x**t2) #(theta1/theta2)\n", + "ratio2 = theta1/theta2\n", + "\n", + "#As ratio1 = ratio2\n", + "eq = Eq(ratio1,ratio2)\n", + "x1 = solve(eq)\n", + "x = x1[0] #variable \n", + "\n", + "#x = exp(-1/T) . Therefore,\n", + "T = -1/m.log(x)\n", + "\n", + "#Now, theta1 = thetaf1*(1 - exp(-t1/T))\n", + "\n", + "thetaf1 = theta1/(1-x**t1) #*C\n", + "\n", + "#Also theta3 = thetaf3*(1 - exp(-t3/T))\n", + "theta3 = 50.0 #*C (max temp)\n", + "t3 = 1 #hr (time 3) \n", + "thetaf3 = theta3/(1-x**t3) #*C\n", + "\n", + "#Given that temp is directly propotional to square of power output i.e thetaf1/thetaf3 = (Power1/Power3)^2\n", + "P1 = 20.0 #KW\n", + "P3 = m.sqrt(thetaf3/thetaf1)*P1 #KW\n", + "\n", + "print \"Maximum overload that can be carried by motor = \",round(P3,2),\"KW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.13 , PAGE NO :- 1809" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Final steady temperature rise = 50.0 *C.\n", + "Cooling time constant = 0.93 hr\n" + ] + } + ], + "source": [ + "'''In a transformer the temperature rise is 25*C after 1 hour and 37.5*C after 2 hours,starting from cold conditions.Calculate \n", + "its final steady temperature rise and the heating time constant.If the transformer temerature falls from the final steady state\n", + "value to 40*C in 1.5 hours when disconnected,calculate its cooling time constant.Ambient temperature is 30*C.'''\n", + "\n", + "from sympy import solve,Symbol,Eq\n", + "import math as m\n", + "\n", + "# As theta = thetaf*(1 - exp(-t/T))\n", + "\n", + "theta1 = 25.0 #*C (temperature rise in time1)\n", + "t1 = 1 #hr (time 1)\n", + "theta2 = 37.5 #*C (temperature rise in time2)\n", + "t2 = 2 #hr (time 2)\n", + "#Now theta1/theta2 = (1-exp(-t1/T))/(1-exp(-t2/T))\n", + "#Let us assume that x = exp(-1/T).Therefore\n", + "x = Symbol('x')\n", + "ratio1 = (1 - x**t1)/(1-x**t2) #(theta1/theta2)\n", + "ratio2 = theta1/theta2\n", + "\n", + "#As ratio1 = ratio2\n", + "eq = Eq(ratio1,ratio2)\n", + "x1 = solve(eq)\n", + "x = x1[0] #variable \n", + "\n", + "#x = exp(-1/T) . Therefore,\n", + "T = -1/m.log(x)\n", + "\n", + "#As theta1 = thetaf1*(1 - exp(-t1/T))\n", + "thetaf1 = theta1/(1-x**t1) #*C\n", + "print \"Final steady temperature rise =\",round(thetaf1,2),\"*C.\"\n", + "\n", + "#Cooling conditions\n", + "theta_rise = 40.0 - 30.0 #*C (temp rise above ambient conditions)\n", + "t3 = 1.5 #hr (time taken)\n", + "\n", + "#Now, theta_rise = thetaf1*exp(-t3/T)\n", + "T = -t3/m.log(theta_rise/thetaf1) #hr\n", + "print \"Cooling time constant =\",round(T,2),\"hr\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.14 , PAGE NO :- 1809" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Temperature of machine = 70.58 *C.\n" + ] + } + ], + "source": [ + "'''The initial temperature of machine is 20*C.Calculate the temperature of machine after 1.2 hours,if its final steady \n", + "temperature rise is 85*C and the heating time constant is 2.4 hours.Ambient temperature is 25*C.''' \n", + "\n", + "import math as m\n", + "thetaf = 85.0 #*C (final temp. rise)\n", + "theta1 = 20.0 #*C (initial temp)\n", + "t1 = 1.2 #hr (time taken)\n", + "T = 2.4 #hr (heat time constant)\n", + "#Now, Temperature rise above coling medium is\n", + "theta = thetaf - (thetaf - theta1)*m.exp(-t1/T) #*C\n", + "\n", + "#Therefore, temp. of machine after t1 time is\n", + "temp = theta + 25.0\n", + "\n", + "print \"Temperature of machine =\",round(temp,2),\"*C.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.15 , PAGE NO :- 1809" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Final steady temperature rise = 45.0 *C .\n", + "Time constant = 2.47 hr.\n", + "The steady temperature rise = 30.0 *C .\n" + ] + } + ], + "source": [ + "'''The following rises were observed in a teperature rise test on a D.C machine at full loads. :-\n", + "After 1 hour - 15*C\n", + "After 2 hours - 25*C\n", + "Find out (i) Final steady temperature rise and time constant.\n", + " (ii)The steady temperature rise after 1 hour at 50% overload,from cold.\n", + "Assume that the final temperature rise on 50% overload is 90*C.'''\n", + "\n", + "\n", + "from sympy import solve,Symbol,Eq\n", + "import math as m\n", + "\n", + "# As theta = thetaf*(1 - exp(-t/T))\n", + "\n", + "theta1 = 15.0 #*C (temperature rise in time1)\n", + "t1 = 1 #hr (time 1)\n", + "theta2 = 25.0 #*C (temperature rise in time2)\n", + "t2 = 2 #hr (time 2)\n", + "#Now theta1/theta2 = (1-exp(-t1/T))/(1-exp(-t2/T))\n", + "#Let us assume that x = exp(-1/T).Therefore\n", + "x = Symbol('x')\n", + "ratio1 = (1 - x**t1)/(1-x**t2) #(theta1/theta2)\n", + "ratio2 = theta1/theta2\n", + "\n", + "#As ratio1 = ratio2\n", + "eq = Eq(ratio1,ratio2)\n", + "x1 = solve(eq)\n", + "x = x1[0] #variable \n", + "\n", + "#x = exp(-1/T) . Therefore,\n", + "T = -1/m.log(x) #hr (time constant)\n", + "\n", + "#As theta1 = thetaf1*(1 - exp(-t/T))\n", + "thetaf1 = theta1/(1-x**t1) #*C (Final steady temp. rise)\n", + "print \"Final steady temperature rise =\",round(thetaf1,2),\"*C .\"\n", + "print \"Time constant =\",round(T,2),\"hr.\"\n", + "\n", + "#(ii) Now at 50% overload .Final temp rise is\n", + "thetaf3 = 90.0 #*C\n", + "t3 = 1 #hr (time taken)\n", + "#As , theta = thetaf*(1 - exp(-t/T))\n", + "theta3 = thetaf3*(1 - m.exp(-t3/T)) #*C\n", + "\n", + "print \"The steady temperature rise =\",round(theta3,2),\"*C .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.16 , PAGE NO :- 1813" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Moment of Inertia = 2.947543e+06 kg-m^2\n" + ] + } + ], + "source": [ + "'''The following data refers to a 500 H.P rolling mill,induction motor equipped with a flywheel.\n", + " No load speed -> 40 rpm\n", + " Slip at full load(torque) -> 12%\n", + " Load torque during actual rolling -> 41500 kg-m\n", + " Duration of each rolling period -> 10 sec.\n", + "Determine inertia of flywheel required in the above case to limit motor torque to twice its full load value.Neglect no-load \n", + "losses and assume that the rolling mill torque falls to zero between each rolling period.Assume motor slip propotional to\n", + "full load torque.'''\n", + "\n", + "\n", + "import math as m\n", + "N = 40.0 #rpm (No load speed)\n", + "P = 500.0*(735.5) #W (Power)\n", + "w = 2*(3.14)*N/60 #rad/sec (angular speed)\n", + "T0 = 0 #kg-m (initial torque)\n", + "Tl = 41500.0 #kg-m (Torque load) \n", + "t = 10.0 #sec (time taken)\n", + "s = 0.12 # (slip)\n", + "g = 9.81 #m/s^2 \n", + "Tfull = P/(w*(1-s)) #N-m (full load torque)\n", + "Tfull = Tfull/g #kg-m\n", + "Tm = 2*Tfull #kg-m (Max torque)\n", + "S = 2*3.14*(0.12*40)/60\n", + "#Now, S = K*Tfl\n", + "K = S/Tfull #constant\n", + "#Also, Tm = Tl - (Tl-T0)*exp(-tg/IK) .Therefore I is\n", + "I =(-t*g)/(K*m.log((Tl-Tm)/(Tl-T0))) #kg-m^2\n", + "\n", + "print \"Moment of Inertia = %e kg-m^2\" %round(I,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.17 , PAGE NO :- 1814 " + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Tm = 47.84 kg-m.\n", + "Actual Speed = 942.59 rpm.\n" + ] + } + ], + "source": [ + "'''A 6 pole,50 Hz Induction Motor has a flywheel of 1200 kg-m^2 as moment of inertia.Load torque is 100 kg-m for 10 sec.No load\n", + "period is long enough for the flywheel,to regain its full speed.Motor has a slip of 6% at a torque of 50 kg-m.Calculate\n", + "(i)Maximum torque exerted by motor\n", + "(ii)Speed at the end of deacceleration period.'''\n", + "\n", + "import math as m\n", + "\n", + "Tl = 100.0 #kg-m (load torque)\n", + "t = 10.0 #s (time taken)\n", + "g = 9.81 #m/s^2 (gravitational acceleration)\n", + "I = 1200.0 #kg-m^2 (moment of inertia)\n", + "p = 6 # (poles)\n", + "f = 50.0 #Hz (frequency)\n", + "s = 0.06 # (slip)\n", + "Tfull = 50.0 #kg-m (full load torque)\n", + "Ns = 120*f/p\n", + "Nr = (1-s)*Ns\n", + "\n", + "#Now, S = K*T\n", + "S = 2*3.14*(Ns - Nr)/60 #rad/sec\n", + "K = S/Tfull #constant\n", + "\n", + "#As Tm = Tl*(1-exp(-t*g/I*K))\n", + "Tm = Tl*(1 - m.exp(-t*g/(I*K))) #kg-m\n", + "print \"Tm = \",round(Tm,2),\"kg-m.\"\n", + "\n", + "#(ii)Slip speed\n", + "S = K*Tm #rad/sec (slip speed)\n", + "S = S*(60/(2*3.14)) #rpm\n", + "N = Ns - S #rpm (actual speed)\n", + "print \"Actual Speed =\",round(N,2),\"rpm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.18 , PAGE NO :- 1815" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Speed 1 = 691.75 rpm.\n", + "Speed 2 = 731.62 rpm.\n", + "Speed 1 = 683.89 rpm.\n", + "Speed 2 = 731.0 rpm.\n", + "Speed 1 = 683.62 rpm.\n", + "Speed 2 = 730.98 rpm.\n" + ] + } + ], + "source": [ + "'''An Induction Motor equipped with a flywheel is driving a rolling mill which requires a load torque of 1900 N-m for 10 sec\n", + "followed by 250 N-m for 30 sec.This cycle being repeated indefinitely.The synchronus speed of motor is 750 rpm and it has slip of\n", + "10% when delivering 1400 N-m torque.The total Moment of Inertia of the flywheel and other rotating parts is 2100 kg-m^2.Draw the \n", + "curves showing the torque exerted by the motor and the speed for five complete cycles,assuming the initial torque is zero.'''\n", + "\n", + "import math as m\n", + "\n", + "Tl1 = 1900.0 #N-m (load torque 1)\n", + "t1 = 10.0 #s (time 1)\n", + "Tl2 = 280.0 #N-m (load torque 2)\n", + "t2 = 30.0 #s (time 2)\n", + "s = 0.1 # (slip)\n", + "Ns = 750.0 #rpm (synchronus speed)\n", + "I = 2100.0 #kg-m^2 (moment of inertia)\n", + "Tm = 1400.0 #N-m\n", + "S = Ns*s #rpm (slip speed)\n", + "S = S*(2*3.14/60) #rad/sec \n", + "\n", + "K = S/Tm #constant\n", + "T0 = 0 #N-m\n", + "#(i) During First Cycle\n", + "Tm = Tl1 -(Tl1-T0)*m.exp(-t1/(I*K)) #N-m\n", + "s2 = K*Tm*(60/(2*3.14)) #rpm\n", + "Speed1 = Ns - s2 #rpm\n", + "print \"Speed 1 = \",round(Speed1,2),\"rpm.\"\n", + "\n", + "# Now, Tm = T0 + (Tm' - T0)*exp(-t/(I*K))\n", + "Tmb = Tm #N-m\n", + "T0 = Tl2 #N-m (No Load Torque)\n", + "\n", + "Tm = T0 + (Tmb - T0)*m.exp(-t2/(I*K))\n", + "S2 = K*Tm*(60/(2*3.14)) #rpm\n", + "Speed2 = Ns - S2 #rpm\n", + "print \"Speed 2 = \",round(Speed2,2),\"rpm.\"\n", + "#################################################################\n", + "\n", + "#(ii) During Second cycle\n", + "T0 = Tm\n", + "Tm2 = Tl1 -(Tl1-T0)*m.exp(-t1/(I*K)) #N-m\n", + "s2 = K*Tm2*(60/(2*3.14)) #rpm\n", + "Speed1 = Ns - s2 #rpm\n", + "print \"Speed 1 = \",round(Speed1,2),\"rpm.\"\n", + "\n", + "# Now, Tm = T0 + (Tm' - T0)*exp(-t/(I*K))\n", + "Tm2b = Tm2 #N-m\n", + "T0 = Tl2 #N-m (No Load Torque)\n", + "\n", + "Tm = T0 + (Tm2b - T0)*m.exp(-t2/(I*K))\n", + "S2 = K*Tm*(60/(2*3.14)) #rpm\n", + "Speed2 = Ns - S2 #rpm\n", + "print \"Speed 2 = \",round(Speed2,2),\"rpm.\"\n", + "###################################################################\n", + "\n", + "#(iii) During Third cycle\n", + "T0 = Tm\n", + "Tm3 = Tl1 -(Tl1-T0)*m.exp(-t1/(I*K)) #N-m\n", + "s2 = K*Tm3*(60/(2*3.14)) #rpm\n", + "Speed1 = Ns - s2 #rpm\n", + "print \"Speed 1 = \",round(Speed1,2),\"rpm.\"\n", + "\n", + "# Now, Tm = T0 + (Tm' - T0)*exp(-t/(I*K))\n", + "Tm3b = Tm3 #N-m\n", + "T0 = Tl2 #N-m (No Load Torque)\n", + "\n", + "Tm = T0 + (Tm3b - T0)*m.exp(-t2/(I*K))\n", + "S2 = K*Tm*(60/(2*3.14)) #rpm\n", + "Speed2 = Ns - S2 #rpm\n", + "print \"Speed 2 = \",round(Speed2,2),\"rpm.\"\n", + "####################################################################" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 45.19 , PAGE NO :- 1817" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Moment of inertia = 2860.94 kg-m^2.\n" + ] + } + ], + "source": [ + "'''A motor fitted with a flywheel supplies a load torque of 150 kg-m for 15 sec.During the no-load period,the flywheel regains \n", + "its original speed.The motor torque is required to be limited to 85 kg-m.Determine moment of inertia of flywheel.\n", + "The no-load speed of motor is 500 rpm and it has slip of 10% on full load.'''\n", + "\n", + "from sympy import Symbol,solve,Eq,exp\n", + "import math as m\n", + "\n", + "Tm = 85.0 #kg-m (Max torque)\n", + "Tl = 150.0 #kg-m (load torque with flywheel)\n", + "T0 = 0 #kg-m (constant load torque)\n", + "t = 15.0 #s (time)\n", + "N = 500.0 #rpm (no load speed)\n", + "s = 0.1 # (slip)\n", + "g = 9.82 #m/s^2 \n", + "# s = K*T\n", + "K = 2*(3.14)*N*s/(60*Tm) #constant\n", + "\n", + "# As Tm = Tl*(1 - exp(-t*g/(I*K)))\n", + "\n", + "I =(-t*g)/(K*m.log(1 - Tm/Tl)) #kg-m^2 (Moment of inertia)\n", + "\n", + "print \"Moment of inertia =\",round(I,2),\"kg-m^2.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.20 , PAGE NO :- 1817" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Moment of inertia of flywheel = 1908.86 kg-m^2.\n", + "Time taken after removal of additional load = 8.88 s.\n" + ] + } + ], + "source": [ + "'''A 3-phase ,50 KW,6 pole,960 rpm induction motor has a constant load torque of 300 N-m and at wide intervals additional \n", + "torque of 1500 N-m for 10 sec.Calculate\n", + "(a)The moment of inertia of the flywheel used for load equalization,if the motor torque is not to exceed twice the rated torque.\n", + "(b)Time taken after removal of additional load,before the motor torque becomes 700 N-m.'''\n", + "\n", + "from sympy import Symbol,Eq,solve\n", + "import math as m\n", + "\n", + "P = 50.0e+3 #W (output power)\n", + "Nr = 960.0 #rpm (rotational speed)\n", + "p = 6.0 # (no. of poles)\n", + "t = 10.0 #s (time)\n", + "T0 = 300.0 #N-m (constant load torque)\n", + "Tl = T0 + 1500.0 #N-m (total load torque)\n", + "f = 50.0 #Hz (frequency) \n", + "\n", + "# Power = T*w (torque*ang_speed)\n", + "T = P/(2*3.14*Nr/60) #N-m (Full-load torque)\n", + "Tm = 2*T #N-m (Max torque)\n", + "\n", + "Ns = 120*f/p #rpm (synchronus speed)\n", + "\n", + "#Slip speed\n", + "sl = Ns-Nr #rpm\n", + "\n", + "#Now, s = K*T\n", + "K = 2*3.14*sl/(60*T) #constant\n", + "\n", + "#As Tm = Tl - (Tl - T0)*exp(-t/I*K)\n", + "\n", + "I = (-t)/(K*m.log((Tl - Tm)/(Tl - T0))) #kg-m^2 (moment of inertia)\n", + "\n", + "print \"Moment of inertia of flywheel =\",round(I,2),\"kg-m^2.\"\n", + "\n", + "#(b) Tm2 = T0 + (Tm-T0)*exp(-t/I*K)\n", + "Tm2 = 700.0 #N-m (Max torque - case 2)\n", + "\n", + "t1= (-I*K)*m.log((Tm2 - T0)/(Tm - T0)) #s (time after removal of load)\n", + "print \"Time taken after removal of additional load =\",round(t1,2),\"s.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 45.21 , PAGE NO :- 1818" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Moment of Inertia = 551.35 kg-m^2.\n" + ] + } + ], + "source": [ + "'''A 3-phase,8 pole,50 cps.Induction Motor equipped with a flywheel supplies a constant load torque of 100 N-m and at wide \n", + "intervals an additional load torque of 300 N-m for 6 sec.The motor runs at 735 rpm at 100 N-m torque.Find moment of inertia of \n", + "the flywheel,if the motor torque is not to exceed 250 N-m.'''\n", + "\n", + "from sympy import Symbol,Eq,solve\n", + "import math as m\n", + "\n", + "T0 = 100.0 #N-m (constant load torque)\n", + "Tl = T0 + 300.0 #N-m (Total load torque)\n", + "f = 50.0 #Hz (frequency)\n", + "P = 8.0 # (poles)\n", + "Tm = 250.0 #N-m (Max torque) \n", + "Ns = 120*f/P #rpm (Synchronus speed)\n", + "sl = Ns - 735.0 #rpm (Slip speed)\n", + "t = 6.0 #s (time)\n", + "#Now, s = K*T0\n", + "K = 2*3.14*sl/(60*T0) #constant\n", + "\n", + "#Also, Tm = Tl - (Tl-T0)*exp(-t/I*K)\n", + "\n", + "I = -t/(K*m.log((Tl - Tm)/(Tl-T0))) #kg-m^2 (moment of inertia)\n", + "\n", + "print \"Moment of Inertia =\",round(I,2),\"kg-m^2.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.22 , PAGE NO :- 1818" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum torque developed by motor = 615.35 N-m.\n", + "Speed at the end of deacceleration period = 938.47 rpm.\n" + ] + } + ], + "source": [ + "'''A 6 pole,50 Hz,3-phase wound rotor Induction Motor has a flywheel coupled to its shaft.The total moment of inertia is \n", + "1000kg-m^2.Load torque is 1000 N-m for 10 sec followed by a no-load period which is long enough for the motor to reach its \n", + "no-load speed.Motor has a slip of 5% at a torque of 500 N-m.Find\n", + "(a)Maximum torque developed by motor\n", + "(b)Speed at the end of deacceleration period.'''\n", + "\n", + "import math as m\n", + "\n", + "P = 6.0 # (No of poles)\n", + "I = 1000.0 #kg-m^2 (Moment of Inertia)\n", + "Tl = 1000.0 #N-m (Load torque with flywheel)\n", + "t = 10.0 #s (time)\n", + "s = 0.05 # (slip)\n", + "Tfl = 500.0 #N-m (full load Torque)\n", + "f = 50.0 #Hz (frequency)\n", + "\n", + "Ns = 120*f/P #rpm (Synchronus speed)\n", + "\n", + "#Now, s = K*Tfl\n", + "K = 2*3.14*(Ns*s)/(60*Tfl) #constant\n", + "\n", + "#K = 6.2e-3 #(considered value) \n", + "\n", + "#Also Tm = Tl*(1-exp(-t/I*K)\n", + "Tm = Tl*(1 - m.exp(-t/(I*K))) #N-m\n", + "print \"Maximum torque developed by motor = \",round(Tm,2),\"N-m.\"\n", + " \n", + "#(b) s = K*Tfl where s = 2*3.14*(Ns - N)/60\n", + "N = Ns - (60/(2*3.14))*K*Tm #rpm\n", + "print \"Speed at the end of deacceleration period =\",round(N,2),\"rpm.\" " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 45.23 , PAGE NO :- 1819" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Moment of inertia of flywheel = 275.67 kg-m^2.\n" + ] + } + ], + "source": [ + "'''A motor fitted with a flywheel supplies a load torque of 1000 N-m for 2 seconds.During no load period,the flywheel regains its\n", + "original speed.The motor torque is to be limited to 500 N-m.Find moment of inertia of the flywheel.No load speed of the motor is \n", + "500 rpm and its full load slip is 10%.'''\n", + "\n", + "from sympy import solve,Eq,Symbol\n", + "import math as m\n", + "N = 500.0 #rpm (No load speed)\n", + "s = 0.1 # (slip)\n", + "Tfl = 500.0 #N-m (full load torque)\n", + "Tl = 1000.0 #N-m (load torque with flywheel)\n", + "t = 2.0 #s (time) \n", + "#Now, s = K*Tfl\n", + "K = (2*3.14*(N*s))/(Tfl*60) #constant\n", + "\n", + "\n", + "#Also, Tm = Tl*(1 - exp(-t/I*K))\n", + "I =-t/(K*m.log(1 - Tfl/Tl)) #(moment of inertia)\n", + "\n", + "print \"Moment of inertia of flywheel =\",round(I,2),\"kg-m^2.\"" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "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.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter46.ipynb b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter46.ipynb new file mode 100644 index 00000000..68e70d63 --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter46.ipynb @@ -0,0 +1,95 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# CHAPTER 46 : ELECTRONIC CONTROL OF A.C MOTORS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 46.1 , PAGE NO :- 1827" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ton = 1.89 ms.\n", + "magnitude of the current pulse I0 = 102.31 A.\n" + ] + } + ], + "source": [ + "'''The wound-rotor induction motor of Fig.43.5 is rated at 30-kW,975 rpm,440-V,50 Hz.The open-circuit line voltage is 400V and the load\n", + "resistance is 0.5 ohm.If chopper frequency is 200 Hz,calculate Ton so that the motor develops a gross torque of 200 N-m at 750 rpm.Also,\n", + "calculate the magnitude of the current pulses drawn from the capacitor.'''\n", + "\n", + "import math as m\n", + "Ns = 1000.0 #rpm (Synchronus speed)\n", + "N1 = 750.0 #rpm (rotating speed)\n", + "E2 = 400.0 #V (OC line voltage)\n", + "Tg = 200.0 #N-m (gross torque)\n", + "R0 = 0.5 #ohm (load resistance)\n", + "f = 200.0 #Hz (chopper frequency)\n", + "s = (Ns-N1)/Ns # slip\n", + "Vrl = s*E2 #V (rotor line voltage)\n", + "Vdc = 135.0 #V (DC voltage of 3-phase bridge rectifier)\n", + "#Now, Tg = P^2/(2*3.14*Ns).Therefore,\n", + "P2 = Tg*2*3.14*Ns/60 #W\n", + "#Power dissipated as heat\n", + "sP2 = s*P2 #W\n", + "#Power is actually dissipated in R and is equal to rectifier output Vdc*Idc.Therefore,\n", + "Idc = sP2/Vdc #A\n", + "#The apparent resistance at the input of chopper is\n", + "Ra = Vdc/Idc #ohm\n", + "#Now, Ra = Ro/(f*Ton)^2 .Therefore,\n", + "Ton = m.sqrt(R0/(f*f*Ra))*1000 #ms\n", + "#Current in R0 can be found from relation,I0^2*R0 = sP2\n", + "I0 = m.sqrt(sP2/R0) #A\n", + "print \"Ton = \",round(Ton,2),\"ms.\"\n", + "print \"magnitude of the current pulse I0 =\",round(I0,2),\"A.\"" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "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.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter47.ipynb b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter47.ipynb new file mode 100644 index 00000000..c29e8c0a --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter47.ipynb @@ -0,0 +1,737 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# CHAPTER 47 : ELECTRIC HEATING\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.1 , PAGE NO :- 1841" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Length of wire = 16.07 m.\n", + "Diameter of wire = 2.72 mm.\n" + ] + } + ], + "source": [ + "'''A resistance oven employing nichrome wire is to be operated from 220 V single-phase supply and is to be rated at 16 kW.\n", + "If the temperature of the element is to be limited to 1,170°C and average temperature of the charge is 500°C, find the\n", + "diameter and length of the element wire.\n", + "Radiating efficiency = 0.57, Emmissivity=0.9, Specific resistance of nichrome=(109e–8)ohm-m.'''\n", + "\n", + "\n", + "P = 16000.0 #W (output power)\n", + "V = 220.0 #V (applied voltage)\n", + "rho = 109.0e-8 #ohm-m (resistivity)\n", + "e = 0.9 # (Emmisivity)\n", + "K = 0.57 # (Radiating efficiency)\n", + "T1 = 1170.0 + 273.0 #K (Temp of hot body)\n", + "T2 = 500.0 + 273.0 #K (Temp of cold body)\n", + "\n", + "#Now , l/d^2 = pi*V^2/4*rho*P = a .Therefore a is\n", + "a = 3.14*(V**2)/(4*rho*P) # (a = l/d^2) ------ 1\n", + " \n", + "#Using Stefan's law of radiation \n", + "H = 5.72*e*K*((T1/100)**4-(T2/100)**4) #W/m^2\n", + "\n", + "#Total heat dissipated = electrical power input\n", + "# (pi*d)*l*H = P . Therefore ,let b = l*d. So,\n", + "b = P/(H*3.14)\n", + "b2 = b**2 #(b2 = l^2*d^2)------------------------ 2\n", + "\n", + "#Multiplying 1 and 2.\n", + "l3 = a*b2 # ( = l^3)\n", + "l = l3**(1/3.0) #m (length)\n", + "d = b/l*1000 #mm (diameter)\n", + "\n", + "print \"Length of wire =\",round(l,2),\"m.\"\n", + "print \"Diameter of wire =\",round(d,2),\"mm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.2 , PAGE NO :- 1841" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Width of strip = 7.4 mm.\n" + ] + } + ], + "source": [ + "'''A 30-kW, 3-phase, 400-V resistance oven is to employ nickel-chrome strip 0.254 mm thick for the three star-connected heating\n", + "elements.If the wire temperature is to be 1,100°C and that of the charge to be 700°C, estimate a suitable width for the strip.\n", + "Assume emissivity = 0.9 and radiating efficiency to be 0.5 and resistivity of the strip material is 101.6e-8 ohm- m.What would be\n", + "the temperature of the wire if the charge were cold ?'''\n", + "\n", + "import math as m\n", + "\n", + "P = 30.0*1000 *(1/3.0) #W (Power/phase)\n", + "V = 400.0/m.sqrt(3) #V (Phase voltage)\n", + "rho = 101.6e-8 #ohm-m (resistivity)\n", + "e = 0.9 # (emmisivity)\n", + "K = 0.5 # (radiating efficiency)\n", + "t = 0.254e-3 #m (thickness of strip)\n", + "T1 = 1100.0 + 273 #K (Temp. of hot wire)\n", + "T2 = 700.0 + 273 #K (Temp. of charge) \n", + "R = V*V/P #ohm (Resistance => P = V^2/R)\n", + "\n", + "# R = rho*l/(w*t) l/w = R*t/rho = a.Therefore a is\n", + "a = R*t/rho #(=l/w)------------------------------------ 1\n", + "\n", + "#Using stefan's law\n", + "H = 5.72*e*K*((T1/100)**4-(T2/100)**4) #W/m^2\n", + "\n", + "#Surface area of strip = 2*w*l .\n", + "#Total Heat dissipated = electrical power => wl*2H = P . Let b = wl\n", + "b = P/(2*H) #(=wl)----------------------------------------- 2\n", + "\n", + "#Dividing 1 by 2\n", + "w2 = b/a #(=w*w)\n", + "w = m.sqrt(w2)*1000 #mm (width)\n", + "print \"Width of strip =\",round(w,2),\"mm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.3 , PAGE NO :- 1842" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Loading in kW = 13.51 kW.\n", + "Efficency of Tank = 87.41 %\n" + ] + } + ], + "source": [ + "'''A cubic water tank has surface area of 6.0 m^2 and is filled to 90% capacity six times daily. The water is heated from 20°C \n", + "to 65°C.The losses per square metre of tank surface per 1°C temperature difference are 6.3 W. Find the loading in kW and the\n", + "efficiency of the tank.Assume specific heat of water = 4,200 J/kg/°C and one kWh = 3.6 MJ.'''\n", + "\n", + "import math as m\n", + "sa = 6.0 #m^2 (surface area)\n", + "T2 = 65.0 #*C (final temp)\n", + "T1 = 20.0 #*C (initial temp)\n", + "loss = 6.3 #W/*C/m^2 (loss per square metre per 1*C)\n", + "s = 4200.0 #J/Kg/*C (Specific heat)\n", + "\n", + "#Now, sa = 6*l^2\n", + "l = m.sqrt(sa/6) #m\n", + "\n", + "#Volume = l^3\n", + "V = l**3 #m^3\n", + "\n", + "#Volume of water to be heated daily is\n", + "V2 = 6*V*0.9 #m^3\n", + "\n", + "#Since 1m^3 = 1000 kg => mass of water to be heated is\n", + "mass = V2*1000.0 #kg\n", + "\n", + "#Heat required to raise temp =\n", + "H = mass*s*(T2-T1) #MJ\n", + "H = H/(3.6*10e+5) #kWh\n", + "\n", + "#Daily loss from surface\n", + "L = 6*loss*(T2-T1)*(24.0/1000) #kWh\n", + "\n", + "#Total energy required\n", + "Tot = L + H #kWh \n", + "#(i) Loading in KW is\n", + "load = Tot/24 #kW\n", + "\n", + "#(ii)Efficiency of tank is\n", + "eff = (H/Tot)*100.0 # (% efficency)\n", + "print \"Loading in kW = \",round(load,2),\"kW.\"\n", + "print \"Efficency of Tank =\",round(eff,2),\"%\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.4 , PAGE NO :- 1844" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power factor = 0.9487\n", + "Power drawn from supply = 900.0 kW.\n", + "Time required for melting steel = 40.0 minutes. and 46.0 seconds.\n" + ] + } + ], + "source": [ + "'''A 4-phase electric arc furnace has the following data :\n", + "Current drawn = 5000 A ; Arc voltage = 50 V\n", + "Resistance of transformer referred to secondary = 0.002 ohm\n", + "Resistance of transformer referred to secondary = 0.004 ohm\n", + "(i) Calculate the power factor and kW drawn from the supply.\n", + "(ii) If the overall efficiency of the furnace is 65%, find the time required to melt 2 tonnes of steel if\n", + "latent heat of steel = 8.89 kcal/kg, specific heat of steel = 0.12, melting point of steel = 1370°C and\n", + "initial temperature of steel = 20°C.'''\n", + "\n", + "import math as m\n", + "\n", + "I = 5000.0 #A (current drawn)\n", + "V = 50.0 #V (Arc Voltage) \n", + "Rs = 0.002 #ohm (transformer resistance on secondary)\n", + "Xs = 0.004 #ohm (transformer reactance on secondary)\n", + "T2 = 1370.0 #*C (final temp)\n", + "T1 = 20.0 #*C (initial temp)\n", + "\n", + "# Voltage drop due to resistance =\n", + "Vr = I*Rs #V\n", + "\n", + "# Voltage drop due to reactance =\n", + "Vx = I*Xs #V\n", + "\n", + "#Total Voltage is (Using vector sum)\n", + "V_tot = m.sqrt((V+Vr)**2 + Vx**2) #V\n", + "\n", + "#(i) Supply power factor is\n", + "pf = (V+Vr)/V_tot\n", + "\n", + "#Total Power drawn => P = 3*VI*(power factor)\n", + "P = 3*V_tot*I*pf/1000 #kW\n", + "\n", + "print \"Power factor =\",round(pf,4)\n", + "print \"Power drawn from supply =\",round(P,2),\"kW.\"\n", + "#Energy required to melt 2 tonnes of steel\n", + "m = 2000.0 #kg\n", + "s = 0.12 # (specific heat of steel)\n", + "L = 8.89 #kcal/kg (latent heat of steel)\n", + "\n", + "enrgy = m*s*(T2-T1) + m*L #kcal\n", + "enrgy = enrgy/860.0 #kWh\n", + "\n", + "#Utilised power\n", + "P = 0.65*P #kW\n", + "\n", + "#Time required for melting steel\n", + "Time = enrgy/P #hr\n", + "Time = Time*60 #min\n", + "Sec = (round(Time,2) - round(Time,-1) )*60 #sec\n", + "\n", + "print \"Time required for melting steel =\",round(Time,-1),\"minutes. and \",round(Sec),\"seconds.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.5 , PAGE NO :- 1845" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "#Total KVA taken from supply line = 2145.63 KVA .\n" + ] + } + ], + "source": [ + "'''If a 3-phase arc furnace is to melt 10 tonne steel in 2 hours, estimate the average input to the furnace if overall\n", + "efficiency is 50%. If the current input is 9,000 A with the above kW input and the resistance and reactance of furnace leads\n", + "(including transformer) are 0.003 ohm and 0.005 ohm respectively, estimate the arc voltage and total kVA taken from the supply\n", + "Specific heat of steel = 444 J /kg/°C ,Latent heat of fusion of steel = 37.25 kJ/kg , Melting point of steel = 1,370 °C.'''\n", + "\n", + "from sympy import Symbol,solve,Eq,sqrt\n", + "import math as m\n", + "\n", + "mass = 10000.0 #kg (mass in kg)\n", + "t = 2.0 #hr (time taken to melt)\n", + "eff = 50.0 #% (overall efficiency)\n", + "I = 9000.0 #A (current input)\n", + "Rs = 0.003 #ohm (secondary resistance)\n", + "Xs = 0.005 #ohm (secondary reactance)\n", + "s = 444.0 #J/kg/*C (specific heat of steel)\n", + "L = 37250 #J/kg (latent heat of fusion)\n", + "T2 = 1370.0 #*C (final temp)\n", + "T1 = 20.0 #*C (initial temp)\n", + "\n", + "#Energy required to melt 10 tonnes of steel\n", + "\n", + "enrgy = mass*s*(T2-T1) + mass*L #J\n", + "enrgy = enrgy/(1000*3600) #kWh\n", + "\n", + "#Avg output power = energy/time\n", + "P = enrgy/t #kW\n", + "#Avg input power =\n", + "Pin = P/eff*100\n", + "\n", + "#Voltage drop due to resistance\n", + "Vr = I*Rs #V\n", + "#Voltage drop due to reactance\n", + "Vx = I*Xs #V\n", + "\n", + "#Now,Let Va is arc drop voltage\n", + "Va = Symbol('Va') #V\n", + "Vt = sqrt((Va+Vr)**2 + Vx**2) \n", + "pf = (Va+Vr)/Vt \n", + "#Total power input = 3*(Vt*It*pf)\n", + "\n", + "eq = Eq(Pin*1000,3*Vt*I*pf)\n", + "Va = solve(eq) #V\n", + "\n", + "Va1 = Va[0]\n", + "Vt = sqrt((Va1+Vr)**2 + Vx**2)\n", + "\n", + "#Total KVA taken from supply line =\n", + "power = 3*Vt*I/1000\n", + "\n", + "print \"#Total KVA taken from supply line =\",round(power,2),\"KVA .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 47.6 , PAGE NO :- 1850" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Efficiency of induction furnace = 59.35 %.\n" + ] + } + ], + "source": [ + "'''Determine the efficiency of a high-frequency induction furnace which takes 10 minutes to melt 2 kg of a aluminium initially \n", + "at a temperature of 20°C. The power drawn by the furnace is 5 kW, specific heat of aluminium = 0.212, melting point of \n", + "aluminium = 660° C and latent heat of fusion of aluminium. = 77 kcal/kg.'''\n", + "\n", + "m = 2.0 #kg (mass of alluminium)\n", + "L = 77.0 #kcal/kg (Latent heat of fusion)\n", + "T2 = 660.0 #*C (final temp)\n", + "T1 = 20.0 #*C (initial temp)\n", + "s = 0.212 # (specific heat of alluminium)\n", + "Pin = 5.0 #kW (input power)\n", + "#Heat required to melt alluminium\n", + "H1 = m*L #kcal\n", + "#Heat required to raise the temperature\n", + "H2 = m*s*(T2 - T1) #kcal\n", + "#Total heat\n", + "heat_tot = H1 + H2 #kcal\n", + "#Heat required per hour\n", + "enrgy = heat_tot/(10.0/60) #kcal\n", + "#Power delivered to alluminium\n", + "Power = enrgy/860 #kW\n", + "\n", + "eff = Power/Pin*100 #(% efficiency)\n", + "\n", + "print \"Efficiency of induction furnace = \",round(eff,2),\"%.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.7 , PAGE NO :- 1850" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power absorbed = 577.0 kW.\n", + "power factor = 0.83\n" + ] + } + ], + "source": [ + "'''A low-frequency induction furnace has a secondary voltage of 20V and takes 600 kW at 0.6 p.f. when the hearth is full. If the\n", + "secondary voltage is kept constant, determine the power absorbed and the p.f. when the hearth is half-full. Assume that the\n", + "resistance of the secondary circuit is doubled but the reactance remains the same.'''\n", + "\n", + "import math as m\n", + "\n", + "V = 20.0 #V (secondary voltage)\n", + "P = 600*1000 #W (Input Power)\n", + "pf = 0.6 # (power factor)\n", + "\n", + "#Inital secondary current using P = VI*pf\n", + "I = P/(V*pf) #A (secondary current)\n", + "\n", + "#Now, pf = cosQ , .'. sinQ = sqrt(1-pf^2)\n", + "Vr = V*pf #V (Voltage across resistance)\n", + "Vx = V*m.sqrt(1-pf**2) #V (Voltage across reactance)\n", + "\n", + "#As, Vr = I*R and Vx = I*X\n", + "\n", + "R = Vr/I #ohm\n", + "X = Vx/I #ohm\n", + "\n", + "#When hearth is half-full\n", + "R2 = 2*R\n", + "X2 = X\n", + "pf = R2/m.sqrt(R2**2 + X2**2) #(new power factor)\n", + "\n", + "Vr = V*pf #V (Voltage across resistance)\n", + "#As, Vr = I*R\n", + "I = Vr/R2 #A\n", + "\n", + "power = V*I*pf/1000 #kW\n", + "\n", + "print \"Power absorbed =\",round(power),\"kW.\"\n", + "print \"power factor =\",round(pf,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.8 , PAGE NO :- 1851" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total furnace input = 119.37 kWh .\n" + ] + } + ], + "source": [ + "'''Estimate the energy required to melt 0.5 tonne of brass in a single-phase induction furnace. If the melt is to be carried out\n", + "in 0.5 hour, what must be the average power input to the furnace?\n", + "Specific heat of brass = 0.094\n", + "Latent heat of fusion of brass = 39 kilocal/kg\n", + "Melting point of brass = 920°C\n", + "Furnace efficiency = 60.2%\n", + "The temperature of the cold charge may be taken as 20°C.'''\n", + "\n", + "m = 0.5*1000 #kg (mass of brass)\n", + "s = 0.094 # (specific heat)\n", + "T2 = 920.0 #*C (final temp)\n", + "T1 = 20.0 #*C (initial temp)\n", + "L = 39.0 #kcal/kg(Latent heat of fusion)\n", + "eff = 60.2 # (% efficiency)\n", + "\n", + "#Total amount of heat req to melt 0.5 kg brass\n", + "H = m*L + m*s*(T2-T1) #kcal\n", + "H = H/860 #kWh\n", + "H_tot = H/(eff)*100 #kWh (input energy required)\n", + "\n", + "print \"Total furnace input =\",round(H_tot,2),\"kWh .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.9 , PAGE NO :- 1851" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "height for maximum heat = 0.75 *H.\n" + ] + } + ], + "source": [ + "'''A low-frequency induction furnace whose secondary voltage is maintained constant at 10 V, takes 400 kW at 0.6 p.f. when the\n", + "hearth is full.Assuming the resistance of the secondary circuit to vary inversely as the height of the charge and reactance to \n", + "remain constant,find the height upto which the hearth should be filled to obtain maximum heat.'''\n", + "\n", + "\n", + "import math as m\n", + "V2 = 10.0 #V (secondary voltage)\n", + "P = 400.0*1000 #kW (power)\n", + "pf = 0.6 # (power factor)\n", + "\n", + "\n", + "#Secondary current is (Using P = VI*cosQ)\n", + "I = P/(V2*pf) #A\n", + "\n", + "#Impedance of secondary circuit is\n", + "Z = V2/I #ohm\n", + "#Now, R = Z*cosQ X = Z*sinQ\n", + "R = Z*pf #ohm (resistance)\n", + "X = Z*m.sqrt(1-pf**2) #ohm (reactance)\n", + "\n", + "#Let height of charge be 'x' times of the full hearth h = x*H\n", + "#Resistance varies inersely as height .Therefore,\n", + "# R' = R/x\n", + "\n", + "#Now ,for max heat resistance should be equal to reactance.Therefore,\n", + "x = R/X\n", + "\n", + "print \"height for maximum heat = \",round(x,2),\"*H.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.10 , PAGE NO :- 1853" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage = 798.04 V.\n" + ] + } + ], + "source": [ + "'''A slab of insulating material 150 cm^2 in area and 1 cm thick is to be heated by dielectric heating. The power required is \n", + "400 W at 30 MHz.Material has relative permittivity of 5 and p.f. of 0.05. Determine the necessary voltage. Absolute\n", + "permittivity = 8.854e - 12 F/m.'''\n", + "\n", + "import math as m\n", + "\n", + "P = 400.0 #W (power)\n", + "f = 30.0e+6 #Hz (frequency)\n", + "A = 150.0e-4 #m^2 (area)\n", + "d = 1.0e-2 #m (thickness)\n", + "er = 5.0 # (relative permitivity)\n", + "e0 = 8.89e-12#F/m (absolute permitivity)\n", + "pf = 0.05 # (power factor) \n", + "#Capacitance\n", + "C = (A/d)*(er*e0) #F\n", + "\n", + "#Now, P = (2*pi*f)*(C*V^2)*pf .Therefore V is\n", + "V = m.sqrt(P/(2*3.14*f*C*pf)) #V\n", + "print \"Voltage =\",round(V,2),\"V.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.11 , PAGE NO :- 1853" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage = 846.45 V.\n", + "Current through material = 9.45 A.\n", + "Frequency = 58.49 MHz.\n" + ] + } + ], + "source": [ + "'''An insulating material 2 cm thick and 200 cm^2 in area is to be heated by dielectric heating. The material has relative \n", + "permitivity of 5 and power factor of 0.05.Power required is 400 W and frequency of 40 MHz is to be used. Determine the necessary\n", + "voltage and the current that will flow through the material.If the voltage were to be limited to 700 V, what will be the \n", + "frequency to get the same loss? '''\n", + "\n", + "import math as m\n", + "\n", + "d = 2.0e-2 #m (Thickness)\n", + "A = 200e-4 #m^2 (Area)\n", + "er = 5 # (relative permitivity)\n", + "pf = 0.05 # (power factor)\n", + "f = 40.0e+6 #Hz (frequency)\n", + "P = 400.0 #W (power)\n", + "e0 = 8.89e-12 # (absolute permitivity)\n", + "\n", + "C = (A/d)*(e0*er) #F (Capacitance)\n", + "\n", + "#Now, P = 2*pi*f*C*V^2*pf\n", + "V = m.sqrt(P/(2*3.14*f*C*pf)) #V\n", + "\n", + "#Also, P = VI*cosQ .Therefore,current through material\n", + "I = P/(V*pf) #A\n", + "\n", + "#Heat produced is propotional to V^2*f. (V2/V1)^2 = (f1/f2)\n", + "f2 = f*(V/700)**2 #Hz\n", + "f2 = f2/(10e+5) #MHz \n", + "\n", + "print \"Voltage = \",round(V,2),\"V.\"\n", + "print \"Current through material =\",round(I,2),\"A.\"\n", + "print \"Frequency = \",round(f2,2),\"MHz.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 47.12 , PAGE NO :- 1853" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power input = 750.0 W .\n" + ] + } + ], + "source": [ + "'''A plywood board of 0.5*0.25*0.02 metre is to be heated from 25 to 125°C in 10 minutes by dielectric heating employing a\n", + "frequency of 30 MHz. Determine the power required in this heating process. Assume specific heat of wood 1500/J/kg/°C; \n", + "weight of wood 600 kg/m3 and efficiency of process 50%.'''\n", + "\n", + "\n", + "Vol = 0.5*0.25*0.02 #m^3 (Volume of plywood to be heated)\n", + "f = 30.0e+6 #Hz (frequency)\n", + "t = 10.0 #minutes (time)\n", + "T2 = 125.0 #*C (final temperature)\n", + "T1 = 25.0 #*C (initial temperature)\n", + "s = 1500.0 #J/kg/*C (specific heat of wood)\n", + "den = 600.0 #kg/m^3 (weight of wood)\n", + "eff = 50.0 #% (efficiency of process)\n", + "\n", + "wt = den*Vol #kg (weight of plywood)\n", + "#Heat required to raise the temp is\n", + "H = wt*s*(T2-T1) #J\n", + "H = H/3600 #Wh\n", + "\n", + "#As P = H/t .Therfore power required for heating\n", + "P = H/(10.0/60) #W\n", + "\n", + "#As efficiency is 50%\n", + "Pin = P/eff*100 #W\n", + "\n", + "print \"Power input =\",round(Pin,2),\"W .\"" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "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.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter49.ipynb b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter49.ipynb new file mode 100644 index 00000000..43b0f76c --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter49.ipynb @@ -0,0 +1,1745 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# CHAPTER 49 : ILLUMINATION" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.1 , PAGE NO :- 1899" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Illumination at point = 0.76 lm/m^2 .\n" + ] + } + ], + "source": [ + "'''A lamp giving out 1200 lm in all directions is suspended 8 m above the working plane. Calculate the illumination at a point on\n", + "the working plane 6 m away from the foot of the lamp.'''\n", + "\n", + "import math as m\n", + "\n", + "I = 1200/(4*3.14) #Cd (luminous intensity of lamp)\n", + "h = 8.0 #m (height)\n", + "b = 6.0 #m (breadth) \n", + "length = m.sqrt(h**2 + b**2) #m\n", + "\n", + "cosQ = h/length\n", + "E = I*cosQ/length**2 #lm/m^2\n", + "\n", + "print \"Illumination at point =\",round(E,2),\"lm/m^2 .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.2 , PAGE NO :- 1899" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Distance between A and B is = 19.08 m.\n" + ] + } + ], + "source": [ + "'''A small light source with intensity uniform in all directions is mounted at a height of 10 metres above a horizontal surface.\n", + "Two points A and B both lie on the surface with point A directly beneath the source. How far is B from A if the illumination at B\n", + "is only 1/10 as great as at A ?'''\n", + "\n", + "from sympy import Eq,solve,Symbol\n", + "\n", + "#let the intensity of lamp be I and distance between A and B be x metres\n", + "x = Symbol('x')\n", + "\n", + "l = 10.0 #m (vertical distance)\n", + "#Illumination at point A\n", + "Ea = I/l**2 #lux\n", + "#Illumination at point B\n", + "\n", + "Eb = I/(l**2)*(l/(l**2 + x**2)**0.5)**3\n", + "\n", + "I = 10.0 #lm (assumed value as the equation does not depend on I)\n", + "#As Eb = 1/10*Ea\n", + "eq = Eq(Eb,Ea/10.0)\n", + "x = solve(eq)\n", + "\n", + "x1 = x[1]\n", + "\n", + "print \"Distance between A and B is =\",round(x1,2),\"m.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 49.3 , PAGE NO :- 1900" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Illumination due to 4 lamps = 6.16 lm/m^2 .\n" + ] + } + ], + "source": [ + "'''A corridor is lighted by 4 lamps spaced 10 m apart and suspended at a height of 5 m above the centre line of the floor.\n", + "If each lamp gives 200 C.P. in all directions below the horizontal,find the illumination at the point on the floor mid-way\n", + "between the second and third lamps.'''\n", + "\n", + "import math as m\n", + "\n", + "I = 200.0 #C.P (luminous intensity)\n", + "h = 5.0 #m (height between lamps and ground)\n", + "l1 = 15.0 #m (horizantal distance 1)\n", + "l2 = 5.0 #m (horizantal distance 2)\n", + "\n", + "d1 = m.sqrt(h**2 + l1**2) #m (Dist btwn L1 and mid-pt)\n", + "d2 = m.sqrt(h**2 + l2**2) #m (Dist btwn L2 and mid-pt)\n", + "\n", + "#(i)Illumination due to L1\n", + "#L = (I/r^2)*cosQ\n", + "L1 = (I/d1**2)*(h/d1) #lm/m^2\n", + "\n", + "#(ii)Illumination due to L2\n", + "L2 = (I/d2**2)*(h/d2) #lm/m^2\n", + "\n", + "#Illumination at mid-pt due to 4-lamps\n", + "Lt = 2*(L1+L2) #lm/m^2\n", + "\n", + "print \"Illumination due to 4 lamps = \",round(Lt,2),\"lm/m^2 .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.4 , PAGE NO :- 1901" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Reading of photometer = 0.066 lm/m^2.\n" + ] + } + ], + "source": [ + "'''Two lamps A and B of 200 candela and 400 candela respectively are situated 100 m apart. The height of A above the ground \n", + "level is 10 m and that of B is 20 m. If a photometer is placed at the centre of the line joining the two lamp posts,\n", + "calculate its reading.'''\n", + "\n", + "import math as m\n", + "I1 = 200.0 #Cd (lamp 1 intensity)\n", + "I2 = 400.0 #Cd (lamp 2 intensity)\n", + "h1 = 10.0 #m (height between lamp 1 and ground)\n", + "h2 = 20.0 #m (height between lamp 2 and ground)\n", + "d1 = 50.0 #m (horizontal distance from 1)\n", + "d2 = 50.0 #m (horizontal distance from 2)\n", + "\n", + "l1 = m.sqrt(h1**2 + d1**2)\n", + "l2 = m.sqrt(h2**2 + d2**2)\n", + "\n", + "cosQ1 = h1/l1\n", + "cosQ2 = h2/l2\n", + "\n", + "#Illumination at point C = Illumination due to 1 + Illumination due to 2\n", + "I_tot = (I1/l1**2)*cosQ1 + (I2/l2**2)*cosQ2 #lm/m^2\n", + "\n", + "print \"Reading of photometer =\",round(I_tot,3),\"lm/m^2.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.5 , PAGE NO :- 1901" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Average Brightness = 6375.22 cd/m^2.\n", + "cost of running = Rs 150.0\n" + ] + } + ], + "source": [ + "'''The average luminous output of an 80-W fluorescent lamp 1.5 metre in length and 3.5 cm diameter is 3300 lumens. Calculate its\n", + "average brightness.If the auxiliary gear associated with the lamp consumes a load equivalent to 25 percent of the lamp,\n", + "calculate the cost of running a twin unit for 2500 hours at 30 paise per kWh.'''\n", + "\n", + "\n", + "length = 1.5 #m (lamp output length)\n", + "dia = 3.5e-2 #m (lamp output diameter)\n", + "l_flux = 3300.0 #lumens (luminous flux)\n", + "P = 80.0 #W (Power output)\n", + "\n", + "#Surface area of lamp\n", + "sa = 3.14*dia*length #m^2\n", + "\n", + "#Flux emmited per unit area\n", + "fluxA = l_flux/sa #lm/m^2\n", + "#Therefore,\n", + "B = fluxA/3.14 #cd/m^2\n", + "print \"Average Brightness =\",round(B,2),\"cd/m^2.\"\n", + "#Total load of twin fitting\n", + "load = 2*(P +0.25*P) #W\n", + "time = 2500.0 #hr\n", + "enrgy = load*time/1000 #kWh (Energy consumed)\n", + "\n", + "#Total cost\n", + "cost = enrgy*0.3 #Rs\n", + "print \"cost of running = Rs\",round(cost)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.6 , PAGE NO :- 1901" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "lamp wattage = 4415.63 W.\n" + ] + } + ], + "source": [ + "'''A small area 7.5 m in diameter is to be illuminated by a lamp suspended at a height of 4.5 m over the centre of the area.\n", + "The lamp having an efficiency of 20 lm/w is fitted with a reflector which directs the light output only over the surface to be\n", + "illuminated,giving uniform candle power over this angle. Utilisation coefficient = 0.40. Find out the wattage of the lamp.\n", + "Assume 800 lux of illumination level from the lamp.'''\n", + "\n", + "dia = 7.5 #m (diameter)\n", + "h = 4.5 #m (height)\n", + "E = 800.0 #lux (illumination) \n", + "eff = 20.0 #lm/w (lamp efficiency)\n", + "A = 3.14*(dia**2)/4\n", + "#Luminous flux reaching the surface\n", + "flux = A*E #lm\n", + "\n", + "#Total flux emmited is\n", + "f_out = flux/0.4 #lm\n", + "\n", + "#Lamp in watts\n", + "watt = f_out/eff #W\n", + "print \"lamp wattage =\",round(watt,2),\"W.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.7 , PAGE NO :- 1902" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Illumination = 5.0 lux.\n" + ] + } + ], + "source": [ + "'''A lamp of 100 candela is placed 1 m below a plane mirror which reflects 90% of light falling on it. The lamp is hung 4 m above\n", + "ground.Find the illumination at a point on the ground 3 m away from the point vertically below the lamp.'''\n", + "\n", + "import math as m\n", + "\n", + "h1 = 4.0 #m (height of 1 from ground)\n", + "d1 = 3.0 #m (horizontal distance 1)\n", + "I1 = 100.0 #cd (intenstity)\n", + "\n", + "l1 = m.sqrt(h1**2 + d1**2) #m\n", + "cosQ1 = h1/l1\n", + "#The lamp L1 will produce the image L2 1m behind the mirror.Therefore,\n", + "\n", + "h2 = h1+1+1 #m (height of 2 from ground)\n", + "d2 = 3.0 #m (horizontal distance 2)\n", + "I2 = 0.9*I1 #cd (intensity)\n", + "\n", + "l2 = m.sqrt(h2**2 + d2**2) #m\n", + "cosQ2 = h2/l2\n", + "\n", + "#Illumination at the required point is\n", + "\n", + "E = I1/l1**2*cosQ1 + I2/l2**2*cosQ2 #lux\n", + "\n", + "print \"Illumination = \",round(E),\"lux.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.8 , PAGE NO :- 1902" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Average illumination = 924.08 lux .\n" + ] + } + ], + "source": [ + "'''A light source having an intensity of 500 candle in all directions is fitted with a reflector so that it directs 80% of its\n", + "light along a beam having a divergence of 15º. What is the total light flux emitted along the beam? What will be the average\n", + "illumination produced on a surface normal to the beam direction at a distance of 10 m? '''\n", + "\n", + "import math as m\n", + "\n", + "I = 500.0 #cd (intensity)\n", + "Q = 15.0 #degrees (Beam angle)\n", + "h = 10.0 #m (height)\n", + "\n", + "#Total flux emmited is\n", + "flux = 0.8*(4*3.14*I) #lm\n", + "#radius of circle to be illuminated\n", + "r = h*m.tan(Q/2*(3.14/180)) #m\n", + "\n", + "#Area of surface to be illuminated is\n", + "A = 3.14*(r*r) #m^2\n", + "\n", + "#Avg illumination\n", + "avg = flux/A #lux\n", + "\n", + "print \"Average illumination =\",round(avg,2),\"lux .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.9 , PAGE NO :- 1902" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "----Without reflector ----\n", + "Illumination at centre = 0.75 lm/m^2.\n", + "Illumination at edge = 0.54 lm/m^2.\n", + "----With reflector ----\n", + "Illumination at every point = 6.0 lm/m^2\n" + ] + } + ], + "source": [ + "'''A lamp has a uniform candle power of 300 in all directions and is fitted with a reflector which directs 50% of the total\n", + "emitted light uniformly on to a flat circular disc of 20 m diameter placed 20 m vertically below the lamp. Calculate the\n", + "illumination (a) at the centre and (b)at the edge of the surface without the reflector. Repeat these two calculations with\n", + "the reflector provided.'''\n", + "\n", + "import math as m\n", + "\n", + "I = 300.0 #Cd (intensity)\n", + "h = 20.0 #m (height)\n", + "dia = 20.0 #m (diameter of luminous area)\n", + "\n", + "#(i)Without reflector\n", + "Ec = I/h**2 #lm/m^2 (illumination at centre)\n", + "\n", + "theta = m.atan((dia/2)/h)\n", + "l = m.sqrt(h**2 + (dia/2)**2) #m (distance between edge and source lamp)\n", + "\n", + "Eb = I/l**2*m.cos(theta) #lm/m^2 (illuminaton at edge)\n", + "print \"----Without reflector ----\"\n", + "print \"Illumination at centre =\",round(Ec,2),\"lm/m^2.\"\n", + "print \"Illumination at edge =\",round(Eb,2),\"lm/m^2.\"\n", + "\n", + "#(ii)With reflector\n", + "#Luminous output of lamp\n", + "lflux = I*4*3.14 #lm\n", + "\n", + "#flux directed by reflector\n", + "reflux = 0.5*lflux #lm\n", + "\n", + "#Area of disc\n", + "A = 3.14*(dia*dia)/4 #m^2\n", + "\n", + "#Illumination at every point will be same and will be equal to\n", + "Et = reflux/A #lm/m^2\n", + "\n", + "print \"----With reflector ----\"\n", + "print \"Illumination at every point =\",round(Et,2),\"lm/m^2\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.10 , PAGE NO :- 1903" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Iluminaton at P = 11.11 cd/m^2\n", + "Iluminaton at Q = 3.93 cd/m^2\n", + "Total radiations sent = 314.0 lumens.\n" + ] + } + ], + "source": [ + "'''A light is placed 3 m above the ground and its candle power is 100 cos θ in any downward direction making an angle q with the\n", + "vertical. If P and Q are two points on the grond, P being vertically under the light and the distance PQ being 3 m, calculate.\n", + "(a) the illumination of the ground at P and also at Q.\n", + "(b) the total radiations sent down by the lamp.'''\n", + "\n", + "import math as m\n", + "from scipy.integrate import quad\n", + "\n", + "r1 = 3.0 #m\n", + "r2 = m.sqrt(3**2 + 3**2) #m\n", + "#(a)\n", + "#Candela Power along LP\n", + "CP1 = 100.0*m.cos(0) #cd\n", + "#Illumination at P is\n", + "Ep = CP1/(r1**2) #cd/m^2\n", + "\n", + "#Candela Power along LQ\n", + "CP2 = 100.0*m.cos(45*3.14/180) #cd\n", + "\n", + "#Illumination at Q is\n", + "Eq = CP2/(r2**2) #cd/m^2\n", + "\n", + "print \"Iluminaton at P = \",round(Ep,2),\"cd/m^2\"\n", + "print \"Iluminaton at Q = \",round(Eq,2),\"cd/m^2\"\n", + "\n", + "#After working out , total flux = integral (100*pi*sin2Q*dQ) 0->pi/2\n", + "\n", + "def integrand(Q):\n", + " return 100*3.14*m.sin(2*Q)\n", + "\n", + "ans, err = quad(integrand, 0,3.14/2)\n", + "print \"Total radiations sent = \",round(ans),\"lumens.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.11 , PAGE NO :- 1903" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of lamps = 21.0\n" + ] + } + ], + "source": [ + "'''A drawing office containing a number of boards and having a total effective area of 70 m2 is lit by a number of 40 W\n", + "incandescent lamps giving 11 lm/W. An illumination of 80 lux is required on the drawing boards. Assuming that 60% of the\n", + "total light emitted by the lamps is available for illuminating the drawing boards, estimate the number of lamps required.'''\n", + "\n", + "A = 70.0 #m^2 (area)\n", + "watt = 40.0 #W (each bulb wattage)\n", + "eff = 11.0 #lm/W (luminous efficacy)\n", + "E = 80.0 #lux (Illumination)\n", + "\n", + "#Output per lamp is\n", + "oplamp = watt*eff #lm\n", + "\n", + "#Flux actually used per lamp is\n", + "flux = 0.6*oplamp #lm\n", + "\n", + "#Now, Total flux required is Illumination*Area\n", + "flux_tot = E*A #lm\n", + "\n", + "#Therefore number of lamps required are\n", + "N = flux_tot/flux\n", + "\n", + "print \"Number of lamps =\",round(N)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.12 , PAGE NO :- 1904" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total flux radiated = 62.74 lm.\n" + ] + } + ], + "source": [ + "'''A perfectly diffusing surface has a luminous intensity of 10 candles at an angle of 60º to the normal. If the area of the \n", + "surface is 100 cm2, determine the brightness and total flux radiated.'''\n", + "\n", + "import math as m\n", + "\n", + "I = 10.0 #Cd (Intensity)\n", + "theta = 60.0 #degrees (angle to normal)\n", + "A = 100.0 #cm^2 (Area)\n", + "\n", + "proA = A*m.cos(theta*3.14/180) #cm^2\n", + "\n", + "B = I/proA*(10000) #cd/m^2 (Brightness)\n", + "B = B*3.14 #lm/m^2 (Brightness)\n", + "\n", + "flux = B*A*10e-5 #lm (Total flux radiated)\n", + "print \"Total flux radiated =\",round(flux,2),\"lm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.13 , PAGE NO :- 1904" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Brightness 1 = 1.191083e+04 cd/m^2.\n", + "Brightness 2 = 0.06 cd/m^2.\n" + ] + } + ], + "source": [ + "'''Calculate the brightness (or luminance) of snow under an illumination of (a) 44,000 lux and (b) 0.22 lux. Assume that snow\n", + "behaves like a perfect diffusor having a reflection factor of 85 per cent.'''\n", + "\n", + "E1 = 44000.0 #lux (illumination 1)\n", + "E2 = 0.22 #lux (illumination 2)\n", + "rf = 0.85 # (reflection factor)\n", + "\n", + "L1 = (E1*rf/3.14) #cd/m^2 (Brightness 1)\n", + "L2 = (E2*rf/3.14) #cd/m^2 (Brightness 2)\n", + "\n", + "print \"Brightness 1 = %e cd/m^2.\" %round(L1,2)\n", + "print \"Brightness 2 =\",round(L2,2),\"cd/m^2.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.14 , PAGE NO :- 1904" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "luminous intensity of globe is = 44.0 Cd.\n", + "percentage absorption = 44.61 %.\n" + ] + } + ], + "source": [ + "'''A 21 cm diameter globe of dense opal glass encloses a lamp emitting 1000 lumens and has uniform brightness of 4e+3 lumen/m^2\n", + "when viewed in any direction. What would be the luminous intensity of the globe in any direction? Find what percentage of the\n", + "flux emitted by the lamp is absorbed by the globe.'''\n", + "\n", + "d = 21.0 #cm (diameter)\n", + "flux = 1000.0 #lumens (luminous flux) \n", + "B = 4e+3 #lm/m^2 (uniform Brightness)\n", + "\n", + "#Surface Area of the globe\n", + "sa = 3.14*(d*d)*10e-5 #m^2\n", + "#Flux emitted by globe is\n", + "fluxe = sa*B #lm\n", + "\n", + "#luminous intensity of globe is\n", + "lint = fluxe/(4*3.14) #Cd\n", + "print \"luminous intensity of globe is =\",round(lint),\"Cd.\"\n", + "#Flux absorbed by globe is\n", + "fluxab = flux - fluxe #lm\n", + "\n", + "#% absorption is\n", + "absrp = fluxab/flux*100 #% absorption\n", + "print \"percentage absorption = \",round(absrp,2),\"%.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.15 , PAGE NO :- 1904" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Luminous intensity is = 1005440.0 Cd\n", + "The beam spread is = 14.25 degrees\n" + ] + } + ], + "source": [ + "'''A 2.5 cm diameter disc source of luminance 1000 cd/cm2 is placed at the focus of a specular parabolic reflector\n", + "normal to the axis. The focal length of the reflector is 10 cm, diameter 40 cm and reflectance 0.8. Calculate the axial\n", + "intensity and beam-spread. Also show diagrammatically what will happen if the source were moved away from the reflector\n", + "along the axis in either direction.'''\n", + "\n", + "import math as m\n", + "\n", + "dia = 0.025 #m (diameter of disc)\n", + "d = 0.4 #m (diameter of relector) \n", + "L = 1000.0e+4 #Cd/m^2 (luminance)\n", + "\n", + "#Surface area is\n", + "A = 3.142*d*d/4 #m^2 (Area)\n", + "\n", + "#Luminous intensity is\n", + "I = 0.8*A*L #Cd\n", + "print \"Luminous intensity is =\",round(I,2),\"Cd\"\n", + "\n", + "#Let us assume 'theta' as the beam-spread .Then\n", + "r = dia/2 #m (radius)\n", + "f = 0.1 #m (focal length) \n", + "theta = 2*m.degrees(m.atan((r/f)))\n", + "\n", + "print \"The beam spread is =\",round(theta,2),\"degrees\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.16 , PAGE NO :- 1905" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Flux emmited by source is = 6942.15 lm/m^2 .\n", + "C.P of globe is = 84.0 Cd.\n" + ] + } + ], + "source": [ + "'''A 22cm diameter globe of opal glass encloses a lamp of uniform luminous intensity 120 C.P. Thirty per cent of light emitted \n", + "by the lamp is absorbed by globe. Determine (a) luminance of globe (b) C.P. of globe in any direction.'''\n", + "\n", + "\n", + "d = 0.22 #m (diameter)\n", + "I = 120.0 #Cd (luminous intensity)\n", + "\n", + "#surface area is\n", + "sa = 3.14*d*d #m^2\n", + "\n", + "#Flux emmited by source is\n", + "flux = I*(4*3.14) #lm\n", + "#Flux emmited by globe is\n", + "reflux = 0.7*flux #lm\n", + "\n", + "#(a)Luminance of globe is\n", + "L = reflux/sa #lm/m^2\n", + "print \"Flux emmited by source is =\",round(L,2),\"lm/m^2 .\"\n", + "#(b) C.P of globe is\n", + "cp = reflux/(4*3.14) #Cd\n", + "print \"C.P of globe is = \",round(cp,2),\"Cd.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.17 , PAGE NO :- 1905" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Average luminance = 7722.93 lm/m^2 .\n" + ] + } + ], + "source": [ + "'''A 0.4 m diameter diffusing sphere of opal glass (20 percent absorption) encloses an incandescent lamp with a luminous flux of\n", + "4850 lumens. Calculate the average luminance of the sphere.'''\n", + "\n", + "\n", + "d = 0.4 #m (diameter)\n", + "lflux = 4850.0 #lm (luminous flux)\n", + "reflux = 0.8*lflux #lm (flux emmited by globe)\n", + "\n", + "sa = 3.14*d*d #m^2 (surface area)\n", + "\n", + "#Brightness B = flux emmited/surface area . i.e\n", + "B = reflux/sa #lm/m^2 (brightness)\n", + "\n", + "print \"Average luminance =\",round(B,2),\"lm/m^2 .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.18 , PAGE NO :- 1907" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Illumination produced is = 122.55 lm/m^2.\n" + ] + } + ], + "source": [ + "'''A show case is lighted by 4 metre of architectural tubular lamps arranged in a continuous line and placed along the top of the\n", + "case.Determine the illumination produced on a horizontal surface 2 metres below the lamps in a position directly underneath the\n", + "centre of the 4 m length of the lamps on the assumption that in tubular lamps emit 1,880 lm per metre run.\n", + "Neglect the effect of any reflectors which may be used.'''\n", + "\n", + "import math as m\n", + "\n", + "L = 4.0 #m (length of source of light)\n", + "d = 2.0 #m (height)\n", + "flux = 1880.0 #lumens (flux) \n", + "#Now\n", + "theta = m.atan(L/(2*d))\n", + "\n", + "#As I = flux/(3.14*3.14*L)\n", + "I = 4*flux/(3.14*3.14*L) #cd/m\n", + "\n", + "#Illumination produced is\n", + "E = I/(2*d)*(m.sin(2*theta) + 2*theta) #lm/m^2\n", + "\n", + "print \"Illumination produced is =\",round(E,2),\"lm/m^2.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 49.19 , PAGE NO :- 1913" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Luminous flux yield of the source = 1109.2 lm.\n" + ] + } + ], + "source": [ + "'''If an integrating sphere 0.6 m in diameter whose inner surface has a reflection coefficient of 0.8 contains a lamp producing\n", + "on the portion of the sphere, screened from direct radiation,a luminance of 1000 cd/m2, what is the luminous flux yield of\n", + "the source ?'''\n", + "\n", + "from sympy import Eq,solve,Symbol\n", + "\n", + "coef = 0.8 # (reflection coefficient)\n", + "L = 1000.0 #cd/m^2 (luminance)\n", + "d = 0.6 #m (diameter)\n", + "\n", + "Fl = Symbol('Fl')\n", + "E = coef*Fl/(3.14*d*d*(1-coef)) #lm/m^2\n", + "L1 = coef*E/3.14 #cd/m^2\n", + "#As L is equal to L1\n", + "eq = Eq(L,L1)\n", + "Fl = solve(eq)\n", + "Fl1 = Fl[0] #lumens\n", + "\n", + "print \"Luminous flux yield of the source =\",round(Fl1,2),\"lm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 49.20 , PAGE NO :- 1919 " + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Utilization coefficient = 0.4\n" + ] + } + ], + "source": [ + "'''A room 8 m * 12 m is lighted by 15 lamps to a fairly uniform illumination of 100 lm/m^2. Calculate the utilization coefficient\n", + "of the room given that the output of each lamp is 1600 lumens.'''\n", + "\n", + "Area = 8*12 #m^2 (area of room)\n", + "num = 15.0 # (number of lamps)\n", + "I = 1600.0 #lumens (output of each lamp)\n", + "E = 100.0 #lm/m^2 (illumination)\n", + "\n", + "#Lumens emmited by lamp\n", + "I_tot = num*I #lumens\n", + "\n", + "#Lumens recieved by working plane\n", + "I1 = Area*E #lumens\n", + "\n", + "#Utilization coefficient is\n", + "coef = I1/I_tot\n", + "\n", + "print \"Utilization coefficient = \",round(coef,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.21 , PAGE NO :- 1919" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of lamps required = 50.0\n" + ] + } + ], + "source": [ + "'''The illumination in a drawing office 30 m*10 m is to have a value of 250 lux and is to be provided by a number of 300 W\n", + "filament lamps. If the coefficient of utilization is 0.4 and the depreciation factor 0.9, determine the number of lamps\n", + "required. The luminous efficiency of each lamp is 14 lm/W.'''\n", + "\n", + "A = 30*10.0 #m^2 (area)\n", + "E = 250.0 #lm/m^2 (illumination)\n", + "coef = 0.4 # (coefficient of utilization)\n", + "p = 0.9 # (depriciation factor)\n", + "eff = 14.0 #lm/W (luminous efficiency)\n", + "watt = 300.0 #W (wattage of eacch lamp)\n", + "#Now, flux = E*A/coef*p\n", + "flux = E*A/(coef*p) #lm (output in lumens)\n", + "\n", + "#Flux emmited per lamp is\n", + "Fl2 = watt*eff #lm\n", + "\n", + "#No. of lamps required are\n", + "num = flux/Fl2\n", + "\n", + "print \"Number of lamps required =\",round(num)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.22 , PAGE NO :- 1919" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Net saving in load = 600.0 W.\n", + "Increase in illumination = 42.22 %\n" + ] + } + ], + "source": [ + "'''Find the total saving in electrical load and percentage increase in illumination if instead of using twelve 150 W tungsten-\n", + "filament lamps,we use twelve 80 W fluorescent tubes. It may be assumed that (i) there is a choke loss of 25 per cent of rated\n", + "lamp wattage (ii) average luminous efficiency throughout life for each lamp is 15 lm/W and for each tube 40 lm/W and \n", + "(iii) coefficient of utilization remains the same in both cases.'''\n", + "\n", + "#Luminous efficiency\n", + "eff1 = 15.0 #lm/W\n", + "eff2 = 40.0 #lm/W\n", + "\n", + "#Total load in filament-lamps\n", + "flamp = 12*150.0 #W\n", + "#Total load in fluoroscent tubes\n", + "tube = 12*(80 + 0.25*80) #W\n", + "#Net saving\n", + "load = flamp - tube #W\n", + "print \"Net saving in load =\",round(load,2),\"W.\"\n", + "\n", + "#Let us assume that\n", + "#E1 -> illumination with lamps\n", + "#E2 -> illumination with tubes\n", + "#Now E1/E2 = (O/P in lumens 1)/(O/P in lumens 2)\n", + "\n", + "tube2 = 12*80.0 #W\n", + "\n", + "E1_E2 = flamp*eff1/(tube2*eff2)\n", + "\n", + "#Increase in illumination is given by %increase = (E2/E1 - 1)*100\n", + "increase = (1/E1_E2 - 1)*100.0\n", + "\n", + "print \"Increase in illumination = \",round(increase,2),\"%\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.23 , PAGE NO :- 1919" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of lamps on each tower is = 50.0\n" + ] + } + ], + "source": [ + "'''A football pitch 120 m * 60 m is to be illuminated for night play by similar banks of equal 1000 W lamps supported on twelve \n", + "towers which are distributed around the ground to provide approximately uniform illumination of the pitch.Assuming that 40% of\n", + "the total light emitted reaches the playing pitch and that an illumination of 1000 lm/m2 is necessary for television purposes,\n", + "calculate the number of lamps on each tower. The overall efficiency of the lamp is to be taken as 30 lm/W.'''\n", + " \n", + "Area = 120.0*60.0 #m^2 (Area of pitch)\n", + "E = 1000.0 #lm/m^2 (Illumination of pitch)\n", + "\n", + "#Flux required is\n", + "flux = Area*E #lm \n", + "\n", + "#Since only 40% reaches the ground.Total flux required is\n", + "lflux = flux/0.4 #lm\n", + "\n", + "#There are 12 tower banks . Therefore flux by each tower bank is\n", + "flux_each = lflux/12 #lm\n", + "\n", + "#Output of each 1000 W lamp is\n", + "I = 30.0*1000 #lm\n", + "\n", + "#Therefore, number of each lamps is\n", + "num = flux_each/I\n", + "\n", + "print \"Number of lamps on each tower is =\",round(num)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.24 , PAGE NO :- 1920" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "number of flouroscent tubes = 384.0\n", + "number of twin fittings = 192.0\n", + "These can be arranged in 8 rows and 24 columns with space/height ratio = 1.\n" + ] + } + ], + "source": [ + "'''Design a suitable lighting scheme for a factory 120 m * 40 m with a height of 7 m. Illumination required is 60 lux.\n", + "State the number, location and mounting height of 40 W fluorescent tubes giving 45 lm/W. Depreciation factor = 1.2;\n", + "utilization factor = 0.5 .'''\n", + "\n", + "A = 120.0*40.0 #m^2 (Area)\n", + "h = 7.0 #m (Height)\n", + "E = 60.0 #lm/m^2 (Illumination)\n", + "watt = 40.0 #W (Wattage of bulb)\n", + "eff = 45.0 #lm/W (Luminous efficiency)\n", + "dep = 1.2 # (Depriciation factor)\n", + "uti = 0.5 # (Utilization factor)\n", + "\n", + "#Total output flux is\n", + "flux = E*A/(uti*1/dep) #lm\n", + "#Flux per tube is\n", + "flux_tube = eff*watt #lm\n", + "\n", + "#Therefore,number of flouroscent tubes required\n", + "num = flux/flux_tube\n", + "print \"number of flouroscent tubes =\",round(num)\n", + "#For twin fittings\n", + "num = num/2\n", + "print \"number of twin fittings =\",round(num)\n", + "print \"These can be arranged in 8 rows and 24 columns with space/height ratio = 1.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.25 , PAGE NO :- 1920" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of 500-W lamps required = 24.0\n", + "Number of 300-W lamps required = 49.0\n" + ] + } + ], + "source": [ + "'''A drawing hall in an engineering college is to be provided with a lighting installation. The hall is 30 m * 20 m * 8 m (high).\n", + "The mounting height is 5 m and the required level of illumination is 144 lm/m^2. Using metal filament lamps, estimate\n", + "the size and number of single lamp luminaries and also draw their spacing layout. Assume :\n", + "Utilization coefficient = 0.6; maintenance factor = 0.75; space/height ratio=1 lumens/watt for 300-W lamp = 13,\n", + "lumens/watt for 500-W lamp = 16.'''\n", + "\n", + "\n", + "A = 30.0*20 #m^2 (Area)\n", + "E = 144.0 #lm/m^2 (Illumination)\n", + "coef = 0.6 # (Utilization coefficient)\n", + "mfac = 0.75 # (maintenance factor)\n", + "\n", + "\n", + "#The flux is given by\n", + "flux = E*A/(coef*mfac) #lm\n", + "\n", + "#Lumen output for 500-W lamp\n", + "I5 = 500.0*16 #lm\n", + "\n", + "#Lumen output for 500-W lamp\n", + "I3 = 300.0*13 #lm\n", + "\n", + "#No. of 500 W lamps required is\n", + "num5 = flux/I5\n", + "print \"Number of 500-W lamps required =\",round(num5)\n", + "\n", + "#No. of 300 W lamps required is\n", + "num3 = flux/I3\n", + "print \"Number of 300-W lamps required =\",round(num3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.26 , PAGE NO :- 1920" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total number of lamps = 36.0\n", + "Wattage of each lamp is = 500.0 W.\n" + ] + } + ], + "source": [ + "'''Estimate the number and wattage of lamps which would be required to illuminate a workshop space 60 * 15 metres by means of\n", + "lamps mounted 5 metres above the working plane. The average illumination required is about 100 lux.Coefficient of\n", + "utilization=0.4 ; Luminous efficiency=16 lm/W.Assume a spacing/height ratio of unity and a candle power depreciation of 20%.'''\n", + "\n", + "A = 60.0*15.0 #m^2\n", + "E = 100.0 #lm/m^2\n", + "coef = 0.4 # (coefficient of utilization)\n", + "lum = 16.0 #lm/W (luminous efficiency)\n", + "dep = 1+0.2 # (depriciation factor)\n", + "\n", + "#Total flux is given by\n", + "flux = E*A/(coef*1/dep) #lm\n", + "\n", + "#Total wattage required is\n", + "watt = flux/lum #W\n", + "\n", + "#Now,space/height ratio is 1.\n", + "h = 5.0 #m\n", + "\n", + "#Therefore along breadth , lamps are\n", + "num_b = 15.0/h\n", + "\n", + "#Therefore along length , lamps are\n", + "num_l = 60.0/h\n", + "\n", + "#Total number of lamps are\n", + "num_tot = num_b*num_l\n", + "\n", + "#Wattage of each lamp is\n", + "watt_each = watt/num_tot\n", + "\n", + "print \"Total number of lamps =\",num_tot\n", + "print \"Wattage of each lamp is =\",round(watt_each,-2),\"W.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 49.27 , PAGE NO :- 1921" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of 200-W lamps required are = 68.0\n", + "Number of 300-W lamps required are = 40.0\n", + "Number of 500-W lamps required are = 22.0\n" + ] + } + ], + "source": [ + "'''A drawing hall 40 m * 25 m * 6 high is to be illuminated with metal-filament gas-filled lamps to an average illumination of\n", + "90 lm/m^2 on a working plane 1 metre above the floor.Estimate suitable number, size and mounting height of lamps. Sketch the\n", + "spacing layout.Assume coefficient of utilization of 0.5, depreciation factor of 1.2 and spacing/height ratio of 1.2\n", + "\n", + "Size of lamps : 200 W 300 W 500 W\n", + "Luminous efficiency (in lm/W) : 16 18 20 '''\n", + "\n", + "A = 40.0*25.0 #m^2 (Area)\n", + "E = 90.0 #lm/m^2 (Illumination)\n", + "coef = 0.5 # (Coefficient of utilization)\n", + "dep = 1.2 # (Depreciation factor)\n", + "\n", + "#Total flux required is\n", + "flux = E*A/(coef*1/1.2) #lumens\n", + "\n", + "#Lumen output of each 200-W lamp is\n", + "flux_200 = 200.0*16 #lumens\n", + "\n", + "#Lumen output of each 200-W lamp is\n", + "flux_300 = 300.0*18 #lumens\n", + "\n", + "#Lumen output of each 200-W lamp is\n", + "flux_500 = 500.0*20 #lumens\n", + "\n", + "#Number of 200-W lamps required is\n", + "num_200 = flux/flux_200\n", + "#Number of 200-W lamps required is\n", + "num_300 = flux/flux_300\n", + "#Number of 200-W lamps required is\n", + "num_500 = flux/flux_500\n", + "\n", + "print \"Number of 200-W lamps required are =\",round(num_200)\n", + "print \"Number of 300-W lamps required are =\",round(num_300)\n", + "print \"Number of 500-W lamps required are =\",round(num_500)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.28 , PAGE NO :- 1922" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total wattage required is = 2019.23 W.\n" + ] + } + ], + "source": [ + "'''A school classroom, 7 m * 10 m * 4 m high is to be illuminated to 135 lm/m^2 on the working plane. If the coefficient of\n", + "utilization is 0.45 and the sources give 13 lumens per watt,work out the total wattage required, assuming a depreciation factor\n", + "of 0.8 .Sketch roughly the plan of the room, showing suitable positions for fittings, giving reasons for the positions chosen.'''\n", + "\n", + "A = 7.0*10.0 #m^2 (Area)\n", + "E = 135.0 #lm/m^2 (Illumination)\n", + "coef = 0.45 # (Coefficient of utilization)\n", + "dep = 0.8 # (Depreciation factor)\n", + "eff = 13.0 #lm/W (luminous efficiency) \n", + "\n", + "#Total flux is\n", + "flux = E*A/(coef*dep) #lumens\n", + "\n", + "#Therefore,total wattage required is\n", + "watt = flux/eff #W\n", + "\n", + "print \"Total wattage required is =\",round(watt,2),\"W.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.29 , PAGE NO :- 1922" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of 100-W lamps required = 29.0\n", + "Number of 200-W lamps required = 13.0\n", + "Number of 300-W lamps required = 10.0\n", + "Number of 500-W lamps required = 5.0\n", + "Number of 1000-W lamps required = 2.0\n", + "If we take the mounting height of 5 m, then 300 W lamps would be suitable.\n", + "The No.of lamps required would be 10, arranged in two rows, each row having 5 lamps thus giving space/height ratio of 6/5\n" + ] + } + ], + "source": [ + "'''A hall 30 m long and 12 m wide is to be illuminated and the illumination required is 50 lm/m2. Calculate the number,\n", + "the wattage of each unit and the location and mounting height of the units, taking a depreciation factor of 1.3 and\n", + "utilization factor of 0.5, given that the outputs of the different types of lamp are as under :\n", + "Watts : 100 200 300 500 1000\n", + "Lumens : 1615 3650 4700 9950 21500 '''\n", + "\n", + "A = 30.0*12.0 #m^2 (Area)\n", + "E = 50.0 #lm/m^2 (Illumination)\n", + "coef = 0.5 # (coefficient of utilization)\n", + "dep = 1/1.3 # (depreciation factor)\n", + "\n", + "#Total flux required is\n", + "flux = E*A/(coef*dep) #lumens\n", + "\n", + "#For 100-W lamps are used ,Number required\n", + "num_100 = flux/1615.0\n", + "#For 200-W lamps are used ,Number required\n", + "num_200 = flux/3650.0\n", + "#For 300-W lamps are used ,Number required\n", + "num_300 = flux/4700.0\n", + "#For 500-W lamps are used ,Number required\n", + "num_500 = flux/9950.0\n", + "#For 1000-W lamps are used ,Number required\n", + "num_1000 = flux/21500.0\n", + "\n", + "print \"Number of 100-W lamps required =\",round(num_100)\n", + "print \"Number of 200-W lamps required =\",round(num_200)\n", + "print \"Number of 300-W lamps required =\",round(num_300)\n", + "print \"Number of 500-W lamps required =\",round(num_500)\n", + "print \"Number of 1000-W lamps required =\",round(num_1000)\n", + "print \"If we take the mounting height of 5 m, then 300 W lamps would be suitable.\"\n", + "print \"The No.of lamps required would be 10, arranged in two rows, each row having 5 lamps thus giving space/height ratio of 6/5\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.30 , PAGE NO :- 1924" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of lamps required are = 10.0\n" + ] + } + ], + "source": [ + "'''It is desired to floodlight the front of a building 42 m wide and 16 m high.Projectors of 30° beam spread and 1000-W lamps\n", + "giving 20 lumen/watt are available. If the desired level of illumination is 75 lm/m2 and if the projectors are to be located\n", + "at ground level 17 m away,design and show a suitable scheme. Assume the following :\n", + "Coefficient of utilization = 0.4 ; Depreciation factor = 1.3 ; Waste-light factor = 1.2. '''\n", + "\n", + "A = 42.0*16.0 #m^2 (Area)\n", + "E = 75.0 #lm/m^2 (Illumination)\n", + "W = 1.2 # (Waste-light factor)\n", + "coef = 0.4 # (Coefficient of utilization)\n", + "dep = 1/1.3 # (Depreciation factor)\n", + "eff = 20.0 #lm/W (luminous efficiency)\n", + "\n", + "#Total flux is\n", + "flux = E*A*W/(coef*dep) #lm/m^2\n", + "\n", + "#Lumen output of each 1000-W lamp is\n", + "flux_each = 1000.0*eff\n", + "\n", + "#Number of lamps required are\n", + "num = flux/flux_each\n", + "\n", + "print \"Number of lamps required are =\",round(num)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.31 , PAGE NO :- 1925" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The number of floodlight projectors required = 24.0\n" + ] + } + ], + "source": [ + "'''Estimate the number of 1000-W floodlight projectors required to illuminate the up per 75 m of one face of a 96 m tower of \n", + "width 13 m if approximate initial average luminance is to be 6.85 cd/m2. The projectors are mounted at ground level 51m from base\n", + "of the tower.Utilization factor is = 0.2; reflection factor of wall = 25% and efficiency of each lamp = 18 lm/W.'''\n", + "\n", + "\n", + "A = 13.0*75.0 #m^2 (Area to be flood-lighted)\n", + "B = 6.85 #cd/m^2 (Average luminance)\n", + "watt = 1000.0 #W (Wattage floodlight projectors)\n", + "coef = 0.2 # (Utilization factor)\n", + "ref = 0.25 # (Reflection factor)\n", + "\n", + "#Illumination E = pi*B/reflection factor\n", + "E = 3.14*B/ref #lm/m^2\n", + "\n", + "#Therefore, total flux required is\n", + "flux = E*A #lm\n", + "\n", + "#Flux to be emmited by lamp is\n", + "lflux = flux/coef #lm\n", + "\n", + "#Flux from each lamp is\n", + "flux_each = 18.0*watt #lm\n", + "\n", + "#The number of floodlight projectors required are\n", + "num = lflux/flux_each\n", + "\n", + "print \"The number of floodlight projectors required =\",round(num)+1" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.32 , PAGE NO :- 1928" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Diameter d2 = 0.4 *d1.\n", + "Length l2 = 1.26 *l1.\n" + ] + } + ], + "source": [ + "'''If the filament of a 32 candela, 100-V lamp has a length l and diameter d,calculate the length and diameter of the filament\n", + "of a 16 candela 200-V lamp,assuming that the two lamps run at the same intrinsic brilliance.'''\n", + "\n", + "\n", + "#As l*d is directly propotional luminous intensity .\n", + "#Let a = l1*d1 & b = l2*d2 . Then, l1*d1/l2*d2 = 32/16\n", + "\n", + "a_b = 32.0/16 # (= a/b = l1*d1/l2*d2)\n", + "\n", + "#As luminous intensity is directly propotional to power output\n", + "# 32 o< 100*I1 & 16 o< 200*I2\n", + "\n", + "I1_I2 = 32*200.0/(16*100.0) #( = I1/I2)\n", + "\n", + "\n", + "#Also , I o< d^3/2 \n", + "d1_d2 = (I1_I2)**(2.0/3) #( = d1/d2)\n", + "\n", + "print \"Diameter d2 = \",round(1/d1_d2,2),\"*d1.\"\n", + "\n", + "#As , d1_d2 = d1/d2\n", + "l1_l2 = a_b/d1_d2 #( = l1/l2)\n", + "print \"Length l2 = \",round(1/l1_l2,2),\"*l1.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.33 , PAGE NO :- 1928" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Diameter d2 = 0.00198 cm.\n", + "Length l2 = 126.0 cm.\n" + ] + } + ], + "source": [ + "'''An incandescent lamp has a filament of 0.005 cm diameter and one metre length. It is required to construct another lamp of\n", + "similar type to work at double the supply voltage and give half the candle power. Assuming that the new lamp operates at the same\n", + "brilliancy,determine suitable dimensions for its filament.'''\n", + "\n", + "d1 = 0.005 #cm (diameter)\n", + "l1 = 100.0 #cm (length) \n", + "#As l*d is directly propotional luminous intensity .\n", + "#Let a = l1*d1 & b = l2*d2 . Then, l1*d1/l2*d2 = 2.0/1.0\n", + "\n", + "a_b = 2.0/1 # (= a/b = l1*d1/l2*d2)\n", + "\n", + "#As luminous intensity is directly propotional to power output\n", + "# I1 o< V1*i1 & I2 o< V2*i2\n", + "\n", + "I1_I2 = (2.0/1)*(2.0/1) #( = I1/I2)\n", + "\n", + "\n", + "#Also , I o< d^3/2 \n", + "d1_d2 = (I1_I2)**(2.0/3) #( = d1/d2)\n", + "d2 = d1/d1_d2 #cm\n", + "print \"Diameter d2 = \",round(d2,5),\"cm.\"\n", + "\n", + "#As , d1_d2 = d1/d2\n", + "l1_l2 = a_b/d1_d2 #( = l1/l2)\n", + "l2 = l1/l1_l2 #cm \n", + "print \"Length l2 = \",round(l2),\"cm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 49.34 , PAGE NO :- 1928" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hence expression for candle power is C = 1.155816e-09 *V^ 4.47\n", + "Change of candle power per volt = 268.1 cd/m.\n", + "% change in candle power for increase = 19.16\n", + "% change in candle power for decrease = -16.67\n" + ] + } + ], + "source": [ + "'''A 60 candle power, 250-V metal filament lamp has a measured candle power of 71.5 candela at 260 V and 50 candela at 240 V.\n", + "(a) Find the constant for the lamp in the expression C = aV^b where C = candle power and V = voltage.\n", + "(b) Calculate the change of candle power per volt at 250 V. Determine the percentage variation of candle power due to a voltage\n", + "variation of æ 4% from the normal value. '''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#Given expression is C = a*V^b\n", + "b = Symbol('b')\n", + "# 71.5/50 = (260/240)^b\n", + "lhs = 71.5/50.0\n", + "rhs = (260.0/240)**b\n", + "eq = Eq(lhs,rhs)\n", + "b = solve(eq)\n", + "b1 = b[0] #constant\n", + "\n", + "a = 71.5/(260.0)**b1\n", + "print \"Hence expression for candle power is C = %e\" %a,\"*V^\",round(b1,2)\n", + "\n", + "#Change of candle power per volt\n", + "# dC/dV = b*a*V^b\n", + "change = b1*a*((250.0)**(b1)) #cd/V\n", + "print \"Change of candle power per volt = \",round(change,1),\"cd/m.\"\n", + "\n", + "#When voltage is increases by 4% C2/C1 = (1.04)^b\n", + "per_change = ( (1.04)**b1 - 1 ) * 100\n", + "\n", + "print \"% change in candle power for increase =\",round(per_change,2)\n", + "\n", + "#When voltage is decreases by 4% C2/C1 = (0.96)^b\n", + "per_change = ( (0.96)**b1 - 1)* 100\n", + "\n", + "print \"% change in candle power for decrease =\",round(per_change,2)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "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.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter50.ipynb b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter50.ipynb new file mode 100644 index 00000000..695fb3bf --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/chapter50.ipynb @@ -0,0 +1,5204 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# CHAPTER 50 : Tariffs and Economic Considerations" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.1 , PAGE NO :- 1946" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total annual charge on installation = Rs. 28572.0\n" + ] + } + ], + "source": [ + "'''Find the total annual charge on an installation costing Rs. 500,000 to buy and install, the estimated life being 30 years\n", + "and negligible scrap value. Interest is 4% compounded annually.'''\n", + "\n", + "import math as m\n", + "\n", + "Q = 5e+5 #(installation cost)\n", + "r = 0.04 #(rate of interest)\n", + "\n", + "q = Q*(r/(1+r))/(m.pow(1+r,30) - 1)\n", + "\n", + "#Hence, total annual charge on installation is\n", + "charge = r*Q + q # (As P=Q)\n", + "\n", + "print \"Total annual charge on installation = Rs.\",round(charge)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.2 , PAGE NO :- 1946" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual Deposit for Straight-line depriciation method = Rs. 28500.0\n", + "Annual Deposit for Sink fund method = Rs. 22515.0\n" + ] + } + ], + "source": [ + "'''A power plant having initial cost of Rs. 2.5 lakhs has an estimated salvage value of Rs. 30,000 at the end of its\n", + "useful life of 20 years. What will be the annual deposit necessary if it is calculated by :\n", + "(i) straight-line depreciation method.\n", + "(ii) sinking-fund method with compound interest at 7%.'''\n", + "\n", + "import math as m\n", + "\n", + "P = 250000.0 #Rs (Initial investment)\n", + "Q = P - 30000.0 #Rs (Replacement cost)\n", + "r = 0.07 # (Interest rate)\n", + "n = 20.0 # (Number of years)\n", + "\n", + "#(i)straight-line depriciation method\n", + "\n", + "#Annual depriciation\n", + "q= Q/n\n", + "\n", + "deposit1 = r*P + q\n", + "\n", + "\n", + "#(ii)sinking fund method\n", + "\n", + "#Annual depriciation\n", + "q= Q*(r/(1+r))/(m.pow(1+r,n) - 1)\n", + "\n", + "deposit2 = r*P + q\n", + "\n", + "print \"Annual Deposit for Straight-line depriciation method = Rs.\",round(deposit1)\n", + "print \"Annual Deposit for Sink fund method = Rs.\",round(deposit2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.3 , PAGE NO :- 1947" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual Deposit for Straight-line depriciation method = Rs. 300000.0\n", + "Annual Deposit for Sink fund method = Rs. 373375.0\n" + ] + } + ], + "source": [ + "'''A plant initially costing Rs. 5 lakhs has an estimated salvage value of Rs. 1 lakh at the end of its useful life of 20 years.\n", + "What will be its valuation half-way through its life (a) on the basis of straight-line depreciation and\n", + "(b) on the sinking-fund basis at 8% compounded annually?'''\n", + "\n", + "import math as m\n", + "\n", + "P = 500000.0 #Rs (Initial investment)\n", + "Q = P - 100000.0 #Rs (Replacement cost)\n", + "r = 0.08 # (Interest rate)\n", + "n = 20.0 # (Number of years)\n", + "\n", + "#(i)straight-line depriciation method\n", + "\n", + "#Annual depriciation in 10 years\n", + "q= Q/2\n", + "\n", + "#Value after 10 years\n", + "value1 = P - q\n", + "\n", + "\n", + "#(ii)sinking fund method\n", + "\n", + "#Annual depriciation\n", + "q= Q*(r/(1+r))/(m.pow(1+r,n) - 1)\n", + "\n", + "#Value after 10 years i.e n/2 years\n", + "value2 = P - q*((1+r)/r)*(m.pow(1+r,n/2) - 1)\n", + "\n", + "print \"Annual Deposit for Straight-line depriciation method = Rs.\",round(value1)\n", + "print \"Annual Deposit for Sink fund method = Rs.\",round(value2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.4 , PAGE NO :- 1955" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total connected load = 2600.0 W\n", + "Monthly energy consumption = 252.0 kWh\n", + "Load factor = 0.23\n" + ] + } + ], + "source": [ + "'''A consumer has the following connected load : 10 lamps of 60 W each and two heaters of 1000 W each. His maximum demand is 1500 W.\n", + "On the average, he uses 8 lamps for 5 hours a day and each heater for 3 hours a day. Find his total load, montly energy\n", + "consumption and load factor.'''\n", + "\n", + "\n", + "#Total connected load is\n", + "con_load = 10*60.0 + 2*1000.0 #W \n", + "\n", + "#Daily energy consumption is\n", + "enrgy = 8*60.0*5 + 2*1000.0*3 #Wh \n", + "\n", + "#Monthly energy consumption is\n", + "menrgy = enrgy*30.0/1000.0 #kWh\n", + "\n", + "#Load factor = Avg load/Max load is\n", + "lf = menrgy*1000/(1500.0*24*30)\n", + "\n", + "print \"Total connected load =\" ,con_load ,\"W\"\n", + "print \"Monthly energy consumption =\",menrgy ,\"kWh\"\n", + "print \"Load factor =\",round(lf,2) \n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.5 , PAGE NO :- 1955" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Capacity of substation = 1656.0 kW\n" + ] + } + ], + "source": [ + "'''The load survey of a small town gives the following categories of expected loads.\n", + " Type Load in kW % D.F. Group D.F.\n", + "1. Residential lighting 1000 60 3\n", + "2. Commercial lighting 300 75 1.5\n", + "3. Street lighting 50 100 1.0\n", + "4. Domestic power 300 50 1.5\n", + "5. Industrial power 1800 55 1.2\n", + "What should be the kVA capacity of the S/S assuming a station p.f. of 0.8 lagging ?'''\n", + "\n", + "#Using Demand factor = Max demand/Connected load \n", + "#(i) Residential lighting\n", + "maxd1 = 1000.0*(60.0/100.0) #kW (Max demand)\n", + "grpd1 = maxd1/3.0 #kW (Max demand of group)\n", + "\n", + "#(ii) Commercial lighting\n", + "maxd2 = 300.0*(75.0/100.0) #kW (Max demand)\n", + "grpd2 = maxd2/1.5 #kW (Max demand of group)\n", + "\n", + "#(iii) Street lighting\n", + "maxd3 = 50.0*(100.0/100.0) #kW (Max demand)\n", + "grpd3 = maxd3/1.0 #kW (Max demand of group)\n", + "\n", + "#(iv) Domestic Power\n", + "maxd4 = 300.0*(50.0/100.0) #kW (Max demand)\n", + "grpd4 = maxd4/1.5 #kW (Max demand of group)\n", + "\n", + "#(v) Industrial Power \n", + "maxd5 = 1800.0*(55.0/100.0) #kW (Max demand)\n", + "grpd5 = maxd5/1.2 #kW (Max demand of group)\n", + "\n", + "#Total maximum demand is\n", + "tot = grpd1 + grpd2 + grpd3 + grpd4 + grpd5 #kW\n", + "\n", + "#KVA capacity of substation is\n", + "capacity = tot/0.8 #kW\n", + "\n", + "print \"Capacity of substation = \",round(capacity),\"kW\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.6 , PAGE NO :- 1956" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Load factor = 0.46\n", + "Daily bill of consumer = Rs 17.5\n" + ] + } + ], + "source": [ + "'''A consumer has the following load-schedule for a day :\n", + "From midnight (12 p.m.) to 6 a.m. = 200 W ;\n", + "From 6 a.m. to 12 noon = 3000 W\n", + "From 12 noon to 1 p.m. = 100 W ;\n", + "From 1 p.m. to 4 p.m. = 4000 W\n", + "From 4 p.m. to 9 p.m. = 2000 W ;\n", + "From 9 p.m. to mid-night (12 p.m.) = 1000 W\n", + "\n", + "Find the load factor.\n", + "If the tariff is 50 paisa per kW of max. demand plus 35 paisa per kWh, find the daily bill the consumer has to pay.'''\n", + "\n", + "\n", + "maxp = 4000.0 #W (Maximum power)\n", + "\n", + "#Total consumption is\n", + "enrgy = 6*200.0 + 6*3000.0 + 1*100.0 + 3*4000.0 + 5*2000.0 + 3*1000.0 #W\n", + "\n", + "#Average power\n", + "pwer = enrgy/24 #kW\n", + "\n", + "#Daily load factor = Average Power/Max Power\n", + "lf = pwer/maxp\n", + "\n", + "#Max Demand charge.\n", + "charge1 = (maxp/1000)*0.5 #Rs\n", + "\n", + "#Consumption charge\n", + "charge2 = (enrgy/1000)*0.35 #Rs\n", + "\n", + "#Total Bill\n", + "bill = charge1 + charge2 #Rs\n", + "\n", + "print \"Load factor =\",round(lf,2)\n", + "print \"Daily bill of consumer = Rs\",round(bill,1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.7 , PAGE NO :- 1956" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Demand factor = 0.47\n", + "Average Power = 7020.0 W.\n", + "Load factor = 0.35\n" + ] + } + ], + "source": [ + "'''A generating station has a connected load of 43,000 kW and a maximum demand of 20,000 kW, the units generated being\n", + "61,500,000 for the year. Calculate the load factor and demand factor for this case.'''\n", + "\n", + "\n", + "maxp = 20000.0 #W (Maximum Demand)\n", + "conn = 43000.0 #W (Connected load)\n", + "\n", + "#Demand factor = Max demand/Connected load\n", + "df = maxp/conn\n", + "\n", + "#Average power\n", + "pwer = 61500000/(365*24) #W\n", + "\n", + "#Load factor = Avg Power/Max Power\n", + "lf = pwer/maxp\n", + "\n", + "print \"Demand factor =\",round(df,2)\n", + "print \"Average Power =\",round(pwer,2),\"W.\"\n", + "print \"Load factor =\",round(lf,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.8 , PAGE NO :- 1956" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "load factor = 0.21\n" + ] + } + ], + "source": [ + "'''A 100 MW power station delivers 100 MW for 2 hours, 50 MW for 6 hours and is shut down for the rest of each day.\n", + "It is also shut down for maintenance for 45 days each year.Calculate its annual load factor.'''\n", + "\n", + "#Given\n", + "days = 365 - 45 # (Operating days)\n", + "maxp = 100.0 #MW (Maximum demand)\n", + "\n", + "#Energy consumption in a year\n", + "enrgy = (100.0*2 + 50.0*6)*days #MWh\n", + "\n", + "#Load factor = Total Energy Consumption/(Max demand*24*no of days)\n", + "lf = enrgy/(maxp*24*days)\n", + "\n", + "print \"load factor =\",round(lf,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.9 , PAGE NO :- 1956" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cost per unit = 1.6 paise\n" + ] + } + ], + "source": [ + "'''Differentiate between fixed and running charges in the operation of a power company.\n", + "Calculate the cost per kWh delivered from the generating station whose\n", + "\n", + "(i) capital cost = Rs. 10^6 , (ii) annual cost of fuel = Rs. 10^5 , (iii) wages and taxes = Rs. 5*10^5\n", + "(iv) maximum demand laod = 10,000 kW , (v) rate of interest and depreciation = 10% , (vi) annual load factor = 50%.\n", + "Total number of hours in a year is 8,760.'''\n", + "\n", + "#Given\n", + "maxp = 10000.0 #kW (Maximum demand)\n", + "Avgload = 0.5*maxp #kW (Average load)\n", + "\n", + "#Total energy consumption\n", + "enrgy = Avgload*8760.0 #kWh\n", + "\n", + "#Total Annual Charge\n", + "charge = (1.0e+5 + 5.0e+5) + (10.0e+5)*(10.0/100) #Rs\n", + "\n", + "#Cost per unit\n", + "cost = charge/enrgy*100.0 #paise\n", + "print \"Cost per unit =\",round(cost,2),\"paise\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.10 , PAGE NO :- 1957" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Peak demand of the city sub-station = 113.1 kW.\n" + ] + } + ], + "source": [ + "'''A new colony of 200 houses is being established, with each house having an average connected load of 2 kW. The business\n", + "centre of the colony will have a total connected load of 200 kW. Find the peak demand of the city sub-station given the\n", + "following data.\n", + " Demand factor Group D.F. Peak D.F.\n", + "Residential load 50% 3.2 1.5\n", + "Business load 60% 1.4 1.2 .'''\n", + "\n", + "\n", + "#Given\n", + "dem_res = 0.5 # (demand factor Residential load)\n", + "dem_bus = 0.6 # (demand factor Business load)\n", + "gf_res = 3.2 # (Group demand factor Residential load)\n", + "gf_bus = 1.4 # (Group demand factor Business load)\n", + "pk_res = 1.5 # (Peak demand factor Residential load)\n", + "pk_bus = 1.2 # (Peak demand factor Business load)\n", + "\n", + "#######Residential Load##########\n", + "\n", + "\n", + "#Demand factor = Max demand/Connected load\n", + "\n", + "maxp_res = dem_res*2.0 #kW (Max demand of each house)\n", + "\n", + "#Group D.F = Sum of individual max demand/Actual max demand is\n", + "maxtot_res = (200*maxp_res)/gf_res #kW (Actual max demand)\n", + "\n", + "#Peak D.F = Max demand of consumer/Max demand during Peak time is\n", + "maxpeak_res = maxtot_res/pk_res #kW (Max demand during Peak time)\n", + "\n", + "\n", + "\n", + "########Business Load############\n", + "\n", + "\n", + "#Demand factor = Max demand/Connected load\n", + "\n", + "maxp_bus = dem_bus*200.0 #kW (Max demand of Commercial Load)\n", + "\n", + "#Group D.F = Sum of individual max demand/Actual max demand is\n", + "maxtot_bus = maxp_bus/gf_bus #kW (Actual max demand)\n", + "\n", + "#Peak D.F = Max demand of consumer/Max demand during Peak time is\n", + "maxpeak_bus = maxtot_bus/pk_bus #kW (Max demand during Peak time)\n", + "\n", + "\n", + "#Total Max demand during Peak time\n", + "peaktot = maxpeak_bus + maxpeak_res #kW\n", + "\n", + "print \"Peak demand of the city sub-station =\",round(peaktot,2),\"kW.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.11 , PAGE NO :- 1957" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum demand of Substation = 3636.36 kW\n", + "kVA capacity of transformer = 4545.45 kVA\n" + ] + } + ], + "source": [ + "'''In Fig. 50.6 is shown the distribution network from main sub-station. There are four feeders connected to each load centre\n", + "sub-station. The connected loads of different feeders and their maximum demands are as follows :\n", + "Feeder No. Connected load, kW Maximum Demand, kW\n", + "1. 150 125\n", + "2. 150 125\n", + "3. 500 350\n", + "4. 750 600\n", + "If the actual demand on each load centre is 1000 kW, what is the diversity factor on the feeders?If load centres B, C and D are\n", + "similar to A and the diversity factor between different load centres is 1.1, calculate the maximum demand of the main sub-station.\n", + "What would be the kVA capacity of the transformer required at the main sub-station if the overall p.f. at the main sub-station\n", + "is 0.8 ?'''\n", + "\n", + "#Maximum Demands\n", + "fed1 = 125.0 #kW (feeder 1)\n", + "fed2 = 125.0 #kW (feeder 2)\n", + "fed3 = 350.0 #kW (feeder 3)\n", + "fed4 = 600.0 #kW (feeder 4)\n", + "df_load = 1.1 # (Diversity Factor of load centres) \n", + "\n", + "#Diversity factor of feeders is\n", + "df_fed = (fed1 + fed2 + fed3 + fed4)/1000.0 #(df = Individual Max demand/Simultaneous Max demand)\n", + "\n", + "#Simultaneous Max demand of load centres = Total Individual Max demand/D.F of load centres is \n", + "maxp = (4*1000.0)/df_load #kW\n", + "\n", + "#KVA capacity of transformer is\n", + "capacity = maxp/0.8 #kW\n", + "\n", + "print \"Maximum demand of Substation =\",round(maxp,2),\"kW\"\n", + "print \"kVA capacity of transformer =\",round(capacity,2),\"kVA\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.12 , PAGE NO :- 1958" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Units generated per year = 4.809e+07 kWh\n", + "Diversity Factor = 1.29\n" + ] + } + ], + "source": [ + "'''If a generating station had a maximum load for the year of 18,000 kW and a load factor of 30.5% and the maximum loads on\n", + "the sub-stations were 7,500, 5,000, 3,400, 4,600 and 2,800 kW, calculate the units generated for the year and the\n", + "diversity factor.'''\n", + "\n", + "\n", + "#Given\n", + "lf = 0.305 # (load factor)\n", + "maxp = 18000.0 #kW (Maximum demand)\n", + "sum_max = 7500.0+5000+3400+4600+2800.0 #kW (Sum of individual max demand)\n", + "\n", + "\n", + "\n", + "# Average Power consumption is (Using Load factor = Avg load/Max load)\n", + "avg_pwer = lf*maxp #kW\n", + "\n", + "#Energy generated per year\n", + "enrgy = avg_pwer*8760 #kWh\n", + "\n", + "#Diversity factor = Sum of Individual Max demand/Simultaneous Max demand\n", + "df = sum_max/maxp\n", + "\n", + "print 'Units generated per year = %1.3e kWh' %enrgy\n", + "print \"Diversity Factor =\",round(df,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.13 , PAGE NO :- 1958" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum demand = 20.0 MW.\n", + "Annual energy supllied = 1.05e+08 kWh\n", + "Installed capacity = 30.000000 MW . With 2 -- 10 MW generators and 2 -- 5 MW generators.\n" + ] + } + ], + "source": [ + "'''A power station is supplying four regions of load whose peak loads are 10MW,5 MW, 8 MW and 7 MW. the diversity factor of the \n", + "load at the station is 1.5 and the average annual load factor is 60%. Calculate the maximum demand on the station and the annual\n", + "energy supplied from the station. Suggest the installed capacity and the number of units taking all aspects into account.'''\n", + "\n", + "#Given\n", + "df = 1.5 # (diversity factor)\n", + "lf = 0.6 # (load factor)\n", + "sum_max = 10.0+5+8+7.0 #MW (Sum of individual max. load)\n", + "\n", + "#Max demand is (Using Diversity factor = Sum of individual max. demand/Simultaneous Max. demand)\n", + "maxdem = sum_max/df #MW\n", + "\n", + "#Average load is (Using Load factor = Avg load/Max. load)\n", + "avg_load = lf*maxdem #MW\n", + "\n", + "#Total Energy consumption in a year is\n", + "enrgy = avg_load*8760*1000.0 #kWh\n", + "\n", + "#Considering 50% more for future use\n", + "install = maxdem*1.5 #MW (installed capacity)\n", + "\n", + "print \"Maximum demand =\",round(maxdem,2),\"MW.\"\n", + "print \"Annual energy supllied = %1.2e kWh\" %enrgy\n", + "print \"Installed capacity = %f MW . With 2 -- 10 MW generators and 2 -- 5 MW generators.\" %install" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.14 , PAGE NO :- 1959" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Generating cost per unit is 3.15 paise.\n" + ] + } + ], + "source": [ + "'''The capital cost of 30 MW generating station is Rs. 15*10^6. The annual expenses incurred on account of fuel, taxes,\n", + "salaries and maintenance amount to Rs. 1.25*10^6. The station operates at an annual load factor of 35%. Determine the\n", + "generating cost per unit delivered, assuming rate of interest 5% and rate of depreciation 6%.'''\n", + "\n", + "#Given\n", + "lf = 0.35 # (load factor)\n", + "maxp = 30.0*1000 #kW (max power)\n", + "mntnce = 1.25e+6 #Rs (maintainance cost) \n", + "cost = 15.0e+6 #Rs (capital cost) \n", + "\n", + "#load factor = Avg load/Max load . Therefore , Avg Load is\n", + "avg_load = lf*maxp #kW\n", + "\n", + "#Units produced per year\n", + "units = avg_load*8760 #kWh\n", + "\n", + "dep = 0.11*cost #(Depriciation + Interest cost)\n", + "\n", + "#Total cost per year\n", + "tot_cost = dep + mntnce #Rs\n", + "\n", + "#Cost per unit\n", + "cost_unit = tot_cost/units*100 #Paise/kWh\n", + "\n", + "print \"Generating cost per unit is\",round(cost_unit,2),\"paise.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.15 , PAGE NO :- 1959" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Fixed charge(100% load factor) = 4.11 paise.\n", + "Fixed charge(25% load factor) = 16.44 paise.\n" + ] + } + ], + "source": [ + "'''A generating plant has a maximum capacity of 100 kW and costs Rs.300,000.The fixed charges are 12% consisting of 5% interest,\n", + "5% depreciation and 2% taxes etc. Find the fixed charges per kWh generated if load factor is (i) 100% and (ii) 25%.'''\n", + "\n", + "#Annual fixed charges are\n", + "charge1 = 300.0e+3*(12.0/100) #Rs\n", + "\n", + "#Number of kWh generated per year with 100% load factor are\n", + "units1 = 100.0*8760*1 #kWh\n", + "\n", + "#Number of kWh generated per year with 25% load factor are\n", + "units2 = 100.0*8760*0.25 #kWh\n", + "\n", + "#Fixed charges per unit is\n", + "\n", + "cost1 = charge1/units1*100 #paise (100% load factor)\n", + "cost2 = charge1/units2*100 #paise (25% load factor)\n", + "\n", + "print \"Fixed charge(100% load factor) = \",round(cost1,2),\"paise.\"\n", + "print \"Fixed charge(25% load factor) = \",round(cost2,2),\"paise.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.16 , PAGE NO :- 1959" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a = 80000.0\n", + "b = 900.0\n", + "c = 0.00025\n" + ] + } + ], + "source": [ + "'''The annual working cost of a thermal station is represented by the formula Rs. (a + b kW + c kWh) where a, b and c are constants\n", + "for that particular station, kW is the total installed capacity and kWh is the energy produced per annum.\n", + "\n", + "Determine the values of a, b and c for a 100 MW station having annual load factor of 55% and for which\n", + "(i) capital cost of buildings and equipment is Rs. 90 million\n", + "(ii) the annual cost of fuel, oil,taxation and wages and salaries of operating staff is Rs. 1,20,000\n", + "(iii) interest and depreciation on buildings and equipment are 10% p.a.\n", + "(iv) annual cost of orginasation, interest on cost of site etc. is Rs. 80,000.'''\n", + "\n", + "\n", + "#Given\n", + "lf = 0.55 # (load factor)\n", + "cap = 100.0e+3 #kW (capacity of station)\n", + "\n", + "#As a represents the fixed-cost,b semi-fixed cost and c the running cost.\n", + "\n", + "a = 80000.0 #Rs (Given)\n", + "\n", + "\n", + "#Now, b*kW minimum demand = semi-fixed cost\n", + "b = 90.0e+6/cap\n", + "\n", + "\n", + "#Total units generated per annum = (max demand in kW)*(load factor)*8760 \n", + "units = cap*lf*8760 #kWh\n", + "\n", + "# Now, c*(no. of units) = 120000.0 . Therefore,\n", + "c = 120000.0/units\n", + "\n", + "print \"a =\",round(a,2)\n", + "print \"b = \",round(b,2)\n", + "print \"c = \",round(c,5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.17 , PAGE NO :- 1960" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Limiting value of water evaporated = 6.0 kg.\n", + "Coal consumption per hour on no-load is = 750.0 kg.\n" + ] + } + ], + "source": [ + "'''In a steam generating station, the relation between the water evaporated W kg and coal consumed C kg and power in kW\n", + "generated per 8-hour shift is as follows :\n", + "W = 28,000 + 5.4 kWh; C = 6000 + 0.9 kWh\n", + "What would be the limiting value of the water evaporated per kg of coal consumed as the station output increases ?\n", + "Also, calculate the amount of coal required per hour to keep the station running at no-load.'''\n", + "\n", + "\n", + "#For an 8-hour shift,Wt of water evaporated per kg of coal consumed is\n", + "# W/C = 28000 + 5.4kWh/6000 + 0.9kWh\n", + "\n", + "#Limiting value will approach\n", + "lim = 5.4/0.9\n", + "print \"Limiting value of water evaporated =\",lim,\"kg.\"\n", + "\n", + "#Since at no load there is no generation of power\n", + "#Coal consumption per 8 hour shift is 6000.0 kg\n", + "#Coal consumption per hour on no-load is\n", + "cons = 6000.0/8\n", + "print \"Coal consumption per hour on no-load is =\",round(cons,2),\"kg.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.18 , PAGE NO :- 1960" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cost per kWh(unit) delivered = 4.28 paise.\n" + ] + } + ], + "source": [ + "'''Estimate the generating cost per kWh delivered from a generating station from the following data :\n", + "Plant capacity = 50 MW ; annual load factor = 40%; capital cost = Rs. 3.60 crores; annual cost\n", + "of wages, taxation etc. = Rs. 4 lakhs; cost of fuel, lubrication, maintenance etc. = 2.0 paise per kWh\n", + "generated, interest 5% per annum, depreciation 5% per annum of initial value.'''\n", + "\n", + "#Given\n", + "maxp = 50.0e+3 #kW (Plant capacity)\n", + "lf = 0.4 # (load factor)\n", + "\n", + "#Average power over a year is = Max. power * load factor\n", + "\n", + "avg_p = maxp*lf #kW\n", + "\n", + "#Units produced per year\n", + "units = avg_p*8760 #kWh\n", + "\n", + "#Depriciation + Interest (5 + 5 = 10% of capital cost)\n", + "charge1 = (10.0/100)*3.60e+7 #Rs\n", + "\n", + "#Annual wage and taxation\n", + "charge2 = 4.0e+5 #Rs\n", + "\n", + "#Total cost/year =\n", + "tot_charge= charge1 + charge2 #Rs\n", + "\n", + "\n", + "#Cost per unit\n", + "cost = tot_charge/units*100 #paise\n", + "\n", + "#Cost per kWh(unit) delivered = base cost + maintenance cost\n", + "tot_cost = cost + 2.0 #paise\n", + "\n", + "print \"Cost per kWh(unit) delivered =\",round(tot_cost,2),\"paise.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.19 , PAGE NO :- 1960" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cost per kWh generated = 5.67 Paise.\n", + "Cost per kW is = 268.2 Rs.\n" + ] + } + ], + "source": [ + "'''The following data relate to a 1000 kW thermal station :\n", + "Cost of Plant = Rs. 1,200 per kW Interest, insurance and taxes = 5% p.a.\n", + "Depreciation = 5% p.a. Cost of primary distribution system = Rs. 4,00,000\n", + "Interest, insurance, taxes and depreciaton = 5% p.a. Cost of coal including transportation = Rs. 40 per tonne\n", + "Operating cost = Rs. 4,00,000 p.a. Plant maintenance cost : fixed = Rs. 20,000 p.a.\n", + "variable = Rs. 30,000 p.a. Installed plant capacity = 10,000 kW\n", + "Maximum demand = 9,000 kW Annual load factor = 60%\n", + "Consumption of coal = 25,300 tonne\n", + "Find the cost of power generation per kilowatt per year, the cost per kilowatt-hour generated\n", + "and the total cost of generation per kilowatt-hour. Transmission/primary distribution is chargeable\n", + "to generation.'''\n", + "\n", + "\n", + "#Given\n", + "maxp = 9000.0 #kW (Maximum demand)\n", + "lf = 0.6 # (load factor)\n", + "#Fixed cost\n", + "costp = 400000.0 #Rs (cost of primary distribution)\n", + "costplant = 1200.0*10000.0 #Rs (Total cost of plant)\n", + "mntnce = 20000.0 #Rs (Maintenance cost)\n", + "\n", + "#Variable cost\n", + "fuel = 25300.0*40.0 #Rs (fuel cost)\n", + "var_mntnce = 30000.0 #Rs (variable maintenance cost)\n", + "op_cost = 400000.0 #Rs (operating cost)\n", + "\n", + "\n", + "#Total fixed cost is\n", + "fixed = costplant*(10.0/100) + mntnce + costp*(5.0/100) #Rs \n", + "\n", + "#Total variable cost is\n", + "var = op_cost + fuel + var_mntnce #Rs\n", + "\n", + "#Total cost is\n", + "cost_tot = fixed + var #Rs\n", + "\n", + "#Average demand (kWh) = Load factor * Max demand *(no. of hours in a year)\n", + "avg_p = lf*maxp*8760 #kWh\n", + "\n", + "#Cost per kWh generated = Total annual cost/units produced in a year\n", + "cost = cost_tot/avg_p*100.0 #paise\n", + "\n", + "#Since installed capacity is 10000.0 kW , cost per kW is\n", + "cost_kw = cost_tot/10000.0 #Rs\n", + "\n", + "print \"Cost per kWh generated = \",round(cost,2),\"Paise.\"\n", + "print \"Cost per kW is =\",round(cost_kw,2),\"Rs.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.20 , PAGE NO :- 1961" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual Bill = 13768.0 Rs.\n", + "Cost/kWh (i) = 7.81 paise .\n", + "Cost/kWh (ii) = 7.81 paise .\n", + "Cost/kWh (iii)= 9.07 paise .\n" + ] + } + ], + "source": [ + "'''Consumer has an annual consumption of 176,400 kWh. The charge is Rs. 120 per kW of maximum demand plus 4 paisa\n", + "per kWh.\n", + "(i) Find the annual bill and the overall cost per kWh if the load factor is 36%.\n", + "(ii) What is the overall cost per kWh, if the consumption were reduced 25% with the same load factor ?\n", + "(iii) What is the overall cost per kWh, if the load factor is 27% with the same consumption as in (i) '''\n", + "\n", + "\n", + "#Given\n", + "an_con = 176400.0 #kWh (Annual consumption)\n", + "lf = 0.36 # (load factor)\n", + "\n", + "###(i)###\n", + "#Average demand = annual consumption/No of hours in a year is\n", + "avg_dem = an_con/8760 #kW\n", + "\n", + "#Maximum demand = Avg demand/Load factor\n", + "maxp = avg_dem/lf #kW\n", + "\n", + "#Total bill = charge due to maximum demand + 4 paise per kWh\n", + "bill = maxp*120.0 + 0.04*an_con #Rs\n", + "\n", + "#Cost/kWh = annual bill/annual consumption(in kWh)\n", + "cost = bill/an_con*100 #paise\n", + "\n", + "print \"Annual Bill = \",round(bill),\"Rs.\"\n", + "print \"Cost/kWh (i) = \",round(cost,2),\"paise .\"\n", + "\n", + "\n", + "\n", + "###(ii)###\n", + "an_con = 176400.0 * (0.75) #kWh (Annual consumption is 75% only)\n", + "lf = 0.36 # (load factor)\n", + "\n", + "#Average demand = annual consumption/No of hours in a year is\n", + "avg_dem = an_con/8760 #kW\n", + "\n", + "#Maximum demand = Avg demand/Load factor\n", + "maxp = avg_dem/lf #kW\n", + "\n", + "#Total bill = charge due to maximum demand + 4 paise per kWh\n", + "bill = maxp*120.0 + 0.04*an_con #Rs\n", + "\n", + "#Cost/kWh = annual bill/annual consumption(in kWh)\n", + "cost = bill/an_con*100 #paise\n", + "\n", + "print \"Cost/kWh (ii) = \",round(cost,2),\"paise .\"\n", + "\n", + "\n", + "###(iii)###\n", + "an_con = 176400.0 #kWh (Annual consumption)\n", + "lf = 0.27 # (changed load factor)\n", + "\n", + "#Average demand = annual consumption/No of hours in a year is\n", + "avg_dem = an_con/8760 #kW\n", + "\n", + "#Maximum demand = Avg demand/Load factor\n", + "maxp = avg_dem/lf #kW\n", + "\n", + "#Total bill = charge due to maximum demand + 4 paise per kWh\n", + "bill = maxp*120.0 + 0.04*an_con #Rs\n", + "\n", + "#Cost/kWh = annual bill/annual consumption(in kWh)\n", + "cost = bill/an_con*100 #paise\n", + "\n", + "print \"Cost/kWh (iii)= \",round(cost,2),\"paise .\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.21 , PAGE NO :- 1964" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "load factor = 0.71\n", + "capacity factor = 0.61\n", + "daily fuel requirement = 125.84 tonne.\n" + ] + } + ], + "source": [ + "'''A power station has a load cycle as under :\n", + "\n", + "260 MW for 6 hr ; 200 MW for 8 hr ; 160 MW for 4 hr ; 100 MW for 6 hr\n", + "If the power station is equipped with 4 sets of 75 MW each, calculate the load factor and the\n", + "capacity factor from the above data. Calculate the daily fuel requirement if the calorific value of the\n", + "oil used were 10,000 kcal/kg and the average heat rate of the station were 2,860 kcal/kWh.'''\n", + "\n", + "\n", + "#Given\n", + "maxp = 260.0 #MW (Maximum demand)\n", + "heat = 2860.0 #kcal/kWh (Heat rate of station)\n", + "cal = 100000.0 #kcal/kg (calorific value)\n", + "\n", + "#Energy consumed per day\n", + "enrgy = maxp*6 + 200.0*8 + 160.0*4 + 100.0*6 #MW\n", + "\n", + "#Daily load factor = Energy consumed/Max demand*24 is\n", + "lf = enrgy/(maxp*24)\n", + "\n", + "#Installed capacity is\n", + "cap = (75.0)*4 #MW\n", + "\n", + "#Capacity factor = Energy consumed/Installed capacity*24 is\n", + "cf = enrgy/(cap*24)\n", + "\n", + "#Heat produced in station in kcal\n", + "heat_p = heat*enrgy*1000.0 #kcal\n", + "\n", + "#Daily fuel requirement is\n", + "fuel = (heat_p/cal)/1000.0 #tonne\n", + "\n", + "print \"load factor =\",round(lf,2)\n", + "print \"capacity factor =\",round(cf,2)\n", + "print \"daily fuel requirement =\",round(fuel,2),\"tonne.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.22 , PAGE NO :- 1964" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "load factor = 0.57\n", + "utilization factor = 0.73\n" + ] + } + ], + "source": [ + "'''A generating station has two 50 MW units each running for 8,500 hours in a year and one 30 MW unit running for\n", + "1,250 hours in one year. The station output is 650 * 10^6 kWh per year. Calculate\n", + "(i) station load factor, (ii) the utilization factor.'''\n", + "\n", + "#Given\n", + "\n", + "#Output of power station(Energy used)\n", + "enrgy = 650.0e+6 #kWh\n", + "\n", + "#Maximum demand\n", + "maxp = 2*50.0 + 30.0 #MW\n", + "maxp = maxp*1000.0 #kW\n", + "\n", + "#Total energy produced in kWh is\n", + "enrgy_pro = 2*(50.0e+3)*(8500.0) + (30.0e+3)*1250.0 #kWh\n", + "\n", + "#Annual load factor = Energy consumed/Max demand*8760 is\n", + "lf = enrgy/(maxp*8760)\n", + "\n", + "#Utilization factor = Energy consumed/Energy produced\n", + "uf = enrgy/enrgy_pro\n", + "\n", + "print \"load factor = \",round(lf,2)\n", + "print \"utilization factor =\",round(uf,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.23 , PAGE NO :- 1965" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Installed Capacity = 50.0 MW\n", + "Plant factor = 0.48\n", + "Maximum demand = 40000.0 kW\n", + "Load factor = 0.6\n", + "Utilization factor = 0.8\n" + ] + } + ], + "source": [ + "'''The yearly duration curve of a certain plant may be considered as a straight line from 40,000 kW to 8,000 kW.\n", + "To meet this load, three turbo-generators, two rated at 20,000 kW each and one at 10,000 kW are installed.\n", + "Determine (a) the installed capacity, (b) plant factor,(c) maximum demand, (d) load factor and (e) utilization factor.'''\n", + "\n", + "\n", + "#(a) Installed capacity is\n", + "cap = 2*20.0 + 10.0 #MW\n", + "\n", + "#(b)plant factor\n", + "\n", + "#Average demand\n", + "avg_dem = (40000.0 + 8000.0)/2 #kW\n", + "\n", + "#Plant factor = Average demand/Installed capacity\n", + "pf = avg_dem/(cap*1000.0)\n", + "\n", + "#(c) Maximum demand\n", + "maxp = 40000.0 #kW (Given)\n", + "\n", + "#(d)load factor = Avg demand/Max demand\n", + "lf = avg_dem/maxp\n", + "\n", + "#(e)Utilization factor = Max demand/Plant capacity\n", + "uf = maxp/(cap*1000.0)\n", + "\n", + "print \"Installed Capacity = \",round(cap),\"MW\"\n", + "print \"Plant factor = \",round(pf,2)\n", + "print \"Maximum demand = \",maxp,\"kW\"\n", + "print \"Load factor = \",round(lf,2)\n", + "print \"Utilization factor = \",round(uf,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.24 , PAGE NO :- 1965" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum demand of Run of River = 40.0 MW.\n", + "Maximum demand of Reservoir = 40.0 MW.\n", + "Maximum demand of Steam = 80.0 MW.\n", + "Load factor(Run of river) = 1.0\n", + "Load factor(Reservoir) = 0.25\n", + "Load factor(Steam) = 0.88\n" + ] + } + ], + "source": [ + "'''The load duration curve of a system is as shown in Fig. 50.10. The system is\n", + "supplied by three stations; a steam station, a run-of-river station and a reservoir hydro-electric\n", + "station. The ratios of number of units supplied by the three stations are as below :\n", + "Steam : Run of river : Reservoir\n", + "7 : 4 : 1\n", + "The run-of-river station is capable of generating power continuosuly and works as a peak load\n", + "station. Estimate the maximum demand on each station and also the load factor of each station.'''\n", + "\n", + "\n", + "from sympy import Symbol,Eq,solve\n", + "\n", + "#Let 100% time be 1 year = 8760 hours\n", + "\n", + "#Area under curve is energy produced in a year\n", + "enrgy = (0.5*(160-80)*8760.0 + 80*8760.0)*1000.0 #kWh\n", + "\n", + "#For the given ratio ,units supplied by each station is\n", + "steam = enrgy*(7.0/12) #kWh (Steam station)\n", + "runriv = enrgy*(4.0/12) #kWh (Run of river station)\n", + "reservoir = enrgy*(1.0/12) #kWh (Reservoir)\n", + "\n", + "#Maximum demand of run of river is\n", + "max_ror = runriv/(8760.0*1000.0) #MW (From figure)\n", + "\n", + "#For Maximum demand of Reservoir,\n", + "x = Symbol('x') #(As shown in figure)\n", + "\n", + "#No of hours reservoir will work is\n", + "y = x/80*(8760)\n", + "\n", + "#Area under the reservoir curve(Energy produced) is\n", + "area = 0.5*(y)*(x)*1000.0 #kWh\n", + "\n", + "eq = Eq(area,reservoir)\n", + "x = solve(eq)\n", + "max_res = x[1] #MW\n", + "#Maximum demand of steam station is\n", + "max_steam = 160.0 - max_ror - max_res #MW\n", + "\n", + "#Load factors of each station load factor = Energy produced/Max demand*8760\n", + "\n", + "#Run of River operates continously\n", + "lf_ror = 1.0\n", + "#Load factor Reservoir\n", + "lf_res = reservoir/(max_res*1000*8760)\n", + "#Load factor Steam\n", + "lf_steam = steam/(max_steam*1000*8760)\n", + "\n", + "\n", + "print \"Maximum demand of Run of River = \",round(max_ror,2),\"MW.\"\n", + "print \"Maximum demand of Reservoir = \",round(max_res,2),\"MW.\"\n", + "print \"Maximum demand of Steam = \",round(max_steam,2),\"MW.\"\n", + "\n", + "print \"Load factor(Run of river) = \",round(lf_ror,2)\n", + "print \"Load factor(Reservoir) = \",round(lf_res,2)\n", + "print \"Load factor(Steam) = \",round(lf_steam,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.25 , PAGE NO :- 1966" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Load factor = 0.34\n" + ] + } + ], + "source": [ + "'''A load having a maximum value of 150 MW can be supplied by either a hydroelectric plant or a steam power plant.\n", + "The costs are as follows :\n", + "Capital cost of steam plant = Rs. 700 per kW installed\n", + "Capital cost of hydro-electric plant = Rs. 1,600 per kW installed\n", + "Operating cost of steam plant = Rs. 0.03 per kWh\n", + "Operating cost of hydro-electric plant = Rs. 0.006 per kWh\n", + "Interest on capital cost 8 per cent. Calculate the minimum load factor above which the hydroelectric plant will be\n", + "more economical.'''\n", + "\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#Given\n", + "maxp = 150.0e+3 #kW\n", + "\n", + "#Let x be the total number of units generated per annum\n", + "x = Symbol('x')\n", + "\n", + "## Steam plant ##\n", + "\n", + "#Capital cost is\n", + "cap_stm = 700.0*(maxp) #Rs\n", + "#Interest charges\n", + "charge1 = cap_stm*(8.0/100) #Rs \n", + "\n", + "#Fixed charge/unit\n", + "fxd_stm = charge1/x #Rs \n", + "\n", + "#Total cost per kWh for steam plant is\n", + "cost_stm = fxd_stm + 0.03 #Rs\n", + "\n", + "\n", + "## Hydro-electric plant ##\n", + "\n", + "#Capital cost is\n", + "cap_hyd = 1600.0*(maxp) #Rs\n", + "#Interest charges\n", + "charge1 = cap_hyd*(8.0/100) #Rs \n", + "\n", + "#Fixed charge/unit\n", + "fxd_hyd = charge1/x #Rs \n", + "\n", + "#Total cost per kWh for steam plant is\n", + "cost_hyd = fxd_hyd + 0.006 #Rs\n", + "\n", + "\n", + "#Let us find out x when both cost will be equal\n", + "eq = Eq(cost_hyd,cost_stm)\n", + "x = solve(eq)\n", + "x1 = x[0]\n", + "\n", + "#If units generated are more than x1 then cost of hydro-electricity will be cheaper\n", + "\n", + "#Load factor = Energy produced/Max demand*8760\n", + "\n", + "lf = x1/(maxp*8760)\n", + "\n", + "print \"Load factor =\",round(lf,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.26 , PAGE NO :- 1967" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Overall cost/kWh for (a) = 10.97 paise.\n", + "Overall cost/kWh for (b) = 10.71 paise.\n", + "Overall cost/kWh for (c) = 11.21 paise.\n", + "Overall cost/kWh for steam station with 90% load factor = 6.9 paise.\n", + "Overall cost/kWh for steam station with 90% load factor = 4.87 paise.\n" + ] + } + ], + "source": [ + "'''A power system having maximum demand of 100 MW has a load 30% and is to be supplied by either of the following schemes :\n", + "(a) a steam station in conjunction with a hydro-electric station, the latter supplying 100 * 10^6\n", + " units per annum with a max. output of 40 MW,\n", + "(b) a steam station capable of supply the whole load,\n", + "(c) a hydro station capable of supplying the whole load,\n", + "Compare the overall cost per unit generated assuming the following data :\n", + " Steam Hydro\n", + "Capital cost / kW Rs. 1,250 Rs. 2,500\n", + "Interest and depreciation on the capital cost 12% 10%\n", + "Operating cost/kWh 5 paise 1.5 paise\n", + "Transmission cost/kWh Negligible 0.2 paise\n", + "Show how overall cost would be affected in case (ii) and (iii) above if the system load factor\n", + "were improved to 90 per cent.'''\n", + "\n", + "\n", + "#Average power consumption is\n", + "avg_pwr = 100.0*0.3*1000.0 #kW\n", + "\n", + "#Units generated in a year = Power*time(no of hours in a year)\n", + "units = avg_pwr*(8760) #kWh\n", + "\n", + "#----------------------------------------------------------------------------------------------#\n", + "#(a)Steam station in conjunction with Hydro station\n", + "\n", + "hyd_units = 100.0e+6 #kWh (units supplied by hydro station)\n", + "stm_units = units - hyd_units #kWh (units supplied by steam station)\n", + "hyd_max = 40.0e+3 #kW (max. output of Hydro station)\n", + "stm_max = 100.0e+3 - hyd_max #kW (max. output of Steam station)\n", + "\n", + "\n", + "#(i)Steam station\n", + "cap_cost = stm_max*(1250) #Rs (capital cost)\n", + "fxd_charge = (12.0/100)*cap_cost #Rs (fixed charge: interest & depreciation)\n", + "op_charge = (5.0/100)*stm_units #Rs (operating charge)\n", + "stm_cost = fxd_charge + op_charge #Rs (total steam charges)\n", + "\n", + "#(ii)Hydro station\n", + "cap_cost = hyd_max*(2500) #Rs (capital cost)\n", + "fxd_charge = (10.0/100)*cap_cost #Rs (fixed charges: interest & depreciation)\n", + "op_charge = (1.5/100)*hyd_units #Rs (operating charges)\n", + "tr_charge = (0.2/100)*hyd_units #Rs (transmission charges)\n", + "hyd_cost = fxd_charge + op_charge + tr_charge #Rs (total hydro charges)\n", + "\n", + "#Total cost\n", + "tot_cost = stm_cost + hyd_cost #Rs (total cost) \n", + "#Overal cost per kWh\n", + "cost_kwh = tot_cost/units*100 #paisa\n", + "print \"Overall cost/kWh for (a) = \",round(cost_kwh,2),\"paise.\"\n", + "\n", + "#------------------------------------------------------------------------------------------------#\n", + "#(b)Steam station alone\n", + "stm_max = 100.0e+3 #kW (max. output of Steam station)\n", + "stm_units = units #kWh (units supplied by Steam station)\n", + "\n", + "cap_cost = stm_max*(1250) #Rs (capital cost)\n", + "fxd_charge = (12.0/100)*cap_cost #Rs (fixed charge: interest & depreciation)\n", + "op_charge = (5.0/100)*stm_units #Rs (operating charge)\n", + "stm_cost = fxd_charge + op_charge #Rs (total steam charges)\n", + "stm_fxdkWh = fxd_charge/stm_units*100#paise (fixed charge per unit)\n", + "#Overal cost per kWh\n", + "cost_kwh = stm_cost/stm_units*100 #paisa\n", + "print \"Overall cost/kWh for (b) = \",round(cost_kwh,2),\"paise.\"\n", + "\n", + "#------------------------------------------------------------------------------------------------#\n", + "#(c)Hydro station alone\n", + "hyd_max = 100.0e+3 #kW (max. output of Hydro station)\n", + "hyd_units = units #kWh (units supplied by Hydro station)\n", + "\n", + "cap_cost = hyd_max*(2500) #Rs (capital cost)\n", + "fxd_charge = (10.0/100)*cap_cost #Rs (fixed charges: interest & depreciation)\n", + "op_charge = (1.5/100)*hyd_units #Rs (operating charges)\n", + "tr_charge = (0.2/100)*hyd_units #Rs (transmission charges)\n", + "hyd_cost = fxd_charge + op_charge + tr_charge #Rs (total hydro charges)\n", + "hyd_fxdkWh = fxd_charge/hyd_units*100#paise (fixed charge per unit)\n", + "#Overall cost per kWh\n", + "cost_kwh = hyd_cost/hyd_units*100 #paisa\n", + "print \"Overall cost/kWh for (c) = \",round(cost_kwh,2),\"paise.\"\n", + "\n", + "#-------------------------------------------------------------------------------------------------#\n", + "#(d)As load factor is made 3 times. No. of units generated are 3 times and therefore fixed price\n", + "#decrease to 1/3 times the previous price\n", + "\n", + "#(i)Steam station\n", + "cost_kwh = stm_fxdkWh/3 + 5.0 #paise (new total steam cost per kWh)\n", + "print \"Overall cost/kWh for steam station with 90% load factor = \",round(cost_kwh,2),\"paise.\"\n", + "#(ii)Hydro station\n", + "cost_kwh = hyd_fxdkWh/3 + 1.5 + 0.2 #paise (new total hydro cost per kWh)\n", + "print \"Overall cost/kWh for steam station with 90% load factor = \",round(cost_kwh,2),\"paise.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.27 , PAGE NO :- 1969" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Generation cost is = Rs ( 154.25 kW + 0.0119 )kWh.\n" + ] + } + ], + "source": [ + "'''The capital cost of a hydro-power station of 50,000 kW capacity is Rs. 1,200 per kW. The annual charge on investment\n", + "including depreciation etc. is 10%. A royality of Rs. 1 per kW per year and Rs. 0.01 per kWh generated is to be paid for\n", + "using the river water for generation of power. The maximum demand is 40,000 kW and the yearly load factor is 80%.\n", + "Salaries,maintenance charges and supplies etc. total Rs. 6,50,000. If 20% of this expense is also chargeable\n", + "as fixed charges, determine the generation cost in the form of A per kW plus B per kWh.'''\n", + "\n", + "\n", + "maxp = 40000.0 #kW (Maximum demand)\n", + "#Capital cost of station = Cost/kW *(Capacity of plant in kW)\n", + "cap_cost = 1200.0*50000.0 #Rs\n", + "\n", + "#Annual charge on investment includin depriciation\n", + "anl_charge = (10.0/100)*cap_cost #Rs\n", + "\n", + "#Total running charge\n", + "run_charge = (80.0/100)*650000.0 #Rs \n", + "\n", + "#Fixed charges\n", + "fxd_charge = (20.0/100)*650000.0 #Rs\n", + "\n", + "#Cost per Max demand kW due to fixed charge is\n", + "cost_md1 = (anl_charge + fxd_charge)/maxp #Rs\n", + "#Cost per Max demand kW due to royalty is\n", + "cost_md2 = 1.0 #Rs\n", + "#Total Cost per Max demand kW is\n", + "cost_md = cost_md1 + cost_md2 #Rs\n", + "\n", + "\n", + "#Total number of unit generated per annum = Max demand*load factor*(No of hours)\n", + "units = maxp*0.8*8760 #kWh\n", + "\n", + "#Cost per unit due to running charges\n", + "cost_unit = run_charge/units #Rs\n", + "#Royalty cost\n", + "cost_roy = 0.01 #Rs\n", + "#Total cost per unit is\n", + "cost_tot = cost_unit + cost_roy #Rs\n", + "\n", + "print \"Generation cost is = Rs (\",round(cost_md,2),\"kW + \",round(cost_tot,4),\")kWh.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.28 , PAGE NO :- 1969" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "load factor = 0.472\n", + "generating cost = Rs. 41314200.0\n" + ] + } + ], + "source": [ + "'''The capital costs of steam and water power stations are Rs. 1,200 and Rs. 2,100 per kW of the installed capacity.\n", + "The corresponding running costs are 5 paise and 3.2 paise per kWh respectively.The reserve capacity in the case of the\n", + "steam station is to be 25% and that for the water power station is to be 33.33% of the installed capacity.At what\n", + "load factor would the overall cost per kWh be the same in both cases ? Assume interest and depreciation charges\n", + "on the capital to be 9% for the thermal and 7.5% for the hydro-electric station. What would be the cost of generating\n", + "500 million kWh at this load factor ? '''\n", + "\n", + "from sympy import Symbol,Eq,solve\n", + "\n", + "#Let x be the maximum demand in kWh and y the load factor\n", + "x = Symbol('x')\n", + "y = Symbol('y')\n", + "#Total number of units produced\n", + "units = x*y*8760.0 #kWh\n", + "\n", + "\n", + "###### Steam station ######\n", + "\n", + "#Installed capacity\n", + "capacity = 1.25*x #kW (including reserve capacity)\n", + "#Capital cost\n", + "cap_cost = capacity*1200.0 #Rs\n", + "#Annual depreciation\n", + "anl_charge = (9.0/100)*cap_cost #Rs\n", + "#Annual running cost\n", + "run_charge = (8760*x*y)*(5.0/100) #Rs\n", + "#Total annual cost\n", + "cost_stm = run_charge + anl_charge\n", + "#Total cost/unit\n", + "stmcost_unt = cost_stm/units\n", + "\n", + "###### Hydro station ######\n", + "\n", + "#Installed capacity\n", + "capacity = 1.33*x #kW (including reserve capacity)\n", + "#Capital cost\n", + "cap_cost = capacity*2100.0 #Rs\n", + "#Annual depreciation\n", + "anl_charge = (7.5/100)*cap_cost #Rs\n", + "#Annual running cost\n", + "run_charge = (8760*x*y)*(3.2/100) #Rs\n", + "#Total annual cost\n", + "cost_hyd = run_charge + anl_charge #Rs\n", + "#Total cost/unit\n", + "hydcost_unt = cost_hyd/units #Rs\n", + "\n", + "#To solve we will assume a value of x\n", + "x = 10\n", + "eq = Eq(hydcost_unt,stmcost_unt)\n", + "y = solve(eq)\n", + "y1 = y[0]\n", + "for key in y1:\n", + " y1 = y1.get(key);\n", + "#Maximum demand is\n", + "x = 500.0e+6/(8760.0*y1) #kW\n", + "\n", + "#Calculating cost\n", + "capacity = 1.25*x\n", + "cap_cost = capacity*1200.0\n", + "anl_charge = (9.0/100)*cap_cost\n", + "run_charge = (8760*x*y1)*(5.0/100)\n", + "cost_stm = run_charge + anl_charge #Rs\n", + "print \"load factor =\",round(y1,3)\n", + "print \"generating cost = Rs.\",round(cost_stm,-1)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.29 , PAGE NO :- 1970" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hydro cost/kWh = 13.56 paise.\n", + "Steam cost/kWh = 11.85 paise.\n", + "Steam is economical for lf = 0.1\n", + "Hydro cost/kWh = 3.51 paise.\n", + "Steam cost/kWh = 6.37 paise.\n", + "Hydro is economical for lf = 0.5\n" + ] + } + ], + "source": [ + "'''In a particular area, both steam and hydro-stations are equally possible. It has been estimated that capital cost and the running\n", + "costs of these two types will be as follows:\n", + " Capital cost/kW Running cost/kWh Interest\n", + "Hydro : Rs. 2,200 1 Paise 5%\n", + "Steam : Rs. 1,200 5 Paise 5%\n", + "If expected average load factor is only 10%, which is economical to operate : steam or hydro?\n", + "If the load factor is 50%, would there be any change in the choice ? If so, indicate with calculation.'''\n", + "\n", + "from sympy import Symbol\n", + "\n", + "#Let x be the capacity of power station in kW.\n", + "x = Symbol('x')\n", + "#------------------------------------------------------------------------#\n", + "#Case I :- Load factor = 10%\n", + "lf1 = 0.1\n", + "#Total units generated per annum\n", + "units = x*lf1*(8760) #kWh\n", + "\n", + "#(a) Hydro Station\n", + "#--------------------------------#\n", + "cap_cost = 2200.0*x #Rs (Capital cost)\n", + "fxd_charge = (5.0/100)*cap_cost #Rs (Fixed cost)\n", + "run_charge = (1.0/100)*units #Rs (Running cost -> given, 1 unit costs 1 paisa)\n", + "tot_charge = fxd_charge + run_charge #Rs (Total charge)\n", + "hyd_costkwh = tot_charge/units*100 #paise (Cost per kWh)\n", + "\n", + "#(b) Steam Station\n", + "#--------------------------------#\n", + "cap_cost = 1200.0*x #Rs (Capital cost)\n", + "fxd_charge = (5.0/100)*cap_cost #Rs (Fixed cost)\n", + "run_charge = (5.0/100)*units #Rs (Running cost -> given, 1 unit costs 5 paisa)\n", + "tot_charge = fxd_charge + run_charge #Rs (Total charge)\n", + "stm_costkwh = tot_charge/units*100 #paise (Cost per kWh)\n", + "\n", + "print \"Hydro cost/kWh =\",round(hyd_costkwh,2),\"paise.\"\n", + "print \"Steam cost/kWh =\",round(stm_costkwh,2),\"paise.\"\n", + "\n", + "if (hyd_costkwh >= stm_costkwh) :\n", + " print \"Steam is economical for lf =\",round(lf1,2)\n", + "else:\n", + " print \"Hydro is economical for lf =\",round(lf1,2)\n", + "\n", + "#-----------------------------------------------------------------------------------------------------------#\n", + "\n", + "#Case II :- Load factor = 50%\n", + "lf2 = 0.5\n", + "#Total units generated per annum\n", + "units = x*lf2*(8760) #kWh\n", + "\n", + "#(a) Hydro Station\n", + "#--------------------------------#\n", + "cap_cost = 2200.0*x #Rs (Capital cost)\n", + "fxd_charge = (5.0/100)*cap_cost #Rs (Fixed cost)\n", + "run_charge = (1.0/100)*units #Rs (Running cost -> given, 1 unit costs 1 paisa)\n", + "tot_charge = fxd_charge + run_charge #Rs (Total charge)\n", + "hyd_costkwh = tot_charge/units*100 #paise (Cost per kWh)\n", + "\n", + "#(b) Steam Station\n", + "#--------------------------------#\n", + "cap_cost = 1200.0*x #Rs (Capital cost)\n", + "fxd_charge = (5.0/100)*cap_cost #Rs (Fixed cost)\n", + "run_charge = (5.0/100)*units #Rs (Running cost -> given, 1 unit costs 5 paisa)\n", + "tot_charge = fxd_charge + run_charge #Rs (Total charge)\n", + "stm_costkwh = tot_charge/units*100 #paise (Cost per kWh)\n", + "\n", + "print \"Hydro cost/kWh =\",round(hyd_costkwh,2),\"paise.\"\n", + "print \"Steam cost/kWh =\",round(stm_costkwh,2),\"paise.\"\n", + "\n", + "if (hyd_costkwh >= stm_costkwh) :\n", + " print \"Steam is economical for lf =\",round(lf2,2)\n", + "else:\n", + " print \"Hydro is economical for lf =\",round(lf2,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.30 , PAGE NO :- 1971" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a = 50000.0\n", + "b = 0.833\n", + "c = 0.000342\n" + ] + } + ], + "source": [ + "'''The annual working cost of a thermal station can be represented by a formula Rs. (a + b kW + c kWh) where a, b and c\n", + "are constants for a particular station, kW is the total installed capactiy and kWh the energy produced per annum.\n", + "Explain the significance of the constants a, b and c and the factors on which their values depend.\n", + "Determine the values of a, b and c for a 60 MW station operating with annual load factor of 40% for which :\n", + "(i) capital cost of buildings and equipment is Rs. 5 * 10^5\n", + "(ii) the annual cost of fuel, oil, taxation and wages and salaries of operating staff is Rs.90,000\n", + "(iii) the interest and depreciation on buildings and equipment are 10% per annum\n", + "(iv) annual cost of organisation and interest on cost of site etc. is Rs. 50,000.'''\n", + "\n", + "#Constant a is fixed cost i.e annual ineterest cost\n", + "a = 50000.0\n", + "\n", + "#Constand b is semi-fixed cost such that\n", + "#b*(Max demand in kW) = annual interest on capital cost\n", + "b = 0.1*5.0e+5/(60.0e+3)\n", + "\n", + "#Constant c is running cost such that\n", + "#c*(units in kWh) = annual fuel cost etc.\n", + "\n", + "avg_pwr = 0.5*(60.0e+3) #kW (Average power)\n", + "units = avg_pwr*8760.0 #kWh (No of units produced)\n", + "c = 90000.0/units\n", + "print \"a =\",a\n", + "print \"b =\",round(b,3)\n", + "print \"c =\",round(c,6)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.31 , PAGE NO :- 1972" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total cost = 133.75 Rs\n", + "Cost per unit(kWh) is = 35.67 paise\n" + ] + } + ], + "source": [ + "'''Compute the cost of electrical energy and average cost for consuming 375 kWh under ' block rate tariff ' as under :\n", + "First 50 kWh at 60 paisa per kWh ; next 50 kWh at 50 paisa per kWh; next 50 kWh at 40 paisa per kWh; next 50 kWh at 30 paisa per kWh.\n", + "Excess over 200 kWh at 25 paisa per kWh.'''\n", + "\n", + "#Energy charge for first 50 kWh is\n", + "cost1 = 0.6*50.0 #Rs\n", + "#Energy charge for next 50 kWh is\n", + "cost2 = 0.5*50.0 #Rs\n", + "#Energy charge for next 50 kWh is\n", + "cost3 = 0.4*50.0 #Rs\n", + "#Energy charge for next 50 kWh is\n", + "cost4 = 0.3*50.0 #Rs\n", + "#Energy charge for the rest (375-200) kWh is\n", + "cost5 = 0.25*(375.0 - 200.0) #Rs\n", + "#Total cost is\n", + "tot_cost = cost1 + cost2 + cost3 + cost4 + cost5 #Rs\n", + "\n", + "#Cost/kWh = Total cost/No of units\n", + "cost_unit = tot_cost/375.0 * 100 #paisa\n", + "\n", + "print \"Total cost =\",round(tot_cost,2),\"Rs\"\n", + "print \"Cost per unit(kWh) is = \",round(cost_unit,2),\"paise\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.32 , PAGE NO :- 1972" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cost of generating is = 5.37 paise.\n" + ] + } + ], + "source": [ + "'''The output of a generating station is 390 * 10^6 units per annum and installed capacity is 80,000 kW. If the annual fixed \n", + "charges are Rs. 18 per kW of isntalled plant and running charges are 5 paisa per kWh, what is the cost per unit at the generating\n", + "station ?'''\n", + "\n", + "#Given\n", + "cap = 80000.0 #kW (installed capacity)\n", + "units = 390.0e+6 #kWh (no of units produced)\n", + "\n", + "#Annual Fixed charge is\n", + "anl_charge = cap*18.0 #Rs\n", + "\n", + "#Fixed charge per kW is\n", + "fxd_charge = anl_charge/units*100 #paise\n", + "\n", + "#Running charges per kW is\n", + "run_charge = 5.0 #paise\n", + "\n", + "#Cost of generating station is\n", + "gen_cost = run_charge + fxd_charge #paise\n", + "\n", + "print \"Cost of generating is = \",round(gen_cost,2),\"paise.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.33 , PAGE NO :- 1973" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cost of generation per kWh(load factor 100%) = 2.97 paise.\n", + "Cost of generation per kWh(load factor 100%) = 7.72 paise.\n" + ] + } + ], + "source": [ + "'''A power station has an installed capacity of 20 MW. The capital cost of station\n", + "is Rs. 800 per kW. The fixed costs are 13% of the cost of investment. On full-load at 100% load factor,\n", + "the variable costs of the station per year are 1.5 times the fixed cost. Assume no reserve capacity and\n", + "variable cost to be proportional to the energy produced, find the cost of generation per kWh at load\n", + "factors of 100% and 20%. Comment on the results.'''\n", + "\n", + "#Given\n", + "capacity = 20000.0 #kW (installed capacity)\n", + "lf1 = 1.0 # (load factor 1)\n", + "lf2 = 0.2 # (load factor 2)\n", + "\n", + "#Capital cost of station is\n", + "cap_cost = capacity*(800.0) #Rs\n", + "\n", + "#(a) At 100% load factor\n", + "fxd_cost = (13.0/100)*cap_cost #Rs (fixed cost)\n", + "var_cost = 1.5*fxd_cost #Rs (variable cost)\n", + "\n", + "#Total operating cost is\n", + "tot_cost = fxd_cost + var_cost #Rs\n", + "\n", + "#Total no. of units generated = (Max.demand*8760)*(load factor)\n", + "units = capacity*8760*lf1 #kWh\n", + "#Cost of unit per kWh generated is\n", + "cost_kwh = tot_cost/units*100 #paise\n", + "\n", + "#error in the answer of book\n", + "print \"Cost of generation per kWh(load factor 100%) = \",round(cost_kwh,2),\"paise.\"\n", + "\n", + "#(a) At 20% load factor\n", + "fxd_cost = (13.0/100)*cap_cost #Rs (fixed cost)\n", + "#Since variable cost is propotional to load\n", + "var_cost = 0.2*(1.5*fxd_cost) #Rs (variable cost)\n", + "\n", + "#Total operating cost is\n", + "tot_cost = fxd_cost + var_cost #Rs\n", + "\n", + "#Total no. of units generated = (Max.demand*8760)*(load factor)\n", + "units = capacity*8760*lf2 #kWh\n", + "#Cost of unit per kWh generated is\n", + "cost_kwh = tot_cost/units*100 #paise\n", + "\n", + "print \"Cost of generation per kWh(load factor 100%) = \",round(cost_kwh,2),\"paise.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.34 , PAGE NO :- 1973" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual running charge/kWh is = 1.38 paise.\n" + ] + } + ], + "source": [ + "'''The annual output of a generating sub-station is 525.6 * 10^6 kWh and the average load factor is 60%. If annual fixed charges are\n", + "Rs. 20 per kW installed plant and the annual running charges are 1 paisa per kWh, what would be the cost per kWh at the bus bars ?'''\n", + "\n", + "#Given\n", + "enrgy = 525.6e+6 #kWh (Energy produced)\n", + "lf = 0.6 # (Load factor) \n", + "\n", + "#Average power supplied per annum = Energy produced/(No of hours in a year)\n", + "avg_pwr = enrgy/8760 #kW\n", + "#Maximum demand = average power/load factor is\n", + "maxp = avg_pwr/lf #kW\n", + "\n", + "#Annual fixed charges\n", + "charge = 20.0*maxp #Rs\n", + "\n", + "#Fixed charge/kWh\n", + "fxd_charge = charge/enrgy*100 #paise\n", + "\n", + "#Running charge/kWh\n", + "run_charge = 1.0 #paise\n", + "\n", + "#Annual running charge/kWh is\n", + "cost = fxd_charge + run_charge #paise\n", + "print \"Annual running charge/kWh is = \",round(cost,2),\"paise.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.35 , PAGE NO :- 1974" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "M.D charges = Rs. 5162.0\n", + "Monthly Bill = Rs. 14163.0\n", + "Load factor = 0.61\n", + "Power factor = 0.6\n" + ] + } + ], + "source": [ + "'''A certain factory working 24 hours a day is charged at Rs. 10 per kVA of max.demand plus 5 paisa per kV ARh. The meters record\n", + "for a month of 30 days; 135,200 kWh, 180,020 kV ARh and maximum demand 310 kW. Calculate\n", + "(i) M.D. charges, (ii) monthly bill, (iii) load factor, (iv) average power factor.'''\n", + "\n", + "import math as m\n", + "\n", + "#Given\n", + "act_nrgy = 135200.0 #kWh (Active energy consumed in a month)\n", + "re_nrgy = 180020.0 #kVARh (Reactive energy consumed in a month)\n", + "maxp = 310.0 #kW (Maximum demand) \n", + "\n", + "#Average power\n", + "avgact_pwr = act_nrgy/(24*30) #kW (Active)\n", + "avgre_pwr = re_nrgy/(24*30) #kVAR (Reactive) \n", + "#Now, tan(theta) = kVAR/kW\n", + "theta = m.atan(avgre_pwr/avgact_pwr)\n", + "\n", + "#Maximum demand in kVA is\n", + "md_kva = maxp/(m.cos(theta))\n", + "\n", + "#(i)Maximum demand charge is\n", + "md_charge = md_kva*10.0 #Rs\n", + "\n", + "#(ii)Monthly bill\n", + "#Reactive energy charges\n", + "re_charge = (5.0/100)*re_nrgy #Rs\n", + "mon_bill = re_charge + md_charge #Rs (Monthly bill)\n", + "\n", + "#(iii)Load factor = Avg Demand/Max demand is\n", + "lf = avgact_pwr/maxp\n", + "\n", + "#(iv)Average power factor\n", + "pf = m.cos(theta)\n", + "\n", + "print \"M.D charges = Rs.\",round(md_charge)\n", + "print \"Monthly Bill = Rs.\",round(mon_bill)\n", + "print \"Load factor = \",round(lf,2)\n", + "print \"Power factor = \",round(pf,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.36 , PAGE NO :- 1974" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "overall cost/unit = 6.37 Paise.\n", + "Two-part tariff = Rs 146.67 per kW + 1.77 paise per kWh.\n" + ] + } + ], + "source": [ + "'''The cost data of a power supply company is as follows :\n", + "Station maximum demand = 50 MW ; station load factor = 60% ; Reserve capacity = 20% ; capital cost = Rs. 2,000 per kW;\n", + "interest and depreciation = 12% ; salaries (annual) = Rs. 5 × 105; fuel cost (annual) = Rs. 5 × 106 ; \n", + "maintenance and repairs (annual) Rs. 2 × 105 ; losses indistribution = 8% ; load diversity factor = 1.7.\n", + "Calculate the average cost per unit and the two-part tariff, assuming 80 per cent of salaries and repair and maintenace cost\n", + "to be fixed.'''\n", + "\n", + "#Station capacity \n", + "stn_cap = (1 + 20.0/100)*50 #MW\n", + "#Average power\n", + "avg_pwr = stn_cap * 0.6*1000 #kW \n", + "#Capital investment\n", + "cap_inv = stn_cap*1000 * 2000 #Rs\n", + "#Interest + depreciation cost\n", + "charge1= 0.12*cap_inv #Rs\n", + "#Total cost both fixed and running\n", + "cost_tot= charge1 + 5.0e+5 + 5e+6 + 2e+5 #Rs\n", + "#No. of units generated annually \n", + "units = 8760*avg_pwr\n", + "#overall cost/unit \n", + "cost_uni = cost_tot/units*100 #Paise.\n", + "print \"overall cost/unit = \",round(cost_uni,2),\"Paise.\"\n", + "#----------------------------------------------------------------------------------------------#\n", + "#Fixed charges\n", + "#Annual interest and depreciation \n", + "charge1 = charge1\n", + "#80% of salaries \n", + "charge2 = 0.8 * 5e+5 #Rs\n", + "#80% of repair and maintenance cost \n", + "charge3 = 0.8 * 2e+5 #Rs\n", + "#Total fixed charges #Rs\n", + "charge_tot = charge1 + charge2 + charge3 #Rs \n", + "#Aggregate maximum demand of all consumers = Max. demand on generating station * diversity factor\n", + "max_dem = 60*1000*1.7 #kW\n", + "#annual cost/kW of maximum demand \n", + "cost = charge_tot/max_dem #Rs \n", + "\n", + "#-----------------------------------------------------------------------------------------------#\n", + "#Running Charges\n", + "#Cost of fuel \n", + "charge1 = 50e+5 \n", + "#20% of salaries \n", + "charge2 = 0.2 * 5e+5 #Rs\n", + "#20% of repair and maintenance cost \n", + "charge3 = 0.2 * 2e+5 #Rs\n", + "#Total running charges\n", + "charge_run = charge1 + charge2 + charge3 #Rs\n", + "#Cost per unit delivered (considering 8% losses)\n", + "cost_uni = charge_run/(0.92*units)*100 #Paise\n", + "print \"Two-part tariff = Rs\",round(cost,2),\"per kW + \",round(cost_uni,2),\"paise per kWh.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.37 , PAGE NO :- 1975" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Two-part tariff = Rs. 91.18 kW + Paise. 1.32 kWh\n" + ] + } + ], + "source": [ + "'''A certain electric supply undertaking having a maximum demand of 110 MW generates 400 * 10^6 kWh per year.The supply\n", + "undertaking supplies power to consumers having an aggregate demand of 170 MW. The annual expenses including capital charges are :\n", + "Fuel = Rs. 5 * 10^6\n", + "Fixed expenses connected with generation = Rs. 7 * 10^6\n", + "Transmission and distribution expenses = Rs. 8 * 10^6\n", + "Determine a two-part tariff for the consumers on the basis of actual cost.\n", + "Assume 90% of the fuel cost as variable charges and transmission and distrbution losses as 15% of energy generated.'''\n", + "\n", + "\n", + "#Given\n", + "maxp = 170.0e+3 #kW (Maximum demand)\n", + "units = 400.0e+6 #kWh (Number of units generated)\n", + "fxd_charge = 7.0e+6 #Rs (Fixed charges)\n", + "tr_charge = 8.0e+6 #Rs (Transmission and distribution charges)\n", + "fuel_charge = (10.0/100)*5.0e+6 #Rs\n", + "#Total cost\n", + "tot_charge = fxd_charge + tr_charge + fuel_charge #Rs\n", + "#Cost per kW of Max. demand\n", + "cost_kw = tot_charge/maxp #Rs\n", + "\n", + "#Running charges = 90% of fuel cost\n", + "run_charge = (90.0/100)*5.0e+6 #Rs\n", + "#Units consumed after losses\n", + "units_con = (1 - 15.0/100)*units #kWh\n", + "#Cost per kWh of energy\n", + "cost_kwh = run_charge/units_con*100 #Paise\n", + "\n", + "print \"Two-part tariff = Rs.\",round(cost_kw,2),\"kW + Paise.\",round(cost_kwh,2),\"kWh\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.38 , PAGE NO :- 1975" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total annual bill is = Rs. 58257.0\n" + ] + } + ], + "source": [ + "'''Customer is offered power at Rs. 80 per annum per kVA of maximum demand plus 8 paisa per unit metered.\n", + "He proposes to install a motor to carry his estimated maximum demand of 300 b.h.p. (223.8 kW). The motor available has a power\n", + "factor of 0.85 at full-load. How many units will he require at 20% load factor and what willl be his annual bill ? '''\n", + "\n", + "#Given\n", + "mot_eff = 90.0/100 # (motor efficiency)\n", + "maxp = 223.8/mot_eff #kW (full-load power intake)\n", + "lf = 0.2 # (load factor)\n", + "\n", + "#Avg demand = Max demand * Load factor\n", + "avg_dem = maxp*lf #kW\n", + "#Annual consumption is\n", + "units = avg_dem*8760 #kWh\n", + "#Cost of units consumed per annum\n", + "cost1 = units*(8.0/100) #Rs\n", + "\n", + "#Maximum kVA of demand is\n", + "max_kva = maxp/0.85 #kVA\n", + "#Cost per kVA of Maximum demand is\n", + "cost2 = max_kva*(80.0) #Rs\n", + "\n", + "#Total annual bill is\n", + "tot_cost = cost1 + cost2\n", + "print \"Total annual bill is = Rs.\",round(tot_cost)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.39 , PAGE NO :- 1975" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual energy bill = Rs. 1475000.0\n", + "Annual savings = Rs. 155000.0\n" + ] + } + ], + "source": [ + "'''How two-part tariff is modified for penalising low p.f. consumers ?\n", + "An industry consumes 4 million kWh/year with a maximum demand of 1000 kW at 0.8 p.f. What is its load factor ?\n", + "(a) Calculate the annual energy charges if tariff in force is as under :\n", + " Max. demand charge = Rs. 5 per kVA per month. Energy charges = Rs. 0.35 per kWh\n", + "(b) Also calculate reduction in this bill if the maximum demand is reduced to 900 kW at 0.9 p.f. lagging.'''\n", + "\n", + "#Given\n", + "units = 4.0e+6 #kWh (No. of units generated)\n", + "maxp = 1000.0 #kW (Maximum demand)\n", + "avg_dem = units/8760 #kW (Average demand)\n", + "\n", + "#Load factor = Avg demand/Max demand\n", + "lf = avg_dem/maxp\n", + "#Max kVA demand is\n", + "max_kVA = maxp/0.8 #kVA\n", + "#--------------------------------------------#\n", + "#(a)\n", + "#Charge per kVA is\n", + "charge = 5.0*12 #Rs\n", + "#Annual charge per kVA is\n", + "cost1 = charge*max_kVA #Rs\n", + "#Annual charge per unit is\n", + "cost2 = 0.35*units #Rs\n", + "#Total energy bill is\n", + "tot_bill = cost1 + cost2 #Rs\n", + "print \"Annual energy bill = Rs.\",tot_bill\n", + "#--------------------------------------------#\n", + "#(b)\n", + "maxp = 900.0 #kW (New Maximum demand)\n", + "#Since load factor remains same\n", + "#Average load = Max demad * load factor\n", + "avg_dem = maxp*lf #kW\n", + "#No of units generated in a year are\n", + "units = avg_dem*8760 #kWh\n", + "\n", + "#Max kVA demand is\n", + "max_kVA = maxp/0.9 #kVA\n", + "#Annual charge per kVA is\n", + "cost1 = charge*max_kVA #Rs\n", + "#Annual charge per unit is\n", + "cost2 = 0.35*units #Rs\n", + "#Total energy bill is\n", + "tot_bill2 = cost1 + cost2 #Rs\n", + "#Total savings\n", + "savings = tot_bill - tot_bill2 #Rs\n", + "print \"Annual savings = Rs.\",savings" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.40 , PAGE NO :- 1976" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of units taken per annum = 1300.0 kWh.\n" + ] + } + ], + "source": [ + "'''A supply is offered on the basis of fixed charges of Rs. 30 per annum plus 3 paise per unit or alternatively,\n", + "at the rate of 6 paisa per unit for the first 400 units per annum and 5 paise per unit for all the additional units.\n", + "Find the number of units taken per annum for which the cost under these two tariffs becomes the same.'''\n", + "\n", + "\n", + "from sympy import Symbol,Eq,solve\n", + "#Let x kWh be the annual consumption of the consumer\n", + "x = Symbol('x')\n", + "\n", + "#Cost under tariff 1\n", + "cost1 = 30.0 + (3.0/100)*x #Rs\n", + "#Cost under tariff 2\n", + "cost2 = (6.0/100)*400.0 + (5.0/100)*(x-400.0) #Rs\n", + "\n", + "#Since charge in both cases are equal\n", + "eq = Eq(cost1,cost2)\n", + "x = solve(eq)\n", + "x1 = x[0]\n", + "print \"Number of units taken per annum = \",round(x1,2),\"kWh.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.41 , PAGE NO :- 1976" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cost per unit at unity p.f = 7.42 paise\n", + "Cost per unit at 0.7 p.f = 8.89 paise\n" + ] + } + ], + "source": [ + "'''If power is charged for at the rate of Rs. 75 per kVA of maximum demand and 4 paisa per unit, what is the cost per unit at\n", + "25% yearly load factor (a) for unity power factor demand and (b) for 0.7 power factor demand.'''\n", + "\n", + "#Given\n", + "lf = 0.25 # (load factor)\n", + "charge = 75.0 #Rs (Cost per kVA of max. demand)\n", + "\n", + "#(a) At unity power factor\n", + "#Max. demand charge per unit\n", + "cost1 = charge/(8760*0.25)*100 #paise\n", + "#Cost per unit\n", + "tot_cost = cost1 + 4.0 #paise\n", + "print \"Cost per unit at unity p.f = \",round(tot_cost,2),\"paise\"\n", + "\n", + "#(b) At 0.7 power factor\n", + "#Max. demand charge per unit\n", + "cost2 = charge/(8760*0.25*0.7)*100 #paise\n", + "#Cost per unit\n", + "tot_cost = cost2 + 4.0 #paise\n", + "print \"Cost per unit at 0.7 p.f = \",round(tot_cost,2),\"paise\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.42 , PAGE NO :- 1976" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total savings in annual bill = Rs. 69.44\n", + "Total cost per unit at 0.6 load factor = 11.19 paise.\n", + "Total cost per unit at 0.8 load factor = 10.89 paise.\n", + "Cost per unit is reduced with increase in lf.\n" + ] + } + ], + "source": [ + "'''Explain different methods of tariff. A tariff in force is Rs. 50 per kVA of max. demand per year plus 10 p per kWh.\n", + "A consumer has a max. demand of 10 kW with a load factor of 60% and p.f. 0.8 lag.\n", + "(i) Calculate saving in his annual bill if he improves p.f. to 0.9 lag.\n", + "(ii) Show the effect of improving load factor to 80% with the same max. demand and p.f. 0.8 lag\n", + "on the total cost per kWh.'''\n", + "\n", + "#Given\n", + "maxp = 10.0 #kW (Maximum demand)\n", + "\n", + "#(i)\n", + "max_kva = maxp/0.8 #kVA (Maximum demand in kVA)\n", + "#Maximum demand charges\n", + "charge1 = max_kva*(50.0) #Rs\n", + "\n", + "max_kva2 = maxp/0.9 #kVA (Maximum demand in kVA at 0.9 pf)\n", + "#Maximum demand charges\n", + "charge2 = max_kva2*(50.0) #Rs\n", + "\n", + "#Since energy consumed is same,savings is due to reduction in M.D charges\n", + "savings = charge1 - charge2 #Rs\n", + "print \"Total savings in annual bill = Rs. \",round(savings,2)\n", + "#------------------------------------------------------------------------------------------------------#\n", + "#(ii)\n", + "lf = 0.6 #(load factor)\n", + "#Avg demand = Max. demand * load factor\n", + "avg_dem = maxp*lf #kW\n", + "#No. of units consumed\n", + "units = avg_dem*8760 #kWh\n", + "#M.D charge per unit consumed\n", + "md_unit = charge1/units*100.0 #Paise\n", + "#Total charges\n", + "tot_cost1 = 10.0 + md_unit #paise\n", + "\n", + "print \"Total cost per unit at 0.6 load factor = \",round(tot_cost1,2),\"paise.\"\n", + "\n", + "lf = 0.8 #(load factor)\n", + "#Avg demand = Max. demand * load factor\n", + "avg_dem = maxp*lf #kW\n", + "#No. of units consumed\n", + "units = avg_dem*8760 #kWh\n", + "#M.D charge per unit consumed\n", + "md_unit = charge1/units*100.0 #Paise\n", + "#Total charges\n", + "tot_cost2 = 10.0 + md_unit #paise\n", + "\n", + "print \"Total cost per unit at 0.8 load factor = \",round(tot_cost2,2),\"paise.\"\n", + "\n", + "if (tot_cost1 > tot_cost2):\n", + " print \"Cost per unit is reduced with increase in lf.\"\n", + "else:\n", + " print \"Cost per unit is increase with increase in lf.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.43 , PAGE NO :- 1977" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual charges in (a) = Rs. 8154.0\n", + "Annual charges in (b) = Rs. 8608.0\n", + "(a) is economical.\n" + ] + } + ], + "source": [ + "'''A consumer has a maximum demand (M.D.) of 20 kW at 0.8 p.f. lagging and an annual load factor of 60%. There are two\n", + "alternative tariffs (i) Rs. 200 per kVA of M.D. plus 3p per kWh consumed and (ii) Rs. 50 per kVA of M.D. plus 7p per kWh\n", + "consumed. Determine which of the tariffs will be economical for him.'''\n", + "\n", + "\n", + "#Given\n", + "maxp = 20.0 #kW (Maximum demand)\n", + "lf = 0.6 # (load factor)\n", + "\n", + "#Maximum demand in kVA\n", + "max_kva = maxp/0.8 #kVA\n", + "#Average power = Max. demand * load factor\n", + "avg_pwr = maxp*lf #kW\n", + "#Energy consumed in a year\n", + "units = avg_pwr*8760 #kWh\n", + "#(a)\n", + "charge1 = 200.0*max_kva #Rs (Max. demand charge)\n", + "charge2 = (3.0/100)*units #Rs (Units consumption charge)\n", + "#Total charges\n", + "tot_costa = charge1 + charge2 #Rs\n", + "print \"Annual charges in (a) = Rs.\",round(tot_costa)\n", + "\n", + "#(b)\n", + "charge1 = 50*max_kva #Rs (Max. demand charge)\n", + "charge2 = (7.0/100)*units #Rs (Units consumption charge)\n", + "#Total charges\n", + "tot_costb = charge1 + charge2 #Rs\n", + "print \"Annual charges in (b) = Rs.\",round(tot_costb)\n", + "\n", + "if (tot_costa > tot_costb):\n", + " print \"(b) is economical.\"\n", + "else:\n", + " print \"(a) is economical.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.44 , PAGE NO :- 1977" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Load Factor = 0.55\n" + ] + } + ], + "source": [ + "'''Determine the load factor at which the cost of supplying a unit of electricity from a Diesel station and from a steam\n", + "station is the same if the respective annual fixed and running charges are as follows.\n", + "Station Fixed charges Running charges\n", + "Diesel Rs. 300 per kW 25 paise/kWh\n", + "Steam Rs. 1200 per kW 6.25 paise/kWh .'''\n", + "\n", + "from sympy import Symbol,Eq,solve\n", + "#(i)Diesel Station\n", + "#Suppose that the energy supplied in one year is one unit(1 kWh)\n", + "#Annual average power is\n", + "avg_pwr = 1.0/8760 #kW\n", + "\n", + "#Annual load factor(L) = Annual average power/Annual max. demand\n", + "L = Symbol('L')\n", + "maxp = avg_pwr/L #kW\n", + "fxd_charge = 300.0*(maxp)*100 #Paise\n", + "run_charge = 25.0 #Paise\n", + "#Total charge\n", + "tot_charge1 = fxd_charge + run_charge #Paise\n", + "#(ii)Steam Station\n", + "fxd_charge = 1200.0*(maxp)*100 #Paise\n", + "run_charge = 6.25 #Paise\n", + "#Total charge\n", + "tot_charge2 = fxd_charge + run_charge #Paise\n", + "\n", + "eq = Eq(tot_charge1,tot_charge2)\n", + "L = solve(eq) \n", + "L1 = L[0]\n", + "print \"Load Factor = \",round(L1,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.45 , PAGE NO :- 1978" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total charge per unit = 6.69 paise.\n", + "Total Savings = Rs. 525.0\n" + ] + } + ], + "source": [ + "'''A factory has a maximum load of 300 kW at 0.72 p.f. with an annual consumption of 40,000 units, the tariff is\n", + "Rs. 4.50 per kVA of maximum demand plus 2 paisa/unit. Find out the average price per unit. What will be the annual\n", + "saving if the power factor be improved to units ? '''\n", + "\n", + "#Given\n", + "maxp = 300.0 #kW (Maximum demand)\n", + "pf = 0.72 # (Power factor)\n", + "units = 40000.0 #kWh (No of units consumed)\n", + "#Maximum demand in kVA\n", + "max_kva = maxp/pf #kVA\n", + "\n", + "#Max. KVA demand charge\n", + "charge1 = 4.5*max_kva #Rs\n", + "#M.D charge per unit\n", + "md_unit = charge1/units*100 #paise\n", + "\n", + "#Total charge per unit\n", + "tot_charge = md_unit + 2.0 #paise\n", + "print \"Total charge per unit = \",round(tot_charge,2),\"paise.\"\n", + "\n", + "#Maximum demand in kVA at unity power factor\n", + "max_kva = maxp #kVA\n", + "\n", + "#Max. KVA demand charge\n", + "charge2 = 4.5*max_kva #Rs\n", + "\n", + "#Total savings is\n", + "saving = charge1 - charge2 #Rs\n", + "print \"Total Savings = Rs.\",saving" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.46 , PAGE NO :- 1978" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total cost/hr for lamp 1 = 0.49 paise.\n", + "Total cost/hr for lamp 2 = 0.61 paise.\n", + "Therefore,Lamp 1 is advantageous.\n", + "Both lamp will be equally advantageous at load factor = 0.282\n" + ] + } + ], + "source": [ + "'''There is a choice of two lamps, one costs Rs. 1.2 and takes 100 W and the other costs Rs. 5.0 and takes 30 W ;\n", + "each gives the same candle power and has the same useful life of 1000 hours. Which will prove more economical with\n", + "electrical energy at Rs. 60 per annum per kW of maximum demand plus 3 paise per unit ? At what load factor would\n", + "they be equally advantageous? '''\n", + "\n", + "from sympy import Symbol,Eq,solve\n", + "\n", + "#(i)First Lamp\n", + "#Initial cost per hour\n", + "charge11 = 120.0/1000 #Paise\n", + "#Maximum demand/hr\n", + "maxp = 0.1 #kW\n", + "#Maximum demand charge/hr\n", + "charge21 = (60.0*maxp/8760)*100 #Paise\n", + "#Energy charge/hr\n", + "charge31 = 3*maxp #Paise\n", + "\n", + "#Total cost/hr\n", + "tot_cost1 = charge11 + charge21 + charge31 #Paise\n", + "\n", + "print \"Total cost/hr for lamp 1 = \",round(tot_cost1,2),\"paise.\"\n", + "#-----------------------------------------------------------------------------#\n", + "\n", + "#(ii)Second Lamp\n", + "#Initial cost per hour\n", + "charge12 = 500.0/1000 #Paise\n", + "#Maximum demand/hr\n", + "maxp = 0.03 #kW\n", + "#Maximum demand charge/hr\n", + "charge22 = (60.0*maxp/8760)*100 #Paise\n", + "#Energy charge/hr\n", + "charge32 = 3*maxp #Paise\n", + "\n", + "#Total cost/hr\n", + "tot_cost2 = charge12 + charge22 + charge32 #Paise\n", + "print \"Total cost/hr for lamp 2 = \",round(tot_cost2,2),\"paise.\"\n", + "\n", + "if (tot_cost1 > tot_cost2):\n", + " print \"Therefore,Lamp 2 is advantageous.\"\n", + "else:\n", + " print \"Therefore,Lamp 1 is advantageous.\"\n", + "\n", + "#As Maximum demand charge will only vary with load factor and it varies inversely\n", + "#with maximum demand charge\n", + "\n", + "x = Symbol('x')\n", + "tot_cost1 = charge11 + charge21/x + charge31 #Paise\n", + "tot_cost2 = charge12 + charge22/x + charge32 #Paise\n", + "\n", + "eq = Eq(tot_cost1,tot_cost2)\n", + "x = solve(eq)\n", + "x1 = x[0]\n", + "print \"Both lamp will be equally advantageous at load factor =\",round(x1,3)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.47 , PAGE NO :- 1979" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual Load factor = 0.437\n" + ] + } + ], + "source": [ + "'''The following data refers to a public undertaking which supplies electric energy to its consumers at a fixed tariff of 11.37 \n", + "paise per unit.Total installed capacity = 344 MVA ; Total capital investment = Rs. 22.4 crores;\n", + "Annual recurring expenses = Rs. 9.4 crores ; Interest charge = 6% ; depreciation charge = 5%\n", + "Estimate the annual load factor at which the system should operate so that there is neither profit nor loss to the undertaking.\n", + "Assume distribution losses at 7.84% and the average system p.f. at 0.86.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "#Given\n", + "capacity = 344.0e+3 #kVA (installed capacity)\n", + "cap_cost = 22.4e+7 #Rs (capital cost)\n", + "pf = 0.86 # (power factor)\n", + "\n", + "#Load factor (L) = No of kWh (units)supplied/Max. no of kWh(units) that can be supplied\n", + "L = Symbol('L')\n", + "units = (capacity*pf)*8760*L #kWh (No. of units supplied)\n", + "#Considering distribution losses,actual units supplied are\n", + "units = (1-7.84/100)*units #kWh\n", + "#Total amount for consumption of units\n", + "cost1 = units*(11.37/100) #Rs\n", + "\n", + "\n", + "\n", + "#Fixed charges\n", + "charge1 = (11.0/100)*cap_cost #Rs (interest and depreciation cost)\n", + "charge2 = 9.4e+7 #Rs\n", + "cost2 = charge1 + charge2 #Rs\n", + "#As both charges should be equal for no profit no gain\n", + "eq = Eq(cost1,cost2)\n", + "L = solve(eq)\n", + "L1 = L[0]\n", + "print \"Annual Load factor = \",round(L1,3)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.48 , PAGE NO :- 1979" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cost per unit for Steam station = 8.81 Paise.\n", + "Cost per unit for Nuclear station = 8.09 Paise.\n", + "Load factor = 0.34\n" + ] + } + ], + "source": [ + "'''An area has a M.D. of 250 MW and a load factor of 45%. Calculate the overall cost per unit generated by\n", + "(i) steam power station with 30 per cent reserve generating capacity and\n", + "(ii) nuclear station with no reserve capacity.\n", + "Steam station : Capital cost per kW = Rs. 1000 ; interest and depreciation on capital costs =15% ;\n", + " operating cost per unit = 5 paise.\n", + "\n", + "Nucelar station : Capital cost per kW = Rs. 2000 ; interest and depreciation on capital cost =12% ;\n", + " operating cost per unit = 2 paise.\n", + "For which load factor will the overall cost in the two cases become equal ?'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#(i)Steam station\n", + "#Installed capacity of steam station with 30% reserve capacity\n", + "capacity1 = (250.0e+3)*(1 + 30.0/100) #kW\n", + "#Average power = Max. demand * load factor\n", + "avg_pwr = capacity1*0.45 #kW\n", + "#No. of units produced in a year\n", + "units = avg_pwr*8760 #kWh\n", + "#Capital investment\n", + "cap_cost = 1000.0*capacity1 #Rs\n", + "#Annual interest and depreciation\n", + "charge1 = (0.15)*cap_cost #Rs\n", + "#Fixed charge/unit\n", + "cost_unit = charge1/units*100 #Paise\n", + "#Overall cost per unit\n", + "tot_cost = cost_unit + 5.0 #Paise\n", + "print \"Cost per unit for Steam station = \",round(tot_cost,2),\"Paise.\"\n", + "#-------------------------------------------------------------------------------------------------------------#\n", + "\n", + "#(ii)Nuclear station\n", + "#Installed capacity of steam station with 30% reserve capacity\n", + "capacity2 = (250.0e+3) #kW\n", + "#Average power = Max. demand * load factor\n", + "avg_pwr = capacity2*0.45 #kW\n", + "#No. of units produced in a year\n", + "units = avg_pwr*8760 #kWh\n", + "#Capital investment\n", + "cap_cost = 2000.0*capacity2 #Rs\n", + "#Annual interest and depreciation\n", + "charge2 = (0.12)*cap_cost #Rs\n", + "#Fixed charge/unit\n", + "cost_unit = charge2/units*100 #Paise\n", + "#Overall cost per unit\n", + "tot_cost = cost_unit + 2 #Paise\n", + "print \"Cost per unit for Nuclear station = \",round(tot_cost,2),\"Paise.\"\n", + "#---------------------------------------------------------------------------------------------------------------#\n", + "\n", + "#Let L be the load factor\n", + "L = Symbol('L')\n", + "\n", + "#Cost per unit of steam station is\n", + "stm_cost = charge1/(capacity1*8760*L)*100 + 5 #Paise\n", + "\n", + "#Cost per unit of nuclear station is\n", + "nuc_cost = charge2/(capacity2*8760*L)*100 + 2 #Paise\n", + "\n", + "#As overall cost should be equal\n", + "eq = Eq(stm_cost,nuc_cost)\n", + "L = solve(eq)\n", + "L1 = L[0]\n", + "print \"Load factor = \",round(L1,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.49 , PAGE NO :- 1980" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual Bill = Rs. 900.0\n", + "Equivalent flat rate = 9.23 Paise.\n" + ] + } + ], + "source": [ + "'''The maximum demand of a customer is 25 amperes at 220 volt and his total energy consumption is 9750 kWh. If the\n", + "energy is charged at the rate of 20 paise per kWh for 500 hours' use of the maximum demand plus 5 paise power unit\n", + "for all additional units, estimate his annual bill and the equivalent flat rate.'''\n", + "\n", + "#Given\n", + "maxp = 25.0*220.0/1000 #kW (Max. demand)\n", + "units = maxp*500.0 #kWh (No. of units consumed)\n", + "charge1 = units*(20.0/100) #Rs (Max. demand charge)\n", + "\n", + "#Units to be charged at lower rate\n", + "units2 = 9750.0 - units #kWh\n", + "charge2 = units2*(5.0/100) #Rs (Charge)\n", + "\n", + "#Annual Bill is\n", + "bill = charge1 + charge2 #Rs\n", + "\n", + "#Equivalent flat rate\n", + "rate = bill/9750.0*100 #Paise\n", + "print \"Annual Bill = Rs.\",bill\n", + "print \"Equivalent flat rate = \",round(rate,2),\"Paise.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.50 , PAGE NO :- 1980" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Amount that can be borrowed = Rs. 125000.0\n" + ] + } + ], + "source": [ + "'''A workshop having a number of induction motors has a maximum demand of 750 kW with a power factor of 0.75 and a\n", + "load factor of 35%. If the tariff is Rs. 75 per annum per kVA of maximum demand plus 3 paise per unit, estimate what\n", + "expenditure would it pay to incur to raise the power factor of 0.9.'''\n", + "\n", + "#Given\n", + "maxp = 750.0 #kW (Maximum demand)\n", + "max_kva = maxp/0.75 #kVA (Maximum demand in kVA)\n", + "\n", + "#Max. demand charge\n", + "charge1 = max_kva*75 #Rs\n", + "\n", + "#If pf = 0.9\n", + "max_kva2 = maxp/0.9 #kVA (Maximum demand in kVA)\n", + "\n", + "#Max. demand charge\n", + "charge2 = max_kva2*75 #Rs\n", + "\n", + "#Difference of amounts in one year\n", + "cost = charge1 - charge2 #Rs\n", + "\n", + "#Assuming interest of 10% . The capital cost that can be put to increase power factor is\n", + "# cost = (10.0/100)*cap_cost\n", + "\n", + "cap_cost = (100.0/10)*cost #Rs\n", + "print \"Amount that can be borrowed = Rs.\",cap_cost" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.51 , PAGE NO :- 1981" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Public supply charges per unit = 6.3 Paise.\n", + "Private supply charges per unit = 6.69 Paise.\n" + ] + } + ], + "source": [ + "'''The owner of a new factory is comparing a private oil-engine generating station with public supply. Calculate the average\n", + "price per unit his supply would cost him in each case, using the following data :\n", + "\n", + "Max. demand, 600 kW; load factor, 30% ; supply tariff, Rs. 70 per kW of maximum demand plus 3 paise per unit;\n", + "capital cost of plant required for public supply, Rs. 105; capital cost of plant required for private generating station,\n", + "Rs. 4 * 10^5 ; cost of fuel, Rs. 80 per tonne ; consumption of fuel oil; 0.3 kg per unit generated. Other work costs for\n", + "private plant are as follows : lubricating oil,stores and water = 0.35 paise per unit generated ; wages 1.1 paise ;\n", + "repairs and maintenance 0.3 paise per unit.'''\n", + "\n", + "\n", + "#Given\n", + "maxp = 600.0 #kW (Maximum demand)\n", + "lf = 0.3 # (load factor)\n", + "\n", + "avg_pwr = maxp * lf #kW (Average demand = Max demand * load factor)\n", + "units = avg_pwr*8760 #kWh (Energy consumption)\n", + "\n", + "#(i)Public supply\n", + "fxd_charge = 70.0*maxp #Rs (Fixed annual charges)\n", + "cap_charge = (10.0/100)*1.0e+5 #Rs (Capital annual charges)\n", + "\n", + "tot_charge = fxd_charge + cap_charge #Rs (Total annual charges)\n", + "fxdcost_unit = tot_charge/units*100 #Paise (Fixed cost per unit)\n", + "totcost_unit = fxdcost_unit + 3.0 #Paise (Total cost per unit)\n", + "print \"Public supply charges per unit = \",round(totcost_unit,2),\"Paise.\"\n", + "#--------------------------------------------------------------------------------------------------#\n", + "#(ii)Private supply\n", + "cap_charge = (10.0/100)*4.0e+5 #Rs (Capital annual charges)\n", + "fxdcost_unit = cap_charge/units*100 #Paise (Fixed cost per unit)\n", + "oilcost_unit = (80.0/1000)*(0.3)*100 #Paise (Oil cost per unit)\n", + "runcost_unit = 0.35 + 0.3 + 1.1 #Paise (Running cost per unit)\n", + "totcost_unit = runcost_unit + oilcost_unit + fxdcost_unit #Paise (Total cost per unit)\n", + "print \"Private supply charges per unit = \",round(totcost_unit,2),\"Paise.\"\n", + "#--------------------------------------------------------------------------------------------------#\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.52 , PAGE NO :- 1981" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Therefore minimum charges are Rs 4.17 per kW and 4.0 paise per kWh consumed.\n" + ] + } + ], + "source": [ + "'''Calculate the minimum two-part tariff to be charged to the consumers of a supply undertaking from the following data :\n", + "Generating cost per kWh; 3.6 paise ; Generating cost per kW of maximum demand, Rs. 50 Total energy generated per year ;\n", + "4,380 * 10^4 kWh Load factor at the generating station, 50% Annual charges for distribution Rs. 125,000\n", + "Diversity factor for the distribution network, 1.25 Total loss between station and consumer, 10%.'''\n", + "\n", + "#Given\n", + "units = 4380.0e+4 #kWh (No of units consumed in a year)\n", + "lf = 0.5 # (Load factor)\n", + "df = 1.25 # (Diversity factor)\n", + "avg_pwr = units/8760 #kW (Average generating power)\n", + "maxp = avg_pwr/lf #kW (Max. load on generator , lf = Avg Power/Max Power)\n", + "\n", + "#Annual fixed charges are\n", + "charges = maxp*50 #Rs\n", + "#Total fixed charges are\n", + "tot_charges = charges + 125000 #Rs\n", + "#Consumer's Max demand is\n", + "max_dem = maxp*df #kW\n", + "\n", + "#Cost per kW of Max demand is\n", + "cost_kw = tot_charges/max_dem #Rs\n", + "#Monthly cost per kW of maximum demand is\n", + "cost_kw = cost_kw/12 #Rs\n", + "\n", + "\n", + "#Since there are 10% losses ,energy reached to consumers per kWh is\n", + "units = 1*(1-0.1) #kWh\n", + "#Charges per kWh generated is\n", + "charge1 = 3.6/units #Paise\n", + "print \"Therefore minimum charges are Rs\",round(cost_kw,2),\"per kW and\",round(charge1,2),\"paise per kWh consumed.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.53 , PAGE NO :- 1982" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "High-voltage is cheaper by = 618.75 Rs.\n" + ] + } + ], + "source": [ + "'''Two systems of tariffs are available for a factory working 8 hours a day for 300 working days in a year.\n", + "(a) High-voltage supply at 5 paise per unit plus Rs. 4.50 per month per kVA of maximum demand.\n", + "(b) Low-voltage supply at Rs. 5 per month per kVA of maximum demand plus 5.5 paise per unit.\n", + " The factory has an average load of 200 kW at 0.8 power factor and a maximum demand of\n", + " 250 kW at the same p.f.\n", + "The high-voltage equipment costs Rs. 50 per kVA and losses can be taken as 4 per cent. Interest and depreciation charges\n", + "are 12 per cent. Calculate the difference in the annual cost between the two systems.'''\n", + "\n", + "#Given\n", + "maxp = 250.0 #kW (Maximum demand)\n", + "avg_dem = 200.0 #kW (Average demand)\n", + "pf = 0.8 # (power factor)\n", + "max_kva = maxp/pf #kVA (Maximum demand in kVA)\n", + "max_kva = (100.0/96)*max_kva #kVA (considering losses)\n", + "#(a)\n", + "#Annual interest on capital investment\n", + "charge1 = max_kva*50.0*0.12 #Rs\n", + "\n", + "#Annual charge due to kVA max. demand is\n", + "charge2 = max_kva*12*4.5 #Rs\n", + "\n", + "#Annual charge due to kWh consumption\n", + "charge3 = avg_dem*(100.0/96)*(5.0/100)*8*300 #Rs\n", + "\n", + "#Total charges\n", + "tot_chargesa = charge1 + charge2 + charge3 #Rs\n", + "#------------------------------------------------------------------#\n", + "#(b)\n", + "#Annual charge due to kVA max. demand is\n", + "charge1 = maxp/pf*12*5 #Rs\n", + "\n", + "#Annual charge due to kWh consumption\n", + "charge2 = avg_dem*(5.5/100)*8*300 #Rs\n", + "\n", + "#Total charges\n", + "tot_chargesb = charge1 + charge2 #Rs\n", + "\n", + "#Hence high-voltage is cheaper by\n", + "cost = tot_chargesb - tot_chargesa #Rs\n", + "\n", + "print \"High-voltage is cheaper by = \",round(cost,2),\"Rs.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.54 , PAGE NO :- 1982" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of units consumed = 2400.0 units.\n" + ] + } + ], + "source": [ + "'''Estimate what the consumption must be in order to justify the following maximum demand tariff in preference to the flat\n", + "rate if the maximum demand is 6 kW.On Maximum Demand Tariff. A max. demand rate of 37 paise per unit for the first 200 hr. at the\n", + "maximum demand rate plus 3 paisa for all units in excess.Flat-rate tariff, 20 paise per unit.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "#Let x = number of units to be consumed (within a specific period)\n", + "x = Symbol('x')\n", + "\n", + "#Units consumed at max. demand rate\n", + "units = 6 * 200.0 #kWh\n", + "#Units in excess of the max. demand units\n", + "excess = (x - 1200) #kWh \n", + "#Cost of max. demand units is\n", + "cost = units*37 #Paise\n", + "#Cost of excess units\n", + "cost_excss = 3.0*(excess) #Paise\n", + "#Total cost on tariff\n", + "tot_cost1 = cost + cost_excss #Paise\n", + "\n", + "\n", + "#Flat rate tariff\n", + "tot_cost2 = 20*x #Paise\n", + "\n", + "eq = Eq(tot_cost1,tot_cost2)\n", + "x = solve(eq)\n", + "x1 = x[0]\n", + "print \"Number of units consumed = \",round(x1,2),\"units.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.55 , PAGE NO :- 1986" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current density = 41.12 A/cm^2\n" + ] + } + ], + "source": [ + "'''If the cost of an overhead line is Rs. 2000 A (where A is the cross-sectional area in cm^2) and if the interest and depreciation\n", + "charges on the line are 8%, estimate the most economical current density to use for a transmission requiring full-load current for\n", + "60% of the year.The cost of generating electric energy is 5 paise/kWh. The resistance of a conductor one kilometre long and \n", + "1 cm^2 cross-section is 0.18 ohm.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#Given\n", + "A = 1.0 #cm^2\n", + "R = 0.18 #ohm\n", + "#Let the current through the overhead line be I\n", + "I = Symbol('I')\n", + "#Power loss in line is\n", + "loss = 2*(I*I)*R/1000 #kW\n", + "\n", + "#No. of units consumed\n", + "units = loss*(0.6)*(365*24) #kWh\n", + "\n", + "#Annual charges\n", + "charge = units*0.05 #Rs\n", + "\n", + "#Interest and depreciation charges\n", + "charge2 = (8.0/100)*2000 #Rs\n", + "\n", + "#Equating two charges\n", + "eq = Eq(charge,charge2)\n", + "I = solve(eq)\n", + "I1 = I[1] #A\n", + "#Current density\n", + "J = I1/A #A/cm^2\n", + "print \"Current density = \",round(J,2),\"A/cm^2\"\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.56 , PAGE NO :- 1986" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Most economical cross-section is = 0.446 cm^2.\n" + ] + } + ], + "source": [ + "'''A 500-V, 2-core feeder cable 4 km long supplies a maximum current of 200 A and the demand is such that the copper\n", + "loss per annum is such as would be produced by the full-load current flowiing for six months. The resistance of the\n", + "conductor 1 km long and 1 sq cm. cross-sectional area is 0.17 ohm. The cost of cable including installation is\n", + "Rs. (120 A + 24) per metre where A is the area of cross-section in sq. cm and interest and depreciation charges are\n", + "10%. The cost of energy is 4 paise per kWh. Find the most economical cross-section.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#Let us consider 1 km length of feeder cable\n", + "#Also, let A be the area of cross-section\n", + "A = Symbol('A')\n", + "\n", + "#Cable cost/metre\n", + "cab_cost = 120.0*A + 24 #Rs\n", + "#Cost of 1km long cable\n", + "cost1 = 120.0*A*(1000) #Rs\n", + "#Interest and depreciation per annum\n", + "charge1 = (10.0/100)*cost1 #Rs\n", + "\n", + "#Resistance of 1km long cable is\n", + "res = 0.17/A #ohm\n", + "#Cu loss in cable = 2*I^2*R\n", + "I = 200.0 #A\n", + "loss = 2*(I*I)*res/1000 #kW\n", + "#Energy loss over 6 months\n", + "units = loss*(8760.0/2) #kWh\n", + "#Cost of this energy loss is\n", + "charge2 = 0.04*units #Rs\n", + "#For most economical cross-section charge1= charge2\n", + "eq = Eq(charge1,charge2)\n", + "A = solve(eq)\n", + "A1 = A[1] #cm^2\n", + "print \"Most economical cross-section is = \",round(A1,3),\"cm^2.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.57 , PAGE NO :- 1987" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The most economical cross-sectional area is = 0.23 cm^2.\n", + "The most economical diameter is = 0.54 cm.\n" + ] + } + ], + "source": [ + "'''A 2-core, 11-kV cable is to supply 1 MW at 0.8 p.f. lag for 3000 hours in a year. Capital cost of the cable is\n", + "Rs. (20 + 400a) per metre where a is the cross-sectional area of core in cm^2. Interest and depreciation total 10% and cost\n", + "per unit of energy is 15 paise. If the length of the cable is 1 km, calculate the most economical cross-section of the\n", + "conductor. The specific resistance of copper is 1.75 * 10^–6 ohm-cm.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "import math as m\n", + "\n", + "#Let A be the cross-sectional area of core\n", + "A = Symbol('A') \n", + "#Cost of 1 km length of cable\n", + "cost1 = (400.0*A)*1000 #Rs\n", + "#Resistance of 1km cable length is R = rho*l/A\n", + "res = 1.75e-6*(1000*100)/A #ohm\n", + "\n", + "#Now,\n", + "V = 11.0e+3 #V (applied voltage)\n", + "P = 1.0e+6 #W (power consumed)\n", + "pf = 0.8 # (power factor) \n", + "\n", + "#P = V*I*pf.Therefore, full-load current is\n", + "I = P/(V*pf) #A\n", + "\n", + "#Power loss in cable\n", + "loss = 2*(I*I)*res #W\n", + "\n", + "#Annual cost of energy loss\n", + "charge1 = loss*(3000)*(15.0/100)*(1/1000.0) #Rs\n", + "#Interest and depreciation per annum\n", + "charge2 = (10.0/100)*cost1 #Rs\n", + "\n", + "#The most economical cross-section will be when charge1 = charge2\n", + "eq = Eq(charge1,charge2)\n", + "A = solve(eq)\n", + "A1 = A[1] #cm^2\n", + "d = m.sqrt(4*A1/3.14) #cm (diameter) \n", + "print \"The most economical cross-sectional area is = \",round(A1,2),\"cm^2.\"\n", + "print \"The most economical diameter is = \",round(d,2),\"cm.\"\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.58 , PAGE NO :- 1988" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Most economical cross-section is = 0.55 cm^2.\n" + ] + } + ], + "source": [ + "'''The cost of a two-core feeder cable including insulation is Rs. (130 A + 24) per metre and the interest and depreciation\n", + "charges 10% per annum. The cable is two km in length and the cost of energy is 4 paisa per unit. The maximum current in the\n", + "feeder is 250 amperes and the demand is such that the copper loss is equal to that which would be produced by the full current\n", + "flowing for six months. If the resistance of a conductor of 1 sq. cm cross-sectional area and one km in length be 0.18 ohm,\n", + "find the most economical section of the same.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#Let us consider 1 km length of feeder cable\n", + "#Also, let A be the area of cross-section\n", + "A = Symbol('A')\n", + "\n", + "#Cable cost/metre\n", + "cab_cost = 130.0*A + 24 #Rs\n", + "#Cost of 1km long cable\n", + "cost1 = 130.0*A*(1000) #Rs\n", + "#Interest and depreciation per annum\n", + "charge1 = (10.0/100)*cost1 #Rs\n", + "\n", + "#Resistance of 1km long cable is\n", + "res = 0.18/A #ohm\n", + "#Cu loss in cable = 2*I^2*R\n", + "I = 250.0 #A\n", + "loss = 2*(I*I)*res/1000 #kW\n", + "#Energy loss over 6 months\n", + "units = loss*(8760.0/2) #kWh\n", + "#Cost of this energy loss is\n", + "charge2 = 0.04*units #Rs\n", + "#For most economical cross-section charge1= charge2\n", + "eq = Eq(charge1,charge2)\n", + "A = solve(eq)\n", + "A1 = A[1] #cm^2\n", + "print \"Most economical cross-section is = \",round(A1,2),\"cm^2.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.59 , PAGE NO :- 1988" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Most economical cross-sectional area is = 0.1 cm^2.\n", + "Most economical current density is = 230.94 A/cm^2.\n", + "Most economical diameter is = 0.36 cm.\n" + ] + } + ], + "source": [ + "'''An 11-kV, 3-core cable is to supply a works with 500-kW at 0.9 p.f. lagging for 2,000 hours p.a. Capital cost of the cable per\n", + "core when laid is Rs. (10,000 + 32,00 A) per km where A is the cross-sectional area of the core in sq. cm. The resistance per km\n", + "of conductor of 1 cm^2 crosssection is 0.16 ohm.If the energy losses cost 5 paise per unit and the interest and sinking fund is\n", + "recovered by a charge of 8% p.a., calculate the most economical current density and state the conductor diameter.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "import math as m\n", + "\n", + "#Let A be the cross-sectional area of conductor\n", + "A = Symbol('A')\n", + "#The annual charge on cost of conductor per km is\n", + "charge1 = 0.08*32000.0*A #Rs\n", + "#Current per conductor is I = P/V*pf\n", + "I = (500000/1.73)/(11000.0)*(0.9)\n", + "#Resistance of conductor is\n", + "R = 0.16/A #ohm\n", + "\n", + "#Losses in 3-core cable\n", + "loss = 3*(I*I)*R/1000.0 #kW\n", + "\n", + "#Annual cost of this loss\n", + "charge2 = loss*(5.0/100)*2000 #Rs\n", + "\n", + "#For the most economical cross-section (charge1 = charge2)\n", + "eq = Eq(charge1,charge2)\n", + "A = solve(eq) \n", + "A1 = A[1] #cm^2\n", + "#Current density is\n", + "J = I/A1 #A/cm^2\n", + "#Conductor diameter is Using pi*d^2/4 = A\n", + "d = m.sqrt(A1*4/3.14) #cm\n", + "print \"Most economical cross-sectional area is = \",round(A1,2),\"cm^2.\"\n", + "print \"Most economical current density is = \",round(J,2),\"A/cm^2.\"\n", + "print \"Most economical diameter is = \",round(d,2),\"cm.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.60 , PAGE NO :- 1989" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Most economical cross-sectional area is = 0.63 cm^2.\n" + ] + } + ], + "source": [ + "'''Discuss limitations of the application of Kelvin’s law.An industrial load is supplied by a 3-phase cable from a sub-station\n", + "at a distance of 6 km. The voltage at the load is 11 kV. The daily load cycle for six days in a week for the entire year\n", + "is as given below :\n", + "(i) 700 kW at 0.8 p.f. for 7 hours (ii) 400 kW at 0.9 p.f. for 3 hours,\n", + "(iii) 88 kW at unity p.f. for 14 hours.\n", + "Compute the most economical cross-section of conductors for a cable whose cost is Rs. (5000 A +1500) per km (including the\n", + "cost of laying etc.). The tariff for the energy consumed at the load is Rs. 150 per annum per kVA of M.D. plus 5 paise per unit.\n", + "Assume the rate of interest and depreciation as 15%. The resistance per km of the conductor is (0.173/A) ohm.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#Let us assume cross-section of conductor to be 'A'\n", + "A = Symbol('A')\n", + "#Capital cost of the cable is\n", + "cost1 = 6*5000.0*A #Rs\n", + "#Annual cost of interest and depreciation\n", + "charge1 = (15.0/100)*cost1 #Rs\n", + "\n", + "#Resistance of conductor is\n", + "R = 6*(0.173/A) #ohm\n", + "\n", + "#Line currents due to different loads Using I = P/V*pf\n", + "\n", + "I1 = (700000.0/1.73)/(11.0e+3*0.8) #A \n", + "I2 = (400000.0/1.73)/(11.0e+3*0.9) #A\n", + "I3 = (88000.0/1.73)/(11.0e+3*1) #A\n", + "\n", + "#Corresponding energy loss per week Using loss = 3*I*I*R\n", + "loss1 = 3*(I1*I1)*R*(6*7)/1000 #kWh\n", + "loss2 = 3*(I2*I2)*R*(6*3)/1000 #kWh\n", + "loss3 = 3*(I3*I3)*R*(6*14)/1000 #kWh\n", + "\n", + "#Total weekly loss is\n", + "tot_loss = loss1 + loss2 + loss3 #kW\n", + "#Annual cost from loss \n", + "cost2 = tot_loss*(52)*(5.0/100) #Rs (Assumed 52 weeks per year)\n", + "\n", + "#Max. Voltage drop in each conductor Using V = I*R\n", + "V = I1*R #V (As I1 is Max.)\n", + "#Max kVA demand charge\n", + "cost3 = 3*V*I1*(150.0)/1000 #Rs\n", + "\n", + "#Total annual charge due to cable loss is\n", + "charge2 = cost2 + cost3 #Rs\n", + "\n", + "#For most economical size of cable charge1 = charge2\n", + "eq = Eq(charge1,charge2)\n", + "A = solve(eq)\n", + "A1 = A[1]\n", + "print \"Most economical cross-sectional area is = \",round(A1,2),\"cm^2.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.61 , PAGE NO :- 1994" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Capacitance of each capacitor is = 157.03 uF.\n" + ] + } + ], + "source": [ + "'''A 3-phase, 50-Hz, 3,000-V motor develops 600 h.p. (447.6 kW), the power factor being 0.75 lagging and the efficiency\n", + "0.93. A bank of capacitors is connected in delta across the supply terminals and power factor raised to 0.95 lagging.\n", + "Each of the capacitance units is built of five similar 600-V capacitors. Determine capacitance of each capacitor.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "import math as m\n", + "#Given\n", + "V = 3000.0 #V (supplied voltage)\n", + "pout = 447600.0 #W (output power)\n", + "eff = 0.93 # (efficiency)\n", + "\n", + "pin = pout/eff #W (input power)\n", + "\n", + "#As cosQ = power factor Q = cos-1(pf)\n", + "phi1 = m.acos(0.75) # (angle 1)\n", + "phi2 = m.acos(0.95) # (angle 2)\n", + "\n", + "#Now, taking tanQ of angles\n", + "tan1 = m.tan(phi1)\n", + "tan2 = m.tan(phi2)\n", + "\n", + "#Leading VAR supplied by capacitor bank is\n", + "pvar = pin*(tan1 - tan2) # VAR \n", + "#Leading VAR supplied by each capacitor bank is\n", + "pvar = pvar/3 # VAR ----------------------(i)\n", + "\n", + "#Phase current of capacitor is I = V/Xc where Xc = 1/w*C C-> Capacitance\n", + "C = Symbol('C')\n", + "w = 2*3.14*50.0 #Hz\n", + "Icp = V*w*C #A\n", + "#Reactive power is V*Icp\n", + "pvar2 = V*Icp #VAR -----------------------(ii)\n", + "#Equating (i) & (ii)\n", + "eq = Eq(pvar,pvar2)\n", + "C = solve(eq)\n", + "C1 = C[0]*1000000.0 #uF (capacitance)\n", + "\n", + "#As it is made of 5 capacitance in series\n", + "cap_each = 5*C1 #uF\n", + "print \"Capacitance of each capacitor is =\",round(cap_each,2),\"uF.\" " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.62 , PAGE NO :- 1994" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power factor = 0.87\n" + ] + } + ], + "source": [ + "'''A synchronous motor having a power consumption of 50 kW is connected in parallel with a load of 200 kW having a\n", + "lagging power factor of 0.8. If the combined load has a p.f. of 0.9, what is the value of leading reactive kVA\n", + "supplied by the motor and at what p.f. is it working?'''\n", + "\n", + "import math as m\n", + "\n", + "#Given\n", + "phi2 = m.acos(0.8) #(power factor angle of load)\n", + "phit = m.acos(0.9) #(combined power factor angle)\n", + "\n", + "#Now, taking tanQ of angles\n", + "tan2 = m.tan(phi2)\n", + "tant = m.tan(phit)\n", + "\n", + "#Combined power\n", + "power = 200.0 + 50.0 #kW\n", + "#Total kVAR is\n", + "kvar = power*tant #kVAR\n", + "#Load kVAR is\n", + "load_kvar = 200.0*tan2 #kVAR\n", + "\n", + "#KVAR supplied by motor is\n", + "mot_kvar = kvar - load_kvar #kVAR\n", + "\n", + "#Now, 50*tan(phi1) = mot_kvar\n", + "tan1 = mot_kvar/50.0\n", + "phi1 = m.atan(tan1)\n", + "\n", + "#Power factor = cos(phi)\n", + "pf = m.cos(phi1) #leading\n", + "print \"Power factor = \",round(pf,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.63 , PAGE NO :- 1994" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power factor is = 0.21\n" + ] + } + ], + "source": [ + "'''A generating station supplies power to the following, lighting load 100-kW ;an induction motor 400 h.p. (298.4 kW),\n", + "power factor 0.8, efficiency, 0.92 ; a rotary converter giving 100 A at 500 V at an efficiency of 0.94.\n", + "What must be the power factor of the rotary converter in order that the power factor of the supply station may be unity.'''\n", + "\n", + "import math as m\n", + "\n", + "#Motor Power input = Motor output/Efficiency\n", + "pin = 298.4/0.92 #kW\n", + "phi1 = m.acos(0.8) #(motor power factor angle)\n", + "tan1 = m.tan(phi1)\n", + "\n", + "#Lagging motor kVAR is\n", + "mot_kvar = pin*tan1 #kVAR\n", + "#Leading kVAR to be supplied by rotary converter is same that of motor.\n", + "rot_kvar = mot_kvar\n", + "#Input power of rotary converter is\n", + "pin_rot = (500.0*100.0)/(0.94*1000) #kW\n", + "\n", + "#For rotary converter, tanQ = kVAR/kW\n", + "tan2 = rot_kvar/pin_rot\n", + "phi2 = m.atan(tan2)\n", + "\n", + "#Power factor = cosQ\n", + "pf = m.cos(phi2) #leading\n", + "\n", + "print \"Power factor is =\",round(pf,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.64 , PAGE NO :- 1995" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Power factor at maximum savings = 0.8\n", + "Annual savings = Rs. 833.33\n" + ] + } + ], + "source": [ + "'''A factory has an average annual demand of 50 kW and an annual load factor of 0.5. The power factor is 0.75 lagging.\n", + "The tariff is Rs. 100 per kVA maximum demand per annum plus five paise per kWh. If loss-free capacitors costing Rs. 600\n", + "per kVAR are to be utilized, find the value of the power factor at which maximum saving will result. The interest and\n", + "depreciation together amount to ten per cent. Also, determine the saving affected by improving the power factor to this value.'''\n", + "\n", + "import math as m\n", + "#Given\n", + "A = 100.0 #Rs (charge of maximum demand per kVA)\n", + "C = (10.0/100)*600 #Rs (interest and depreciation charge)\n", + "#The most economical power factor angle is given by sinQ = C/A\n", + "phi = m.asin(C/A) #angle\n", + "#Power factor = cosQ\n", + "pf = m.cos(phi)\n", + "\n", + "#Max demand = Avg demand/load factor\n", + "maxp = 50.0/0.5 #kW (Maximum demand)\n", + "\n", + "\n", + "#(i)At initial pf = 0.75 the Max load in kVA is\n", + "max_kva1 = maxp/0.75 #kVA\n", + "#Max. demand charge is\n", + "charge1 = max_kva1*A #Rs\n", + "#(ii)At economical 'pf' the Max load in kVA is\n", + "max_kva2 = maxp/pf #kVA\n", + "#Max. demand charge is\n", + "charge2 = max_kva2*A #Rs\n", + "\n", + "#Annual Savings\n", + "savings = charge1 - charge2 #Rs\n", + "print \"Power factor at maximum savings = \",round(pf,2)\n", + "print \"Annual savings = Rs.\",round(savings,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.65 , PAGE NO :- 1995" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Therefore, Maximum cost per kVA of pf corrections is = Rs. 314.76\n" + ] + } + ], + "source": [ + "'''For increasing the kW capacity of a plant working at 0.7 lag p.f. the necessary increase of power can be obtained by raising\n", + "the p.f. to 0.85 or by installing additional plant. What is the maximum cost per kVA of p.f. correction apparatus to make its use\n", + "more economical than additional plant at Rs. 500 kVA ?'''\n", + "\n", + "from sympy import Symbol\n", + "import math as m\n", + "\n", + "#Let kVA1 be the initial capacity of plant and kVA2 be its increased capacity\n", + "kVA1 = Symbol('kVA1')\n", + "#kVA1 * cosQ1 = kVA2 * cosQ2\n", + "kVA2 = kVA1*(0.85/0.7)\n", + "#KVA of the additional plant\n", + "kva_add = kVA2 - kVA1\n", + "#Capital cost of additional plant is\n", + "cost_add = 500.0*kva_add #Rs\n", + "\n", + "#Now, cosQ1 and cosQ2 are known and we have to find sinQ1 and sinQ2\n", + "phi1 = m.acos(0.7)\n", + "phi2 = m.acos(0.85)\n", + "\n", + "sin1 = m.sin(phi1)\n", + "sin2 = m.sin(phi2)\n", + "\n", + "#kVAR supplied by pf corrections\n", + "kvar_supp = kVA2*sin1 - kVA1*sin2 #kVAR\n", + "#Let Cost of pf corrections be x\n", + "#Now ,cost_add = cost of pf corrections . Therefore\n", + "x = cost_add/kvar_supp #Rs\n", + "\n", + "print \"Therefore, Maximum cost per kVA of pf corrections is = Rs.\",round(x,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.66 , PAGE NO :- 1996" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual savings = Rs. 3054.0\n" + ] + } + ], + "source": [ + "'''A consumer taking a steady load of 160 kW at a p.f. of 0.8 lag is charged at Rs. 80 per annum per kVA of\n", + "maximum demand plus 5 paise per kWh consumed. Calculate the value to which he should improve the p.f. in order to\n", + "affect the maximum saving if the leading kVA cost Rs.100 per kVA and interest and depreciation be at 12% per annum.\n", + "Calculate also the saving.'''\n", + "\n", + "import math as m\n", + "\n", + "#Let the cost per kVAR is Rs. B and rate of interest and depreciation is P,then\n", + "#C = BP/100\n", + "A = 80.0 #Rs (cost per kVA of max. demand)\n", + "C = 100*12/100 #Rs\n", + "#sinQ = C/A\n", + "phi = m.asin(C/A) # angle\n", + "pf = m.cos(phi) # power factor\n", + "\n", + "maxp = 160.0 #kW (max. demand)\n", + "#Max. demand in kVA for pf = 0.8\n", + "max_kva1 = maxp/0.8 #kVA\n", + "#Max.demand charge is\n", + "charge1 = max_kva1*80.0 #Rs\n", + "\n", + "#----------------------------------------------------------------------------------#\n", + "#Max. demand in kVA for most economical pf \n", + "max_kva2 = maxp/pf #kVA\n", + "#Max.demand charge is\n", + "charge2 = max_kva2*80.0 #Rs\n", + "#Annual savings is\n", + "savings = charge1 - charge2 #Rs\n", + "print \"Annual savings = Rs.\",round(savings)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.67 , PAGE NO :- 1996" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "power factor = 0.987\n", + "kVA supplied by plant is = 1245.0 kVA\n" + ] + } + ], + "source": [ + "'''A consumer takes a steady load of 1500 kW at a p.f. of 0.71 lagging and pays Rs. 50 per annum per kVA of maximum\n", + "demand. Phase advancing plant costs Rs. 80 per kVA. Determine the capacity of the phase advancing plant required for\n", + "minimum overall annual expenditure.Interest and depreciation total 10%. What will be the value of the new power factor\n", + "of the supply?'''\n", + "\n", + "import math as m\n", + "\n", + "#Let the cost per kVAR is Rs. B and rate of interest and depreciation is P,then\n", + "#C = BP/100\n", + "A = 50.0 #Rs (cost per kVA of max. demand)\n", + "C = 80*10/100 #Rs\n", + "#sinQ = C/A\n", + "phi = m.asin(C/A) # angle\n", + "pf = m.cos(phi) # power factor\n", + "\n", + "#As power factor = cosQ\n", + "phi1 = m.acos(0.71) #angle\n", + "tan1 = m.tan(phi1) #tanQ\n", + "phi2 = m.acos(pf) #angle\n", + "tan2 = m.tan(phi2) #tanQ\n", + "\n", + "#kVA supplied by plant is\n", + "kva_supp = 1500.0*(tan1 - tan2)\n", + "print \"power factor = \",round(pf,3)\n", + "print \"kVA supplied by plant is = \",round(kva_supp),\"kVA\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.68 , PAGE NO :- 1996" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total annual savings = Rs. 488.29\n" + ] + } + ], + "source": [ + "'''A factory takes a load of 200 kW at 0.85 p.f. (lagging) for 2,500 hours per annum and buys energy on tariff of Rs. 150\n", + "per kVA plus 6 paise per kWh consumed. If the power factor is improved to 0.9 lagging by means of capacitors costing\n", + "Rs. 525 per kVA and having a power loss of 100 W per kVA, calculate the annual saving affected by their use.\n", + "Allow 8% per annum for interest and depreciation on the capacitors.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "import math as m\n", + "\n", + "#Given\n", + "maxp = 200.0 #kW (factory load)\n", + "pf = 0.85 # (power factor = cosQ)\n", + "phi = m.acos(pf) #angle\n", + "tan1 = m.tan(phi) # (tanQ)\n", + "#Lagging kVAR of factory load\n", + "max_kvar = maxp*tan1 #kVAR\n", + "\n", + "#Let x be capacitor's kVAR. Therefore, total kVAR is\n", + "x = Symbol('x')\n", + "tot_kvar = max_kvar - x\n", + "#Because loss per kVA is 100W i.e 1/10kW per kVA\n", + "cap_loss = x/10.0 #kW\n", + "\n", + "#Total kW is\n", + "tot_kw = maxp + cap_loss #kW\n", + "#Overall pf is cosQ = 0.9\n", + "phi2 = m.acos(0.9)\n", + "tan2 = m.tan(phi2)\n", + "eq = Eq(tan2,tot_kvar/tot_kw)\n", + "x = solve(eq)\n", + "x1 = x[0] #kVAR\n", + "\n", + "#(i)cost per annum before improvement\n", + "#Max demand in kVA\n", + "max_kva = maxp/pf #kVA \n", + "#Units consumed per annum\n", + "units = maxp*2500.0 #kWh\n", + "\n", + "#Total annual cost\n", + "cost1 = max_kva*150.0 + units*(6.0/100) #Rs\n", + "\n", + "\n", + "#(ii)cost per annum after improvement\n", + "max_kva = maxp/0.9 #kVA\n", + "#Units consumed per annum\n", + "units = maxp*2500.0 #kWh\n", + "\n", + "#Charges due to losses in capacitor\n", + "charge1 = x1*100*2500*6/(1000*100) #Rs\n", + "\n", + "#Annual interest and depreciation cost\n", + "charge2 = x1*525*(8.0/100) #Rs \n", + "\n", + "#Total annual cost\n", + "cost2 = max_kva*150.0 + units*(6.0/100) + charge1 + charge2 #Rs\n", + "\n", + "#Total annual savings are\n", + "savings = cost1 - cost2 #Rs\n", + "\n", + "print \"Total annual savings = Rs.\",round(savings,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.69 , PAGE NO :- 1997" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "B is cheaper than A by = Rs. 52.04\n" + ] + } + ], + "source": [ + "'''A 30 h.p. (22.38 kW) induction motor is supplied with energy on a two-part tariff of Rs. 60 per kVA of maximum demand\n", + "per annum plus 5 paise per unit. Motor (A) has an efficiency of 89% and a power factor of 0.83.\n", + "Motor (B) with an efficiency of 90% and a p.f. of 0.91 costs Rs. 160 more. With motor (A) the p.f. would be raised to\n", + "0.91 (lagging) by installing capacitors at a cost Rs. 50 per kVA.If the service required from the motor is equivalent\n", + "to 2,280 hr. per annum at full load, compare the annual charges in the two cases. Assume interest and depreciation charges\n", + "to be 12.5% per annum for the motor and 8% per annum for the capacitors.'''\n", + "\n", + "import math as m\n", + "\n", + "#(i)For Motor A\n", + "pin = 22.38/0.89 #kW (Motor Input in kW)\n", + "pin_kva = pin/0.83 #kVA (Motor Input in kVA)\n", + "#If power factor is changed to 0.91 then\n", + "pin_kva2 = pin/0.91 #kVA (Motor Input in kVA)\n", + "#Annual cost of energy supplied to motor is\n", + "charge1 = pin_kva2*60.0 + pin*2280.0*(5.0/100) #Rs\n", + "\n", + "#Now, as we know pf = cosQ\n", + "phi1 = m.acos(0.83) #angle\n", + "phi2 = m.acos(0.91) #angle\n", + "tan1 = m.tan(phi1) #tanQ\n", + "tan2 = m.tan(phi2) #tanQ\n", + "\n", + "#kVAR necessary for this improvement is\n", + "tot_kvar = pin*(tan1 - tan2) #kVAR\n", + "#Annual charges on capacitors\n", + "charge2 = 50.0*tot_kvar*(8.0/100) #Rs\n", + "\n", + "#Total charges per annum is\n", + "tot_chargeA = charge1 + charge2 #Rs\n", + "\n", + "\n", + "#-----------------------------------------------------------------------------#\n", + "#(ii)For Motor B\n", + "pin = 22.38/0.9 #kW (Motor Input in kW)\n", + "#If power factor is changed to 0.91 then\n", + "pin_kva2 = pin/0.91 #kVA (Motor Input in kVA)\n", + "#Annual cost of energy supplied to motor is\n", + "charge1 = pin_kva2*60.0 + pin*2280.0*(5.0/100) #Rs\n", + "\n", + "#Annual charges on capacitors\n", + "charge2 = (12.5/100)*160 #Rs\n", + "\n", + "#Total charges per annum is\n", + "tot_chargeB = charge1 + charge2 #Rs\n", + "\n", + "#Hence B is cheaper than A by\n", + "cheap = tot_chargeA - tot_chargeB #Rs\n", + "\n", + "\n", + "print \"B is cheaper than A by = Rs. \",round(cheap,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.70 , PAGE NO :- 1997" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total annual cost for Motor A is = Rs. 15059.48\n", + "Total annual cost for Motor B is = Rs. 15430.78\n", + "Motor A would be recommended.\n" + ] + } + ], + "source": [ + "'''The motor of a 22.5 kW condensate pump has been burnt beyond economical repairs. Two alternatives have been\n", + "proposed to replace it by\n", + "Motor A. Cost = Rs. 6000 ; η at full-load=90% ; at half-load = 86%.\n", + "Motor B. Cost = Rs. 4000 ; η at full-load=85% ; at half-load= 82%.\n", + "The life of each motor is 20 years and its salvage value is 10% of the initial cost. The rate of\n", + "interest is 5% annually. The motor operates at full-load for 25% of the time and at half-load for the\n", + "remaining period. The annual maintenance cost of motor A is Rs. 420 and that of motor B is Rs. 240.\n", + "The energy rate is 10 paise per kWh.Which motor will you recommend ?'''\n", + "\n", + "pout = 22.5 #kW (output power)\n", + "#(i)For Motor A\n", + "eff_fl = 0.9 # (efficiency at full-load)\n", + "eff_hl = 0.86 # (efficiency at half-load)\n", + "#Annual interest on capital cost\n", + "charge1 = 6000.0*(5.0/100) #Rs\n", + "#Annual depreciation charges = (original cost - salvage value)/20 years\n", + "charge2 = (6000.0 - 6000.0*(10.0/100))/20 #Rs\n", + "#Annual maintenance cost\n", + "charge3 = 420.0 #Rs\n", + "#Energy input per annum\n", + "units = pout*0.25*8760/eff_fl + (pout/2)*0.75*8760/eff_hl #kWh\n", + "#Annual energy cost is\n", + "charge4 = units*(10.0/100) #Rs\n", + "#Total annual cost is\n", + "tot_costA = charge1 + charge2 + charge3 + charge4 #Rs\n", + "\n", + "#---------------------------------------------------------------------------------------#\n", + "\n", + "#(ii)For Motor B\n", + "eff_fl = 0.85 # (efficiency at full-load)\n", + "eff_hl = 0.82 # (efficiency at half-load)\n", + "#Annual interest on capital cost\n", + "charge1 = 4000.0*(5.0/100) #Rs\n", + "#Annual depreciation charges = (original cost - salvage value)/20 years\n", + "charge2 = (4000.0 - 4000.0*(10.0/100))/20 #Rs\n", + "#Annual maintenance cost\n", + "charge3 = 240.0 #Rs\n", + "#Energy input per annum\n", + "units = pout*0.25*8760/eff_fl + (pout/2)*0.75*8760/eff_hl #kWh\n", + "#Annual energy cost is\n", + "charge4 = units*(10.0/100) #Rs\n", + "#Total annual cost is\n", + "tot_costB = charge1 + charge2 + charge3 + charge4 #Rs\n", + "\n", + "print \"Total annual cost for Motor A is = Rs.\",round(tot_costA,2)\n", + "print \"Total annual cost for Motor B is = Rs.\",round(tot_costB,2)\n", + "\n", + "if(tot_costA>tot_costB):\n", + " print \"Motor B would be recommended.\"\n", + "else:\n", + " print \"Motor A would be recommended.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.71 , PAGE NO :- 1998" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual Savings = Rs. 7396.89\n" + ] + } + ], + "source": [ + "'''An industrial load takes 106 kWh a year, the power factor being 0.707 lagging.The maximum demand is 500 kVA.\n", + "The tariff is Rs. 75 per annum per kVA maximum demand plus 3 paise per unit. Calculate the yearly cost of supply\n", + "and find the annual saving in cost by installing phase advancing plant costing Rs. 45 per kVA which raises the plant\n", + "power factor from 0.707 to 0.9 lagging. Allow 10% per annum on the cost of the phase advancing plant to cover all\n", + "additional costs.'''\n", + "\n", + "import math as m\n", + "\n", + "#Given\n", + "units = 1.0e+6 #kWh (No. of units consumed in a year)\n", + "max_dem = 500.0 #kVA (Max. demand charge per annum)\n", + "#Max. demand charge per annum\n", + "charge1 = max_dem*75 #Rs\n", + "#Annual energy charges\n", + "charge2 = units*(3.0/100) #Rs\n", + "#Total cost of supply\n", + "tot_charge1 = charge1 + charge2 #Rs\n", + "\n", + "#Now when pf is changed from 0.707 to 0.9 then Max. kVA demand is\n", + "max_dem = max_dem*(0.707/0.9) #kVA\n", + "\n", + "#Max. demand charge per annum\n", + "charge1 = max_dem*75 #Rs\n", + "#Annual energy charges\n", + "charge2 = units*(3.0/100) #Rs\n", + "#Total cost of supply\n", + "tot_charge2 = charge1 + charge2 #Rs\n", + "\n", + "#Now, as we know pf = cosQ\n", + "phi1 = m.acos(0.707)\n", + "phi2 = m.acos(0.9)\n", + "tan1 = m.tan(phi1)\n", + "tan2 = m.tan(phi2)\n", + "\n", + "#kVAR to be supplied is (kW demand)*(tan1 - tan2)\n", + "tot_kvar = max_dem*0.707*(tan1 - tan2) #kVAR\n", + "\n", + "#Annual cost of interest and depreciation\n", + "charge3 =tot_kvar*45*(10.0/100) #Rs\n", + "tot_charge2 = tot_charge2 + charge3 #Rs\n", + "\n", + "#Annual Savings\n", + "savings = tot_charge1 - tot_charge2 #Rs\n", + "\n", + "print \"Annual Savings = Rs. \",round(savings,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.72 , PAGE NO :- 1999" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Annual charge of Transformer 1 is = Rs. 7884.0\n", + "Annual charge of Transformer 2 is = Rs. 8409.6\n", + "Transformer 1 is chosen.\n", + "To reverse the situation , Capital cost of transformer is > Rs. 5256.0\n" + ] + } + ], + "source": [ + "'''It is necessary to choose a transformer to supply a load which varies over 24\n", + "hour period in the manner given below :\n", + "500 kVA for 4 hours, 1000 kVA for 6 hours, 1500 kVA for 12 hours and 2000 kVA for the rest of the period.\n", + "Two transformers each rated at 1500 kVA have been quoted. Transformer I has iron loss of\n", + "2.7 kW and full-load copper loss of 8.1 kW while transformer II has an iron loss and full-load copper\n", + "loss of 5.4 kW each.\n", + "(i) Calculate the annual cost of supplying losses for each transformer if electrical energy costs\n", + "10 paise per kWh.\n", + "(ii) Determine which transformer should be chosen if the capital cost of the transformer I is\n", + "Rs. 1000 more than that of the transformer II and annual charges of interest and depreciation\n", + "are 10%.\n", + "(iii) What difference in capital cost will reverse the decision made in (ii) above ? '''\n", + "\n", + "#(i.a)Transformer No. 1\n", + "\n", + "iron_loss = 2.7*24 #kWh (Iron loss/day)\n", + "\n", + "cu_loss = 8.1*(((500.0/1500)**2.0)*4 + ((1000.0/1500)**2.0)*6 + ((1500.0/1500)**2.0)*12 + ((2000.0/1500)**2.0)*2) \n", + "#kWh(Copper loss/day)\n", + "\n", + "#Annual energy loss\n", + "annual_loss = 365.0*(iron_loss + cu_loss) #kWh \n", + " \n", + "#Annual cost of both cases \n", + "charge1 = annual_loss*(10.0/100) #Rs\n", + "#-----------------------------------------------------------------------#\n", + "#(i.b)Transformer No. 2\n", + "\n", + "iron_loss = 5.4*24 #kWh (Iron loss/day)\n", + "cu_loss = 5.4*(((500.0/1500)**2.0)*4 + ((1000.0/1500)**2.0)*6 + ((1500.0/1500)**2.0)*12 + ((2000.0/1500)**2.0)*2)\n", + "#kWh(Copper loss/day)\n", + "\n", + "#Annual energy loss\n", + "annual_loss = 365.0*(iron_loss + cu_loss) #kWh \n", + " \n", + "#Annual cost of both cases \n", + "charge2 = annual_loss*(10.0/100) #Rs\n", + "\n", + "print \"Annual charge of Transformer 1 is = Rs.\",round(charge1,2)\n", + "print \"Annual charge of Transformer 2 is = Rs.\",round(charge2,2)\n", + "\n", + "#------------------------------------------------------------------------------------------------------------------------------#\n", + "#(ii)Sice cost of transformer1 is Rs. 1000 more with 10% interest\n", + "#Total annual cost for Transformer 1 is\n", + "charge1a = charge1 + (10.0/100)*1000 #Rs\n", + "\n", + "if(charge1a>charge2):\n", + " print \"Transformer 2 is chosen.\"\n", + "else:\n", + " print \"Transformer 1 is chosen.\"\n", + "#------------------------------------------------------------------------------------------------------------------------------#\n", + "#(iii)Total savings in Transformer 1 is\n", + "savings = charge2 - charge1 #Rs\n", + "#Let x be the capital cost of transformer 1 . Then x*0.1 > savings\n", + "x = savings/0.1 #Rs\n", + "print \"To reverse the situation , Capital cost of transformer is > Rs. \",round(x,2) \n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.73 , PAGE NO :- 1999" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Net savings per annum = Rs. 8590.0\n" + ] + } + ], + "source": [ + "'''Three-phase 50-Hz power is supplied to a mill, the voltage being stepped down to 460-V before use.The monthly power rate\n", + "is 7.50 per kVA. It is found that the average power factor is 0.745 while the monthly demand is 611 kVA.To improve power\n", + "factor, 210 kVA capacitors are installed in which there is negligible power loss. The installed cost of the equipment is\n", + "Rs. 11,600 and fixed charges are estimated at 15% per year. What is the yearly saving introduced by the capacitors.'''\n", + "\n", + "import math as m\n", + "\n", + "#Monthly demand\n", + "max_kva = 611.0 #kVA (maximum demand)\n", + "pf = 0.745 # (power factor)\n", + "#Now, as we know\n", + "phi = m.acos(pf) #angle\n", + "sin1 = m.sin(phi)\n", + "\n", + "#Max demand in kW\n", + "max_kw = max_kva*pf #kW\n", + "#Max demand in kVAR\n", + "max_kvar = max_kva*sin1 #kVAR (lagging)\n", + "#Leading kVAR\n", + "kvar2 = 210.0 #kVAR\n", + "\n", + "#kVAR after pf improvement\n", + "tot_kvar = max_kvar - kvar2 #kVAR\n", + "\n", + "#kVA after power factor improvement is\n", + "new_kva = m.sqrt( max_kw**2 + tot_kvar**2 ) #kVA\n", + "\n", + "#Reduction in kVA\n", + "red_kva = max_kva - new_kva #kVA\n", + "#Monthly Savings in kVA charge\n", + "saving = red_kva*7.5 #Rs\n", + "#Yearly Savings in kVA charge\n", + "saving = 12*saving #Rs\n", + "\n", + "#Fixed charge per annum due to Capital cost on capacitors\n", + "fxd_charge = 0.15*11600 #Rs\n", + "\n", + "#Net savings\n", + "net_saving = saving - fxd_charge #Rs\n", + "\n", + "print \"Net savings per annum = Rs. \",round(net_saving)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.74 , PAGE NO :- 2000" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Minimum number of power units consumed per month = 880.0 units.\n" + ] + } + ], + "source": [ + "'''A supply undertaking is offering the following two tariffs to prospective customers :\n", + "Tariff A : Lighting : 20 paise per unit; domestic power: 5 paise per unit, meter rent: 30 paise per meter per month.\n", + "Tariff B : 12 per cent on the rateable value of the customer's premises plus 3 paise per unit for all purposes.\n", + "If the annual rateable value of the customer's premises is Rs. 2,500 and his normal consumption for lighting per month\n", + "is 40 units, determine what amount of domestic power consumption will make both the tariffs equally advantageous.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#Let x = minimum number of power units consumed per month\n", + "x = Symbol('x')\n", + "#(i) Tariff A\n", + "#Total cost per month = meter rent + lighting charges + power charges\n", + "charge1 = 2*30.0 + 40.0*20.0 + 5*x #Paise\n", + "#(ii) Tariff B\n", + "#Total cost per month = 12% of 2500 + energy charges for al purposes\n", + "charge2 = 0.12*2500.0*(100.0/12) + 3*(40.0 + x) #Paise\n", + "\n", + "#Equating tariff A and B\n", + "eq = Eq(charge1,charge2)\n", + "x = solve(eq)\n", + "x1 = x[0]\n", + "print \"Minimum number of power units consumed per month = \",round(x1,2),\"units.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.75 , PAGE NO :- 2000" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The price of h.t motors per output kW = Rs. 36.2\n" + ] + } + ], + "source": [ + "'''Transformers and low-tension motors of a certain size can be purchased at Rs. 12 per kVA of full output and Rs. 24 per kW \n", + "output respectively.If their respective efficiencies are 98% and 90%, what price per kW output could be paid for high-tension\n", + "motors of the same size but of average efficiency only 89%? Assume an annual load factor of 30%, the cost of energy per unit as\n", + "7 paise and interest and depreciation at the rate of 8% for low-tension motors.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#Let S => The price of h.t motors per output kW in rupees\n", + "S = Symbol('S')\n", + "\n", + "#-------Low-tension Motors with Transformers-----#\n", + "#Interest and depreciation charges of motors\n", + "charge1 = 24.0*0.08/0.9 #Rs\n", + "#Interest and depreciation charges of transformers\n", + "charge2 = 12.0*0.9/0.99*0.08 #Rs\n", + "#Running charges\n", + "charge3 = (8760*0.3)*7/(0.98*0.9*100) #Rs\n", + "\n", + "#Total cost of low tension motors with transformers\n", + "tot_chargeA = charge1 + charge2 + charge3 #Rs -----------(i)\n", + "\n", + "#------High-tension Motors with Transformers----#\n", + "\n", + "#Standing Charges/output kW\n", + "charge1 = S*(0.12)/0.89 #Rs\n", + "#Running charges\n", + "charge2 = (8760*0.3)*7/(0.89*100) #Rs\n", + "\n", + "#Total cost of high tension motors with transformers\n", + "tot_chargeB = charge1 + charge2 #Rs -----------(ii)\n", + "\n", + "#Equating (i) and (ii)\n", + "eq = Eq(tot_chargeA,tot_chargeB)\n", + "S = solve(eq)\n", + "S1 = S[0]\n", + "print \"The price of h.t motors per output kW = Rs.\",round(S1,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.76 , PAGE NO :- 2001" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "number of hours per week above which the H.V. supply is cheaper = 36.0\n" + ] + } + ], + "source": [ + "'''An industrial load can be supplied on the following alternative tariffs (a) highvoltage supply at Rs. 45 per kVA per annum \n", + "plus 1.5 paise per kWh or (b) low-voltage supply at Rs. 50 per annum plus 1.8 paise per kWh. Transformers and switchgear etc.\n", + "for the H.V. supply cost Rs. 35 per kVA, the full-load transformer losses being 2%. The fixed charges on the capital cost of\n", + "the high-voltage plant are 25% and the installation works at full-load. If there are 50 working weeks in a year, find the number\n", + "of working hours per week above which the H.V. supply is cheaper.'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "\n", + "#Let x be the number or working hours per week above which H.V. supply is cheaper than the L.V. supply.\n", + "x = Symbol('x')\n", + "\n", + "load = 100.0 #kW (load)\n", + "rload = load/(98.0/100) #kW (rated load with 2% losses)\n", + "\n", + "#Cost of switchgear & trasformer\n", + "cost = rload*35.0 #Rs \n", + "#annual fixed charge\n", + "charge1 = cost*0.25 #Rs\n", + "\n", + "#Annual energy consumption\n", + "units = 100.0*x*50.0 #kWh\n", + "\n", + "#(a) H.V. Supply\n", + "#Total annual cost = 45 * kVA + energy charges + charge on H.V. plant\n", + "charge_hv = 45*(rload) + units/0.98*(1.5/100) + charge1 #Rs\n", + "\n", + "#(b) L.V. Supply\n", + "#Total annual cost = Rs. 50 × kVA + energy charges\n", + "charge_lv = 50*load + units*(1.8/100) #Rs\n", + "\n", + "#If two annual costs are equal then\n", + "eq = Eq(charge_hv,charge_lv)\n", + "x = solve(eq)\n", + "x1 = x[0] \n", + "print \"number of hours per week above which the H.V. supply is cheaper = \",round(x1)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.77 , PAGE NO :- 2002" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Motor X is cheaper by = Rs. 34.8\n" + ] + } + ], + "source": [ + "'''For a particular drive in a factory requiring 10 h.p. (7.46 kW) motors, following tenders have been received. Which one\n", + "will you select ?\n", + " cost efficiency\n", + "Motor X Rs. 1,150 86%\n", + "Motor Y Rs. 1,000 85%\n", + "Electrical tariff is Rs. 50 per kW + 5 paise per kWh. Assume interest and depreciation as 10% .'''\n", + "\n", + "#(i) Motor X\n", + "pin = 7.46/0.86 #kW (Full load power input)\n", + "units = pin*8760.0 #kWh (Units consumed/year)\n", + "#kW charges\n", + "charge1 = 50.0*pin #Rs\n", + "#kWh charges\n", + "charge2 = (5.0/100)*units #Rs\n", + "#Fixed charges\n", + "charge3 = (10.0/100)*1150.0 #Rs\n", + "\n", + "#Total annual charges\n", + "tot_chargeX = charge1 + charge2 + charge3 #Rs\n", + "\n", + "#-------------------------------------------------------------------------------#\n", + "#(ii) Motor Y\n", + "pin = 7.46/0.85 #kW (Full load power input)\n", + "units = pin*8760.0 #kWh (Units consumed/year)\n", + "#kW charges\n", + "charge1 = 50.0*pin #Rs\n", + "#kWh charges\n", + "charge2 = (5.0/100)*units #Rs\n", + "#Fixed charges\n", + "charge3 = (10.0/100)*1000.0 #Rs\n", + "\n", + "#Total annual charges\n", + "tot_chargeY = charge1 + charge2 + charge3 #Rs\n", + "\n", + "#-------------------------------------------------------------------------------#\n", + "if (tot_chargeX > tot_chargeY):\n", + " savings = tot_chargeX - tot_chargeY #Rs\n", + " print \"Motor Y is cheaper by = Rs.\",round(savings,2)\n", + "else:\n", + " savings = tot_chargeY - tot_chargeX #Rs\n", + " print \"Motor X is cheaper by = Rs.\",round(savings,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.78 , PAGE NO :- 2002" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cost of Motor B is = Rs. 10250.0\n" + ] + } + ], + "source": [ + "'''A 200-h p. (149.2 kW) motor is required to operate at full-load for 1500 hr, at half-load for 3000 hr per year and to\n", + "be shut down for the remainder of the time. Two motors are available.\n", + "\n", + "Motor A : efficiency at full load = 90% ; at half-load = 88%\n", + "Motor B : efficiency at full load = 90% ; at half-load = 89%\n", + "The unit of energy is 5 paise/kWh and interest and depreciation may be taken as 12 per cent per year. If motor A cost\n", + "Rs. 9,000 ; what is the maximum price which could economically be paid for motor B ?'''\n", + "\n", + "from sympy import Symbol,solve,Eq\n", + "#(i)Motor A\n", + "pin_fl = 149.2/0.9 #kW (full-load power input)\n", + "pin_hl = (149.2/2)/0.88 #kW (half-load power input)\n", + "pin_hl = round(pin_hl,1)\n", + "pin_fl = round(pin_fl,1)\n", + "#Total energy consumed in a year\n", + "units = 1500.0*pin_fl + 3000.0*pin_hl #kWh\n", + "#Cost of energy is\n", + "charge1 = (5.0/100)*units #Rs\n", + "#Interest and depreciation on motors\n", + "charge2 = 0.12*9000 #Rs\n", + "tot_chargeA = charge1 + charge2 #Rs ----------(i)\n", + "#------------------------------------------------------------------#\n", + "\n", + "#(ii)Motor B\n", + "pin_fl = 149.2/0.9 #kW (full-load power input)\n", + "pin_hl = (149.2/2)/0.89 #kW (half-load power input)\n", + "pin_hl = round(pin_hl,1)\n", + "pin_fl = round(pin_fl,1)\n", + "#Total energy consumed in a year\n", + "units = 1500.0*pin_fl + 3000.0*pin_hl #kWh\n", + "#Cost of energy is\n", + "charge1 = (5.0/100)*units #Rs\n", + "#Let the cost of motor be x\n", + "x = Symbol('x')\n", + "#Interest and depreciation on motors\n", + "charge2 = 0.12*x #Rs\n", + "tot_chargeB = charge1 + charge2 #Rs-------------(ii)\n", + "\n", + "#Equating (i)&(ii)\n", + "eq = Eq(tot_chargeA,tot_chargeB)\n", + "x = solve(eq)\n", + "x1 = x[0]\n", + "print \"Cost of Motor B is = Rs.\",round(x1,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.79 , PAGE NO :- 2003" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total cost of Tender A is = Rs. 938.83\n", + "Total cost of Tender B is = Rs. 916.26\n", + "Tender B is cheaper by = Rs. 22.57\n" + ] + } + ], + "source": [ + "'''Two tenders A and B for a 1000-kVA, 0.8 power factor transformer are : A,full-load efficiency = 98.5% and iron\n", + "loss = 6 kW at rated voltage ; B, 98.8% and iron loss 4 kW but costs Rs. 1,500 more than A. The load cycle is 2000\n", + "hours per annum at full-load, 600 hours at halfload and 400 hours at 25 kVA. Annual charges for interest and\n", + "depreciation are 12.5% of capital cost and energy costs 3 paise per kWh. Which tender is better and what would be\n", + "the annual saving.'''\n", + "\n", + "#Tender A\n", + "#Transformer full-load output\n", + "fl_out = 1000 * 0.8 #kW\n", + "eff = (98.5/100) # (efficiency)\n", + "pin = fl_out/eff # (input power)\n", + "#Total losses\n", + "tot_loss = pin - fl_out #kW\n", + "#F.L. Cu losses\n", + "fl_culoss = tot_loss - 6.0 #kW\n", + "#Total losses per year for a running period of 3000 hr. are—\n", + "#Iron loss\n", + "ir_loss = 3000 * 6.0 #kWh\n", + "#F.L. Cu losses for 2000 hours\n", + "fl_units = 2000 * fl_culoss #kWh\n", + "#Cu loss at half-load for 600 hours\n", + "hl_units = 600*(fl_culoss/4) #kWh \n", + "\n", + "#Cu loss at 25 kVA load for 400 hours\n", + "units_kva = ((25.0/1000)**2)*fl_culoss*400.0 #kWh\n", + "\n", + "#Total energy loss per year\n", + "enrgy_loss = ir_loss + fl_units + hl_units + units_kva #kWh\n", + "#Total Cost\n", + "costA = enrgy_loss*(3.0/100) #Rs.\n", + "\n", + "#---------------------------------------------------------------------------#\n", + "\n", + "#Tender B\n", + "#Transformer full-load output\n", + "fl_out = 1000 * 0.8 #kW\n", + "eff = (98.8/100) # (efficiency)\n", + "pin = fl_out/eff # (input power)\n", + "#Total losses\n", + "tot_loss = pin - fl_out #kW\n", + "#F.L. Cu losses\n", + "fl_culoss = tot_loss - 4.0 #kW\n", + "#Total losses per year for a running period of 3000 hr. are—\n", + "#Iron loss\n", + "ir_loss = 3000 * 4 #kWh\n", + "#F.L. Cu losses for 2000 hours\n", + "fl_units = 2000 * fl_culoss #kWh\n", + "#Cu loss at half-load for 600 hours\n", + "hl_units = 600*(fl_culoss/4) #kWh \n", + "\n", + "#Cu loss at 25 kVA load for 400 hours\n", + "units_kva = ((25.0/1000)**2)*fl_culoss*400.0 #kWh\n", + "\n", + "#Total energy loss per year\n", + "enrgy_loss = ir_loss + fl_units + hl_units + units_kva #kWh\n", + "#Total Cost\n", + "costB = enrgy_loss*(3.0/100) + 1500.0*(12.5/100) #Rs.\n", + "\n", + "print \"Total cost of Tender A is = Rs.\",round(costA,2) \n", + "print \"Total cost of Tender B is = Rs.\",round(costB,2)\n", + "\n", + "if (costA > costB):\n", + " diff = costA - costB\n", + " print \"Tender B is cheaper by = Rs.\",round(diff,2)\n", + "else:\n", + " diff = costB - costA\n", + " print \"Tender A is cheaper by = Rs.\",round(diff,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.80 , PAGE NO :- 2003" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Transformer B should cost Rs. 2920.0 less than A.\n" + ] + } + ], + "source": [ + "'''Transformer A has iron loss of 150 kWh and load loss of 140 kWh daily while the corresponding losses of transformer B are 75 kWh\n", + "and 235 kWh. If annual charges are 12.5% of the capital costs and energy costs 5 paise per kWh, what should be the difference in the\n", + "cost of the two transformers so as to make them equally economical ?'''\n", + "\n", + "#Transformer A\n", + "#Annual loss\n", + "annual_lossA = 365.0*(150 + 140) #kWh (Yearly loss)\n", + "#Transformer B\n", + "annual_lossB = 365.0*(75 + 235) #kWh (Yearly loss)\n", + "\n", + "#Difference in yearly loss\n", + "tot_loss = annual_lossB - annual_lossA #kWh\n", + "\n", + "#Value of this loss\n", + "value = tot_loss*(5.0/100) #Rs\n", + "\n", + "\n", + "#As transformer B is costlier .\n", + "#Let the difference in capital cost of transformers be x\n", + "x = value/0.125 #Rs\n", + "\n", + "print \"Transformer B should cost Rs.\",round(x,2),\"less than A.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## EXAMPLE 50.81 , PAGE NO :- 2004" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total annual charges for Transformer A is = Rs. 24804.0\n", + "Total annual charges for Transformer B is = Rs. 23046.0\n", + "Total annual charges for Transformer C is = Rs. 28601.0\n", + "Transformer B is cheaper.\n" + ] + } + ], + "source": [ + "'''Quotations received from three sources for transformers are :\n", + " Price No-load loss Full-load loss\n", + "A Rs. 41,000 16 kW 50 kW\n", + "B Rs. 45,000 14 kW 45 kW\n", + "C Rs. 38,000 19 kW 60 kW\n", + "If the transformers are kept energized for the whole of day (24 hours), but will be on load for 12 hours per day, the remaining\n", + "period on no-load, the electricity cost being 5 paise per kWh and fixed charges Rs. 125 per kW of loss per annum and if\n", + "depreciation is 10% of the initial cost, which of the transformers would be most economical to purchase ?'''\n", + "\n", + "#Transformer A\n", + "fl_loss = 50.0 #kW (Full load losses) \n", + "nl_loss = 16.0 #kW (No load losses)\n", + "\n", + "fl_culoss = fl_loss - nl_loss #kW (Full load copper loss)\n", + "\n", + "#Cu loss for 12 hours .Therefore units consumed\n", + "cu_units = fl_culoss*12 #kWh\n", + "#Iron loss for 24 hours.Therefore units consumed\n", + "ir_units = nl_loss*24 #kWh\n", + "#Total loss per day\n", + "day_loss = cu_units + ir_units #kWh\n", + "#Annual loss is\n", + "anl_loss = day_loss*365.0 #kWh\n", + "#Cost of this loss is\n", + "loss_charge = anl_loss*(5.0/100) #Rs\n", + "#Annual fixed charges\n", + "fxd_charge = 125.0*fl_loss #Rs\n", + "#Annual depreciation\n", + "dep_charge = 0.1*41000.0 #Rs\n", + "\n", + "#Total annual charges\n", + "tot_chargeA = loss_charge + fxd_charge + dep_charge #Rs\n", + "print \"Total annual charges for Transformer A is = Rs. \",round(tot_chargeA,2)\n", + "#--------------------------------------------------------------------------------------------#\n", + "\n", + "#Transformer B\n", + "fl_loss = 45.0 #kW (Full load losses) \n", + "nl_loss = 14.0 #kW (No load losses)\n", + "\n", + "fl_culoss = fl_loss - nl_loss #kW (Full load copper loss)\n", + "\n", + "#Cu loss for 12 hours .Therefore units consumed\n", + "cu_units = fl_culoss*12 #kWh\n", + "#Iron loss for 24 hours.Therefore units consumed\n", + "ir_units = nl_loss*24 #kWh\n", + "#Total loss per day\n", + "day_loss = cu_units + ir_units #kWh\n", + "#Annual loss is\n", + "anl_loss = day_loss*365.0 #kWh\n", + "#Cost of this loss is\n", + "loss_charge = anl_loss*(5.0/100) #Rs\n", + "#Annual fixed charges\n", + "fxd_charge = 125.0*fl_loss #Rs\n", + "#Annual depreciation\n", + "dep_charge = 0.1*45000.0 #Rs\n", + "\n", + "#Total annual charges\n", + "tot_chargeB = loss_charge + fxd_charge + dep_charge #Rs\n", + "print \"Total annual charges for Transformer B is = Rs. \",round(tot_chargeB,2)\n", + "#--------------------------------------------------------------------------------------------#\n", + "\n", + "#Transformer C\n", + "fl_loss = 60.0 #kW (Full load losses) \n", + "nl_loss = 19.0 #kW (No load losses)\n", + "\n", + "fl_culoss = fl_loss - nl_loss #kW (Full load copper loss)\n", + "\n", + "#Cu loss for 12 hours .Therefore units consumed\n", + "cu_units = fl_culoss*12 #kWh\n", + "#Iron loss for 24 hours.Therefore units consumed\n", + "ir_units = nl_loss*24 #kWh\n", + "#Total loss per day\n", + "day_loss = cu_units + ir_units #kWh\n", + "#Annual loss is\n", + "anl_loss = day_loss*365.0 #kWh\n", + "#Cost of this loss is\n", + "loss_charge = anl_loss*(5.0/100) #Rs\n", + "#Annual fixed charges\n", + "fxd_charge = 125.0*fl_loss #Rs\n", + "#Annual depreciation\n", + "dep_charge = 0.1*38000.0 #Rs\n", + "\n", + "#Total annual charges\n", + "tot_chargeC = loss_charge + fxd_charge + dep_charge #Rs\n", + "print \"Total annual charges for Transformer C is = Rs. \",round(tot_chargeC,2)\n", + "#--------------------------------------------------------------------------------------------#\n", + "if(tot_chargeA < tot_chargeB):\n", + " if(tot_chargeA < tot_chargeC):\n", + " print \"Transformer A is cheaper.\"\n", + " else:\n", + " print \"Transformer C is cheaper.\"\n", + "else:\n", + " if(tot_chargeB < tot_chargeC):\n", + " print \"Transformer B is cheaper.\"\n", + " else:\n", + " print \"Transformer C is cheaper.\" \n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "## EXAMPLE 50.82 , PAGE NO :- 2005" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Line power factor at full-load = 0.99\n", + "Line power factor at no-load = 0.27\n" + ] + } + ], + "source": [ + "'''A 37.3 kW induction motor has power factor 0.9 and efficiency 0.9 at fullload,power factor 0.6 and efficiency 0.7 at half-load.\n", + "At no-load, the current is 25% of the full-load current and power factor 0.1. Capacitors are supplied to make the line power factor\n", + "0.8 at half-load.With these capacitors in circuit, find the line power factor at (i) full-load and (ii) no-load.'''\n", + "\n", + "import math as m\n", + "from sympy import Symbol\n", + "\n", + "#Full-load motor input P1\n", + "p1 = 37.3/0.9 #kW\n", + "#Lagging kVAR drawn by the motor at full-load,\n", + "kvar1 = p1*(m.tan(m.acos(0.9))) #kVAR\n", + "\n", + "#Half-load motor input P2\n", + "p2 = (37.3/2)/0.7 #kW\n", + "#Lagging kVAR drawn by motor at half-load,\n", + "kvar2 = p2*(m.tan(m.acos(0.6))) #kVAR\n", + "\n", + "#Let the line voltage be Vl\n", + "Vl = Symbol('Vl')\n", + "#Full load current\n", + "I1 = 37.3e+3/(1.73*0.9*0.9*Vl) #A\n", + "\n", + "#Current at no-load\n", + "I0 = 0.25*I1\n", + "\n", + "#Motor Input at no-load P0 = 1.73*Vl*I0*cosQ\n", + "P0 = 1.73*Vl*I0*0.1/1000 #W\n", + "\n", + "#Lagging kVAR drawn by motor at no-load\n", + "kvar0 = P0*m.tan(m.acos(0.1)) #kW\n", + "\n", + "#Lagging kVAR drawn from mains at half-load\n", + "kvar1 = p2*m.tan(m.acos(0.8)) #kW\n", + "\n", + "#kVAR supplied by capacitors, kVARC = kVAR2 − kVAR2C\n", + "cap_kvar = kvar2 - kvar1 \n", + "#kVAR drawn from the main at full-load with capacitors\n", + "fl_kvar = kvar1 - cap_kvar #kVAR\n", + "\n", + "#(i) Line power factor at full-load is\n", + "pf_fl = m.cos(m.atan(fl_kvar/p1))\n", + " \n", + "print\"Line power factor at full-load = \",round(pf_fl,2) \n", + "#----------------------------------------------------------------------------#\n", + " \n", + "#(ii) kVAR drawn from mains at no-load with capacitors\n", + "nl_kvar = kvar0 - cap_kvar #kVAR \n", + "#Line power factor at no-load\n", + "pf_nl = m.cos (m.atan(nl_kvar/P0))\n", + "print \"Line power factor at no-load = \",round(pf_nl,2)" + ] + } + ], + "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.11" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/screenshots/figure_1.png b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/screenshots/figure_1.png Binary files differnew file mode 100644 index 00000000..ff56bbe0 --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/screenshots/figure_1.png diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/screenshots/figure_2.png b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/screenshots/figure_2.png Binary files differnew file mode 100644 index 00000000..ce759697 --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/screenshots/figure_2.png diff --git a/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/screenshots/figure_3.png b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/screenshots/figure_3.png Binary files differnew file mode 100644 index 00000000..8d6f2d10 --- /dev/null +++ b/A_TEXTBOOK_OF_ELECTRICAL_TECHNOLOGY_(VOL-III)_by_B.L.Thareja/screenshots/figure_3.png |