Пакет: TuningGoal
Цель "линейного квадратичного гауссова" (LQG) по настройке системы управления
Используйте TuningGoal.LQG
задавать настраивающуюся цель, которая определяет количество эффективности управления как стоимости LQG. Это применимо к любой структуре управления, не только классической структуре наблюдателя оптимального управления LQG. Можно использовать эту настраивающую цель для системы управления, настраивающейся с настраивающимися командами, такими как systune
или looptune
.
Стоимостью LQG дают:
J = E (z (t) ′ QZ z (t)).
z (t) является откликом системы к белому шумовому входному вектору w (t). Ковариацией w (t) дают:
E (w (t) w (t) ′) = QW.
Векторный w (t) обычно состоит из внешних входных параметров к системе, таких как шум, воздействия или команда. Векторный z (t) включает все системные переменные, которые характеризуют эффективность, такую как управляющие сигналы, системные состояния и выходные параметры. E (x) обозначает ожидаемое значение стохастической переменной x.
Функция стоимости J может также писаться как среднее значение в зависимости от времени:
После того, как вы создадите настраивающуюся цель, можно далее сконфигурировать ее установкой Properties объекта.
создает требование LQG. Req
=
TuningGoal.LQG(wname
,zname
,QW
,QZ
)wname
и zname
задайте сигналы, составляющие w (t) и z (t). Матрицы QW
и QZ
задайте шумовую ковариацию и вес эффективности. Эти матрицы должны быть симметричны неотрицательный определенный. Используйте скалярные значения для QW
и QZ
задавать множители единичной матрицы.
|
Шумовые входные параметры, w (t) в виде вектора символов или массива ячеек из символьных векторов, которые определяют сигналы, составляющие w (t) по наименованию, такие как
Если |
|
Выходные параметры эффективности, z (t) в виде вектора символов или массива ячеек из символьных векторов, которые определяют сигналы, составляющие z (t) по наименованию, такие как
Если |
|
Ковариация белого шумового входного вектора w (t) в виде скаляра или матрицы. Используйте скалярное значение, чтобы задать кратное единичной матрице. В противном случае задайте симметричную неотрицательную определенную матрицу со столькими же строк, сколько существуют записи в векторном w (t). Диагональная матрица означает, что записи w (t) являются некоррелироваными. Ковариация w (t дают: E (w (t) w (t) ′) = QW. Когда вы настраиваете систему управления в дискретное время, LQG, настраивающаяся цель принимает: E (w [k] w [k] ′) = QW/Ts. Ts является шагом расчета модели. Это предположение гарантирует сопоставимые результаты настраиванием области непрерывного времени. В этом предположении w [k] является шумом дискретного времени, полученным путем выборки непрерывного белого шумового w (t) с ковариацией QW. Если в вашей системе w [k] является действительно дискретным процессом с известной ковариацией QWd, используйте значение Ts*QWd для Значение по умолчанию: I |
|
Веса эффективности в виде скаляра или матрицы. Используйте скалярное значение, чтобы задать кратное единичной матрице. В противном случае задайте симметричную неотрицательную определенную матрицу. Используйте диагональную матрицу, чтобы независимо масштабировать или оштрафовать вклад каждой переменной в z. Веса эффективности способствуют функции стоимости согласно: J = E (z (t) ′ QZ z (t)). Когда вы используете LQG настраивающаяся цель в качестве трудной цели, программное обеспечение пытается управлять функцией стоимости J <1. Когда вы используете его в качестве мягкой цели, функция стоимости, J минимизирован удовлетворяющий любым трудным целям, и его значение внесено функции главной цели. Поэтому выберите Значение по умолчанию: I |
|
Ковариационная матрица шума вводит w (t) в виде матрицы. Значение |
|
Веса для эффективности сигнализируют о z (t) в виде матрицы. Значение |
|
Шумовой входной сигнал называет в виде массива ячеек из символьных векторов. Имена входного сигнала задают входные параметры передаточной функции, которую ограничивает настраивающаяся цель. Начальное значение |
|
Выходной сигнал эффективности называет в виде массива ячеек из символьных векторов. Имена выходного сигнала задают выходные параметры передаточной функции, которую ограничивает настраивающаяся цель. Начальное значение |
|
Модели, к которым настраивающаяся цель применяется в виде вектора из индексов. Используйте Req.Models = 2:4; Когда Значение по умолчанию: |
|
Обратная связь, чтобы открыться при оценке настраивающейся цели в виде массива ячеек из символьных векторов, которые идентифицируют открывающие цикл местоположения. Настраивающаяся цель оценена против настройки разомкнутого контура, созданной вводной обратной связью в местоположениях, которые вы идентифицируете. Если вы используете настраивающуюся цель настроить модель Simulink системы управления, то Если вы используете настраивающуюся цель настроить обобщенное пространство состояний ( Например, если Значение по умолчанию: |
|
Имя настраивающейся цели в виде вектора символов. Например, если Req.Name = 'LoopReq'; Значение по умолчанию: |
Когда вы используете эту настраивающую цель настроить систему управления непрерывного времени, systune
попытки осуществить нулевое сквозное соединение (D = 0) на передаче, которую ограничивает настраивающаяся цель. Нулевое сквозное соединение наложено, потому что H 2 нормы, и поэтому значение настраивающейся цели, бесконечен для систем непрерывного времени с ненулевым сквозным соединением.
systune
осуществляет нулевое сквозное соединение путем фиксации, чтобы обнулить все настраиваемые параметры, которые способствуют проходному термину. systune
возвращает ошибку, когда фиксация этих настраиваемых параметров недостаточна, чтобы осуществить нулевое сквозное соединение. В таких случаях необходимо изменить настраивающуюся цель или структуру управления, или вручную зафиксировать некоторые настраиваемые параметры системы к значениям, которые устраняют проходной термин.
Когда ограниченная передаточная функция имеет несколько настраиваемых блоков последовательно, подход программного обеспечения обнуления всех параметров, которые способствуют полной проходной силе быть консервативными. В этом случае достаточно обнулить проходной термин одного из блоков. Если вы хотите управлять, который блок имеет сквозное соединение, зафиксированное, чтобы обнулить, можно вручную зафиксировать сквозное соединение настроенного блока по вашему выбору.
Чтобы зафиксировать параметры настраиваемых блоков к заданным значениям, используйте Value
и Free
свойства параметризации блока. Например, рассмотрите настроенный блок пространства состояний:
C = tunableSS('C',1,2,3);
Чтобы осуществить нулевое сквозное соединение на этом блоке, обнулите его матричное значение D и зафиксируйте параметр.
C.D.Value = 0; C.D.Free = false;
Для получения дополнительной информации о фиксации значений параметров смотрите страницы с описанием Блока Системы управления, такой как tunableSS
.
Эта настраивающая цель налагает неявное ограничение устойчивости на передаточную функцию с обратной связью от wname
к zname
, оцененный с циклами, открытыми в точках, идентифицирован в Openings
. Движущими силами, затронутыми этим неявным ограничением, является stabilized dynamics для этой настраивающей цели. MinDecay
и MaxRadius
опции systuneOptions
управляйте границами на этих неявно ограниченных движущих силах. Если оптимизации не удается соответствовать границам по умолчанию, или если конфликт границ по умолчанию с другими требованиями, использовать systuneOptions
изменить эти значения по умолчанию.
Когда вы настраиваете систему управления с помощью TuningGoal
, программное обеспечение преобразует настраивающуюся цель в нормированное скалярное значение f (x). x является вектором из свободных (настраиваемых) параметров в системе управления. Программное обеспечение затем настраивает значения параметров, чтобы минимизировать f (x) или управлять f (x) ниже 1, если настраивающейся целью является трудное ограничение.
Для TuningGoal.LQG
, f (x) дан функцией стоимости J:
J = E (z (t) ′ QZ z (t)).
Когда вы используете требование LQG в качестве трудной цели, программное обеспечение пытается управлять функцией стоимости J <1. Когда вы используете его в качестве мягкой цели, функция стоимости, J минимизирован удовлетворяющий любым трудным целям, и его значение внесено функции главной цели. Поэтому выберите QZ
значения, чтобы правильно масштабировать функцию стоимости так, чтобы управление им ниже 1 или минимизация его дали к эффективности, которой вы требуете.
evalGoal
| systune
| TuningGoal.Variance
| TuningGoal.WeightedVariance
| viewGoal
| slTuner
(Simulink Control Design) | systune (for slTuner)
(Simulink Control Design)