Динамические и частотные характеристики САУ

Автор работы: Пользователь скрыл имя, 09 Мая 2013 в 11:59, курсовая работа

Краткое описание

Целью данной курсовой работы было изучение методов теории автоматического управления на примерах и приобретение навыков применения
математических программных систем для решения практических задач в рамках таких дисциплин как «Теоретические основы автоматического управления», «Основы теории управления».
Современные вычислительные средства позволяют без особого труда и затрат времени решать сложные задачи управления в технических системах не инженерными (адаптированными) методами, а с использованием математических аппаратов любой степени сложности. При этом не требуется помощь программиста для реализации методов и визуализации проводимых исследований. Все это выполняет такая современная математическая система, как MATLAB.

Содержание

Введение 7
1 Название первого раздела 8
1.1 Название подраздела первого раздела 8
1.1.1 Название пункта в подразделе 8
2 Название второго раздела 9
Заключение 11
Список литературы 12

Прикрепленные файлы: 1 файл

Шаблон_текста_ПЗ.doc

— 563.00 Кб (Скачать документ)



Содержание

 

 

Введение

Целью данной курсовой работы было изучение методов теории автоматического  управления на примерах и приобретение навыков применения 

математических программных систем для решения практических задач  в рамках таких дисциплин как  «Теоретические основы автоматического  управления», «Основы теории управления». 

          Современные   вычислительные  средства  позволяют  без  особого труда   и   затрат   времени   решать   сложные   задачи   управления в технических системах не инженерными (адаптированными) методами, а с использованием математических аппаратов любой степени сложности. При этом не требуется помощь программиста для реализации методов и визуализации  проводимых  исследований.  Все  это  выполняет  такая современная математическая система, как MATLAB.

    1. Динамические и частотные характеристики САУ

Исходные данные:

 

Передаточная функция САУ:

>> w=tf([-3 -1 2],[-2 -7 0 -1])

Transfer function:

  3 s^2 + s - 2

-----------------

2 s^3 + 7 s^2 + 1

>> pole(w)

ans =

  -3.5399         

   0.0200 + 0.3753i

   0.0200 - 0.3753i

>> zero(w)

ans =

   -1.0000

    0.6667

>> step(w)

Рисунок 1.1 - Переходная функция

 

>> impulse(w)

Рисунок 1.2 - Импульсная функция

 

 

 

>> bode(w)

Рисунок 1.3 - Диаграмма Боде (ЛАХ)

 

>> nyquist(w)

Рисунок 1.4 - Частотный годограф Найквиста

>> ltiview(w)

 

    1. Анализ и синтез САУ методом корневого годографа

Исходные данные:

Создадим  ZPK-объект,  найдем  полюса  и нули  разомкнутой системы:

>> s=zpk('s'); W=1/(0.0001*(s^2)+0.003*s+1)

Zero/pole/gain:

       10000

-------------------

(s^2 + 30s + 1e004)

>> pole(W)

ans =

-15.0000 +98.8686i

-15.0000 -98.8686i

>> zero(W)

ans =

   Empty matrix: 0-by-1

 

 

 

 

 

Структура zpk-объекта:

При С = 3 корневой годограф:

 

 

 

 

 

 

Корневой годограф с нанесенным значением Ккр:

 

Значение Ккр:

Зададим значения 0.5K кр  и 0.25K кр  и определим значения полюсов.

Корневой годограф при  С = 0,5 Ккр = 0.00010198 и С = 0,25 Ккр = 5.1e-005

 

Рисунок 2.2 - Переходная функция для значения С= Ккр

Видно, что система  устойчива.

В  работе  на  основе  использования  метода  корневого годографа получены области значений коэффициента усиления, в которых система автоматического управления является устойчивой.

    1. Описание систем в пространстве состояний

Даны три линейные стационарные системы:

Структурная схема соединения систем:

Приведем систему 1 к  виду

.

Для этого введем переменные:

 

и, подставив их в исходные уравнения, получим:

;    ;        

Создадим матрицы всех трех систем в MatLab:

>> A1=[0 1;1 -3]

A1 =

     0     1

     1    -3

>> B1=[0;-2]

B1 =

     0

    -2

>> C1=[1 0]

C1 =

     1     0

>> A2=[1 2;3 2]

A2 =

     1     2

     3     2

>> B2=[1 -1 ;2 1]

B2 =

     1    -1

     2     1

>> C2=[-4 3]

C2 =

    -4     3

>> A3=[1 2;3 -2]

A3 =

     1     2

     3    -2

>> B3=[-4;1]

B3 =

    -4

     1

>> C3=[5 -1;3 1]

C3 =

     5    -1

     3     1

 

