TuningGoal.Rejection class

Пакет: TuningGoal

Требование подавления помех для настройки системы управления

Описание

Используйте TuningGoal.Rejection задавать минимальное затухание воздействия, введенного в заданном местоположении в системе управления. Эта настраивающая цель помогает вам настроить системы управления с настраивающимися командами, такими как systune или looptune.

Когда вы используете TuningGoal.Rejection, программное обеспечение пытается настроить систему так, чтобы затухание воздействия в заданном местоположении превысило минимальный фактор затухания, который вы задаете. Этот фактор затухания является отношением между открытым - и чувствительностью с обратной связью к воздействию и является функцией частоты. Можно достигнуть затухания воздействия только в пропускной способности управления. Усиление цикла должно быть больше, чем одно для воздействия, которое будет ослаблено (фактор затухания> 1).

Конструкция

Req = TuningGoal.Rejection(distloc,attfact) создает настраивающуюся цель по отклонению воздействия, входящего в distloc. Эта настраивающая цель ограничивает минимальный фактор затухания воздействия к зависимому частотой значению, attfact.

Входные параметры

distloc

Местоположение воздействия в виде вектора символов или, для нескольких - входные настраивающие цели, массив ячеек из символьных векторов.

  • Если вы используете настраивающуюся цель настроить модель Simulink® системы управления, то distloc может включать любой сигнал, идентифицированный как аналитическую точку в slTuner Интерфейс (Simulink Control Design) сопоставлен с моделью Simulink. Использование addPoint (Simulink Control Design), чтобы добавить анализ указывает на slTuner интерфейс. Использование getPoints (Simulink Control Design), чтобы получить список аналитических точек, доступных в slTuner взаимодействуйте через интерфейс к своей модели.

    Например, предположите что slTuner интерфейс содержит аналитические точки u1 и u2. Используйте 'u1' определять ту точку как вход воздействия при создании настраивающихся целей. Используйте {'u1','u2'} определять двухканальный вход воздействия.

  • Если вы используете настраивающуюся цель настроить обобщенную модель в пространстве состояний (genss) из системы управления, затем inputname может включать любой AnalysisPoint образуйте канал в модели. Например, если вы настраиваете модель системы управления, T, который содержит AnalysisPoint блокируйтесь с местоположением под названием AP_u, затем distloc может включать 'AP_u'Использование getPoints получить список аналитических точек, доступных в a genss модель.) Ограниченное местоположение воздействия введено в подразумеваемом входе, сопоставленном с аналитической точкой, и измерилось при подразумеваемом выходе:

attfact

Фактор затухания как функция частоты в виде числовой модели LTI.

TuningGoal.Rejection ограничивает минимальное затухание воздействия к зависимому частотой значению attfact. Можно задать attfact как сглаженная передаточная функция (tf , zpk, или ss модель). В качестве альтернативы можно задать кусочный профиль усиления с помощью a frd модель. Например, следующий код задает фактор затухания 100 на 40 дБ ниже 1 рад/с, постепенно спадая до 1 прошлого 10 рад/с (на 0 дБ), для воздействия, введенного в u.

attfact = frd([100 100 1 1],[0 1 10 100]); 
Req = TuningGoal.Rejection('u',attfact);
bodemag(attfact)
ylim([-5,40])

Когда вы используете frd модель, чтобы задать attfact, профиль усиления автоматически сопоставлен на a zpk модель. Величина этого zpk модель аппроксимирует желаемый профиль усиления. Используйте viewGoal(Req) визуализировать получившийся профиль затухания.

Если вы настраиваетесь в дискретное время (то есть, с помощью a genss модель или slTuner интерфейс с ненулевым Ts), можно задать attfact как модель дискретного времени с тем же Ts. Если вы задаете attfact в непрерывное время настраивающееся программное обеспечение дискретизирует его. Определение профиля затухания в дискретное время дает вам больше контроля профилем около частоты Найквиста.

Свойства

MinAttenuation

Минимальное затухание воздействия как функция частоты, описанной как SISO zpk модель.

Программное обеспечение автоматически сопоставляет attfact входной параметр к a zpk модель. Величина этого zpk модель аппроксимирует желаемый фактор затухания и хранится в MinAttenuation свойство. Используйте viewGoal(Req) построить величину MinAttenuation.

Focus

Диапазон частот, в котором настройка цели осуществляется в виде вектора-строки из формы [min,max].

Установите Focus свойство ограничить осуществление настраивающейся цели к конкретному диапазону частот. Опишите это значение в единицах частоты модели системы управления, которую вы настраиваете (rad/TimeUnit). Например, предположите Req настраивающаяся цель, которую вы хотите применить только между 1 и 100 рад/с. Чтобы ограничить настраивающуюся цель этой полосой, используйте следующую команду:

Req.Focus = [1,100];

Значение по умолчанию: [0,Inf] в течение непрерывного времени; [0,pi/Ts] в течение дискретного времени, где Ts шаг расчета модели.

LoopScaling

Переключитесь для того, чтобы автоматически масштабировать сигналы цикла в виде 'on' или 'off'.

Для многоконтурного или настраивающих целей подавления помех MIMO, каналы обратной связи автоматически перемасштабируются, чтобы компенсировать недиагональное (взаимодействие цикла) условия в передаточной функции разомкнутого контура. Установите LoopScaling к 'off' отключить такое масштабирование и сформировать немасштабированный ответ разомкнутого контура.

Значение по умолчанию: 'on'

Location

Местоположение воздействия в виде заданного как массив ячеек из символьных векторов, которые идентифицируют одну или несколько аналитических точек в системе управления, чтобы настроиться. Например, если Location = {'u'}, настраивающаяся цель оценивает подавление помех в аналитической точке 'u'. Если Location = {'u1','u2'}, настраивающаяся цель оценивает отклонение в на основе ответа разомкнутого контура MIMO, измеренного в аналитических точках 'u1' и 'u2'.

