Научная статья на тему 'Особенности моделирования физических систем на основе подхода MvStudium'

Особенности моделирования физических систем на основе подхода MvStudium Текст научной статьи по специальности «Математика»

CC BY
143
17
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОДЕЛИРОВАНИЕ / СИСТЕМА. MVSTUDIUM

Аннотация научной статьи по математике, автор научной работы — Колесов Юрий Борисович

Рассмотрен подход, реализованный в системе моделирования MvStudium, к компонентному объектно-ориентированному моделированию физических систем, основанный на использовании конструкций языка Modelica для непрерывной составляющей поведения и расширения диаграммы состояний языка UME, для описания дискретной составляющей поведения. Подход показан на примере нескольких характерных для "физического" моделирования систем

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The new object-oriented technology for modeling and simulation of multi-component physical systems realized in graphical environment MvStudium is considered. For modeling continuous part of behavior Modelica's approach is used. Discrete part is described with the help of extended UML state machines. Using of the technology is illustrated by typical examples.

Текст научной работы на тему «Особенности моделирования физических систем на основе подхода MvStudium»

ситет, но разве материальные условия преподавателя сравнимы с материальными условиями сотрудника нашей корпорации?..". Найти спонсоров в нашей стране, на "наших" предприятиях INTEL, MOTOROLLA, SUN успеха не имели. Правда, нижегородское отделение фирмы INTEL выделило нам однажды деньги на организацию специальной секции "Использование компьютерных технологий в образовании". Спасибо, INTEL!

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

Интерес к моделированию, особенно к проектированию на базе моделирования, растёт во всём мире. Фактически только сейчас созрели условия для действительно широкого применения моделирования на производстве. Однако на предприятиях как среди руководителей, так и

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

Вместо заключения. Благодарю редакцию журнала НТВ за интерес к нашей конференции и предоставленную возможность опубликовать несколько докладов последней юбилейной конференции. Для публикации были отобраны доклады как "взрослые", так и "детские", студенческие.

УДК 519.7

Ю.Б. Колесов

ОСОБЕННОСТИ МОДЕЛИРОВАНИЯ ФИЗИЧЕСКИХ СИСТЕМ НА ОСНОВЕ ПОДХОДА МУ$ТийШМ

Компонентное моделирование физических систем обладает рядом особенностей, обусловленных наличием в них ненаправленных связей [1]. Основная проблема моделирования с ненаправленными связями заключается в невозможности покомпонентного анализа систем уравнений. Поэтому анализ и преобразование к вычислимой форме можно проводить только для совокупной системы уравнений всей модели в целом. Подход MvStudium к описанию непрерывной составляющей поведения физических систем практически совпадает с подходом языка Modélica [2]. Однако для описания гибридных систем в MvStudium используется расширение диаграммы состояний UML — карта поведения, которая позволяет описывать дискретные составляющие поведения более удобным и стандартным способом. Используемые элементы языка UML и отличия карты пове-

дения от диаграммы состояний подробно рассмотрены в [3]. Отметим, что использование карт поведения в моделях физических систем приводит к необходимости проведения анализа и преобразования уравнений на стадии выполнения модели (Runtime-анализ), в то время как подход Modélica предполагает выполнение этих действий на этапе компиляции. Задача Runtime-анализа была успешно решена, что позволило, например, использовать систему моделирования MvStudium 6 для разработки моделей физических систем, работающих в режиме реального времени в тренажерах.

Рассмотрим подход MvStudium на примере моделей нескольких характерных физических систем — механических и электрических. Эти примеры намеренно взяты из описания языка Modélica, чтобы показать сходство и различие подходов.

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

Вентилятор в нашей модели представляет совокупность пропеллера Р, электродвигателя постоянного тока Mи блока управления С (рис. 1).

Управляющее воздействие U и сигнал датчика угловой скорости ю можно с уверенностью считать направленными внешними переменными — входом и выходом соответственно. Если блок управления имеет резерв мощности, то управляющее напряжение V также можно считать направленным от блока управления к электромотору и полагать, что электродвигатель не влияет на блок управления. Но вот соединение электродвигателя и вентилятора через жесткий вал никак нельзя описать с помощью направленных связей: пропеллер влияет на электродвигатель, а электродвигатель влияет на пропеллер. Поэтому будем полагать, что электродвигатель и пропеллер имеют внешние переменные F типа Flange (фланец) со стереотипом "коннектор" с компонентами Phi и Т, которые имеют стереотипы "контакт" и "поток" соответственно. type Flange is -- фланец connector contact Phi: Angle; flow Т: Torque; end connector;

В этом определении типа и далее в модели мы будем использовать так называемые "разли-

Рис. 1. Компоненты вентилятора

