Этот пример дает обзор доступных требований во временной области для настройки системы управления с 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)

Это требование может использоваться для настройки как SISO, так и переходных характеристик MIMO. В случае MIMO требование гарантирует, что каждый выход отслеживает соответствующий вход с минимальными поперечными связями.
The TuningGoal.StepRejection требование задает, как настроенная система с обратной связью должна реагировать на нарушение порядка шага. Можно задать значения в худшем случае для амплитуды отклика, времени урегулирования и демпфирования колебаний. Для примера,
R1 = TuningGoal.StepRejection('d','y',0.3,2,0.5);
ограничивает амплитуду до 0,3, время урегулирования к 2 временным модулям и коэффициенту затухания к минимуму 0,5. Использование viewGoal для просмотра соответствующей временной характеристики.
viewGoal(R1)

Можно также использовать «образец модели», чтобы задать желаемый ответ. Обратите внимание, что фактический и заданный отклики могут существенно отличаться, когда возможно лучшее подавление помех. Используйте TuningGoal.Transient требование, когда требуется близкое соответствие. Для наилучших результатов настройте коэффициент усиления образца модели так, чтобы фактические и заданные отклики имели сходные пиковые амплитуды (см TuningGoal.StepRejection документация для получения дополнительной информации).
The TuningGoal.Transient требование задает переходный процесс для определенного входного сигнала. Это обобщение TuningGoal.StepTracking требование. Для примера,
R1 = TuningGoal.Transient('r','y',tf(1,[1 1 1]),'impulse');
требует, чтобы настроенный ответ от кому выглядят как импульсная характеристика образца модели .
viewGoal(R1)

Входным сигналом может быть импульс, шаг, наклон или более общий сигнал, смоделированный как импульсная характеристика некоторого входного формирующего фильтра. Для примера - синусоида с частотой может быть смоделирована как импульсная характеристика .
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)

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

Фигура 2: Цикл регулирования.
Отрегулировать около нуля можно использовать следующий критерий LQG:
Первый термин в интеграле наказывает отклонение от нуля, а второй срок штрафует усилие по управлению. Использование systune, можно настроить ПИД-регулятор, чтобы минимизировать затраты . Для этого используйте требование LQG
Qyu = diag([1 0.05]); % weighting of y^2 and u^2 R4 = TuningGoal.LQG({'d','n'},{'y','u'},1,Qyu);
TuningGoal.LQG | TuningGoal.StepRejection | TuningGoal.StepTracking | TuningGoal.Transient