Математическое моделирование биполярных транзисторов типа p-n-p

BR (исправленное)  = BR * (1 + (T-TNOM) * TCB.

BF – коэффициент передачи по току в схеме с ОЭ для нормального включения.

BR – коэффициент передачи по току в схеме с ОЭ для инверсного включения.


6) Математическое описание зависимости тока диода DBE от напряжения на

    нем.

 при ;

 при ;


д) Математическое описание зависимости тока диода DBC от напряжения на

    нем.

 при ;

при ;

e) математическое описание управляемого источника тока.

.

ж) расчёт токов коллектора и эмиттера;

ik = iу - iкб ;             iэ = iу + iэб ;


и) расчёт барьерной емкости перехода ЭБ;.

 при ;

 при ;

CJEO – барьерная емкость перехода ЭБ при нулевом смещении;

VJE – контактная разность потенциалов для переходов ЭБ;

MJE – показатель степени в выражении для барьерной емкости.


к) расчёт диффузионной емкости перехода ЭБ.

 при >0;

TAUF – среднее время пролета носителей через базу в нормальном режиме.

л) расчёт емкости CBE.

CBE = CJE+CDE;

м) расчёт барьерной емкости перехода КБ.

 при ;

при ;

CJCO – барьерная емкость перехода КБ при нулевом смещении;

VJC – контактная разность для переходов КБ;

MJC – показатель степени в выражении для барьерной емкости.

н) расчёт диффузионной емкости перехода КБ.

 при >0;

CDC = 0 при 0;

TAUR – среднее время пролета носителей через базу в инверсном режиме.


о) расчёт емкости CBC.

CBC= CJC+CDC;


3.      Описание программы


Program bipolar;

uses {wincrt,windos}crt,dos,graph;

Label 1;

var

     t1,t2,t3,t4,

     Uc, Uccs, Ucb, Uec, Ueb, VA, VJC, VJE,

     Is0, Is, Ieb, Icb ,Ib ,Ic, Iy,Ik,Ie,

     CJC0, CJE0, CBE, CJE, CDE, CBC, CJC, CDC,

     RB,RC,RJ,

     T, TNOM, TCB,

     Kyf,a,BF, BR, EG, TAUF, TAUR, MJC, MJE, CCS, K, FIt, q,expon:  extended;

     ii,col,row:integer;                  {    extended  3.4e-4932..1.1e4932}

     an,key:char;



function st(a:extended; b:extended):extended;

begin

    if b<0 then

    begin

         if (-1*b * ln(a)) < 1.1356523e4 then

         begin

         st:=1/ (exp((-1*b) * ln(a)));

         end

         else st:= 1;

    end

    else

    begin

         if (b * ln(a)) > 1.1356523e4 then

         begin

              st:=1e4000;

         end


         else

         begin

              st:=exp((b) * ln(a));

         end;

    end;

end;



Procedure Model(Ueb,Ucb:extended;var Ieb,Icb,Ib,Iy:extended);

Begin

     If Ueb > Uc then Ieb := 1 / BF * (Ic+ (Ueb - Uc) / RJ )

     else             Ieb :=1 / BF * Is * (st(expon,Ueb / FIt) -1);


     If Ucb > Uc then Icb:= 1/BR * (Ic + (Ucb-Uc)/RJ)

     else     Icb:= 1/BR * Is* (st(expon, Ucb/FIt)-1);


     Ib:= Ieb + Icb;

     Iy:= Ieb*BF - Icb*BR;

end;



procedure InputTrans;

Label 1,2,3;

begin

     clrscr;

          BF:=75;

          BR:= 0.3;

          TCB:=2500;

          Is0:=3.5e-15;

          EG:=1.11;

          CJC0:=4e-12;

          CJE0:=1.2e-12;

          RB:=67;

          RC:=7.3;

          VA:=102;

          TAUF:=9.4e-11;

          TAUR:=6.692e-8;

          MJC:=0.33;

          VJC:=0.65;

          MJE:=0.69;

          VJE:=0.69;

          CCS:=1e-12;

          RJ:=0.01;


     writeln('       It is default parameters of transistor KT316B (Y/N) ');


     gotoxy(col+3,row+3);

     write('[Forward beta] ');

     gotoxy(col+39,row+3);

     write(BF);


     gotoxy(col+3,row+4);

     write('[Revers beta] ');

     gotoxy(col+39,row+4);

     write(BR);


     gotoxy(col+3,row+5);

     write('[Temp. coef. of BETTA (PPM)] ');

     gotoxy(col+39,row+5);

     write(TCB);


     gotoxy(col+3,row+6);

     write('[Saturation Current] ');

     gotoxy(col+39,row+6);

     write(Is0);


     gotoxy(col+3,row+7);

     write('[Energy gap (0.6 to 1.3)] ');

     gotoxy(col+39,row+7);

     write(EG);

     EG:=EG*1.6e-19;


     gotoxy(col+3,row+8);

     write('[CJC0] ');

     gotoxy(col+39,row+8);

     write(CJC0);


     gotoxy(col+3,row+9);

     write('[CJE0] ');

     gotoxy(col+39,row+9);

     write(CJE0);


     gotoxy(col+3,row+10);

     write('[Base resistance] ');

     gotoxy(col+39,row+10);

     write(RB);


     gotoxy(col+3,row+11);

     write('[Collector resistance] ');

     gotoxy(col+39,row+11);

     write(RC);


     gotoxy(col+3,row+12);

     write('[Early Valtage] ');

     gotoxy(col+39,row+12);

     write(VA);


     gotoxy(col+3,row+13);

     write('[TAU forward] ');

     gotoxy(col+39,row+13);

     write(TAUF);


     gotoxy(col+3,row+14);

     write('[TAU reverse] ');

     gotoxy(col+39,row+14);

     write(TAUR);


     gotoxy(col+3,row+15);

     write('[MJC] ');

     gotoxy(col+39,row+15);

     write(MJC);


     gotoxy(col+3,row+16);

     write('[VJC] ');

     gotoxy(col+39,row+16);

     write(VJC);


     gotoxy(col+3,row+17);

     write('[MJE] ');

     gotoxy(col+39,row+17);

     write(MJE);


     gotoxy(col+3,row+18);

     write('[VJE] ');

     gotoxy(col+39,row+18);

     write(VJE);


     gotoxy(col+3,row+19);

     write('[CSUB] ');

     gotoxy(col+39,row+19);

     write(CCS);


     gotoxy(col+3,row+20);

     write('[Minimum junction resistance] ');

     gotoxy(col+39,row+20);

     write(RJ);


     gotoxy(col+6,row+25);

     write('Accept parameters of transistor (Y/N) ');

     an:=readkey;

         case an of 'y':    goto 3;

                    'Y':    goto 3;

                    'n':    goto 2;

                    'N':    goto 2;

                 else

                 begin

                     sound(500);

                     delay(1000);

                     nosound;

                     goto 1;

                 end;

          end;


