looptune

Настройте обратную связь фиксированной структуры

Синтаксис

[G,C,gam] = looptune(G0,C0,wc)
[G,C,gam] = looptune(G0,C0,wc,Req1,...,ReqN)
[G,C,gam] = looptune(...,options)
[G,C,gam,info] = looptune(...)

Описание

[G,C,gam] = looptune(G0,C0,wc) настраивает обратную связь

удовлетворять следующие требования по умолчанию:

  • Полоса пропускания — Усиление перекрестно соединяет для каждого цикла падения интервала частоты wc

  • Эффективность — Интегральное действие на частотах ниже wc

  • Робастность — Соответствующие запасы устойчивости и спад усиления на частотах выше wc

Настраиваемое genss модель C0 задает структуру контроллера, параметры и начальные значения. Модель G0 задает объект. G0 может быть модель Numeric LTI, или, для co-настройки объект и контроллер, настраиваемое genss модель. Датчик сигнализирует о y (измерения) и привод сигнализируют о u (средства управления) задают контур между объектом и контроллером.

Примечание

Для настройки Simulink® модели с looptuneИспользование slTuner (Simulink Control Design), чтобы создать интерфейс к вашей модели Simulink. Можно затем настроить систему управления с looptune (Simulink Control Design) для slTuner (требует Simulink Control Design™).

[G,C,gam] = looptune(G0,C0,wc,Req1,...,ReqN) настраивает обратную связь, чтобы встретиться, дополнительные конструктивные требования, заданные в одной или нескольких настраивающихся целях, возражает Req1,...,ReqN. Не используйте wc использовать требования, заданные в Req1,...,ReqN вместо явной целевой частоты среза и эффективности по умолчанию и требований робастности.

[G,C,gam] = looptune(...,options) задает дальнейшие опции, включая целевой запас по амплитуде, целевой запас по фазе и вычислительные опции для настраивающегося алгоритма.

[G,C,gam,info] = looptune(...) возвращает структуру info с дополнительной информацией о настроенном результате. Используйте info с loopview команда, чтобы визуализировать настраивающиеся ограничения и подтвердить настроенный проект.

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

G0

Числовая модель LTI или настраиваемый genss модель, представляющая объект в системе управления, чтобы настроиться.

Объект является фрагментом вашей системы управления, выходные параметры которой являются сигналами датчика (измерения) и чьи входные параметры являются сигналами привода (средства управления). Использование connect создавать G0 от отдельных числовых или настраиваемых компонентов.

C0

Обобщенная модель LTI, представляющая контроллер. C0 задает структуру контроллера, параметры и начальные значения.

Контроллер является фрагментом вашей системы управления, которая получает сигналы датчика (измерения) как входные параметры и производит сигналы привода (средства управления) как выходные параметры. Используйте модели Control Design Blocks и Generalized LTI, чтобы представлять настраиваемые компоненты контроллера. Использование connect создавать C0 от отдельных числовых или настраиваемых компонентов.

wc

Вектор, задающий цель, перекрестно соединяет область [wcmin,wcmax]. looptune команда пытается настроить все циклы в системе управления так, чтобы коэффициент усиления разомкнутого контура пересек 0 дБ в целевой перекрестной области.

Скалярный wc задает целевую перекрестную область [wc/2,2*wc].

Req1,...,ReqN

Один или несколько TuningGoal объекты, задающие конструктивные требования, такие как TuningGoal.Tracking, TuningGoal.Gain, или TuningGoal.LoopShape.

options

Набор опций для looptune алгоритм, заданное использование looptuneOptions. Смотрите looptuneOptions для получения информации о доступных параметрах, включая целевой запас по амплитуде и запас по фазе.

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

G

Настроенный объект.

Если G0 модель Numeric LTI, G совпадает с G0.

Если G0 настраиваемое genss модель, G isa genss модель с Блоками Системы управления того же номера и типов как G0. Текущее значение G настроенный объект.

C

Настроенный контроллер. C isa genss модель с Блоками Системы управления того же номера и типов как C0. Текущее значение C настроенный контроллер.

gam

