TuningGoal.Passivity class

Пакет: TuningGoal

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

Описание

Системой является passive, если все его траектории ввода-вывода (u (t), y (t)) удовлетворяют:

0Ty(t)Tu(t)dt>0,

для всего T> 0. Эквивалентно, система пассивна, если ее частотная характеристика положительна действительный, что означает это для всего ω> 0,

G(jω)+G(jω)H>0

Используйте TuningGoal.Passivity осуществлять пассивность ответа между заданными вводами и выводами, при использовании настраивающей команды системы управления, такими как systune. Можно также использовать TuningGoal.Passivity гарантировать конкретный избыток или нехватку пассивности (см. getPassiveIndex).

Конструкция

Req = TuningGoal.Passivity(inputname,outputname) создает настраивающуюся цель по осуществлению пассивности ответа от заданных входных параметров до заданных выходных параметров.

Req = TuningGoal.Passivity(inputname,outputname,nu,rho) создает настраивающуюся цель по осуществлению:

0Ty(t)Tu(t)dt>ν0Tu(t)Tu(t)dt+ρ0Ty(t)Ty(t)dt,

для всего T> 0. Эта настраивающая цель осуществляет избыток пассивности при вводах или выводах когда nu > 0 или rho > 0, соответственно. Настраивающаяся цель допускает нехватку входной пассивности когда nu < 0. Смотрите getPassiveIndex для получения дополнительной информации об этих индексах.

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

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

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

nu

Целевая пассивность во входных параметрах перечислена в inputname, заданный как скалярное значение. Входной индекс пассивности задан как самое большое значение ν для который:

0Ty(t)Tu(t)dt>ν0Tu(t)Tu(t)dt,

для всего T> 0. Эквивалентно, nu самый большой ν для который:

G(jω)+G(jω)H>2νI

Когда вы устанавливаете целевой nu в TuningGoal.Passivity цель, настраивающееся программное обеспечение:

  • Гарантирует, что заданный ответ вводится строго пассивный когда nu > 0. Величина nu устанавливает необходимый избыток пассивности.

  • Позволяет ответу не быть введенным строго пассивный когда nu <0. Величина nu устанавливает разрешенную нехватку пассивности.

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

rho

Целевая пассивность при выходных параметрах перечислена в outputname, заданный как скалярное значение. Выходной индекс пассивности задан как самое большое значение ρ для который:

0Ty(t)Tu(t)dt>ρ0Ty(t)Ty(t)dt,

для всего T> 0.

Когда вы устанавливаете целевой rho в TuningGoal.Passivity цель, настраивающееся программное обеспечение:

  • Гарантирует, что заданный ответ выводится строго пассивный когда rho > 0. Величина rho устанавливает необходимый избыток пассивности.

  • Позволяет ответу не быть выведенным строго пассивный когда rho <0. Величина rho устанавливает разрешенную нехватку пассивности.

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

Свойства

IPX

Целевая пассивность во входных параметрах, сохраненных как скалярное значение. Это значение задает необходимое количество пассивности во входных параметрах, перечисленных в inputname. Начальное значение этого свойства установлено входным параметром nu когда вы создаете TuningGoal.Passivity цель.

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

OPX

Целевая пассивность при выходных параметрах, сохраненных как скалярное значение. Это значение задает необходимое количество пассивности при выходных параметрах, перечисленных в outputname Начальное значение этого свойства установлено входным параметром rho когда вы создаете TuningGoal.Passivity цель.

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

Focus

Диапазон частот, в котором осуществляется настройка цели, задал как вектор-строка из формы [min,max].

Установите Focus свойство ограничить осуществление настраивающейся цели к конкретному диапазону частот. Выразите это значение в единицах частоты модели системы управления, которую вы настраиваете (rad/TimeUnit). Например, предположите Req настраивающаяся цель, которую вы хотите применить только между 1 и 100 рад/с. Чтобы ограничить настраивающуюся цель этой полосой, используйте следующую команду:

Req.Focus = [1,100];

Значение по умолчанию: [0,Inf] в течение непрерывного времени; [0,pi/Ts] в течение дискретного времени, где Ts шаг расчета модели.

Input

Имена входного сигнала, заданные как массив ячеек из символьных векторов. Имена входного сигнала задают входные местоположения для определения пассивности, первоначально заполненной inputname аргумент.

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

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

Примеры

свернуть все

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

TG = TuningGoal.Passivity('u','y');

Используйте viewGoal визуализировать настраивающуюся цель.

viewGoal(TG)

Требованию удовлетворяют когда относительный индекс R пассивности <1 на всех частотах. Заштрихованная область представляет область, где требование нарушено. Когда вы используете это требование, чтобы настроить систему управления CL, viewGoal(TG,CL) показывает R для заданных вводов и выводов на этом графике, позволяя вам идентифицировать частотные диапазоны, в которых нарушено требование пассивности.

Создайте требование, которое гарантирует что ответ от входа 'u' к выходу 'y' вводится строго пассивный, с избытком пассивности 2.

TGi = TuningGoal.Passivity('u','y',2,0);

Ограничьте требование, чтобы применяться только в частотном диапазоне между 0 и 10 рад/с.

TGi.Focus = [0 10];

Советы

  • Используйте viewGoal визуализировать эту настраивающую цель. Для осуществления пассивности с nu = 0 и rho = 0, viewGoal строит относительные индексы пассивности как функцию частоты (см. passiveplot). Это сингулярные значения (IG(jω))(IG(jω))1. Передаточная функция G от inputname к outputname (оцененный с циклами открываются, как задано в Openings) пассивно, когда самое большое сингулярное значение меньше 1 на всех частотах.

    Для ненулевого nu или rho, viewGoal строит относительный индекс как описано в Алгоритмах.

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

Алгоритмы

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

Для TuningGoal.Passivity цель, для передаточной функции с обратной связью G(s,x) от inputname к outputname, f (x) дают:

f(x)=R1+R/Rmax ,Rmax =106.

R является относительным индексом сектора (см. getSectorIndex) из [G(s,x);I], для сектора, представленного:

Q=(2ρII2ν),

использование значений OPX и IPX свойства для ρ и ν, соответственно.