TuningGoal.StepRejection class

Пакет: TuningGoal

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

Описание

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

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

Чтобы задать подавление помех в терминах профиля затухания частотного диапазона, используйте TuningGoal.Rejection.

Конструкция

Req = TuningGoal.StepRejection(inputname,outputname,refsys) создает настраивающуюся цель, которая ограничивает, как воздействие шага ввело в местоположении inputname влияет на ответ в outputname. Настраивающаяся цель состоит в том, что воздействие отклоняется, а также или лучше, чем ссылочная система. inputname и outputname может описать SISO или ответ MIMO вашей системы управления. Для ответов MIMO количество входных параметров должно равняться количеству выходных параметров.

Req = TuningGoal.StepRejection(inputname,outputname,peak,tSettle) задает ответ без колебаний в терминах пикового значения и времени урегулирования.

Req = TuningGoal.StepRejection(inputname,outputname,peak,tSettle,zeta) допускает ослабленные колебания с коэффициентом затухания, по крайней мере, zeta.

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

inputname

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

  • Если вы используете настраивающуюся цель настроить модель Simulink® системы управления, то inputname может включать:

    • Любой вход модели.

    • Любая линейная аналитическая точка отмечена в модели.

    • Любой линейный анализ указывает в slTuner интерфейс сопоставлен с моделью Simulink. Используйте addPoint добавить анализ указывает на slTuner интерфейс. Используйте getPoints получить список аналитических точек, доступных в slTuner взаимодействуйте через интерфейс к своей модели.

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

  • Если вы используете настраивающуюся цель настроить обобщенное пространство состояний (genss) модель системы управления, затем inputname может включать:

    • Любой вход genss модель

    • Любой AnalysisPoint местоположение в модели системы управления

    Например, если вы настраиваете модель системы управления, T, затем inputname может быть любое входное имя в T.InputName. Кроме того, если T содержит AnalysisPoint блокируйтесь с местоположением под названием AP_u, затем inputname может включать 'AP_u'. Используйте getPoints получить список аналитических точек, доступных в genss модель.

    Если inputname AnalysisPoint местоположение обобщенной модели, входной сигнал для настраивающейся цели является подразумеваемым входом, сопоставленным с AnalysisPoint блок:

Для получения дополнительной информации об аналитических точках в моделях системы управления, смотрите представляющего интерес Марка Сигнэлса для Анализа и проектирования Системы управления.

outputname

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

  • Если вы используете настраивающуюся цель настроить модель Simulink системы управления, то outputname может включать:

    • Любой выход модели.

    • Любая линейная аналитическая точка отмечена в модели.

    • Любой линейный анализ указывает в slTuner интерфейс сопоставлен с моделью Simulink. Используйте addPoint добавить анализ указывает на slTuner интерфейс. Используйте getPoints получить список аналитических точек, доступных в slTuner взаимодействуйте через интерфейс к своей модели.

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

  • Если вы используете настраивающуюся цель настроить обобщенное пространство состояний (genss) модель системы управления, затем outputname может включать:

    • Любой выход genss модель

    • Любой AnalysisPoint местоположение в модели системы управления

    Например, если вы настраиваете модель системы управления, T, затем outputname может быть любое выходное имя в T.OutputName. Кроме того, если T содержит AnalysisPoint блокируйтесь с местоположением под названием AP_u, затем outputname может включать 'AP_u'. Используйте getPoints получить список аналитических точек, доступных в genss модель.

    Если outputname AnalysisPoint местоположение обобщенной модели, выходным сигналом для настраивающейся цели является подразумеваемый выход, сопоставленный с AnalysisPoint блок:

Для получения дополнительной информации об аналитических точках в моделях системы управления, смотрите представляющего интерес Марка Сигнэлса для Анализа и проектирования Системы управления.

refsys

Ссылочная система для целевого отклонения шага, заданного как модель динамической системы SISO, такая как tf, zpk, или ss модель. refsys должно быть устойчивым и соответствующим, и должен иметь нулевое усиление DC. Это ограничение гарантирует совершенное отклонение установившегося воздействия.

refsys может быть непрерывным или дискретным. Если refsys дискретно, это может включать задержки, которые обработаны как полюса в z = 0.

Для лучших результатов, refsys и ответ разомкнутого цикла от воздействия до выхода должен иметь подобные усиления на частоте, где усиление эталонной модели достигает максимума. Можно проверять пиковое усиление и пиковую частоту с помощью getPeakGain. Например:

[gmax,fmax] = getPeakGain(refsys);

Используйте getIOTransfer чтобы извлечь соответствующий ответ разомкнутого цикла из системы, вы настраиваетесь.

peak

Пиковое абсолютное значение целевого ответа на воздействие, заданное как скалярное значение.

tSettle

Целевое время урегулирования ответа на воздействие, заданное как значение положительной скалярной величины, в единицах измерения времени системы управления, вы настраиваетесь.

zeta

Минимальный коэффициент затухания колебаний в ответ на воздействие, заданное как значение между 0 и 1.

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

Свойства

ReferenceModel

