Идентифицируйте линейные модели Используя приложение System Identification

Введение

Цели

Оцените и подтвердите линейные модели от single-input/single-output (SISO) данные, чтобы найти тот, который лучше всего описывает системную динамику.

После завершения этого примера вы сможете выполнить следующие задачи с помощью приложения System Identification:

  • Импортируйте массивы данных из рабочей области MATLAB® в приложение.

  • Отобразите данные на графике.

  • Обработайте данные путем удаления смещений из сигналов ввода и вывода.

  • Оцените, подтвердите и сравните линейные модели.

  • Экспортируйте модели в рабочее пространство MATLAB.

Примечание

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

Этот пример основан на примере в разделе 17.3 из System Identification: Теория для Пользователя, Второго Выпуска, Lennart Ljung, PTR Prentice Hall, 1999.

Описание данных

Этот пример использует файл данных dryer2.mat, который содержит single-input/single-output (SISO) данные временного интервала от Преподавателя Процесса Обратной связи PT326. Ввод и вывод сигнализирует, что каждый содержит 1 000 выборок данных.

Эта система нагревает воздух во входе с помощью сетки провода резистора, похожего на фен. Вход является питанием, подавшим к проводам резистора, и выход является температурой воздуха при выходе.

Подготовка данных для System Identification

Загрузка данных в рабочее пространство MATLAB

Загрузите данные в dryer2.mat путем ввода следующей команды в Окне Команды MATLAB:

load dryer2

Эта команда загружает данные в рабочее пространство MATLAB как два вектор-столбца, u2 и y2, соответственно. Переменная u2 входные данные и y2 выходные данные.

Открытие приложения System Identification

Чтобы открыть приложение System Identification, введите следующую команду в Окне Команды MATLAB:

systemIdentification

Имя сеанса по умолчанию, Untitled, появляется в строке заголовка.

Импорт массивов данных в приложение System Identification

Можно импортировать single-input/single-output (SISO) данные из файла выборочных данных dryer2.mat в приложение от рабочего пространства MATLAB.

Вы, должно быть, уже загрузили выборочные данные в MATLAB, как описано в Загрузке Данных в рабочее пространство MATLAB, и открыли приложение System Identification, как описано в Открытии Приложения System Identification.

Если вы не выполнили эти шаги, щелкните здесь, чтобы завершить их.

Импортировать массивы данных в приложение System Identification:

  1. Выберите Import data> Time domain data. Это действие открывает диалоговое окно Import Data.

  2. В диалоговом окне Import Data задайте следующие опции:

    • Входной параметр Введите u2 как имя входной переменной.

    • Вывод Введите y2 как имя выходной переменной.

    • Data name — Поменяйте имя по умолчанию на data. Это этикетки данные в приложении System Identification после операции импорта завершается.

    • Starting time — Введите 0 как время начала. Это значение определяет начальное значение оси времени на графиках временной зависимости.

    • 'SampleTime' Введите 0.08 как время между последовательными выборками в секундах. Это значение является фактическим шагом расчета в эксперименте.

    Диалоговое окно Import Data теперь напоминает следующую фигуру.

  3. В области Data Information нажмите More, чтобы расширить диалоговое окно и задать следующие опции:

    Input Properties

    • InterSample — Примите zoh по умолчанию (нулевой порядок содержит) указать, что входной сигнал был кусочно-постоянным между выборками во время сбора данных. Эта установка задает поведение входных сигналов между выборками, когда вы преобразовываете получившиеся модели между представлениями дискретного времени и непрерывного времени.

    • Period — Примите inf по умолчанию задавать апериодический вход.

      Примечание

      Для периодического входа введите целый номер периодов входного сигнала в вашем эксперименте.

    Channel Names

    • Входной параметр Введите power.

      Совет

      Именование каналов помогает вам идентифицировать данные в графиках. Для многомерных сигналов ввода и вывода можно задать имена отдельного Input и каналов Output, разделенных запятыми.

    • Вывод Введите temperature.

    Physical Units of Variables

    • Входной параметр Введите W для блоков питания.

      Совет

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

    • Вывод Введите ^oC для температурных модулей.

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

    Расширенное диалоговое окно Import Data теперь напоминает следующую фигуру.

  4. Нажмите Import, чтобы добавить данные в приложение System Identification. Отображения приложения значок, чтобы представлять данные.

  5. Нажмите Close, чтобы закрыть диалоговое окно Import Data.

