УДК 004.4
А.В. Осадчий, асп., 8 (953) 429-61-64, sander-dalahan@yandex. ru (Россия, Тула, ТулГУ),
Н.Е. Стариков, д-р техн. наук, проф., starikov [email protected] (Россия, Тула, ТулГУ)
МЕТОДИКА ИССЛЕДОВАНИЯ ДИНАМИЧЕСКИХ ПРОЦЕССОВ 3D-МОДЕЛИ МЕХАНИЗМА СТРЕЛКОВО-ПУШЕЧНОГО ВООРУЖЕНИЯ В СРЕДЕ MATLAB
Рассмотрены возможности проектирования процессов, протекающих в стрелковом оружии во время выстрела.
Ключевые слова: экспорт, импорт, трансляция, математическая модель, исследование, динамика.
Методика исследования механизмов стрелково-пушечного вооружения (СПВ) включает следующие этапы.
Этап 1. Получение из BD-модели САПР SolidWorks и Pro/Engineer исследуемого механизма математической модели в среде MatLab:
- экспорт BD-модели в xml-файл данных;
- импорт xml-файла данных в среду MatLab.
Этап 2. Доработка полученной математической модели исследуемого механизма.
Этап 3. Исследование динамики механизма.
1.1. Получение из 3D-модели САПР SolidWorks и Pro/Engineer исследуемого механизма математической модели в среде MatLab
Последовательность трансляции BD-модели в среду MatLab включает следующие процедуры:
- экспорт BD-модели САПР SolidWorks и Pro/Engineer в xml-файл данных (рис. 1);
- импорт xml-файла данных в среду MatLab (рис. 2).
Рис. 1. Экспорт 3В-модели из CAD-системы
Рис. 2. Импорт xml-файла данных в среду MatLab
1.1.1. Экспорт 3Б-модели в xml-файл данных
Для экспорта из CAD-систем SolidWorks или Pro/Engineer 3D-модели механизма в CAE-систему MatLab необходимо сохранить сборку 3D-модели в формате xml. Для версий MatLab 2008b и старше вместе с xml-файлом CAD-транслятор создаёт stl-файлы, необходимые для визуализации модели в среде MatLab.
XML-файл - текстовый файл, в котором детали исходной сборки механизма интерпретируются как тела, а сопряжения между ними - как степени свободы.
STL-файлы, создаваемые в процессе трансляции, содержат описание геометрии деталей и могут быть получены старшими версиями CAD-трансляторов, начиная с версии 3.0 (MatLab R2008b).
Экспорт 3D-модели может происходить как с раскрытием подсбо-рок, так и без их раскрытия.
Если при экспорте 3D-модели детали, объединённые в подсборку, интерпретируются в системе MatLab как одна деталь, - это экспорт 3D-модели с нераскрытием подсборок.
Если при экспорте 3D-модели детали, объединённые в подсборку, интерпретируются в системе MatLab как разные детали, - это экспорт 3D-модели с раскрытием подсборок.
Сохранение 3D-модели в среде SolidWorks отличается от сохранения 3D-модели в среде Pro/Engineer.
Для сохранения 3D-модели в xml-файл данных в системе SolidWorks необходимо вызвать пункт меню «Файл» -> «Сохранить как» и выбрать расширение файла *.xml. На рис. 3 и 4 приведен пример сборки из двух деталей - стойки и маятника, SolidWorks и полученной динамической модели в среде MatLab.
Рис. 3. SD-модель в SolidWorks
Рис. 4. Модель в MatLab
В Simulink-модели присутствуют обязательные блоки:
- RootGround (обозначает твёрдое основание, например, землю);
- env (задаёт параметры модели, такие как направление и величину силы гравитации);
- RootPart (тело нулевой массы, необходимое для создания замкнутой системы). Модель содержит два тела Body (stoika-1 и swing-1) и три типа соединений, задающие степени свободы между телами, Joint (Weld, Weldl- жесткие соединения и Revolute - вращение).
Изменить настройки трансляции в системе SolidWorks можно двумя способами. Первый способ позволяет изменять свойства трансляции из окна параметров CAD-транслятора (меню SimMechanics Link) (рис. 5). По умолчанию в системе SolidWorks параметры настроены на раскрытие под-сборок (опция «Решить свободно»)
Второй способ позволяет изменять свойства трансляции непосредственно в окне свойств компонента подсборки (рис. 6). Вкладка Solve Sub-Assemblies Using определяет, будет ли данная подсборка транслирована как одна деталь (трансляция без раскрытия) или нет. Включённая опция Flexible Settings определяет трансляцию с раскрытием подсборки. Опция Component properties определяет трансляцию согласно настройкам системы SolidWorks (окно параметров CAD-транслятора). Вкладка Assembly Tolerances определяет точность, с которой все размеры подсборки будут учтены.
Рис. 5. Окно параметров Рис. 6. Окно свойств компонента
настройки трансляции сборки (подсборки)
В Pro/Engineer, чтобы транслировать сборку, необходимо сделать следующие шаги.
1. Выбрать в меню "SimMechanics" пункт "Export xml". Откроется окно выбора папки (рис. 7) для сохранения будущего xml-файла.
2. После выбора папки в нижней части главного окна появится текстовое поле и две кнопки (рис. 8). Текстовое поле служит для ввода имени
будущего xml-файла данных, а кнопки "ok" и "cancel" - для подтверждения или отклонения действия соответственно. В системе SolidWorks процесс трансляции выглядит нагляднее и построен на интуитивно-понятном интерфейсе в отличие от того, как он реализуется в системе Pro/Engineer.
Рис. 7. Окно выбора папки для сохранения xml-файла
I Давка Фсрнаг Оправка
|<?ип1 versiort=''l. û"?>
<Physi cal Model inq>MLFile> _ □
■cfarnàtversi on> 1. Cl.2"</f[irmatver5icn>
<creaTedusirig>"5iifflechanics Translator version l.l"</createdusing> <createdFran>"solidwork5 15.2.2u</createdFran> <createtton>"ll/29Aû| 113:54:40"</created0n> <createdBy>"No formal user defined1"</createdBy> •dtiodel Naitie> "pp2 Oûû_podacha_pat r ona_MY_4Ani ш " </model Name> <subsystem> <Subsystm>
<naffle>1,PP2ûûû_podacha_pat r cna_MY_4Ani m " </name> <sTatus>""</status> <bodies> <Body>
<name> "Root part"</narae>
<status>""</status>
<mass>Q<^nass>
<mas suni ts >"k g"</)nas s uni ts >
iinertîa^O.Q.M.Q.OjO.Oi/inertiai
<i nert i aUni ts >"k gvm*2"</i nerti alni ts >
<volune>0</vcl ume>
<voluneJiits>'W'<AolLrieuiits>
<surfaceArea>Q</surfaceArea>
<surfаседгeaunits "</s urfаседг eaunit s>
<fr aires >
<Frame ref = "2"> <name>"CS0"</name> <position>û,û,û</position> <pcs i t i onOr i g i n> "V.ORLD" </pos itionOrigiru <positionRef erenceFrame>"WORLD"</positi onReferenceFrame> ^
Рис. 8. Сгенерированный xml-файл данных
1.1.2. Импорт xml-файла данных в среду MatLab
Система MatLab на основе сгенерированного xml-файла данных (рис. 8) строит динамическую модель.
Импорт xml-файла в среду MatLab осуществляется командой import_physmod (в версиях MatLab до 2008a включительно), а начиная с версии 2008b - командой mech_import.
В процессе трансляции могут возникать ошибки. CAD-транслятор по каким-либо причинам может не распознать соединение деталей и воспринять его как жёсткое соединение (Weld) - тогда вместе с xml-файлом создаётся файл ошибок. В файле ошибок указываются тела и сопряжения между ними, которые транслятор не смог правильно интерпретировать. Для исправления ошибок можно либо заменить тип сопряжения в исходной сборке BD-модели, либо заменить степени свободы между телами в динамической модели в соответствии с задачей исследования.
Импорт xml-файла в среду MatLab, начиная с версии 2008b, возможен в разных режимах: создание новой модели; обновление существующей модели или обновление одной или нескольких подсистем в существующей модели (рис. 9).
Рис. 9. Чтение xml-файла системой MatLab
При импорте xml-файла данных необходимо, чтобы stl-файлы находились в той же папке.
Таким образом, на этом этапе происходит преобразование геометрии деталей и их сопряжений из BD-моделей САПР SolidWorks или Pro/Engineer в массоинерционные характеристики и степени свободы между телами динамической модели Matlab.
1.2 Доработка полученной математической модели исследуемого механизма
Полученная динамическая модель в MatLab содержит массоинер-ционные характеристики деталей и степени свободы между телами, но не содержит действующих сил, и все необходимые силы необходимо моделировать в среде MatLab Simulink самостоятельно в соответствии с задачей исследования.
Для исследования механической системы необходимо воспользоваться библиотекой Simulink SimMechanics (рис. 10-11).
■ Actuator
Рис. 10. Блоки силового воздействия
Рис. 11. Блоки, работающие с сигналом в формате Simulink
Body Actuator - блок передачи управляющего сигнала. Body Sensor - блок для измерения параметров механических звеньев. Он присоединяется к звену, в окне настройки его параметров устанав-
ливаются измеряемые величины (сила, момент, угол, угловая скорость, угловое ускорение, линейная позиция и т.д.). Body Sensor преобразует измеренный сигнал к формату Simulink.
Constant - блок, задающий постоянный сигнал. Сигнал формата Simulink.
Gain - блок увеличения или уменьшения сигнала. На число, заданное в этом блоке, умножается сигнал, подключённый к этому блоку.
1.3. Исследование динамики механизма
Моделирование работы механизма в среде Simulink проводится в режимах прямой динамики или обратной динамики.
В режиме прямой динамики входными являются управляющие воздействия (силы, моменты), а выходными (измерения) - параметры движения: величины линейных и угловых перемещений, скорости, ускорения, время перемещений.
В режиме обратной динамики исходными являются перемещения механизмов и их элементов как функции времени. В результате моделирования определяются силы (моменты), вызвавшие перемещения.
Для трёхмерной визуализации моделируемой сборки в среде Mat-Lab необходимо, чтобы stl-файлы находились в той же папке, что и mdl-файл динамической модели.
После проведённого моделирования необходимо зафиксировать результаты работы и для этих целей в библиотеке элементов Simulink есть элементы, обеспечивающие вывод информации в числовом (Display) или графическом виде (Scope) или передачу ее как массива данных в рабочую область (To Workspace) для последующей обработки.
A.V. Osadchiy, N.E. Starikov
TECHNIQUE TO STUDY DYNAMIC PROCESSES OG 3D-MODEL OF THE MECHANISM OF SMALL ARMS AND CANNON ARMAMENT IN MATLAB
The possibilities of the design of processes in small arms during the shot are considered.
Key words: export, import, transmission, mathematical model, study the dynamics.
Получено 17.10.12