WWW.REFERATCENTRAL.ORG.UA - Я ТУТ НАВЧАЮСЬ

... відкритий, безкоштовний архів рефератів, курсових, дипломних робіт

ГоловнаІнформатика, Компютерні науки → Побудова програми для відображення схеми електричного кола з активним опором та ємністю, перехідного процесу зміни напруги на конденсаторі та аналізу - Реферат

Побудова програми для відображення схеми електричного кола з активним опором та ємністю, перехідного процесу зміни напруги на конденсаторі та аналізу - Реферат

cprintf("nnВведiть новi значення E (B) = ");

scanf("%f",&E);

cprintf("nВведiть новi значення C (мкФ) = ");

scanf("%f",&C);

cprintf("nВведiть новi значення r1 (Ом) = ");

scanf("%f",&r1);

cprintf("nВведiть новi значення r2 (Ом) = ");

scanf("%f",&r2);

setgraphmode(getgraphmode());

SHEMA(); GRAF(E, C*pow10(-3), r1,r2); break;

default: clrscr(); //textbackground(7);

textcolor(RED+BLINK); printf("nnnnnnnnnntt");

cprintf("A Ви, таки, мабуть, iдiот: дивiться що натискаэте"); delay(4000);textcolor(WHITE);restorecrtmode();clrscr();

restorecrtmode();

///------------------------------

getch();

closegraph();

clrscr();

return 0;

//////~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

/////||||||||||||||||||||||||||||||

void SHEMA(void)

////------------------ пiдготовлюімо граф вiкно

cleardevice();

int y0_port1,y1_port1;

y0_port1=0; y1_port1=0.4*getmaxy();

setviewport(0,y0_port1,getmaxx(),y1_port1, CLIP_ON);

setfillstyle(SOLID_FILL, FON_1); //заповнення кольором

floodfill(5, 5, 13); // теж саме

rectangle(0,0,getmaxx(),y1_port1-y0_port1); /////////-------------------------------------------------

int x1=0.25*getmaxx(), x1a, y1=40, y1a=30;

int x3=0.75*getmaxx(), y3=y1_port1-30, x3a=20, r=3, x3b;

int x2=0.5*getmaxx(), y2=(y1+y3)/2;

int R=15, l=8; //радiус джерела е.р.с. i довжина стрiлки

int dC=4, lC=14; //товщина i ширина конденсатора

int hr=8,lr=56; // ширина та довжина резистора

x1a=(x2-x1-lr)/2;

circle(x2,y1,2); circle(x2,y3,2);

setfillstyle(SOLID_FILL,WHITE);

floodfill(x2,y1-1,WHITE); floodfill(x2,y3-1,WHITE);

line(x1,y1,x1+x1a,y1); setfillstyle(1, WHITE); bar(x1+x1a,y1-hr,x1+x1a+lr,y1+hr);

line(x1+x1a+lr,y1,x3,y1); line(x3,y1,x3,y1+y1a); bar(x3-hr,y1+y1a,x3+hr,y1+y1a+lr);

line(x3,y1+y1a,x3,y3);

line(x3,y3,(x3+x2)/2+x3a+r,y3); circle((x3+x2)/2+x3a,y3,r);

line(x1,y3,(x3+x2)/2-x3a-r,y3); circle((x3+x2)/2-x3a,y3,r);

int lk=37; //ключ

line((x3+x2)/2-x3a+r*0.87,y3-r*0.5,(x3+x2)/2-x3a+lk*0.87,y3-lk*0.5);//ключ

circle(x1,y2,R); line(x1,y1,x1,y2-R); line(x1,y3,x1,y2+R);

line(x1,y2+l,x1,y2-l); line(x1,y2-l,x1-2,y2-l+6); line(x1,y2-l,x1+2,y2-l+6);

line(x2-lC,y2-dC,x2+lC,y2-dC); line(x2-lC,y2+dC,x2+lC,y2+dC);

line(x2,y1,x2,y2-dC); line(x2,y3,x2,y2+dC);

//пiдписуэмо елементи

setcolor(GREEN);

settextstyle(3, HORIZ_DIR, 1);

outtextxy(x1+22,y2-14,"E");

outtextxy((x1+x2)/2-8,y1-32,"r1");

outtextxy(x2-32,y2-10,"C");

outtextxy(x3-30,y2-12,"r2");

outtextxy((x2+x3)/2,y3,"K");

//////--------------

void GRAF(float E, float C, float r1,float r2)

////------------------ пiдготовлюімо граф вiкно #2

//setbkcolor(7);

setcolor(WHITE);

settextstyle(0,0,1);

float y0_port2,y1_port2;

y0_port2=0.4*getmaxy(); y1_port2=getmaxy();

setviewport(0,y0_port2,getmaxx(),y1_port2, CLIP_ON);

setfillstyle(SOLID_FILL, FON_2); //заповнення кольором

floodfill(5, 5, 13); // теж саме

rectangle(0,0,getmaxx(),y1_port2-y0_port2);

////---------------------------

float y0_g,x0_g;

float kin=0.8*getmaxx(); //кiнець осi ординат

y0_g=96+(y1_port2-y0_port2)/2;