Графический вывод и обработка данных

В этом фрагменте примера вы оцениваете данные и обрабатываете его для системы идентификации. Вы учитесь как:

  • Отобразите данные на графике.

  • Удалите смещения из данных путем вычитания средних значений входа и выхода.

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

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

Вы, должно быть, уже импортировали данные в приложение System Identification, как описано в Импорте Массивов данных в Приложение System Identification.

Если вы не выполнили этот шаг, щелкните здесь, чтобы завершить его.

Построить и обработать данные:

  1. Установите флажок Time plot, чтобы открыть График временной зависимости. Если окно графика пусто, нажмите data значок в приложении System Identification.

    Главные оси показывают выходные данные (температура), и нижние оси показывают входные данные (степень). И вход и выходные данные имеют ненулевые средние значения.

  2. Вычтите среднее входное значение из входных данных и среднее выходное значение от выходных данных. В приложении System Identification выберите <--Preprocess> Remove means.

    Это действие добавляет новый набор данных в приложение System Identification с именем по умолчанию datad (суффикс d средние значения детрендирует), и обновляет окно Time Plot, чтобы отобразить и оригинал и детрендированные данные. Детрендированные данные имеют нулевое среднее значение.

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

    В качестве альтернативы щелкните правой кнопкой по datad значок, чтобы открыть диалоговое окно Data/model Info.

    Установите флажок Use as Working Data. Нажмите Apply и затем Close. Это действие добавляет datad к прямоугольнику Working Data.

  4. Разделите данные в две части и задайте первую часть для оценки модели и вторую часть для проверки допустимости модели.

    1. Выберите <--Preprocess> Select range, чтобы открыть окно Select Range.

    2. В окне Select Range создайте набор данных, содержащий первые 500 выборок. В поле Samples задайте 1 500.

      Совет

      Можно также выбрать выборки данных с помощью мыши путем перетаскивания прямоугольной области на графике. Если вы выбираете выборки на осях входного канала, соответствующая область является также выбранным On осей выходного канала.

    3. В поле Data name введите имя data_est.

    4. Нажмите Insert, чтобы добавить этот новый набор данных в приложение System Identification, которое будет использоваться в оценке модели.

    5. Повторите этот процесс, чтобы создать второй набор данных, содержащий подмножество данных, чтобы использовать в валидации. В окне Select Range задайте последние 500 выборок в поле Samples. Введите имя data_val в поле Data name. Нажмите Insert, чтобы добавить этот новый набор данных в приложение System Identification.

    6. Нажмите Close, чтобы закрыть окно Select Range.

  5. В приложении System Identification перетащите мышью data_est к прямоугольнику Working Data и перетаскиванию data_val к прямоугольнику Validation Data.

  6. Чтобы получить информацию о наборе данных, щелкните правой кнопкой по его значку. Например, щелкните правой кнопкой по data_est открыть диалоговое окно Data/model Info.

    Можно также изменить определенные значения в диалоговом окне Data/model Info, включая:

    • Изменять название набора данных в поле Data name.

    • Изменение цвета значка данных в поле Color. Вы задаете цвета с помощью значений RGB (относительные суммы красного, зеленого цвета, и синий). Каждое значение между 0 и 1. Например, [1,0,0] указывает, что только красный присутствует, и никакой зеленый и синий цвет не смешаны в полный цвет.

    • Просмотр или редактирование команд, выполняемых на этом наборе данных в области Diary and Notes. Эта область содержит командную строку, эквивалентную обработке, вы выполнили использование приложения System Identification. Например, как показано в Информации о Данных/модели: оцените окно, data_est набор данных является результатом импортирования данных, удаления тренда средних значений и выбора первых 500 выборок данных.

       % Import   data          
       datad = detrend(data,0)  
       data_est = datad([1:500])

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

Диалоговое окно Data/model Info также отображается общее количество выборок, шага расчета, и выхода и входных названий канала и модулей. Эта информация не доступна для редактирования.

Совет

Как альтернативный ярлык, можно выбрать Preprocess> Quick start из приложения System Identification, чтобы выполнить все шаги обработки данных в этом примере.

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

Сохранение сеанса

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

Вы, должно быть, уже обработали данные в приложение System Identification, как описано в Графическом выводе и Обработке Данных.

