UM Control

Модуль UM Control

 

Модуль UM Control это набор инструментов UM Matlab Import, UM CoSimulation, UM User's Defined Routines и UM Block Editor, которые позволяют интегрировать механические системы, описанные в "Универсальном механизме" с библиотеками пользователя или Matlab/Simulnk. При моделировании многих реальных систем встает задача совмещения механической части модели с подсистемами другой физической природы, например, системами автоматического управления, электрическими машинами и электромагнитными полями, гидравликой, пневматикой и т.д.

Сложные системы такого рода не могут быть описаны встроенными в УМ средствами, поэтому математические модели таких систем описываются либо в Matlab/Simulink, либо разрабатываются пользователем самостоятельно на одном из языков программирования и затем подключаются к УМ как внешние динамически загружаемые библиотеки (DLL). Таким образом, все инструменты модуля UM Control позволяют существенно расширить диапазон систем, моделируемых в УМ, и подойти к моделированию сложных электромеханических систем, например, электровоза, систем управления (ABS, противобуксовочных, противозаносных и других систем), а также мехатронных систем.

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

Ниже рассмотрим упомянутые инструменты подробнее:

UM Matlab Import;
UM CoSimulaiton;

UM User's Defined Routines;

UM Block Editor.

Дополнительные материалы:

1. Начинаем работать: интерфейс с Matlab/Simulink;

2. Введение в использование инструмента UM CoSimulation, umcosimulation.zip, (0.7 Мб, презентация PowerPoint в zip-архиве, рус. яз.);

3. Федяев В.Н. Автореферат на диссертацию "Влияние электрической и механической подсистем магистрального тепловоза на реализацию предельных тяговых усилий". БГТУ, Брянск, 2006.

Инструмент UM Matlab Import

 

Интерфейс с Matlab/Simulink. Щелкните для просмотра копии экрана Одной из самых распространенных программ, ориентированных на моделирование технических систем, является среда Matlab/Simulink. Интегрированный в программный комплекс «Универсальный механизм» интерфейс с Matlab/Simulink (инструмент UM Matlab Import) позволяет связывать построенную механическую модель UM с моделями подсистем различной природы, описанных в Matlab/Simulink.

Интерфейс с Matlab/Simulink позволяет одновременно подключать к механической модели неограниченное количество моделей Matlab/Simulink, скомпилированных в виде dll-библиотек. Интуитивно понятный графический интерфейс программного модуля позволяет подключать DLL со скомпилированной подсистемой, выбирать для данной подсистемы входы и выходы, а также включать и отключать в любой момент требуемые подсистемы.

Алгоритм интеграции модели из различных подсистем, реализованных в UM и Matlab/Simulink, состоит, как правило, из следующих этапов:

 – определение данных, которые необходимо передавать от одной подсистемы к другой (из UM в Matlab/Simulink и обратно);

 – построение моделей в UM и Matlab/Simulink в соответствии с определенными потоками данных;

 – компиляция моделей, реализованных в Matlab/Simulink, в динамически подключаемые библиотеки (DLL);

 – связывание модели механической системы, реализованной в UM, с имеющимися dll-библиотеками;

 – моделирование динамики сложной модели в среде программы UM Simulation.

Пример 1. Стабилизация перевернутого маятника: UM Matlab Import

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

Расчетная схема Схема обмена данными
Расчетная схема Схема обмена данными

Система управления перевернутым маятником представляет собой так называемый пропорционально-интегрально-дифференциальный контроллер. Для связи модели управления с моделью ПК "Универсальный механизм" в модель системы управления следует включить компоненты "In" и "Out". В нашей модели перевернутого маятника входной переменной для системы управления является угол отклонения маятника от вертикали. Соответственно нужно предусмотреть один вход в модель системы управления. В свою очередь для организации управления перевернутым маятником в нашей модели системы управления предусмотрен один выход - усилие, подаваемое на тележку.

Модель системы управления
Модель системы управления в Matlab/Simulink

 

Неуправляемое движение Управляемое движение
Неуправляемое движение Управляемое движение


Пример 2. Электромеханическая модель локомотива

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

Модель маневрового локомотива Модель электродвигателя постоянного тока с системой управления
Модель локомотива ТЭМ21 Модель электродвигателя

Инструмент UM CoSimulation

 

UM CoSimulation. Щелкните для просмотра копии экрана С помощью инструмента UM CoSimulation модель механической части экспортируется из Универсального механизма и включается в модель Matlab/Simulink. В общем случае моделирование динамики механических систем с использованием CoSimulation предполагает выполнение следующих этапов.

  – Описание модели немеханической части в среде Matlab/Simulink.

 – Включение в эту модель блока S-функции, который представляет собой модель механической системы, которая в дальнейшем будет импортирована из УМ.

 – Создание модели механической системы в программе UM Input.

 – Загрузка подготовленной модели механической части в программу UM Simulation. Формирование файлов настроек и управляющего m-файла с помощью Мастера экспорта в Matlab/Simulink для подключения этой модели в Matlab/Simulink.

 – Создание связи между UM-моделью и системой управления Matlab/Simulink.

 – Моделирование динамики сложной модели в среде Matlab/Simulink.

Модель механической системы UM, подключаемая в модель Matlab/Simulink, рассматривается как черный ящик, который по некоторому закону преобразует входные величины в выходные. При экспорте механической системы из UM в модель Matlab/Simulink на выходы механической системы назначаются переменные, которые создаются при помощи Мастера переменных. Обычно это переменные, отражающие текущую кинематику системы: координаты и скорости. Входные величины (обычно это рассчитанные в Matlab/Simulink силы) и параметры S-функции связываются с параметрами UM-модели.

