Расчет корпусов колонок программа. JBL Speakershop. Программное обеспечение для расчета сабвуферов и акустических систем

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

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

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

Моделирование механизмов осуществляется следующим образом:

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

2. Представьте каждый механизм в виде кооперации.

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

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

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

Хорошо структурированная кооперация обладает следующими свойствами:

· включает структурную и поведенческую составляющие;

· представляет собой четкую абстракцию некоторого взаимодействия в системе;

· редко является полностью независимой - обычно перекрывается со структурными элементами других коопераций;

· проста и легка для понимания.

Изображая кооперацию в UML, пользуйтесь следующими правилами:

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

· организуйте кооперации в соответствии с представляемыми ими классификаторами или операциями либо помещайте в пакеты, ассоциированные с системой в целом.

Профиль – набор стереотипов


РУКОВОДСТВО К ПРАКТИЧЕСКИМ ЗАНЯТИЯМ

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


Цель работы: Ознакомиться пакетом расширения Simulink для моделирования механических систем SimMechanics. Освоить основные принципы создания моделей механических систем.

Теоретическая часть:

Как правило, моделирование объектов, помимо чисто научных целей может иметь и прикладное значение. Для проектирования и анализа механических систем (например, различных кинематических цепей) давно разработан специальный физико-математический аппарат.

SimMechanics - пакет расширения системы Simulink для Физического Моделиро-вания. Его цель - техническое проектирование и моделирование механических систем (в рамках законов теоретической механики). SimMechanics позволяет моделировать поступа-тельное и вращательное движения в трех плоскостях. SimMechanics содержит набор инструментов для задания параметров звеньев (масса, моменты инерции, геометрические параметры), кинематических ограничений, локальных систем координат, способов задания и измерения движений. SimMechanics позволяет создавать модели механических систем по-добно другим Simulink-моделям в виде блок-схем. Встроенные дополнительные инстру-менты визуализации Simulink позволяют получить упрощенные изображения трехмерных механизмов как в статике, так и в динамике.

Любой механизм можно представить в виде совокупности звеньев и сопряжений. Например, звухзвенный физический маятник (см. рис. 1) представляет собой последова-тельное соединение следующих элементов:


  • неподвижного звена (земли);
  • шарнирного соединения (задающего 1-му звену одну степень свободы поворот вокруг оси z);
  • первого звена (звено представляется как абсолютное твердое тело);
  • шарнирного соединения между 1-ым и 2-ым звеньями (ограничивает степени свободы 2-го звена, оставляя также только поворот в плоскости xy );
  • второго звена.

Рис. 1 - Модель двухзвенного физического маятника


Simulink-модель такого механизма строится в аналогичной последовательности (см. рис. 2). Исходным элементом модели является звено Ground - земля. К нему присоединен элемент - Revolute (т.е. сопряжение, позволяющее следующему звену лишь поворачиваться вокруг указанной оси - z ). Далее следует непосредственно звено физического маятника Body. В качестве параметров этого звена необходимо указать массу тела, моменты инерции относительно главных центральных осей симметрии, а также координаты верхнего, нижнего конца звена и его центра масс. При этом координаты можно задавать как в глобальной системе координат (ГСК), так и в локальной системе координат (ЛСК) звена.

Аналогично, к первому звену посредством шарнирного соединения Revolute 1 присоединяется второе звено Body 1.

Чтобы звенья спроектированного механизма начали движение необходимо либо добавить вынуждающую силу, либо задать начальные условия (например, начальное отклонение или сообщить начальную скорость). Для реализации последних используется блок Initial Condition.


Рис. 2,а



Рис. 2,б


Рис. 2 - Simulink-модель двухзвенного физического маятника (а) и моделью имитации движения (б)


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

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

При моделировании данного механизма использовались следующие СК (рис. 3).

Неподвижная глобальная система координат ГСК Global находится в точке сопряжения неподвижного звена с верхним звеном (коленом маятника) . Задавать координаты точек верхнего звена маятника можно различными способами, в том числе, просто перечислив их значения в ГСК. Однако это не всегда удобно.

Верхний конец первого звена сопрягается с неподвижным звеном, и поэтому его координаты совпадают с началом ГСК. Его координаты действительно легко задать как Global . Пусть звено имеет длину L и симметрию относительно ГЦОИ. Положение центра масс (ЦМ) звена удобно задавать уже не в ГСК а, в только что созданной ЛСК, где началом координат является верхний конец звена, т.е. в ЛСК CS1. Тогда координаты ЦМ можно задать как CS1 . Аналогично нижний конец звена можно задать в ЛСК CS1 .

Несмотря на то, что начало ЛСК CS1 совпадает с началом ГСК Global, следует иметь в виду что ЛСК CS1 принадлежит верхнему звену, а значит, может поворачиваться относительно точки Global . Глобальная же система координат ГСК Global всегда неподвижна. Ее начало может и не совпадать с точкой сопряжения неподвижного звена (тем более, когда неподвижных звеньев в механизме несколько).


Рис. 3 - Системы координат двухзвенного физического маятника


