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)

Figure contains an axes object. The axes object contains an object of type line. These objects represent Min attenuation, Effective bound.

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

Советы

  • Эта настраивающая цель налагает неявное ограничение устойчивости на функцию чувствительности с обратной связью, измеренную в 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