Идентифицируйте линейные модели, используя Систему идентификации приложение

Введение

Цели

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

После завершения этого руководства вы сможете выполнить следующие задачи с помощью приложения Система Идентификации:

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

  • Постройте график данных.

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

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

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

Примечание

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

Это руководство основано на примере в разделе 17.3 Система Идентификации: Theory for the User, Second Edition, Lennart Ljung, Prentice Hall PTR, 1999.

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

В этом руководстве используется файл данных dryer2.mat, который содержит данные временной области с одним входом/одним выходом (SISO) из PT326 Feedback Process Trainer. Каждый входной и выходной сигналы содержат 1000 выборок данных.

Эта система нагревает воздух во входном отверстии, используя mesh резисторного провода, подобную фену. Входом является степень проводов резистора, а выходом - температура воздуха на выходе.

Подготовка данных к системе идентификации

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

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

load dryer2

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

Открытие Системы идентификации приложения

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

systemIdentification

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

Импорт массивов данных в приложение Системы идентификации

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

Вы, должно быть, уже загрузили выборочные данные в MATLAB, как описано в Загрузке данных в Рабочее пространство MATLAB, и открыли приложение Системы идентификации, как описано в Открытии приложения Системы идентификации.

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

Чтобы импортировать массивы данных в приложение Системы идентификации:

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

  2. В диалоговом окне «Импорт данных» задайте следующие опции:

    • Input - Ввод u2 как имя переменного входа.

    • Output - Ввод y2 как имя переменного выхода.

    • Data name - Измените имя по умолчанию на data. Это имя помечает данные в приложении Системы идентификации после завершения операции импорта.

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

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

    Диалоговое окно Импорт данных теперь напоминает следующий рисунок.

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

    Input Properties

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

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

      Примечание

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

    Channel Names

    • Input - Ввод power.

      Совет

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

    • Output - Ввод temperature.

    Physical Units of Variables

    • Input - Ввод W для силовых модулей.

      Совет

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

    • Output - Ввод ^oC для модулей температуры.

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

    Развернутое диалоговое окно Импорт данных теперь напоминает следующий рисунок.

  4. Нажмите Import, чтобы добавить данные к приложению Системы идентификации. Приложение отображает значок, чтобы представлять данные.

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

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

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

  • Постройте график данных.

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

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

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

Вы должны уже импортировать данные в приложение Системы идентификации, как описано в разделе Импорт массивов данных в приложение Системе идентификации.

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

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

  1. Установите флажок Time plot, чтобы открыть график времени. Если окно графика пусто, щелкните data значок в приложении Системы идентификации.

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

  2. Вычесть средний вход значение из входных данных и средний выход значение из выхода данных. В приложении Системы идентификации выберите <--Preprocess > Remove means.

    Это действие добавляет новый набор данных в приложение Системы идентификации с именем по умолчанию 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.

      Совет

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

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

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

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

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

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

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

    Можно также изменить определенные значения в диалоговом окне Данные/Информация о модели, включая:

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

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

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

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

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

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

Совет

В качестве альтернативного ярлыка можно выбрать Preprocess > Quick start из приложения Системы идентификации, чтобы выполнить все шаги обработки данных в этом руководстве.

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

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

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

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

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

  1. В приложении Системы идентификации:

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

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

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

    Примечание

    Перемещение элементов в Trash не удаляет их. Чтобы безвозвратно удалить элементы, выберите Options > Empty trash.

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

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

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

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

Совет

Можно открыть сохраненный сеанс при запуске приложения Системы идентификации, набрав следующую команду в подсказку MATLAB:

systemIdentification('dryer2_processed_data')

Дополнительные сведения об управлении сеансами см. в разделе Запуск и управление сеансами.

Оценка линейных моделей с помощью Quick Start

Как оценить линейные модели с помощью Quick Start

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

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

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

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

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

Типы линейных моделей Quick Start

Quick Start оценивает следующие четыре типа моделей и добавляет следующее к Системе идентификации приложению с именами по умолчанию:

  • 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 оценивает матрицы А, B, C, D и K пространства состояний.

Примечание

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

Валидация моделей Quick Start

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

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

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

  • График Модель-выход

Вы должны были уже оценить модели, используя Quick Start, чтобы сгенерировать эти графики, как описано в How to Estimate Linear Models Using Quick Start.

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

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

