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