diff options
Diffstat (limited to 'Electronic_Principles_/Chapter_20_New.ipynb')
-rw-r--r-- | Electronic_Principles_/Chapter_20_New.ipynb | 479 |
1 files changed, 479 insertions, 0 deletions
diff --git a/Electronic_Principles_/Chapter_20_New.ipynb b/Electronic_Principles_/Chapter_20_New.ipynb new file mode 100644 index 00000000..1b58e3b8 --- /dev/null +++ b/Electronic_Principles_/Chapter_20_New.ipynb @@ -0,0 +1,479 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "CHAPTER 20 LINEAR OP-AMP CIRCUITS"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20-1, Page 741"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Example 20.1.py\n",
+ "#In figure 20-6, R1=100KOhm, Rf=100KOhm, R2=1KOhm, what is the voltage gain when JFET is On & off?\n",
+ "\n",
+ "#Variable declaration\n",
+ "Rf=100.0 #feedback path resistance Rf (KOhm)\n",
+ "R1=100.0 #inverting input resistance R1(KOhm)\n",
+ "R2=1.0 #inverting input & drain resistance R2(KOhm)\n",
+ "\n",
+ "#Calculation\n",
+ "Av1=(Rf/(R1**-1+R2**-1)**-1)+1 #maximum voltage gain\n",
+ "Av2=(Rf/R1)+1 #minimum voltage gain\n",
+ "\n",
+ "#Result\n",
+ "print 'maximum voltage gain = ',Av1\n",
+ "print 'minimum voltage gain = ',Av2"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "maximum voltage gain = 102.0\n",
+ "minimum voltage gain = 2.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20-2, Page 747"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Example 20.2.py\n",
+ "#In figure 20-10. R1=1.2KOhm, R2=91KOhm, what are the max & min Av?\n",
+ "\n",
+ "#Variable declaration\n",
+ "R1=1.2 #inverting input resistance R1(KOhm)\n",
+ "R2=91.0 #feedback resistance R2(KOhm)\n",
+ "\n",
+ "#Calculation\n",
+ "Av1=-R2/R1 #maximum voltage gain\n",
+ "Av2=0 #minimum voltage gain\n",
+ "\n",
+ "#Result\n",
+ "print 'maximum voltage gain = ',round(Av1,2)\n",
+ "print 'minimum voltage gain = ',Av2"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "maximum voltage gain = -75.83\n",
+ "minimum voltage gain = 0\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20-3, Page 747"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Example 20.3.py\n",
+ "#If R=1.5KOhm, nR=7.5KOhm in figure 20-10, what is the maximum positive voltage gain & other fixed resistance?\n",
+ "\n",
+ "#Variable declaration\n",
+ "R=1.5 #inverting input resistance R1(KOhm)\n",
+ "nR=7.5 #feedback resistance(KOhm)\n",
+ "\n",
+ "#Calculation\n",
+ "n=nR/R #max. limit of voltage gain \n",
+ "rf=nR/(n-1) #fixed resistor (KOhm)\n",
+ "\n",
+ "#Result\n",
+ "print 'maximum positive voltage gain = ',n\n",
+ "print 'other fixed resistor = ',rf,'KOhm'"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "maximum positive voltage gain = 5.0\n",
+ "other fixed resistor = 1.875 KOhm\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20-4, Page 757"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Example 20.4.py\n",
+ "#In figure 20-18 R1=1KOhm, R2=100KOhm, R=10KOhm. what is differential voltage gain & common mode voltage gain? \n",
+ "#resistance tolerance is 0.01% ,Vin=10mV, Vin(CM)=20V, what are the values of differential & common mode output signals?\n",
+ "\n",
+ "#Variable declaration\n",
+ "R1=1.0 #inverting input resistance R1(KOhm)\n",
+ "R2=100.0 #feedback resistance R2(KOhm)\n",
+ "R=10.0 #resistor of opamp in seconnd stage(KOhm)\n",
+ "Vin=10*10**-3 #input voltage(V)\n",
+ "Vin_CM=10 #common mode input voltage(V)\n",
+ "T=0.0001 #tolerance of resistor \n",
+ "\n",
+ "#Calculation\n",
+ "Av=(R2/R1)+1 #preamp voltage gain\n",
+ "Av_CM=2*T #common mode voltage gain of 2nd stage\n",
+ "Vout=-Av*Vin #output siganl voltage(V)\n",
+ "Vout_CM=Av_CM*Vin_CM #output siganl voltage for common mode signal(V)\n",
+ "\n",
+ "#Result\n",
+ "print 'output siganl voltage for common mode signal Vout(CM) = ',Vout_CM,'V'\n",
+ "print 'output siganl voltage Vout = ',Vout,'V'"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "output siganl voltage for common mode signal Vout(CM) = 0.002 V\n",
+ "output siganl voltage Vout = -1.01 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20-5, Page 759"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Example 20.5.py\n",
+ "#In figure 20-22, R1=1KOhm, R2=2KOhm, R3=3KOhm, R4=4KOhm, R5=5KOhm ,Rf=6KOhm. what is voltage gain of each channel?\n",
+ "\n",
+ "#Variable declaration\n",
+ "Rf=6.0 #feedback path resistance Rf (KOhm)\n",
+ "R1=1.0 #inverting input resistance R1(KOhm)\n",
+ "R2=2.0 #inverting input resistance R2(KOhm)\n",
+ "R3=3.0 #non-inverting input resistance R3(KOhm)\n",
+ "R4=4.0 #non-inverting input resistance R4(KOhm)\n",
+ "R5=5.0 #non-inverting input resistance R5(KOhm)\n",
+ "\n",
+ "#Calculation\n",
+ "Av1=(-Rf/R1) #voltage gain1\n",
+ "Av2=(-Rf/R2) #voltage gain2\n",
+ "Av3=(1+(Rf/((R1**-1+R2**-1)**-1)))*(((R4**-1+R5**-1)**-1)/(R3+((R4**-1+R5**-1)**-1))) #voltage gain3\n",
+ "Av4=(1+(Rf/((R1**-1+R2**-1)**-1)))*(((R3**-1+R5**-1)**-1)/(R4+((R3**-1+R5**-1)**-1))) #voltage gain4\n",
+ "\n",
+ "#Result\n",
+ "print 'Voltage gain channel-1 Av1 = ',Av1\n",
+ "print 'Voltage gain channel-2 Av2 = ',Av2\n",
+ "print 'Voltage gain channel-3 Av3 = ',round(Av3,2)\n",
+ "print 'Voltage gain channel-4 Av4 = ',round(Av4,2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Voltage gain channel-1 Av1 = -6.0\n",
+ "Voltage gain channel-2 Av2 = -3.0\n",
+ "Voltage gain channel-3 Av3 = 4.26\n",
+ "Voltage gain channel-4 Av4 = 3.19\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20-6, Page 762"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Example 20.6.py\n",
+ "#In figure 20-25, D0=1,D1=0,D2=0, and D3=1. using Vref =5V, \n",
+ "#determine decimal equivalent of BIN and output voltage of converter.\n",
+ "\n",
+ "#Variable declaration \n",
+ "D0=1 #digital input0 (binary)\n",
+ "D1=0 #digital input1 (binary)\n",
+ "D2=0 #digital input2 (binary)\n",
+ "D3=1 #digital input3 (binary)\n",
+ "Vref=5 #reference voltage(V)\n",
+ "N=4 #no. of inputs\n",
+ "\n",
+ "#Calculation \n",
+ "BIN=(D0*2**0)+(D1*2**1)+(D2*2**2)+(D3*2**3) #decimal equivalent BIN\n",
+ "Vout=-((2*Vref*BIN)/2.0**N) #output voltage of converter(V)\n",
+ "\n",
+ "#Result\n",
+ "print 'decimal equivalent BIN = ',BIN\n",
+ "print 'output voltage of converter Vout = ',Vout,'V'"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "decimal equivalent BIN = 9\n",
+ "output voltage of converter Vout = -5.625 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20-7, Page 764"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Example 20.7.py\n",
+ "#In figure 20-27, R1=1KOhm, R2=51 KOhm, what is voltage gain & closed loop output impedance? \n",
+ "#what is shorted load current of circuit if each transistor has B = 125?\n",
+ "\n",
+ "#Variable declaration\n",
+ "R2=51 #feedback path resistance (KOhm)\n",
+ "R1=1 #inverting input resistance R1(KOhm)\n",
+ "Bdc=125 #current gain\n",
+ "Zout=75 #open loop output impedance(Ohm)\n",
+ "AVOL=100000 #741C voltage gain\n",
+ "\n",
+ "#Calculation\n",
+ "Av=-R2/R1 #closed loop voltage gain\n",
+ "B=R1/(R1+R2) #feedback fraction\n",
+ "Zout_CL=Zout/(1+(AVOL*B)) #closed loop output impedance(Ohm)\n",
+ "Isc=25.0/1000 #shorted current for 741C op-amp(A)\n",
+ "Imax=Bdc*Isc #maximum load current(A)\n",
+ "\n",
+ "#Result\n",
+ "print 'closed loop output impedance Zout(CL) = ',Zout_CL,'Ohm'\n",
+ "print 'maximum load current Imax = ',Imax,'A'"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "closed loop output impedance Zout(CL) = 75 Ohm\n",
+ "maximum load current Imax = 3.125 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20-8, Page 768"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Example 20.8.py\n",
+ "#if the current source of figure 20-28 has R=10KOhm, Vin =1 V, VCC=15V. what is output current? \n",
+ "#what is maximum load resistance for vin = 10V?\n",
+ "\n",
+ "#Variable declaration\n",
+ "Vin=1.0 #input voltage(V)\n",
+ "VCC=15 #supply voltage(V)\n",
+ "R=10 #inverting input resistance(KOhm)\n",
+ "Vin2=10.0 #larger input(V)\n",
+ "\n",
+ "#Calculation\n",
+ "iout=Vin/R #output current(mA)\n",
+ "RL_max=R*(VCC/Vin2-1) #Maximum load resistance(KOhm) \n",
+ "\n",
+ "#Result\n",
+ "print 'Output current iout = ',iout,'mA'\n",
+ "print 'Maximum load resistance RL(max) = ',RL_max,'KOhm'"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Output current iout = 0.1 mA\n",
+ "Maximum load resistance RL(max) = 5.0 KOhm\n"
+ ]
+ }
+ ],
+ "prompt_number": 25
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20-9, Page 768"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Example 20.9.py\n",
+ "#figure 20-31 has R=15KOhm, Vin =3 V, VCC=15V. what is output current? \n",
+ "#what is maximum load resistance for maximum Vin = 9V?\n",
+ "\n",
+ "#Variable declaration\n",
+ "Vin=3.0 #input voltage(V)\n",
+ "VCC=15 #supply voltage(V)\n",
+ "R=15 #inverting input resistance(KOhm)\n",
+ "Vin2=12.0 #larger input(V)\n",
+ "\n",
+ "#Calculation\n",
+ "iout=-Vin/R #output current(mA)\n",
+ "RL_max=(R/2.0)*(VCC/Vin2-1) #Maximum load resistance(KOhm) \n",
+ "\n",
+ "#Result\n",
+ "print 'Output current iout = ',iout,'mA'\n",
+ "print 'Maximum load resistance RL(max) = ',RL_max,'KOhm'"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Output current iout = -0.2 mA\n",
+ "Maximum load resistance RL(max) = 1.875 KOhm\n"
+ ]
+ }
+ ],
+ "prompt_number": 32
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20-10, Page 771"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Example 20.10.py\n",
+ "#If rds varies from 50 Ohm to 120 KOhm in figure 20-32, what is the maximum & minimum voltage gain?\n",
+ "\n",
+ "#Variable declaration\n",
+ "R2=47 #feedback path resistance (KOhm)\n",
+ "R1=1.0 #inverting input resistance R1(KOhm)\n",
+ "R3=100 #non-inverting input resistance R3(KOhm)\n",
+ "rds1=0.050 #ohmic resistance of JFET (KOhm)\n",
+ "rds2=120.0 #ohmic resistance of JFET (KOhm)\n",
+ "\n",
+ "#Calculation\n",
+ "Av1=((R2/R1)+1)*(rds1/(rds1+R3)) #minimum voltage gain\n",
+ "Av2=((R2/R1)+1)*(rds2/(rds2+R3)) #maximum voltage gain\n",
+ "\n",
+ "#Result\n",
+ "print 'Maximum voltage gain Av = ',round(Av2,2)\n",
+ "print 'Minimum voltage gain Av = ',round(Av1,3)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Maximum voltage gain Av = 26.18\n",
+ "Minimum voltage gain Av = 0.024\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [],
+ "language": "python",
+ "metadata": {},
+ "outputs": []
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file |