looptuneOptions

Установите опции для looptune

Синтаксис

options = looptuneOptions
options = looptuneOptions(Name,Value)

Описание

options = looptuneOptions возвращает набор опций по умолчанию для looptune команда.

options = looptuneOptions(Name,Value) создает набор опций с параметрами, заданными одним или несколькими Name,Value аргументы в виде пар.

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

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

looptuneOptions принимает следующие Name аргументы:

'GainMargin'

Целевой запас по амплитуде в децибелах. GainMargin задает необходимый запас по амплитуде для настроенной системы управления. Для систем управления MIMO запаса по амплитуде является мультицикл полем диска. Определение мультицикла запаса диска смотрите в разделе Анализ устойчивости с использованием полей диска (Robust Control Toolbox).

Значение по умолчанию: 7,6 дБ

'PhaseMargin'

Целевой запас по фазе в степенях. PhaseMargin задает необходимый запас по фазе для настроенной системы управления. Для систем управления MIMO, запас по фазе является запасом многолучевого диска. Определение мультицикла запаса диска смотрите в разделе Анализ устойчивости с использованием полей диска (Robust Control Toolbox).

По умолчанию: 45 степени

'Display'

Объем информации для отображения во время looptune запуски, заданный как одно из следующих значений.

  • 'off' - Запуск в бесшумном режиме, не отображая никакой информации во время или после выполнения.

  • 'iter' - Отображать прогресс оптимизации после каждой итерации. Отображение включает значение целевого параметра gam после каждой итерации. Это отображение также включает в себя Progress значение, указывающее на процентное изменение gam от предыдущей итерации.

  • 'final' - отображение сводки в одну строку в конце каждого запуска оптимизации. Отображение включает минимизированное значение gam и количество итераций для каждого запуска.

По умолчанию: 'final'

'MaxIter'

Максимальное количество итераций в каждом прогоне оптимизации.

По умолчанию: 300

'RandomStart'

Количество дополнительных оптимизаций, начиная от случайных значений свободных параметров в контроллере.

Если   RandomStart = 0, looptune выполняет один запуск оптимизации, начиная с начальных значений настраиваемых параметров. Настройка     RandomStart = N > 0 запускает N дополнительные оптимизации, начиная с N случайным образом сгенерированных значений параметров.

looptune настраивает путем нахождения локального минимума задачи минимизации усиления. Чтобы увеличить вероятность нахождения значений параметров, соответствующих вашим проектам требованиям, установите   RandomStart > 0. Затем можно использовать лучший проект, который является результатом нескольких запусков оптимизации.

Использование с UseParallel = true для распределения независимых запусков оптимизации между MATLAB® workers (требует программного обеспечения Parallel Computing Toolbox™).

По умолчанию: 0

'UseParallel'

Флаг параллельной обработки.

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

  • Если Automatically create a parallel pool отобран в Ваших настройках Parallel Computing Toolbox (Parallel Computing Toolbox), то программное обеспечение начинает параллельный бассейн, используя параметры настройки в тех настройках.

  • Если Automatically create a parallel pool не выбран в ваших настройках, то программное обеспечение выполняет запуски оптимизации последовательно, без параллельной обработки.

Если Automatically create a parallel pool не выбран в настройках, можно вручную запустить параллельный пул с помощью parpool (Parallel Computing Toolbox) перед запуском команды настройки.

Для использования параллельной обработки требуется программное обеспечение Parallel Computing Toolbox.

По умолчанию: false

'TargetGain'

Целевое значение для целевого параметра gam.

looptune команда преобразует ваши требования проекта в нормализованные ограничения усиления. Затем команда настраивает свободные параметры системы управления, чтобы управлять целевым параметром gam ниже 1 для обеспечения соблюдения всех требований.

Значение по умолчанию   TargetGain = 1 гарантирует, что оптимизация прекратится как только gam падает ниже 1. Задайте TargetGain к меньшему или большему значению, чтобы продолжить оптимизацию или начать раньше, соответственно.

По умолчанию: 1

'TolGain'

Относительная погрешность для завершения.

Оптимизация прекращается, когда целевой параметр gam уменьшается менее чем на TolGain более 10 последовательных итераций. Увеличение TolGain ускоряет завершение и уменьшает TolGain приводит к более жестким конечным значениям.

По умолчанию: 0.001

'MaxFrequency'

Максимальная естественная частота с обратной связью.

Настройка MaxFrequency ограничивает полюса с обратной связью, чтобы удовлетворить   |p| < MaxFrequency.

Позволить looptune для автоматического выбора полюсов с обратной связью на основе динамики разомкнутого контура установите   MaxFrequency = Inf. Чтобы предотвратить нежелательную быструю динамику или управление с высоким усилением, установите MaxFrequency к конечному значению.

Задайте MaxFrequency в модули 1/ TimeUnit, относительно TimeUnit свойство системы, которую вы настраиваете.

По умолчанию: Inf

'MinDecay'

Минимальная скорость распада для полюсов с обратной связью

Ограничивает полюса с обратной связью, чтобы удовлетворить   Re(p) < -MinDecay. Увеличьте это значение, чтобы улучшить стабильность полюсов с обратной связью, которые не влияют на усиление с обратной связью из-за гашения полюса/нуля.

Задайте MinDecay в модули 1/ TimeUnit, относительно TimeUnit свойство системы, которую вы настраиваете.

По умолчанию: 1e-7

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

options

Набор опций, содержащий указанные опции для looptune команда.

Примеры

свернуть все

Создайте набор опций для looptune запуск с использованием трех случайных перезапусков. Также установите целевой коэффициент усиления и запасов по фазе равные 6 дБ и 50 степени соответственно и ограничьте величину полюса с обратной связью равной 100.

options = looptuneOptions('RandomStart',3','GainMargin',6,...
                'PhaseMargin',50,'SpecRadius',100);

Кроме того, используйте запись через точку, чтобы задать значения options.

options = looptuneOptions;
options.RandomStart = 3;
options.GainMargin = 6;
options.PhaseMargin = 50;
options.SpecRadius = 100;

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

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

Если Automatically create a parallel pool не отобран в Ваших настройках Parallel Computing Toolbox (Parallel Computing Toolbox), вручную начните параллельное использование бассейна parpool (Parallel Computing Toolbox). Для примера:

parpool;

Если Automatically create a parallel pool выбран в настройках, не нужно вручную запускать пул.

Создайте looptuneOptions набор, который задает 20 случайных перезапусков для параллельного запуска.

options = looptuneOptions('RandomStart',20,'UseParallel',true);

Настройка UseParallel на true позволяет параллельную обработку путем распределения рандомизированных запусков между доступными работниками в параллельном пуле.

Используйте looptuneOptions устанавливать при вызове looptune. Например, предположим, что вы уже создали модель объекта управления G0 и настраиваемый C0 контроллера. В этом случае следующая команда использует параллельные вычисления, чтобы настроить систему управления G0 и C0 к целевому кроссоверу wc.

[G,C,gamma] = looptune(G0,C0,wc,options);

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

расширить все

Поведение изменено в R2016a

См. также

| (Robust Control Toolbox) | (Simulink Control Design)

Введенный в R2016a