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
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.