Удалить определенные наборы данных из сеанса и сохранить сеанс:

  1. В приложении System Identification:

    1. Перетащите мышью data набор данных в Trash.

    2. Перетащите мышью datad набор данных в Trash.

    В качестве альтернативы можно нажать клавишу Delete на клавиатуре, чтобы переместить наборы данных в Trash.

    Примечание

    Движущиеся элементы к Trash не удаляют их. Чтобы постоянно удалить элементы, выберите Options> Empty trash.

    Следующий рисунок показывает приложение System Identification после перемещения элементов к Trash.

  2. Перетащите мышью data_est и data_val наборы данных, чтобы заполнить пустые прямоугольники, как показано в следующем рисунке.

  3. Выберите File> Save session as, чтобы открыть диалоговое окно Save Session и обзор к папке, где вы хотите сохранить файл сеанса.

  4. В поле File name введите имя сеанса dryer2_processed_data, и нажмите Save. Получившийся файл имеет .sid расширение.

Совет

Можно открыть сохраненный сеанс при запуске приложения System Identification путем ввода следующей команды в посдказке MATLAB:

systemIdentification('dryer2_processed_data')

Для получения дополнительной информации о сеансах управления, смотрите Сеансы Запуска и Управления.

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

Как оценить линейные модели Используя быстрый запуск

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

Вы, должно быть, уже обработали данные для оценки, как описано в Графическом выводе и Обработке Данных.

Если вы не выполнили этот шаг, щелкните здесь, чтобы завершить его.

В приложении System Identification выберите Estimate> Quick start.

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

Типы быстрого запуска линейные модели

Быстрый запуск оценивает следующие четыре типа моделей и добавляет следующее в приложение System Identification с именами по умолчанию:

  • imp — Переходной процесс в течение времени с помощью impulseest алгоритм.

  • spad — Частотная характеристика в области значений частот с помощью spa алгоритм. Частотная характеристика является преобразованием Фурье импульсной характеристики линейной системы.

    По умолчанию модель оценена в 128 значениях частоты, в пределах от 0 к частоте Найквиста.

  • arxqs — Четвертый порядок авторегрессивная модель (ARX) с помощью arx алгоритм.

    Эта модель является параметрической и имеет следующую структуру:

    y(t)+a1y(t1)++anay(tna)=         b1u(tnk)++bnbu(tnknb+1)+e(t)

    y (t) представляет выход во время t, u (t) представляет вход во время t, na является количеством полюсов, nb является количеством b параметров (равный количеству нулей плюс 1), nk является количеством выборок, прежде чем вход будет влиять на выход системы (названный задержкой или потеря времени модели), и e (t) является бело-шумовым воздействием. Программное обеспечение System Identification Toolbox™ оценивает параметры a1an и b1bn использование входных и выходных данных от набора данных оценки.

    В arxqs, na=nb=4 и nk оцениваются из модели imp переходного процесса.

  • n4s3 — Модель в пространстве состояний, вычисленная с помощью n4sid. Алгоритм автоматически выбирает порядок модели (в этом случае, 3).

    Эта модель является параметрической и имеет следующую структуру:

    dxdt=Ax(t)+Bu(t)+Ke(t)y(t)=Cx(t)+Du(t)+e(t)

    y (t) представляет выход во время t, u (t) представляет вход во время t, x является вектором состояния, и e (t) является бело-шумовым воздействием. Продукт System Identification Toolbox оценивает матрицы пространства состояний A, B, C, D, и K.

Примечание

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

Проверка моделей быстрого запуска

Быстрый запуск генерирует следующие графики во время оценки модели, чтобы помочь вам подтвердить качество моделей:

  • Переходный процесс

  • График частотной характеристики

  • Выведенный моделью график

Вы, должно быть, уже оценили модели с помощью Быстрого запуска, чтобы сгенерировать эти графики, как описано в том, Как Оценить Линейные Модели Используя Быстрый запуск.

Если вы не выполнили этот шаг, щелкните здесь, чтобы завершить его.

Переходный процесс.  Следующий переходный процесс показывает соглашение среди различных структур модели и результатов измерений, что означает, что все эти структуры имеют подобную динамику.

Совет

Если вы закрыли окно графика, установите флажок Transient resp, чтобы вновь открыть это окно. Если график пуст, кликните по значкам модели в окне приложения System Identification, чтобы отобразить модели на графике.