Совет

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

Переходная характеристика для imp, arxqs и n4s3

Совет

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

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

Совет

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

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

График модели-вывода.  Окно Model Output показывает согласие между различными структурами модели и измеренным выходом в данных валидации.

Совет

Если вы закрыли окно Выход модели, установите флажок Model output, чтобы снова открыть это окно. Если график пуст, щелкните значки модели в окне Системы идентификации приложения, чтобы отобразить модели на графике.

Измеренный выход и выходные данные модели для imp, arxqs и n4s3

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

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

Совет

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

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

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

Линейные модели, которые вы оценили в Оценке линейных моделей с помощью Quick Start, показали, что линейная модель в достаточной степени представляет динамику системы.

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

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

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

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

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

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

О моделях ARX.  Для системы с одним входом/одним выходом (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. В приложении Системы идентификации выберите Estimate > Polynomial Models, чтобы открыть диалоговое окно Polynomial Моделей.

  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.

    • Blue - Best fit минимизирует критерий AIC Акайке.

    В этом руководстве значение 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 к приложению Системы идентификации и обновляет графики, чтобы включить ответ модели.

    Примечание

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

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

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

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

  7. Щелкните Close, чтобы закрыть окно Выбор структуры модели ARX (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. В приложении Системы идентификации выберите Estimate > Transfer Function Models, чтобы открыть диалоговое окно Передаточных функций.

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

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

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

    • Continuous-time - Оставьте это проверенным.

  3. Щелкните Delay, чтобы развернуть область спецификаций задержки ввода/вывода.

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

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

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

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

    Совет

    Если вы закрыли окно Выход, можно перегенерировать его, установив флажок Model output в приложении Система Идентификации. Если новая модель не появляется на графике, щелкните значок модели в приложении Система Идентификации, чтобы сделать модель активной.

  5. Нажмите кнопку Close, чтобы закрыть диалоговое окно Передаточные функции.

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

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

Путем оценки моделей 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 оценивает матрицы А, B, C, D и K пространства состояний из данных.

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

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

  1. В приложении Системы идентификации выберите Estimate > State Space Models, чтобы открыть диалоговое окно State Space Моделей.

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

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

    Совет

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

    Диалоговое окно должно выглядеть следующим образом:

  3. Выберите вкладку Estimation Options, чтобы отобразить дополнительные опции.

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

    Диалоговое окно Модели пространства состояний выглядит следующим образом.

  5. Щелкните Estimate, чтобы добавить модель пространства состояний с именем ss1 в приложение Системы идентификации.

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

    Совет

    Если вы закрыли окно Выход, можно перегенерировать его, установив флажок Model output в приложении Система Идентификации. Если новая модель не появляется на графике, щелкните значок модели в приложении Система Идентификации, чтобы сделать модель активной.

  6. Нажмите кнопку Close, чтобы закрыть диалоговое окно Модели пространства состояний (State Space Models).

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

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

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

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

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

О моделях ARMAX.  Для системы с одним входом/одним выходом (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 в приложение Системы идентификации.

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

    Совет

    Если вы закрыли окно Выход, можно перегенерировать его, установив флажок Model output в приложении Система Идентификации. Если новая модель не появляется на графике, щелкните значок модели в приложении Система Идентификации, чтобы сделать модель активной.

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

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

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

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

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

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

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

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

Совет

Если вы закрыли окно Выход, можно перегенерировать его, установив флажок Model output в приложении Система Идентификации. Если новая модель не появляется на графике, щелкните значок модели в приложении Система Идентификации, чтобы сделать модель активной.

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

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

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

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

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

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

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

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

Чтобы просмотреть значения параметров модели amx3322, щелкните правой кнопкой мыши значок модели в приложении Системы идентификации. Откроется диалоговое окно 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

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

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

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

Как экспортировать amx3322 Модель перетащите его в прямоугольник To Workspace в приложении Системы идентификации. Кроме того, нажмите Export в диалоговом окне Data/model Info.

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

Примечание

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

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

ss_model=ss(amx3322)

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

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

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

  • Степ- и импульсная характеристика

  • Боде, Найквист и Николс

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

  • Полюс/ноль

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

  • Невынужденный ответ, начиная с заданных начальных состояний (только для моделей пространства состояний)

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

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