mixsyn

Смешанная чувствительность H метод синтеза для устойчивого формирующего цикл управления проекта

Описание

пример

[K,CL,gamma,info] = mixsyn(G,W1,W2,W3) вычисляет контроллер, который минимизирует H норма взвешенной передаточной функции с обратной связью

M(s)=[W1SW2KSW3T],

где S = (I + GK)–1 и T = (IS) является дополнительной чувствительностью следующей системы управления.

Вы выбираете функции взвешивания W1,W2,W3 сформировать частотные характеристики для отслеживания и подавления помех, усилия контроллера, и шумоподавления и робастности, соответственно. Для получения дополнительной информации о том, как выбрать функции взвешивания, смотрите, что Цикл Смешанной Чувствительности Формирует.

mixsyn вычисляет контроллер K это дает к минимуму || M (s) || , который возвращен как gamma. Для возвращенного контроллера K,

Sγ|W11|KSγ|W21|Tγ|W31|.

[K,CL,gamma] = mixsyn(G,W1,W2,W3,gamTry) вычисляет контроллер для целевого уровня эффективности gamTry. Определение gamTry может быть полезным, когда оптимальная эффективность контроллера лучше, чем вам нужно для вашего приложения. В этом случае меньше оптимальный контроллер может иметь меньшие усиления и лучше тренироваться численно. Когда W1,W2,W3 получите желаемые пределы на усилениях S, KS, и T, используйте gamtry = 1, чтобы только осуществить те пределы.

Если gamTry не достижимо, mixsyn возвращается для K и CL, и Inf для gamma.

[K,CL,gamma] = mixsyn(G,W1,W2,W3,gamRange) ищет область значений gamRange для лучшей достижимой эффективности. Укажите диапазон с вектором из формы [gmin,gmax]. Ограничение поисковой области значений может ускорить расчет путем сокращения количества итераций, выполняемых mixsyn протестировать различные уровни эффективности.

[K,CL,gamma] = mixsyn(___,opts) задает дополнительные опции расчета. Создать optsИспользование hinfsynOptions. Задайте opts после всех других входных параметров.

[K,CL,gamma,info] = mixsyn(___) возвращает структуру, содержащую дополнительную информацию о H расчет синтеза. Можно использовать этот аргумент с любым из предыдущих синтаксисов.

Примеры

свернуть все

Используйте mixsyn для чувствительности и дополнительного формирования цикла чувствительности. Создайте модель объекта управления и функции взвешивания что:

  • Сформируйте функцию чувствительности для отслеживания уставки и подавления помех (W1 = 1/S большой в полосе пропускания управления).

  • Сформируйте дополнительную чувствительность для робастности и шумового затухания (W3 = 1/T большой вне полосы пропускания управления).

  • Ограничьте усилие по управлению (W2 = 1/KS большой в полосе пропускания управления).

(Для получения дополнительной информации о выборе функций взвешивания, смотрите, что Цикл Смешанной Чувствительности Формирует.)

s = zpk('s');
G = (s-1)/(s+1)^2;

W1 = makeweight(10,[1 0.1],0.01);
W2 = makeweight(0.1,[32 0.32],1);
W3 = makeweight(0.01,[1 0.1],10);

bodemag(W1,W2,W3)

Figure contains an axes object. The axes object contains 3 objects of type line. These objects represent W1, W2, W3.

Спроектируйте контроллер.

[K,CL,gamma] = mixsyn(G,W1,W2,W3);

mixsyn формирует сингулярные значения функции чувствительности S, дополнительная чувствительность функционирует T, и усилие по управлению R = K*S. Исследуйте результаты синтеза и формы этих передаточных функций.

S = feedback(1,G*K);
KS = K*S;
T = 1-S;
sigma(S,'b',KS,'r',T,'g',gamma/W1,'b-.',ss(gamma/W2),'r-.',gamma/W3,'g-.',{1e-3,1e3})
legend('S','KS','T','GAM/W1','GAM/W2','GAM/W3','Location','SouthWest')
grid

Figure contains an axes object. The axes object contains 6 objects of type line. These objects represent S, KS, T, GAM/W1, GAM/W2, GAM/W3.

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

свернуть все

Объект в виде модели динамической системы, такой как пространство состояний (ss) модель. G может быть любая модель LTI. mixsyn принимает следующую структуру управления.

Если G обобщенная модель в пространстве состояний с неопределенными или настраиваемыми блоками системы управления, затем mixsyn использует номинальную стоимость или текущее значение тех элементов.