Переходной процесс для импорта, arxqs, и n4s3

Совет

Можно использовать переходный процесс, чтобы оценить потерю времени линейных систем. Например, предыдущий переходный процесс показывает задержку приблизительно 0,25 с, прежде чем система ответит на вход. Эта задержка ответа, или потеря времени, приблизительно равна приблизительно трем выборкам, потому что шагом расчета является 0.08 s для этого набора данных.

График частотной характеристики.  Следующий график частотной характеристики показывает соглашение среди различных структур модели и результатов измерений, что означает, что все эти структуры имеют подобную динамику.

Совет

Если вы закрыли это окно графика, установите флажок Frequency resp, чтобы вновь открыть это окно. Если график пуст, кликните по значкам модели в окне приложения System Identification, чтобы отобразить модели на графике.

Частотная характеристика для импорта Моделей, spad, arxqs, и n4s3

Выведенный моделью График.  Окно вывода Модели показывает соглашение среди различных структур модели и измеренного выхода в данных о валидации.

Совет

Если вы закрыли Окно вывода Модели, установите флажок Model output, чтобы вновь открыть это окно. Если график пуст, кликните по значкам модели в окне приложения System Identification, чтобы отобразить модели на графике.

Измеренный Выход и Выход Модели для импорта Моделей, arxqs, и n4s3

Выведенный моделью график показывает ответ модели на вход в данных о валидации. Подходящие значения для каждой модели получены в итоге в области Best Fits Окна вывода Модели. Модели в списке Best Fits упорядочены от лучшего наверху к худшему в нижней части. Подгонка между двумя кривыми вычисляется таким образом, что 100 средних значений, совершенная подгонка, и 0 указывает на плохую подгонку (то есть, выход модели имеет ту же подгонку к измеренному выходу как среднее значение измеренного выхода).

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

Совет

Чтобы сравнить предсказанный выход модели вместо симулированного выхода, выберите эту опцию в меню Options в Окне вывода Модели.

Оценка линейных моделей

Стратегия оценки точных моделей

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

В этом фрагменте примера вы получаете точные параметрические модели путем выполнения следующих задач:

  1. Идентифицируя начальные порядки модели и задержки из ваших данных с помощью простой, полиномиальной структуры модели (ARX).

  2. При исследовании структур более сложной модели с порядками и задержками близко к начальным значениям вы нашли.

Получившиеся модели являются моделями дискретного времени.

Оценка возможных порядков модели

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

О Моделях ARX.  Для single-input/single-output системы (SISO) структура модели ARX:

y(t)+a1y(t1)++anay(tna)=         b1u(tnk)++bnbu(tnknb+1)+e(t)

y (t) представляет выход во время t, u (t) представляет вход во время t, na является количеством полюсов, nb является количеством нулей плюс 1, nk является входной задержкой — количество выборок, прежде чем вход будет воздействовать на систему выход (названный задержкой или потеря времени модели), и e (t) является бело-шумовым воздействием.

Вы указываете, что модель приказывает, чтобы na, nb, и nk оценили модели ARX. Продукт System Identification Toolbox оценивает параметры a1an и b1bn из данных.

