Пакет: 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
в течение непрерывного времени). Для получения дополнительной информации о регуляризации и ее эффектах, смотрите, Визуализируют Настраивающиеся Цели.
evalGoal
| looptune
| systune
| TuningGoal.Gain
| TuningGoal.LoopShape
| viewGoal
| looptune (for slTuner)
(Simulink Control Design) | slTuner
(Simulink Control Design) | systune
(for slTuner)
(Simulink Control Design)