Непрерывная модель с идентифицируемыми параметрами
sys = idproc(type)
sys = idproc(type,Name,Value)
создает модель процесса непрерывного времени идентифицируемыми параметрами. sys
= idproc(type
)type
задает аспекты структур модели, таких как количество полюсов в модели, включает ли модель интегратор, и включает ли модель задержку.
создает модель процесса с дополнительными атрибутами, заданными одним или несколькими sys
= idproc(type
,Name,Value
)Name,Value
парные аргументы.
idproc
модель представляет систему как модель процесса непрерывного времени с идентифицируемыми (допускающими оценку) коэффициентами.
Простая модель процесса SISO имеет усиление, постоянную времени и задержку:
Kp является пропорциональной составляющей. Tp 1 является постоянной времени действительного полюса, и Td является транспортной задержкой (потеря времени).
В более общем плане, idproc
может представлять модели процессов максимум тремя полюсами и нулем:
Два из полюсов могут быть сопряженным комплексным числом (underdamped) пара. В этом случае общая форма модели процесса:
Tω является постоянной времени комплексной пары полюсов, и ζ является связанным постоянным затуханием.
Кроме того, любой idproc
модель может иметь интегратор. Например, следующее является моделью процесса, которую можно представлять idproc
:
Эта модель не имеет никакого нуля (Tz = 0). Модель имеет комплексную пару полюсов. Модель также имеет интегратор, представленный термином 1/s.
Для idproc
модели, все время константы, задержка, пропорциональная составляющая и коэффициент демпфирования могут быть допускающими оценку параметрами. idproc
модель хранит значения этих параметров в свойствах модели, таких как Kp
, Tp1
, и Zeta
. (См. Свойства для получения дополнительной информации.)
Модель процесса MIMO содержит модель процесса SISO, соответствующую каждой паре ввода - вывода в системе. Для idproc
модели, форма каждой пары ввода - вывода может быть независимо задана. Например, 2D вход, процесс с одним выходом может иметь один канал с двумя полюсами и никаким нулем, и другой канал с нулем, полюсом и интегратором. Все коэффициенты являются независимо допускающими оценку параметрами.
Существует два способа получить idproc
модель:
Оцените idproc
основанный на модели на измерениях выхода или ввода - вывода системы, с помощью procest
команда. procest
оценивает значения свободных параметров, таких как усиление, постоянные времени и задержка. Ориентировочные стоимости хранятся как свойства получившегося idproc
модель. Например, свойства sys.Tz
и sys.Kp
из idproc
модель sys
сохраните нулевую постоянную времени и пропорциональную составляющую, соответственно. (См. Свойства для получения дополнительной информации.) Report
свойство получившейся модели хранит информацию об оценке, такой как обработка начальных условий и опций, используемых по оценке.
Когда вы получаете idproc
модель по оценке, можно извлечь оцененные коэффициенты и их неопределенность из модели с помощью команд такой как getpar
и getcov
.
Создайте idproc
модель с помощью idproc
команда.
Можно создать idproc
модель, чтобы сконфигурировать начальную параметризацию для оценки модели процесса. Когда вы делаете так, можно задать ограничения на параметры. Например, можно зафиксировать значения некоторых коэффициентов или задать минимальные или максимальные значения для свободных коэффициентов. Можно затем использовать сконфигурированную модель в качестве входного параметра к procest
оценить значения параметров с теми ограничениями.
|
Структура модели в виде вектора символов или массива ячеек из символьных векторов. Для моделей SISO,
Каждый
Значения всех параметров в конкретной структуре модели инициализируются к Для модели процесса MIMO с |
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
Используйте Name,Value
аргументы, чтобы задать начальные значения параметра и дополнительные свойства idproc
модели во время создания модели. Например, sys = idproc('p2z','InputName','Voltage','Kp',10,'Tz',0);
создает idproc
модель с InputName
набор свойств к Voltage
. Команда также инициализирует параметр Kp
к значению 10, и Tz
к 0.
idproc
свойства объектов включают:
|
Структура модели в виде вектора символов или массива ячеек из символьных векторов. Для модели SISO Для модели MIMO с Векторы символов составлены из одного или нескольких следующих символов, которые задают аспекты структуры модели:
Если вы создаете Если вы получаете В общем случае вы не можете изменить тип существующей модели. Однако можно измениться, содержит ли модель интегратор с помощью свойства | ||||||||||||
|
Значения параметров модели процесса. Если вы создаете Для модели MIMO с Для Значение по умолчанию: Для каждого значения параметров, | ||||||||||||
|
Логическое значение или матрица, обозначающая присутствие или отсутствие интегратора в передаточной функции модели процесса. Для модели SISO Для модели MIMO, Когда вы создаете модель процесса с помощью | ||||||||||||
|
Коэффициенты шумовой передаточной функции.
Как правило, шумовая передаточная функция автоматически вычисляется функцией оценки NoiseNum = {[1 2.2]; [1 0.54]}; NoiseDen = {[1 1.3]; [1 2]}; NoiseTF = struct('num', {NoiseNum}, 'den', {NoiseDen}); sys = idproc({'p2'; 'p1di'}); % 2-output, 1-input process model sys.NoiseTF = NoiseTF; Каждый вектор в Значение по умолчанию: | ||||||||||||
|
Информация о допускающих оценку параметрах
Каждая из этих записей параметра в
Для модели MIMO с | ||||||||||||
|
Отклонение (ковариационная матрица) инноваций модели e. Идентифицированная модель включает белый, Гауссов шумовой e компонента (t). Для моделей SISO, | ||||||||||||
|
Сводный отчет, который содержит информацию об опциях оценки и результатах, когда модель процесса получена с помощью
Содержимое m = idproc('P2DU');
m.Report.OptionsUsed ans = [] Если вы получаете модель процесса с помощью команд оценки, полей load iddata2 z2; m = procest(z2,'P2DU'); m.Report.OptionsUsed DisturbanceModel: 'estimate' InitialCondition: 'auto' Focus: 'prediction' EstimateCovariance: 1 Display: 'off' InputOffset: [1x1 param.Continuous] OutputOffset: [] Regularization: [1x1 struct] SearchMethod: 'auto' SearchOptions: [1x1 idoptions.search.identsolver] OutputWeight: [] Advanced: [1x1 struct]
Для получения дополнительной информации об этом свойстве и как использовать его, смотрите раздел Output Arguments соответствующей страницы с описанием команды оценки и Отчета Оценки. | ||||||||||||
|
Введите задержки. Для системы с Значение по умолчанию: 0 для всех входных каналов | ||||||||||||
|
Выведите задержки. Для идентифицированных систем, как | ||||||||||||
|
Размер шага. Для | ||||||||||||
|
Модули для переменной времени, шаг расчета
Изменение этого свойства не оказывает влияния на другие свойства, и поэтому изменяет полное поведение системы. Использование Значение по умолчанию: | ||||||||||||
|
Введите названия канала в виде одного из следующего:
В качестве альтернативы используйте автоматическое векторное расширение, чтобы присвоить входные имена для мультивходных моделей. Например, если sys.InputName = 'controls'; Входные имена автоматически расширяются до Когда вы оцениваете модель с помощью Можно использовать краткое обозначение Входные названия канала имеют несколько использования, включая:
Значение по умолчанию: | ||||||||||||
|
Введите модули канала в виде одного из следующего:
Используйте Значение по умолчанию: | ||||||||||||
|
Введите группы канала. sys.InputGroup.controls = [1 2]; sys.InputGroup.noise = [3 5]; создает входные группы под названием sys(:,'controls') Значение по умолчанию: Struct без полей | ||||||||||||
|
Выведите названия канала в виде одного из следующего:
В качестве альтернативы используйте автоматическое векторное расширение, чтобы присвоить выходные имена для мультивыходных моделей. Например, если sys.OutputName = 'measurements'; Выходные имена автоматически расширяются до Когда вы оцениваете модель с помощью Можно использовать краткое обозначение Выходные названия канала имеют несколько использования, включая:
Значение по умолчанию: | ||||||||||||
|
Выведите модули канала в виде одного из следующего:
Используйте Значение по умолчанию: | ||||||||||||
|
Выведите группы канала. sys.OutputGroup.temperature = [1]; sys.InputGroup.measurement = [3 5]; создает выходные группы под названием sys('measurement',:) Значение по умолчанию: Struct без полей | ||||||||||||
|
Имя системы в виде вектора символов. Например, Значение по умолчанию: | ||||||||||||
|
Любой текст, который вы хотите сопоставить с системой, сохраненной как строка или массив ячеек из символьных векторов. Свойство хранит, какой бы ни тип данных вы обеспечиваете. Например, если sys1.Notes = "sys1 has a string."; sys2.Notes = 'sys2 has a character vector.'; sys1.Notes sys2.Notes ans = "sys1 has a string." ans = 'sys2 has a character vector.' Значение по умолчанию: | ||||||||||||
|
Любой тип данных вы хотите сопоставить с системой в виде любого MATLAB® тип данных. Значение по умолчанию: | ||||||||||||
|
Выборка сетки для массивов моделей в виде структуры данных. Для массивов идентифицированных линейных моделей (IDLTI), которые выведены путем выборки одной или нескольких независимых переменных, это дорожки свойства значения переменных, сопоставленные с каждой моделью. Эта информация появляется, когда вы отображаете или строите массив моделей. Используйте эту информацию, чтобы проследить результаты до независимых переменных. Установите имена полей структуры данных к именам переменных выборки. Установите значения полей к произведенным значениям переменных, сопоставленным с каждой моделью в массиве. Все переменные выборки должны быть числовыми и скаляр, оцененный, и все массивы произведенных значений должны совпадать с размерностями массива моделей. Например, если вы собираете данные в различных рабочих точках системы, можно идентифицировать модель для каждой рабочей точки отдельно и затем сложить результаты вместе в массив единой системы. Можно пометить отдельные модели в массиве с информацией относительно рабочей точки: nominal_engine_rpm = [1000 5000 10000];
sys.SamplingGrid = struct('rpm', nominal_engine_rpm) где Для массивов моделей, сгенерированных путем линеаризации Simulink® модель в нескольких значениях параметров или рабочих точках, программное обеспечение заполняет Значение по умолчанию: |