// printf(" y0_g=%i ",y0_g);

x0_g=150;

line(x0_g-120,y0_g,kin,y0_g); //вiсь ординат

line(x0_g,10,x0_g,y1_port2-y0_port2-20); //вiсь абсцис

line(x0_g,10,x0_g+2,10+5); //стрiлочка

line(x0_g,10,x0_g-2,10+5);

line(kin,y0_g,kin-5,y0_g-2);

line(kin,y0_g,kin-5,y0_g+2);

setcolor(CGA_CYAN); settextstyle(7,0,1);

outtextxy(x0_g+6,4,"Uc, V");

// setcolor(WHITE);

outtextxy(kin+6,y0_g-10,"t, ms");

///////////.............................

float Uck=E*r2/(r1+r2);

float t,tau,y;

float mU=2, mt=1.0e-2;; //масштаби по осях

setcolor(COL_3);

setlinestyle(8,1,1);

line(x0_g-110,y0_g-E*mU,x0_g,y0_g-E*mU);

moveto(x0_g,y0_g-mU*E);

tau=r1*r2/(r1+r2)*C; //printf("tau=%.12f",tau); printf(" mt=%.12f",mt);

for(int i=0; i

t=mt*i;

y=mU*(E*r2/(r1+r2)+E*r1/(r1+r2)*exp(-t/tau));

lineto(x0_g+i,y0_g-y);

setcolor(COL_1);

setlinestyle(2,1,1);

line(x0_g,y0_g-mU*Uck,kin-30,y0_g-mU*Uck);

////...........................................

setcolor(COL_2);

setlinestyle(0,1,1);

settextstyle(0,0,0);

int m=100; char *c;

for(int j=0;j<=3;j++)

line(x0_g+m*j,y0_g,x0_g+m*j,y0_g+3);

sprintf(c, "%d",j);

outtextxy(x0_g+4+m*j,y0_g+8,c);

int n=mU*100/5;

for(int k=0;k<=5;k++)

line(x0_g,y0_g-n*k,x0_g-3,y0_g-n*k);

sprintf(c, "%d",k*n/2);

if(k) outtextxy(x0_g-24,y0_g-10-n*k,c);

//printf(" t=%f",t);printf(" i=%d",i);printf(" t/tau=%f",t/tau);

//.виведення значень параметрiв

setcolor(5); settextstyle(0,0,1);

sprintf(c,"E = %.1f B",E);

outtextxy(getmaxx()-130,40,c);

sprintf(c,"C = %.1f мкФ",C*pow10(3));

outtextxy(getmaxx()-130,70,c);

sprintf(c,"r1= %.1f Ом",r1);

outtextxy(getmaxx()-130,100,c);

sprintf(c,"r2= %.1f Ом",r2);

outtextxy(getmaxx()-130,130,c);

getch();

/////======================================

void Titul (void)

clrscr();

textmode(BW80);

textcolor(59);

cprintf(" Мiнiстерство освiти i науки Украни");

printf("n");

cprintf(" Рiвненський державний технiчний унiверситет");

printf("n");

cprintf(" Кафедра електротехнiки i автоматики");

printf("nnnnn");

textcolor(4 + BLINK);

printf(" ");

cprintf("КУРСОВА РОБОТА"); printf("n");

textcolor(57);

printf("tt"); cprintf("з курсу:"Програмування i алгоритмiчнi мови""); printf("n");

textcolor(BLUE);

printf("tt"); cprintf("на тему:"Графiчне вiдображення схеми електричного кола з"); printf("n");

printf("ttt "); cprintf("активним опором та эмнiстю, перехiдного процесу"); printf("n");

printf("ttt "); cprintf("змiни напруги на конденсаторi та аналiзу впливу"); printf("n");

printf("ttt "); cprintf("парамтрiв кола на перехiдний процес""); printf("n");

printf("nnnnn"); textcolor(2);

printf("tttttt"); cprintf("Виконав студент першого курсу"); printf("n");

printf("tttttt"); cprintf("ФПМiКIС групи АУТП-3"); printf("n");

printf("tttttt"); cprintf("ПАНАСЮК");

printf("nnnn");

printf("tttt "); textcolor(58);

cprintf("РIВНЕ-2002");

textcolor(WHITE + BLINK);

printf("nttt");

cprintf(" натиснiть будь-яку клавiшу");

getch();

textcolor(WHITE);}

Приклад

Введемо:

E=50

C=2

R1=670

R2=700

Отримаємо графік :

Висновок

Завдяки цій курсовій роботі я закріпив здобуті теоретичні знання з курсу "Програмування та алгоритмічні мови", навчився застосувати їх при вирішенні питань виробничого характеру. Склав програму, яка графічно відображає схему електричного кола з активним опором та ємністю, перехідний процес зміни напруги на конденсаторі та аналіз впливу параметрів елементів кола на перехідний процес , програма працює з різним даними.

Література

1. Касаткин. Электротехника, М., Энергия..

2.Крис Паппас, Уїльям Мюррей, Програмирование на С и С++,

"Ирина", BHV,Киев,2000.

Ця курсова робота люб'язно надана Олександром Подранецьким

Loading...

 
 

Цікаве