Создадим ss-объекты:

>> s1=ss(A1,B1,C1,0)

a =

       x1  x2

   x1   0   1

   x2   1  -3

b =

       u1

   x1   0

   x2  -2

c =

       x1  x2

   y1   1   0

d =

       u1

   y1   0

Continuous-time model.

>> s2=ss(A2,B2,C2,0)

a =

       x1  x2

   x1   1  2

   x2   3   2

b =

       u1  u2

   x1   1  -1

   x2   2   1

c =

       x1  x2

   y1  -4   3

d =

       u1  u2

   y1   0   0

Continuous-time model.

>> s3=ss(A3,B3,C3,0)

a =

       x1  x2

   x1   1   2

   x2   3  -2

b =

       u1

   x1  -4

   x2   1

c =

       x1  x2

   y1   5  -1

   y2   3   1

d =

       u1

   y1   0

   y2   0

Continuous-time model.

 

Исследуем управляемость  и наблюдаемость каждой системы:

>> rank(ctrb(A1,B1))

ans =

     2

>> rank(obsv(A1,C1))

ans =

     2

>> rank(ctrb(A2,B2))

ans =

     2

>> rank(obsv(A2,C2))

ans =

     2

>> rank(ctrb(A3,B3))

ans =

     2

 

 

>> rank(obsv(A3,C3))

ans =

     2

 

Видно,   что   во   всех   случаях   ранги   матриц   управляемости   и наблюдаемости совпадают с размерностями пространства состояний.

Получим систему, определяемую соединением.

>> sys=append(s1,s2,s3)

a =

       x1  x2  x3  x4  x5  x6

   x1   0   1   0   0   0   0

   x2   1  -3   0   0   0   0

   x3   0   0   1   2   0   0

   x4   0   0   3   2   0   0

   x5   0   0   0   0   1   2

   x6   0   0   0   0   3  -2

b =

       u1  u2  u3  u4

   x1   0   0   0   0

   x2  -2   0   0   0

   x3   0   1 -1   0

   x4   0   2   1   0

   x5   0   0   0  -4

   x6   0   0   0   1

c =

       x1  x2  x3  x4  x5  x6

   y1   1   0   0   0   0   0

   y2   0   0  -4   3   0   0

   y3   0   0   0   0   5  -1

   y4   0   0   0   0   3   1

d =

       u1  u2  u3  u4

   y1   0   0   0   0

   y2   0   0   0   0

   y3   0   0   0   0

   y4   0   0   0   0

Continuous-time model.

>> s_com=connect(sys,[3 1;2 4],[1 3],[2 3])

a =

       x1  x2  x3  x4

   x1   0   1   0   0

   x2   1  -3   0   0

   x3  -1   0   1   2

   x4   1   0   3   2

b =

       u1  u2

   x1   0   0

   x2  -2   0

   x3   0  -1

   x4   0   1

c =

       x1  x2  x3  x4

   y1   0   0  -4   3

   y2   0   0   0   0

d =

       u1  u2

   y1   0   0

   y2   0   0

Continuous-time model.

 

>> A=s_com.A

A =

     0     1     0     0

     1    -3     0     0

    -1     0     1     2

     1     0     3     2

>> B=s_com.B

B =

     0     0

    -2     0

     0    -1

     0     1

>> C=s_com.C

C =

     0     0    -4     3

     0     0     0     0

 

Проверка управляемости  и наблюдаемости системы:

>> rank(ctrb(A,B))

ans =

     3

>> rank(obsv(A,C))

ans =

     4

Система не является полностью  управляемой, но является полностью  наблюдаемой.

    1. Устойчивость линейных систем

Задана  система  управления,  описываемая  конечно-разностными уравнениями в пространстве состояний и   известна   матрица   K,   определяющая   закон   управления   u   =   Kx.

Зададим матрицы, определяющие систему:

>> A=[1 2;3 -2]

A =

     1     2

     3    -2

>> B=[-4;1]

B =

    -4

     1

>> L=[7 9]

L =

     7     9

 

Определим решение уравнения  Ляпунова:

>> G=dlyap(A, eye(2))

G =

   -0.1551   -0.0764

   -0.0764   -0.1736

 

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

>> det(G(1:1, 1:1))

ans =

   -0.1551

>> det(G)

ans =

    0.0211

 

Аналогично   можно   определить   свойство  асимптотической устойчивости в управляемой системе:

>> G=dlyap(A+B*L, eye(2))

G =

   -0.0539    0.0440

    0.0440   -0.0367

>> det(G)

ans =

  4.7835e-005

>> det(G(1:1, 1:1))

ans =

   -0.0539

 

