diff options
Diffstat (limited to 'Electronics_Devices_and_Circuits_by_G_S_N_Raju/10-Feedback_Amplifier.ipynb')
-rw-r--r-- | Electronics_Devices_and_Circuits_by_G_S_N_Raju/10-Feedback_Amplifier.ipynb | 364 |
1 files changed, 364 insertions, 0 deletions
diff --git a/Electronics_Devices_and_Circuits_by_G_S_N_Raju/10-Feedback_Amplifier.ipynb b/Electronics_Devices_and_Circuits_by_G_S_N_Raju/10-Feedback_Amplifier.ipynb new file mode 100644 index 0000000..0eb3243 --- /dev/null +++ b/Electronics_Devices_and_Circuits_by_G_S_N_Raju/10-Feedback_Amplifier.ipynb @@ -0,0 +1,364 @@ +{ +"cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 10: Feedback Amplifier" + ] + }, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10.10: Voltage_and_input_and_output_resistance.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"//Ex10_10\n", +"clc\n", +"//parameters of emitter follower circuit:\n", +"hie = 1.1*10^3//input resistance\n", +"hfe = 80//current gain\n", +"hoe = 2*10^-5//output conductance\n", +"Re = 2.2*10^3//emitter resistance\n", +"disp('hie = '+string(hie)+'ohm')\n", +"disp('hfe = '+string(hfe))\n", +"disp('hoe = '+string(hoe)+'mho')\n", +"disp('Re = '+string(Re)+'ohm')\n", +"gm = hfe/hie\n", +"Rif = hie*(1+gm*Re)//input resistance with feedback\n", +"disp('Rif = hie*(1+gm*Re) = '+string(Rif)+'ohm')\n", +"Rof = hie/(1+hfe)//output resistance with feedback\n", +"disp('Rof = hie/(1+hfe) = '+string(Rof)+'ohm')\n", +"Avf = gm*Re/(1+gm*Re)//voltage gain with negative feedback\n", +"disp('Avf = gm*Re/(1+gm*Re) = '+string(Avf))" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10.1: Close_loop_gai.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"//Ex10_1\n", +"clc\n", +"Av = 80//voltage gain\n", +"beta = 0.001//feedback ratio\n", +"disp('Av = '+string(Av))\n", +"disp('beta = '+string(beta))\n", +"Avf = Av/(1+beta*Av)//gain with negative feedback\n", +"disp('Avf = Av/(1+beta*Av) = '+string(Avf))" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10.2: Close_loop_gain_and_bandwidth.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"//Ex10_2\n", +"clc\n", +"Av = 50//voltage gain\n", +"beta = 0.01//feedback ratio\n", +"BW = 100*10^3//bandwidth\n", +"disp('Av = '+string(Av))\n", +"disp('beta = '+string(beta))\n", +"disp('Bandwidth = '+string(BW)+'Hz')\n", +"Avf = Av/(1+beta*Av)//gain with negative feedback\n", +"disp('Avf = Av/(1+beta*Av) = '+string(Avf))\n", +"BWf = BW*(1+beta*Av)//bandwidth with negative feedback\n", +"disp('(B.W)f = '+string(BWf)+'Hz')\n", +"\n", +"\n", +"// note : using variable 'BW' instad of 'B.W' ... as, if using B.W the software takes it as a function.\n", +"// similarly using 'BWf' instead of (B.W)f." + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10.3: Feedback_with_reduced_distortio.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"//Ex10_3\n", +"clc\n", +"Av = 200// voltage gain\n", +"D = 0.05// harmonic distortion in amplifier\n", +"Df = 0.02//final reduced distortion\n", +"beta = (D/Df-1)/Av//feedback gain\n", +"disp('Av = '+string(Av))\n", +"disp('D = '+string(D))\n", +"disp('Df = '+string(Df))\n", +"disp('beta = (D/Df - 1)/Av = '+string(beta))\n", +"disp('beta = '+string(beta*100)+'%')" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10.4: Change_in_close_loop_gain.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"//Ex10_4\n", +"clc\n", +"Av1 = 100//initial voltage gain\n", +"beta = 0.001//feedback ratio\n", +"disp('Av1 = '+string(Av1))\n", +"disp('beta = '+string(beta))\n", +"Af1 = Av1/(1+beta*Av1)//initial gain with negative feedback\n", +"disp('Af1 = Av1/(1+beta*Av1) = '+string(Af1))\n", +"\n", +"Av2 = 150//final voltage gain\n", +"beta = 0.001//feedback ratio\n", +"disp('Av2 = '+string(Av2))\n", +"disp('beta = '+string(beta))\n", +"Af2 = Av2/(1+beta*Av2)//final gain with negative feedback\n", +"disp('Af2 = Av2/(1+beta*Av2) = '+string(Af2))\n", +"\n", +"change_in_gain = Af2 - Af1//required change in gain\n", +"disp('change in gain required = Af2 - Af1 = '+string(change_in_gain))\n", +"delta_Avf = change_in_gain/Af1\n", +"disp('delta_Avf = Af2-Af1/Af1 = '+string(delta_Avf)+'%')" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10.5: Open_loop_gain_and_feedback_ratio.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"//Ex10_5\n", +"clc\n", +"Av = 40//voltage gain in decibles\n", +"disp('Av = '+string(Av)+'dB')\n", +"Av = 10^(Av/20)//voltage gain in V/V\n", +"disp('Av = '+string(Av))\n", +"Avf = 20//voltage gain with negative feedback in decibles\n", +"disp('Avf = '+string(Avf)+'dB')\n", +"Avf = 10^(Avf/20)//voltage gain with negative feedback in V/V\n", +"disp('Avf = '+string(Avf))\n", +"beta = ((Av/Avf)-1)/Av//feedback ratio\n", +"disp('beta = (Av/Avf - 1)/Av = '+string(beta))\n", +"\n", +"\n", +"\n", +"// note: solution in the textbook for the above problem is wrong." + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10.6: Close_loop_and_bandwidth.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"//Ex10_6\n", +"clc\n", +"Av = 100//voltage gain\n", +"beta = 0.05//feedback ratio\n", +"BW = 400*10^3 //bandwidth\n", +"disp('Av = '+string(Av))\n", +"disp('beta = '+string(beta))\n", +"disp('B.W. = '+string(BW)+'Hz')\n", +"Af = Av/(1+beta*Av)//gain with negative feedback\n", +"disp('Af = Av/(1+beta*Av) = '+string(Af))\n", +"BWf = BW*(1+beta*Av)//bandwidth with negative feedback\n", +"disp('(B.W)f = '+string(BWf)+'Hz')\n", +"\n", +"\n", +"// note : using variable 'BW' instad of 'B.W' ... as, if using B.W the software takes it as a function.\n", +"// similarly using 'BWf' instead of (B.W)f." + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10.7: Voltage_gain_and_feedback_ratio.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"//Ex10_7\n", +"clc\n", +"Po = 100//output power\n", +"RL = 10//load resistance\n", +"disp('Po = '+string(Po)+'W')\n", +"disp('RL = '+string(RL)+'ohm')\n", +"vo = (RL*Po)^0.5//output voltage\n", +"vi = 2//input voltage\n", +"disp('vo = (Rl*Po)^0.5 = '+string(vo)+'V')\n", +"disp('vi = '+string(vi)+'V')\n", +"Av = vo/vi//voltage gain\n", +"disp('Av = vo/vi = '+string(Av))\n", +"D = 0.04// harmonic distortion in amplifier\n", +"Df = 0.0002//distortion after feedback\n", +"beta = (D/Df-1)/Av//feedback gain\n", +"disp('D = '+string(D))\n", +"disp('Df = '+string(Df))\n", +"disp('beta = (D/Df - 1)/Av = '+string(beta))" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10.8: Feedback_ratio.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"//Ex10_8\n", +"clc\n", +"BW = 500*10^3//bandwidth\n", +"A = 200//gain of amplifier\n", +"BWf = 2*10^6//bandwidth with negative feedback\n", +"disp('B.W = '+string(BW)+'HZ')\n", +"disp('A = '+string(A))\n", +"disp('(B.W)f = '+string(BWf)+'Hz')\n", +"beta = ((BWf/BW)-1)/A//feedback ratio\n", +"disp('beta = ((B.W)f/B.W - 1)/A = '+string(beta))\n", +"disp('beta = '+string(beta*100)+'%')\n", +"\n", +"// note : using variable 'BW' instad of 'B.W' ... as, if using B.W the software takes it as a function.\n", +"// similarly using 'BWf' instead of (B.W)f." + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10.9: Gain_and_3dB_frequency.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"//Ex10_9\n", +"clc\n", +"A = 150//gain of amplifier\n", +"beta = 0.05//feedback ratio\n", +"disp('A = '+string(A))\n", +"disp('beta = '+string(beta))\n", +"Af = A/(1+beta*A)//gain with negative feedback\n", +"disp('Af = A/(1+beta*A) = '+string(Af))\n", +"fL = 20*10^3//lower 3dB frequency\n", +"fU = 160*10^3//upper 3dB frequency\n", +"disp('fL = '+string(fL)+'Hz')\n", +"disp('fU = '+string(fU)+'Hz')\n", +"fLf = fL/(1+beta*A)//lower 3dB gain with negative feedback\n", +"disp('fLf = fL/(1+beta*A) = '+string(fLf)+'Hz')\n", +"fUf = fU*(1+beta*A)//upper 3dB gain with negative feedback\n", +"disp('fUf = fU*(1+beta*A) = '+string(fUf)+'Hz')" + ] + } +], +"metadata": { + "kernelspec": { + "display_name": "Scilab", + "language": "scilab", + "name": "scilab" + }, + "language_info": { + "file_extension": ".sce", + "help_links": [ + { + "text": "MetaKernel Magics", + "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md" + } + ], + "mimetype": "text/x-octave", + "name": "scilab", + "version": "0.7.1" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} |