Для реализации управляющих усилий со стороны системы управления в модель механической системы вводятся силы/моменты, значения или характеристики (например, коэффициент жесткости, коэффициент диссипации) которых задаются параметрами модели. Затем с помощью Мастера экспорта в Matlab/Simulink эти параметры связываются с величинами, которые являются входами S-функции.

Пример 3. Стабилизация перевернутого маятника: UM CoSimulation

Ниже представлена модель системы управления для стабилизации перевернутого маятника, разработанная для использования с инструментом UM CoSimulation. Механическая часть "спрятана" в S-функции inv_pend_cosim. Сравните данную модель с моделью, приведенной в примере 1.

Модель системы управления
Модель системы управления в Matlab/Simulink

Пример 4. Антиблокировочная система: UM CoSimulation

Антиблокировочная система (АБС, ABS) — система, предотвращающая блокировку колёс транспортного средства при торможении. Основное предназначение системы состоит в том, чтобы сократить тормозной путь, предотвратить потерю управляемости транспортного средства в процессе резкого торможения и исключить вероятность его неконтролируемого скольжения. Представленная на рисунке ниже модель двухканальной ABS определяет усилия на передних и задних колесах легкового автомобиля по известным величинам относительного проскальзывания.

S-функция abs_cosim на рисунке справа включает в себя динамическую модель легкового автомобиля ВАЗ-2109. Антиблокировочная система стремится удержать относительное проскальзывание колес равным 0.1. Относительное проскальзывание передних и задних колес по результатам численного эксперимента показано на рисунках ниже. Видно, что величина относительного проскальзывания колеблется около заданного значения.

Модель легкового автомобиля ВАЗ-2109
Модель ВАЗ-2109
Модель ABS
Модель двухканальной ABS

 

 

Проскальзывание передних колес
Проскальзывание передних колес
Проскальзывание задних колес
Проскальзывание задних колес

Инструмент UM User's Defined Routines

 

Инструмент UM User's Defined Routines позволяет пользователю подключить к механической модели UM динамически загружаемую библиотеку (DLL), написанную на любом языке программирования, который поддерживает компиляцию DLL. В рамках UM такие динамически загружаемые библиотеки называются внешними библиотеками.

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

 – для разработки собственных библиотек пользователь может использовать любую инструментальную среду и любой компилятор, которые поддерживают создание динамически загружаемых библиотек (DLL);

 – пользователю не обязательно разбираться в особенностях программирования в файле управления;

 – разработанные ранее библиотеки (DLL) подключаются к моделям в «Универсальном механизме» через визуальный интерфейс пользователя, без необходимости дальнейшего программирования.

В общем случае моделирование динамики механических систем с подключением внешних библиотек предполагает выполнение следующих этапов.

 – Разработка математической модели и реализация этой модели в виде программного кода в соответствии с принятыми соглашениями.

 – Компиляция программного кода в виде динамически загружаемой библиотеки (DLL).

 – Подключение DLL к модели механической системы с помощью Мастера связи с внешними библиотеками. Связывание входных и выходных величин модели из DLL с переменными и параметрами модели УМ.

 – Моделирование динамики получившейся системы.

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

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

Инструмент UM BlockEditor

 

Инструмент Block Editor (редактор схем) из модуля UM Control представляет собой отдельное приложение, предназначенное для описания структурных схем с помощью базовых функциональных блоков. Фактически редактор схем является аналогом пакета Simulink из программного комплекса Matlab/Simulink. Схемы, разработанные как в редакторе схем, так и в среде Matlab/Simulink на стороне Универсального механизма подключаются абсолютно одинаково. В этом смысле инструменты UM BlockEditor и UM Matlab Import в рамках ПК Универсальный механизм являются функциональными аналогами с очень похожими способами описания структурных схем и подключением к динамической модели в УМ одинаковым образом.

Рассмотрим отличия между инструментами UM Block Editor и UM Matlab Import. Во-первых, это особенности лицензирования. Для работы UM Matlab Import требуется установленный на компьютере Matlab/Simulink, который не поставляется вместе с УМ и лицензируется отдельно, что является отдельной статьей расходов. Инструмент UM Block Editor включает и средство разработки структурных схем и интерфейс их подключения к моделям в УМ. Приобретения дополнительных программных средств в данном случае не требуется.

Во-вторых, из-за особенностей реализации экспорт структурной схемы их Matlab/Simulink в УМ требует компиляции исходных кодов на C/C++ с помощью внешнего компилятора, который также нужно приобретать отдельно. Причем, разные версии Matlab/Simulink поддерживают разные версии внешних компиляторов, что на практике создает дополнительные трудности и путаницу. В качестве внешнего компилятора обычно можно использовать Microsoft Visual C нужной версии. Последние версии Matlab в качестве внешного компилятора поддерживают и бесплатную версию Microsoft Visual C Express, однако область его применение ограничена лицензионным соглашением.

Вместе с тем, возможности встроенного редактора схем существенно ограничены по сравнению с возможностями Matlab/Simulink. Редактор схем поддерживает основные и широко используемые типы блоков и его возможностей будет достаточно для большинства прикладных задач. Однако в редакторе схем отсутствуют аналоги специальных библиотек Simulink, таких как библиотека работы с нейронными сетями, библиотека поддержки нечеткой логики и т.д.

Можно рекомендовать UM Block Editor для использования начинающими исследователями и для моделирования относительно несложных структурных схем. Инструмент UM Matlab Import можно рекомендовать, во-первых, в тех ситуациях, когда возможностей встроенного редактора схем UM Block Editor уже не хватает, и, во-вторых, для профессиональных пользователей Matlab/Simulink.

istory Руководство пользователя / презентация


Руководство пользователя и презентация для этого модуля доступны на странице загрузки.