Как оценить порядки модели

  1. В приложении System Identification выберите Estimate> Polynomial Models, чтобы открыть диалоговое окно Polynomial Models.

  2. Из списка Structure выберите ARX: [na nb nk]. По умолчанию это уже выбрано.

  3. Отредактируйте поле Orders, чтобы попробовать все комбинации полюсов, нулей и задержек, где каждое значение от 1 до 10:

    [1:10 1:10 1:10]

  4. Нажмите Estimate, чтобы открыть окно ARX Model Structure Selection, которое отображает производительность модели для каждой комбинации параметров модели.

    Вы используете этот график выбрать хорошо-подходящую модель.

    • Горизонтальная ось является общим количеством параметров — na + nb.

    • Вертикальная ось, названная Unexplained output variance (in %), является фрагментом выхода, не объясненного моделью — ошибка прогноза модели ARX для количества параметров, показанных на горизонтальной оси.

      Ошибка прогноза является суммой квадратов различий между выводом данных валидации и моделью "один шаг вперед" предсказанный выход.

    • nk является задержкой.

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

    • Красный — Лучшая подгонка минимизирует сумму квадратов различия между выводом данных валидации и выходом модели. Этот прямоугольник указывает на полную лучшую подгонку.

    • Зеленый — Лучшая подгонка минимизирует критерий Rissanen MDL.

    • Синий — Лучшая подгонка минимизирует критерий AIC Akaike.

    В этом примере значение Unexplained output variance (in %) остается приблизительно постоянным для объединенного количества параметров от 4 до 20. Такое постоянство указывает, что производительность модели не улучшается в высших порядках. Таким образом модели младшего разряда могут соответствовать данным одинаково хорошо.

    Примечание

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

  5. В окне ARX Model Structure Selection кликните по красной панели (соответствующий 15 на горизонтальной оси), и нажимают Insert. Этот выбор вставляет na=6, nb=9, и nk=2 в диалоговое окно Polynomial Models и выполняет оценку.

    Это действие добавляет модель arx692 к приложению System Identification и обновлениям графики включать ответ модели.

    Примечание

    Имя по умолчанию параметрической модели содержит тип модели и количество полюсов, нулей и задержек. Например, arx692 модель ARX с na=6, nb=9, и задержка двух выборок.

  6. В окне ARX Model Structure Selection кликните по третьей панели, соответствующей 4 параметры на горизонтальной оси (самое низкоуровневое, которое все еще дает хорошую подгонку), и нажимают Insert.

    • Этот выбор вставляет na=2, nb=2, и nk=3 (задержка трех выборок) в диалоговое окно Polynomial Models и выполняет оценку.

    • Модель arx223 добавляется к приложению System Identification, и графики обновляются, чтобы включать его ответ и вывести.

  7. Нажмите Close, чтобы закрыть окно ARX Model Structure Selection.

  8. Нажмите Close, чтобы закрыть диалоговое окно Polynomial Models.

Идентификация моделей передаточной функции

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

Полное лучшее пригодное для этой системы соответствует модели с шестью полюсами, девятью нулями и задержкой двух выборок. Это также показало, что модель младшего разряда с na = 2 (два полюса), nb = 2 (один нуль), и nk = 3 (задержка ввода - вывода) также обеспечивает хорошую подгонку. Таким образом необходимо исследовать порядки модели близко к этим значениям.

В этом фрагменте примера вы оцениваете модель передаточной функции.

О Моделях Передаточной функции.  Общая структура модели передаточной функции:

Y(s)=num(s)den(s)U(s)+E(s)

Y (s), U (s) и E (s) представляет Преобразования Лапласа выхода, ввел и ошибка, соответственно. num (s) и den (s) представляет полином числителя и полином знаменателя, который задает отношение между входом и выходом. Корни полинома знаменателя упоминаются, когда модель орудует шестами. Корни полинома числителя упоминаются как нули модели.

Необходимо задать количество полюсов и нулей, чтобы оценить модель передаточной функции. Продукт System Identification Toolbox оценивает полином числителя и полином знаменателя и задержки ввода/вывода из данных.

Структура модели передаточной функции является хорошим выбором для быстрой оценки, потому что это требует, чтобы вы задали только 2 параметра, чтобы начать: np количество полюсов и nz количество нулей.

Как оценить модели передаточной функции

  1. В приложении System Identification выберите Estimate> Transfer Function Models, чтобы открыть диалоговое окно Transfer Functions.

  2. В диалоговом окне Transfer Functions задайте следующие опции:

    • Number of poles — Оставьте значение по умолчанию 2 задавать функцию второго порядка, для двух полюсов.

    • Number of zeros — Оставьте значение по умолчанию 1.

    • Continuous-time — Уезжайте это проверяло.

  3. Нажмите I/O Delay, чтобы расширить область спецификации задержки ввода/вывода.

    Путем оценки моделей ARX для различных комбинаций порядка, как описано в Оценке Возможных Порядков Модели, вы идентифицировали 3 демонстрационных задержки (nk = 3). Эта задержка переводит в задержку непрерывного времени (nk-1)*Ts , который равен 0,16 секундам.

    Задайте Delay как 0.16 секунды. Оставьте Fixed проверяемым.

    Используйте Опции Оценки по умолчанию. По умолчанию приложение присваивает имя tf1 к модели. Диалоговое окно должно выглядеть так.

  4. Нажмите Estimate, чтобы добавить модель передаточной функции под названием tf1 к приложению System Identification. Можно просмотреть выход оценки модели передаточной функции по сравнению с оценками других моделей в окне вывода Модели.

    Совет

    Если вы закрыли Окно вывода Модели, можно регенерировать его путем установки флажка Model output в приложении System Identification. Если новая модель не появляется на графике, кликните по значку модели в приложении System Identification, чтобы сделать модель активной.

  5. Нажмите Close, чтобы закрыть диалоговое окно Transfer Functions.

