Найти тему
Surface modeling

Создание модели термопистолета (строительного фена)

Оглавление

Урок по моделированию термопистолета появился в азбуке 13й версии САПР КОМПАС-3D. Потом в какой-то версии его убрали, сейчас в азбуке его нет. Считаю что модель очень интересная для учебных целей, поэтому решил переделать её с учётом нового функционала 21й версии.

Также есть интересная статья в САПР и Графике, где рассказывается об исходных условиях для построения этой модели.

Подготовка эскизов

Начнём построение модели. Создаём деталь. Строим новый эскиз на плоскости ZY.

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

Образмериваем их как на рисунке.

Запускаем команду Коническая кривая.

-2

Указываем сначала верхнюю точку левого отрезка, потом верхнюю точку правого отрезка. Произвольно располагаем третью точку (пересечения касательных), примерно как на рисунке. Устанавливаем коэффициент 0,5. Создаём операцию.

-3

Указываем размеры для точки пересечения касательных как на рисунке. Размеры отложены от начала координат.

-4

Строим вертикальный отрезок, примерно как на рисунке

-5

Выравниваем его по вертикали с верхним правым отрезком. Устанавливаем его длину 12 мм.

-6

Ставим размер 167 мм от начала координат до нижней точки отрезка.

-7

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

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

-8

Проставляем размеры как на рисунке

-9

Строим произвольную дугу по трем точкам, примерно как на рисунке.

-10

Выравниваем нижнюю точку дуги с верхней точкой короткого отрезка. Устанавливаем радиус дуги 220 мм. Устанавливаем расстояние 40 мм по горизонтали от нижней точки дуги до верхней точкой короткого отрезка.

-11

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

-12

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

Запускаем команду «Сплайн по полюсам».

-13

Строим из верхней точки короткого отрезка произвольный сплайн из 5 точек, примерно как на рисунке.

-14

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

-15

Вторую снизу точку сплайна выравниваем по горизонтали с верхней точкой короткого отрезка. Устанавливаем горизонтальный размер между этими точками 14 мм.

-16

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

-17

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

-18

Результат построений. Выходим из режима эскиза.

-19

Запускаем команду «Плоскость через ребро параллельно/перпендикулярно другой грани»

-20

Указываем плоскость ZX, затем указываем левый вертикальный отрезок.

-21

Снова указываем плоскость ZX, затем указываем правый вертикальный отрезок.

-22

Переключаемся на команду «Смещенная плоскость».

-23

Указываем плоскость ZX, вводим расстояние 145 мм. При необходимости меняем направление. Создаём объект.

-24

Запускаем команду «Точка на пересечении».

-25

Указываем плоскость ZX, затем верхнюю коническую кривую. Создаём объект.

-26

Указываем смещенную плоскость, затем верхнюю коническую кривую. Создаём объект.

-27

Создаём эскиз на левой плоскости через ребро и грань.

-28

Строим из начала координат окружность диаметром 52 мм. Выходим из режима эскиза.

-29

Создаём эскиз на плоскости ZX.

-30

Запускаем команду «Спроецировать объект».

-31

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

-32

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

Жмём правой кнопкой в свободном месте. В открывшемся контекстном меню выбираем «Нормально к...».

-33

Строим произвольную дугу.

-34

Запускаем команду «Объединить точки». Указываем начало координат и центр дуги.

-35

Переключаемся на команду «Точка на кривой».

-36

Указываем дугу и спроецированную точку.

-37

Запускаем команду Выравнивание. Указываем начало координат и края дуги. Затем указываем горизонтальную прямую для выравнивания по горизонтали.

-38

Запускаем команду «Эллипс».

-39

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

-40

Запускаем команду «Усечь кривую».

-41

Указываем верхнюю часть эллипса.

-42

Устанавливаем размер 34 мм между началом координат и нижней точкой эллипса. Выходим из режима эскиза

-43

Создаём новый эскиз на смещённой плоскости.

-44

Проецируем точку, лежащую на смещённой плоскости.

-45

Проецируем начало координат.

-46

Жмём правой кнопкой в свободном месте. В открывшемся контекстном меню выбираем «Нормально к...».

-47

Строим произвольный эллипс.

-48

Строим горизонтальную прямую, пересекающую эллипс.

-49

Усекаем верхнюю часть эллипса.

-50

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

-51

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

-52

Проставляем размеры как на рисунке.

-53

Строим эллипс из начала координат. Указываем спроецированную точку и край дуги.

-54

Усекаем нижнюю часть эллипса. Выходим из режима эскиза.

-55

Создаём эскиз на правой плоскости через ребро и грань.

-56

Строим эллипс с центром из начала координат. Указываем верхнюю точку отрезка как первую характерную точку эллипса. Вторую указываем произвольно.