Функции взвешивания в виде моделей динамической системы. Выберите функции взвешивания W1,W2,W3 сформировать частотные характеристики для отслеживания и подавления помех, усилия контроллера, и шумоподавления и робастности. Обычно:

  • Для хорошего отслеживания уставки и эффективности подавления помех, выберите W1 большой в полосе пропускания управления, чтобы получить маленький S.

  • Для робастности и шумового затухания, выберите W3 большой вне полосы пропускания управления, чтобы получить маленький T.

  • Чтобы ограничить усилие по управлению в конкретном диапазоне частот, увеличьте величину W 2 в этом диапазоне частот, чтобы получить маленький KS.

Если один из весов не нужен, установите его на []. Например, если вы не хотите ограничивать усилие по управлению, используйте W2 = [].

Использование makeweight создать функции взвешивания с желаемыми профилями усиления. Для получения дополнительной информации о выборе функций взвешивания, смотрите, что Цикл Смешанной Чувствительности Формирует.

Если G имеет входные параметры NU и NY выходные параметры, затем W1,W2,W3 должна быть или SISO или квадратные системы размера NY, NU и NY, соответственно.

Поскольку S + T = I, mixsyn не может сделать и S и T маленькими (меньше чем 0 дБ) в том же частотном диапазоне. Поэтому, когда вы задаете формирование цикла for весов, должен быть диапазон частот в который оба W1 и W3 ниже 0 дБ.

Целевой уровень эффективности в виде положительной скалярной величины. mixsyn попытки вычислить контроллер, таким образом, что H взвешенной системы с обратной связью M (s) не превышает gamTry. Если этот уровень эффективности достижим, то у возвращенного контроллера есть gammagamTry. Если gamTry не достижимо, mixsyn возвращает пустой контроллер.

Область значений эффективности для поиска в виде вектора из формы [gmin,gmax]. mixsyn команда тестирует только уровни эффективности в той области значений. Это возвращает контроллер с эффективностью:

  • gammagmin, когда gmin достижимо.

  • gmin <gamma <gmax, когда gmax достижимо и но gmin не.

  • gamma = Inf когда gmax не достижимо. В этом случае, mixsyn возвращается для K и CL.

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

Дополнительные опции для расчета в виде опции возражают, что вы создаете использование hinfsynOptions.

Используйте opts задавать опции для базового hinfsyn расчет (см. Алгоритмы). Доступные параметры включают:

  • Отобразите прогресс алгоритма в командной строке.

  • Выключите автоматическое масштабирование и регуляризацию.

  • Задайте метод оптимизации.

Для получения информации обо всех опциях смотрите hinfsynOptions.

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

свернуть все

Контроллер, возвращенный как пространство состояний (ss) объект модели или [].

Если вы предоставляете gamTry или gamRange и заданные значения эффективности не достижимы, затем K = [].

Увеличенная передаточная функция с обратной связью, возвращенная как пространство состояний (ss) объект модели или []. Увеличенной передаточной функцией с обратной связью дают

M(s)=[W1SW2KSW3T],

где S = (I + GK)–1 и T = (IS) является дополнительной чувствительностью невзвешенной системы управления. Смотрите, что Цикл Смешанной Чувствительности Формирует.

Возвращенный уровень эффективности gamma H норма CL.

Если вы предоставляете gamTry или gamRange и заданные уровни эффективности не достижимы, затем CL = [].

Эффективность контроллера, возвращенная как неотрицательное скалярное значение или Inf. Это значение является достигнутым использованием эффективности возвращенного контроллера K, и H норма CL (см. hinfnorm). Если вы не обеспечиваете уровни эффективности, чтобы протестировать использование gamTry или gamRange, затем gamma лучший достижимый уровень эффективности.

Если вы обеспечиваете gamTry или gamRange, затем gamma фактический уровень эффективности, достигнутый контроллером, вычисленным для лучшего передающего уровня эффективности это hinfsyn попытки. Если заданные уровни эффективности не достижимы, то gamma = Inf.

Дополнительные данные о синтезе, возвращенные как структура или [] (если заданный уровень эффективности не достижим). информация содержит данные о базовом hinfsyn расчет, используемый mixsyn минимизировать H норма передаточной функции с обратной связью M (s). Для получения дополнительной информации о значении полей info, смотрите info выходной аргумент hinfsyn.

Алгоритмы

mixsyn использует ваши функции взвешивания, чтобы сгенерировать увеличенный объект P = augw(G,W1,W2,W3). Это затем вызывает hinfsyn найти контроллер, который минимизирует H норма передаточной функции с обратной связью M (s) = LFT (P, K). Для получения дополнительной информации смотрите, что Цикл Смешанной Чувствительности Формирует.

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

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

Не рекомендуемый запуск в R2019b

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

Представлено до R2006a