Инструменты Toolbox™ настройки Robust Control, systune
и Control System Tuner, позволяют вам настроить системы управления на робастность к изменениям объекта. Можно настроить контроллеры, чтобы учесть неопределенность в физических параметрах.
Можно также настроить системы управления для обеспечения эффективности в различных рабочих условиях. Можно использовать настройку мультимоделей, чтобы гарантировать надежное управление несколькими строениями системы, такими как различные типы отказа системы. Когда вы настраиваете для нескольких моделей, программное обеспечение ищет значения параметров контроллера, которые лучше всего удовлетворяют заданным целям настройки для всех моделей объекта управления.
Какой подход следует применять к устойчивой настройке, зависит от системных изменений в вашем приложении. В следующей таблице обобщены эти подходы.
Сценарий устойчивой настройки | Подход |
---|---|
Настройте систему управления для робастности с неопределенностью параметра, такой как система масса-пружина-демпфер, в которой коэффициент упругости и коэффициент демпфирования неопределенны. | Моделируйте неопределенные значения параметров ureal блоки. Смотрите Настройку для Неопределенности Параметра. |
Настройте систему управления фиксированной структурой на робастность против неопределенности реального и комплексного параметра и динамической неопределенности | Моделируйте неопределенные параметры с помощью ureal , ucomplex , и ultidyn блоки. Моделируйте настраиваемые компоненты системы управления с блоками проекта системы управления, такими как tunableGain и tunablePID блоки. Использовать musyn настройка системы управления для оптимизации надежной H ∞ эффективность. |
Настройте систему управления для нескольких критических значений параметров объекта. | Одновременно настройте несколько моделей, соответствующих значениям параметров. Этот подход полезен, когда вы не можете смоделировать изменения объекта как ureal блоки. См. «Настройка изменений параметров». |
| Одновременно настройте несколько моделей, полученных в разных рабочих точках или представляющих различные строения системы. Настройка на несколько модели объекта управления. |
Физические параметры системы часто являются неопределенными по различным причинам, включая неточные измерения, производственные допуски или износ. Можно использовать Control System Tuner или systune
команда, чтобы настроить системы управления на робастность относительно фактической неопределенности параметра на объекте. Вы представляете неопределенность параметров в системные модели управления с помощью неопределенных реальных параметров ureal
. Программа автоматически находит худшие комбинации значений параметров и настраивает контроллер, чтобы максимизировать эффективность в области значений неопределенности параметра.
Устойчивая настройка против неопределенности параметра также полезна, чтобы избежать «перестройки» системы управления. Когда вы настраиваетесь на один объект, программное обеспечение может оптимизировать эффективность за счет робастности. Возможно получить проект, которая максимизирует эффективность, но не очень устойчива к изменениям на объекте. Определение некоторого количества изменчивости объекта позволяет программному обеспечению настройки избегать таких хрупких проектов и достигать устойчивой эффективности, часто с лишь скромным ухудшением номинальной эффективности.
Настройка Simulink® модель системы управления для устойчивой настройки, используйте линеаризацию с подстановкой блоков. (Требуется программное обеспечение Simulink Control Design™.) Используйте Gain блоки, чтобы смоделировать параметры объекта управления и заменить их неопределенными значениями, представленными ureal
объекты. Или замените целую подсистему на модель неопределенного пространства состояний (uss
) подсистемы. Для получения дополнительной информации смотрите Модель Неопределенности в Simulink для Робастной Настройки.
Как и в системах управления, смоделированных в MATLAB®программное обеспечение автоматически настраивает модель на наихудшую комбинацию значений параметров в области значений неопределенностей.
Чтобы представлять неопределенность вещественного параметра в объекте, создайте обобщенное пространство состояний (genss
) модель системы управления с использованием ureal
блоки. Используйте блоки системы управления, такие как tunablePID
или tunableTF
для представления настраиваемых элементов контроллера в модели. (См. «Построение модели настраиваемой системы управления с неопределенными параметрами».) Настройте модель с systune
или в Control System Tuner точно так же, как вы бы для настраиваемой системной модели управления без неопределенности.
Командная строка: Используйте genss
модель как первый входной параметр, systune
. Подробный пример см. в разделе «Робастная настройка системы позиционирования».
Control System Tuner: Импортируйте модель в приложение, выбрав Edit Architecture > Generalized feedback configuration и введя имя genss
модель в текстовое поле. Затем используйте приложение точно так же, как и для системной модели управления без неопределенности.
В обоих случаях, когда вы настраиваете модель, программное обеспечение автоматически настраивает настраиваемые компоненты, чтобы оптимизировать эффективность во всей области значений неопределенностей. Графики для анализа автоматически отображают случайные выборки неопределенной системы, чтобы дать вам визуальное представление о изменении эффективности.
Блочно-замещающий подход к моделированию неопределенности, требует замены целого блока вашей модели на ureal
параметр или uss
неопределенная система. В некоторых случаях вы, возможно, не сможете сделать такую замену. В качестве альтернативы можно варьировать системные параметры по заданной области, сетке или неоднородным множествам значений. Когда вы используете systune
или Control System Tuner, чтобы настроить систему с изменениями параметров, можно получить контроллер, который надежно соответствует целям эффективности в области значений значений коэффициентов модели или нескольких строений объекта.
В Control System Tuner задайте изменения параметров блоков на вкладке Control System. В раскрывающемся списке Parameter Variations выберите Select parameters to vary
. Это действие открывает вкладку Parameter Variations, на которой можно задать параметры блоков для изменения и значения, которые они берут. Control System Tuner линеаризирует вашу модель Simulink в каждой комбинации значений параметров блоков, которые вы предоставляете. Затем приложение находит набор усилений контроллера, которые лучше всего соответствуют вашим целям настройки для всех линеаризированных моделей одновременно.
Для подробного примера, который показывает, как использовать Control System Tuner для настройки системы управления для нескольких значений параметров блоков, смотрите Настройку для нескольких значений параметров объекта.
Для получения дополнительной информации об использовании вкладки Parameter Variations для генерации линейных моделей при нескольких значениях параметров блоков, смотрите Задать выборки параметров для пакетной линеаризации (Simulink Control Design). Процедура применения изменения параметра в Model Linearizer аналогична процедуре в Control System Tuner.
slTuner
Для настройки в командной строке системы управления, смоделированной в Simulink, используйте функцию изменения параметра slTuner
. Для этого вы создаете структуру, которая содержит сетку значение параметров, над которой вы хотите настроить модель. Для примера, иллюстрирующего изменение параметра с slLinearizer
, см. Переменные значения параметров и Получение нескольких передаточных функций (Simulink Control Design). Процедура конфигурирования slTuner
интерфейс для изменений параметров тот же. После настройки slTuner
интерфейс, создание целей настройки и настройка интерфейса с systune
. Программа настраивает систему так, чтобы соответствовать целям настройки для всех значений параметров одновременно.
Параметры блоков, которые вы варьируете, чтобы сгенерировать несколько модели объекта управления, отличаются от параметров контроллера, которые вы настраиваете, чтобы соответствовать вашим целям настройки.
Block parameters значения задают атрибуты блоков в модели Simulink. Параметры блоков могут задавать числовые значения, такие как усиление блока усиления, коэффициент упругости или другие физические параметры системы. Параметры блоков могут также задавать структурные атрибуты блока, такие как размерности интерполяционной таблицы.
Можно варьировать любые параметры блоков, значение которого сохранено как переменная в рабочем пространстве модели или рабочем пространстве MATLAB. Однако не изменяйте параметры блока контроллера, которые вы определяете для настройки (см. «Задание блоков для настройки» в Control System Tuner). Скорее варьируйте параметры, которые задают атрибуты объекта в вашей системе управления. Для примера в модели ActiveSuspensionQuarterCar
, параметры блоков, заданные как переменные, включают коэффициент упругости, Ks
и демпфирующую константу, Bs
.
Пример Настройка нескольких значений параметров объекта показывает, как настроить систему управления ActiveSuspensionQuarterCar
модель для области значений значений этих параметров.
Controller parameters коэффициенты, которые настраивает программное обеспечение настройки, чтобы привести к производительности системы управления, которая удовлетворяет вашим целям настройки. Когда вы выбираете блоки для настройки, программа присваивает параметризацию каждому блоку, как описано в View и Change Block Parameterization в Control System Tuner. Коэффициенты этих параметризаций являются параметрами контроллера, которые настраивает программное обеспечение. Для примера, если вы выбираете блок PID Controller для настройки, программа настройки назначает параметризацию, настраиваемые коэффициенты которой являются коэффициентами усиления и фильтрации ПИДа.
Таким образом, вы задаете параметры контроллера, выбирая блоки для настройки и опционально настраивая параметризацию этих блоков. Вы задаете другие системные параметры, которые будут изменяться, чтобы получить несколько модели объекта управления для настройки. В примере «Настройка нескольких значений параметров объекта» блок, выбранный для настройки, является блоком State-Space. В этом примере параметры контроллера являются записями в матрицах пространства состояний.
Когда вы настраиваете усиления контроллера против нескольких моделей, программное обеспечение ищет значения параметров контроллера, которые лучше всего удовлетворяют заданным целям настройки для всех моделей объекта управления. Это полезно для обеспечения надежной эффективности в различных рабочих условиях или для нескольких строений системы.
Control System Tuner может настроить параметры контроллера для линеаризации вашей модели Simulink, полученной в любое время моментального снимка симуляции или в установившейся рабочей точке. На вкладке Control System используйте меню Operating Point, чтобы вычислить и выбрать рабочие точки, в которых можно линеаризировать и настроить.
Дополнительные сведения см. в разделе Настройка рабочих точек в Control System Tuner.
Если вы задаете несколько рабочих точек, Control System Tuner пытается настроить параметры контроллера, чтобы удовлетворить вашим целям настройки во всех заданных рабочих точках. Можно ограничить, какие цели настройки Control System Tuner применяет в каждой рабочей точке. Смотрите Выборочное Применение Целей Настройки.
В командной строке можно настроить для нескольких рабочих точек, передав массив объектов с рабочей точкой в slTuner
.
Можно настроить контроллер, который является устойчивым к нескольким строениям, создав массив моделей, представляющих эти условия. Например, можно создать массив из genss
модели, которые представляют различные типы отказа системы. В Simulink используйте slTuner
линеаризация вашей модели в массиве условий работы, которые представляют различные типы отказа. Для получения примера смотрите модель в Fault-Tolerant Control of a Passenger Jet. Эта модель использует блок усиления, который, когда установлен в нуль, ломает цикл обратной связи, чтобы симулировать потерю управления приводом системы. Затем пример использует slTuner
чтобы дискретизировать модель с различными каналами этого блока усиления в нуле. Настройка, которая slTuner
с systune
находит значения настраиваемых параметров контроллера, которые оптимизируют цели проекта во всех типах отказа.
Иногда вы хотите ограничить применение ваших целей настройки подмножеством моделей, для которых вы одновременно настраиваетесь. Например, предположим, что вы линеаризируете модель в четыре раза снимка, t = [0,5,10,20]
. Вы хотите настроить модель так, чтобы она соответствовала вашим целям проекта во все эти моменты времени. Однако предположим далее, что у вас есть одна цель настройки, которую вы не хотите применять в t = 0
потому что он должен применяться только после того, как модель достигла устойчивой операции. Чтобы ограничить применение этой цели настройки:
В командной строке установите Models
свойство цели настройки к индексам массивов моделей, к которым вы хотите применить цель.
В Control System Tuner используйте Apply goal to поле цели настройки.
Выберите Only models и введите индексы массива моделей, для которых применяется цель. В этом примере линеаризация в t = [0,5,10,20]
приводит к массиву из четырех моделей, и вы хотите исключить первую модель из этого массива (t = 0
) из цели настройки. Поэтому вводите индексы массива 2:4
.
Для нескольких моделей, полученных с помощью вкладки Parameter Variations, индексы массива назначаются в том порядке, в котором комбинации параметров появляются в таблице Изменений параметра. Для примера, если вы применяете изменения параметров следующего рисунка, индексы массива назначаются как показано на рисунке.
Таким образом, например, применить цель настройки только к тем моделям с Bs = 1000
, независимо от Ks
введите значение [1,3]
в Only models поле цели настройки.
При выполнении устойчивой настройки системы с неопределенностью параметра иногда хочется применить определенные цели настройки только к номинальной системе. Или можно хотеть рассматривать цель настройки как жесткое ограничение для номинальной системы, но как мягкое ограничение для остальной части области значений неопределенностей. При настройке системы управления, смоделированной в MATLAB, можно сделать это, поместив номинальную систему в массив моделей с неопределенной системой. Например, предположим CL0
является genss
модель, имеющая как неопределенные, так и настраиваемые блоки. Создайте массив моделей номинальных и полных неопределенных систем.
CL = [getNominal(CL0),CL0];
Предположим, что вы создали две цели настройки для этой системы, Req1
и Req2
. Хотите Req2
для применения только к номинальной системе. Для этого используйте Models
свойство, ограничивающее Req2
к первой записи в массиве.
Req2.Models = [1];
Теперь можно использовать Req2
как с systune
как жесткая цель или мягкая цель.
Лечить Req2
в качестве жесткого ограничения для номинальной системы и мягкого ограничения в противном случае создайте копию цели настройки. Чтобы ограничить копию второй записью в массиве, установите Models
свойство копии.
Req3 = Req2; Req3.Models = [2]; hard = [Req1,Req2]; soft = Req3; [CLt,fSoft,gHard] = systune(CL,soft,hard);
replaceBlock
| systune (for genss)
| slTuner
(Simulink Control Design) | systune (for slTuner)
(Simulink Control Design)