Оцените модель процесса в непрерывном времени для системы с одним входом, одним выходом (SISO) в временном или частотном диапазоне в Live Editor
Чтобы добавить задачу Estimate Process Model к live скрипту в редакторе MATLAB:
На вкладке Live Editor выберите Task > Estimate Process Model.
В код блоке вашего скрипта введите соответствующее ключевое слово, например process
или estimate
. Выберите Estimate Process Model
от предлагаемых команд заканчиваний.
Data Type
- Тип данных для входных и выходных данныхTime
(по умолчанию) | Frequency
| Data Object
Задача принимает одноканальные числовые значения измерения, которые равномерно дискретизированы по времени. Данные могут быть упакованы как числовые массивы (Time
или Frequency
type) или в объекте данных, таком как iddata
или idfrd
объект.
Выбранный тип данных определяет дополнительные параметры, которые необходимо задать.
Time
- Задайте Sample Time и Start Time в выбранных временных модулях.
Frequency
- Задайте Frequency, выбрав имя переменной вектора частоты в рабочем пространстве MATLAB. Задайте модули для этого вектора частоты. Задайте Sample Time в секундах.
Data Object
- Не задайте дополнительных параметров, потому что объект данных уже содержит информацию о временной или частотной выборке.
Estimation Input and Estimation Output
- Имена переменных входных и выходных данных для оценкиВыберите имена входных и выходных переменных из выбора рабочего пространства MATLAB. Используйте эти параметры, когда Data Type Time
или Frequency
.
Estimation Object
- Имя переменной объекта данных, содержащего входные и выходные данные, которые будут использоваться для оценкиВыберите имя переменной объекта данных из выбора рабочего пространства MATLAB. Используйте этот параметр, когда Data Type Data Object
.
Validation Input (u) and Validation Output (y)
- Имена переменных входных и выходных данных, которые будут использоваться для валидации Выберите имена входных и выходных переменных или имя объекта данных из вариантов рабочей области. Используйте эти параметры, когда Data Type Time
или Frequency
. Указание данных валидации необязательно, но рекомендуется.
Validation Object
- Имя переменной объекта данных, содержащего входные и выходные данные для валидацииВыберите имя переменной объекта данных из выбора рабочего пространства MATLAB. Используйте этот параметр, когда Data Type Data Object
. Указание данных валидации необязательно, но рекомендуется.
Structure
- Нули и полюса в моделиOne Pole
(по умолчанию) | Two Real Poles
| Underdamped Pair
| Underdamped Pair + Real Pole
Задача позволяет вам задать одну из четырех основных структур. Эти структуры варьируются от простого процесса первого порядка до более динамического процесса второго или третьего порядка со сложными сопряженными (недостаточно демпфированными) полюсами.
One Pole
Two Real Poles
Underdamped Pair
Underdamped Pair + Real Pole
Delay
- Включите задержку транспортировкиВключите транспортную задержку или задержку ввода-вывода одной выборки. Задержка транспортировки также известна как мертвое время.
Zero
- Включите нулевой процессВключите нуль процесса в числитель.
Integrator
- Включить интегратораВключите интегратора, представленного дополнительным термином 1/ s. Включение интегратора создает саморегулируемый процесс.
Initial Values
- Начальные значения параметров структурыЗадайте начальные значения для оценки и должны ли эти значения быть фиксированными или оцененными. Значения, которые нужно задать, зависят от структуры модели и ваших спецификаций для Delay и Zero. Ниже Specify model structure в задаче отображается уравнение, которое представляет указанную систему. Это уравнение содержит все параметры, которые можно оценить, и которые можно инициализировать или исправить. Возможными параметрами являются:
Kp - Статический коэффициент усиления
Tp1 - константа времени для первого реального полюса
Tp2 - константа времени для второго реального полюса
Tω - постоянная времени для комплексных полюсов, равная обратной собственной частоте
ζ - Коэффициент демпфирования для комплексных полюсов
Td - Задержка транспортировки
Tz - константа времени для процесса нуля
Все основанные на времени параметры указаны в модулях времени, выбранных для Sample Time.
Fit Focus
- Минимизируйте ошибку предсказания или ошибку симуляцииPrediction
(по умолчанию) | Simulation
Fit особого внимания задает, какую ошибку минимизировать в функции потерь во время оценки.
Prediction
- Минимизируйте одноэтапную ошибку прогноза между измеренным и предсказанным выходами. Этот подход оценки фокусируется на создании хорошей модели предиктора для входов и выходов оценки. Предсказание особого внимания обычно дает лучшие результаты оценки, потому что использует как вход, так и выход измерения, таким образом, учитывая нарушения порядка.
Simulation
- Минимизируйте ошибку между измеренными и симуляционными выходами. Этот подход оценки фокусируется на создании моделируемой характеристики модели, которая хорошо соответствует входным и выходным входам оценки. Особое внимание симуляции, как правило, лучше всего подходит для валидации, особенно с наборами данных, не используемыми для исходной оценки.
Initial Conditions
- Обработка начальных условийAuto
(по умолчанию) | Zero
| Estimate
| Backcast
Установите эту опцию, когда вы хотите выбрать определенный метод для инициализации модели. С настройкой по умолчанию Auto
программное обеспечение выбирает способ на основе данных оценки. Варианты:
Zero
- Начальное состояние устанавливается в нуль.
Estimate
- Начальное состояние рассматривается как независимый параметр оценки.
Backcast
- начальное состояние оценивается с использованием наилучшей аппроксимации методом наименьших квадратов.
Input Intersampling
- Поведение взаимной дискретизации для входного сигналаZero-order hold
(по умолчанию) | Triangle approximation
| Band-limited
Входная взаимная дискретизация является свойством входных данных. Задача использует это свойство при оценке моделей процесса. Задайте Input Intersampling, когда ваш тип данных Time
или Frequency
. Если вы используете iddata
объект уже содержит информацию о взаимной дискретизации. Варианты для этого свойства:
Zero-order hold
- Кусочно-постоянный входной сигнал между выборками
Triangle approximation
- кусочно-линейный входной сигнал между выборками, также известный как удержание первого порядка
Band-limited
- Входной сигнал имеет нулевую степень выше частоты Найквиста
Search Method
- Численный режим поиска для итерационной оценки параметраAuto
(по умолчанию) | Gauss-Newton
| Adaptive Gauss-Newton
| Levenberg-Marquardt
| Gradient Search
Auto
- Для каждой итерации программное обеспечение циклически переходит через методы, пока не найдет первое снижение направления, которое приводит к снижению стоимости оценки.
Gauss-Newton
- Подпространство Гаусса-Ньютона поиск методом наименьших квадратов.
Levenberg-Marquardt
- поиск методом наименьших квадратов Левенберга-Марквардта.
Adaptive Gauss-Newton
- Адаптивный подпространство Gauss-Newton search.
Gradient Search
- Наискорейший спуск методом наименьших квадратов.
Max. Iterations
- Максимальное количество итераций во время минимизации ошибокУстановите максимальное количество итераций во время минимизации ошибок. Итерации останавливаются, когда достигается Max. Iterations или удовлетворяется другой критерий остановки, такой как Tolerance.
Tolerance
- Минимальный процент ожидаемого улучшения по ошибкеКогда процент ожидаемого улучшения меньше Tolerance, итерации прекращаются.
Weighting Prefilter
- Предварительный фильтр взвешивания для функции потерьNo filter
(по умолчанию) | Passband(s)
| LTI Filter
| Frequency weights vector
Установите эту опцию, когда вы хотите применить предварительный фильтр взвешивания к функции потерь, которую задача минимизирует, когда вы оцениваете модель. При выборе опции необходимо также выбрать связанную переменную в рабочей рабочей области, содержащую информацию о фильтре. Доступные опции зависят от области данных.
Предварительный фильтр взвешивания | Область данных | Информация о фильтре |
---|---|---|
No Filter | Время и частота | |
Passbands | Время и частота | Области значений полосы пропускания, заданные как вектор-строка 1 на 2 или матрица n -2, где n - количество полос пропускания |
LTI Filter | Время и частота | SISO LTI модель |
Frequency Weights Vector | Частота | Веса частот, заданные как вектор-столбец с той же длиной, что и вектор |
Для образца предположим, что вы выполняете оценку с данными частотными диапазонами SISO и что в вашем рабочем пространстве MATLAB у вас есть вектор-столбец W
который содержит веса частот для предварительного фильтра. В задаче выберите Weighting prefilter > Frequency weights vector и переменную W
.
Output Plot
- Сравнение модели и измеренных выходов на графикеПостройте сравнение выходов модели и исходных измеренных данных вместе с процентом подгонки. Если у вас есть отдельные данные валидации, второй график сравнивает ответ модели с входными данными валидации с измеренным выходом из набора данных валидации.
compare
| iddata
| idfrd
| idproc
| procest
| procestOptions
| frd
(Control System Toolbox)