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

2.4 Анализ управляемости и наблюдаемости объекта

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

Матрица управляемости находиться по команде

U = ctrb (A, B)

U = 0 0.2500 0 0.6131

0 -0.2500 0 -3.0656

-0.2500 0 -3.0656 0

0.2500 0 0.6131 0

Проверим ранг матрицы управляемости командой

rank (U)

ans = 4

Матрица имеет полный ранг (невырожденная), следовательно, объект по этому входу (воздействие на каретку) полностью управляем.

Составим матрицу наблюдаемости с помощью команды

V = obsv (A,C)

V = 1.0000 0 0 0

0 0 0 1.0000

0 -2.4525 0 0

0 0 -2.4525 0

Проверим ранг этой матрицы:

rank (V)

ans = 4

Матрица наблюдаемости имеет полный ранг, следовательно объект наблюдается полностью по этому входу.

2.5 Передаточная функция линеаризованного объекта

Получим передаточную функцию объекта по команде:

[num, den]=ss2tf(A, B, C ,D)

num = 0 0.0000 0.2500 -0.0000 -2.4525

den =1.0000 0.0000 -12.2625 0 0

printsys (num, den)

num/den =

4.4409e-016 s^3 + 0.25 s^2 - 6.1062e-015 s - 2.4525

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

s^4 + 4.4409e-016 s^3 - 12.2625 s^2

Исчезающие малые коэффициенты числителя и знаменателя появляются из-за неточной линеаризации исходной нелинейной модели. Вручную определим коэффициенты числителя и знаменателя:

num1 = [0.25 0 -2.4525]

den1 = [1 0 -12.2625 0 0]

obj = tf(num1, den1)

Получаем:

Transfer function:

0.25 s^2 - 2.453

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

s^4 - 12.26 s^2

По передаточной функции объекта получим матрицы модели в форме пространства состояний:

[A1, B1, C1, D1] = ssdata (obj)

A1 = 0 3.0656 0 0

4.0000 0 0 0

0 2.0000 0 0

0 0 2.0000 0

B1 =0.5000

0

0

0

C1 = 0 0.1250 0 -0.3066

D1 = 0

Из сопоставления А1,В1,С1,D1 следует, что они различные. Это является следствием того, что переход от передаточной функции к форме пространства состояний не является однозначным, а осуществляется с точностью до невырожденного преобразования матрицы состояния.

Вычислим нули и полюсы передаточной функции объекта.

zpk(obj)

Zero/pole/gain:

0.25 (s-3.132) (s+3.132)

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

s^2 (s-3.502) (s+3.502)

Получили так называемую факторизованную форму передаточной функции – числитель и знаменатель разложены на линейные множители. Нет одинаковых нулей и полюсов.

3. СИНТЕЗ РЕГУЛЯТОРА

3.1. Синтез регулятора состояния

Регулятор состояния представляет собой устройство, реализующее отрицательную обратную связь по всем компонентам вектора состояния. Матрица состояния замкнутой системы A-Bk должна иметь желаемые собственные значения, что обеспечивается надлежащим выбором матрицы регулятора k.

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

p = [-1 -2 -3 -4]'

Матрицу регулятора найдем по команде:

k = place (A, B, p)

k = -9.7859 -198.8359 -60.3874 -20.3874

Проверим собственные значения замкнутой системы:

eig(A - B * k)

ans = -4.0000

-3.0000

-2.0000

-1.0000

Замкнутая система имеет желаемые собственные значения , т.е. синтез регулятора состояния проведен корректно.

3.2. Синтез наблюдателя состояния

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

Задача синтеза наблюдателя состояния имеет решения, если объект наблюдаем.

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

Задача синтеза наблюдателя является дуальной по отношению к задаче синтеза регулятора состояний. Решим эту задачу тем же методом размещения собственных значений.

Введем следующие собственные значения наблюдателя:

po = [-8 -10 -12 -14]'

Матрица обратной связи наблюдателя получается по команде:

L = place (A',C',po)'

L=

1.0e+003 *

0.0440

-2.3011

-9.1214

0.7283

На рисунке 3.1 изображена схема системы управления

Рис. 3.1. Схема системы управления

3.3. Динамический регулятор

Динамический регулятор представляет собой объединение регулятора состояния и наблюдателя состояния. Матрица динамического регулятора вычисляется по команде:

[Ar, Br, Cr, Dr] = reg (A, B, C, D, k, L)

Ar =1.0e+003 *

-0.0440 0 0 0.0010

2.3011 0 0.0010 0

9.1190 -0.0374 -0.0151 -0.0051

-0.7258 0.0473 0.0151 0.0051

Br =1.0e+003 *

0.0440

-2.3011

-9.1214

0.7283

Cr = -9.7859 -198.8359 -60.3874 -20.3874

Dr = 0

Проверим устойчивость самого регулятора:

eig(Ar)

ans = -47.7585 +55.0254i

-47.7585 -55.0254i

44.6489

-3.1319

Оказалось, что регулятор сам является неустойчивым динамическим звеном. Вместе с тем, замкнутая система, образованная неустойчивым объектом и неустойчивым регулятором, является устойчивой системой, причем имеет желаемое собственное значение.

[numr, denr] = ss2tf(Ar, Br, Cr, Dr)

regulator = tf (numr, denr)

Transfer function:

9.931e005 s^3 + 3.395e006 s^2 - 3.24e005 s - 1.315e005

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

s^4 + 54 s^3 + 1203 s^2 - 2.338e005 s - 7.424e005

Соседние файлы в папке kurs_1
  • #
    22.02.201411.01 Кб51kyps1.mdl
  • #
    22.02.201412.53 Кб48kyps2.mdl
  • #
    22.02.201412.57 Кб49kyps3.mdl
  • #
    22.02.201412.57 Кб49kyps4.mdl
  • #
    22.02.201414.27 Mб103kyrs.doc
  • #
    22.02.2014125 б50sintezDR.asv
  • #
    22.02.2014390 б49sintezDR.m