2:   clrscr;

     gotoxy(col+25,row+1);

     write('Input next parameters of transistor');


     gotoxy(col+3,row+3);

     write('[Forward beta] ');

     gotoxy(col+40,row+3);

     read(BF);

     gotoxy(col+39,row+3);

     write(BF);


     gotoxy(col+3,row+4);

     write('[Revers beta] ');

     gotoxy(col+40,row+4);

     read(BR);

     gotoxy(col+39,row+4);

     write(BR);


     gotoxy(col+3,row+5);

     write('[Temp. coef. of BETTA (PPM)] ');

     gotoxy(col+40,row+5);

     read(TCB);

     gotoxy(col+39,row+5);

     write(TCB);


     gotoxy(col+3,row+6);

     write('[Saturation Current] ');

     gotoxy(col+40,row+6);

     read(Is0);

     gotoxy(col+39,row+6);

     write(Is0);


     gotoxy(col+3,row+7);

     write('[Energy gap (0.6 to 1.3)] ');

     gotoxy(col+40,row+7);

     read(EG);

     gotoxy(col+39,row+7);

     write(EG);


     gotoxy(col+3,row+8);

     write('[CJC0] ');

     gotoxy(col+40,row+8);

     read(CJC0);

     gotoxy(col+39,row+8);

     write(CJC0);


     gotoxy(col+3,row+9);

     write('[CJE0] ');

     gotoxy(col+40,row+9);

     read(CJE0);

     gotoxy(col+39,row+9);

     write(CJE0);


     gotoxy(col+3,row+10);

     write('[Base resistance] ');

     gotoxy(col+40,row+10);

     read(RB);

     gotoxy(col+39,row+10);

     write(RB);


     gotoxy(col+3,row+11);

     write('[Collector resistance] ');

     gotoxy(col+40,row+11);

     read(RC);

     gotoxy(col+39,row+11);

     write(RC);


     gotoxy(col+3,row+12);

     write('[Early Valtage] ');

     gotoxy(col+40,row+12);

     read(VA);

     gotoxy(col+39,row+12);

     write(VA);


     gotoxy(col+3,row+13);

     write('[TAU forward] ');

     gotoxy(col+40,row+13);

     read(TAUF);

     gotoxy(col+39,row+13);

     write(TAUF);


     gotoxy(col+3,row+14);

     write('[TAU reverse] ');

     gotoxy(col+40,row+14);

     read(TAUR);

     gotoxy(col+39,row+14);

     write(TAUR);


     gotoxy(col+3,row+15);

     write('[MJC] ');

     gotoxy(col+40,row+15);

     read(MJC);

     gotoxy(col+39,row+15);

     write(MJC);


     gotoxy(col+3,row+16);

     write('[VJC] ');

     gotoxy(col+40,row+16);

     read(VJC);

     gotoxy(col+39,row+16);

     write(VJC);


     gotoxy(col+3,row+17);

     write('[MJE] ');

     gotoxy(col+40,row+17);

     read(MJE);

     gotoxy(col+39,row+17);

     write(MJE);


     gotoxy(col+3,row+18);

     write('[VJE] ');

     gotoxy(col+40,row+18);

     read(VJE);

     gotoxy(col+39,row+18);

     write(VJE);


     gotoxy(col+3,row+19);

     write('[CSUB] ');

     gotoxy(col+40,row+19);

     read(CCS);

     gotoxy(col+39,row+19);

     write(CCS);


     gotoxy(col+3,row+20);

     write('[Minimum junction resistance] ');

     gotoxy(col+40,row+20);

Страницы: 1, 2, 3



Реклама
В соцсетях
рефераты скачать рефераты скачать рефераты скачать рефераты скачать рефераты скачать рефераты скачать рефераты скачать