Спецификации частотного диапазона

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

Фон

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

Получите предел

Требование TuningGoal.Gain осуществляет пределы усиления на SISO или MIMO передаточные функции с обратной связью. Это требование полезно, чтобы осуществить соответствующее подавление помех и список прочь, предельная чувствительность и усилие по управлению, и предотвратить насыщение. Для передаточных функций MIMO "усиление" относится к самому большому сингулярному значению матрицы частотной характеристики. Предел усиления может быть зависимым частоты. Например,

s = tf('s');
R1 = TuningGoal.Gain('d','y',s/(s+1)^2);

указывает, что усиление от d до y не должно превышать значение передаточной функции.

viewGoal(R1)

Это часто удобно для, только делают набросок асимптот желаемого профиля усиления. Например, вместо передаточной функции, мы могли только задать значения усиления 0.01,1,0.01 на частотах 0.01 1 100, точка (1,1), являющаяся точкой останова этих двух асимптот и.

Asymptotes = frd([0.01,1,0.01],[0.01,1,100]);
R2 = TuningGoal.Gain('d','y',Asymptotes);

Объект требования автоматически превращает этот дискретный профиль усиления в предел усиления, заданный на всех частотах.

bodemag(Asymptotes,R2.MaxGain)
legend('Specified','Interpolated')

Усиление отклонения

Требование TuningGoal.Variance ограничивает шумовое усиление отклонения от заданных входных параметров до заданных выходных параметров. В технических терминах это требование ограничивает норму передаточной функции с обратной связью. Это требование предпочтительно для TuningGoal.Gain, когда входные сигналы являются вероятностными процессами и средними вопросами усиления больше, чем пиковое усиление. Например,

R = TuningGoal.Variance('n','y',0.1);

ограничивает выходное отклонение y к для входа n белого шума модульного отклонения.

Отслеживание уставки и сокращение перерегулирования

Требование TuningGoal.Tracking осуществляет отслеживание уставки и цели разъединения цикла в частотном диапазоне. Например,

R1 = TuningGoal.Tracking('r','y',2);

указывает, что вывод y должен отследить ссылочный r с 2D вторым временем отклика. Так же

R2 = TuningGoal.Tracking({'Vsp','wsp'},{'V','w'},2);

указывает, что V должен отследить Vsp, и w должен отследить wsp с минимальной перекрестной связью между этими двумя ответами. Отслеживающие требования преобразованы в ограничения частотного диапазона на ошибку отслеживания как функция частоты. Для первого требования R1, например, усиление от r до ошибки отслеживания e = r-y должен быть маленьким в низкой частоте и приблизиться 1 (100%) на частотах, больше, чем 1 рад/с (пропускная способность в течение 2D второго времени отклика). Можно использовать viewGoal, чтобы визуализировать это ограничение частотного диапазона. Обратите внимание на то, что желтая область указывает, где требование нарушено.

viewGoal(R1)

Если ответ имеет чрезмерное перерегулирование, используйте требование TuningGoal.Overshoot в сочетании с требованием TuningGoal.Tracking. Например, можно ограничить перерегулирование от r до y к 10%-му использованию

R3 = TuningGoal.Overshoot('r','y',10);

Подавление помех

В обратной связи такой как один показанный в рисунке 1, открытом - и ответы с обратной связью от воздействия, чтобы вывести связан

где передаточная функция цикла измеряется в точке входа воздействия. Усиление является фактором затухания воздействия, отношением между открытым - и чувствительностью с обратной связью к воздействию. Его обратная величина является чувствительностью во входе воздействия.

Рисунок 1: Демонстрационная обратная связь.

Требование TuningGoal.Rejection задает затухание воздействия как функцию частоты. Фактор затухания больше, чем одна внутренняя часть пропускная способность управления, поскольку управление с обратной связью уменьшает влияние воздействий. Как показывает опыт, в 10 раз большее затухание требует в 10 раз большего усиления цикла. Например,

R1 = TuningGoal.Rejection('u',10);
R1.Focus = [0 1];

указывает, что воздействие, входящее во входном "u" объекта, должно быть ослаблено фактором 10 в диапазоне частот от 0 до 1 рад/с.

viewGoal(R1)

В более общем плане можно задать зависимый частотой профиль затухания, например

s = tf('s');
R2 = TuningGoal.Rejection('u',(s+10)/(s+0.1));

задает фактор затухания 100 ниже 0,1 рад/с, постепенно уменьшающихся к 1 (никакое затухание) после 10 рад/с.

viewGoal(R2)

Вместо того, чтобы задать минимальное затухание, можно использовать требование TuningGoal.Sensitivity, чтобы задать максимальную чувствительность, то есть, максимальное усиление. Например,

R3 = TuningGoal.Sensitivity('u',(s+0.1)/(s+10));

эквивалентно требованию отклонения R2 выше. Чувствительность увеличивается от 0,01 на 1% ниже 0,1 рад/с к 1 на 100% выше 10 рад/с.

viewGoal(R3)

Взвешенное частотой усиление и отклонение

TuningGoal.WeightedGain и требования TuningGoal.WeightedVariance являются обобщениями требований TuningGoal.Variance и TuningGoal.Gain. Эти требования ограничивают или норма взвешенной частотой передаточной функции с обратной связью, где и пользовательские функции взвешивания. Например,

WL = blkdiag(1/(s+0.001),s/(0.001*s+1));
WR = [];
R = TuningGoal.WeightedGain('r',{'e','y'},WL,[]);

задает ограничение

Обратите внимание на то, что это - нормированное ограничение усиления (модуль, связанный через частоту).

viewGoal(R)

Смотрите также

| | | | | | |

Похожие темы