Спецификации временной области

Этот пример дает обзор доступных требований во временной области для настройки системы управления с systune или looptune.

Фон

The systune и looptune команды настраивают параметры систем управления с фиксированной структурой, удовлетворяющие различным требованиям во временной и частотной областях. The TuningGoal пакет является репозиторием для таких требований проекта.

Пошаговая команда следования

The TuningGoal.StepTracking требование задает, как настроенная система с обратной связью должна реагировать на вход шага. Можно задать желаемый ответ или с точки зрения характеристик первого или второго порядка, или как явный образец модели. Это требование удовлетворяется, когда относительный промежуток между фактической и желательной характеристиками достаточно мала в смысле наименьших квадратов. Для примера,

R1 = TuningGoal.StepTracking('r','y',0.5);

предусматривает, что реакция с обратной связью от r на y должно вести себя как система первого порядка с постоянной времени 0,5, в то время как

R2 = TuningGoal.StepTracking('r','y',zpk(2,[-1 -2],-1));

задает поведение фазы второго, неминамического порядка. Использование viewGoal визуализировать желаемый ответ.

viewGoal(R2)

Figure contains an axes. The axes contains an object of type line. This object represents Desired.

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

Пошаговые Подавления помех

The TuningGoal.StepRejection требование задает, как настроенная система с обратной связью должна реагировать на нарушение порядка шага. Можно задать значения в худшем случае для амплитуды отклика, времени урегулирования и демпфирования колебаний. Для примера,

R1 = TuningGoal.StepRejection('d','y',0.3,2,0.5);

ограничивает амплитуду y(t) до 0,3, время урегулирования к 2 временным модулям и коэффициенту затухания к минимуму 0,5. Использование viewGoal для просмотра соответствующей временной характеристики.

viewGoal(R1)

Figure contains an axes. The axes contains an object of type line. This object represents Reference.

Можно также использовать «образец модели», чтобы задать желаемый ответ. Обратите внимание, что фактический и заданный отклики могут существенно отличаться, когда возможно лучшее подавление помех. Используйте TuningGoal.Transient требование, когда требуется близкое соответствие. Для наилучших результатов настройте коэффициент усиления образца модели так, чтобы фактические и заданные отклики имели сходные пиковые амплитуды (см TuningGoal.StepRejection документация для получения дополнительной информации).

Переходный процесс

The TuningGoal.Transient требование задает переходный процесс для определенного входного сигнала. Это обобщение TuningGoal.StepTracking требование. Для примера,

R1 = TuningGoal.Transient('r','y',tf(1,[1 1 1]),'impulse');

требует, чтобы настроенный ответ от r кому y выглядят как импульсная характеристика образца модели 1/(s2+s+1).

viewGoal(R1)

Figure contains an axes. The axes contains an object of type line. This object represents Desired.

Входным сигналом может быть импульс, шаг, наклон или более общий сигнал, смоделированный как импульсная характеристика некоторого входного формирующего фильтра. Для примера - синусоида с частотой ω0 может быть смоделирована как импульсная характеристика ω02/(s2+ω02).

w0 = 2;
F = tf(w0^2,[1 0 w0^2]);  % input shaping filter
R2 = TuningGoal.Transient('r','y',tf(1,[1 1 1]),F);
viewGoal(R2)

Figure contains an axes. The axes contains an object of type line. This object represents Desired.

Проект LQG

Используйте TuningGoal.LQG требование создать линейно-квадратично-гауссову цель для настройки системных параметров управления. Эта цель применима к любой структуре управления, а не только к классической структуре наблюдателя управления LQG. Например, рассмотрим простой контур PID на рисунке 2, где d и n являются единичными нарушениями порядка дисперсии и шумовыми входами, и Sd и Sn являются lowpass и high pass фильтрами, которые моделируют нарушение порядка и шумовое спектральное содержимое.

Фигура 2: Цикл регулирования.

Отрегулировать y около нуля можно использовать следующий критерий LQG:

J=limTE(1T0T(y2(t)+0.05u2)dt)

Первый термин в интеграле наказывает отклонение y(t) от нуля, а второй срок штрафует усилие по управлению. Использование systune, можно настроить ПИД-регулятор, чтобы минимизировать затраты J. Для этого используйте требование LQG

Qyu = diag([1 0.05]);  % weighting of y^2 and u^2
R4 = TuningGoal.LQG({'d','n'},{'y','u'},1,Qyu);

См. также

| | |

Похожие темы