Оценка состояния контроллера

Переменные состояния контроллера

Когда контроллер действует, это использует свое текущее состояние, xc, как основание для прогнозов. По определению вектор состояния следующий:

xcT(k)=[xpT(k)xidT(k)xodT(k)xnT(k)].

Здесь,

  • xc является состоянием контроллера, включая nxp + nxid + nxod + переменные состояния nxn.

  • xp является вектором состояния модели объекта управления длины nxp.

  • xid является входным вектором состояния возмущения длины nxid.

  • xod является выходным вектором состояния возмущения длины nxod.

  • xn является шумом измерения вектор состояния модели длины nxn.

Таким образом переменные, включающие xc, представляют модели, появляющиеся в следующей схеме системы MPC.

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

По умолчанию контроллер обновляет его состояние автоматически с помощью последних измерений объекта. Смотрите Оценку состояния для деталей. В качестве альтернативы пользовательская функция оценки состояния позволяет вам обновлять состояние контроллера использование внешней процедуры, и затем предоставлять эти значения контроллеру. Смотрите Пользовательскую Оценку состояния для деталей.

Наблюдатель состояния

Комбинация моделей, показанных в схеме, дает к наблюдателю состояния:

xc(k+1)=Axc(k)+Buo(k)y(k)=Cxc(k)+Duo(k).

Диспетчер MPC использует наблюдателя состояния следующими способами:

  • Оценить значения неизмеренных состояний, необходимых как основание для прогнозов (см. Оценку состояния).

  • Предсказать, как предложенные корректировки переменной, которой управляют, (MV) диспетчера будут влиять на будущие выходные значения объекта (см. Прогноз Выходной переменной).

Входные сигналы наблюдателя являются безразмерным объектом которыми управляют и измеренные входные параметры воздействия, и белые шумовые входные параметры к воздействию и шумовые модели:

uoT(k)=[uT(k)vT(k)widT(k)wodT(k)wnT(k)].

Выходными параметрами наблюдателя является ny безразмерный объект выходные параметры.

В терминах параметров, задающих эти четыре модели, показанные в схеме, параметры наблюдателя:

A=[ApBpdCid000Aid0000Aod0000An],B=[BpuBpvBpdDid0000Bid00000Bod00000Bn]C=[CpDpdCidCod[Cn0]],D=[0DpvDpdDidDod[Dn0]].,

Здесь, объект и выходные возмущения повторно упорядочиваются так, чтобы измеренные выходные параметры предшествовали неизмеренным выходным параметрам.

Оценка состояния

В общем случае состояния контроллера не измерены и должны быть оценены. По умолчанию диспетчер использует установившийся Фильтр Калмана, который выводит от наблюдателя состояния.

В начале k th интервал управления, состояние контроллера оценивается со следующими шагами:

  1. Получите следующие данные:

    • 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 — Матрицы усиления Константа Кальмана

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

  2. Пересмотрите xc (k |k–1), когда uact (k –1) и uopt (k –1) будет отличаться.

    xcrev(k|k1)=xc(k|k1)+Bu[uact(k1)uopt(k1)]

  3. Вычислите инновации.

    e(k)=ym(k)[Cmxcrev(k|k1)+Dmvv(k)]

  4. Обновите оценку состояния контроллера, чтобы составлять последние измерения.

    xc(k|k)=xcrev(k|k1)+Me(k)

    Затем программное обеспечение использует оценку текущего состояния xc (k |k), чтобы решить квадратичную программу в интервале k. Решением является uopt (k), рекомендуемое MPC управляемое значение переменных, которое будет использоваться между интервалами управления k и k +1.

    Наконец, программное обеспечение готовится к следующему интервалу управления, принимающему, что неизвестные входные параметры, wid (k), wod (k) и wn (k) принимают свое среднее значение (нуль) между временами k и k +1. Программное обеспечение предсказывает удар известных входных параметров и инноваций можно следующим образом:

    xc(k+1|k)=Axcrev(k|k1)+Buuopt(k)+Bvv(k)+Le(k)

