Устойчивые настраивающие подходы

Устойчивая настройка и настройка мультимодели

Настраивающие инструменты Robust Control Toolbox™, systune и Control System Tuner, позвольте вам настраивать системы управления для робастности против изменения объекта. Можно настроить контроллеры, чтобы вместить неопределенность в физических параметрах.

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

Выбор устойчивого настраивающего подхода

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

Устойчивый настраивающий сценарийПодход
Настройте систему управления для робастности против неопределенности параметра, такой как система массового пружинного демпфера, в которой коэффициент упругости и коэффициент демпфирования сомнительны.Смоделируйте неопределенные значения параметров с ureal блоки. Смотрите Настройку для Неопределенности Параметра.
Настройте систему управления фиксированной структуры для робастности против действительной и комплексной неопределенности параметра и динамической неопределенностиСмоделируйте неопределенные параметры с ureal, ucomplex, и ultidyn блоки. Настраиваемые компоненты системы управления модели с блоками системы управления, такими как tunableGain и tunablePID блоки. Использование musyn настроить систему управления, чтобы оптимизировать устойчивый H эффективность.
Настройте систему управления для нескольких критических значений параметров объекта. Одновременно настройте многоуровневые модели, соответствующие значениям параметров. Этот подход полезен, когда вы не можете смоделировать изменения объекта как ureal блоки. Смотрите Настройку для Изменений Параметра.
  • Обеспечьте эффективность через различные условия работы, такие как ответ средств управления полетом на различных высотах.

  • Настройтесь для надежного управления несколькими конфигурациями системы, такими как различные типы отказа системы.

Одновременно настройте многоуровневые модели, полученные в различных рабочих точках или представлении различных конфигураций системы. Настройтесь Против Нескольких Моделей объекта управления.

Настройка для неопределенности параметра

Физические параметры системы часто сомнительны по различным причинам, включая неточные измерения, производственные допуски или износ. Можно использовать Control System Tuner или systune команда, чтобы настроить системы управления для робастности против действительной неопределенности параметра на объекте. Вы представляете неопределенность параметра в своей модели системы управления использование неопределенных действительных параметров ureal. Программное обеспечение автоматически находит худшие комбинации значений параметров и настраивает контроллер, чтобы максимизировать эффективность в области значений неопределенности параметра.

Устойчивая настройка против неопределенности параметра также полезна, чтобы не “сверхнастраивать” систему управления. Когда вы настраиваетесь против одного объекта, программное обеспечение может оптимизировать эффективность за счет робастности. Возможно получить проект, который максимизирует эффективность, но не очень устойчив против изменений объекта. Определение некоторой суммы изменчивости объекта позволяет настраивающемуся программному обеспечению избежать таких хрупких проектов и достигнуть устойчивой эффективности, часто только со скромным ухудшением номинальной эффективности.

Система управления, смоделированная в Simulink

Чтобы настроить модель Simulink® системы управления для устойчивой настройки, используйте линеаризацию с заменой блока. (Программное обеспечение Requires Simulink Control Design™.) Используют блоки Gain, чтобы смоделировать параметры объекта и замену блока использования, чтобы заменить их на неопределенные значения, представленные ureal объекты. Или, замените целую подсистему на неопределенную модель в пространстве состояний (uss) из подсистемы. Для получения дополнительной информации смотрите Неопределенность Модели в Simulink для Устойчивой Настройки.

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

Системы управления, смоделированные в MATLAB

Чтобы представлять действительную неопределенность параметра на объекте, создайте обобщенное пространство состояний (genss) модель использования системы управления ureal блоки. Используйте блоки системы управления такой как tunablePID или tunableTF представлять настраиваемые элементы контроллера в модели. (См., Создают Настраиваемую Модель Системы управления Неопределенными Параметрами.) Настраивают модель с systune или в Control System Tuner, как вы были бы для настраиваемой модели системы управления без неопределенности.

  • Командная строка: Используйте genss модель как первый входной параметр к systune. Для подробного примера смотрите Устойчивую Настройку системы позиционирования.

  • Control System Tuner: Импортируйте модель в приложение путем выбора Edit Architecture> Generalized feedback configuration и ввода имени genss модель в текстовое поле. Затем используйте приложение, как вы были бы для модели системы управления без неопределенности.

В обоих случаях, когда вы настраиваете модель, программное обеспечение автоматически настраивает настраиваемые компоненты, чтобы оптимизировать эффективность в области значений неопределенности. Графики для анализа автоматически отображают случайные выборки неопределенной системы, чтобы дать вам зрение изменения эффективности.

Настройка для изменений параметра

Подход замены блока к моделированию неопределенности, требует заменяющий целый блок вашей модели с a ureal параметр или uss неопределенная система. В некоторых случаях вы не можете смочь сделать такую замену. Как альтернатива, можно варьироваться системные параметры по заданной области, сетке или неоднородному множеству значений. Когда вы используете systune или Control System Tuner, чтобы настроить систему с изменением параметра, можно получить контроллер, который надежно удовлетворяет целям эффективности в области значений значений коэффициента модели или по нескольким настройкам объекта.

Определение изменений параметра 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 является коэффициентами, которые настраивающееся программное обеспечение настраивает, чтобы дать к эффективности системы управления, которая удовлетворяет вашим настраивающим целям. Когда вы выбираете блоки, чтобы настроиться, программное обеспечение присваивает параметризацию каждому блоку, как описано в Параметризации Блока Представления и Изменения в 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 линеаризовать вашу модель под массивом условий работы, которые представляют различные типы отказа. Для примера см. модель в Отказоустойчивом Управлении Пассажирского самолета. Та модель использует блок усиления, который, когда обнулено, повреждает обратную связь, чтобы симулировать потерю управления системного привода. Пример затем использует 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, индексы массива присвоены в порядке, что комбинации параметра появляются в таблице Parameter Variations. Например, если вы применяете изменения параметра следующего рисунка, индексы массива присвоены как показано.

Таким образом, например, чтобы применить настраивающуюся цель только к тем моделям с Bs = 1000, независимо от Ks значение, введите [1,3] в поле Only models настраивающейся цели.

Приложение к номинальной системе

При выполнении устойчивой настройки системы с неопределенностью параметра вы иногда хотите применить определенные настраивающие цели к номинальной системе только. Или, вы можете хотеть обработать настраивающуюся цель как трудное ограничение для номинальной системы, но как мягкое ограничение по остальной части области значений неопределенности. Когда настройка системы управления смоделировала в MATLAB, можно сделать это путем помещения номинальной системы в массив моделей с неопределенной системой. Например, предположите CL0 isa 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);

Смотрите также

| | (Simulink Control Design) | (Simulink Control Design)

Похожие темы