Пакет: TuningGoal
Требование чувствительности для настройки системы управления
Используйте TuningGoal.Sensitivity
ограничить чувствительность обратной связи к воздействиям. Ограничьте чувствительность быть меньшей, чем одна на частотах, где вам нужно хорошее подавление помех. Используйте эту настраивающую цель для системы управления, настраивающейся с настраивающимися командами, такими как systune
или looptune
.
создает настраивающуюся цель по ограничению чувствительности к воздействиям, вводящим обратную связь в заданном местоположении. Req
= TuningGoal.Sensitivity(location
,maxsens
)maxsens
задает максимальную чувствительность в зависимости от частоты. Можно задать максимальный профиль чувствительности как сглаженную передаточную функцию или делать набросок кусочного ошибочного профиля с помощью frd
модель или makeweight
(Robust Control Toolbox) команда.
Смотрите getSensitivity
(Simulink Control Design) для получения дополнительной информации о функциях чувствительности.)
|
Местоположение, в котором чувствительность к воздействиям ограничивается в виде вектора символов или массива ячеек из символьных векторов, которые идентифицируют одно или несколько местоположений в системе управления, чтобы настроиться. То, какие местоположения доступны, зависит от того, какую систему вы настраиваете:
Если |
|
Максимальная чувствительность к воздействиям в зависимости от частоты. Можно задать maxsens = frd([0.01 1 1],[1 50 100]); bodemag(maxsens) ylim([-45,5]) Когда вы используете Если вы настраиваетесь в дискретное время (то есть, с помощью a |
|
Максимальная чувствительность в зависимости от частоты в виде SISO Программное обеспечение автоматически сопоставляет входной параметр |
|
Диапазон частот, в котором настройка цели осуществляется в виде вектора-строки из формы Установите Req.Focus = [1,100]; Значение по умолчанию: |
|
Переключитесь для того, чтобы автоматически масштабировать сигналы цикла в виде В многоконтурном или системах управления MIMO, каналы обратной связи автоматически перемасштабируются, чтобы компенсировать недиагональные термины в передаточной функции разомкнутого контура (периоды взаимодействия цикла). Установите Значение по умолчанию: |
|
Местоположение воздействия в виде массива ячеек из символьных векторов, которые идентифицируют одну или несколько аналитических точек в системе управления, чтобы настроиться. Например, если Начальное значение |
|
Модели, к которым настраивающаяся цель применяется в виде вектора из индексов. Используйте Req.Models = 2:4; Когда Значение по умолчанию: |
|
Обратная связь, чтобы открыться при оценке настраивающейся цели в виде массива ячеек из символьных векторов, которые идентифицируют открывающие цикл местоположения. Настраивающаяся цель оценена против настройки разомкнутого контура, созданной вводной обратной связью в местоположениях, которые вы идентифицируете. Если вы используете настраивающуюся цель настроить модель Simulink системы управления, то Если вы используете настраивающуюся цель настроить обобщенное пространство состояний ( Например, если Значение по умолчанию: |
|
Имя настраивающейся цели в виде вектора символов. Например, если Req.Name = 'LoopReq'; Значение по умолчанию: |
Создайте настраивающуюся цель, которая ограничивает чувствительность к воздействию во входе объекта следующей системы управления. Система управления содержит аналитическую точку под названием 'X'
во входе объекта.
Задайте максимальную чувствительность 0,01 (-40 дБ) на уровне 1 рад/с, увеличившись до 1 прошлого 10 рад/с (на 0 дБ). Используйте frd
модель, чтобы делать набросок этой целевой чувствительности.
maxsens = frd([0.01 1 1],[1 10 100]);
Req = TuningGoal.Sensitivity('X',maxsens);
Программное обеспечение преобразует maxsens
в сглаженную функцию частоты, которая аппроксимирует кусочно заданный профиль усиления. Визуализируйте эту функцию с помощью viewGoal
.
viewGoal(Req)
Теневая область указывает на области, где настраивающаяся цель нарушена. Теневая область отличается от заданного профиля усиления (пунктирная линия) в очень низких частотах из-за модификаций, которые программное обеспечение вводит для числовой устойчивости, как описано в Алгоритмах.
Создайте настраивающуюся цель, которая задает максимальную чувствительность 0,1 (10%) на частотах ниже 5 рад/с. Сконфигурируйте настраивающуюся цель применяться только к вторым и третьим моделям объекта управления.
Req = TuningGoal.Sensitivity('u',0.1);
Req.Focus = [0 5];
Req.Models = [2 3];
Можно использовать Req
как вход к looptune
или systune
при настройке системы управления, которая имеет аналитическую точку, названную 'u'
. Установка Focus
свойство ограничивает приложение настраивающейся цели к частотам между 0 и 5 рад/с. Установка Models
свойство ограничивает приложение настраивающейся цели к вторым и третьим моделям в массиве, когда вы используете настраивающуюся цель настроить массив моделей системы управления.
Эта настраивающая цель налагает неявное ограничение устойчивости на функцию чувствительности с обратной связью, измеренную в Location
, оцененный с циклами, открытыми в точках, идентифицирован в Openings
. Движущими силами, затронутыми этим неявным ограничением, является stabilized dynamics для этой настраивающей цели. MinDecay
и MaxRadius
опции systuneOptions
управляйте границами на этих неявно ограниченных движущих силах. Если оптимизации не удается соответствовать границам по умолчанию, или если конфликт границ по умолчанию с другими требованиями, использовать systuneOptions
изменить эти значения по умолчанию.
Когда вы настраиваете систему управления с помощью TuningGoal
, программное обеспечение преобразует настраивающуюся цель в нормированное скалярное значение f (x), где x является вектором из свободных (настраиваемых) параметров в системе управления. Программное обеспечение затем настраивает значения параметров, чтобы минимизировать f (x) или управлять f (x) ниже 1, если настраивающейся целью является трудное ограничение.
Для TuningGoal.Sensitivity
, f (x) дают:
или его эквивалентное дискретное время. Здесь, S (s, x) является функцией чувствительности с обратной связью, измеренной в местоположении, заданном в настраивающейся цели. WS является функцией взвешивания частоты, выведенной из заданного профиля чувствительности. Усиления WS и 1/MaxSensitivity
примерно соответствуйте для значений усиления в пределах от-20 дБ к 60 дБ. По числовым причинам функция взвешивания выравнивается вне этой области значений, если заданный профиль чувствительности не изменяет наклон вне этой области значений. Эта корректировка называется regularization. Поскольку полюса WS близко к s = 0 или s = Inf
может привести к плохому числовому созданию условий systune
задача оптимизации, не рекомендуется задать профили чувствительности с очень низкочастотной или очень высокочастотной динамикой.
Чтобы получить WS, используйте:
WS = getWeight(Req,Ts)
где Req
настраивающаяся цель и Ts
шаг расчета, в котором вы настраиваетесь (Ts = 0
в течение непрерывного времени). Для получения дополнительной информации о регуляризации и ее эффектах, смотрите, Визуализируют Настраивающиеся Цели.
looptune
| systune
| looptune
(for slTuner)
(Simulink Control Design) | systune (for slTuner)
(Simulink Control Design) | viewGoal
| evalGoal
| TuningGoal.Gain
| TuningGoal.LoopShape
| TuningGoal.Rejection
| TuningGoal.MinLoopGain
| TuningGoal.MaxLoopGain
| slTuner
(Simulink Control Design)