exponenta event banner

Класс TuningGoal.Variance

Пакет: TuningGoal

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

Описание

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

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

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

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

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

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

После создания цели настройки ее можно настроить, задав свойства объекта.

Строительство

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

При настройке системы управления в дискретное время эта цель настройки предполагает непрерывность физического процесса установки и шума. Для обеспечения того, чтобы непрерывная и дискретная настройка времени давала согласованные результаты, maxamp интерпретируется как ограничение H2 нормы непрерывного времени. Если заводские и шумовые процессы действительно дискретны и требуется ограничить дискретную временную норму H2 значением maxamp, задайте для третьего входного аргумента значение maxamp/sqrt(Ts), где Ts - образец времени настраиваемой модели.

Входные аргументы

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 блок:

Дополнительные сведения о точках анализа в моделях систем управления см. в разделе Маркировка интересующих сигналов для анализа и проектирования систем управления.

maxamp

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

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

Свойства

MaxAmplification

Максимальное усиление шума, заданное как положительное скалярное значение. Это свойство определяет максимальное значение выходной дисперсии для сигналов, указанных в Output, для сигнала белого шума с единичной дисперсией при Input. Это значение соответствует максимальной норме H2 от 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 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';

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

Примеры

свернуть все

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

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

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

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

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

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

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

    Дополнительные сведения о фиксации значений параметров см. на страницах ссылок «Control Design Block», например tunableSS.

  • Эта цель настройки накладывает неявное ограничение стабильности на передаточную функцию с замкнутым контуром из Input кому Output, оценивается с помощью петель, открытых в точках, определенных в Openings. Динамика, на которую влияет это неявное ограничение, является стабилизированной динамикой для этой цели настройки. 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 обозначает H2 норму ( см.norm).

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

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

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

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

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

В R2016a изменилось поведение

Представлен в R2016a