Узнать больше.  Чтобы узнать больше об идентификации моделей передаточной функции, см. Модели Передаточной функции.

Идентификация моделей в пространстве состояний

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

Полное лучшее пригодное для этой системы соответствует модели с шестью полюсами, девятью нулями и задержкой двух выборок. Это также показало, что модель младшего разряда с na=2 (два полюса), nb=2 (один нуль), и nk=3 (задержка ввода - вывода) также обеспечивает хорошую подгонку. Таким образом необходимо исследовать порядки модели близко к этим значениям.

В этом фрагменте примера вы оцениваете модель в пространстве состояний.

О Моделях в пространстве состояний.  Общая структура модели в пространстве состояний (инновационная форма):

dxdt=Ax(t)+Bu(t)+Ke(t)y(t)=Cx(t)+Du(t)+e(t)

y (t) представляет выход во время t, u (t) представляет вход во время t, x (t) является вектором состояния во время t, и e (t) является бело-шумовым воздействием.

Необходимо задать одно целое число как порядок модели (размерность вектора состояния), чтобы оценить модель в пространстве состояний. Продукт System Identification Toolbox оценивает матрицы пространства состояний A, B, C, D, и K из данных.

Структура модели в пространстве состояний является хорошим выбором для быстрой оценки, потому что это требует, чтобы вы задали только количество состояний (который равняется количеству полюсов). Можно опционально также задать задержки и проходное поведение.

Как оценить модели в пространстве состояний

  1. В приложении System Identification выберите Estimate> State Space Models, чтобы открыть диалоговое окно State Space Models.

  2. В поле Specify value задайте порядок модели. Введите 6 создать модель в пространстве состояний шестого порядка.

    Этот выбор основан на том, что хорошо-подходящая модель ARX имеет шесть полюсов.

    Совет

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

  3. Нажмите Estimation Options, чтобы расширить область опций оценки.

  4. Измените Focus в Simulation оптимизировать модель, чтобы использовать в выходной симуляции.

    Диалоговое окно State Space Models похоже на следующую фигуру.

  5. Нажмите Estimate, чтобы добавить модель в пространстве состояний под названием ss1 к приложению System Identification.

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

    Совет

    Если вы закрыли Окно вывода Модели, можно регенерировать его путем установки флажка Model output в приложении System Identification. Если новая модель не появляется на графике, кликните по значку модели в приложении System Identification, чтобы сделать модель активной.

  6. Нажмите Close, чтобы закрыть диалоговое окно State Space Models.

Узнать больше.  Чтобы узнать больше об идентификации моделей в пространстве состояний, смотрите Модели в пространстве состояний.

Идентификация модели ARMAX

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

Полное лучшее пригодное для этой системы соответствует модели с шестью полюсами, девятью нулями и задержкой двух выборок. Это также показало, что модель младшего разряда с na=2 (два полюса), nb=2 (один нуль), и nk=3 также обеспечивает хорошую подгонку. Таким образом необходимо исследовать порядки модели близко к этим значениям.

В этом фрагменте примера вы оцениваете модель полинома ввода - вывода ARMAX.

О Моделях ARMAX.  Для single-input/single-output системы (SISO) полиномиальная структура модели ARMAX:

y(t)+a1y(t1)++anay(tna)=         b1u(tnk)++bnbu(tnknb+1)+         e(t)+c1e(t1)++cnce(tnc)

y (t) представляет выход во время t, u (t) представляет вход во время t, na является количеством полюсов для динамической модели, nb является количеством нулей плюс 1, nc является количеством полюсов для возмущения, nk является количеством выборок, прежде чем вход будет влиять на выход системы (названный задержкой или потеря времени модели), и e (t) является бело-шумовым воздействием.

Примечание

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

Необходимо задать порядки модели оценить модели ARMAX. Продукт System Identification Toolbox оценивает параметры модели a1an, b1bn, и c1cn из данных.

