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 получить список аналитических точек, доступных в a 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 получить список аналитических точек, доступных в a genss модель.

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

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

refsys

Ссылочная система для целевого переходного процесса в виде модели динамической системы, такой как tf, zpk, или ss модель. Желаемый переходный процесс является ответом этой модели к входному сигналу, заданному inputtype или inputfilter. Образец модели должен быть устойчивым, и последовательная связь образца модели с входным формирующий фильтром не должна иметь никакого проходного термина.

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 свойство.

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 (t) – yref (t) является несоответствием ответа, и 1 – y, ref (tr) (t) является переходным фрагментом yref (отклонение от установившегося значения или траектории). 2 обозначает энергию сигнала (2-норма). Разрыв может быть изучен как отношение среднеквадратичного значения (RMS) несоответствия к RMS ссылочного переходного процесса

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

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

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

Входной сигнал называет в виде как массив ячеек из символьных векторов, которые указывают на входные параметры для переходных процессов, которые ограничивает настраивающаяся цель. Начальное значение 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)

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

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

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

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

viewGoal(Req2)

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)

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

Создайте настраивающуюся цель, которая ограничивает импульсную характеристику. Установите 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;

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

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

Алгоритмы

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

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

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

y (t) – yref (t) является несоответствием ответа, и 1 – y, ref (tr) (t) является переходным фрагментом yref (отклонение от установившегося значения или траектории). 2 обозначает энергию сигнала (2-норма). Разрыв может быть изучен как отношение среднеквадратичного значения (RMS) несоответствия к RMS ссылочного переходного процесса

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

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

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

Введенный в R2016a