Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Представление линейных стационарных непрерывных и дискретных систем в фазовом пространстве. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
11.08.2026
Размер:
567 Кб
Скачать

Б.П. РОДИН

ПРЕДСТАВЛЕНИЕ ЛИНЕЙНЫХ СТАЦИОНАРНЫХ НЕПРЕРЫВНЫХ И ДИСКРЕТНЫХ СИСТЕМ В ФАЗОВОМ ПРОСТАНСТВЕ

Учебное пособие к практическим занятиям

ÓÄÊ 681.511

Родин, Б.П.

Представление линейных стационарных непрерывных и дискетных

систем в фазовом пространстве: Учеб. пособие к практическим заняти-

ям / Б.П. Родин. — Саратов: Издательство «Вузовское образование», 2013.

(Высшее образование). — 68 c—. Док. опубл. не был. — Доступ с сайта ЭБС IP

Rbooks.

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

Б.П. Родин, 2008

2

1Занятие первое. Уравнения состояния и выхода линейных стационарных непрерывных и дискретных систем. Собственные числа и собственные векторы

Линейная стационарная непрерывная система описывается линейными дифференциальными уравнениями с постоянными коэффициентами, а линейная стационарная дискретная система - линейными разностными уравнениями с постоянными коэффициентами. Уравнения состояния и выхода линейной непрерывной системы имеют вид

x(t) = Ax(t) + Bu(t);

y(t) = Cx(t) + Du(t);

(1)

а уравнения состояния и выхода линейной дискретной системы -

 

x(k + 1) = Ax(k) + Bu(k);

y(k) = Cx(k) + Du(k);

(2)

ãäå x(x1; x2; :::xn)T - вектор состояния системы; u = (u1; u2; :::ur)T - âõîä- ной сигнал; y = (y1; y2; :::ym)T - выходной сигнал; A n n - матрица

системы; B n r - матрица входного сигнала; C m n - матрица выходного сигнала; D m r - матрица обхода системы; t - непрерывной время, принимающее действительные значения; k - дискретное время,

принимающее целочисленные значения.

Если элементы матриц A; B; C; D - постоянные числа, то системы (1)

и (2) называются стационарными. Если элементы этих матриц являются функциями непрерывного t или дискретного k времени, соответственно,

то системы (1) и (2), оставаясь линейными, перестают быть стационарными.

Число компонент n вектора состояния x называют порядком системы, число компонент r входного сигнала u - числом входов, а число компонент m выходного сигнала y - числом выходов.

1.1

Каков порядок систем?

 

2

4

 

1

 

 

 

x =

1

1

 

x +

1

u; y = x;

1u(k);

x(k + 1) = 0 0:2

1:2

0:7

1x(k) +

0 1

 

0:3

0:7

0:7

A

 

1

A

@ 0:2 0:2

0:3

 

@ 0

y(k) = x(k)

Сколько у них входов и выходов?

3

1.2

Сколько входов и сколько выходов имеет система

2

4

 

u2

 

 

 

x 1

1

x + B

u1

 

; y = 1 2 x

Характеристическим полиномом P ( ) линейной стационарной системы (1) или (2) называется характеристический полином ее матрицы A. Таким образом, характеристический полином P ( ) есть определитель матрицы I A:

P ( ) = det( I A) = ( 1)n det(A I)

(3)

Собственными числами линейной стационарной системы называют корни ее характеристического полинома.

1.3

Найти характеристический полином системы

x(k + 1) =

0:2 0:3 x(k) +

1 u(k); y(k) = x(k)

 

0 0:1

1

1.4

Найти собственные числа системы из задачи 1.3

Характеристический полином (3) имеет степень n, совпадающую с порядком системы:

P ( ) = n + p1 n 1 + p2 n 2 + ::: + pn 1 + pn

(4)

Значение полинома (4) при = 0 равно pn. Если положить = 0 в определении характеристического полинома (3) p(0) = det( A) = ( 1)n det A, то получим, что свободный член характеристического по-

линома матрицы A равен определителю этой матрицы при четном n и отличается от этого определителя лишь знаком при нечетном n.

1.5

Найти свободные члены характеристических полиномов систем из зада- чи 1.1

Сумму диагональных элементов матрицы A называют ее следом и обозначают tr A. Таким образом

n

X tr A = aii

i=1

4

1.6

Найти следы матриц систем из задачи 1.1