Помимо визуального наблюдения за свободными (при задании начальных условиях) или вынужденными (при наложении внешней силы) можно анализировать законы движения любой точки механизма. Для этого необходимо при задании координат звеньев указать координаты интересующей точки и к выходу соответствующего Simulink-блока подключить блок-датчик (Sensor).

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


Рис. 4,а



Рис. 4,б


Рис. 4 - Модель двухзвенного физического маятника (а) для исследования законов движения его звеньев (б)


Порядок выполнения работы: Контрольные вопросы:
  1. Библиотеки пакета SimMechanics.
  2. Особенности имитационного моделирования кинематических механизмов в Simulink.
  3. Глобальные и локальные системы координат механизмов.
  4. Задание законов движение звеньям механизмов и их исследование.
Содержание отчета:

В отчете о проделанной работе должно содержаться следующая информация.

  1. Название лабораторной работы и ее цель.
  2. Краткая теоретическая справка о моделировании механических систем.
  3. Окончательная модель кривошипно-шатунного механизма.
  4. Графики движения звеньев или сопряжений.
  5. Имитационная модель механизма, представленного на рис. 10.
Литература:
  1. Артоболевский И.И. Теория механизмов. М.: Наука, 1965. - 776 с.
  2. Дьяконов В.П. MATLAB 6/6.1/6.5 + Simulink 4/5 в математике и моделировании. Пол-ное руководство пользователя. М.: СОЛОН-Пресс. - 2003. - 576 с.
  3. Материал, представленный на сайте www.exponenta.ru
  4. Справочная система MATLAB
1 Хотя физическое моделирование (в традиционном понимании) подразумевает создание некоторого физи-ческого аналога - модели объекта, с развитием компьютерных технологий это представление несколько из-меняется. При этом под физическим моделированием понимают симбиоз математического моделирования и проектирования объекта, подчиняющегося основным физическим принципам (например, законам классиче-ской механики).

2 Данное утверждение справедливо скорее наоборот, - т.е. не ГСК располагается точке сопряжения непод-вижного звена, а неподвижное звено располагается в ГСК в точке Global .

Посты, описывающие работу с другими подсистемами, в соответствии с жизненным циклом системы:
1. этот пост;
2. ;
3. ;
4. .

Для того, чтобы создать этот материал, использовалась среда МАТЛАБ версии 2013b.
===

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

Напомню, "ликбезы" - это про то, как что-то делать в MATLAB/Simulink. Предыдущие посты (доступны по ) были действительно ликбезными, но руками в них делалось не так много, как мне хотелось бы. Исправлю это.

Из этого поста мы узнаем, как создать механическую модель элерона. В конце поста можно найти видеоролик, в котором показано всё то, о чем говорится в посте. Сам же пост подойдет в качестве инструкции к действию: используя его, можно не спеша повторить всё, о чем говорится в ролике. Для этого потребуются следующие материалы:
- модель элерона в SimMechanics .
Рекомендую исследовать пост .

Моделируемая система выглядит так, как показано на рис. 1.

Рис. 1. Моделируемая система.

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

Модель которую мы хотим создать, представлена на рис. 2.

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

SimMechanics находится в разделе Simscape в библиотеке блоков Simulink.

Мы будем создавать модель заново, начав с пустого окна Simulink. Во-первых, я должен определить гравитацию.

В блоке Mechanism Configuration я задам вектор силы тяжести, направленный против оси Y. ".

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

Для этого пригодится блок World Frame.

Цилиндр может вращаться относительно одного из концов. Чтобы определить эту степень свободы, я использую блок Revolute Joint.


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

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

SimMechanics использует более сложную технологию моделирования, чем в обычный Simulink. Чтобы получить доступ к необходимым настройкам, я использую блок Solver Configuration.


Обновим диаграмму и запустим исполнение модели. Видно, что цилиндр качается, как математический маятник. (Ссылка на видео с момента, когда это видно).

Теперь добавим к модели шток с поршнем. Шток перемещается поступательно относительно цилиндра. Чтобы определить эту степень свободы я использую бок Prismatic Joint.


Элерон вращается относительно штока. Добавим блок, описывающий элерон. Скопируем блок Revolute Joint, чтобы определить еще одну степень свободы системы. Соединим эти блоки.

Чтобы задать форму элерона используется метод General Extrusion (принцип описания модели напоминает технологический процесс выдавливания; подробно описан в документации SimMechanics). Можно увидеть, как выглядят данные MATLAB, описывающие форму элерона. Эти данные используются для описания формы в нашем случае.

Известно, что элерон вращается относительно фиксированной в пространстве точки. Чтобы определить эту степень свободы, я снова использую блок Refolute Joint. Чтобы определить точку, относительно которой происходит вращение, я использую блок Rigid Transform. Это преобразование координат дает нам возможность определить связь между общей системой координат и системой координат, связанной с точкой, относительно которой вращается элерон.

