Получите усиления Кальмана и модель для проекта средства оценки
[
также возвращается, системные матрицы раньше вычисляли усиления средства оценки.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.2776 0.2359
0.0416 0
-0.0971 -0.1527
0 -0.0278
-0.1318 -0.0833
0.0694 0.0278
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 . |
В общем случае состояния контроллера не измерены и должны быть оценены. По умолчанию диспетчер использует установившийся Фильтр Калмана, который выводит от наблюдателя состояния. Для получения дополнительной информации смотрите Оценку состояния Контроллера.
В начале k th контрольный интервал, состояние контроллера оценивается со следующими шагами:
Получите следующие данные:
xc (k |k–1) — Контроллер утверждает оценку от предыдущего контрольного интервала, k –1
uact (k –1) — Переменная Manipulated (MV), на самом деле используемая на объекте от k –1 к k (принял постоянный),
uopt (k –1) — Оптимальный мВ, рекомендуемый MPC и принятый, чтобы использоваться на объекте от k –1 к k
v (k) — Текущие измеренные воздействия
ym (k) — Текущий измеренный объект выходные параметры
Bu, Bv — Столбцы параметра наблюдателя B, соответствующий u (k) и v (k) входные параметры
Cm — Строки параметра наблюдателя C соответствие измеренному объекту выходные параметры
Dmv — Строки и столбцы параметра наблюдателя D, соответствующий измеренному объекту выходные параметры и измеренные входные параметры воздействия
L, M — Матрицы усиления Константа Кальмана
Сигналы ввода и вывода объекта масштабируются, чтобы быть безразмерными до использования в вычислениях.
Пересмотрите xc (k |k–1), когда uact (k –1) и uopt (k –1) будет отличаться.
Вычислите инновации.
Обновите оценку состояния контроллера, чтобы составлять последние измерения.
Затем программное обеспечение использует оценку текущего состояния xc (k |k), чтобы решить квадратичную программу в интервале k. Решением является uopt (k), рекомендуемое MPC управляемое значение переменных, которое будет использоваться между контрольными интервалами k и k +1.
Наконец, программное обеспечение готовится к следующему контрольному интервалу, принимающему, что неизвестные входные параметры, wid (k), wod (k) и wn (k) принимают свое среднее значение (нуль) между временами k и k +1. Программное обеспечение предсказывает удар известных входных параметров и инноваций можно следующим образом:
getindist
| getoutdist
| mpc
| mpcstate
| setEstimator
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.