Коэффициент p1 характеристического полинома (4) матрицы равен следу этой матрицы, взятому со знаком минус: p1 = tr A.

1.7

Найти коэффициент характеристического полинома при первой степенидля системы из задачи 1.3

Если из матрицы A выбросить все строки, кроме i1; i2; :::ip, è âñå столбцы, кроме столбцов j1; J2; :::jp, то определитель полученной в результате матрицы будет минором матрицы A порядка p:

A

j1

j2

:::

jp

 

= det

0

:::

:::

:::

1

 

i

i

:::

i

 

 

 

ai1j1

::: ai1jp

A

1

2

 

p

 

@ aipj1

:::

aipjp

Миноры, для которых i1 = j1; i2 = j2; :::ip = jp, называются главны- ми для матрицы A.

1.8

Найти все главные миноры второго порядка для матриц систем из зада- чи 1.1

Обозначим через cl сумму всех главных миноров порядка l матрицы A 1 l n. Тогда характеристический полином этой матрицы можно

записать в виде

P ( ) = n c1 n 1 + c2 n 2 ::: + ( 1)ncn

1.9

Найти характеристические полиномы систем из задачи 1.1 В уравнениях движения (1) и (2) выполним замену переменной, пе-

рейдя к новому вектору состояния x~, связанному со старым x равенством

x = Sx;~

(5)

в котором матрица S невырождена det S 6= 0 и, следовательно, имеет обратную S 1. Уравнения движения (1) непрерывной системы в новых координатах примут вид

x~ = S 1ASx~(t) + S 1Bu(t);

 

y(t) = CSx~(t) + Du(t);

(6)

а уравнения движения (2) дискретной системы -

5

x~(k + 1) = S 1ASx~(k) + S 1Bu(k);

 

y(k) = CSx~(k) + Du(k);

(7)

Таким образом, в новых координатах

 

A~ = S 1AS

(8)

1.10

Для системы из задачи 1.3 выполнить линейную замену (5) фазового

вектора с матрицей S =

1 1

1 2

~

Квадратные матрицы A и A, связанные равенством (8), называют

подобными. Подобные матрицы имеют одинаковые характеристические полиномы.

~ 1 1

P ( ) = det( I A) = det( I S AS) = det[S ( I A)S] =

= det S 1 det( I A) det S = det( I A)

Таким образом, характеристический полином линейной стационарной системы инвариантен при линейном невырожденном преобразовании (5) фазовых координат этой системы.

1.11

Найти характеристический полином системы с уравнением состояния

x~(k + 1) =

0 0:2 x~(k) +

0 u(k)

 

0:1 0

1

и сравнить его с характеристическим полиномом, найденным при решении задачи 1.3

Рассмотрим применение программы MATLAB для развертывания характеристического полинома на примере матрицы

A =

0

0:25

0:35

0:15 0:15

1

(9)

 

B

0:10

0

 

0 0

C

 

 

0:10 0:10 0:30 0:10

 

 

B

 

0:05

0:05

 

0:05 0:45

C

 

 

@

 

 

 

A

 

Начинаем с ввода элементов матрицы (9), следуя следующим правилам: 1) вводим элементы матрицы A по строкам, 2) отделяем элемен-

ты строки друг от друга пробелами или запятыми, 3) печатаем точку с запятой, чтобы разделить строки матрицы, 4) весь список элементов вводимой матрицы заключаем в прямоугольные скобки, 5) если список

6

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

A = [0:1000; 0:250:35 0:150:15; :::

0:1 0:10:30:1; 0:050:05 0:050:45]

и после нажатия клавиши Enter видим на экране

A =

0:1000

0

0

0

0:2500

0:3500

0:1500

0:1500

0:1000

0:1000

0:3000

0:1000

0:0500

0:0500

0:0500

0:4500

можно исключить вывод на экран матрицы A, напечатав в конце спис-

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

Коэффициенты характеристического полинома матрицы A получим

после выполнения команды:

p = poly(A) p =

1:000 1:2000 0:4900 0:0780 0:0040

Таким образом, вычислен характеристический полином P ( ) матрицы (9):

P ( ) = 4 1:2 3 + 0:49 2 0:078 + 0:004

(10)

Алгебраическая проблема вычисления корней полинома (10) решается для пользователя программы MATLAB вводом в строку командного окна текста

r = roots(p)

После нажатия клавиши Enter получим на экране r =

0:5000

0:4000

0:2000

0:1000

1.12