Как оценить модели ARMAX

  1. В приложении System Identification выберите Estimate> Polynomial Models, чтобы открыть диалоговое окно Polynomial Models.

  2. Из списка Structure выберите ARMAX: [na nb nc nk] оценить модель ARMAX.

  3. В поле Orders, установленном порядки na, nb, nc, и nk к следующим значениям:

    [2 2 2 2]

    Приложение присваивает имя к модели amx2222, по умолчанию, видимый в поле Name.

  4. Нажмите Estimate, чтобы добавить модель ARMAX в приложение System Identification.

  5. Повторите шаги 3 и 4 с помощью более высокого Orders 3 3 2 2. Эти порядки приводят к модели, которая соответствует данным почти, а также модели ARX высшего порядка arx692.

    Совет

    Если вы закрыли Окно вывода Модели, можно регенерировать его путем установки флажка Model output в приложении System Identification. Если новая модель не появляется на графике, кликните по значку модели в приложении System Identification, чтобы сделать модель активной.

  6. Нажмите Close, чтобы закрыть диалоговое окно Polynomial Models.

Узнать больше.  Чтобы узнать больше об идентификации моделей полинома ввода - вывода, таких как ARMAX, см. Модели Полинома Ввода - вывода.

Выбор лучшей модели

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

Вы, должно быть, уже оценили модели, как описано в Оценке Линейных Моделей.

Если вы не выполнили этот шаг, щелкните здесь, чтобы завершить его.

Сводные данные Моделей.  Следующий рисунок показывает приложение System Identification, которое включает все предполагаемые модели в Оценку Линейных Моделей.

Исследование Выхода Модели.  Исследуйте выходной график модели, чтобы видеть, как хорошо модель выводила соответствия измеренный выход в наборе данных валидации. Хорошая модель является самой простой моделью, которая лучше всего описывает динамику и успешно симулирует или предсказывает выход для различных входных параметров. Модели перечислены по наименованию в области Best Fits Выходного графика Модели. Обратите внимание на то, что одна из более простых моделей, amx3322, произведенный подобная подгонка как модель самого высокого порядка вы создали, arx692.

Совет

Если вы закрыли Окно вывода Модели, можно регенерировать его путем установки флажка Model output в приложении System Identification. Если новая модель не появляется на графике, кликните по значку модели в приложении System Identification, чтобы сделать модель активной.

Чтобы подтвердить ваши модели с помощью различного набора данных, можно перетащить мышью этот набор данных в прямоугольник Validation Data в приложении System Identification. Если вы преобразовываете данные о валидации в частотный диапазон, Выходной график Модели обновляется, чтобы показать сравнение модели в частотном диапазоне.

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

Выпуск мыши увеличивает эту область и показывает, что выход всех моделей совпадает с данными о валидации хорошо.

Просмотр параметров модели

Просмотр значений параметра модели

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

Вы, должно быть, уже оценили модели, как описано в Оценке Линейных Моделей.

Если вы не выполнили этот шаг, щелкните здесь, чтобы завершить его.

Просмотреть значения параметров модели amx3322, щелкните правой кнопкой по значку модели по приложению System Identification. Диалоговое окно Data/model Info открывается.

Недоступная для редактирования область списков диалогового окна Data/model Info значения параметров соответствует следующему разностному уравнению для вашей системы:

y(t)1.502y(t1)+0.7193y(t2)0.1179y(t3)=       0.003956u(t2)+0.06245u(t3)+0.02673u(t4)+e(t)0.5626e(t1)+0.2355e(t2)

Примечание

Коэффициент u (t-2) не существенно отличается от нуля. Это отсутствие различия объясняет почему значения задержки обоих 2 и 3 дайте хорошие результаты.

Значения параметров появляются в следующем формате:

A(z)=1+a1z1++anaznaB(z)=b1znk++bnbznbnk+1C(z)=1+c1z1++cncznc

Параметры появляются в структуре модели ARMAX, можно следующим образом:

A(q)y(t)=B(q)u(t)+C(q)e(t)

который соответствует этому общему разностному уравнению:

y(t)+a1y(t1)++anay(tna)=         b1u(tnk)++bnbu(tnknb+1)+         e(t)+c1e(t1)++cnce(tnc)

y (t) представляет выход во время t, u (t) представляет вход во время t, na является количеством полюсов для динамической модели, nb является количеством нулей плюс 1, nc является количеством полюсов для возмущения, nk является количеством выборок, прежде чем вход будет влиять на выход системы (названный задержкой или потеря времени модели), и e (t) является бело-шумовым воздействием.

