При разработке прогнозирующего контроллера модели можно задать внутреннюю прогнозирующую модель объекта управления с помощью линейной идентифицированной модели. Вы используете программное обеспечение System Identification Toolbox™, чтобы оценить линейную модель объекта управления в одной из следующих форм:
Модель в пространстве состояний — idss
(System Identification Toolbox)
Модель передаточной функции — idtf
(System Identification Toolbox)
Полиномиальная модель — idpoly
(System Identification Toolbox)
Модель процесса — idproc
(System Identification Toolbox)
Модель серого ящика — idgrey
(System Identification Toolbox)
Можно оценить модель объекта управления программно в командной строке или в интерактивном режиме использовании приложения System Identification.
В этом примере показано, как идентифицировать модель объекта управления в командной строке. Для получения информации об идентификации моделей с помощью приложения System Identification смотрите, Идентифицируют Линейные Модели Используя Приложение System Identification (System Identification Toolbox).
Загрузите измеренные данные о вводе/выводе.
load plantIO
Эта команда импортирует входной сигнал объекта, u
, выходной сигнал объекта, y
, и шаг расчета, Ts
к рабочей области MATLAB®.
Создайте iddata
объект от входных и выходных данных.
mydata = iddata(y,u,Ts);
Можно опционально присвоить названия канала и модули для сигналов ввода и вывода.
mydata.InputName = 'Voltage'; mydata.InputUnit = 'V'; mydata.OutputName = 'Position'; mydata.OutputUnit = 'cm';
Как правило, необходимо предварительно обработать идентификационные данные о вводе-выводе прежде, чем оценить модель. В данном примере удалите смещения из сигналов ввода и вывода путем удаления тренда данных.
mydatad = detrend(mydata);
Можно также удалить смещения путем создания ssestOptions
объект и определение InputOffset
и OutputOffset
опции.
В данном примере оцените линейную модель в пространстве состояний второго порядка с помощью детрендированных данных. Чтобы оценить модель дискретного времени, задайте шаг расчета как Ts
.
ss1 = ssest(mydatad,2,'Ts',Ts)
ss1 = Discrete-time identified state-space model: x(t+Ts) = A x(t) + B u(t) + K e(t) y(t) = C x(t) + D u(t) + e(t) A = x1 x2 x1 0.8942 -0.1575 x2 0.1961 0.7616 B = Voltage x1 6.008e-05 x2 -0.01219 C = x1 x2 Position 38.24 -0.3835 D = Voltage Position 0 K = Position x1 0.03572 x2 0.0223 Sample time: 0.1 seconds Parameterization: FREE form (all coefficients in A, B, C free). Feedthrough: none Disturbance component: estimate Number of free coefficients: 10 Use "idssdata", "getpvec", "getcov" for parameters and their uncertainties. Status: Estimated using SSEST on time domain data "mydatad". Fit to estimation data: 89.85% (prediction focus) FPE: 0.0156, MSE: 0.01541
Можно использовать этот идентифицированный объект в качестве внутренней модели предсказания для контроллера MPC. Когда вы делаете так, контроллер преобразует идентифицированную модель в дискретное время, модель в пространстве состояний.
По умолчанию диспетчер MPC отбрасывает любые неизмеренные шумовые компоненты из вашей идентифицированной модели. Сконфигурировать шум образовывает канал как неизмеренные воздействия, необходимо сначала создать увеличенную модель в пространстве состояний из идентифицированной модели. Например:
ss2 = ss(ss1,'augmented')
ss2 = A = x1 x2 x1 0.8942 -0.1575 x2 0.1961 0.7616 B = Voltage v@Position x1 6.008e-05 0.004448 x2 -0.01219 0.002777 C = x1 x2 Position 38.24 -0.3835 D = Voltage v@Position Position 0 0.1245 Input groups: Name Channels Measured 1 Noise 2 Sample time: 0.1 seconds Discrete-time state-space model.
Эта команда создает модель в пространстве состояний, ss2
, с двумя входными группами, Measured
и Noise
, для измеренных и шумовых входных параметров соответственно. То, когда вы импортируете увеличенную модель в свой контроллер MPC, образовывает канал в Noise
входная группа задана как неизмеренные воздействия.
Можно использовать программное обеспечение System Identification Toolbox, чтобы оценить конечный переходной процесс или модели объекта управления конечной импульсной характеристики (FIR) с помощью результатов измерений. Такие модели, также известные как nonparametric models, легко определить из данных об объекте ([1] и [2]) и иметь интуитивное обращение.
Используйте impulseest
(System Identification Toolbox) функция, чтобы оценить модель FIR от результатов измерений. Эта функция генерирует КИХ-коэффициенты, инкапсулировавшие как idtf
Объект (System Identification Toolbox); то есть, модель передаточной функции только с коэффициентами числителя. impulseest
является особенно эффективным при ситуациях, где входной сигнал, используемый для идентификации, имеет низкие уровни возбуждения. Чтобы спроектировать прогнозирующий контроллер модели для этого объекта, можно преобразовать идентифицированную КИХ-модель объекта управления в числовую модель LTI. Однако это преобразование обычно дает к старшему объекту, который может ухудшить проектирование контроллера. Например, числовые проблемы точности со старшими объектами могут влиять на проект средства оценки. Этим результатом является особенно проблема для систем MIMO.
Прогнозирующие контроллеры модели работают лучше всего с параметрическими моделями младшего разряда. Поэтому, чтобы спроектировать прогнозирующий контроллер модели, использующий измеренные данные об объекте, вы можете:
Оцените параметрическую модель младшего разряда с помощью параметрического средства оценки, такой как ssest
(System Identification Toolbox).
Первоначально идентифицируйте непараметрическое использование модели impulseest
, и затем оцените параметрическую модель младшего разряда от ответа непараметрической модели. Для примера см. [3].
Первоначально идентифицируйте непараметрическое использование модели impulseest
, и затем преобразуйте модель FIR в использование модели в пространстве состояний idss
(System Identification Toolbox). Можно затем уменьшать порядок использования модели в пространстве состояний balred
. Этот подход похож на метод, используемый ssregest
(System Identification Toolbox).
[1] Ножовщик, К., и Ф. Йокум, "Опыт с инверсией DMC для идентификации", Химическое Управление процессом — IV CPC (И. Аркун и В. Х. Рэй, редакторы), КЭШ, 1991.
[2] Ricker, N. L. "Использование средств оценки наименьших квадратов смещения для параметров в моделях ответа импульса дискретного времени", Ind. Инженер Чем. Res., Издание 27, стр 343, 1988.
[3] Ван, L., П. Готроп, К. Кессари, Т. Подсиэдли и А. Джайлс, "Косвенный подход к непрерывной системе идентификации времени продовольственного экструдера", J. Управление процессом, Издание 14, Номер 6, стр 603–615, 2004.
iddata
(System Identification Toolbox) | detrend
(System Identification Toolbox) | ssest
(System Identification Toolbox)