{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Chapter 4: Choppers" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.10: Calculate_average_load_voltage.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.10\n", "clc;\n", "Ton=25*10^-3;\n", "Toff=10*10^-3;\n", "V=230;\n", "VL=V*Ton/(Ton+Toff);\n", "printf('\nAverage value of Load voltage = %.3f V', VL)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.11: Find_maximum_minimum_and_average_load_current_and_load_voltage.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.11\n", "clc;\n", "V=100;\n", "R=0.5;\n", "L=1*10^-3;\n", "T=3*10^-3;\n", "Duty_cycle=0.3333;\n", "E=0;\n", "Imax=V/R*((1-exp(-Duty_cycle*T*R/L))/(1-exp(-T*R/L)))-E/R;\n", "printf('\nImax = %.2f A', Imax)\n", "Imin=V/R*((exp(Duty_cycle*T*R/L)-1)/(exp(T*R/L)-1))-E/R;\n", "printf('\nImin = %.1f A', Imin)\n", "IL_avg=(Imax+Imin)/2;\n", "printf('\nAverage Load current = %.1f A', IL_avg)\n", "Vavg=Duty_cycle*V;\n", "printf('\nAverage Load Voltage = %.2f V', Vavg)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.12: Find_maximum_minimum_and_average_output_voltage.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.12\n", "clc;\n", "V=100;\n", "R=0.2;\n", "L=0.8*10^-3;\n", "T=2.4*10^-3;\n", "Duty_cycle=1/2.4;\n", "E=0;\n", "Imax=V/R*((1-exp(-Duty_cycle*T*R/L))/(1-exp(-T*R/L)))-E/R;\n", "printf('\nImax = %.2f A', Imax)\n", "Imin=V/R*((exp(Duty_cycle*T*R/L)-1)/(exp(T*R/L)-1))-E/R;\n", "printf('\nImin = %.2f A', Imin)\n", "Vavg=Duty_cycle*V;\n", "printf('\nAverage output Voltage = %.2f V', Vavg)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.13: Calculate_the_series_inductance_in_the_circuit.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.13\n", "clc;\n", "V=500;\n", "f=400;\n", "I=10;\n", "L=V/(4*f*I);\n", "printf('Series inductance = %.5f H', L)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.14: Calculate_the_motor_speed_and_current_swing.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.14\n", "clc;\n", "Motor_output=300*735.5/1000;\n", "efficiency=0.9;\n", "Motor_input=Motor_output/efficiency;\n", "Vdc=800;\n", "Rated_current=Motor_input*1000/800;\n", "R=0.1;\n", "L=100*10^-3;\n", "T=1/400;\n", "emf=Vdc-Rated_current*0.1;\n", "Duty_cycle=0.2;\n", "emf_n=Duty_cycle*Vdc-Rated_current*0.1;\n", "N=900/(emf/emf_n);\n", "printf('\nSpeed of motor = %.2f rpm', N)\n", "dia=(Vdc-Duty_cycle*Vdc)/L*Duty_cycle*T;\n", "printf('\nCurrent swing = %.1f A', dia)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.15: Calculate_the_value_of_capacitance_and_inductance.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.15\n", "clc;\n", "Vc=200;\n", "Im=60;\n", "toff=15*10^-6;\n", "C1=toff*Im/Vc;\n", "C=5*10^-6*10^6;\n", "printf('\nCapacitance = %.0f uF', C)\n", "Ipc=Im*1.5-Im;\n", "L=C/(Ipc/Vc)^2*10^6;\n", "printf('\nInductance = %.1f uH', L)\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.16: Calculate_the_period_of_conduction_of_a_step_up_chopper.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.16\n", "clc;\n", "Vav=250;\n", "V=200;\n", "Toff=0.6*10^-3;\n", "Ton=(Vav/V)*Toff-Toff;\n", "printf('Period of conduction = %.5f sec', Ton)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.17: Calculate_the_period_of_conduction_of_a_step_up_chopper.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.16\n", "clc;\n", "Vav=250;\n", "V=150;\n", "Toff=1*10^-3;\n", "Ton=(Vav/V)*Toff-Toff;\n", "printf('Period of conduction = %.6f sec', Ton)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.1: Calculate_the_period_of_conduction_and_blocking.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.1\n", "clc;\n", "f=1000;\n", "T=1/f;\n", "Vav=150;\n", "V=230;\n", "Ton=(Vav/V)*T;\n", "printf('Period of conduction = %.6f sec', Ton)\n", "Toff=T-Ton;\n", "printf('\nPeriod of blocking = %.6f sec', Toff)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.2: Calculate_the_period_of_conduction_and_blocking.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.2\n", "clc;\n", "f=500;\n", "T=1/f;\n", "Vav=15*(0.06+0.03)+100;\n", "V=200;\n", "Ton=(Vav/V)*T;\n", "printf('Period of conduction = %.7f sec', Ton)\n", "Toff=T-Ton;\n", "printf('\nPeriod of blocking = %.7f sec', Toff)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.3: Calculate_the_duty_cycle_for_the_rated_torque_and_half_of_rated_torque.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.3\n", "clc;\n", "Vs=240;\n", "emf_800=Vs-20*0.5;\n", "emf_600=230*600/800;\n", "Vav=emf_600+20*0.5;\n", "Duty_cycle=Vav/Vs;\n", "printf('Duty cycle when motor develop the rated torque = %.4f ', Duty_cycle)\n", "//when motor develop half of the rated torque\n", "Vav=emf_600+10*0.5;\n", "Duty_cycle=Vav/Vs;\n", "printf('\nDuty cycle when motor develop half of the rated torque = %.4f ', Duty_cycle)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.4: Find_the_different_parameters_of_a_dc_chopper.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.4\n", "clc;\n", "Duty_cycle=0.4;\n", "Vs=200;\n", "Vd=2;\n", "Vav=Duty_cycle*(Vs-Vd);\n", "printf('Average output voltage = %.1f V', Vav)\n", "VL=Duty_cycle^0.5*(Vs-Vd);\n", "printf('\nRMS output voltage = %.3f V', VL)\n", "R=8;\n", "Po=VL^2/R;\n", "Pi=Duty_cycle*Vs*(Vs-Vd)/R;\n", "Chopper_efficiency=Po/Pi*100;\n", "printf('\nChopper efficiency = %.0f percent', Chopper_efficiency)\n", "Rin=R/Duty_cycle;\n", "printf('\nInput resistance = %.0f Ohm', Rin)\n", "V1=126.05/2^0.5;\n", "printf('\nRMS value of fundamental component = %.3f V', V1)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.5: Find_the_chopper_frequency.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.5\n", "clc;\n", "Duty_cycle=0.25;\n", "V=400;\n", "Vav=Duty_cycle*V;\n", "Vn=V-Vav;\n", "L=0.05;\n", "di=10;\n", "Ton=L*di/Vn;\n", "T=Ton/Duty_cycle;\n", "f=1/T;\n", "printf('\nChopper frequency = %.0f Hz', f)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.6: Find_the_different_parameters_of_a_chopper_feeding_a_RL_load.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.6\n", "clc;\n", "V=200;\n", "R=4;\n", "L=6*10^-3;\n", "f=1000;\n", "T=1/f;\n", "Duty_cycle=0.5;\n", "E=0;\n", "Imax=V/R*((1-exp(-Duty_cycle*T*R/L))/(1-exp(-T*R/L)))-E/R;\n", "printf('\nImax = %.2f A', Imax)\n", "Imin=V/R*((exp(Duty_cycle*T*R/L)-1)/(exp(T*R/L)-1))-E/R;\n", "printf('\nImin = %.2f A', Imin)\n", "Maximum_ripple=V/(R*f*L);\n", "printf('\nMaximum ripple = %.2f A', Maximum_ripple)\n", "IL_avg=(Imax+Imin)/2;\n", "printf('\nAverage Load current = %.0f A', IL_avg)\n", "iL=(Imin^2+(Imax-Imin)^2/3+Imin*(Imax-Imin))^0.5;\n", "printf('\nRMS value of Load current = %.2f A', iL)\n", "Iavg=0.5*IL_avg;\n", "printf('\nAverage value of input current = %.2f A', Iavg)\n", "Irms=Duty_cycle^0.5*iL;\n", "printf('\nRMS value of input current = %.3f A', Irms)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.7: Calculate_the_load_inductance.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.7\n", "clc;\n", "V=300;\n", "E=0;\n", "R=5;\n", "f=250;\n", "Id=0.2*30;\n", "L=V/(4*f*Id);\n", "printf('Load inductance = %.3f H', L)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.8: Calculate_the_current.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.8\n", "clc;\n", "V=200;\n", "E=100;\n", "R=0.5;\n", "t=2*10^-3;\n", "L=16*10^-3;\n", "Imin=10;\n", "i=(V-E)/R*(1-exp(-R*t/L))+Imin*exp(-R*t/L);\n", "printf('Current at the instant of turn off thyristor = %.2f A', i)\n", "t=5*10^-3;\n", "i_5=i*exp(-R*t/L);\n", "printf('\nCurrent after 5ms of turn off thyristor = %.2f A', i_5)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 4.9: Find_the_speed_of_motor.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//4.9\n", "clc;\n", "emf=220;\n", "duty_cycle=0.6;\n", "Vi=220*duty_cycle;\n", "Ra=1;\n", "I=20;\n", "emf_back=Vi-I*Ra;\n", "N_no_load=1000;\n", "N=emf_back*N_no_load/emf;\n", "printf('\nSpeed of motor = %.1f rpm', N)" ] } ], "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 }