Найти характеристический полином и собственные числа систем

x(k + 1) =

0 0:2

1:2

0:7

1x(k) +

0 1

1u(k)

 

0:3

0:7

0:7

A

1

A

 

@ 0:2 0:2

0:3

@ 0

7

è

0 0:2

0:6

0:2

1x(k) +

0 0 1u(k)

x(k + 1) =

 

0:2

0:2

0:2

A

1

 

@ 0:2 0:2

0:2

@ 1 A

Собственным вектором квадратной матрицы A, отвечающей собственному числу , называется ненулевой столбец h, удовлетворяющий уравнению

Ah = h

(11)

Перепишем это уравнение, вводя единичную матрицу, в виде AhIh = 0. После вынесения столбца h вправо за скобки получим

(A I)h = 0

(12)

Собственными векторами линейной стационарной системы с уравнениями движения (1) или (2) будем называть собственные векторы матрицы A.

1.13

Найти собственные векторы системы из задачи 1.2

1.14

Найти собственные числа и собственные векторы системы

 

0 3

 

 

1

 

x =

5 2

 

x +

0

u; y = x

1.15

Определить собственные числа системы с уравнением состояния

x =

0 0

3

3

1x +

0 1 1u

 

@

3

6

0

A

@

1

A

 

6

6

3

1

Найти собственный вектор, отвечающий вещественному собственному числу.

1.16

Определить собственные числа и собственные векторы системы с уравнением состояния

8

x =

0 1

3

2

1x +

0 0 1u:

 

@

4

6

1

A

@

1

A

 

6

6

3

0

1.17

Найти собственные числа и собственные векторы систем с уравнениями состояния

 

1

3

 

 

0

 

x =

1

1

 

x +

1

u;

 

0

2

 

0

 

x =

2

0

 

x +

1

u:

1.18

Найти собственные векторы системы из задачи 1.3

Рассмотрим применение программы MATLAB для вычисления собственных числе (eigenvalues) и соответствующих им собственных вектором (eigenvectors) на примере матрицы (9). Вводим элементы матрицы A так же, как делали это выше при развертывании характеристическо-

го полинома этой матрицы. Если обозначить матрицу, столбцы которой образованы искомыми собственными векторами матрицы A через S, а

диагональную матрицу, образованную искомыми собственными числами матрицы A, через R, то вычислить эти матрицы можно, выполнив

команду

[S; R] = eig(A)

После нажатия клавиши Enter получим на экране

S =

0

0

0

0:7071

0:7071

0:0000

0:7071

0:7071

0:0000

0:7071

0:7071

0:0000

0:7071

0:7071

0:0000

0:0000

R =

 

 

 

0:5000

0

0

0

0

0:4000

0

0

0

0

0:2000

0

0

0

0

0:1000

Собственные векторы матрицы A в столбцах матрицы S упорядоче- ны также, как собственные числа матрицы A на диагонали матрицы R.

9

Так, собственному числу 1 = 0:5, стоящему в первом столбце матрицы R, отвечает вектор

S1 =

0; 0:7071; 0; 0:7071

T ;

(13)

стоящий в первом столбце матрицы S. Собственные числа матрицы A стоят на диагонали матрицы R в порядке убывания. Переупорядочить

их в порядке возрастания можно, выполнив команду

Rn = rot90(R; 2)

Rn =

0:1000

0

0

0

0

0:2000

0

0

0

0

0:4000

0

0

0

0

0:5000

Собственно нужно переупорядочить столбцы матрицы S:

Sn = S(: [4 3 2 1])

Sn =

0:7071

0

0

0

0:7071

0:7071

0:0000

0:7071

0:0000

0:7071

0:7071

0:0000

0:0000

0:0000

0:7071

0:7071

Столбец (13) отвечает собственному числу 1 = 0:5 матрицы (9). Вектор, полученный умножением (13) на любое отличное от нуля число k, будет также собственным, отвечающим числу 1. Вектор S1 (13), стоящий в первом столбце матрицы S, выделяется из этого множества kS1 собственных векторов, отвечающих собственному числу 1 = 0:5, тем, что его длина равна единице. Выделим из матрицы S второй ее столбец S2. Это можно сделать, выполнив команду

S2 = S(:; 2) S2 =

00:00000:70710:7071

Возведем каждую координату вектора S2 в квадрат и образуем из этих квадратов столбец kvS2:

kvS2 = S2:b2 kbvS2 =

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]