-57

Проставляем размеры как на рисунке. Выходим из режима эскиза.

-58

Создаём ещё один эскиз на той же плоскости

-59

Проецируем короткий отрезок.

-60

Меняем стиль его линии на тонкую, чтобы он не отображался в режиме модели.

-61

Строим произвольный сплайн по полюсам из шести точек, который начинается с верхней точки отрезка, а заканчивается в нижней точке отрезка. Создаём операцию.

-62

Выравниваем по вертикали третью и четвертую точки.

-63

Аналогично поступаем со вторым и пятым полюсами.

-64

Первую и вторую точки выравниваем по горизонтали.

-65

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

Аналогично по горизонтали выравниваем пятый и шестой полюса.

-66

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

-67

Проставляем вертикальные размеры как на рисунке. Выходим из режима эскиза.

-68

Основные формообразующие эскизы завершены, можно приступать к созданию поверхностей.

-69

Создание поверхностей

Переключаемся на набор «Каркас и поверхности». Запускаем команду «Поверхность по сечениям».

-70

Указываем эскизы с окружностями и эллипсами слева направо. Создаём объект.

-71

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

-72

Переключаемся на команду «Поверхность выдавливания».

-73

Указываем крайний левый эскиз (Эскиз:2). Выдавливаем на расстояние 10 мм. При необходимости меняем направление. Создаём объект.

-74

Переключаемся на команду «Поверхность по траектории».

-75

Указываем нижний маленький эскиз в качестве сечения, и коническую кривую первого эскиза в качестве траектории. Выбираем тип движения сечения «Ортогонально траектории». Создаём объект.

-76

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

Запускаем команду «Сшивка поверхностей».

-77

Указываем поверхность выдавливания и поверхность по сечениям. Тело нам создавать пока не требуется. Создаём объект. Запускаем команду «Усечение поверхности».

-78

Переключаемся на режим «Усечение исходной поверхности». Указываем в дереве сшивку поверхностей. Переключаемся на секущий объект и указываем плоскость ZY. При необходимости меняем направление, чтобы затемнённая часть усечения оказалась с той же стороны от плоскости ZY, что и поверхность по траектории. Создаём объект.

-79

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

-80

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

-81

Запускаем команду «Точка на кривой».

-82

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

-83

Указываем сплайн, образующий рукоятку термопистолета. Нам нужно расположить точку в самой верхней части этой кривой, поэтому устанавливаем смещение 0 % от длины кривой. Если точка оказалась внизу, а не вверху — смените направление. Создаём объект.

Направление зависит от порядка построения кривой, одну мы строили снизу, а вторую сверху. Поэтому в первом случае верх — это 100%, а во втором 0%. Направление указывается зелёной стрелочкой.

-84

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

Снова указываем дугу. Точку нужно расположить примерно по центру, поэтому устанавливаем смещение 62%. Создаём объект.

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

-85

Указываем теперь сплайн. Устанавливаем смещение 40,5%. Создаём объект. На картинке условно показана горизонтальная линия. Надо стараться максимально к ней приблизится.

-86

Снова указываем дугу. Устанавливаем смещение 23%. Создаём объект.

-87

Указываем сплайн. Устанавливаем смещение 76%. Создаём объект.

-88

Запускаем команду «Отрезок по координатам».

-89

Кликаем по точкам как на рисунке.

-90

Строим два оставшихся отрезка.

-91

Запускаем команду «Плоскость через ребро параллельно/перпендикулярно другой грани»

-92

Переключаемся на положение плоскости «Перпендикулярно грани». Указываем плоскость ZY и верхний отрезок.

Помним про небольшое отклонение отрезков от горизонтали. Оно не позволит нам использовать режим Параллельно грани во всех случаях. Верхний отрезок горизонтальный, а остальные — нет.

-93

Аналогично строим плоскости на двух других отрезках. Выходим из команды.

-94

Создаём эскиз на верхней плоскости.

-95

Проецируем отрезок, как на рисунке.

-96

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

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

-97

Создаём эскиз на средней плоскости.

-98

Аналогично проецируем отрезок и строим сплайн по полюсам, затем накладываем на него размеры и ограничения, как на рисунке.

-99

Проделываем все те же действия на последней плоскости.

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

-100

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

-101

Запускаем команду «Точка на кривой», указываем верхний эскиз и вводим значение смещения 50%. Создаём объект.

-102

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

-103

Запускаем команду «Сплайн по точкам» и указываем построенные точки, как на рисунке. Создаём объект.

-104

Запускаем команду «Поверхность по сети кривых».

-105

Важно — не перепутайте порядок кривых в направлениях U и V, иначе в некоторых версиях может не построится продление.

