Online estimation алгоритмы оценивают параметры и состояния модели, когда новые данные доступны во время работы физической системы. Программное обеспечение System Identification Toolbox™ использует линейный, расширенный, и сигма-точечный фильтр Калмана или алгоритмы фильтра частиц для онлайн-оценки состояния. Тулбокс использует алгоритмы минимизации ошибок рекурсивного предсказания для онлайн-оценки параметра.
Рассмотрите систему нагрева и охлаждения, которая не имеет предварительной информации об окружении, в которой она работает. Предположим, что эта система должна нагревать или охлаждать помещение, чтобы достичь определенной температуры в заданное количество времени. Для выполнения своей задачи система должна получить знания о температурных и изоляционных характеристиках помещения. Можно оценить характеристики изоляции помещения, пока система online (работоспособна). Для этой оценки используйте усилие системы как вход и комнатную температуру как выход. Можно использовать предполагаемую модель для улучшения поведения системы. Оперативная оценка идеальна для оценки малых отклонений в значениях параметров системы в известной рабочей точке.
Общие приложения онлайн-оценки включают:
Адаптивное управление - оцените модель объекта управления, чтобы изменить контроллер на основе изменений в модели объекта.
Обнаружение отказа - Сравните онлайновую модель объекта управления с идеализированной или эталонной моделью объекта управления для обнаружения отказа (аномалии) на объекте.
Мягкое измерение - Сгенерируйте «измерение» на основе предполагаемой модели объекта управления и используйте это измерение для управления с обратной связью или обнаружения отказа.
Верификация качества данных эксперимента перед началом оффлайн-оценки - перед использованием измеренных данных для оффлайн-оценки выполните онлайн-оценку для нескольких итераций. Оперативная оценка обеспечивает быструю проверку того, использовал ли эксперимент сигналы возбуждения, которые захватили соответствующую динамику системы.
Оперативная оценка параметра обычно выполняется с помощью рекурсивного алгоритма. Чтобы оценить значения параметров за временной шаг, рекурсивные алгоритмы используют текущие измерения и предыдущие оценки параметров. Поэтому рекурсивные алгоритмы эффективны с точки зрения использования памяти. Кроме того, рекурсивные алгоритмы имеют меньшие вычислительные требования. Эта эффективность делает их подходящими для онлайновых и встраиваемых приложений. Для получения дополнительной информации об алгоритмах см. «Рекурсивные алгоритмы для оценки Параметра в режиме онлайн».
В System Identification Toolbox можно выполнить онлайн оценку параметра в Simulink® или в командной строке:
В Simulink используйте блоки Recursive Least Squares Estimator и Recursive Polynomial Model Estimator для онлайн-оценки параметра. Можно также оценить модель пространства состояний онлайн из этих моделей, используя блоки Recursive Polynomial Model Estimator и Model Type Converter вместе. Вы можете сгенерировать код C/C + + и Структурированный текст для этих блоков с помощью программного обеспечения Simulink Coder™ и Simulink PLC Coder™.
В командной строке используйте recursiveAR
, recursiveARMA
, recursiveARX
, recursiveARMAX
, recursiveOE
, recursiveBJ
, и recursiveLS
команды для оценки параметров модели для структуры модели. В отличие от оценки в Simulink, можно изменить свойства алгоритма рекурсивной оценки во время онлайн-оценки. Вы можете сгенерировать код и автономные приложения с помощью MATLAB® Программное обеспечение Coder и MATLAB Compiler™.
При выполнении онлайн-оценки параметра в Simulink или в командной строке применяются следующие требования:
Модель должна быть линейной или почти линейной в дискретном времени с параметрами, которые изменяются медленно со временем.
Структура предполагаемой модели должна быть фиксирована во время оценки.
iddata
объект не поддерживается во время оценки оперативного параметра. Задайте выходные данные оценки как действительный скаляр и входные данные как действительный скаляр или вектор.
Выполнить онлайн-оценку состояния систем можно в командной строке и в Simulink:
В Simulink используйте блоки Kalman Filter, Extended Kalman Filter, Unscented Kalman Filter или Particle Filter для онлайн-оценки состояния линейных и нелинейных систем в дискретном времени. Вы можете сгенерировать код C/C + + для этих блоков с помощью программного обеспечения Simulink Coder. Для блока Kalman Filter можно также сгенерировать структурированный текст с помощью программного обеспечения Simulink PLC Coder.
В командной строке используйте extendedKalmanFilter
, unscentedKalmanFilter
и particleFilter
команды для оценки состояний нелинейных систем дискретного времени. Эти команды реализуют в дискретном времени расширенный фильтр Калмана (EKF), сигма-точечный фильтр Калмана (UKF) и алгоритмы фильтра частиц. Для получения дополнительной информации об алгоритмах см. «Расширенные и нескомпонованные алгоритмы фильтра Калмана для оценки состояния в режиме онлайн». Вы можете сгенерировать код и автономные приложения с помощью MATLAB Coder и MATLAB Compiler программного обеспечения.
При выполнении оценки состояния в режиме онлайн в Simulink или в командной строке применяются следующие требования:
Система должна быть дискретной. Если вы используете блок Kalman Filter, система также может быть непрерывной.
iddata
объект не поддерживается во время оценки состояния в режиме онлайн. Задайте входно-выходные данные оценки как действительные скаляры или векторы.
[1] Ljung, L. System Identification: Теория для пользователя. Upper Saddle River, NJ: Prentice-Hall PTR, 1999, pp. 428-440.
[2] Simon, D. Optimal State Estimation: Kalman, H Infinity и нелинейные подходы. John Wiley and Sons Inc., 2006.
extendedKalmanFilter
| particleFilter
| recursiveAR
| recursiveARMA
| recursiveARMAX
| recursiveARX
| recursiveBJ
| recursiveLS
| recursiveOE
| unscentedKalmanFilter