TuningGoal.StepTracking class

Пакет: TuningGoal

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

Описание

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

Конструкция

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

Req = TuningGoal.StepTracking(inputname,outputname,tau) задает требуемую переходную характеристику как ответ первого порядка с постоянной времени tau:

Req.ReferenceModel=1/taus+1/tau.

Req = TuningGoal.StepTracking(inputname,outputname,tau,overshoot) задает требуемую переходную характеристику как ответ второго порядка с естественным периодом tau, естественная частота 1/ tauи процент перерегулирования overshoot:

Req.ReferenceModel=(1/tau)2s2+2(zeta/tau)s+(1/tau)2.

Демпфирование определяется zeta = cos(atan2(pi,-log(overshoot/100))).

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

inputname

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

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

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

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

    • Любая точка линейного анализа в slTuner (Simulink Control Design) интерфейс, сопоставленный с моделью Simulink. Использовать addPoint (Simulink Control Design), чтобы добавить точки анализа к slTuner интерфейс. Использовать getPoints (Simulink Control Design), чтобы получить список точек анализа, доступных в 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 Control Design) интерфейс, сопоставленный с моделью Simulink. Использовать addPoint (Simulink Control Design), чтобы добавить точки анализа к slTuner интерфейс. Использовать getPoints (Simulink Control Design), чтобы получить список точек анализа, доступных в 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

Ссылочная система для целевой переходной характеристики, заданная как динамическая системная модель, такая как tf, zpk, или ss модель. refsys должен быть стабильным и должен иметь коэффициент усиления постоянного тока 1 (нулевая установившаяся ошибка).

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

refsys может быть MIMO, при условии, что он квадратный и что его DC сингулярное значение (sigma) равен 1. Если refsys является моделью MIMO, тогда ее количество входов и выходов должно совпадать с размерностями inputname и outputname.

Для достижения наилучших результатов, refsys должны также включать внутренние характеристики системы, такие как неминамические нули фазы (нижняя стрелка).

tau

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

Если вы используете синтаксис Req = TuningGoal.StepTracking(inputname,outputname,tau) чтобы задать целевой ответ первого порядка, затем tau - постоянная по времени распада отклика. В этом случае целью является переходная характеристика системы, заданная:

Req.ReferenceModel=1/taus+1/tau.

Если вы используете синтаксис Req = TuningGoal.StepTracking(inputname,outputname,tau,overshoot) чтобы задать целевой ответ второго порядка, затем tau - обратная естественная частота отклика. В этом случае целью является переходная характеристика системы, заданная:

Req.ReferenceModel=(1/tau)2s2+2(zeta/tau)s+(1/tau)2.

Демпфирование системы определяется zeta = cos(atan2(pi,-log(overshoot/100))).

overshoot

Процент перерегулирования целевой переходной характеристики, заданный как скалярное значение в область значений (0,100).

Свойства

ReferenceModel

Ссылка система для целевых переходных характеристик, заданная как SISO или MIMO-пространство состояний (ss) модель. Когда вы используете цель настройки для настройки системы управления, переходной характеристики из inputname на outputname настроен так, чтобы соответствовать этому целевому ответу в пределах допуска, заданного RelGap свойство.

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

Если вы используете tau или tau и overshoot входные параметры, затем ReferenceModel является представлением пространства состояний соответствующей передаточной функции первого или второго порядка.

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

RelGap

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

gap=y(t)yref(t)21yref(t)2.

y (t) - yref (t) является несоответствием отклика, а 1 - yref (t) является ошибкой пошагового отслеживания целевой модели.2 обозначает энергию сигнала (2-норма).

Увеличьте значение RelGap чтобы ослабить соответствующий допуск.

По умолчанию: 0.1

InputScaling

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

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

Например, предположим, что Req является целью настройки, которая сигнализирует {'y1','y2'} отслеживать опорные сигналы {'r1','r2'}. Предположим далее, что вы требуете, чтобы выходы отслеживали ссылки с менее чем 10% перекрестной связи. Если r1 и r2 имеют сопоставимые амплитуды, тогда этого достаточно, чтобы сохранить усиления от r1 на y2 и r2 и y1 ниже 0,1. Однако, если r1 в 100 раз больше r2, коэффициент усиления от r1 на y2 должно быть меньше 0,001, чтобы убедиться, что r1 изменяет y2 менее чем на 10% r2 цель. Чтобы гарантировать этот результат, установите InputScaling свойство следующим образом.

Req.InputScaling = [100,1];

Это говорит программному обеспечению учитывать, что первый опорный сигнал в 100 раз больше, чем второй опорный сигнал.

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

По умолчанию: []

Input

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

Output

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

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';

По умолчанию: []

Примеры

Переходная характеристика требования с заданным допуском

