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

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

GroupBox2: TGroupBox;

Label6: TLabel;

Label7: TLabel;

Label8: TLabel;

Panel1: TPanel;

Label9: TLabel;

Label10: TLabel;

TabSheet6: TTabSheet;

GroupBox3: TGroupBox;

GroupBox4: TGroupBox;

Label15: TLabel;

Edit8: TEdit;

Edit9: TEdit;

Edit10: TEdit;

Edit11: TEdit;

Edit12: TEdit;

Label16: TLabel;

ComboBox2: TComboBox;

Image1: TImage;

Image2: TImage;

TabSheet7: TTabSheet;

Chart2: TChart;

StringGrid2: TStringGrid;

Button4: TButton;

Button3: TButton;

Series5: TLineSeries;

Series6: TLineSeries;

Series7: TLineSeries;

Label17: TLabel;

ComboBox3: TComboBox;

GroupBox5: TGroupBox;

Label18: TLabel;

Label19: TLabel;

Image4: TImage;

Edit13: TEdit;

Edit14: TEdit;

Label20: TLabel;

Edit15: TEdit;

Panel3: TPanel;

Label21: TLabel;

Panel4: TPanel;

Label22: TLabel;

Image5: TImage;

Image7: TImage;

Image8: TImage;

Panel2: TPanel;

Label12: TLabel;

Label13: TLabel;

Label14: TLabel;

Image3: TImage;

Edit6: TEdit;

Edit7: TEdit;

Label5: TLabel;

Edit5: TEdit;

procedure Button1Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

begin

close;

end;

procedure TForm1.FormCreate(Sender: TObject);

var c1,c2:real;

begin

C1:=strtofloat(edit11.Text);

C2:=strToFloat(edit12.Text);

if c2>0 then C2:=C2*(-1);

stringgrid1.Cells[0,0]:='Такт';

stringgrid1.Cells[1,0]:='Время';

stringgrid1.Cells[2,0]:='Задание';

stringgrid1.Cells[3,0]:='Система';

stringgrid1.Cells[4,0]:='Вых.дат.';

stringgrid2.Cells[0,0]:='Такт';

stringgrid2.Cells[1,0]:='Время';

stringgrid2.Cells[2,0]:='Возм.';

stringgrid2.Cells[3,0]:='Система';

stringgrid2.Cells[4,0]:='Вых.дат.';

if (C1>1000) and (c2<-1000) then  begin

panel3.Visible:=false;

panel4.visible:=true;

end

else

panel4.visible:=false;

panel3.Visible:=true;

end;

//-----------------ПЕРЕХОДНЫЙ ПРОЦЕСС ПО УПРАВЛЕНИЮ--------------------//

procedure TForm1.Button2Click(Sender: TObject);

var

//описание параметров системы

k, T1, T2, tau, kd, k1, k2, kim, kro, G, C1, C2,C :real;

//описание сигналов и простых переменных с первоначальным значением

Yd,Y,Yim,R:real;

//описание сигналов в виде массивов

y0, x, yro :array of real;

//описание целочисленных переменных

m :integer;

//описание режимных показателей модуля

Vr,T0:real;

n :integer;

//описание вспомогательных переменных

i:integer;

d1,d2,a,b:real;

begin

//ввод данных из визуальных элементов в программу

k:=strtofloat(edit1.Text);

T1:=strtofloat(edit2.Text);

T2:=strtofloat(edit3.Text);

Tau:=strtofloat(edit4.Text);

T0:=strtofloat(combobox2.text);

kd:=strtofloat(edit5.Text);

k1:=strtofloat(edit6.Text);

k2:=strtofloat(edit7.Text);

kim:=strtofloat(edit9.Text);

kro:=strtofloat(edit10.Text);

G:=strtofloat(edit8.Text);

n:=strtoint(combobox1.Text);

C1:=strtofloat(edit11.Text);

C2:=strToFloat(edit12.Text);

//проверка ввода данных

if k=0 then begin

messagedlg('Введите коэффициент передачи объекта. к', mterror,[mbok],0);

pageControl1.TabIndex := 1;

ActiveControl:=Edit1;

exit;

end;

if T1=0 then begin

messagedlg('Введите постоянную времени объекта. T1', mterror,[mbok],0);

pageControl1.TabIndex := 1;

ActiveControl:=Edit2;

exit;

end;

if T1<0 then begin

messagedlg('Постоянная времени объекта Т1 должна быть больше нуля!!!', mterror,[mbok],0);

pageControl1.TabIndex := 1;

ActiveControl:=Edit2;

exit;

end;

if T1<0 then begin

messagedlg('Постоянная времени объекта Т2 должна быть больше нуля!!!', mterror,[mbok],0);

pageControl1.TabIndex := 1;

ActiveControl:=Edit3;

exit;

end;

if T2=0 then begin

messagedlg('Введите постоянную времени объекта. T2', mterror,[mbok],0);

pageControl1.TabIndex := 1;

ActiveControl:=Edit3;

exit;

end;