Синтез системы автоматического регулирования

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

азработке использовались различные программные средства: программа ТАУ, программа Mathcad. Данные программные пакеты позволяют выполнять все необходимые действия для синтеза необходимой системы, а так же для её анализа. На основании полученных постоянных времени передаточной функции корректирующего устройства аппаратно был реализован фильтр, представляющих собой каскад электронных звеньев на операционных усилителях. При помощи среды разработки приложений C++ Microsoft Visual 2010 выполнена программная реализация корректирующего устройства, реализующая математические операции расчета выходной величины по заданному входному воздействию.

 

Список литературы

 

1. Тюкин В.Н. Теория управления: Часть 1. Обыкновенные линейные системы управления. - 2-е изд., испр. и доп. - Вологда: ВоГТУ, 2000. - 200 с., ил.

. Тюкин В.Н. Теория автоматического управления. Методические указания к практикуму: Руководство пользователя комплекса программного обеспечения по курсу ТАУ и контрольные примеры. - Вологда: ВоГТУ, 2005. - 34 с.

. Тюкин В.Н. Теория управления: Часть 2. Особые линейные и нелинейные системы. - 2-е изд., испр. и доп - Вологда: ВоГТУ, 2001. - 140 с., ил.

. Фатеев А.В. Расчет автоматических систем.- М., "Высш. школа", 1973. - 336с., ил.

 

Приложение А Листинг программы ТАУ

 

{вариант №2}

{ Задающее устройство }= 5E-5; { Вольт / Кельвин }(s) = Kzu;

{ Усилитель }= 194000;(s) = Kus;

{ Электродвигатель }= 9; { оборот / (секунда * Вольт) }= 0,3; { секунда }= 0,08; { секунда }(s) = Kdv / [Tm*Te; Tm; 1; 0];

{ Редуктор }= 200;(s) = 1 / Ired;

{ Заслонка }= 5 * 360; { Кельвин / оборот }(s) = Kzas;

{ Паропровод }= 0,7;= 0,009; { секунда }(s) = Kpar * (1 - tau*s);

{ Термопара }= 5E-5; { Вольт / Кельвин }= 0,05; { секунда }(s) = Kter / (Tter*s + 1);

{ Разомкнутая система }(s) = Wus(s) * Wdv(s) * Wred(s) * Wzas(s) * Wpar(s) * Wter(s);

{ Замкнутая система }(s) = Wzu(s) * (W(s)/Wter(s) / (1 + W(s)));

{Желаемая разомкнутая система}

{ Wc = 16,61 [рад/с]; Lh = 16 [дБ]; -60 дБ/дек }

W_ok(s) = 549,99 *

(

(1 - 0,009 * s) *

(0,37987 * s + 1) ^ 2

) / (*

(2,1859 * s + 1) ^ 2 *

(0,0095418 * s + 1) ^ 3

);

{ Желаемая замкнутая система }_ok (s) = Wzu(s) * (W_ok (s)/Wter(s) / (1 + W_ok (s)));

{ Wc = 16,61 [рад/с]; Lh = 21 [дБ]; -60 дБ/дек }

{скорректированная желаемая разомкнутая система}_ok _ok (s) = 549,99 *

((1 - 0,009 * s) *

(0,67551 * s + 1) ^ 2

) / (

s *

(3,8871 * s + 1) ^ 2 *

(0,0053657 * s + 1) ^ 3

);

{ скорректированная желаемая замкнутая система }

Fyg_ok _ok (s) = Wzu(s) * (W_ok _ok (s)/Wter(s) / (1 + W_ok _ok (s)));

{ Wc = 16,61 [рад/с]; Lh = 25 [дБ]; -60 дБ/дек }

{скорректированная2 желаемая разомкнутая система}

_ok _ok _ok (s) = 549,99 *

(

(1 - 0,009 * s) *

(1,0706 * s + 1) ^ 2

) / (

s *

(6,1606 * s + 1) ^ 2 *

(0,0033856 * s + 1) ^ 3

);

{ скорректированная2 желаемая замкнутая система }

Fyg_ok _ok _ok (s) = Wzu(s) * (W_ok _ok _ok (s)/Wter(s) / (1 + W_ok _ok _ok (s)));

{последовательное корректирующее устройство}

Wpku(s) = W_ok _ok _ok (s)/W(s);

{реальное корректирующее устройство}

Circuit(s) = 1 *

(

(1,1 * s + 1) ^ 2 *

(0,0503 * s + 1) *

(0,1533 * s + 1) ^ 2

) / ((6,2 * s + 1) ^ 2 *

(0,0033 * s + 1) ^ 3

);

{реальная разомкнутая система}

WW(s)=W(s)*Circuit(s);

{реальная замкнутая система }(s) = Wzu(s) * (WW(s)/Wter(s) / (1 + WW(s)));

{дискретное последовательное корректирующее устройство}

{ Частота дискретизации 1000 Гц }u(z) =

[

,33862127455022E+02 {z^5};

,55132837640109E+03 {z^4};

,87585287831254E+03 {z^3};

,65820590062517E+03 {z^2};

,22485603597545E+03 {z^1};

,25036764716319E+02 {z^0}

] / [

,00000000000000E+00 {z^5};

,23244694898799E+00 {z^4};

,12625003443188E+00 {z^3};

,96727799354837E+00 {z^2};

,48559911469971E+00 {z^1};

,12124206154579E-01 {z^0}

];

 

Приложение Б Принципиальная схема устройства

 

 

Приложение В Код программной реализации

 

#include "iostream"

#include

#include namespace std;double

//коэффициенты полинома

b0=933.862127455022 ,

b1=-4551.32837640109,

b2=8875.85287831254,

b3=-8658.20590062517,=4224.85603597545,=-825.036764716319,=1.00000000000000,=-4.23244694898799,= 7.12625003443188,=-5.96727799354837,=2.48559911469971,=-0.412124206154579;y[6]={0,0,0,0,0,0},

f[6]={0,0,0,0,0,0};n=0,i;t;

double Raschet (double u) //функция расчета выходной величины

{(i=0;i<=4;i++)[i]=f[i+1];[5]=u;[5]=(1/a0)*(f[5]*b0+f[4]*b1+f[3]*b2+f[2]*b3+f[1]*b4+f[0]*b5-a1*y[4]-a2*y[3]-a3*y[2]-a4*y[1]-a5*y[0]); //реализация схемы решения рис.5.10

for (i=0;i<=4;i++)

y[i]=y[i+1];

return y[5];

};main(int argc, char* argv[])

{n;(int j=0;j<=n;j++)

{t;<<"vuhod sistemu: "<<Raschet(t);<<endl;

}();0;

}