- •1 Лабораторная работа Динамические и частотные характеристики сау
- •Лабораторная работа 2 Анализ и синтез сау методом корневого годографа Цель работы:
- •Лабораторная работа 3 Описание систем в пространстве состояний
- •Лабораторная работа 4 Устойчивость линейных систем Цель работы:
- •Синтез оптимального управления с полной обратной связью
- •6 Лабораторная работа
- •7 Лабораторная работа синтез пидtрегулятора
- •8 Лабораторная работа
- •Лабораторная работа 9
Лабораторная работа 3 Описание систем в пространстве состояний
Целью работы:
является ознакомление с описанием и исследованием динамических систем управления в пространстве состояний.
Создадим матрицы первой системы –
>> A1=[5 3;2 1]
A1 =
5 3
2 1
>> B1=[-1;3]
B1 =
-1
3
>> C1=[1 2;2 -1]
C1 =
1 2
2 -1
>> A2=[1 0;1 2]
A2 =
1 0
1 2
>> B2=[1 1;;2 1]
B2 =
1 1
2 1
>> C2=[5 -2;2 3]
C2 =
5 -2
2 3
>> A3=[1 2;3 2]
A3 =
1 2
3 2
>> B3=[1;2]
B3 =
1
2
>> C3=[-1 2]
C3 =
-1 2
Создавая, аналогично, матрицы двух других систем создадим ss-объекты:
>> s1=ss(A1, B1, C1,0)
a =
x1 x2
x1 5 3
x2 2 1
b =
u1
x1 -1
x2 3
c =
x1 x2
y1 1 2
y2 2 -1
d =
u1
y1 0
y2 0
Continuous-time model.
>> s2=ss(A2, B2, C2,0)
a =
x1 x2
x1 1 0
x2 1 2
b =
u1 u2
x1 1 1
x2 2 1
c =
x1 x2
y1 5 -2
y2 2 3
d =
u1 u2
y1 0 0
y2 0 0
Continuous-time model.
>> s3=ss(A3, B3, C3,0)
a =
x1 x2
x1 1 2
x2 3 2
b =
u1
x1 1
x2 2
c =
x1 x2
y1 -1 2
d =
u1
y1 0
Continuous-time model.
3. Исследуем наблюдаемость и управляемость каждой системы, для чего построим соответствующие матрицы и посчитаем их ранги –
>> 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
Видно, что во всех случаях ранги матриц управляемости и наблюдаемости совпадают с размерностями пространства состояний.
4. Получим систему, определяемую соединением.
Для корректного использования функции connect введем дополнительную систему, передаточная функция которой равна 1 (рис).
>> s4=tf(1)
Transfer function:
1
>> sys=append(s1,s2,s3,s4);
>> Q=[2 -4 5;3 1 0;4 2 0;5 2 0];
>> in=[1 5];
>> out=[3 4];
Обращаясь к данным объекта, можно получить матрицы А, В, С:
>> s_com=connect(sys,Q,in,out);
>> A=s_com.A;
>> B=s_com.B;
>> C=s_com.C;
4. Вычислим ранги матриц наблюдаемости и управляемости итоговой системы:
>> rank(ctrb(A,B))
ans =
6
>> rank(obsv(A,C))
ans =
6
Вывод: Результаты показывают, что система управляема и наблюдаема.
УПРАВЛЯЕМАЯ СИСТЕМА [controlled system] — система, являющаяся объектом управления
Лабораторная работа 4 Устойчивость линейных систем Цель работы:
Ознакомление с критериями устойчивости и выявление у заданной управляемой линейной системы с полной обратной связью свойства асимптотической устойчивости.
1. Зададим матрицы, определяющие систему:
>> A=[5 3;2 1]
A =
5 3
2 1
>> B=[-1;3]
B =
-1
3
>> L=[2 2]
L =
2 2
2. Определим решение уравнения Ляпунова
>> G=dlyap(A, eye(2))
G =
0.1667 -0.4167
-0.4167 0.8333
3. Произведем расчет главных миноров
>> det(G(1:1,1:1))
ans =
0.1667
>> det(G)
ans =
-0.0347
>> G=dlyap(A+B*L, eye(2))
G =
-0.4983 0.6389
0.6389 -0.8472
>> det(G)
ans =
0.0140
>> det(G(1:1,1:1))
ans =
-0.4983
По критерию Сильвестра решение дискретного уравнения Ляпунова не является положительно-определенной матрицей, следовательно, система не является асимптотически устойчивой.
5. Приведем текст script-файла для определения устойчивости матрицы X на основе использования метода Раусса-Гурвица.
%получение коэффициентов характеристического полинома
x1=[0 0 0 0]
x1(1)=2
x2=[0 0 0 0]
x2(1)=1
for k=1:1:4
x1(k+1)=5*x1(k)+3*x2(k)-2*x1(k)+2*x2(k)
x2(k+1)=2*x1(k)+x2(k)+3*(2*x1(k)+2*x2(k))
end
subplot(221)
plot(x1)
subplot(222)
plot(x2)
4. Аналогично можно определить свойство асимптотической устойчивости в управляемой системе.
G=dlyap(A+B*L, eye(2))
det(G)
det(G(1:1,1:1))
По критерию Сильвестра решение дискретного уравнения Ляпунова не является положительно-определенной матрицей, следовательно, система не является асимптотически устойчивой.
5. Приведем текст script-файла для определения устойчивости матрицы X на основе использования метода Раусса-Гурвица.
%получение коэффициентов характеристического полинома
lm= poly(А);
%определение размерности
[L, N] =size(lm);
%создание матрицы с нулевыми значениями
g=zeros(N, N);
%заполнение нечетных строк матрицы Гурвица
s=0
for i=1:2:N
j=1
j=j+s
r=0
for r=1:2:N
g(i,j)=Im(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)=Im(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
x1=[0 0 0 0]
x1(1)=2
x2=[0 0 0 0]
x2(1)=1
for k=1:1:9
x1(k+1)=5*x1(k)+3*x2(k)-2*x1(k)+2*x2(k)
x2(k+1)=2*x1(k)+x2(k)+3*(2*x1(k)+2*x2(k))
end
СИСТЕМА УСТОЙЧИВА
Результат вычисления показывает, что система управления не является асимптотически устойчивой.
График
динамики управляемой системы при
начальных условиях
subplot(223)
plot(x1)
subplot(224)
plot(x2)
Полученные графики динамики системы иллюстрируют полученный аналитический результат о устойчивости системы.
Вывод: Результат вычисления показывает, что система управления является асимптотически устойчивой.
Тривиальное
решение x = 0 системы (1) называется
асимптотически устойчивым, если оно
устойчиво по Ляпунову и выполняется
условие
для
всякого
с начальным условием x0, лежащим в
достаточно малой окрестности нуля.
Лабораторная 5
