Вкачестве примера примем k=1 Н/м, m=1 кг и запишем матрицы
всвойства блока State-Space (рис. 42).
Вкачестве входного сигнала используем единичное ступенчатое
воздействие 1(t). Так как блок State-Space принимает на вход вектор и выдает также вектор, то для подключения в модели необходимо ис- Спользовать элементы Mux и Demux для входа и выхода соответствен-
но (рис. 43) [1].
иР с. 43. Структурная схема колебательной системы
Из р бАс. 44 в дно, что после подачи единичного импульса на вход в с стеме нач наются незатухающие колебания. Это согласуется с физическ м смыслом подвижного груза на пружине без учета сил трения и рассеивания энергии. Можно сделать вывод, что система неустойчива [1].
Д И
Рис. 44. Сигналы на входе (u) и выходе (y) колебательной системы
41
Для синтеза оптимального параметра регуляторов линейных стационарных систем в Control System Toolbox имеются функции решений уравнений Беллмана (табл. 2).
|
|
|
Таблица 2 |
|
|
Функции ControlSystemToolbox |
|
|
|
|
|
|
нтакс с |
|
Описание |
|
[K P e] = lqr(A, B, Q, S) |
Синтез непрерывного регулятора |
|
|
[K P e] = lqr(A, B, Q, S, N) |
Синтез непрерывного регулятора |
|
|
[K P e] = dlqr(A, B, Q, R) |
Синтез дискретного регулятора |
|
|
[K P e] = dlqr(A, B, Q, R, N) |
Синтез дискретного регулятора |
|
С |
|
|
|
|
[K P e] = lqrd(A, B, Q, R, Ts) |
Синтез дискретного регулятора |
|
|
[K P e] = lqrd(A, B, Q, R, N, Ts) |
Синтез дискретного регулятора |
|
иФункц я lqr выч сляет матрицу коэффициентов регулирования K со среднеквадрат чным функционалом качества без терминального члена. Функц я dlqr вычисляет матрицу коэффициентов регулирования по всем переменным состояния K для дискретной системы со среднеквадратичным функционалом качества без терминального члена. Функция lqrd предназначена для синтеза оптимального дискретного регулятора непрерывной системы со среднеквадратичным функ-
ционалом качества [1, 2]. |
Д |
|
|||||
Осуществим автоматизированный синтез регулятора с помощью |
|||||||
функции lqrбАв пакете Control System Toolbox. |
|
||||||
Во-первых, для управления системой необходимо, чтобы все со- |
|||||||
стояния были наблюдаемы. Для этого выведем вторым выходом пе- |
|||||||
ременную состояния z, и тогда новая матрица C запишется в виде |
|||||||
единичной диагональной матрицы [1, 2] |
|
||||||
|
C |
|
1 |
0 |
|
. |
|
|
|
|
|
||||
|
|
0 |
1 |
|
(29) |
||
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
Функция lqr синтезирует с использованиемИчисленной оптими- |
|||||||
зации стабилизирующий регулятор таким образом, чтобы минимизи- |
|||||||
ровать квадратичную целевую функцию [1, 2] |
|
||||||
|
|
|
|
|
|
|
|
J xT (t)Qx(t) uT (t)Ru(t)dt min. |
(30) |
||||||
0 |
|
|
|
|
|
|
|
42
Матрицы Q и R предназначены для выбора весов (важности) минимизации одного критерия перед другим. Для примера можно выбрать единичные диагональные матрицы Q = R = C = 1.
ледующий код на языке MATLAB запускает функцию lqr:
ввод модели системы в виде пространства состояний
n = 2;%число состояний
A = [0 1; -1 0];
|
B = [0 0; 1 0]; |
|
||
|
C = [1 0; 0 1]; |
|
||
|
D = [0 0; 0 0]; |
|
||
Сс нтез регулятора |
|
|||
|
Q = diag(ones(1,n)); |
%веса выходов |
||
|
R = diag(ones(1,n)); |
%веса входов |
||
|
|
бА |
||
|
K = lqr(A,B,Q,R) %синтез регулятора |
|||
|
и |
|||
|
После выполнен я последней строчки кода получаем в консоли |
|||
|
MATLAB: |
|
|
|
|
K = |
|
|
|
|
0.4142 |
1.3522 |
|
|
|
|
0 |
0 |
|
Промоделируем систему с отрицательной обратной связью. Для
этого добавим в систему блок Gain со свойствами: Д И
Рис. 45. Свойства блока Gain
43
Си бА Д Рис. 47. Сигнал на выходе колебательнойИсистемы
Р с. 46. Структурная схема колебательной системы с регулятором
с регулятором
Рис. 48. Структурная схема колебательной системы с регулятором и усилителем
44
Из рис. 47 видно, что установившееся значение выходного сигнала системы не равно входному. Эта ошибка означает, что коэффициент усиления системы с отрицательной обратной связью отличается от 1. Включив в систему усилитель с коэффициентом 1,412, полу-
чаем в результате систему с единичным коэффициентом усиления [1]: Си бА
Рис. 49. Сигнал на выходе колебательнойДсистемы сИрегулятором и усилителем при подаче на вход единичного ступенчатого воздействия
Для рассматриваемой механической колебательной системы построим модель в SimMechanics.
Построение модели
Построение модели начинаем с размещения в модели блоков
Ground и Machine Environment из библиотеки Simscape / SimMechanics / Bodies. В параметрах Ground устанавливаем Show Machine Environmentport и подключаем к появившемуся порту модуль Machine Environment. Блок Ground моделирует неподвижную систему отсчета [1, 2].
45