TuningGoal. Класс отклонения

Пакет: TuningGoal

Шумовое ограничение усиления для настройки системы управления

Описание

Используйте TuningGoal.Variance, чтобы задать настраивающуюся цель, которая ограничивает шумовое усиление от заданных входных параметров до выходных параметров. Шумовое усиление задано как также:

  • Квадратный корень из выходного отклонения, для входа белого шума модульного отклонения

  • Среднеквадратичное значение вывода, для входа белого шума модульного отклонения

  • H 2 нормы передаточной функции от заданных входных параметров до выходных параметров, которая равняется полной энергии импульсного ответа

Этими определениями являются различные интерпретации того же количества. TuningGoal.Variance накладывает то же ограничение на эти количества.

Можно использовать TuningGoal.Variance для системы управления, настраивающейся с настраивающимися командами, такими как systune или looptune. Определение этой настраивающей цели позволяет вам настраивать отклик системы на бело-шумовые входные параметры. Для стохастических входных параметров с неоднородным спектром (окрашенный шумом), используйте TuningGoal.WeightedVariance вместо этого.

После того, как вы создадите настраивающуюся цель, можно далее сконфигурировать настраивающуюся цель установкой Properties объекта.

Конструкция

Req = TuningGoal.Variance(inputname,outputname,maxamp) создает настраивающуюся цель, которая ограничивает шумовое усиление передаточной функции от inputname до outputname к скалярному значению maxamp.

Когда вы настраиваете систему управления в дискретное время, эта настраивающая цель принимает, что материальная часть и шумовой процесс непрерывны. Чтобы гарантировать, что непрерывно-разовое и дискретное время, настраиваясь дает сопоставимые результаты, maxamp интерпретирован как ограничение на непрерывно-разовый H 2 нормы. Если объект и шумовые процессы действительно дискретны, и вы хотите ограничить дискретное время H 2 нормы вместо этого, умножить maxamp на Ts. Ts является шагом расчета модели, которую вы настраиваете.

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

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:

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

maxamp

Максимальное шумовое усиление от inputname до outputname, заданного как значение положительной скалярной величины. Это значение задает максимальное значение выходного отклонения в сигналах, заданных в outputname для модульного отклонения белый шумовой сигнал в inputname. Это значение соответствует максимальному H 2 нормы от inputname до outputname.

Когда вы настраиваете систему управления в дискретное время, эта настраивающая цель принимает, что материальная часть и шумовой процесс непрерывны, и интерпретирует maxamp как привязанный непрерывно-разовый H 2 нормы. Это гарантирует, что непрерывно-разовое и дискретное время, настраиваясь дает сопоставимые результаты. Если объект и шумовые процессы действительно дискретны, и вы хотите к связанному дискретное время H 2 нормы вместо этого, задаете значение maxamp /Ts. Ts является шагом расчета модели, которую вы настраиваете.

Свойства

MaxAmplification

Максимальное шумовое усиление, заданное как значение положительной скалярной величины. Это свойство задает максимальное значение выходного отклонения в сигналах, заданных в Output для модульного отклонения белый шумовой сигнал в Input. Это значение соответствует максимальному H 2 нормы от Input до Output. Начальное значение MaxAmplification установлено входным параметром maxamp, когда вы создаете настраивающуюся цель.

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. Используйте addPoint, чтобы добавить аналитические точки и открытия цикла к интерфейсу slTuner. Используйте getPoints, чтобы получить список аналитических точек, доступных в интерфейсе slTuner к вашей модели.

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

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

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

Name

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

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

Req.Name = 'LoopReq';

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

Примеры

свернуть все

Создайте требование, которое ограничивает усиление отклонения от аналитической точки AP2 к выводу y следующей системы управления, измеренной с открытым внешним циклом.

Создайте модель системы. Для этого задайте и соедините числовые модели объекта управления G1 и G2 и настраиваемые контроллеры C1 и C2. Также задайте и соединитесь, AnalysisPoint блокирует AP1 и AP2, которые отмечают интересные места для анализа и настройки.

G1 = tf(10,[1 10]);
G2 = tf([1 2],[1 0.2 10]);
C1 = tunablePID('C','pi');
C2 = tunableGain('G',1);
AP1 = AnalysisPoint('AP1');
AP2 = AnalysisPoint('AP2');
T = feedback(G1*feedback(G2*C2,AP2)*C1,AP1);

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

Req = TuningGoal.Variance('AP2','y',0.1);

Это ограничение ограничивает усиление фактором 0,1.

Укажите, что передаточная функция от AP2 до y оценена с внешним циклом, открытым при настройке на это ограничение.

Req.Openings = {'AP1'};

Используйте systune, чтобы настроить свободные параметры T, чтобы удовлетворить настраивающееся требование, заданное Req. Можно затем подтвердить настроенную систему управления против требования с помощью viewGoal(Req,T).

Советы

  • Когда вы используете эту настраивающую цель настроить непрерывно-разовую систему управления, 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.Variance f (x) дают:

f(x)=1MaxAmplificationT(s,x)2.

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

Для настройки систем управления дискретного времени f (x) дают:

f(x)=1MaxAmplificationTsT(z,x)2.

Ts является шагом расчета передаточной функции дискретного времени T (z, x).

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

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

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

Введенный в R2016a