Ссылочная система для целевого ответа на воздействие шага, заданное как SISO (zpk) модель. Переходной процесс этой модели задает как выходные сигналы, заданные outputname должен ответить на воздействие шага в inputname.

Если вы используете refsys входной параметр, чтобы создать настраивающуюся цель, затем значение ReferenceModel zpk(refsys).

Если вы используете peak, tSample, и zeta входные параметры, затем ReferenceModel zpk представление передаточной функции второго порядка или первого порядка, переходной процесс которой имеет заданные характеристики.

InputScaling

Масштабирование входного сигнала, заданное как вектор положительных действительных значений.

Используйте это свойство задать относительную амплитуду каждой записи во входных сигналах с векторным знаком, когда выбор модулей приведет к соединению маленьких и больших сигналов. Эта информация используется, чтобы масштабировать передаточную функцию с обратной связью от Input к Output когда настраивающаяся цель оценена.

Предположим, что T (s) является передаточной функцией с обратной связью от Input к Output. Настраивающаяся цель оценена для масштабированной передаточной функции Do –1T (s) Di. Диагональные матрицы Do и Di имеют OutputScaling и InputScaling значения на диагонали, соответственно.

Значение по умолчанию, [] , средние значения никакое масштабирование.

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

OutputScaling

Масштабирование выходного сигнала, заданное как вектор положительных действительных значений.

Используйте это свойство задать относительную амплитуду каждой записи в выходных сигналах с векторным знаком, когда выбор модулей приведет к соединению маленьких и больших сигналов. Эта информация используется, чтобы масштабировать передаточную функцию с обратной связью от Input к Output когда настраивающаяся цель оценена.

Предположим, что T (s) является передаточной функцией с обратной связью от Input к Output. Настраивающаяся цель оценена для масштабированной передаточной функции Do –1T (s) Di. Диагональные матрицы Do и Di имеют OutputScaling и InputScaling значения на диагонали, соответственно.

Значение по умолчанию, [] , средние значения никакое масштабирование.

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

Input

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

Output

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

Models

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

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

Req.Models = 2:4;

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

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

Openings

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

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

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

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

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

Name

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

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

Req.Name = 'LoopReq';

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

Примеры

свернуть все

Создайте требование, которое задает ответ воздействия шага в терминах пикового ответа временного интервала, времени урегулирования и затухания колебаний.

Предположим, что вы хотите ответ в 'y' к воздействию, введенному в 'd' никогда не превышать абсолютное значение 0,25 и обосновываться в течение 5 секунд. Создайте TuningGoal.StepRejection требование, которое получает эти спецификации и также задает неколебательный ответ.

Req1 = TuningGoal.StepRejection('d','y',0.25,5);

Не используя явное значение для коэффициента затухания, zeta, эквивалентно установке zeta = 1. Поэтому Req задает неколебательный ответ. Программное обеспечение преобразует пиковое значение и время урегулирования в ссылочную передаточную функцию, переходной процесс которой имеет желаемый профиль временного интервала. Эта передаточная функция хранится в ReferenceModel свойство Req.

Req1.ReferenceModel
ans =
 
   0.92883 s
  -----------
  (s+1.367)^2
 
Continuous-time zero/pole/gain model.

Подтвердите целевой ответ путем отображения Req.

figure()
viewGoal(Req1)

Предположим, что ваше приложение может терпеть колебания, если коэффициент затухания меньше 0.4. Создайте требование, которое задает этот ответ воздействия.

Req2 = TuningGoal.StepRejection('d','y',0.25,5,0.4);
figure()
viewGoal(Req2)

Создайте требование, которое задает ответ воздействия шага как передаточную функцию.

Предположим, что вы хотите ответ на воздействие, введенное в аналитической точке d в вашей системе управления и измеренный в точке 'y' быть отклоненным, по крайней мере, а также передаточная функция

H(s)=ss2+2s+1.

Создайте TuningGoal.StepRejection требование.

H = tf([1 0],[1 2 1]);
Req = TuningGoal.StepRejection('d','y',H);

Отобразите требование.

viewGoal(Req)

График отображен viewGoal показывает переходной процесс заданной передаточной функции. Этот ответ является целевым ответом временного интервала на воздействие.

Советы

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

Алгоритмы

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

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

f(x)=WF(s)Tdy(s,x),

или его эквивалентное дискретное время. Здесь, Tdy (s, x) является передаточной функцией с обратной связью от Input к Output, и обозначает H норма (см. norm). WF является функцией взвешивания частоты, выведенной из профиля неродного отклонения, который вы задаете в настраивающейся цели. Усиления WF и 1/ReferenceModel примерно соответствуйте для значений усиления в 60 дБ пикового усиления. По числовым причинам функция взвешивания выравнивается вне этой области значений, если вы не задаете эталонную модель, которая изменяет наклон вне этой области значений. Эта корректировка называется regularization. Поскольку полюса WF близко к s = 0 или s = Inf может привести к плохому числовому созданию условий systune задача оптимизации, не рекомендуется задать эталонные модели с очень низкочастотной или очень высокочастотной динамикой.

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

WF = getWeight(Req,Ts)

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

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

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

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

Введенный в R2016a

Для просмотра документации необходимо авторизоваться на сайте