Получите усиления Кальмана и модель для проекта средства оценки
[L,M] =
getEstimator(MPCobj)
[L,M,A,Cm,Bu,Bv,Dvm]
= getEstimator(MPCobj)
[L,M,model,index]
= getEstimator(MPCobj,'sys')
[
также возвращается, системные матрицы раньше вычисляли усиления средства оценки.L
,M
,A,Cm,Bu,Bv,Dvm
]
= getEstimator(MPCobj
)
Объект является стабильной, дискретной моделью в пространстве состояний LTI с четырьмя состояниями, тремя входными параметрами и тремя выходными параметрами. Переменные, которыми управляют, являются входными параметрами 1 и 2. Введите 3, неизмеренное воздействие. Выходные параметры 1 и 3 измеряются. Выведите 2, не измерено.
Создайте модель объекта и задайте сигналы для MPC.
rng(1253) % For repeatable results Plant = drss(4,3,3); Plant.Ts = 0.25; Plant = setmpcsignals(Plant,'MV',[1,2],'UD',3,'MO',[1 3],'UO', 2); Plant.d(:,[1,2]) = 0;
Последняя команда обеспечивает объект, чтобы удовлетворить предположение ни о каком прямом сквозном соединении.
Вычислите образцовый прогнозирующий контроллер по умолчанию для этого объекта.
MPCobj = mpc(Plant);
-->The "PredictionHorizon" property of "mpc" object is empty. Trying PredictionHorizon = 10. -->The "ControlHorizon" property of the "mpc" object is empty. Assuming 2. -->The "Weights.ManipulatedVariables" property of "mpc" object is empty. Assuming default 0.00000. -->The "Weights.ManipulatedVariablesRate" property of "mpc" object is empty. Assuming default 0.10000. -->The "Weights.OutputVariables" property of "mpc" object is empty. Assuming default 1.00000. for output(s) y1 y3 and zero weight for output(s) y2
Получите параметры, которые будут использоваться в оценке состояния.
[L,M,A,Cm,Bu,Bv,Dvm] = getEstimator(MPCobj);
-->The "Model.Disturbance" property of "mpc" object is empty: Assuming unmeasured input disturbance #3 is integrated white noise. -->Assuming output disturbance added to measured output channel #1 is integrated white noise. Assuming no disturbance added to measured output channel #3. -->The "Model.Noise" property of the "mpc" object is empty. Assuming white noise on each measured output channel.
На основе уравнения состояния средства оценки полюса средства оценки даны собственными значениями A - L*Cm
. Вычислите и отобразите полюса.
Poles = eig(A - L*Cm)
Poles = 6×1
-0.7467
-0.5019
0.0769
0.4850
0.8825
0.8291
Подтвердите, что средство оценки по умолчанию асимптотически стабильно.
max(abs(Poles))
ans = 0.8825
Это значение - меньше чем 1, таким образом, средство оценки асимптотически стабильно.
Проверьте это в этом случае, L = A*M
.
L - A*M
ans = 6×2
10-15 ×
0.1665 0.1527
0.0278 0.1110
-0.1110 -0.1388
0.0139 0
-0.0763 -0.0278
0.0139 -0.1110
MPCobj
— Контроллер MPCКонтроллер MPC, заданный как контроллер MPC объект. Используйте команду mpc
, чтобы создать контроллер MPC.
L
Матрица усиления Кальмана для обновления времениМатрица усиления Кальмана для обновления времени, возвращенного как матрица. Размерностями L
является nx-by-nym, где nx является общим количеством состояний контроллера, и nym является количеством измеренных выходных параметров. Смотрите уравнения Средства оценки состояния.
M
Матрица усиления Кальмана для обновления измеренияМатрица усиления Кальмана для обновления измерения, возвращенного как матрица. Размерностями L
является nx-by-nym, где nx является общим количеством состояний контроллера, и nym является количеством измеренных выходных параметров. Смотрите уравнения Средства оценки состояния.
A,Cm,Bu,Bv,Dvm
— Системные матрицыСистемные матрицы, используемые, чтобы вычислить усиления средства оценки, возвратились как матрицы различных размерностей. Для определений этих системных матриц смотрите уравнения Средства оценки состояния.
model
— Система используется для проекта средства оценки состоянияСистема используется для проекта средства оценки состояния, возвращенного как модель (ss
) пространства состояний. Вход к model
является векторным сигналом, включающим следующие компоненты, конкатенированные в следующем порядке:
Переменные, которыми управляют,
Измеренные переменные воздействия
1
Шум вводит к возмущениям
Шум вводит к модели шума измерения
Количество шумовых входных параметров зависит от воздействия и моделей шума измерения в MPCobj
. Для входных параметров шума категории к возмущениям входные параметры к входному возмущению (если таковые имеются) предшествуют тем, которые вводят выходное возмущение (если таковые имеются). Постоянный вход, 1, счета на неравновесную номинальную стоимость (см., что MPC Моделирует).
Чтобы сделать вычисление усилений L
и M
, больше устойчивых, аддитивных белых шумовых входных параметров принято, чтобы влиять на переменные, которыми управляют, и измеренные воздействия (см. Оценку состояния Контроллера). Эти белые шумовые входные параметры не включены в model
.
index
— Местоположения переменных в моделиМестоположения переменных в рамках вводов и выводов model
. Структура обобщает эти местоположения со следующими полями и значениями.
Имя поля | Значение |
---|---|
ManipulatedVariables | Индексы переменных, которыми управляют, во входном векторе model . |
MeasuredDisturbances | Индексы измеренных входных воздействий во входном векторе model . |
Offset | Индекс постоянного входа 1 во входном векторе model . |
WhiteNoise | Индексы неизмеренного воздействия вводят во входном векторе model . |
MeasuredOutputs | Индексы измеренных выходных параметров в выходном векторе model . |
UmeasuredOutputs | Индексы неизмеренных выходных параметров в выходном векторе model . |
Следующие уравнения описывают оценку состояния. Для получения дополнительной информации смотрите Оценку состояния Контроллера.
Выходная оценка: ym [n |n–1] = Cm x [n |n–1] + Dvm v [n].
Обновление измерения: x [n |n] = x [n |n–1] + M (ym [n] –ym [n |n–1]).
Обновление времени: x [n +1|n] = A x [n |n–1] + Bu u [n] + Bv v [n] + L (ym [n] – ym [n |n–1]).
Состояние средства оценки: x [n +1|n] = (A – L Cm) x [n |n–1] + Bu u [n] + (Bv –L Dvm) v [n] + L ym [v]. Состояние средства оценки основано на текущем измерении ym [n] и v [n], а также действие оптимального управления u [n], вычисленный в текущем интервале управления.
Переменные в этих уравнениях получены в итоге в следующей таблице.
Символ | Описание |
---|---|
x | Вектор состояния контроллера, длина nx. Это включает (в эту последовательность):
Длина nx является суммой количества состояний в вышеупомянутых четырех категориях. |
ym | Вектор измеренных выходных параметров или оценка их истинных значений, длина nym. |
u | Вектор переменных, которыми управляют, длина nu. |
v | Вектор измеренных входных воздействий, длина nv. |
[j |k] | Обозначает оценку состояния или вывода во время tj на основе доступных данных во время tk. |
K | Обозначает количество, известное во время tk, т.е. не оценка. |
A | nx-by-nx матрица Грина. |
Bu | nx-by-nu матрица, сопоставляющая u с x. |
Bv | nx-by-nx матрица, сопоставляющая v с x. |
Cm | nym-by-nx матрица, сопоставляющая x с ym. |
Dvm | nym-by-nv матрица, сопоставляющая v с ym. Обратите внимание на то, что Dum = 0, потому что не может быть никакого прямого сквозного соединения ни между какой переменной, которой управляют, и любым измеренным выводом. |
L | nx-by-nym матрица усиления Кальмана для обновления времени. (См. kalmd в документации Control System Toolbox™.) Обратите внимание на то, что L = A *M минимизирует ожидаемую ошибку оценки состояния для большинства комбинаций объекта и возмущений, используемых в MPC, но это не верно в целом. |
M | nx-by-nym матрица усиления Кальмана для обновления измерения. (См. kalmd в документации Control System Toolbox.) |
getindist
| getoutdist
| mpc
| mpcstate
| setEstimator
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.