Структурная схема моделируемой системы управления. Математическое описание исходных данных. Моделируемая система, страница 2

exit;

end;

Kpo:=StrToFloat(Edit6.Text);

if Kpo=0 then

begin

messagedlg('Неправильно введены параметры системы: Kpo',mterror,[mbok],0);

exit;

end;

Kd:=StrToFloat(Edit12.Text);

if Kd=0 then

begin

messagedlg('Неправильно введены параметры системы: Кд',mterror,[mbok],0);

exit;

end;

Sig:=StrToFloat(Edit11.Text);

if Sig=0 then

begin

messagedlg('Пожалуйста введите величину задающего воздействия: А',mterror,[mbok],0);

exit;

end;

Tdis:=StrTofloat(ComboBox2.Text);

n:= StrToInt(ComboBox3.Text);

m:=trunc(Tau/Tdis);

setlength(U,n+1);

setlength(Yo,n+1);

setlength(x,n+1);

If checkbox1.Checked=false then

begin

a:=0;

b:=1000;

end;

If radiobutton1.Checked=true then cf:=0;

if radiobutton2.Checked=true then sig:=0;

For i:=0 to n do

Begin

Yo[i]:=yo[i-1]*exp(-tdis/t)+u[i-m-1]-u[i-1-m]*k*exp(-tdis/t);

yf:=(cf*kf*(1-exp(-i*Tdis/Tf)));

y:=Yo[i]+yf;

y1:=Kd*Y;

X[i]:=Sig*Kd-Y1;

R:=K1*x[i]+K2*x[i-2]+R;

if (r>=-a) and (r<=a) then un0:=0

else un0:=r-a;

if un0>=b then un:=b

else un:=un0;

if un0<=-b then un:=-b ;

U[i]:=Kum*Kpo*Un;

//Вывод данных в таблицу

With StringGrid2 Do

Begin

Cells[0,I+1]:=FloatToStrF(i,ffFixed,8,0);

Cells[1,I+1]:=FloatToStrF(Y,ffFixed,8,4);

Cells[2,I+1]:=FloatToStrF(un,ffFixed,8,3);

cells[3,i+1]:=floattostrf(r,fffixed,8,4);

RowCount:=RowCount+1;

End;

series1.AddXY(i,R,'',clteecolor);

Series3.AddXY(i,Y,'',clTeeColor);

Series4.AddXY(i,Un,'',clTeeColor);

End;

end;

procedure TForm1.Button4Click(Sender: TObject);

//Запись в текстовый файл

Var

F:TextFile;

NameFile:string;

I,N:Integer;

begin

If StringGrid2.Cells[0,1]=' 'then

Begin

MessageDlg('Нет расчета модели',mtInformation,[mbOK],0);

Exit;

End;

N:=StrToInt(ComboBox3.Text);

If OpenDialog1.Execute Then NameFile:=OpenDialog1.FileName;

AssignFile(F,NameFile);

Rewrite(F);

Writeln(F,'          Расчёт системы ');

Writeln(F);

Writeln(F,'  Параметры элемента:');

Writeln(F,'  Граница                 a=',Edit1.Text);

Writeln(F,'  Граница                 b=',Edit2.Text);

Writeln(F);

Writeln(F,'  Параметры объекта:');

Writeln(F);

Writeln(F,'                    Коб=',Edit9.Text);

writeln(F,'                    T=',edit13.text);

Writeln(F,'                    Тау=',Edit10.Text);

Writeln(F);

Writeln(F,'  Параметры системы:');

Writeln(F);

Writeln(F,'                    Кд=',Edit12.Text);

Writeln(F,'                   к1=',Edit7.Text);

Writeln(F,'                    к2=',Edit8.Text);

Writeln(F,'                   Kpo=',Edit6.Text);

Writeln(F,'                   Kим=',Edit5.Text);

Writeln(F);

Writeln(F,'  Параметры входного сигнала:');

Writeln(F,'  Ступенчатый');

Writeln(F,'                    А=',Edit11.Text);

Writeln(F);

Writeln(F);

With StringGrid2 Do

For I:=0 To N Do

Writeln(F,'  ',Cells[0,i],'   ',Cells[1,I],'   ',Cells[2,I],'   ',cells[3,i]);

CloseFile(F);

MessageDlg('Модель записана в файл',mtInformation,[mbOK],0);

end;

procedure TForm1.ComboBox3Change(Sender: TObject);

Var

N,I:Integer;

Begin

series1.Clear;

Series3.Clear;

Series4.Clear;

N:=StrToInt(ComboBox3.Text);

For I:=1 to N do

With StringGrid2 do

Begin

Cells[0,1]:='  ';

Cells[1,1]:='  ';

Cells[2,1]:='  ';

Cells[3,1]:='  ';

RowCount:=2;

End;

End;

end.

8.Распечатка текстового файла

         Расчёт системы

  Параметры элемента:

  Граница                 a=0

  Граница                 b=1000

  Параметры объекта:

                    Коб=3

                    T=8

                    Тау=1,2

  Параметры системы:

                    Кд=1

                   к1=0,9629

                    к2=0,8893

                   Kpo=1

                   Kим=1

  Параметры входного сигнала:

  Ступенчатый

                    А=1

  Такт   Система   Выход нел.   Вход нел.

  0   0,0000   0,963   0,9629

  1   0,1353   1,796   1,7955

  2   0,2910   3,368   3,3675

  3   0,5565   4,564   4,5636

  4   0,8006   5,386   5,3862

  5   0,9860   5,794   5,7941

  6   1,0965   5,879   5,8785

  7   1,1400   5,756   5,7561

  8   1,1353   5,540   5,5401

  9   1,1036   5,316   5,3159

  10   1,0630   5,135   5,1349

  11   1,0259   5,018   5,0179

  12   0,9989   4,963   4,9629

  13   0,9834   4,956   4,9559

  14   0,9780   4,978   4,9781

  15   0,9795   5,013   5,0125

  16   0,9848   5,047   5,0467

  17   0,9912   5,073   5,0734

  18   0,9967   5,090   5,0901

  19   1,0006   5,097   5,0973

       Расчёт системы

  Параметры элемента:

  Граница                 a=2

  Граница                 b=4

  Параметры объекта:

                    Коб=3

                    T=8

                    Тау=1,2

  Параметры системы:

                    Кд=1

                   к1=0,9629

                    к2=0,8893

                   Kpo=1

                   Kим=1

  Параметры входного сигнала:

  Ступенчатый

                    А=1

  Такт   Система   Выход нел.   Вход нел.

  0   0,0000   0,000   0,9629

  1   0,0000   0,000   1,9258

  2   0,0000   1,778   3,7780

  3   0,2498   3,390   5,3897

  4   0,5478   4,000   6,7144

  5   0,7189   4,000   7,6523

  6   0,7679   4,000   8,2780

  7   0,7820   4,000   8,7379

  8   0,7860   4,000   9,1504

  9   0,7871   4,000   9,5493

  10   0,7875   4,000   9,9443

  11   0,7876   4,000   10,3381

  12   0,7876   4,000   10,7317

  13   0,7876   4,000   11,1252

  14   0,7876   4,000   11,5186

  15   0,7876   4,000   11,9120

  16   0,7876   4,000   12,3054

  17   0,7876   4,000   12,6989

  18   0,7876   4,000   13,0923

  19   0,7876   4,000   13,4857