diff options
Diffstat (limited to 'Electronic_Communication_Systems/Chapter4.ipynb')
-rwxr-xr-x | Electronic_Communication_Systems/Chapter4.ipynb | 460 |
1 files changed, 460 insertions, 0 deletions
diff --git a/Electronic_Communication_Systems/Chapter4.ipynb b/Electronic_Communication_Systems/Chapter4.ipynb new file mode 100755 index 00000000..be889b2d --- /dev/null +++ b/Electronic_Communication_Systems/Chapter4.ipynb @@ -0,0 +1,460 @@ +{ + "metadata": { + "name": "", + "signature": "sha256:82b1a87e5b1e62f448481647ab7f0e2ca7607ff780f8775431ec8c2b250882dc" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 4: Angle Modulation Techniques" + ] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 4.1, page no. 71" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + " \n", + "# Variable Declaration\n", + "fm1 = 500 # Audio Frequency (Hz)\n", + "Vm1 = 2.4 # AF Voltage (V)\n", + "del_f1 = 4.8*pow(10,3) # Deviation (Hz)\n", + "fm2 = 500 # Audio Frequency (Hz)\n", + "Vm2 = 7.2 # AF Voltage (V)\n", + "fm3 = 200 # Audio Frequency (Hz)\n", + "Vm3 = 10 # AF Voltage (V)\n", + "\n", + "# Calculation\n", + "import math\t # Math Library\n", + "kf = del_f1/Vm1 # Proportionality Constant\n", + "mf1 = del_f1/fm1 # Modulation Index\n", + "del_f2 = kf*Vm2 # Deviation (Hz)\n", + "mf2 = del_f2/fm2 # Modulation Index\n", + "del_f3 = kf*Vm3 # Deviation (Hz)\n", + "mf3 = del_f3/fm3 # Modulation Index\n", + " \n", + "# Result\n", + "\n", + "print \"CASE 1 : Modulation Index, mf1 =\",round(mf1,1)\n", + "print \" Deviation, del_f1 =\",round(del_f1/pow(10,3),1),\"kHz\"\n", + "print \"CASE 2 : Modulation Index, mf2 =\",round(mf2,1)\n", + "print \" Deviation, del_f2 =\",round(del_f2/pow(10,3),1),\"kHz\"\n", + "print \"CASE 3 : Modulation Index, mf3 =\",round(mf3)\n", + "print \" Deviation, del_f3 =\",round(del_f3/pow(10,3),1),\"kHz\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "CASE 1 : Modulation Index, mf1 = 9.6\n", + " Deviation, del_f1 = 4.8 kHz\n", + "CASE 2 : Modulation Index, mf2 = 28.8\n", + " Deviation, del_f2 = 14.4 kHz\n", + "CASE 3 : Modulation Index, mf3 = 100.0\n", + " Deviation, del_f3 = 20.0 kHz\n" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 4.2, page no. 71" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "\n", + "# Variable Declaration\n", + "# GIVEN EXPRESSION : v = 12 sin(6 X 10^(8)t + 5 cos(1250t))\n", + "omega1 = 6.00*pow(10,8) # Angular Velocity (rad/s)\n", + "omega2 = 1250 # Angular Velocity (rad/s)\n", + "mf = 5 # Modulation Index\n", + "A = 12 # Amplitude (V)\n", + "R = 10 # Resistance (Ohms)\n", + "\n", + "# Calculation\n", + "import math\t # Math Library\n", + "fc = omega1/(2*math.pi) # Carrier frequency (Hz)\n", + "fm = omega2/(2*math.pi) # Modulating frequency (Hz)\n", + "del_f = mf*fm # Maximum deviation (Hz)\n", + "P = pow(A/math.sqrt(2),2)/R # Power dissipation (w)\n", + "\n", + "# Result\n", + "print \"Carrier frequency, fc =\",round(fc/pow(10,6),1),\" MHz\"\n", + "print \"Modulating frequency, fm =\",round(fm),\" Hz\"\n", + "print \"Modulation Index, mf =\",round(mf)\n", + "print \"Maximum deviation, del_f =\",round(del_f),\"Hz\"\n", + "print \"Power dissipation, P =\",round(P,1),\"W\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Carrier frequency, fc = 95.5 MHz\n", + "Modulating frequency, fm = 199.0 Hz\n", + "Modulation Index, mf = 5.0\n", + "Maximum deviation, del_f = 995.0 Hz\n", + "Power dissipation, P = 7.2 W\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 4.3, page no. 73" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "\n", + "# Variable Declaration\n", + "fm1 = 500 # Audio Frequency (Hz)\n", + "Vm1 = 2.4 # AF Voltage (V)\n", + "del_p1 = 4.8 # Deviation (kHz)\n", + "fm2 = 500 # Audio Frequency (Hz)\n", + "Vm2 = 7.2 # AF Voltage (V)\n", + "fm3 = 200 # Audio Frequency (Hz)\n", + "Vm3 = 10 # AF Voltage (V)\n", + "\n", + "# Calculation\n", + "import math # Math Library\n", + "kp = del_p1/Vm1 # Proportionality Constant\n", + "mp1 = del_p1 # Modulation Index\n", + "del_p2 = kp*Vm2 # Deviation (kHz)\n", + "mp2 = del_p2 # Modulation Index\n", + "del_p3 = kp*Vm3 # Deviation (kHz)\n", + "mp3 = del_p3 # Modulation Index\n", + " \n", + "# Result\n", + "print \"CASE 1 : Modulation Index, mp1 =\",round(mp1,1)\n", + "print \" Deviation, del_p1 =\",round(del_p1,1),\"kHz\"\n", + "print \"CASE 2 : Modulation Index, mp2 =\",round(mp2,1)\n", + "print \" Deviation, del_p2 =\",round(del_p2,1),\"kHz\"\n", + "print \"CASE 3 : Modulation Index, mp3 =\",round(mp3)\n", + "print \" Deviation, del_p3 =\",round(del_p3,1),\"kHz\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "CASE 1 : Modulation Index, mp1 = 4.8\n", + " Deviation, del_p1 = 4.8 kHz\n", + "CASE 2 : Modulation Index, mp2 = 14.4\n", + " Deviation, del_p2 = 14.4 kHz\n", + "CASE 3 : Modulation Index, mp3 = 20.0\n", + " Deviation, del_p3 = 20.0 kHz\n" + ] + } + ], + "prompt_number": 3 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 4.4, page no. 74" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "\n", + "# Variable Declaration\n", + "# GIVEN EXPRESSION : v = 12 sin(6 X 10^(8)t + 5 cos(1250t))\n", + "omega1 = 6*pow(10,8) # Angular Velocity (rad/s)\n", + "omega2 = 1250 # Angular Velocity (rad/s)\n", + "mp = 5 # Modulation Index\n", + "A = 12 # Amplitude (V)\n", + "\n", + "# Calculation\n", + "import math\t # Math Library\n", + "fc = omega1/(2*math.pi) # Carrier frequency (Hz)\n", + "fm = omega2/(2*math.pi) # Modulating frequency (Hz)\n", + "del_p = mp # Maximum Deviation (kHz)\n", + "\n", + "# Result\n", + "print \"Carrier frequency, fc =\",round(fc/pow(10,6),1),\" MHz\"\n", + "print \"Modulating frequency, fm =\",round(fm),\" Hz\"\n", + "print \"Modulation Index, mp =\",round(mp),\"radians\"\n", + "print \"Maximum deviation, del_p =\",round(del_p),\"kHz\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Carrier frequency, fc = 95.5 MHz\n", + "Modulating frequency, fm = 199.0 Hz\n", + "Modulation Index, mp = 5.0 radians\n", + "Maximum deviation, del_p = 5.0 kHz\n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 4.5, page no. 75" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "\n", + "# Variable Declaration\n", + "# GIVEN EXPRESSION FM: v=A sin(omega_c*t + mf cos(omega_m*t))\n", + "# GIVEN EXPRESSION PM: v=A sin(omega_c*t + mp cos(omega_m*t))\n", + "A = 4 # Carrier Voltage (V)\n", + "del_f = 10.00*pow(10,3) # Maximum Frequency Deviation (Hz)\n", + "del_p = 25 # Maximum Phase Deviation (Hz)\n", + "f_c = 25.00*pow(10,6) # Carrier Frequency (Hz)\n", + "f_m1 = 400 # Modulating Frequency 1 (Hz)\n", + "f_m2 = 2000 # Modulating Frequency 2 (Hz)\n", + "\n", + "# Calculation\n", + "import math # Math Library\n", + "omega_c = 2*math.pi*f_c # Angular Velocity of carrier (rad/s)\n", + "omega_m = 2*math.pi*f_m1 # Angular Velocity of Modulating Wave (rad/s)\n", + "mf1 = del_f/f_m1 # Modulation Index for FM\n", + "mf2 = del_f/f_m2 # Modulation Index for FM\n", + "mp = del_p # Modulation Index for PM\n", + "\n", + "# Result\n", + "print \"(a)For FM Case 1, v =\",round(A),\"sin(\",round(omega_c/pow(10,8),2),\"* 10^(8) * t +\",round(mf1),\"cos\",round(omega_m),\"* t )\"\n", + "print \"(b)For PM Case 1, v =\",round(A),\"sin(\",round(omega_c/pow(10,8),2),\"* 10^(8) * t +\",round(mp),\"cos\",round(omega_m),\"* t )\"\n", + "print \"(c)For FM Case 2, v =\",round(A),\"sin(\",round(omega_c/pow(10,8),2),\"* 10^(8) * t +\",round(mf2),\"cos\",round(omega_m),\"* t )\"\n", + "print \"(d)For PM Case 2, v =\",round(A),\"sin(\",round(omega_c/pow(10,8),2),\"* 10^(8) * t +\",round(mp),\"cos\",round(omega_m),\"* t )\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "(a)For FM Case 1, v = 4.0 sin( 1.57 * 10^(8) * t + 25.0 cos 2513.0 * t )\n", + "(b)For PM Case 1, v = 4.0 sin( 1.57 * 10^(8) * t + 25.0 cos 2513.0 * t )\n", + "(c)For FM Case 2, v = 4.0 sin( 1.57 * 10^(8) * t + 5.0 cos 2513.0 * t )\n", + "(d)For PM Case 2, v = 4.0 sin( 1.57 * 10^(8) * t + 25.0 cos 2513.0 * t )\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 4.6, page no. 79" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "\n", + "# Variable Declaration\n", + "del1 = 10.00*pow(10,3) # Maximum Deviation (Hz)\n", + "fm = 2.00*pow(10,3) # Modulating frequency (Hz)\n", + "H = 8 # Highest Needed Sideband from Table 4.1\n", + "\n", + "# Calculation\n", + "import math # Math Library\n", + "mf = del1/fm # Modulation Index\n", + "delta = fm*H*2 # Bandwidth required for the FM signal (Hz)\n", + "\n", + "# Result\n", + "print \"Bandwidth required for the FM signal, delta =\",round(delta/pow(10,3)),\"kHz\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Bandwidth required for the FM signal, delta = 32.0 kHz\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 4.7, page no. 88" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "\n", + "# Variable Declaration\n", + "gm = 12.00* pow(10,-3) # Transconductance (Siemens) \n", + "f = 5.00*pow(10,6) # Frequency (Hz)\n", + "n = 9 # Constant, from X_GS = (1/9)X_GD\n", + "\n", + "# Calculation\n", + "import math # Math Library\n", + "XCeq = n/gm # Capacitive Reactance of the FET (Ohms)\n", + "\n", + "# Result\n", + "print \"Capacitive reactance of the FET, XCeq =\",round(XCeq),\"Ohms\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Capacitive reactance of the FET, XCeq = 750.0 Ohms\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 4.8, page no. 89" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "\n", + "# Variable Declaration\n", + "gm = 9.00*pow(10,-3) # Transconductance (Siemens) \n", + "f = 50.00*pow(10,6) # Frequency (Hz)\n", + "n = 8 # Constant, from R_GS = (1/8)XC_GD\n", + "C = 50.00*pow(10,-12) # Capacitance (F)\n", + "\n", + "# Calculation\n", + "import math # Math Library\n", + "Cn = 0 # Minimum Equivalent Capacitance of FET (F)\n", + "Cx = gm/(2*math.pi*f*n) # Maximum Equivalent Capacitance of FET (F)\n", + "fx_by_fn = math.sqrt(1+Cx/C) # Maximum to Minimum Frequency Ratio\n", + "delta = (fx_by_fn-1)*f/(fx_by_fn+1) # Total frequency variation of FET (Hz)\n", + "\n", + "# Result\n", + "print \"Total frequency variation of FET =\",round(2*delta/pow(10,6),2),\"MHz\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Total frequency variation of FET = 1.73 MHz\n" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 4.9, page no. 90" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "\n", + "# Variable Declaration\n", + "gm_max = 830.00*pow(10,-6) # Max. Transconductance (Siemens)\n", + "gm_min = 320.00*pow(10,-6) # Min. Transconductance (Siemens) \n", + "f = 88.00*pow(10,6) # Frequency (Hz)\n", + "n = 10 # Constant, from R_GS = (1/10)XC_GD\n", + "delta = 75*pow(10,3) # Maximum Deviation (Hz)\n", + "Vgs1 = -2 # Gate Source Voltage (V)\n", + "Vgs2 = -0.5 # Gate Source Voltage (V)\n", + "\n", + "# Calculation\n", + "import math # Math Library\n", + "Vm_rms = -(Vgs1-Vgs2)/(2*math.sqrt(2)) # RMS value of required voltage modulating voltage (V)\n", + "Cn = gm_min/(2*math.pi*f*n) # Minimum Equivalent Capacitance of FET (F)\n", + "Cx = Cn*gm_max/gm_min # Maximum Equivalent Capacitance of FET (F)\n", + "C = (Cx-Cn)*f/(4*delta)-Cn # Capacitance (F)\n", + "L = 1/(4*pow(math.pi*f,2)*C) # Inductance (H)\n", + "\n", + "# Result\n", + "print \"(a) RMS value of required modulating voltage, Vm_rms =\",round(Vm_rms,2),\"V\"\n", + "print \"(b) Capacitance, C =\",round(C/pow(10,-12)),\"pF\"\n", + "print \" Inductance, L =\",round(L/pow(10,-6),3),\"uH\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "(a) RMS value of required modulating voltage, Vm_rms = 0.53 V\n", + "(b) Capacitance, C = 27.0 pF\n", + " Inductance, L = 0.121 uH\n" + ] + } + ], + "prompt_number": 9 + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file |