Файл: Prakticheskoe_zanyatie_3_Retinskiy.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 19.07.2019

Просмотров: 120

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Практическое занятие №3

ОПИСАНИЕ СИСТЕМ В ПРОСТРАНСТВЕ СОСТОЯНИЙ

Вариант 1

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

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

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

В оболочке MATLAB создадим матрицы первой системы:

>> 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

>> 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.

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

>> 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

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

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

Для корректного использования функции connect введем дополнительную систему, передаточная функция которой равна 1.

>> s4=tf(1)

Transfer function:

1

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

>> Q=[3 1 4;4 2 0;5 5 0;2 5 0]

>> in=[1 6]

>> out=[3 5]

>> s_com=connect(sys,Q,in,out);

Обращаясь к данным объекта, можно получить матрицы А, В, С:

>> A=s_com.a;

>> B=s_com.b;

>> C=s_com.c;

Вычислим ранги матриц наблюдаемости и управляемости итоговой системы:

>> rank(ctrb(A,B))

ans = 6

>> rank(obsv(A,C))

ans = 6

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