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

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

С подобной задачей в рамках внедрения Engee обратились инженеры АО “МТЗ ТРАНСМАШ им. А.А. Егоренкова”. Требовалось по экспериментальным данным оценить поведение модели поезда и определить закономерности изменения скорости при действии силы тяги на поезд. 

Для начала рассмотрим подробнее, как устроен процесс идентификации.

Рабочий процесс идентификации

Процесс идентификации обычно состоит из четырёх этапов:

  1. Сбор экспериментальных данных

  2. Выбор структуры модели

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

  4. Валидация модели

Сбор данных

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

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

Выбор структуры модели

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

В Engee для идентификации используется пакет Julia ControlSystemIdentification.jl. Для него на сайте Engee доступна подробная русскоязычная документация. Там вы найдете подробное описание методов идентификации.

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

После выбора структуры выполняется сама процедура идентификации.

На этом этапе алгоритм подбирает параметры модели так, чтобы динамика модели максимально соответствовала экспериментальным данным.

Валидация

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

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

Практический пример: идентификация модели поезда совместно с МТЗ

Рассмотрим практическую задачу, выполненную совместно с МТЗ.

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

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

1. Сбор данных

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

2. Выбор структуры модели

Искомая система имеет один вход и один выход. В качестве структуры выбрана линейная модель в пространстве состояний. Поэтому для идентификации был выбран метод subspaceid. Порядок системы выбирался экспериментально.

3. Идентификация

Идентификация проходила в скрипте Engee на данных, снятых на участке с уклонами:

На идентификационном датасете модель показала совпадение 97,32% 

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

На валидационном датасете модель показала совпадение 97,76%, то есть полученная модель хорошо воспроизводит полученную динамику системы не только на данных идентификации, но и на независимых данных. Идентификация прошла успешно! 

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

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

Комментарии (0)