Встроенный установившийся Кальман получает вычисление

Программное обеспечение Model Predictive Control Toolbox™ использует kalman команда, чтобы вычислить Оценку состояния фильтра Калмана получает L и M. Следующие предположения применяются:

  • Параметры наблюдателя состояния A, B, C, D независим от времени.

  • Диспетчер утверждает, xc, обнаруживаемы. (В противном случае или если наблюдатель численно близко к необнаружительной способности, сбоям вычисления усиления Кальмана, генерируя сообщение об ошибке.)

  • Стохастические входные параметры wid (k), wod (k) и wn (k) являются независимым белым шумом, каждым с нулевым средним значением и единичной ковариацией.

  • Дополнительный белый шумовой wu (k) и wv (k) с теми же характеристиками добавляет к безразмерному u (k) и v (k) входные параметры соответственно. Это улучшает производительность средства оценки в определенных случаях, такой как тогда, когда модель объекта управления является нестабильным разомкнутым циклом.

Без потери общности, устанавливает u (k), и v (k) вводит, чтобы обнулить. Эффект стохастических входных параметров на состояниях контроллера и измеренном объекте выходные параметры:

xc(k+1)=Axc(k)+Bw(k)ym(k)=Cmxc(k)+Dmw(k).

Здесь,

wT(k)=[wuT(k)wvT(k)widT(k)wodT(k)wnT(k)].

Входные параметры к kalman команда является параметрами наблюдателя состояния A, Cm и следующие ковариационные матрицы:

Q=E{BwwTBT}=BBTR=E{DmwwTDmT}=DmDmTN= E{BwwTDmT}=BDmT.

Здесь, E {...} Обозначает ожидание.

Прогноз выходной переменной

Прогнозирующее Управление модели требует прогноза бесшумного будущего объекта выходные параметры, используемые в оптимизации. Это - ключевое приложение наблюдателя состояния (см. Наблюдателя состояния).

В интервале управления k необходимые данные следующие:

  • p Горизонт прогноза (количество интервалов управления, которое больше или равно 1),

  • xc (k |k) — оценки состояния Контроллера (см. Оценку состояния),

  • v (k) — Текущее измеренное воздействие вводит (MDS)

  • v (k +i|k) — Спроектированный будущий MDS, где i =1:p–1. Если вы не используете предварительный просмотр MD, то v (k +i|k) = v (k).

  • A, Bu, Bv, C, Dv — Константы наблюдателя состояния, где Bu, Bv и Dv обозначают столбцы B и соответствия матриц D входным параметрам u и v. Du является нулевой матрицей ни из-за какого прямого сквозного соединения

Прогнозы принимают, что неизвестные белые шумовые входные параметры являются нулем (их ожидание). Кроме того, предсказанный объект выходные параметры должен быть бесшумным. Таким образом все условия, включающие состояния шума измерения, исчезают из уравнений наблюдателя состояния. Это эквивалентно обнулению последних элементов nxn xc (k |k).

Данный вышеупомянутые данные и упрощения, для первого шага наблюдатель состояния предсказывает:

xc(k+1 |k)=Axc(k|k)+Buu(k|k)+Bvv(k).

Продолжая для последовательных шагов, i = 2:p, наблюдатель состояния предсказывает:

xc(k+i|k)=Axc(k+i1 |k)+Buu(k+i1 |k)+Bvv(k+i1 |k).

На любом шаге, i = 1:p, предсказанный бесшумный объект выходные параметры:

y(k+i|k)=Cxc(k+i|k)+Dvv(k+i|k).

Все эти уравнения используют безразмерные переменные ввода и вывода объекта. Смотрите Задают Масштабные коэффициенты. Уравнения также принимают нулевые смещения. Включение ненулевых смещений является прямым.

Для более быстрых расчетов диспетчер MPC использует альтернативную форму вышеупомянутых уравнений, в которых постоянные условия вычисляются и хранятся во время инициализации контроллера. См. Матрицы QP.

Смотрите также

Похожие темы