Просмотр неопределенности параметра

Можно просмотреть неопределенность параметра в предполагаемых моделях.

Вы, должно быть, уже оценили модели, как описано в Оценке Линейных Моделей.

Если вы не выполнили этот шаг, щелкните здесь, чтобы завершить его. Просмотреть значения параметров модели amx3322, щелкните правой кнопкой по значку модели по приложению System Identification. Диалоговое окно Data/model Info открывается.

Чтобы просмотреть неопределенность параметра, нажмите Present в диалоговом окне Data/model Info и просмотрите информацию модели в посдказке MATLAB.

amx3322 =                                                                     
Discrete-time ARMAX model:  A(z)y(t) = B(z)u(t) + C(z)e(t)                    
                                                                              
  A(z) = 1 - 1.502 (+/- 0.05982) z^-1 + 0.7193 (+/- 0.0883) z^-2             
                                   - 0.1179 (+/- 0.03462) z^-3                
                                                                              
                                                                              
  B(z) = 0.003956 (+/- 0.001551) z^-2 + 0.06245 (+/- 0.002372) z^-3           
                                 + 0.02673 (+/- 0.005651) z^-4                
                                                                              
                                                                              
  C(z) = 1 - 0.5626 (+/- 0.07322) z^-1 + 0.2355 (+/- 0.05294) z^-2            
                                                                              
Name: amx3322                                                                 
Sample time: 0.08 seconds                                                     
                                                                              
Parameterization:                                                             
   Polynomial orders:   na=3   nb=3   nc=2   nk=2                             
   Number of free coefficients: 8                                             
   Use "polydata", "getpvec", "getcov" for parameters and their uncertainties.
                                                                              
Status:                                                                       
Termination condition: Near (local) minimum, (norm(g) < tol).                 
Number of iterations: 5, Number of function evaluations: 11                   
                                                                              
Estimated using POLYEST on time domain data "data_est".                       
Fit to estimation data: 95.3% (prediction focus)                              
FPE: 0.001596, MSE: 0.001546                                                   
More information in model's "Report" property. 

Неопределенность с 1 стандартным отклонением для параметров модели находится в круглых скобках рядом с каждым значением параметров.

Экспорт модели к рабочему пространству MATLAB

Модели, которые вы создаете в приложении System Identification, не автоматически доступны в рабочем пространстве MATLAB. Чтобы сделать модель доступной для других тулбоксов, Simulink® и команд System Identification Toolbox, необходимо экспортировать модель от приложения System Identification до рабочего пространства MATLAB. Например, если модель является объектом, который требует контроллера, можно импортировать модель из рабочего пространства MATLAB в продукт Control System Toolbox™.

Вы, должно быть, уже оценили модели, как описано в Оценке Линейных Моделей.

Если вы не выполнили этот шаг, щелкните здесь, чтобы завершить его.

Экспортировать amx3322 модель, перетащите его к прямоугольнику To Workspace в приложении System Identification. В качестве альтернативы нажмите Export в диалоговом окне Data/model Info.

Модель появляется в браузере рабочего пространства MATLAB.

Примечание

Этой моделью является idpoly объект модели.

После того, как модель находится в рабочем пространстве MATLAB, можно выполнить другие операции на модели. Например, если вам установили продукт Control System Toolbox, вы можете преобразовать модель к использованию объекта пространства состояний:

ss_model=ss(amx3322)

Экспорт модели к Linear System Analyzer

Если вам установили продукт Control System Toolbox, прямоугольник To Linear System Analyzer появляется в приложении System Identification.

Linear System Analyzer является графическим интерфейсом пользователя для просмотра и управления графиками отклика линейных моделей. Это отображает следующие графики:

  • Неродной и импульсная характеристика

  • Предвещайте, Найквист и Николс

  • Сингулярные значения частотной характеристики

  • Полюс/нуль

  • Ответ на общие входные сигналы

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

Чтобы построить модель в Linear System Analyzer, перетащите мышью значок модели к прямоугольнику To Linear System Analyzer в приложении System Identification. В качестве альтернативы нажмите Show in Linear System Analyzer в диалоговом окне Data/model Info.

Для получения дополнительной информации о работе с графиками в Linear System Analyzer, см. Обзор Linear System Analyzer (Control System Toolbox).