Автор работы: Пользователь скрыл имя, 09 Мая 2013 в 11:59, курсовая работа
Целью данной курсовой работы было изучение методов теории автоматического управления на примерах и приобретение навыков применения
математических программных систем для решения практических задач в рамках таких дисциплин как «Теоретические основы автоматического управления», «Основы теории управления».
Современные вычислительные средства позволяют без особого труда и затрат времени решать сложные задачи управления в технических системах не инженерными (адаптированными) методами, а с использованием математических аппаратов любой степени сложности. При этом не требуется помощь программиста для реализации методов и визуализации проводимых исследований. Все это выполняет такая современная математическая система, как MATLAB.
Введение 7
1 Название первого раздела 8
1.1 Название подраздела первого раздела 8
1.1.1 Название пункта в подразделе 8
2 Название второго раздела 9
Заключение 11
Список литературы 12
Содержание
Целью данной курсовой работы было изучение методов теории автоматического управления на примерах и приобретение навыков применения
математических программных
Современные вычислительные средства позволяют без особого труда и затрат времени решать сложные задачи управления в технических системах не инженерными (адаптированными) методами, а с использованием математических аппаратов любой степени сложности. При этом не требуется помощь программиста для реализации методов и визуализации проводимых исследований. Все это выполняет такая современная математическая система, как MATLAB.
Исходные данные:
Передаточная функция САУ:
>> 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)
Исходные данные:
Создадим 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 к виду
.
Для этого введем переменные:
и, подставив их в исходные уравнения, получим:
; ;
Создадим матрицы всех трех систем в 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
Система не является полностью управляемой, но является полностью наблюдаемой.
Задана система управления, описываемая конечно-разностными уравнениями в пространстве состояний и известна матрица 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 –
Модель системы:
Функционал качества управления:
Текст 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 - Графики динамики системы
Вид передаточной функции:
Произведем расчет фильтра Калмана:
>> 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
Информация о работе Динамические и частотные характеристики САУ