- •Санкт-Петербургский Государственный Электротехнический Университет «лэти»
- •Введение
- •1. Перевернутый маятник как объект управления
- •1.1. Описание объекта
- •1.2. Математические модели объекта управления
- •2.4 Анализ управляемости и наблюдаемости объекта
- •3.4. Анализ замкнутой системы
- •4.2. Синтез дискретного регулятора Проведем синтез дискретного регулятора по дискретной модели объекта, которую получим для периода дискретизации . Дискретизацию объекта проведем по команде:
- •Проведем анализ устойчивости дискретного объекта:
- •4.3. Анализ замкнутой системы
- •Заключение
- •Список используемой литературы
- •С. Е. Душин, н. С. Зотов, д. Х. Имаев, н. Н. Кузьмин, в. Б. Яковлев “Теория автоматического управления”.- м.:”Высшая школа”, 2003
- •“Matlab Help” 1994-2006 The MathWorks, Inc.
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