TuningGoal.ControllerPoles class

Пакет: TuningGoal

Ограничение на динамику контроллера для настройки системы управления

Описание

Используйте TuningGoal.ControllerPoles ограничить динамику настраиваемого компонента в модели системы управления. Используйте эту настраивающую цель по ограничению динамики настроенных блоков, идентифицированных в slTuner взаимодействуйте через интерфейс к модели Simulink®. Если вы настраиваете genss модель системы управления, используйте его, чтобы ограничить настраиваемые элементы, такие как tunableTF или tunableSS . TuningGoal.ControllerPoles требование позволяет вам управлять минимальным уровнем затухания, минимальным затуханием и максимальной собственной частотой полюсов настраиваемого элемента, гарантируя, что контроллер свободен от быстрой или резонирующей динамики. Настраивающаяся цель может также гарантировать устойчивость настроенного значения настраиваемого элемента.

После того, как вы создадите объект требования, можно далее сконфигурировать настраивающуюся цель установкой Properties объекта.

Конструкция

Req = TuningGoal.ControllerPoles(blockID,mindecay,mindamping,maxfreq) создает настраивающуюся цель, которая ограничивает динамику настраиваемого компонента системы управления. Минимальный уровень затухания, минимальное затухание, постоянная, и максимальная собственная частота задает область комплексной плоскости, в которой должны лечь полюса компонента. Неотрицательное минимальное затухание гарантирует устойчивость настроенных полюсов. Настраивающаяся цель применяется ко всем полюсам в блоке кроме фиксированных интеграторов, таких как термин I ПИД-регулятора.

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

blockID

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

  • Для настройки модели Simulink системы управления, blockID настроенный блок в slTuner взаимодействуйте через интерфейс к модели. Например, предположите slTuner интерфейс имеет настроенный блок под названием Controller. Чтобы ограничить этот блок, используйте 'Controller' для blockID входной параметр.

  • Для настройки genss модель системы управления, blockid один из блоков системы управления той модели. Например, предположите genss интерфейс имеет настраиваемый блок с именем C1. Чтобы ограничить этот блок, используйте 'C1' для blockID входной параметр.

mindecay

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

Задайте mindecay ≥ 0, чтобы гарантировать, что блок устойчив. Если вы задаете отрицательную величину, настроенный блок может включать нестабильные полюса.

Когда вы настраиваете систему управления с помощью этой настраивающей цели, все полюса настраиваемого компонента ограничиваются удовлетворить:

  •   Re(s) < -mindecay, для систем непрерывного времени.

  • log(|z|) < -mindecay*Ts, для систем дискретного времени с шагом расчета Ts.

Значение по умолчанию: 0

mindamping

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

Полюса блока, которые зависят от настраиваемых параметров, ограничиваются удовлетворить   Re(s) < -mindamping*|s|. В дискретное время коэффициент затухания вычисляется с помощью s=log(z)/Ts.

Значение по умолчанию: 0

maxfreq

Желаемая максимальная собственная частота полюсов настраиваемого блока в виде скалярного значения в модулях модели системы управления вы настраиваетесь.

Полюса блока ограничиваются удовлетворить   |s| < maxfreq для блоков непрерывного времени или |log(z)| < maxfreq*Ts поскольку дискретное время блокирует с шагом расчета Ts. Это ограничение предотвращает быструю динамику в настраиваемом блоке.

Значение по умолчанию: Inf

Свойства

Block

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

MinDecay

Минимальный уровень затухания полюсов настраиваемого компонента в виде скалярного значения в единицах частоты системы управления вы настраиваетесь. Начальное значение этого свойства установлено mindecay входной параметр.

MinDecay ≥ 0, чтобы гарантировать, что блок устойчив. Если вы задаете отрицательную величину, настроенный блок может включать нестабильные полюса.

Когда вы настраиваете систему управления с помощью этой настраивающей цели, все полюса настраиваемого компонента ограничиваются удовлетворить   Re(s) < -MinDecay для систем непрерывного времени или log(|z|) < -MinDecay*Ts для систем дискретного времени с шагом расчета Ts.

Можно использовать запись через точку, чтобы изменить значение этого свойства после того, как вы создадите настраивающуюся цель. Например, предположите Req TuningGoal.ControllerPoles настройка цели. Измените минимальный уровень затухания в 0,001:

Req.MinDecay = 0.001;

Значение по умолчанию: 0

MinDamping

Желаемый минимальный коэффициент затухания полюсов настраиваемого блока в виде значения между 0 и 1. Начальное значение этого свойства установлено mindamping входной параметр.

Полюса блока, которые зависят от настраиваемых параметров, ограничиваются удовлетворить   Re(s) < -MinDamping*|s|. В дискретное время коэффициент затухания вычисляется с помощью s=log(z)/Ts.

Значение по умолчанию: 0

MaxFrequency

Желаемая максимальная собственная частота полюсов настраиваемого блока в виде скалярного значения в единицах частоты модели системы управления вы настраиваетесь. Начальное значение этого свойства установлено maxfreq входной параметр.

Полюса блока ограничиваются удовлетворить   |s| < maxfreq для блоков непрерывного времени или |log(z)| < maxfreq*Ts поскольку дискретное время блокирует с шагом расчета Ts. Это ограничение предотвращает быструю динамику в настраиваемом блоке.

Можно использовать запись через точку, чтобы изменить значение этого свойства после того, как вы создадите настраивающуюся цель. Например, предположите Req TuningGoal.ControllerPoles настройка цели. Измените максимальную частоту в 1 000:

Req.MaxFrequency = 1000;

Значение по умолчанию: Inf

Name

Имя настраивающейся цели в виде вектора символов.

Например, если Req настраивающаяся цель:

Req.Name = 'LoopReq';

Значение по умолчанию: []

Примеры

свернуть все

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

В данном примере предположите, что вы настраиваете систему управления, которая включает блок компенсатора, параметризованный как передаточную функцию второго порядка. Создайте настраивающуюся цель, которая ограничивает полюса той передаточной функции в область Re(s)<-0.1, |s|<30.

Создайте настраиваемый компонент, который представляет компенсатор.

C = tunableTF('Compensator',2,2);

Эта команда создает Блок Системы управления под названием 'Compensator' с двумя полюсами и два обнуляет. Можно создать настраиваемую модель системы управления, T, путем соединения этого Блока Системы управления с другими настраиваемыми и числовыми моделями LTI. Если вы настраиваете T использование systune, значения этих полюсов и обнуляют, неограничены по умолчанию.

Создайте настраивающееся требование, чтобы ограничить динамику блока компенсатора. Установите минимальный уровень затухания на 0,1 рад/с и установите максимальную частоту на 30 рад/с.

Req = TuningGoal.ControllerPoles('Compensator',0.1,0,30);

mindamping входной параметр 0, который не налагает ограничения на затухание, постоянное из полюсов блока.

Если вы настраиваете T использование systune и настраивающееся требование Req, полюса блока компенсатора ограничиваются, удовлетворяют этим значениям. После того, как вы настраиваете T, можно использовать viewGoal подтверждать настроенную систему управления против настраивающейся цели.

Советы

  • TuningGoal.ControllerPoles ограничивает динамику одного настраиваемого компонента системы управления. Чтобы гарантировать устойчивость или ограничить полную динамику настроенной системы управления, используйте TuningGoal.Poles.

Алгоритмы

Когда вы используете TuningGoal объект задать настраивающуюся цель, программное обеспечение преобразует настраивающуюся цель в нормированное скалярное значение f (x). x является вектором свободных (настраиваемых) параметров в системе управления. Программное обеспечение затем настраивает значения параметров, чтобы минимизировать f (x) или управлять f (x) ниже 1, если настраивающейся целью является трудное ограничение.

Для TuningGoal.ControllerPoles, f (x) отражает относительную удовлетворенность или нарушение цели. Например, при попытке ограничить полюс настроенного блока к минимальному затуханию ζ = 0.5, затем:

  • f (x) = 1 среднее значение затухание полюса является ζ = 0.5 точно.

  • f (x) = 1,1 средних значения затухание является ζ = 0.5/1.1 = 0.45, примерно на 10% меньше, чем цель.

  • f (x) = 0,9 средних значения затухание является ζ = 0.5/0.9 = 0.55, примерно на 10% лучше, чем цель.

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

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

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

Введенный в R2016a