Estimate Process Model

Оцените модель процесса непрерывного времени для одно входа, одно выход (SISO) система или во время или в частотный диапазон в Live Editor

Описание

Оценочная задача Модели процесса позволяет вам в интерактивном режиме оценить и подтвердить модель процесса для систем SISO. Можно задать и варьироваться структура модели и задать дополнительные параметры, такие как начальные методы обработки условия и методы поиска. Задача автоматически генерирует MATLAB® код для вашего live скрипта. Для получения дополнительной информации о задачах Live Editor обычно, смотрите, Добавляют Интерактивные Задачи к Live Script.

Модели процессов являются простыми передаточными функциями непрерывного времени, которые описывают динамику линейной системы. Элементы модели процесса включают статическое усиление, постоянные времени, задержки, интегратор и нуль процесса.

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

Оценочная задача Модели процесса независима от более общего приложения System Identification. Используйте приложение System Identification, когда это необходимо, чтобы вычислить и сравнить оценки для структур многоуровневой модели.

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

Связанные функции

Код, который генерирует Оценочная Модель процесса, использует следующие функции.

Задача оценивает idproc модель процесса.

Estimate Process Model task in Live Editor

Откройте задачу

Добавить Оценочную задачу Модели процесса в live скрипт в редакторе MATLAB:

  • На вкладке Live Editor выберите Task > Estimate Process Model.

  • В блоке кода в вашем скрипте введите соответствующее ключевое слово, такое как process или estimate. Выберите Estimate Process Model от предложенных завершений команды.

Примеры

развернуть все

Используйте Оценочный Live Editor Модели процесса Тэска, чтобы оценить модель в пространстве состояний и сравнить выход модели с данными об измерении.

Откройте этот пример, чтобы видеть, что предварительно сконфигурированный скрипт содержит задачу.

Настройте данные

Загрузите данные об измерении iddata1 в ваше рабочее пространство MATLAB.

load iddata1 z1
z1
z1 =

Time domain data set with 300 samples.
Sample time: 0.1 seconds               
                                       
Outputs      Unit (if specified)       
   y1                                  
                                       
Inputs       Unit (if specified)       
   u1                                  
                                       

Импортируйте данные в задачу

В Избранном разделе данных, Типе данных набора к Data Object и Объект Оценки набора к z1.

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

Оцените модель Используя настройки по умолчанию

Исследуйте структуру модели и дополнительные параметры.

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

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

В Задавании дополнительного раздела параметров установлены опции по умолчанию для оценки процесса.

Выполните задачу от Запуска использования вкладки Live Editor. График отображает данные об оценке, предполагаемый выход модели и подходящий процент.

Экспериментируйте с установками параметров

Экспериментируйте с установками параметров и смотрите, как они влияют на подгонку.

Например, добавьте задержку с One Pole структура и запуск задача.

Подгонка оценки улучшается, несмотря на то, что подходящий процент все еще ниже 50%.

Попробуйте различную структуру модели. В Задают структуру модели, выбирают Underdamped Pair без задержки и запуска задача.

Результаты подгонки значительно улучшаются.

Сгенерируйте код

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

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

Откройте этот пример, чтобы видеть, что предварительно сконфигурированный скрипт содержит задачу.

Настройте данные

Загрузите данные об измерении iddata1 в ваше рабочее пространство MATLAB и исследуют его содержимое.

load iddata1 z1
z1
z1 =

Time domain data set with 300 samples.
Sample time: 0.1 seconds               
                                       
Outputs      Unit (if specified)       
   y1                                  
                                       
Inputs       Unit (if specified)       
   u1                                  
                                       

Извлеките измерения ввода и вывода.

u = z1.u;
y = z1.y;

Разделите данные в два набора с одной половиной для оценки и одной половиной для валидации. Исходный набор данных имеет 300 выборок, таким образом, каждый новый набор данных имеет 150 выборок.

u_est = u(1:150);
u_val = u(151:300);
y_est = y(1:150);
y_val = y(151:300);

Импортируйте данные в задачу

В Избранном разделе данных, Типе данных набора ко Времени. Установите шаг расчета на 0.1 секунды, который является шагом расчета в исходном iddata объект z1. Выберите соответствующие наборы данных для оценки и валидации.

Оцените и подтвердите модель

Оценочная Модель процесса в качестве примера с Live Editor Тэском достигает лучших результатов с помощью структуры модели Underdamped Pair. Выберите ту же опцию для этого примера.

Выполните задачу от Запуска использования вкладки Live Editor. Выполнение задачи создает два plots.The, которые первый график показывает результатам оценки, и второй график показывает результаты валидации.

Подгонка к данным об оценке несколько хуже, чем в Оценочной Модели процесса с Live Editor Тэском. Оценка текущий пример имеет только половину данных, с которыми можно оценить модель. Подгонка к данным о валидации, которые представляют совершенство модели в более общем плане, лучше, чем подгонка к данным об оценке.

Параметры

Выберите Data

Задача принимает одноканальные числовые значения измерения, которые однородно производятся вовремя. Данные могут быть упакованы как числовые массивы (Time или Frequency введите), или в объекте данных, такой как iddata или idfrd объект.

Тип данных, который вы выбираете, определяет дополнительные параметры, которые необходимо задать.

  • Time — Задайте Sample Time и Start Time в единицах измерения времени, которые вы выбираете.

  • Frequency — Задайте Frequency путем выбора имени переменной вектора частоты в рабочем пространстве MATLAB. Задайте модули для этого вектора частоты. Задайте Sample Time в секундах.

  • Data Object — Не задайте дополнительные параметры, потому что объект данных уже содержит информацию вовремя или выборку частоты.