чимые" типы, которые получаются из базового типа просто переименованием, отражающим прикладной смысл (система MvStudium не обрабатывает указания единиц измерения). type Angle is double; -- угол (рад) type Torque is double; -- момент (н*м) type Voltage is double; -- напряжение (в) type Current is double; -- ток (а) type AngularVelocity is double; -- угловая скорость (рад/с)

Тогда составной объект класса "CFan" будет иметь структуру, показанную на рис. 2. Блок управления С реализован просто как стандартный идеальный усилитель (экземпляр класса SysLib.CGain), электродвигатель M является экземпляром декларированного в проекте класса DCMotor, а пропеллер Р - экземпляром декларированного в проекте класса Propeller.

Поведение электродвигателя задается системой уравнений

9 MvStudium 6.0 - [G:\MVS_S0urce_6\Test56\FanCS\FanCS.mvb] - [Класс ■ [CFan]] |_ ЮЦХ!

Рис. 2. Структура класса CFan

Рис. 3. Модель системы управления вентилятором

Jm

d 2F.Phi

dt2

= kl ■ Ia + F.T;

La ddIa = V - k 2 dF Phi - Ra ■ Ia. dt dt

А поведение вентилятора - системой уравнений

Jp

d2F.Phi

dt2

= F.T - kp

dF.Phi;

dt

Omega =

dF.Phi

dt

Модель системы управления вентилятором представлена на рис. 3. Она включает в себя объект управления Fan — экземпляр класса CFan, простейший пропорциональный регулятор CU - экземпляр класса PRegulator и генератор синусоидального тестового сигнала Gen — экземпляр стандартного класса SysLib. CSineGenerator.

Запустив визуальную модель, откроем окно текущей совокупной системы уравнений и посмотрим, какую систему уравнений автоматически построил анализатор для этой модели (рис. 4).