Обновим диаграмму. Можно видеть (ссылка на момент в видео, в котором это можно видеть) три компонента, которые мы только что определили. Исполнив модель, мы заметим, что элерон снова качается как маятник. Видно, что элерон совершает одно колебание. Можно посмотреть на это под другим углом. Также можно изменить, например, цвет фона анимации, чтобы сделать ее нагляднее.

Итак, сейчас у нас есть механическая модель элерона. Было бы полезно наблюдать реакцию системы, например, на виртуальных осциллографах Simulink. Чтобы наблюдать угол, на который отклоняется элерон, откроем параметры блока соединения и активируем пункт position (положение - то, что мы хотим наблюдать). Теперь у блока появился дополнительный порт - выход, на который подается угол отклонения элерона. Нужно преобразовать этот физический сигнал в обычный сигнал Simulink, чтобы отобразить его на виртуальном осциллографе Simulink. Определим единицу измерения величины - градусы. Вернемся в библиотеку Simulink, найдем раздел Sinks, выберем блок виртуального осциллографа (Scope) и поместим его в модель.

Видео с записью демонстрации:

Основы PBS анализа в программном комплексе Универсальный Механизм

В презентации приведены примеры использования программного комплекса Универсальный Механизм для расчета PBS анализа.

Компьютерное моделирование взаимодействия подвижного состава, пути и упругого основания

Модуль UM Flexible Railway Track является дополнением к модулю UM Loco (модуль моделирования динамики рельсовых экипажей) и позволяет исследовать взаимодействие подвижного состава с путевой структурой при описании последней детальными пространственными моделями. Для моделирования контакта «колесо-рельс» используется специальная модель контактных сил, основанная на виртуальном взаимопроникновении профилей колеса и рельса. Для описания основания пути (мост, эстакада, туннель и т.п) могут быть использованы конечноэлементные модели, импортированные из МКЭ пакетов (ANSYS, MSC.NASTRAN).

Компьютерное моделирование взаимодействия железнодорожных экипажей и мостов

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

Формальное символическое описание механических систем

Для произвольной механической системы вводится формальное символическое описание.

Быстрые алгоритмы решения контактной задачи колесо-рельс в задачах моделирования динамики рельсовых экипажей

В презентации описывается безитерационная модель расчёта нормальной силы в контакте колесо-рельс, основанная на условии непроникновения начальной точки контакта. Представленные алгоритмы реализованы в программном комплексе моделирования динамики систем тел «Универсальны механизм».

Совместное моделирование процессов износа и накопления контактно-усталостных повреждений в железнодорожных колёсах

В презентации рассмотрены алгоритмы совместного компьютерного моделирования процессов износа и накопления контактно-усталостных повреждений в колёсах железнодорожного подвижного состава, реализованные в программном комплексе «Универсальный механизм».

Моделирование динамики упругого железнодорожного пути

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

Моделирование динамики гусеничных машин в реальном времени

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

UM VBI: опыт пользователей

О программе UM Lite

Universal Mechanism Lite - отдельный продукт Лаборатории вычислительной механики. Представляет собой упрощенный вариант основной программы и рассчитан на широкий круг пользователей: студентов, аспирантов и преподавателей ВУЗов, инженеров-конструкторов, а также просто любителей механики. Подробнее о линейке программ Лаборатории см. .

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

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

Поддерживается импорт данных из следующих CAD-программ: КОМПАС-3D, SolidWorks и Autodesk Inventor. Таким образом UM Lite можно рассматривать как недорогое приложение для анализа кинематики и динамики систем, спроектированных в упомянутых выше CAD-программах. Подробнее об импорте данных из внешних программ см. .

Программа UM Lite предоставляет пользователю набор инструментов для создания динамического объекта - системы тел - и последующего анализа его динамических, кинематических и статических свойств.

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

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

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

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

Детальное сравнение функциональности UM и UM Lite рассмотрено

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

* Персональная и ВУЗовская лицензии предназначены для только некоммерческого использования и предусматривают использование программы в научных и образовательных целях. Эти лицензии запрещают использование программы в целях получения прибыли.

    Нужно отметить, что для каждого вашего проекта в приложении “Симуляция кинематических механизмов” рекомендуется заранее сформироватьотдельную директорию. Потом,внутри этой директории, по ходу анализа, будет сформирована еще одна вспомогательная директория – так называемаяПапка симуляции (рис.4). Внутри этой папки симуляции по ходу анализа система расположит несколько вспомогательных файлов (рис.5). В общем, весь проект нужно хранить в отдельной директории.

    В самом начале проекта вам придется построить статическую сборку будущего механизма. То есть, все детали будущего механизма должны располагаться друг относительно друга так, как это имеет место в реальном механизме (рис.2). При этом, естественно, навсе детали предварительно вам придется наложитьограничения сборки (рис.6).

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

Два режима работы в процессе анализа

    После построения и сохранения статической сборки вы должны впервые перейти из режима (из приложения)Моделирование в режим (в приложение)

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

    • И в режиме Моделирование

      И в режиме Симуляция кинематических механизмов

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

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

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

Преобразование ограничений сборки в кинематические пары

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

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

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