Пакет: TuningGoal
Требование отказа от нарушения для настройки системы управления
Использовать TuningGoal.Rejection задание минимального ослабления возмущения, введенного в указанном месте в системе управления. Эта цель настройки помогает настраивать системы управления с помощью таких команд настройки, как systune или looptune.
При использовании TuningGoal.Rejection, программное обеспечение пытается настроить систему таким образом, чтобы ослабление возмущения в указанном местоположении превышало заданный минимальный коэффициент ослабления. Этот коэффициент затухания представляет собой отношение чувствительности разомкнутого и замкнутого контура к возмущению и является функцией частоты. Ослабление возмущений может быть достигнуто только внутри полосы пропускания управления. Коэффициент усиления контура должен быть больше единицы для ослабления возмущения (коэффициент ослабления > 1).
создает цель настройки для отклонения нарушения, входящего в Req = TuningGoal.Rejection(distloc,attfact)distloc. Эта цель настройки ограничивает минимальный коэффициент затухания возмущений зависящим от частоты значением. attfact.
|
Местоположение возмущения, определяемое как вектор символов или, для целей настройки с несколькими входами, массив ячеек векторов символов.
|
|
Коэффициент затухания как функция частоты, определяемый как числовая модель LTI.
attfact = frd([100 100 1 1],[0 1 10 100]);
Req = TuningGoal.Rejection('u',attfact);
bodemag(attfact)
ylim([-5,40])
При использовании Если вы настраиваетесь за дискретное время (то есть с помощью |
|
Минимальное затухание возмущений в зависимости от частоты, выраженное как SISO Программное обеспечение автоматически сопоставляет |
|
Полоса частот, в которой принудительно применяется цель настройки, заданная как вектор строки формы Установите Req.Focus = [1,100]; По умолчанию: |
|
Переключение для автоматического масштабирования сигналов шлейфа, указанного как Для целей настройки отклонения многолучевых или MIMO-возмущений каналы обратной связи автоматически масштабируются для выравнивания членов вне диагонали (взаимодействия контура) в функции передачи с разомкнутым контуром. Набор По умолчанию: |
|
Местоположение возмущения, определяемое как массив ячеек символьных векторов, которые идентифицируют одну или несколько точек анализа в системе управления для настройки. Например, если Начальное значение |
|
Модели, к которым применяется цель настройки, заданная как вектор индексов. Используйте Req.Models = 2:4; Когда По умолчанию: |
|
Петли обратной связи, открываемые при оценке цели настройки, задаются как массив ячеек символьных векторов, которые идентифицируют местоположения открытия петли. Цель настройки оценивается по конфигурации с разомкнутым контуром, созданной путем открытия контуров обратной связи в определенных местоположениях. Если вы используете цель настройки для настройки модели Simulink системы управления, то При использовании цели настройки для настройки обобщенного состояния-пространства ( Например, если По умолчанию: |
|
Имя цели настройки, указанное как символьный вектор. Например, если Req.Name = 'LoopReq'; По умолчанию: |
Создайте цель настройки, которая обеспечивает затухание по крайней мере в 10 раз от 0 до 5 рад/с. Цель настройки относится к возмущению, входящему в систему управления в точке, идентифицированной как 'u'.
Req = TuningGoal.Rejection('u',10);
Req.Name = 'Rejection spec';
Req.Focus = [0 5]Создайте цель настройки, которая обеспечивает коэффициент ослабления не менее 100 (40 дБ) ниже 1 рад/с, постепенно снижаясь до 1 (0 дБ) за 10 рад/с. Цель настройки относится к возмущению, входящему в систему управления в точке, идентифицированной как 'u'.
attfact = frd([100 100 1 1],[0 1 10 100]);
Req = TuningGoal.Rejection('u',attfact);Эти команды используют frd модель для задания минимального профиля затухания как функции частоты. Минимальное затухание 100 менее 1 рад/с вместе с минимальным затуханием 1 на частотах 10 и 100 рад/с определяет требуемый откат.
attfact преобразуется в гладкую функцию частоты, которая аппроксимирует кусочно заданный профиль. Просмотрите профиль усиления с помощью view Goal.
viewGoal(Req)

Закрашенная область указывает место нарушения цели настройки.
Эта цель настройки накладывает неявное ограничение стабильности на функцию чувствительности с замкнутым контуром, измеренную в Location, оценивается с помощью петель, открытых в точках, определенных в Openings. Динамика, на которую влияет это неявное ограничение, является стабилизированной динамикой для этой цели настройки. MinDecay и MaxRadius варианты systuneOptions управлять границами в этой неявно ограниченной динамике. Если оптимизация не соответствует границам по умолчанию или если границы по умолчанию противоречат другим требованиям, используйте systuneOptions для изменения этих значений по умолчанию.
При настройке системы управления с помощью TuningGoal, программное обеспечение преобразует цель настройки в нормализованное скалярное значение f (x). В этом случае x - вектор свободных (настраиваемых) параметров в системе управления. Значения параметров настраиваются автоматически, чтобы минимизировать f (x) или диск f (x) ниже 1, если цель настройки является жестким ограничением.
Для TuningGoal.Rejection, f (x) задается следующим образом:
x) ‖∞,
или его дискретный временной эквивалент. Здесь S (jλ, x) - функция чувствительности с замкнутым контуром, измеренная в месте возмущения. Λ - интервал частоты, в течение которого выполняется цель настройки, указанный в Focus собственность. WS - функция взвешивания частоты, полученная из заданного профиля ослабления. Выгоды WS и MinAttenuation приблизительно совпадают для значений коэффициента усиления в диапазоне от -20 дБ до 60 дБ. По числовым причинам взвешивающая функция выравнивается вне этого диапазона, если только указанный профиль затухания не изменяет наклон вне этого диапазона. Эта корректировка называется регуляризацией. Поскольку полюса WS близки к s = 0 или s = Inf может привести к плохому числовому кондиционированию systune задача оптимизации, не рекомендуется задавать профили затухания с очень низкочастотной или очень высокочастотной динамикой.
Чтобы получить WS, используйте:
WS = getWeight(Req,Ts)
где Req является целью настройки, и Ts - время выборки, в которое выполняется настройка (Ts = 0 на непрерывное время). Дополнительные сведения о регуляризации и ее последствиях см. в разделе Визуализация целей настройки.
looptune | systune | TuningGoal.LoopShape | TuningGoal.Tracking | viewGoal | looptune (for slTuner) (Simulink Control Design) | slTuner (Simulink Control Design) | systune (for slTuner)(Проект управления Simulink)