diff options
Diffstat (limited to 'Electronic_Communication_Systems_by_Roy_Blake/Chapter18.ipynb')
-rw-r--r-- | Electronic_Communication_Systems_by_Roy_Blake/Chapter18.ipynb | 483 |
1 files changed, 483 insertions, 0 deletions
diff --git a/Electronic_Communication_Systems_by_Roy_Blake/Chapter18.ipynb b/Electronic_Communication_Systems_by_Roy_Blake/Chapter18.ipynb new file mode 100644 index 00000000..d92be490 --- /dev/null +++ b/Electronic_Communication_Systems_by_Roy_Blake/Chapter18.ipynb @@ -0,0 +1,483 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 18 : Terrestrial Microwave system" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 1 : pg 676" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The height of each tower must be at least 23.529 m\n" + ] + } + ], + "source": [ + " \n", + "# page no 676\n", + "#calculate the height of each tower\n", + "# prob no 18_1\n", + "#given\n", + "#Transmitter and receiver have same height at dist 40km\n", + "d=40;#dist is 40 km\n", + "#calculations\n", + "h=(d**2)/68.;# As d=sqrt(17h)+sqrt(17h)\n", + "#results\n", + "print 'The height of each tower must be at least',round(h,3),'m'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 2 : pg 678" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The distance by which beam must clear the obstacle is 11.63 m\n" + ] + } + ], + "source": [ + " \n", + "# page no 678\n", + "# prob no 18_2\n", + "from math import sqrt\n", + "#calculate the distance required\n", + "#A line of sight radio link at freq 6GHz with seperation 40 km betn antennas\n", + "#given\n", + "f=6.;d1=10.;d2=30;#obstacle located at 10 km\n", + "#calculations\n", + "#Determination of dist R to clear obstacle \n", + "R=10.4*sqrt((d1*d2)/(f*(d1+d2)));\n", + "#results\n", + "print 'The distance by which beam must clear the obstacle is',round(R,2),'m'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 3 : pg 679" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The power delivered to the Rx is -62.03 dBm\n" + ] + } + ], + "source": [ + " \n", + "# page no 679\n", + "# prob no 18_3\n", + "#calculate the power delivered\n", + "from math import log10\n", + "#given\n", + "#A transmitter and receiver at 6GHz seperated by 40km with o/p power 2 W\n", + "f = 6 * 10 ** 9\n", + "d = 40.\n", + "Pt = 2# power in watt\n", + "#transmitting antenna gain Gt=20dBi,receiving antenna Gr=25dBi\n", + "Gt = 20\n", + "Gr = 25\n", + "f_mhz = 6000#f=6000 MHz\n", + "#calculations\n", + "Pr_Pt_dB = (Gt + Gr) - (32.44 + (20 * log10(d)) + (20 * log10(f_mhz)))\n", + "Pt_dBm = 10 * log10(Pt / 10 ** -3)\n", + "Pr_dBm = Pt_dBm + Pr_Pt_dB\n", + "#results\n", + "print 'The power delivered to the Rx is',round(Pr_dBm,2),'dBm'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4 : pg 680" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Noise temperature is 120.0 K\n" + ] + } + ], + "source": [ + " \n", + "# page no 680\n", + "#calculate the noise temperature\n", + "# prob no 18_4\n", + "#given\n", + "T_sky = 120.# Sky temp expressed in K\n", + "L_dB = 2# antenna feedline loss\n", + "#calculations\n", + "L = 10 ** (L_dB / 10)\n", + "# the noise temp is given as\n", + "Ta = ((L - 1) * 290 + T_sky) / L\n", + "#results\n", + "print 'Noise temperature is',Ta,'K'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 5 : pg 681" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The equivalent noise temperature 169.619 K\n" + ] + } + ], + "source": [ + " \n", + "# page no 681\n", + "# prob no 18.5\n", + "#calculate the equivalent noise temperature\n", + "#given\n", + "NF_dB = 2\n", + "#calculations\n", + "NF_power = 10 ** (NF_dB / 10.)\n", + "T_eq = 290. * (NF_power - 1)\n", + "#results\n", + "print 'The equivalent noise temperature',round(T_eq,3),'K'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 6 : pg 681" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The noise power is 9.6876e-14 W\n", + "The thermal noise power is -100.138 dBm\n" + ] + } + ], + "source": [ + " \n", + "# page no 681\n", + "# prob no 18.6\n", + "# refer example no 18.4 and 18.5\n", + "#calculate the noise power in both cases\n", + "from math import log10\n", + "#given\n", + "# The antenna and feedline combination from ex 18.4 is used with the Rx from ex\n", + "# 18.5\n", + "Ta = 182.# noise temp of the antenna and feedline combination expressed in K\n", + "Teq = 169.# noise temperature of the Rx\n", + "B = 20. * 10 ** 6# BW of the receiver\n", + "#calculations\n", + "Tn_sys = Ta + Teq#Noise temp for the system\n", + "k = 1.38 * 10 ** -23#Boltzmann constant\n", + "# Noise power of the system is given as\n", + "Pn = k * Tn_sys * B# where k is Boltzmann constant\n", + "Pn_dBm = 10 * log10(Pn / 10 ** -3)\n", + "#results\n", + "print 'The noise power is',Pn,'W'\n", + "print 'The thermal noise power is',round(Pn_dBm,3),'dBm'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 7 : pg 682" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Carrier to noise ratio is 38.0 dB\n" + ] + } + ], + "source": [ + " \n", + "# page no 682\n", + "# prob no 18.7\n", + "#calculate the carrier to noise ratio\n", + "# refer ex no 18.3 and 18.6\n", + "#given\n", + "Pr_dBm = -62.#power at the receiver in dBm\n", + "Pn_dBm = -100.#thermal noise power in dBm\n", + "#calculations\n", + "# carrier to noise ratio in dB is given as\n", + "C_N = Pr_dBm - Pn_dBm\n", + "#results\n", + "print 'Carrier to noise ratio is',C_N,'dB'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8 : pg 683" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy per bit to noise density ratio is 27.14 dB\n" + ] + } + ], + "source": [ + " \n", + "# page no 683\n", + "# prob no 18.8\n", + "#calculate the energy per bit to noise density ratio\n", + "# refer ex 18.7\n", + "from math import log10\n", + "#given\n", + "fb = 40 * 10 ** 6# bit rate in bps\n", + "Pr_dBm = -62#power at the receiver in dBm\n", + "Pr = 10 ** (Pr_dBm / 10) * 10 ** -3# power at the receiver in W\n", + "Eb = Pr / fb# the energy per bit in J\n", + "k = 1.38 * 10 ** -23#Boltzmann constant\n", + "T = 350.\n", + "#calculations\n", + "# the noise power density is\n", + "No = k * T\n", + "# Energy per bit to noise density ratio in dB is\n", + "Eb_No = 10 * log10(Eb / No)\n", + "#results\n", + "print 'Energy per bit to noise density ratio is ',round(Eb_No,3),'dB'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 9 : pg 686" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The local oscillator freq is 6800.0 MHz\n" + ] + } + ], + "source": [ + " \n", + "# page no 686\n", + "# prob no 18.9\n", + "# refer fig 18.7(b)\n", + "#calculate the local oscillator frequency\n", + "#given\n", + "#This is the standard superheterodyne receiver\n", + "fc=6870.;# the received carrier freq in MHz\n", + "IF=70.;# IF in MHz\n", + "#calculations\n", + "# The local oscillator freq is given as\n", + "f_lo=fc-IF;\n", + "#results\n", + "print 'The local oscillator freq is ',f_lo,'MHz'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10 : pg 688" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The freq of shift oscillator is 160.0 MHz\n", + "The local oscillator freq is 6640.0 MHz\n", + "O/P of Mixer 3 is 6800.0 MHz\n" + ] + } + ], + "source": [ + " \n", + "# page no 688\n", + "# prob no 18.10\n", + "# refer fig 18.9a)\n", + "#calculate the freq shift in all cases\n", + "#given\n", + "fc_r = 6870.# carrier freq of received signal in MHz\n", + "fc_t = 6710.#carrier freq of transmitted signal in MHz\n", + "IF = 70.#in MHz\n", + "#calculations and results\n", + "# the freq of shift oscillator is\n", + "fso = fc_r - fc_t\n", + "print 'The freq of shift oscillator is ',fso,'MHz'\n", + "#the local oscillator freq is given as\n", + "flo = fc_t - IF\n", + "print 'The local oscillator freq is ',flo,'MHz'\n", + "#from fig, mixer 3 will produce an o/p as\n", + "op_mix3 = flo + fso\n", + "print 'O/P of Mixer 3 is',op_mix3,'MHz'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 11 : pg 690" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The number of bits per symbol are 4.0 bits\n", + "The baud rate is 22.631 Mbaud\n" + ] + } + ], + "source": [ + " \n", + "# page no 690\n", + "# prob no 18.11\n", + "#calculate the baud rate and bits per symbol\n", + "#given\n", + "from math import log\n", + "# A typical microwave digital radio system uses 16-QAM.\n", + "fb = 90.524#bit rate expressesd in Mbps\n", + "n = 16# for 16-QAM system\n", + "#calculations and results\n", + "#part a) calculation of no of bits per symbol\n", + "m = log(n) / log(2)\n", + "print 'The number of bits per symbol are',m,'bits'\n", + "# part b) calclation of baud rate\n", + "# baud rate is 1/4th of the bit rate\n", + "baud = fb / 4\n", + "print 'The baud rate is',baud,'Mbaud'" + ] + } + ], + "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 +} |