Автор работы: Пользователь скрыл имя, 29 Мая 2012 в 15:00, дипломная работа
Одной из ведущих отраслей современной техники является машиностроение. По уровню развития машиностроения судят о развитии производительных сил в целом.
Прогресс машиностроения в свою очередь определяется созданием новых
высокопроизводительных и надёжных машин. Решение этой важнейшей проблемы основывается на комплексном использовании результатов многих дисциплин и, в первую очередь, теории механизмов и машин.
Введение 4
1. Описание предметной области: теория механизмов и машин 5
1.1 Структура строения механизма 5
1.1.1 Общее понятие механизма 5
1.1.2 Звенья механизмов 5
1.1.3 Кинематические пары 7
1.1.4 Кинематические цепи 10
1.1.5 Виды механизмов и их структурные схемы 11
1.2Механизм и его подвижность 13
1.2.1 Структурная формула 13
1.2.2 Пассивные связи и лишние степени свободы 15
1.3 Закон образования механизмов по Ассуру 16
1.3.1.Сущность закона Ассура 16
1.3.2 Двухзвенные механизмы 17
1.3.3 Группы нулевой подвижности 17
2 Задачи кинематики механизмов и их решение 20
2.1 Теоретические основы и определения 20
2.1.1 Геометрическая модель звеньев и пар пространственного рычажного механизма 20
2.1.2 Геометрическая модель группы 22
2.1.3 Формула Чейза определения направления оси по 2-м углам 23
2.2 Решение прямой задачи о положениях механизма 24
2.2.1 Механизм как набор первичных механизмов и наслоение структурных групп 24
2.2.2 Определения величин, используемых при расчете положения группы 26
2.3 Аналитический подход к расчету положения структурной группы 28
2.3.1 Двухзвенная пространственная группа В-Сп-С 28
2.3.2 Двухзвенная плоская группа В-В-В 29
2.4 Алгоритм построения последовательности расчета положений структурных групп, составляющих механизм 30
3. Конструирование системы моделирования механизмов 31
3.1 Предварительные условия 31
3.1.1 Определение проблемы 31
3.1.2 Выработка требований к будущей программной системе 31
3.2 Проектирование архитектуры 32
3.3 Пользовательский интерфейс программы 34
3.3.1 Окно программы 34
3.3.2 Условные обозначения программы 34
Заключение 35
Литература 36
Приложение 1 37
GeomObject.cs 37
Holder.cs 37
Link.cs 38
Pair.cs 39
MechManager.cs 40
RRRGroup.cs 44
TestMech.cs 45
, где (2.6)
Теперь недостающим для вычисления точки C остаётся угол a, а точнее его косинус – с1. Вычислим косинус этого угла, воспользовавшись теоремой косинусов, для треугольника ABC с углом a:
Þ
, где
Производя вычисления по формулам (2.7), (2.6), (2.5) вычисляется вектор искомой точки C.
Для плоской структурной группы В-В-В, (рис. 2.4) задача ставится и решается точно так же, как и для группы В-Сп-С Группа является плоской, т.к. в неё входят только плоские вращательные пары. Важно, что оси всех вращательных пар строго параллельны. Легко убедиться в том, что подвижность группы равна нулю, по формуле Чебышева (1.3):
Wпл = 3×n – 2×pн = 3×2 - 2
Для решения задачи о положениях механизма, теоретически достаточно уметь решать отдельные задачи о положениях для групп, составляющих механизм, но на практике оказывается нужным установить последовательность выполнения расчетов для этих групп. Последовательность выполнения расчетов необходима для того, чтобы для каждой структурной группы из этой последовательности положение поводков и направление их осей были определены, на предыдущих этапах выполнения расчета.
В качестве примера рассмотрим механизм уборки-выпуска закрылков самолёта, приведённый на рис. 3.3 б). Этот механизм является плоским и состоит только из вращательных пар. Отсюда сразу же следует, что в его состав будут входить только структурные группы ВВВ. Механизм состоит из первичного механизма G0 и структурных групп G1, G2, G3, G4. Вычислительная схема для этого механизма представлена на рис. 3.3 a).
Задачей данной работы является разработка программной системы, предоставляющей пользователю удобные средства визуального геометрического проектирования механизмов, а так же возможностей решения проблем анализа структуры механизма, и выполнения кинематических расчётов.
При создании такой программной системы, первостепенной проблемой является проектирование инструментов и приёмов конструирования механизмов в виртуальной среде программы. Другой, не менее важной проблемой, является разработка структур данных, наиболее оптимально отражающих структуру механизмов, и обеспечивающих возможность выполнения кинематических расчетов.
Как уже говорилось в предыдущем пункте, основной проблемой при создании системы моделирования механизмов является проектирование программного инструментария для конструирования механизмов. В связи с этим, программа должна выполнять следующие функции:
При сборке модели механизма, должны использоваться следующие структурные объекты:
Перед созданием звена, должна обязательно осуществляться привязка к уже существующей кинематической паре. В свою очередь элемент какой либо пары должен присоединяться к одной из узловых точек заранее созданного звена. Для того чтобы начать создание нового механизма необходимо разрешить создание звена крепления без присоединения к паре (поскольку в механизме может не существовать ни одной пары). Это можно реализовать, как создание звена крепления вместе со сферической или вращательной парой.
Приведённый здесь список требований к программе нельзя считать полным или законченным, поскольку разработка этой программы предусматривает добавление к ней в дальнейшем новых возможностей.
Ниже на рисунке приведена диаграмма основных функциональных классов.
Потомки GeomObject:
1)Класс Holder– класс для представления неподвижной стойки.
2)Класс Link– класс для представления звена механизма.
3)Класс Pair– класс для представления кинематической пары.
4)Класс TestMech– класс для представления тестового механизма уборки-выпуска закрылков самолета.
У всех потомков переопределен метод draw() для отрисовки элемента.
2. Класс RRRGroup – класс для представления структурной группы В-В-В
3. Класс MechManager – основной функциональный класс. Он является синглтоном. Содержит все созданные пары, звенья, стойки. Управляет созданием механизма, добавления/удаления пар, звеньев, стоек в механизм.
Рис. 3.1: Диаграмма основных функциональных классов.
Важным требованием к языку и среде разработки программы моделирования механизмов является возможность использования современных библиотек и средств программирования 3-х мерной компьютерной графики, что необходимо для визуализации структурных схем механизмов. В данный момент самыми широко используемыми библиотеками для программирования 3D графики являются: OpenGL и DirectX.
При разработке программы был выбран язык программирования Visual C# при использовании библиотек OpenGL для программирования 3D графики.
При
запуске разработанной
Параметрами данного механизма являются длины всех звеньев Li , положение первичного механизма H1, дополнительная стойка H2. Также программа позволяет в режиме реального времени изменять угол поворота механизма φ, что позволит увидеть механизм в действии.
После изменения параметров механизма, необходимо нажать кнопку “Show Mechanism”, чтобы принять измененный параметры.
Рис. 3.2: Пользовательский интерфейс программы.
В данной программе были приняты следующие цветовые обозначения:
Результатом выпускной работы является программа с разработанным основным функционалом, где в качестве проверки функциональности моделируется механизм уборки-выпуска закрылков самолета.
В работе проведёно исследование предметной области – теории механизмов и машин, на основе чего были спроектированы и реализованы структуры данных, необходимые для решения задач конструирования механизмов из имеющихся звеньев и элементов кинематических пар. Затем эти структуры были расширены классами, позволяющими производить кинематические расчеты положений механизма.
Во втором параграфе была введена необходимая теория для решения задачи о положении механизма, на основе которой были изучены некоторые структурные группы с использованием аналитического подхода.
Программа была реализована на платформе .NET Framework 3.5. Для программирования была выбрана технология .NET, поскольку, на сегодняшний день, она позволяет свести временные затраты кодирования до минимума. В процессе конструирования программной системы потребовалось использование средств 3D-графики, для отображения 3-х мерных структурных схем моделей механизмов. Были использованы основные библиотеки OpenGL.
В дальнейшем планируется продолжить работу над данной программой и решить следующие важные для пользователя программы задачи:
К выпускной работе также прилагается исходный код основных функциональных классов (см. Приложение 1).