Создайте требование к переходной характеристике из сигнала с именем 'r' к сигналу с именем 'y'. Ограничьте переходную характеристику, чтобы соответствовать передаточной функции H = 10/( s + 10), но допустите 20% относительных изменений между целевыми настроенными откликами.

H = tf(10,[1 10]);
Req = TuningGoal.StepResp('r','y',H);

По умолчанию это требование допускает относительный промежуток 0,1 между целевым и настроенным откликами. Чтобы изменить относительный промежуток на 20%, установите RelGap свойство требования.

Req.RelGap = 0.2;

Исследуйте требование.

viewGoal(Req);

Figure contains an axes. The axes contains an object of type line. This object represents Desired.

Штриховая линия показывает целевую переходную характеристику, заданное этим требованием. Вы можете использовать это требование для настройки системной модели управления, T, который содержит допустимые входные и выходные местоположения с именем 'r' и 'y'. Если вы делаете это, команда viewGoal(Req,T) строит график достигнутой переходной характеристики от 'r' на 'y' для сравнения с целевой характеристикой.

Первый порядок Переходной характеристики с известной постоянной времени

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

Req = TuningGoal.StepResp('r','y',5);

Когда вы используете это требование для настройки системной модели управления, T, временная константа 5 принимается, чтобы быть выраженной в преобладающих модулях системы управления. Для примера, если T является genss модель и свойство T.TimeUnit является 'seconds', затем это требование задает целевую постоянную времени 5 секунд для ответа от входа 'r' в выход 'y' от 'T'.

Заданная постоянная времени преобразуется в ссылку модель пространства состояний, сохраненную в ReferenceModel свойство требования.

refsys = tf(Req.ReferenceModel)
refsys =
 
    0.2
  -------
  s + 0.2
 
Continuous-time transfer function.

Как и ожидалось, refsys является моделью первого порядка.

Исследуйте требование. The viewGoal команда отображает целевой ответ, который является переходной характеристикой образца модели.

viewGoal(Req);

Figure contains an axes. The axes contains an object of type line. This object represents Desired.

Штриховая линия показывает целевую переходную характеристику, заданный этим требованием, ответ первого порядка с константой времени пять секунд.

Второй порядок Переходной характеристики с известным естественным периодом и перерегулированием

Создайте требование, которое задает переходную характеристику порядка с естественным периодом 5 секунд и 10% перерегулированием. Создайте требование к переходной характеристике из сигнала с именем 'r' к сигналу с именем 'y'.

Req = TuningGoal.StepResp('r','y',5,10);

Когда вы используете это требование для настройки системной модели управления, Tестественный период 5 принимается выраженным в преобладающих модулях системы управления. Для примера, если T является genss модель и свойство T.TimeUnit является 'seconds', затем это требование задает целевой естественный период 5 секунд для ответа от входа 'r' в выход 'y' от 'T'.

Заданные параметры отклика преобразуются в ссылку модель пространства состояний, сохраненную в ReferenceModel свойство требования.

refsys = tf(Req.ReferenceModel)
refsys =
 
          0.04
  ---------------------
  s^2 + 0.2365 s + 0.04
 
Continuous-time transfer function.

Как и ожидалось, refsys является моделью второго порядка.

Исследуйте требование. The viewGoal команда отображает целевой ответ, который является переходной характеристикой образца модели.

viewGoal(Req);

Figure contains an axes. The axes contains an object of type line. This object represents Desired.

Штриховая линия показывает целевую переходную характеристику, заданный этим требованием, ответ второго порядка с 10% перерегулированием и естественным периодом в пять секунд.

Отслеживание цели с ограниченным приложением модели и дополнительными открытиями цикла

Создайте цель настройки, которая задает переходную характеристику первого порядка с константой времени 5 секунд. Установите Models и Openings свойства для дальнейшей настройки применимости цели настройки.

Req = TuningGoal.StepTracking('r','y',5);
Req.Models = [2 3];
Req.Openings = 'OuterLoop'

При настройке системы управления, которая имеет вход 'r', a выхода 'y', и местоположение точки анализа 'OuterLoop', можно использовать Req как вход в looptune или systune. Установка Openings свойство задает, что переходная характеристика от 'r' на 'y' измеряется при открытом цикле при 'OuterLoop'. При настройке массива системных моделей управления, настройке Models свойство ограничивает применение цели настройки. В этом примере цель настройки применяется только ко второй и третьей моделям в массиве.

Совет

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

Алгоритмы

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

Для TuningGoal.StepTracking, f (x) определяется:

f(x)=1s(T(s,x)Tref(s))2RelGap1s(Tref(s)I)2.

T (s, x) является передаточной функцией с обратной связью от Input на Output со значениями параметров x, а Tref (s) является образцом модели, заданной в ReferenceModel свойство. 2 обозначает H 2 норму (см norm).

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

расширить все

Поведение изменено в R2016a

Введенный в R2016a