TuningGoal.Transient class

Пакет: TuningGoal

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

Описание

Используйте TuningGoal.Transient объект, чтобы ограничить переходный процесс от заданных входов к заданным выходам. Эта цель настройки задает, что переходный процесс тесно совпадает с ответом образца модели. Укажите близость необходимого соответствия с помощью RelGap свойство цели настройки (см. «Свойства»). Можно ограничить реакцию на импульсный, шаговый или наклонный входной сигнал. Можно также ограничить ответ на входной сигнал, заданный импульсной характеристикой заданного входного фильтра.

Конструкция

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

Req = TuningGoal.Transient(inputname,outputname,refsys,inputtype) определяет, является ли входной сигнал, который генерирует ограниченный переходный процесс, и импульсный, шаговый или наклонный сигнал.

Req = TuningGoal.Transient(inputname,outputname,refsys,inputfilter) задает входной сигнал для генерации переходного процесса, который ограничивает цель настройки. Задайте входной сигнал как передаточную функцию SISO, inputfilter, то есть преобразование Лапласа требуемого входного сигнала временной области. Импульсная характеристика inputfilter является желаемым входным сигналом.

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

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 модель. Желаемый переходный процесс является ответом этой модели на входной сигнал, заданный inputtype или inputfilter. Этот образец модели должен быть стабильным, и последовательное соединение образца модели с входом формирующим фильтром не должно иметь термина feedthrough.

inputtype

Тип входного сигнала, который генерирует ограниченный переходный процесс, заданный как одно из следующих значений:

  • 'impulse' - Ограничьте ответ в outputname к единичному импульсу, приложенному при inputname.

  • 'step' - Ограничьте ответ единичным шагом. Использование 'step' эквивалентно использованию TuningGoal.StepTracking проект.

  • 'ramp' - Ограничьте ответ на единичный пандус, u = t.

По умолчанию: 'impulse'

inputfilter

Пользовательский входной сигнал для генерации переходного процесса, заданный как передаточная функция SISO (tf или zpk) модель, которая представляет преобразование Лапласа необходимого входного сигнала. inputfilter должен быть непрерывным и не может иметь полюсов в открытой правой-половинной плоскости.

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

Например, чтобы ограничить переходную реакцию на синусоидальную волну с единичной амплитудой частоты w, задать inputfilter на tf(w,[1,0,w^2]). Эта передаточная функция является преобразованием Лапласа sin (wt ).

Последовательное соединение refsys с inputfilter не должно иметь кормового термина.

Свойства

ReferenceModel

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

The refsys аргумент в TuningGoal.Transient устанавливает значение ReferenceModel на ss(refsys).

InputShaping

Входной сигнал для генерации переходного процесса, заданный как SISO zpk модель, которая представляет преобразование Лапласа входного сигнала во временной области. InputShaping должен быть непрерывным и не может иметь полюсов в открытой правой-половинной плоскости. Значение этого свойства заполняется с помощью inputtype или inputfilter аргументы, используемые при создании цели настройки.

Для настройки целей, созданных с помощью inputtype аргумент, InputShaping принимает следующие значения:

inputtypeInputShaping
'impulse'1
'step'1/s
'ramp'1/s2

Для настройки целей, созданных с помощью inputfilter передаточная функция, InputShaping принимает значение zpk(inputfilter).

Последовательное соединение ReferenceModel с InputShaping не должно иметь кормового термина.

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

RelGap

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

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

y (<reservedrangesplaceholder7>) - yref (<reservedrangesplaceholder5>) - несоответствие ответа, и 1 - <reservedrangesplaceholder4> <reservedrangesplaceholder3> (<reservedrangesplaceholder2>) (<reservedrangesplaceholder1>) является переходным фрагментом yref (отклонение от установившегося значения или траектории).2 обозначает энергию сигнала (2-норма). Зазор может быть понят как отношение среднего корня-квадрата (RMS) несоответствия RMS ссылки переходного процесса

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

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

InputScaling

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

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

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

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

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

OutputScaling

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

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

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

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

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

Input

Имена входного сигнала, заданные как a как массив ячеек из векторов символов, которые указывают входы для переходных процессов, которые ограничивает цель настройки. Начальное значение 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' к сигналу с именем 'u'. Ограничьте импульсную характеристику, чтобы соответствовать отклику передаточной функции refsys=1/(s+1), но допускает 20% относительных изменений между целевым и настроенным ответами.

refsys = tf(1,[1 1]);
Req1 = TuningGoal.Transient('r','u',refsys);

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

Req1.RelGap = 0.2;

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

viewGoal(Req1)

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

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

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

Req2 = TuningGoal.Transient('r','u',refsys,'step');

Проверьте это требование.

viewGoal(Req2)

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

Req2 эквивалентно следующему требованию к отслеживанию шагов:

Req3 = TuningGoal.StepTracking('r','u',refsys);

Ограничение переходного процесса на пользовательский входной сигнал

Создайте требование для переходного процесса из 'r' на 'u'. Ограничьте ответ на синусоидальный входной сигнал, а не на вход, шаг или наклон.

Чтобы задать пользовательский входной сигнал, установите фильтр входа на преобразование Лапласа нужного сигнала. Например, предположим, что вы хотите ограничить ответ на сигнал sinωt. Преобразование Лапласа этого сигнала задается:

inputfilter=ωs2+ω2.

Создайте требование, которое ограничивает ответ в 'u' на синусоидальный вход естественной частоты 2 рад/с при 'r'. Ответ должен совпадать с ответом ссылки refsys=1/(s+1).

refsys = tf(1,[1 1]);
w = 2;
inputfilter = tf(w,[1 0 w^2]);
Req = TuningGoal.Transient('u','r',refsys,inputfilter);

Исследуйте требование, чтобы увидеть форму целевой характеристики.

viewGoal(Req)

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

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

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

refsys = tf(1,[1 1]);
Req = TuningGoal.Transient('r','u',refsys);
Req.Models = [2 3];
Req.Openings = 'OuterLoop'

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

Совет

  • Когда вы используете эту цель настройки, чтобы настроить систему управления в непрерывном времени, systune пытается применить нулевое сквозное соединение (D = 0) при передаче, которая ограничивается целью настройки. Нуль сквозного соединения накладывается, потому что H 2 норма, и, следовательно, значение цели настройки (см. Алгоритмы), бесконечно для систем непрерывного времени с ненулевым сквозным соединением .

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

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

    Чтобы исправить параметры настраиваемых блоков к заданным значениям, используйте Value и Free свойства параметризации блока. Для примера рассмотрим настроенный блок пространства состояний:

    C = tunableSS('C',1,2,3);

    Чтобы применить нулевое сквозное соединение на этом блоке, задайте нулевое значение его D матрицы и исправьте параметр.

    C.D.Value = 0;
    C.D.Free = false;

    Для получения дополнительной информации об исправлении значений параметров смотрите страницы с описанием Система Управления Block, такие как tunableSS.

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

Алгоритмы

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

Для TuningGoal.Transientf (x) основывается на относительном промежутке между настроенной характеристикой и целевой характеристикой:

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

y (<reservedrangesplaceholder7>) - yref (<reservedrangesplaceholder5>) - несоответствие ответа, и 1 - <reservedrangesplaceholder4> <reservedrangesplaceholder3> (<reservedrangesplaceholder2>) (<reservedrangesplaceholder1>) является переходным фрагментом yref (отклонение от установившегося значения или траектории).2 обозначает энергию сигнала (2-норма). Зазор может быть понят как отношение среднего корня-квадрата (RMS) несоответствия RMS ссылки переходного процесса

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

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

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

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