¡¡¡¡¿Текущая совокупная система уравнений [_ ||ГН||Х|

N Объект Уравнение ^ск.перем.

Дифференциальные уравнения

1 Fan.M T" - '-О Fan.M.F.Phi

2 Fan.M - F.PКГ; at Fan.Omega

Э Fan.M día т ,

Формулы

4 Gen ¥ = Amplitude- s¡n[ 21 pi- pg^pj +In[tiaiPha5eJ; Gen .V

5 CU e = Xp-X; CU.e

6 CU U = KB - e; CU.U

7 Fan Fan.M.F.T = -Fan.P.F.T; Fan.M.F.T Fan.C.Y

3 Fan.С Y = К- X;

Алгебраические уравнения

9 Fan.M Ira- F.Phi" = kl- Ia+F.T; Fan.M.F.Phi"

10 Fan.M La- la' = V-k2- F.Phi'-Ra- la; Fan.M.Iar

11 Fan.P Jp- F.Phi" = F.T-kp- F.Phj'f Fan.P. F.T

Эквивалентные переменные

12 CU.U = Fan.U = Fan.C.X

13 Fan.Omega = CU.X = Fan.P.Omega = Fan.M.F.Phi' = Fan.P.F.Phi'

14 Fan.M.F.Phi" = Fan.P.F.Phi"

15 Gen.Y = ClT.Xp

1Í Fan.C.Y - Fan.M.V

17 Fan.M.F.Phi = Fan.P.F.Phi

Рис. 4. Совокупная система уравнений модели

Пакет стандартных компонентов для моделей электрических схем

Создадим пакет "Electricity", в котором определим стандартные компоненты для моделирования простейших электрических цепей: источник переменного напряжения, резистор, "земля", конденсатор, индуктивность, диод. Определим тип Current для токов, тип Voltage для напряжений и тип Pin для 'ножек" электрических компонентов:

type Voltage is double; -- напряжение (в) type Current is double; -- ток (а) type Pin is — "ножка" элемента connector contact V: Voltage; flow I: Current; end connector;

Все перечисленные элементы кроме "земли" — двухполюсники. Введем абстрактный класс ОпеРоП, который используем затем как родительский для остальных классов. Абстрактный класс не может иметь экземпляров. Определим две внешние переменные — положительную и отрицательную "ножки" "р" и "п", а также две внутренние переменные — ток через элемент I и падение напряжения на элементе V (рис. 5).

Уравнения в этом классе соответствуют уравнениям двухполюсника: V = р^-п^ I = р.1 п.1+р.1 = 0

Класс Резистор является производным от класса ОпеРоП и наследует его переменные, структуру и уравнения (рис. 6). Для задания собственного поведения резистора вводится

MvStudium 6.0 - [E:\MoflenM\Electricity\ElecMcity.mvb] - [Класс [OnePort]] -"Ю

-1 Проект Редактировать Сервис Вид Модель Окна Помощь -Ifflxl

г BLM..n^ A ¿ â & Ш Ы là l> 00 i ffl

M

в- _

Inductor

■ I Mods!

■ -J OnePort -■■> Resistor

VsourceAC Типы

■ 1 type Current ii ■■:! ' type Pin is con ■■:! ' type Voltage is Константы проек

роек ~

Л]

■ id OnePort •Параметры Él О Внешние переменные

□ n: Pin := {V=>üjl=;

□ р: Pin := -ÍV=>0jI=; □ • ® Внутренние переменнь

® I: Current := 0; — Тс ® V: Voltage := Gj — П H Константы ГЗ Функции и процедуры [=) Комментарий

Lj_i 2Í

Д. É fe -ti ¿¡Sl^^^fe.

Уравнения Интерфейс

Рис. 5. Интерфейс абстрактного класса OnePort

Рис. 6. Производный класс Resistor

параметр R (величина омического сопротивления) и дополнительное уравнение — закон Ома (рис. 6).

Обращаем внимание, что в данном случае уравнения доопределены, а не переопределены, и в случае изменения уравнений в классе OnePort изменятся и унаследованные уравнения в производном классе. Аналогичным образом определяются производные классы Capacitor и Inductor. Для конденсатора вводится параметр С - ёмкость конденсатора и доопределяется уравне-

ние конденсатора (рис. 7). Для индуктивности соответственно вводится параметр L - величина индуктивности и доопределяется уравнение индуктивности (рис. 8).

Наиболее интересным потомком класса One-Port видится идеальный диод — производный класс IdealDiod. Идеальный диод пропускает ток только в одном направлении — от положительной "ножки" к отрицательной. Поэтому класс IdealDiod должен быть гибридным с двумя состояниями, соответствующими открытому и закрытому диоду (рис. 9).

Рис. 7. Производный класс Capacitor

Рис. 8. Производный класс Inductor

Рис. 9. Карта поведения идеального диода

Рис. 10. Локальный непрерывный класс УравнОткрДиода

0! Му51:ис1шт 6.0 - [Е:\Модели\Е1ес1мс№у\Е1ес1:мс№у.туЬ] - [Локал

на) Проект Редактировать Сервис Вид Модель Окна Помощь ¡? Л

-;□;- йув^ ш [> оо ¡а

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

л

Е

Классь + Са[ + СлГО

□ -Н Ие ©

©

ЙИ Мо<

14

УравнЗакрДиода

& Параметры @ Переменные □ Константы Ц Функции и процедуры Щ) Комментарий

В ф Система уравнений

♦ У = р.У-п.У;

♦ Ж

♦ п.1+р.1 = 0; 1 = 0;

Искомые переменные

Искомые переменные мог

В

J

±1

Ура&г:^: 1ия

м

Рис. 11. Локальный непрерывный класс УравнЗакрДиода

Однако родительский класс (суперкласс) OnePort является непрерывным. Класс IdealDiod наследует интерфейс и переменные родительского класса и переопределяет стереотип класса на "гибридный". Уравнения родительского класса автоматически наследуются непрерывными локальными классами УравнОткрДиода (рис. 10) и УравнЗакрДиода (рис. 11).

Наконец, класс Ground задаёт объект с одной внешней переменной типа Pin, в которой напряжение постоянно равно нулю: p.V = 0

Модель простой электрической цепи

Воспользуемся созданными компонентами для создания модели электрической цепи переменного тока. Выберем тип проекта "блок-схема" и импортируем пакет Electricity. Далее из компонентов этого пакета соберем структурную схему, показанную на рис. 12. Связи между коннекторами изображаются жирной линией. Отметим, что заземление должно присутствовать обязательно, в противном случае совокупная система уравнений будет иметь бесконечно много решений.

Запустим визуальную модель. Анализатор уравнений по уравнениям компонентов и уравнениям связей сформирует совокупную систему уравнений и приведет ее к виду, пригодному для численного решения. В данном случае модель чисто непрерывная, и потому совокупная система уравнений в ходе вычислительного эксперимента изменяться не будет. Рассмотрим полученную систему уравнений подробнее (в таком виде она сохраняется в файл):

**** Дифференциальные уравнения ****

1 L1 d(I)/dt = I'; L1.p.I

2 C1 d(V)/dt = V'; C1.V **** Алгебраические уравнения ****

3 AC V= p.V-n.V; AC.n.V

4 R2 V = p.V-n.V; R2.p.V

5 C1 V = p.V-n.V; C1.p.V

6 R1 R*I = V; R1.I

7 L1 L*I' = V; L1.I'

8 R2 R*I = V; R2.V

9 C1 C*V' = I; C1.V' **** Формулы ****

10 R1 n.I = -p.I; R1.n.I

11 L1 n.I = -p.I; L1.n.I

Рис. 12. Модель простой электрической цепи

12 model Cl.p.I = -R1.n.I-L1.p.I; Cl.p.I

13 model R2.p.I = -Ll.n.I; R2.p.I

14 model AC.n.I = -R1.p.I; AC.n.I

15 R2 n.I = -p.I; R2.n.I

16 C1 n.I = -p.I; C1.n.I

17 AC p.I = -n.I; AC.p.I

18 model G.p.I = -AC.p.I-C1.n.I-R2.n.I; G.p.I

19 L1 V = p.V-n.V; L1.V

20 R1 V = p.V-n.V; R1.V

21 AC V = VA*sin(2*pi*F*time); AC.V

**** Эквивалентные переменные ****

22 AC.n.V = R1.p.V

23 R1.n.V = L1.p.V = C1.p.V

24 L1.n.V = R2.p.V

25 AC.p.V = G.p.V = C1.n.V = R2.n.V

26 AC.p.I = AC.I

27 R1.p.I = R1.I

28 L1.p.I = L1.I

29 R2.p.I = R2.I

30 C1.p.I = C1.I **** Константы ****

31 Gp.V = 0; G.p.V

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

Модель выпрямителя

Аналогичным образом соберём схему выпрямителя (рис. 13).

Эта модель является гибридной, и совокупная система уравнений будет формироваться заново всякий раз при изменении состояния в карте поведения диода (рис. 14).

Рассмотрим второй вариант этой модели. Выделим собственно выпрямитель в отдельный компонент-четырехполюсник (рис. 15). Тогда всю электрическую цепь можно будет представить как совокупность источника переменного напряжения, выпрямителя и нагрузки (рис. 16).

Рис. 13. Схема выпрямителя

Рис. 14. Вычислительный эксперимент с моделью выпрямителя

Рис. 15. Выпрямитель как отдельный компонент

Рис. 16. Компонентная схема источник - выпрямитель - нагрузка

В системе моделирования MvStudium 6 впервые практически реализован подход к компонентному моделированию физических систем, сочетающий сильные стороны языков Modélica и UML. Найдены технические решения, позволяющие выполнять Runtime-анализ совокупных

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

список ЛИТЕРАТУРЫ

1. Колесов Ю.Б., Сениченков Ю.Б. Моделирование систем. Динамические и гибридные системы. СПб.: БХВ. 2006. 224 с.

2. Modelica® - A Unified Object-Oriented Language for Physical Systems Modeling. Language Specification. Version 3.0. (www.modelica.org).

3. Колесов Ю.Б., Сениченков Ю.Б. Моделирование систем. Объектно-ориентированный подход. СПб.: БХВ. 2006. 192 с.

УДК 621.01-52+621.865.8

В.Г. Хомченко, Е.С. Гебель, Е.В. Солонин

оптимизационным синтез рычажного МЕХАНИЗМА IV класса с выстоем

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

Среди численных методов поиска оптимальных решений не существует универсального. Поэтому наиболее привлекательными становятся методы исследования, которые при наличии адекватной математической модели требуют минимума априорной информации о решаемой задаче, более того, позволяют по ходу решения получать такую информацию легко и просто. К таковым относится метод Монте-Карло и его модификации [1]. В основе использования метода Монте-Карло и его модификаций лежат принципы случайного поиска решения задачи, что и делает такой подход универсальным. Но платой за универсальность является определенная "слепота", и это приводит к громадным объемам вычислений даже для современных вычислительных машин, тем более что имеет место рост размерности решаемых задач (растет число фазовых координат и число конструктивных (оптимизируемых) параметров, число критериев качества, характеризующих систему).

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

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

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

Важное условие синтеза плоского рычажного механизма IV класса с выстоем по заданной циклограмме - требуемая точность выстоя выходного звена [3]. В качестве параметра, характеризующего кинематическую погрешность выстоя и точностные свойства многозвенного шарнирного механизма в целом, чаще используют угол малого размаха выходного звена механизма на интервале выстоя у1. Однако этот критерий не отражает в полной мере точностных свойств рычажных механизмов, поскольку его значение можно уменьшать простым увеличением линейного параметра. Математически строгий и универсальный критерий - относительное перемещение характерной точки выходного звена за интервал выстоя

1 = >/2 • с

(1)

Кинематическая схема шарнирного механизма IV класса

В качестве свободных параметров рассматриваются одиннадцать параметров, назначенных на этапе кинематического синтеза механизма IV

i Надоели баннеры? Вы всегда можете отключить рекламу.