Начальное значение Location свойство установлено distloc входной параметр, когда вы создаете настраивающуюся цель.

Models

Модели, к которым настраивающаяся цель применяется в виде вектора из индексов.

Используйте Models свойство при настройке массива моделей системы управления с systune, осуществлять настраивающуюся цель для подмножества моделей в массиве. Например, предположите, что вы хотите применить настраивающуюся цель, Req, к вторым, третьим, и четвертым моделям в массиве моделей передал systune. Чтобы ограничить осуществление настраивающейся цели, используйте следующую команду:

Req.Models = 2:4;

Когда Models = NaN, настраивающаяся цель применяется ко всем моделям.

Значение по умолчанию: NaN

Openings

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

Если вы используете настраивающуюся цель настроить модель Simulink системы управления, то Openings может включать любую линейную аналитическую точку, отмеченную в модель или любую линейную аналитическую точку в slTuner Интерфейс (Simulink Control Design) сопоставлен с моделью Simulink. Использование addPoint (Simulink Control Design), чтобы добавить аналитические точки и открытия цикла к slTuner интерфейс. Использование getPoints (Simulink Control Design), чтобы получить список аналитических точек, доступных в slTuner взаимодействуйте через интерфейс к своей модели.

Если вы используете настраивающуюся цель настроить обобщенное пространство состояний (genss) модель системы управления, затем Openings может включать любого AnalysisPoint местоположение в модели системы управления. Использование getPoints получить список аналитических точек, доступных в genss модель.

Например, если Openings = {'u1','u2'}, затем настраивающаяся цель оценена с циклами, открытыми в аналитических точках u1 и u2.

Значение по умолчанию: {}

Name

Имя настраивающейся цели в виде вектора символов.

Например, если Req настраивающаяся цель:

Req.Name = 'LoopReq';

Значение по умолчанию: []

Примеры

Постоянное минимальное затухание в диапазоне частот

Создайте настраивающуюся цель, которая осуществляет затухание, по крайней мере, фактора 10 между 0 и 5 рад/с. Настраивающаяся цель применяется к воздействию, вводящему систему управления в точке, идентифицированной как 'u'.

Req = TuningGoal.Rejection('u',10);
Req.Name = 'Rejection spec';
Req.Focus = [0 5]

Зависимый частотой профиль затухания

Создайте настраивающуюся цель, которая осуществляет фактор затухания по крайней мере 100 на 40 дБ ниже 1 рад/с, постепенно спадая до 1 прошлого 10 рад/с (на 0 дБ). Настраивающаяся цель применяется к воздействию, вводящему систему управления в точке, идентифицированной как 'u'.

attfact = frd([100 100 1 1],[0 1 10 100]); 
Req = TuningGoal.Rejection('u',attfact);

Эти команды используют frd модель, чтобы задать минимальное затухание профилирует как функция частоты. Минимальное затухание 100 ниже 1 рад/с, вместе с минимальным затуханием 1 на частотах 10 и 100 рад/с, задает желаемый спад.

attfact преобразован в сглаженную функцию частоты, которая аппроксимирует кусочный заданный профиль. Отобразите профиль усиления с помощью viewGoal.

viewGoal(Req)

Теневая область указывает, где настраивающаяся цель нарушена.

Советы

  • Эта настраивающая цель налагает неявное ограничение устойчивости на функцию чувствительности с обратной связью, измеренную в Location, оцененный с циклами, открытыми в точках, идентифицирован в Openings. Движущими силами, затронутыми этим неявным ограничением, является stabilized dynamics для этой настраивающей цели. MinDecay и MaxRadius опции systuneOptions управляйте границами на этих неявно ограниченных движущих силах. Если оптимизации не удается соответствовать границам по умолчанию, или если конфликт границ по умолчанию с другими требованиями, использовать systuneOptions изменить эти значения по умолчанию.

Алгоритмы

Когда вы настраиваете систему управления с помощью TuningGoal, программное обеспечение преобразует настраивающуюся цель в нормированное скалярное значение f (x). В этом случае x является вектором из свободных (настраиваемых) параметров в системе управления. Значения параметров настроены автоматически, чтобы минимизировать f (x) или управлять f (x) ниже 1, если настраивающейся целью является трудное ограничение.

Для TuningGoal.Rejection, f (x) дают:

f(x)=maxωΩWS(jω)S(jω,x),

или его эквивалентное дискретное время. Здесь, S (, x) является функцией чувствительности с обратной связью, измеренной в местоположении воздействия. Ω является интервалом частоты, на котором настраивающаяся цель осуществлена, задана в Focus свойство. WS является функцией взвешивания частоты, выведенной из заданного профиля затухания. Усиления WS и MinAttenuation примерно соответствуйте для значений усиления в пределах от-20 дБ к 60 дБ. По числовым причинам функция взвешивания выравнивается вне этой области значений, если заданный профиль затухания не изменяет наклон вне этой области значений. Эта корректировка называется regularization. Поскольку полюса WS близко к s = 0 или s = Inf может привести к плохому числовому созданию условий systune задача оптимизации, не рекомендуется задать профили затухания с очень низкочастотной или очень высокочастотной динамикой.

Чтобы получить WS, используйте:

WS = getWeight(Req,Ts)

где Req настраивающаяся цель и Ts шаг расчета, в котором вы настраиваетесь (Ts = 0 в течение непрерывного времени). Для получения дополнительной информации о регуляризации и ее эффектах, смотрите, Визуализируют Настраивающиеся Цели.

Вопросы совместимости

развернуть все

Поведение изменяется в R2016a

Введенный в R2016a