RST Controller

Прогнозирующее управление с использованием полиномиального представления

  • Библиотека:
  • Simscape/Электрический/Управление/Общее управление

  • RST Controller block

Описание

Блок RST Controller реализует обобщенный прогнозирующий контроллер, используя опорный сигнал отслеживающее полиномиальное представление. Схема показывает эквивалентную схему для алгоритма управления.

Уравнения

Управляемая авторегрессионная интегрированная модель скользящего среднего значения (CARIMA) описывает объект:

A(z1)y(k)=zdB(z1)u(k1)+e(k)C(z1)D(z1)

A(z1)=1+a1z1++anAznA

B(z1)=b0+b1z1++bnBznB

C(z1)=1

D(z1)=1z1,

где:

  • d является системой с потерей времени.

  • y(k) - выход объекта управления.

  • u(k) - контроллер выход.

  • e(k) - белый шум с нулевым средним значением.

  • A (z-1) и B (z-1) являются полиномами системы.

  • nA и nB являются полиномами степеней.

  • C (z-1) и D (z-1) являются полиномами нарушения порядка для получения установившейся ошибки.

Модель предсказания задается как

y^(k+j|k)=Gjd(z1)D(z1)zd1u(k+j)+Hjd(z1)D(z1)C(z1)u(k1)+Fjd(z1)C(z1)y(k)

и

j=hi,hp¯

где:

  • hi - это минимальное предсказание.

  • hp - горизонт предсказания.

Будущая последовательность управления, вычисленная в момент k,

 u(k+j1|k),

где

 j=1,hc¯

а hc - горизонт управления.

Предсказанные значения выхода

 y^(k+j|k).

Чтобы определить полиномы системы, Fjd(z1), Gjd(z1), и Hjd(z1), блок использует два диофантовых уравнения. Первое диофантово уравнение

C(z1)A(z1)D(z1)=Ejd(z1)+zj+dFjd(z1)A(z1)D(z1),

где:

Ejd(z1)=1+1+e1z1++enEznE

Fjd(z1)=f0+f1z1++fnFznF

nE=jd1

nF=max(nA+nD1,nCj+d)

Второе диофантово уравнение

Ejd(z1)B(z1)=C(z1)Gjd(z1)+zj+dHjd(z1),

где:

Gjd(z1)=g0+g1z1++gnGznG

Hjd(z1)=h0+h1z1++hnHznH

nG=jd1

nH=max(nC,nB+d)1

Получившаяся модель предсказания

y^(k+j|k)=Gjd(z1)D(z1)zd1u(k+j)+y^0(k+j|k),

где

y^0(k+j|k)=Hjd(z1)D(z1)C(z1)u(k1)+Fjd(z1)C(z1)y(k)

представляет свободный ответ системы.

Используя матричное обозначение, модель предсказания может быть записана как

y^=Gud+y^0,

где:

y^=[y^(k+hi|k),y^(k+hi+1|k),,y^(k+hp|k)]T

G=[ghid1g000ghidg1g00ghc1g0ghpd1ghphc1]

ud=[D(z1)u(k),,D(z1)u(k+hc1)]T

y^0=[y^0(k+hi|k),y^0(k+hi+1|k),,y^0(k+hp|k)]T

Чтобы минимизировать ошибку отслеживания и контроллер выход, блок использует функцию затрат. Чтобы компромиссировать между минимизацией ошибки отслеживания и минимизацией контроллер выхода, блок использует весовой коэффициент

J=(Gud+y^0w)T(Gud+y^0w)+λudTud

для

D(z1)u(k+i)=0

и

i[hc,hpd1],

где w - ссылка траектории. Минимизация функции стоимости приводит к уравнению для оптимальной последовательности управления:

ud*=(GTG+λЯhc)GT[wy^0].

Как γj и j=hi,hp¯ являются элементами в первой строке матрицы (GTG+λЯhc)1GT, применение принципа отступающего горизонта приводит к уравнению алгоритма управления как

D(z1)u(k)=j=hihpγj[w(k+j|k)y^0(k+j|k)].

Замена с использованием y^0(k+j|k)=Hjd(z1)D(z1)C(z1)u(k1)+Fjd(z1)C(z1)y(k) приводит к такой форме уравнения алгоритма управления:

C(z1)D(z1)u(k)=j=hihpγjHjd(z1)D(z1)u(k1)j=hihpγjFjd(z1)y(k)+j=hihpγjC(z1)w(k+j).

Полиномиальная форма алгоритма управления следующая как

R(z1)u(k)+S(z1)y(k)=T(z1)w(k+hp),

где:

R(z1)=(C(z1)+j=hihpγjz1Hjd(z1)) D(z1),

S(z1)=j=hihpγjFjd(z1),

и

T(z1)=C(z1)j=hihpγjzhp+j.

Ограничения

Чтобы получить R, R и T полиномы, используйте дискретное время вместо передаточной функции в непрерывном времени.

Порты

Вход

расширить все

Опорный сигнал системы объекта.

Типы данных: single | double

Выходной сигнал системы объекта.

Типы данных: single | double

Выход

расширить все

Выходной сигнал системы управления.

Типы данных: single | double

Параметры

расширить все

Метод параметризации контроллера. Если вы знаете R, S и T полиномиальные значения в дискретном времени, выберите Controller polynomials. В противном случае выберите Generate polynomials.

Зависимости

Выбор метода параметризации включает другие параметры.

Вектор R полиномов для управления RST.

Зависимости

Выбор Controller polynomials для параметра Controller parameterization включает этот параметр.

Вектор S полиномов для управления RST.

Зависимости

Выбор Controller polynomials для параметра Controller parameterization включает этот параметр.

Вектор T полиномов для управления RST.

Зависимости

Выбор Controller polynomials для параметра Controller parameterization включает этот параметр.

Числитель дискретизированной передаточной функции системы. Чтобы определить дискретную передаточную функцию, если у вас есть лицензия для Control System Toolbox™, используйте c2d функция.

Зависимости

Выбор Generate polynomials для параметра Controller parameterization включает этот параметр.

Знаменатель дискретизированной передаточной функции системы. Чтобы определить дискретную передаточную функцию, если у вас есть лицензия для Control System Toolbox, используйте c2d функция.

Зависимости

Выбор Generate polynomials для параметра Controller parameterization включает этот параметр.

Количество выборок в контрольном горизонте.

Зависимости

Выбор Generate polynomials для параметра Controller parameterization включает этот параметр.

Весовой коэффициент для контроллера RST.

Зависимости

Выбор Generate polynomials для параметра Controller parameterization включает этот параметр.

Количество выборок мертвого времени.

Зависимости

Выбор Generate polynomials для параметра Controller parameterization включает этот параметр.

Временной интервал между выборками. Если блок находится внутри триггируемой подсистемы, наследуйте шаг расчета, установив для этого параметра значение -1. Если этот блок находится в непрерывной модели с шагом переменных, задайте шаг расчета явно. Для получения дополнительной информации смотрите Что такой Шаг расчета? и задайте шаг расчета.

Примеры моделей

Ссылки

[1] Camacho, E. F. and C. Bordons. Моделируйте прогнозирующее управление. Second Edition, London: Springer, 2007.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.
Введенный в R2017b