Выбираем кривые и сплайн слева направо, как показано на рисунке. Переключаемся на «Направление V» - для этого кликаем там, где показано стрелкой на картинке.

-106

Указываем снизу вверх все три сплайна из эскизов, как показано на рисунке. Видим, что появился фантом поверхности, значит всё построено корректно.

-107

Теперь зададим сопряжения. Выбираем первую границу. Указываем плоскость ZY и левую кривую, как на рисунке. Устанавливаем условие «Перпендикулярность».

-108

Делаем всё тоже самое для третьей границы и правой кривой. Создаём объект.

-109

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

Запускаем команду «Продление поверхности».

-110

Указываем нижнюю кромку поверхности по сети кривых и задаём длину 26 мм. Создаём объект.

-111

Запускаем команду «Усечение поверхности».

-112

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

-113

Теперь наоборот, указываем в качестве усекаемой поверхности поверхность по траектории, а в качестве секущей — поверхность по сети кривых. Создаём объект.

-114

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

Запускаем команду «Эквидистанта поверхности».

-115

Указываем поверхность по сети кривых, устанавливаем расстояние 10 мм. При необходимости меняем направление, чтобы эквидистанта поверхности строилась наружу. Создаём объект.

-116

Запускаем команду «Продление поверхности». Указываем верхнее ребро эквистанты, задаём длину 31мм. Создаём объект.

-117

Запускаем команду «Усечение поверхности». Переключаемся на усечение исходной поверхности. Указываем в качестве усекаемой поверхности поверхность по сечениям, а в качестве секущей — эквидистанту. При необходимости меняем направление, чтобы закрашенной осталась большая часть поверхности. Создаём объект.

-118

Запускаем команду «Удалить грани».

-119

Выбираем эквидистанту. Убираем галочку «Сохранить целостность». Создаём объект.

-120

Запускаем команду «Сплайн по точкам».

-121

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

-122

Выбираем первую вершину. Указываем способ управления формой - «Сопряжением». Указываем объект сопряжения нижнее ребро поверхности по сечениям, как показано на рисунке. Устанавливаем условие «По касательной».

-123

Выбираем вторую вершину. Указываем способ управления формой - «Сопряжением». Указываем объект сопряжения левое ребро поверхности по сети кривых, как показано на рисунке. Устанавливаем условие «По касательной». Создаём объект.

-124

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

-125

Настраиваем сопряжения аналогично левой стороне. Создаём объект.

-126

Запускаем команду «Поверхность по сети кривых».

-127

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

-128

Указываем левый, затем правый сплайны.

-129

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

-130

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

-131

Выбираем вторую границу. Указываем плоскость ZY. Задаем условие «Перпендикулярно».

-132

Выбираем четвертую границу. Делаем аналогично прошлому сопряжению. Создаём объект.

-133

Запускаем команду «Сшивка поверхностей». Указываем все четыре поверхности. Тело создавать не требуется. Создаём объект.

-134

Запускаем команду «Зеркальный массив».

-135

Указываем сшитую поверхность. Затем переключаемся на плоскость.

-136

Указываем плоскость ZY. Создаём объект.

-137

Запускаем команду «Заплатка».

-138

Указываем два наружных ребра поверхности выдавливания. Создаём объект.

-139

Указываем четыре наружных ребра поверхности по сечениям. Создаём объект.

-140

Указываем два наружных ребра поверхности по траектории. Создаём объект.

-141

Твердотельное моделирование

Здесь без доработки модели с помощью твердотельного моделирования не обойтись. Сначала сделаем из набора поверхностей твёрдое тело.

Запускаем команду «Сшивка поверхностей». Указываем обе зеркальных поверхности и все три заплатки. Ставим галочку «Создать тело». Создаём объект.

-142

Переключаемся на набор «Твердотельное моделирование». Запускаем команду «Скругление».

-143

Указываем ребро заплатки, как показано на рисунке. Устанавливаем радиус 6 мм. Создаём объект.

-144

Переключаемся на способ построения «С постоянной хордой». Указываем ребро самой малой заплатки. Устанавливаем хорду 3 мм. Создаём объект.

-145

Указываем ребро пересечения рукоятки и гарды. Устанавливаем хорду 5 мм. Создаём объект.

-146

Указываем ребро пересечения ствола и гарды. Устанавливаем хорду 12 мм. Создаём объект.

-147

Запускаем команду «Оболочка».

-148

Устанавливаем толщину 2,5 мм. Указываем грань раструба пистолета. Создаём объект.

-149

Получился такой результат

-150

Попробуйте самостоятельно доделать термопистолет. Пример готовой сборки есть в папке Samples с установленным КОМПАСом.