Пакет: TuningGoal
Отслеживание требования для настройки системы управления
Используйте TuningGoal.Tracking
задавать требование отслеживания частотного диапазона между заданными вводами и выводами. Эта настраивающая цель задает максимальную относительную погрешность (усиление от ссылочного входа до отслеживания ошибки) в зависимости от частоты. Используйте эту настраивающую цель для системы управления, настраивающейся с настраивающимися командами, такими как systune
или looptune
.
Можно задать профиль максимальной погрешности непосредственно путем обеспечения передаточной функции. В качестве альтернативы можно задать целевую ошибку DC, пиковую ошибку, и время отклика. Эти параметры преобразованы в следующую передаточную функцию, которая описывает максимальную ошибку отслеживания частотного диапазона:
Здесь, ωc равняется 2 / (время отклика). Следующий график иллюстрирует эти отношения для множества значений в качестве примера.
создает настраивающийся целевой Req
=
TuningGoal.Tracking(inputname
,outputname
,responsetime
,dcerror
,peakerror
)Req
это ограничивает эффективность отслеживания от inputname
к outputname
в частотном диапазоне. Эта настраивающая цель задает профиль максимальной погрешности в зависимости от частоты, данной:
Полоса пропускания отслеживания ωc = 2/responsetime
. Максимальная относительная установившаяся ошибка дана dcerror
, и peakerror
дает пиковую относительную погрешность через все частоты.
Можно задать требование отслеживания MIMO путем определения имен сигнала или массива ячеек нескольких имен сигнала для inputname
или outputname
. Для требований отслеживания MIMO используйте InputScaling
свойство помочь ограничить перекрестную связь. См. Свойства.
задает максимальную относительную погрешность в зависимости от частоты. Можно задать целевой ошибочный профиль (максимальное усиление от опорного сигнала до отслеживания сигнала ошибки) как сглаженная передаточная функция. В качестве альтернативы можно делать набросок кусочного ошибочного профиля с помощью Req
= TuningGoal.Tracking(inputname
,outputname
,maxerror
)frd
модель.
|
Входные сигналы для настраивающейся цели в виде вектора символов или, для нескольких - входные настраивающие цели, массив ячеек из символьных векторов.
Для получения дополнительной информации об аналитических точках в моделях системы управления, смотрите представляющего интерес Марка Сигнэлса для Анализа и проектирования Системы управления. |
|
Выходные сигналы для настраивающейся цели в виде вектора символов или, для нескольких - выходные настраивающие цели, массив ячеек из символьных векторов.
Для получения дополнительной информации об аналитических точках в моделях системы управления, смотрите представляющего интерес Марка Сигнэлса для Анализа и проектирования Системы управления. |
|
Целевое время отклика в виде значения положительной скалярной величины. Полоса пропускания отслеживания дана ωc = 2/ |
|
Максимальная установившаяся дробная ошибка отслеживания в виде значения положительной скалярной величины. Например, Если Значение по умолчанию: 0.001 |
|
Максимальная дробная ошибка отслеживания через все частоты в виде значения положительной скалярной величины, больше, чем 1. Значение по умолчанию: 1 |
|
Цель, отслеживающая ошибку, профилирует в зависимости от частоты в виде SISO числовую модель LTI.
Если вы настраиваетесь в дискретное время (то есть, с помощью a |
|
Максимальная погрешность в зависимости от частоты, описанной как SISO Если вы используете синтаксис Если вы используете синтаксис
Используйте |
|
Диапазон частот, в котором настройка цели осуществляется в виде вектора-строки из формы Установите Req.Focus = [1,100]; Значение по умолчанию: |
|
Опорный сигнал, масштабирующийся в виде вектора из положительных вещественных значений. Для требования отслеживания MIMO, когда выбор модульных результатов в соединении маленьких и больших сигналов в различных каналах ответа, используют это свойство задать относительную амплитуду каждой записи во входе шага с векторным знаком. Эта информация используется, чтобы масштабировать недиагональные термины в передаточной функции от ссылки до отслеживания ошибки. Это масштабирование гарантирует, что перекрестные связи измеряются относительно амплитуды каждого опорного сигнала. Например, предположите тот Req.InputScaling = [100,1]; Это говорит программному обеспечению учитывать, что первый опорный сигнал в 100 раз больше второго опорного сигнала. Значение по умолчанию, Значение по умолчанию: |
|
Опорный сигнал называет в виде вектора символов или массива ячеек из символьных векторов, задающего имена сигналов, которые будут прослежены, заполненные |
|
Выходной сигнал называет в виде вектора символов или массива ячеек из символьных векторов, задающего имена сигналов, которые должны отследить опорные сигналы, заполненные |
|
Модели, к которым настраивающаяся цель применяется в виде вектора из индексов. Используйте Req.Models = 2:4; Когда Значение по умолчанию: |
|
Обратная связь, чтобы открыться при оценке настраивающейся цели в виде массива ячеек из символьных векторов, которые идентифицируют открывающие цикл местоположения. Настраивающаяся цель оценена против настройки разомкнутого контура, созданной вводной обратной связью в местоположениях, которые вы идентифицируете. Если вы используете настраивающуюся цель настроить модель Simulink системы управления, то Если вы используете настраивающуюся цель настроить обобщенное пространство состояний ( Например, если Значение по умолчанию: |
|
Имя настраивающейся цели в виде вектора символов. Например, если Req.Name = 'LoopReq'; Значение по умолчанию: |
Создайте цель отслеживания, указывающую что 'theta'
сигнала отследите
'theta_ref'
сигнала. Необходимое время отклика равняется 2 в единицах измерения времени системы управления, которую вы настраиваете. Максимальная установившаяся ошибка составляет 0,1%.
Req = TuningGoal.Tracking('theta_ref','theta',2,0.001);
Начиная с peakerror
не задано, эта настраивающая цель использует значение по умолчанию, 1.
Создайте цель отслеживания, указывающую что 'theta'
сигнала отследите
'theta_ref'
сигнала. Максимальная относительная погрешность 0.01 (1%) в частотном диапазоне [0,1]. Относительная погрешность увеличивается до 1 (100%) на частоте 100.
Используйте frd
модель, чтобы задать ошибку профилирует в зависимости от частоты.
err = frd([0.01 0.01 1],[0 1 100]); Req = TuningGoal.Tracking('theta_ref','theta',err);
Программное обеспечение преобразует err
в сглаженную функцию частоты, которая аппроксимирует кусочный заданный профиль. Отобразите эту функцию с помощью viewGoal
.
viewGoal(Req)
Пунктирная линия является целевым ошибочным профилем, сохраненным в MaxError
, и теневая область указывает, где настраивающаяся цель нарушена.
Эта настраивающая цель налагает неявное ограничение устойчивости на передаточную функцию с обратной связью от Input
к Output
, оцененный с циклами, открытыми в точках, идентифицирован в Openings
. Движущими силами, затронутыми этим неявным ограничением, является stabilized dynamics для этой настраивающей цели. MinDecay
и MaxRadius
опции systuneOptions
управляйте границами на этих неявно ограниченных движущих силах. Если оптимизации не удается соответствовать границам по умолчанию, или если конфликт границ по умолчанию с другими требованиями, использовать systuneOptions
изменить эти значения по умолчанию.
Когда вы настраиваете систему управления с помощью TuningGoal
, программное обеспечение преобразует настраивающуюся цель в нормированное скалярное значение f (x), где x является вектором из свободных (настраиваемых) параметров в системе управления. Программное обеспечение затем настраивает значения параметров, чтобы минимизировать f (x) или управлять f (x) ниже 1, если настраивающейся целью является трудное ограничение.
Для TuningGoal.Tracking
, f (x) дают:
или его эквивалентное дискретное время. Здесь, T (s, x) является передаточной функцией с обратной связью от Input
к Output
, и обозначает H ∞ норма (см. getPeakGain
). WF является функцией взвешивания частоты, выведенной из ошибочного профиля, который вы задаете в настраивающейся цели. Усиления WF и 1/MaxError
примерно соответствуйте для значений усиления между-20 дБ и 60 дБ. По числовым причинам функция взвешивания выравнивается вне этой области значений, если вы не задаете образец модели, который изменяет наклон вне этой области значений. Эта корректировка называется regularization. Поскольку полюса WF близко к s = 0 или s = Inf
может привести к плохому числовому созданию условий systune
задача оптимизации, не рекомендуется задать ошибочные профили с очень низкочастотной или очень высокочастотной динамикой.
Чтобы получить WF, используйте:
WF = getWeight(Req,Ts)
где Req
настраивающаяся цель и Ts
шаг расчета, в котором вы настраиваетесь (Ts = 0
в течение непрерывного времени). Для получения дополнительной информации о регуляризации и ее эффектах, смотрите, Визуализируют Настраивающиеся Цели.
looptune
| systune
| systune
(for slTuner)
(Simulink Control Design) | looptune (for slTuner)
(Simulink Control Design) | viewGoal
| evalGoal
| TuningGoal.Gain
| TuningGoal.LoopShape
| slTuner
(Simulink Control Design)