summaryrefslogtreecommitdiff
path: root/Electronic_Communication_Systems/Chapter4.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'Electronic_Communication_Systems/Chapter4.ipynb')
-rwxr-xr-xElectronic_Communication_Systems/Chapter4.ipynb460
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