TuningGoal.WeightedVariance class

Пакет: TuningGoal

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

Описание

Используйте TuningGoal.WeightedVariance ограничить взвешенный H 2 нормы передаточной функции от заданных входных параметров до выходных параметров. H 2 меры по норме:

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

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

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

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

Конструкция

Req = TuningGoal.Variance(inputname,outputname,WL,WR) создает настраивающийся целевой Req. Эта настраивающая цель указывает, что передаточная функция с обратной связью H (s) от заданного входа, чтобы вывести удовлетворяет требование:

|| WL (s) H (s) WR (s) || 2 <1.

Обозначение || • || 2 обозначает H 2 нормы.

Когда вы настраиваете систему дискретного времени, Req налагает следующее ограничение:

1TsWL(z)T(z,x)WR(z)2<1.

H 2 нормы масштабируется квадратным корнем из шага расчета Ts, чтобы гарантировать сопоставимые результаты настройкой в непрерывное время. Чтобы ограничить истинное дискретное время H 2 нормы, умножьте или WL или WR 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 блок:

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

WL,WR

Функции взвешивания частоты, заданные как скаляры, матрицы, или SISO или MIMO числовые модели LTI.

Функции WL и WR обеспечьте веса для настраивающейся цели. Настраивающаяся цель гарантирует, что усиление H (s) от заданного входа, чтобы вывести удовлетворяет неравенству:

|| WL (s) H (s) WR (s) || 2 <1.

WL обеспечивает взвешивание для выходных каналов H (s) и WR обеспечивает взвешивание для входных каналов. Можно задать скалярные веса или зависимое частотой взвешивание. Чтобы задать зависимое частотой взвешивание, используйте числовую модель LTI. Например:

WL = tf(1,[1 0.01]);
WR = 10;

Если вы задаете функции взвешивания MIMO, то inputname и outputname должны быть векторные сигналы. Размерности векторных сигналов должны быть таковы, что размерности H (s) соразмерны с размерностями WL и WR. Например, если вы задаете WR = diag([1 10]), затем inputname должен включать два сигнала. Скалярные значения, однако, автоматически расширяются до любой размерности ввода или вывода.

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

Значение WL = [] или WR = [] интерпретирован как идентичность.

Свойства

WL

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

WR

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

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

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

Примеры

свернуть все

Создайте ограничение для передаточной функции с одним входом, r, и два выходных параметров, e и y, это ограничивает H2 норма можно следующим образом:

1s+0.001Tres0.001s+1Try2<1.

Tre передаточная функция с обратной связью от r к e, и Try передаточная функция с обратной связью от r к y .

s = tf('s');
WL = blkdiag(1/(s+0.001),s/(0.001*s+1));
Req = TuningGoal.WeightedVariance('r',{'e','y'},WL,[]);

Советы

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

f(x)=WLT(s,x)WR2.

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

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

f(x)=1TsWL(z)T(z,x)WR(z)2.

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

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

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

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

Введенный в R2016a