Уровень успеха указания параметра на встрече всех настраивающих ограничений. Значение   gam <= 1 указывает, что всем требованиям удовлетворяют.   gam >> 1 указывает на отказ удовлетворить по крайней мере одно требование. Использование loopview визуализировать настроенный результат и идентифицировать неудовлетворенное требование.

Для лучших результатов используйте RandomStart опция в looptuneOptions получить несколько запусков минимизации. Установка RandomStart к целочисленному N > 0 причины looptune запускать оптимизацию N дополнительные времена, начинающиеся со значений параметров, это выбирает случайным образом. Можно исследовать gam для каждого запуска, чтобы помочь идентифицировать результат оптимизации, который соответствует вашим конструктивным требованиям.

info

Данные для проверки настраивающихся результатов, возвращенных как структура. Использовать данные в info, используйте команду loopview(G,C,info) визуализировать настраивающиеся ограничения и подтверждать настроенный проект.

info содержит следующие настраивающие данные:

Di,Do

Оптимальные масштабирования ввода и вывода, возвращенные как модели в пространстве состояний. Масштабированный объект дан Do\G*Di.

Specs

Конструктивные требования, что looptune построения для его вызова systune для настройки (см. Алгоритмы), возвращенный как вектор из TuningGoal объекты требования.

Runs

Подробная информация о каждой оптимизации, запущенной выполняемый systune когда названо looptune для настройки (см. Алгоритмы), возвращенный как структура данных.

Содержимое Runs info выход вызова systune. Для получения информации о полях Runs, смотрите info описание выходного аргумента на systune страница с описанием.

Примеры

Настройте систему управления следующим рисунком, чтобы достигнуть перекрестного соединения между 0,1 и 1 рад/min.

Объект 2 на 2 G представлен:

G(s)=175s+1[87.886.4108.2109.6].

Контроллер фиксированной структуры, C, включает три компонента: разъединяющийся матричный D 2 на 2 и два ПИ-контроллера PI_L и PI_V. Сигналы rY, и e сигналы с векторным знаком размерности 2.

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

s = tf('s');
G = 1/(75*s+1)*[87.8 -86.4; 108.2 -109.6];
G.InputName = {'qL','qV'};
G.OutputName = 'y';

D = tunableGain('Decoupler',eye(2));
D.InputName = 'e';
D.OutputName = {'pL','pV'};
PI_L = tunablePID('PI_L','pi');
PI_L.InputName = 'pL';
PI_L.OutputName = 'qL';
PI_V = tunablePID('PI_V','pi'); 
PI_V.InputName = 'pV';
PI_V.OutputName = 'qV'; 
sum1 = sumblk('e = r - y',2);
C0 = connect(PI_L,PI_V,D,sum1,{'r','y'},{'qL','qV'});

wc = [0.1,1];
[G,C,gam,info] = looptune(G,C0,wc);

C настроенный контроллер, в этом случае a genss модель с теми же типами блока как C0.

Можно исследовать настроенное использование результата loopview.

Алгоритмы

looptune автоматически преобразует целевую полосу пропускания, требования к производительности и дополнительные конструктивные требования в функции взвешивания, которые описывают требования как задачу оптимизации H∞. looptune затем использование systune оптимизировать настраиваемые параметры, чтобы минимизировать норму H∞. Для получения дополнительной информации об алгоритмах оптимизации, см. [1].

looptune вычисляет норму H∞ с помощью алгоритма [2] и сохранение структуры eigensolvers от библиотеки SLICOT. Для получения дополнительной информации о библиотеке SLICOT, см. http://slicot.org.

Альтернативы

Для настройки моделей Simulink с looptune, смотрите slTuner (Simulink Control Design) и looptune (Simulink Control Design) (требует Simulink Control Design).

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

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

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

Ссылки

[1] П. Апкэриэн и Д. Нолл, "Несглаженный Синтез H-бесконечности". Транзакции IEEE на Автоматическом управлении, Издании 51, Номере 1, 2006, стр 71–86.

[2] Bruinsma, N.A., и М. Стейнбач. "Алгоритм FAST, чтобы Вычислить H Норма Матрицы Передаточной функции". Systems & Control Letters, 14, № 4 (апреля 1990): 287–93.

Расширенные возможности

Введенный в R2016a