По  критерию  Сильвестра  решение  не  является  положительно-определенной     матрицей,     следовательно,     система     не     является асимптотически устойчивой.

Определение устойчивости матрицы  Х на основе метода Раусса-Гурвица:

Создаем М-файл с кодом:

%получение  коэффициентов характеристического  полинома 

lm= poly(A); 

%определение  размерности 

[L, N] =size(lm); 

%создание  матрицы с нулевыми значениями 

g=zeros(N, N); 

%заполнение  нечетных строк матрицы Гурвица 

s=0;

for i=1:2:N

    j=1;

    j=j+s;

    r=0;

    for r=2:2:N

        g(i, j)=lm(r);

       j=j+1;

    end

    s=s+1;

end

%заполнение  четных строк матрицы Гурвица 

s=0;

for i=2:2:N

    j=1;

    j=j+s;

    r=0;

    for r=1:2:N

        g(i, j)=lm(r);

       j=j+1;

    end

    s=s+1;

end

g=g(1:N-1, 1:N-1);

%вычисление  главных миноров

minor=1;

for i=1:N-1

   dd = det(g(1:i, 1:i));

   if dd<0 

     minor=0;

   end

end

%вывод результатов

if minor==0 

    disp('СИСТЕМА НЕ УСТОЙЧИВА');

else

    disp('СИСТЕМА УСТОЙЧИВА');

end

 

Вызываем из командного окна MatLab этот файл (rauss.m)

>> rauss

СИСТЕМА НЕ УСТОЙЧИВА

Результат  вычисления  показывает,  что  система  управления  не является асимптотически устойчивой.

График свободного движения системы  при начальных условиях показан на рисунках 4.1 и 4.2:

Рисунок 4.4.1 -

 

Рисунок 4.2 – 

 

График динамики управляемой  системы при начальных условиях показан на рисунках 4.3 и 4.4.

 

Рисунок 3.3 –

 

 

Рисунок 3.4 – 

    1. Синтез оптимального управления с полной обратной связью

Модель системы:

Функционал качества управления:

Текст m-файла, реализующего поиск оптимального управления:

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

A=[1 2; 2 1];

B=[-2 -3; -4 -1];

 

% Параметров  критерия качества управления 

Q=[0 0;0 5];

 

R=[7/2 1; 1 7/2];

 

% Время  регулирования 

T=10; 

% Величина  шага 

SS=0.5;

% Количество  шагов 

N=T/SS

 

% Вычисление  параметров регулятора 

[k p e]= dlqr(A, B, Q, R)

 

x = zeros(2, N);

u=  zeros(2, N-1);

 

% Начальные  условия 

x(1,1)=1;

x(2,1)=2;

 

% Построение  графиков динамики системы 

for i=1:N-1,

    u(:, i)= - k*x(:, i);,

    x(:, i+1)=A*x(:, i)+B*u(:, i);

end

 

x1= x(1,:);

x2= x(2,:);

t = 0:SS:T-SS;

 

subplot(4, 1, 1); 

plot(t, x1, 'b'); 

subplot(4, 1, 2);

plot(t, x2, 'g');

 

subplot(4, 1, 3);

plot(SS:SS:T-SS, u(1, :), 'y');

 

subplot(4, 1, 4);

plot(SS:SS:T-SS, u(2, :), 'r');

 

Вызов файла optupr.m из командного окна:

>> optupr

k =

   -0.4805   -0.1724

   -0.0108   -0.3568

p =

    0.8462    0.4802

    0.4802    5.9488

e =

    0.1804

   -0.2202

Рисунок 5.1 - Графики динамики системы

    1. Фильтр Калмана

Вид передаточной функции:

Произведем расчет фильтра  Калмана:

>> sys=ss(tf(1,[(0.01)^2 2*0.01*0.15 1 0]))

a =

           x1      x2      x3

   x1     -30  -78.13       0

   x2     128       0       0

   x3       0       1       0

b =

       u1

   x1   8

   x2   0

   x3   0

c =

          x1     x2     x3

   y1      0      0  9.766

d =

       u1

   y1   0

Continuous-time model.

>> [A,B,C,D]=ssdata(sys)

A =

  -30.0000  -78.1250         0

  128.0000         0         0

         0    1.0000         0

B =

     8

     0

     0

C =

         0         0    9.7656

D =

     0

>> P=ss(A, [B B], C, [D D])

a =

           x1      x2      x3

   x1     -30  -78.13       0

   x2     128      0       0

   x3       0       1       0

b =

       u1  u2

   x1   8   8

   x2   0   0

   x3   0   0

c =

          x1     x2     x3

   y1      0      0  9.766

d =

       u1  u2

   y1   0   0

Информация о работе Динамические и частотные характеристики САУ