// ПФ исходной системы
MmPf.Lines.Add('Передаточная функция разомкнутой исходной системы:');
MmPf.Lines.Add('');
MmPf.Lines.Add(' '+FloatToStrF(KwUp, ffFixed, 5, 2));
MmPf.Lines.Add('W(p) = ---------------------------------------------------------');
MmPf.Lines.Add(' p*('+FloatToStr(tau1)+'*p+1)*('
+FloatToStrF(tau2, ffFixed, 6,3)+'*p+1)*('+FloatToStrF(Ts, ffFixed, 6,3)+'*p+1)');
MmPf.Lines.Add('');
// ПФ желаемой системы
case vibor of
1 : begin
ftau1 := tau1;
ftau2 := tau2;
end;
2 : begin
ftau1 := T3;
ftau2 := tau2;
end;
3,4 : begin
ftau1 := T3;
ftau2 := T3;
end;
end;
MmPf.Lines.Add('Передаточная функция желаемой системы:');
MmPf.Lines.Add('');
MmPf.Lines.Add(' '+FloatToStrF(Kw, ffFixed, 6, 3)+'*('
+FloatToStrF(T2, ffFixed, 6, 3)+'*p+1)');
MmPf.Lines.Add('W(p) = -----------------------------------------------------------------------');
MmPf.Lines.Add(' p*('+FloatToStrF(T1, ffFixed, 6, 3)
+'*p+1)*('+FloatToStrF(ftau1, ffFixed, 6, 3)+'*p+1)*('+FloatToStrF(ftau2, ffFixed, 6, 3)
+'*p+1)*('+FloatToStrF(T3, ffFixed, 6, 3)+'*p+1)');
MmPf.Lines.Add('');
// ПФ корректирующего устройства
MmPf.Lines.Add('Передаточная функция корректирующего устройства:');
MmPf.Lines.Add('');
st1 := ' '+FloatToStrF(Kw/KwUp, ffFixed, 4, 1)+'*('
+FloatToStrF(T2, ffFixed, 6, 3)+'*p+1)*('+FloatToStrF(Ts, ffFixed, 6, 3)+'*p+1)';
st2 := st1 + '*('+FloatToStrF(tau1, ffFixed, 6, 3)+'*p+1)';
st3 := st2 + '*('+FloatToStrF(tau2, ffFixed, 6, 3)+'*p+1)';
stdown := '('+FloatToStrF(T1, ffFixed, 6, 3)+'*p+1)*('+FloatToStrF(T3, ffFixed, 6, 3)+'*p+1)';
case vibor of
1 : begin
MmPf.Lines.Add(st1);
MmPf.Lines.Add('W(p) = -----------------------------------------');
MmPf.Lines.Add(' '+stdown);
end;
2,3 : begin
MmPf.Lines.Add(st2);
MmPf.Lines.Add('W(p) = ----------------------------------------------------------------');
MmPf.Lines.Add(' '+stdown+'^2');
end;
4 : begin
MmPf.Lines.Add(st3);
MmPf.Lines.Add('W(p) = ---------------------------------------------------------------------------');
MmPf.Lines.Add(' '+stdown+'^3');
end;
end;
end;
procedure TForm1.DrawGraphics();
var
W0 : real;
begin
//Очищаемм все графики.
LAX.Series[0].Clear;
LAX.Series[1].Clear;
LAX.Series[2].Clear;
LAX.Series[3].Clear;
LAX.Series[4].Clear;
LAX.Series[5].Clear;
LAX.Series[6].Clear;
LAX.Series[7].Clear;
LAX.Series[8].Clear;
LAX.Series[9].Clear;
LAX.Series[10].Clear;
LAX.Series[11].Clear;
LAX.Series[12].Clear;
LAX.Series[13].Clear;
LAX.Series[14].Clear;
KULAX.Series[0].Clear;
KULAX.Series[1].Clear;
KULAX.Series[2].Clear;
KULAX.Series[3].Clear;
KULAX.Series[4].Clear;
KULAX.Series[5].Clear;
KULAX.Series[6].Clear;
KULAX.Series[7].Clear;
KULAX.Series[8].Clear;
KULAX.Series[9].Clear;
KULAX.Series[10].Clear;
// Рассчитываем недостающие величины
W0 := sqrt(Kw/T1); //!!! Вместо T1 было Ts ошибка в курсовых
T2 := sqrt(vars[7]/(vars[7]-1))/W0;
// Выводим посчитанные величины
Label21.Caption:='Ts = '+FloatToStrF(Ts,ffFixed,10,5)+' сек';
Label23.Caption:='Kw = '+FloatToStrF(Kw,ffFixed,10,5);
Label37.Caption:='Ke = '+FloatToStrF(Kw/T1,ffFixed,10,5);
Label38.Caption:='W0 = '+FloatToStrF(W0,ffFixed,10,5)+' 1/сек';
Label39.Caption:='Wsr = '+FloatToStrF(sqr(W0)*T2,ffFixed,10,5)+' 1/сек';
Label41.Caption:='T1 = '+FloatToStrF(T1,ffFixed,10,5)+' сек';
Label42.Caption:='T2 = '+FloatToStrF(T2,ffFixed,10,5)+' сек';
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.