diff options
Diffstat (limited to 'Basic_Electronics_by_R_D_S_Samuel/4-Other_Devices.ipynb')
-rw-r--r-- | Basic_Electronics_by_R_D_S_Samuel/4-Other_Devices.ipynb | 576 |
1 files changed, 576 insertions, 0 deletions
diff --git a/Basic_Electronics_by_R_D_S_Samuel/4-Other_Devices.ipynb b/Basic_Electronics_by_R_D_S_Samuel/4-Other_Devices.ipynb new file mode 100644 index 0000000..d7a37e7 --- /dev/null +++ b/Basic_Electronics_by_R_D_S_Samuel/4-Other_Devices.ipynb @@ -0,0 +1,576 @@ +{ +"cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 4: Other Devices" + ] + }, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_18: Calculate_input_votage_that_turns_SCR_ON_and_supply_voltage_that_turns_OFF.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.18')\n", +"printf('\n')\n", +"disp('Calculate input voltage that turns SCR ON, & find supply voltage that turns SCR OFF if holding current is 10mA')\n", +"printf('Given\n')\n", +"printf('Resistance are in ohms \nCurrent are in Ampere \n Voltage sources are in volt\n')\n", +"//gate trigger voltage\n", +"Vgt=0.75\n", +"//trigger current\n", +"Igt=5*10^-3\n", +"//gate resistance\n", +"Rg=1000\n", +"//load resistance\n", +"RL=100\n", +"//diode forward voltage\n", +"Vf=0.7\n", +"//holding current\n", +"Ih=10*10^-3\n", +"//minimum input voltage to trigger the SCR is\n", +"Vin=Vgt+(Igt*Rg)\n", +"//The supply voltage that turns OFF the SCR is\n", +"VCC=Vf+(Ih*RL)\n", +"printf('minimum input voltage to trigger the SCR is %f volt \n',Vin)\n", +"printf('The supply voltage that turns OFF the SCR is %f volt \n',VCC)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_28: Calculate_the_values_of_R1_R2_and_Rp_of_SCR_circuit.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.28')\n", +"printf('\n')\n", +"disp('Calculate suitable values of R1,Rp,R2 for SCR in circuit Fig 4.12')\n", +"printf('Given\n')\n", +"printf('Resistance are in ohms \nCurrent are in Ampere \n Voltage sources are in volt\n')\n", +"//gate current\n", +"Ig=250*10^-6\n", +"//gate trigger voltage\n", +"Vgt=0.75\n", +"Vd=0.7\n", +"//supply voltage\n", +"Vs=40\n", +"//peak value of supply voltage\n", +"Vm=sqrt(2)*Vs\n", +"//supply voltage at angle 10deg\n", +"Vs1=Vm*sin(10*%pi/180)\n", +"//supply voltage at angle 90deg\n", +"Vs2=Vm*sin(90*%pi/180)\n", +"Vt=Vd+Vgt\n", +"//to trigger SCR at 10deg moving contact of Rp is at top\n", +"//from circuit\n", +"VR1=Vs1-Vt\n", +"//choose I1min>>Ig\n", +"I1min=1.5*10^-3\n", +"R1=VR1/I1min\n", +"//since Ig<<I1min, current through Rp & R2 is I1min\n", +"RpPLUSR2=Vt/I1min\n", +"//to trigger SCR at 90deg moving contact of Rp is at bottom\n", +"VR2=Vt\n", +"I1=Vs2/(R1+RpPLUSR2)\n", +"R2=Vt/I1\n", +"Rp=RpPLUSR2-R2\n", +"printf('Resistance R1 is %f ohm \n',R1)\n", +"printf('Resistance R2 is %f ohm \n',R2)\n", +"printf('Resistance Rp is %f ohm \n',Rp)\n", +"\n", +"" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_29: Calculate_the_values_of_R1_R2_and_Rp_of_SCR_circuit.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.29')\n", +"printf('\n')\n", +"disp('Calculate suitable values of R1,Rp,R2 for SCR in circuit Fig 4.12')\n", +"printf('Given\n')\n", +"printf('Resistance are in ohms \nCurrent are in Ampere \n Voltage sources are in volt\n')\n", +"//gate current\n", +"Ig=600*10^-6\n", +"//gate trigger voltage\n", +"Vg=0.7\n", +"Vd=0.7\n", +"//supply voltage\n", +"Vs=230\n", +"//peak value of supply voltage\n", +"Vm=sqrt(2)*Vs\n", +"//supply voltage at angle 8deg\n", +"Vs1=Vm*sin(8*%pi/180)\n", +"//supply voltage at angle 90deg\n", +"Vs2=Vm*sin(90*%pi/180)\n", +"//to trigger SCR at 10deg moving contact of Rp is at top\n", +"//from circuit\n", +"VR1=Vs1-Vg\n", +"//choose I1min>>Ig\n", +"I1min=6*10^-3\n", +"R1=VR1/I1min\n", +"//since Ig<<I1min, current through Rp & R2 is I1min\n", +"RpPLUSR2=Vg/I1min\n", +"//to trigger SCR at 90deg moving contact of Rp is at bottom\n", +"VR2=Vt\n", +"I1=Vs2/(R1+RpPLUSR2)\n", +"R2=Vg/I1\n", +"Rp=RpPLUSR2-R2\n", +"printf('Resistance R1 is %f ohm \n',R1)\n", +"printf('Resistance R2 is %f ohm \n',R2)\n", +"printf('Resistance Rp is %f ohm \n',Rp)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_40: EX4_4_40.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.40')\n", +"printf('\n')\n", +"disp('Design the SCR crowbar circuit to protect the load from voltage levels greater than 12V')\n", +"printf('Given\n')\n", +"//gate trigger voltage\n", +"Vgt=0.75\n", +"//load voltage maximum\n", +"VLmax=12\n", +"//Zener voltage is\n", +"Vz=VLmax-Vgt\n", +"//assume zener current(mini) as\n", +"Izmin=10^-3\n", +"R=Vgt/Izmin\n", +"printf('zener voltage \n%f volt\n',Vz)\n", +"printf('Resistance \n%f ohm\n',R)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_41: EX4_4_41.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.41')\n", +"printf('\n')\n", +"disp('Design the SCR crowbar circuit to protect the load from voltage levels greater than 7.5V')\n", +"printf('Given\n')\n", +"//gate trigger voltage\n", +"Vgt=0.7\n", +"//load voltage maximum\n", +"VLmax=7.5\n", +"//Zener voltage is\n", +"Vz=VLmax-Vgt\n", +"//assume zener current(mini) as\n", +"Izmin=10^-3\n", +"R=Vgt/Izmin\n", +"printf('zener voltage \n%f volt\n',Vz)\n", +"printf('Resistance \n%f ohm\n',R)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_49: Determine_the_minimum_and_maximum_triggering_voltage_for_a_UJT.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.49')\n", +"printf('\n')\n", +"disp('Determine the minimum & maximum triggering voltage for a UJT')\n", +"printf('Given\n')\n", +"Vbb=20\n", +"//intrinsic ratios\n", +"nmin=0.6\n", +"nmax=0.8\n", +"V=0.7\n", +"//minimum triggering voltage is\n", +"Vpmini=nmin*Vbb+Vd\n", +"//maximum triggering voltage is\n", +"Vpmax=nmax*Vbb+Vd\n", +"printf('Minimum triggering Voltage \n%f volt\n',Vpmini)\n", +"printf('Maximum triggering Voltage \n%f volt\n',Vpmax)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_51: find_maximum_oscillating_frequency_of_UJT.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.51')\n", +"printf('\n')\n", +"disp('Calculate minimum & maximum values of Re for the relaxation oscillator & also find maximum oscillating frequency')\n", +"printf('Given\n')\n", +"Vbb=15\n", +"//the parameters of UJT\n", +"Ip=10^-6\n", +"Iv=2.5*10^-3\n", +"Vv=2.5\n", +"n=0.7\n", +"PRe=20*10^3\n", +"C=10^-6\n", +"Vp=12\n", +"Vd=0.7\n", +"Vp1=(n*Vbb)+Vd\n", +"//minimum Re\n", +"Remin=(Vbb-Vv)/Iv\n", +"//maximum Re\n", +"Remax=(Vbb-Vp1)/Ip\n", +"//to find maximum oscillating frequency\n", +"T=PRe*C*log((Vbb-Vv)/(Vbb-Vp))\n", +"f=1/T\n", +"printf('maximum Re \n%f ohm\n',Remax)\n", +"printf('minimum Re \n%f ohm\n',Remin)\n", +"printf('maximum oscillating frequency \n%f hz \n',f)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_52: Determine_the_minimum_and_maximum_values_of_VEB1_for_a_UJT.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.52')\n", +"printf('\n')\n", +"disp('Determine the minimum & maximum values of VEB1 for a UJT')\n", +"printf('Given\n')\n", +"Vbb=15\n", +"//intrinsic ratios\n", +"nmin=0.68\n", +"nmax=0.82\n", +"V=0.7\n", +"//mini triggering voltage is\n", +"Vpmini=nmin*Vbb+Vd\n", +"//max triggering voltage is\n", +"Vpmax=nmax*Vbb+Vd\n", +"printf('minimum triggering voltage \n%f volt\n',Vpmini)\n", +"printf('maximum triggering voltage \n%f volt\n',Vpmax)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_53: find_maximum_oscillating_frequency_of_UJT.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.53')\n", +"printf('\n')\n", +"disp('find maximum oscillating frequency')\n", +"Vbb=20\n", +"//the parameters of UJT\n", +"Ip=10^-6\n", +"Iv=10*10^-3\n", +"Vv=3.5\n", +"n=0.75\n", +"PRe=4.7*10^3\n", +"C=0.5*10^-6\n", +"Vd=0.7\n", +"Vp1=(n*Vbb)+Vd\n", +"//to find maximum oscillating frequency\n", +"T=PRe*C*log((Vbb-Vv)/(Vbb-Vp1))\n", +"f=1/T\n", +"printf('Oscillator frequency \n%f hz\n',f)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_74: plot_the_drain_characteristics_of_JFET.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.74')\n", +"printf('\n')\n", +"disp('plot the drain characteristics of JFET')\n", +"//given\n", +"Vds=[0 1 2 2.5 3 4 6 8]\n", +"Id=[0 2 4.5 5.3 5.5 5.5 5.5 5.5]\n", +"plot2d(Vds,Id)\n", +"xlabel('Vds(V)')\n", +"ylabel('Id(mA)')\n", +"xtitle('Plot of Vds V/s Id')" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_77: calculate_Vds_at_these_gate_source_voltages_and_circuit_voltage_gain_of_JFET.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.77')\n", +"printf('\n')\n", +"disp('calculate Vds at these gate_source voltages & circuit voltage gain of JFET')\n", +"printf('Given\n')\n", +"//drain current\n", +"Id=9*10^-3\n", +"//gate to source voltage\n", +"Vgs=(-2)\n", +"//when Vgs is reduced to -1V then Id is 12mA\n", +"Vgs1=-1\n", +"Id1=12*10^-3\n", +"//from circuit (fig 4.49)\n", +"Rd=1.5*10^3\n", +"Vdd=20\n", +"//to find Vds\n", +"//when Vgs=-2\n", +"Vds=Vdd-(Id*Rd)\n", +"//when Vgs=-1\n", +"Vds1=Vdd-(Id1*Rd)\n", +"//change in input voltage Vgs is\n", +"delVi=Vgs1-Vgs\n", +"//change in output voltage is\n", +"delVo=Vds-Vds1\n", +"//Voltage gain \n", +"Av=delVo/delVi\n", +"printf('The value of Vds at gate-source voltages is \n%f volt\n',Vds)\n", +"printf('The circuit voltage gain \n%f\n',Av)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_78: EX4_4_78.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.78')\n", +"printf('\n')\n", +"disp('calculate the minimum & maximum variation in the drain source voltage Vds produced by a change of 0.1V & circuit voltage gain of JFET')\n", +"printf('Given\n')\n", +"//transconductance\n", +"gmmax=5000*10^-6\n", +"gmmin=1500*10^-6\n", +"//change in gate to source voltage\n", +"delVgs=0.1\n", +"Rd=1.5*10^3\n", +"//the maximum change in drain current\n", +"delIdmax=gmmax*delVgs\n", +"delVdsmax=delIdmax*Rd\n", +"//voltage gain\n", +"Av1=delVdsmax/delVgs\n", +"//the minimum change in drain current\n", +"delIdmin=gmmin*delVgs\n", +"delVdsmin=delIdmin*Rd\n", +"//voltage gain\n", +"Av2=delVdsmin/delVgs\n", +"printf('maximum change in drain voltage is %f volt\n',delVdsmax)\n", +"printf('maximum voltage gain %f \n',Av1)\n", +"printf('minimum change in drain voltage is %f volt\n',delVdsmin)\n", +"printf('minimum voltage gain %f \n',Av2)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_79: calculate_transconductance_of_JFET.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.79')\n", +"printf('\n')\n", +"disp('calculate transconductance of JFET')\n", +"printf('Given\n')\n", +"//voltage gain \n", +"Av=20\n", +"//drain resistance\n", +"Rd=3.3*10^3\n", +"//transconductance\n", +"gm=Av/Rd\n", +"printf('Transconductance of JFET \n%f (1/ohm)\n',gm)" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4.4_80: determine_the_suitable_value_of_load_resistor_Rd_of_JFET.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"clc\n", +"disp('Example 4.80')\n", +"printf('\n')\n", +"disp('determine the suitable value of load resistor Rd of JFET')\n", +"printf('Given\n')\n", +"//voltage gain\n", +"Av=10\n", +"//transconductance\n", +"gm=4500*10^-6\n", +"//load resistance\n", +"Rd=Av/gm\n", +"printf('load resistance \n%f ohm \n',Rd)" + ] + } +], +"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 +} |