Для моделирования работы заданного четырехполюсника по полученному алгоритму составим программу построения переходного процесса на языке высокого уровня Си:
#include<stdio.h>; //подключение
#include<math.h>; //используемых
#include<conio.h>; //библиотек
#include<graphics.h>; //
floatt,R1,R2,C,T1,T2,dt,Tpp,x[550],y[550]; //объявление используемых
int M1,M2,i,gd=DETECT,gm; //переменных
main()
{
printf("Введите значения R1,R2,C\n"); //вывод сообщения на экран
L1:scanf("%f",&R1); if(R1<=0){printf("Значениe R1 не может быть отрицательным или равным нулю, введите его заново: ");
goto L1;}
L2:scanf("%f",&R2); if(R2<=0){printf("Значениe R2 не может быть отрицательным или равным нулю, введите его заново: ");
goto L2;}
L3:scanf("%f",&C); if(C<=0){printf("Значениe C не может быть отрицательным или равным нулю, введите его заново: ");
gotoL3;}
T1=R2*C; T2=(R1+R2)*C; //присвоение переменным
dt=0.001; Tpp=4*T2; //соответствующих
//значений
M1=120; //задаем масштаб входного
M2=178; //и выходного напряжений
printf("Время переходного процесса равно %f,c\n",Tpp);
for(i=0;i<=550;i++)
{
x[i]=sin(t);
y[i]=(T2/(T2+dt))*(y[i-1]+T1/T2*(((T1+dt)/T1)*x[i]-x[i-1]));
t=t+0.05;
}
initgraph(&gd,&gm,"c:\\turboc\\bgi"); //выходвграфический
//режим
setcolor(BROWN); //цветлиний
setbkcolor(WHITE); //цветфона
line(20,240,600,240); //
line(30,20,30,420); //
line(580,242,600,240); //
line(580,238,600,240); //
line(30,20,32,40); //
line(30,20,28,40); //вычерчивание
for (i=100;i<=550;i=i+90) //
line(i,237,i,243); //осей
for (i=60;i<=400;i=i+20) //
line(33,i,27,i); //координат
outtextxy(88,245,"0,02"); //
outtextxy(178,245,"0,04"); //
outtextxy(268,245,"0,06"); //
outtextxy(358,245,"0,08"); //
outtextxy(448,245,"0,1"); //
outtextxy(538,245,"0,12"); //
outtextxy(3,177,"0,5"); //
outtextxy(10,117,"1"); //
outtextxy(590,245,"t,c"); //подписьосей
outtextxy(35,20,"U,B"); //координат
outtextxy(70,110,"UBx"); //подписьвходногои
outtextxy(135,385,"UBыx"); //выходного напряжения
for(i=0;i<550;i++)
{
line(i+50,240-x[i]*M1,i+50,240-x[i-1]*M1); //построение графика переходного //переходного
line(i+49,240-y[i]*M2,i+49,240-y[i-1]*M2); //процесса
}
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.