Выберите имена переменных ввода и вывода из выбора рабочего пространства MATLAB. Используйте эти параметры, когда Data Type будет Time или Frequency.

Выберите имя переменной объекта данных из выбора рабочего пространства MATLAB. Используйте этот параметр, когда Data Type будет Data Object.

Выберите имена переменных ввода и вывода или имя объекта данных, от выбора рабочей области. Используйте эти параметры, когда Data Type будет Time или Frequency. Определение данных о валидации является дополнительным, но рекомендовано.

Выберите имя переменной объекта данных из выбора рабочего пространства MATLAB. Используйте этот параметр, когда Data Type будет Data Object. Определение данных о валидации является дополнительным, но рекомендовано.

Задайте структуру модели

Задача позволяет вам задавать одну из четырех базовых структур. Эти структуры лежат в диапазоне от простого процесса первого порядка до более динамического второго порядка или процесса третьего порядка с сопряженным комплексным числом (underdamped) полюса.

  • One Pole

  • Two Real Poles

  • Underdamped Pair

  • Underdamped Pair + Real Pole

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

Включайте нуль процесса в числитель.

Включайте интегратор, представленный дополнительным 1/термином s. Включая интегратор создает автономный процесс.

Задайте инициализацию оценки

Задайте начальные значения для оценки и должны ли эти значения быть зафиксированы или оценены. Значения, чтобы задать зависят от структуры модели и ваших технических требований для Delay и Zero. Ниже Specify model structure задача отображает уравнение, которое представляет заданную систему. Это уравнение содержит все параметры, которые могут быть оценены, и что можно инициализировать или зафиксировать. Возможные параметры:

  • Kp — Статическое усиление

  • Tp1 — Постоянная времени для первого действительного полюса

  • Tp2 — Постоянная времени для второго действительного полюса

  • — Постоянная времени для комплексных полюсов, равняйтесь инверсии собственной частоты

  • ζ — Коэффициент демпфирования для комплексных полюсов

  • Td — Транспортная задержка

  • Tz Постоянная времени для нуля процесса

Все основанные на времени параметры находятся в единицах измерения времени, которые вы выбираете для Sample Time.

Задайте дополнительные параметры

Подходящее особое внимание задает что ошибку минимизировать в функции потерь во время оценки.

  • Prediction — Минимизируйте ошибку предсказания "один шаг вперед" между измеренными и предсказанными выходными параметрами. Этот подход оценки фокусируется на создании хорошей модели предиктора для вводов и выводов оценки. Особое внимание предсказания обычно приводит к лучшим результатам оценки, потому что оно использует оба измерения ввода и вывода, таким образом составляя воздействия.

  • Simulation — Минимизируйте ошибку между измеренным и симуляцией выходные параметры. Этот подход оценки фокусируется на создании симулированного ответа модели, который имеет подходящий вариант для вводов и выводов оценки. Особое внимание симуляции является обычно лучшим для валидации, особенно с наборами данных, не используемыми для исходной оценки.

Установите эту опцию, когда это необходимо, выбирать определенный метод для инициализации модели. С настройкой по умолчанию Auto, программное обеспечение выбирает метод на основе данных об оценке. Выбор:

  • Zero — Начальное состояние обнуляется.

  • Estimate — Начальное состояние обработано как независимый параметр оценки.

  • Backcast — Начальное состояние оценивается с помощью лучшего метода наименьших квадратов.

Входная межвыборка является свойством входных данных. Задача использует это свойство при оценке моделей процессов. Задайте Input Intersampling, когда вашим типом данных будет Time или Frequency. Если вы используете iddata объект, объект уже содержит информацию о межвыборке. Выбор для этого свойства:

  • Zero-order hold — Кусочно-постоянный входной сигнал между выборками

  • Triangle approximation — Кусочно-линейный входной сигнал между выборками, также известными как хранение первого порядка

  • Band-limited — Входной сигнал имеет нулевую силу выше частоты Найквиста

  • Auto — Для каждой итерации программное обеспечение циклически повторяется через методы, пока это не находит первый спуск направления, который приводит к сокращению стоимости оценки.

  • Gauss-Newton — Поиск наименьших квадратов Ньютона Гаусса подпространства.

  • Levenberg-Marquardt — Поиск наименьших квадратов Levenberg-Marquardt.

  • Adaptive Gauss-Newton — Адаптивный поиск Ньютона Гаусса подпространства.

  • Gradient Search — Поиск наименьших квадратов наискорейшего спуска.

Определите максимальный номер итераций во время ошибочной минимизации. Итерации останавливаются, когда Max. Iterations достигнут, или другому критерию остановки удовлетворяют, такие как Tolerance.

Когда процент ожидаемого улучшения меньше Tolerance, остановки итераций.

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

Взвешивание предварительного фильтраОбласть данныхОтфильтруйте информацию
No FilterВремя и частота 
PassbandsВремя и частотаПолоса пропускания располагается в виде вектора 1 на 2 строки или n-by-2 матрица, где n является количеством полос пропускания
LTI FilterВремя и частотаМодель SISO LTI
Frequency Weights VectorЧастотаВеса частоты в виде вектор-столбца с той же длиной как вектор частоты

Например, предположите, что вы выполняете оценку с данными частотной области SISO и что в вашем рабочем пространстве MATLAB, у вас есть вектор-столбец W это содержит веса частоты для предварительного фильтра. В задаче выберите Weighting prefilter > Frequency weights vector и переменную W.

Визуализация результатов

Постройте сравнение выхода модели и исходных результатов измерений, наряду с подходящим процентом. Если у вас есть отдельные данные о валидации, второй график сравнивает ответ модели на входные данные валидации с измеренным выходом от набора данных валидации.

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

| | | | | | (Control System Toolbox)

Введенный в R2019b