Activity

Конфигурации в SolidWorks

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

Заметку посвящу демонстрации работы с конфигурациями детали. Конфигурации – это эффективный инструмент для унификации проектирования. Не поняв и не овладев им, проектирование превращается в долгую и рутинную работу.

В качестве примера (только для того, чтобы понять смысл конфигураций) рассмотрим простейшую деталь – сервомашинку.

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

Рис. 1

При построении буду отталкиваться от них.
Для построения не хватает высоты корпуса (без выступа редуктора), поэтому введу еще один размер «G»:

Рис. 2

Теперь, собственно, создаем деталь «Сервомашинка».

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

Так же сервы имеют разные формы выступов редукторов. Сделал двух типов бобышки «редуктор1» и совместно «Редуктор1»+«редуктор2».

У больших серв бывают уголки жесткости ушей - делаю бобышку «Уголок уха».

Все строим с произвольными размерами. Размерам, необходимым для точного определения сервы, присваиваем понятные имена (чтобы потом не запутаться).
Я присвоил такие имена, как: A, B, C, D, E, F, G (в соответствии с рис. 2), «Толщина ушей», «Диаметр отвертий», «Между отв по длине», «Между отв на ухе», «Диаметр редуктора», «Смещение редуктора», «Диаметр вала». Так же задал скругление граней и фаску ушей.

Остановлюсь на важном моменте, таком как определенность элементов:
Приучайте себя не допускать неопределенностей при проектировании. Тем более, что SW позволяет это удобно отслеживать. Неопределенные элементы эскиза отображаются синим цветом, а определенные черным. Так же в древе построения, если эскиз не определен, то он помечается значком (-) перед названием эскиза. Не надо пользоваться такой «халявой» как «зафиксировать элемент», не сложно добавить размер, уравнение или взаимосвязь с другими элементами эскиза (или других эскизов), чтобы все было определенным. В этом случае при изменениях детали все останется на «своих местах». Почему я остановился на данном аспекте, вроде бы не относящемся к нашей теме?! Да потому, что глядя на обсуждения на форуме, тут и там вижу всеобщую «синеву»! Оставляя неопределенные элементы – обрекаете себя на возможную «непонятную изощренную деформацию детали» в случае ее изменения.

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

Делая операцию Погасить/Высветить (не путать со скрыть/отобразить) с такими элементами как «Отверстия», «Вырез отверстий», «Двойные отверстия», «Редуктор2» и «Уголок уха», можно получать сервы разных типов.


Вроде бы все готово! Приступим к конфигурациям:

На данный момент у нас есть единственная конфигурация «По умолчанию»:

Рис. 3

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

Для описания конфигурирования я взял наугад пять серв из разных весовых категорий:
2-х гаммовую HK-282A, 9-ти граммовую HXT900, 12-ти граммовую HK-922MG, 32-х граммовую Corona DS339HV и 62-х граммовую Hitec HS-7985MG.

Есть разные способы создания конфигураций, я опишу наиболее часто используемый мною. Раз отличительные параметры серв удобно представлять в табличном виде, то создаю таблицу конфигураций. В главном меню Вставка->Таблицы->Таблица параметров.

Рис. 4

SW предложит разные способы создания таблицы. Мы оставляем «Авто-создать» и соглашаемся (зеленая галочка). Солид предложит выбрать из уже имеющихся размеров те, которые мы хотим добавить в таблицу. Выбираем все, кроме «D2@Фаска ушей» (угол фаски, пусть останется для всех конфигураций 45) и жмем ОК.

Рис. 5

Перед нами возникнет экселевская таблица (ADO-технология) в столбцах которой будут выведены наши размеры.

Рис. 6

Мне больше по душе редактировать таблицу напрямую в эксель, поэтому закрываем ее (кликаем по любому свободному месту).
В дереве конфигураций появилась наша таблица. Щелкая по ней правой кнопкой, выбираем «Редактировать в новом окне»

Рис. 7

Предложат добавить ряды и столбцы – отказываемся (отмена). Автоматом запустится эксель и откроется в нем наша таблица. Работать с ней можно как с любой экселевской таблицей, с тем лишь ограничением, что первый столбец (А) – должен оставаться столбцом названий конфигураций, а вторая строчка – перечнем параметров. Ячейку А1 также не трогаем.

По желанию (для удобства) меняем в ней местами столбцы и их ширину. К примеру, удобнее так:

Рис. 8

Строка 3 – это значения параметров для конфигурации по умолчанию.

Теперь добавим новые конфигурации:
В первом столбце указываем название. Параметры А-F данные с сайта. Точных данных по остальным параметрам у меня нет, поэтому заполняю их «условно от фонаря», а именно:
G=C-число, где число – высота редуктора (может быть разным для разных серв)
Между отв по длине = (B+E)/2 , отверстие по середине уха
Между отв на ухе = D/2
Смещение редуктора = (B-D)/2
Диаметр редуктора = 0,8*D, а для мелкой сервы =D
Остальные задаю руками (интуитивно на глазок).

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

Получилось следующее:

Рис. 9

Если какие то поля оставить пустыми, то они заполнятся значениями по умолчанию.

Теперь просто закрываем эксель (сохранять не обязательно).
И… Конфигурации созданы, о чем свидетельствует сообщение:

Рис. 10

Жмем ОК.

Теперь нужно настроить погашение/высвечивание операций для наших конфигураций.

Это можно сделать сразу для всех наших элементов и конфигураций выделив в древе построения интересующие элементы и в контекстном меню выбрать пункт «Свойства конфигурации»

Рис. 11

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

Рис. 12

Жмем ОК.

Теперь, двойным кликом по имени конфигурации (в древе конфигураций) можно выбирать нужную нам серву.

Рис. 13

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

Рис. 14

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

Или, например, у сервы HXT900 синий корпус, а у других темно-серый.
Добавляем в таблицу параметр «цвет» и задаем его значения (код RGB ).

Рис. 15

Теперь эта серва синяя, а остальные остались темно-серые:

Рис. 16

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

И т.д…. Проще говоря, теперь можно легко расширять «линейку» серв, просто в таблице параметров добавляя строчки (сколько угодно), в первом поле задавать имя сервы, а в остальных параметры ее характеризующие.

Ой! Извиняюсь!.. Описываю всякие непринципиальные параметры наподобие цвета, а про ключевой забыл!.. Вес серв не задал!!! 😃
Ну так зададим:

Заходим в таблицу, добавляем параметр (столбец) $SW-MASS. Можно добавить и координаты центра масс, но, по-моему, в данном случае это излишне. Если его не задавать, то солид посчитает плотность детали равномерной и, исходя из этого, определит центр масс.

Рис. 17

Теперь можно вставлять деталь «Сервомашинка» в любую сборку. И указывать какую конфигурацию применить.

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

«Изгаляться» можно как угодно, даже, к примеру, создать массив из серв и каждому элементу массива задать свою конфигурацию 😁

P.S. На этот раз, все сделал в SW2010, дабы большинство могло открыть. Более ранней версии у меня нет.… И еще, на такие вопросы как «бобышку можно было строить по другому», или «Твоя деталь не подходит для такой-то сервы» реагировать не буду. Как уже говорил – цель заметки показать что такое конфигурация, а не как построить серву.

Серва.rar

Связи и уравнения в SolidWorks

Цель данной заметки – дать общие представления по применению уравнений и связей в SW.

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

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

Для примера я выбрал произвольный несимметричный S-образный профиль из справочника авиационных профилей
В приведенном примере это Clark-YH-20% (на 131 станице). Процент утолщения мы впоследствии зададим как глобальную переменную.

Рис.1

Для более простых, например симметричных профилей, построение упрощается.

Итак, приступим:

Создаем деталь, нарекаем ее, к примеру, «шаблон крыла».
Задаем глобальные переменные, В нашем случае это хорда и утолщение. Они задаются как уравнения, читаем хелп, а именно:
_-----------------------------------
Чтобы отредактировать уравнения:

  1. Выполните одно из следующих действий.
    • Нажмите кнопку Уравнения на панели инструментов Инструменты…
    • Выберите Инструменты, Уравнения.
    • Нажмите правой кнопкой мыши на папку Уравнения в дереве конструирования FeatureManager и выберите Редактировать уравнение.
  2. В диалоговом окне Уравнения выберите параметр Редактировать все.
  3. В диалоговом окне Редактировать уравнения отредактируйте текст одного или нескольких уравнений. При редактировании помните следующее:
    • Каждое уравнение должно располагаться на отдельной строчке.
    • Имена размеров должны быть заключены в кавычки.
    • Расчет уравнений выполняется слева направо (то есть размер слева управляется значением справа).
    • Уравнения решаются в порядке их появления в списке уравнений. Можно также копировать и вставлять уравнения в этом диалоговом окне для изменения их последовательности, если необходимо.
    • Можно добавить комментарии к уравнениям для записи замысла проекта.
    ------------------------------------_
    Добавлю еще, что дробные числа пишутся через десятичную точку, а не запятую! Следите за этим, иначе (не зная) придется долго ломать голову, где ошибка в уравнении!..

    Рис.2

Значения можно задать любые, но для удобства хорду задал 100, т.к. ассоциируется со 100%, а утолщение как в выбранном шаблоне 20%.
Обратите внимание, что получились безразмерные переменные, значения которых можно использовать далее как глобальные параметры.

Теперь, собственно, сам эскиз:
В плоскости «Справа» создаем эскиз «Профиль корневой». В нем из начала координат рисуем горизонтальную вспомогательную прямую (хорду) произвольной длины. Задаем ей размер. В окне изменения размера в выпадающем списке выбираем «Значение связи».

Рис.3

Далее из выпадающего списка имен выбираем хорду.

Рис.4

Тычем ОК. Все! Теперь этот размер связан с нашей глобальной переменной. Красный значок перед значением размера указывает на эту связь.

В нашем профиле 23 пары опорных точек (не считая точки носика). Поэтому рисуем 23 вертикальных (пока никак не привязанных) вспомогательных отрезка. Конечно же рисуем один, а остальные просто копируем. Концы этих отрезков будут опорными точками (верхние – Yв, нижние - Yн). Так как в нашем случае ни верхняя ни нижняя граница контура не пересекают линию хорды, то все отрезки должны пересечь ее. Если бы мы, к примеру, выбрали профиль FX60-100/126/, то часть отрезков пересекала бы линию хорды, а часть располагалась бы выше. Это обусловлено тем, что размер – строго неотрицательная величина!

Т.к. в нашем профиле при X=1 Yв и Yн не равны, то для замыкания контура профиля у последнего отрезка снимаем галочку вспомогательной геометрии. Это будет задняя кромка профиля.

Рис. 5

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

Рис. 6

На данном этапе, важным являются имена размеров, а не их значения, поэтому размеры проставляем строго по очереди от первого отрезка до последнего. В этом случае автоматически присвоенные имена будут такие:
Расстояние до первого отрезка - D1@Профиль корневой
.
.
.
Расстояние до последнего (23-го) отрезка - D23@Профиль корневой.

Данные размеры будут ни чем иным, как Х опорных точек.

Далее, также, по аналогии строго последовательно проставляем размеры от концов отрезков до линии хорды.

Рис.7

Все необходимые размеры мы задали. Получили:
Х координаты - это D1…D23
Yв координаты – это D24…D46
Yн координаты – это D47…D69

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

Теперь нужно их связать уравнением. Делать это можно вручную, например двойным кликом по размеру D1 вызываем окно изменения размера. В нем в выпадающем списке выбираем «Добавить уравнение».

Рис. 8

В появившемся окне «добавить уравнение» в поле ввода можно задать любую формулу с любыми переменными/константами. Причем имена размеров можно не набирать, а просто кликать по нужному размеру, будь он на этом эскизе или в любом другом месте…

Рис. 9

В нашем случае нам надо, чтобы выбранный размер “D1@Профиль корневой” был равен 0,0025 от Хорды. Так и пишем, 0.0025* и кликаем в «Хорда корневая» в глобальных переменных. Жмем два раза ОК и все! Уравнение задано!

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

Т.к. мы хотим иметь возможность управлять утолщением, то для размеров Yв и Yн уравнения будут другого типа. Мы используем исходную таблицу для профиля с утолщением в 20%, поэтому вводим масштабирующий коэффициент (наше утолщение/20).
Получим, к примеру для D24:
“D24@Профиль корневой” = 0.0142*“Хорда корневая”*“Утолщение корневой”/20

Так и дальше можно задать уравнения всех размеров, если не лень, конечно же!.. Но мне лень! Поэтому делаем проще и удобнее!

Выходим из эскиза. В дереве конструирования правой кнопкой кликаем на «Уравнения»->Редактировать уравнения. В появившемся окне жмем «Редактировать все».
Появится окно:

Рис. 10

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

Как видите, в нем уже присутствует заданное нами вручную уравнение расстояния первого отрезка от носика (“D1@Профиль корневой” = 0.0025*“Хорда корневая”).

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

Сворачиваем на некоторое время SolidWorks.

Создаем экселевский файл. Вставляем в него данные из выбранной нами таблицы справочника. Эту процедуру описывать не буду – все умеем пользоваться офисом и такие операции как вставка данных и «заменить все» (дабы сменить запятые на точки и избавиться от отрицательных значений) занимают в сумме не больше минуты…

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

Рис. 11

Копируем их. Возвращаемся в покинутое нами ранее окно SW «Редактировать все». Вставляем (Ctrl+V).

Рис. 12

Дважды жмем ОК. Все заданные нами уравнения вступают в силу, соответственно все опорные точки определены на своих местах:

Рис. 13

Ну и последний штрих. По нашим точкам строим сплайн.

Рис. 14

Вот, в общем-то и все готово!

Что же мы получили?! Меняя всего на всего два параметра

Рис. 15
получаем эскиз профиля с заданным значением хорды и утолщения.

К примеру:

Рис. 16


Рис. 17

Ради самопроверки, попробуйте задать значения утолщений соответствующие приведенным вариантам из справочника и убедитесь, что все параметры будут соответствовать табличным! )))

Ну и напоследок приведу пример того, что еще можно сделать с получившимся шаблоном:

Ну, например, изменим профиль?! Я умышленно изначально выбрал из вышеозвученного справочника профиль с максимальным количеством опорных точек (23 пары), т.к. что-то удалить всегда легче и быстрее чем добавить.

Например, мне нужен профиль СУ-26 из того же справочника.

Засекаю время (19:58).

Делаю:
Дублирую файл детали, обзываю экземпляр «шаблон СУ-26»
В нем, удаляю все уравнения, кроме первых двух.
Т.к. в таблице профиля СУ-26 (я взял 18% на стр. 81) 20 пар опорных точек, то в эскизе удаляю сплайн и 21,22,23 отрезки (соглашаюсь удалить связные с ними размеры). У 20-го (последнего) отрезка снимаю галочку «вспомогательная геометрия».
Копирую из справочника таблицу в текстовый документ «СУ-26-18». В нем делаю заменить все запятые на точки и минусы на ничего.
В нашем экселевском файле копирую все уравнения на другой лист «СУ-26-18». Вставляю в него данные из подготовленного на предыдущем этапе текстового файла. Удаляю девять лишних строк. В двух ячейках меняю «20» на «18» (табличное утолщение).
Копирую получившийся столбец G в уравнения.
Строю сплайн по обновленным точкам.
Все! Профиль СУ-26 готов!..
Текущее время 20:02. (конечно же, сначала перестроил и засек время, а потом описал действия:))

Итого за четыре минуты (без предварительной тренировки, да еще и на тормозящем ноутбуке) наш шаблон профиля превратился в шаблон СУ-26!


Рис. 18.


Рис. 19

Еще раз упомяну, что я не сторонник использования сплайнов, да и построение симметричного профиля проще, чем в приведенном примере с СУ-26. Так же, раздувать как тут количество уравнений в проекте не рекомендую. Данная заметка написана исключительно для демонстрации работы со связями и уравнениями!

Искренне надеюсь , что изложенные принципы будут полезны для читателей!

P.S. Все необходимые исходники во вложении. Кому интересно - смотрите…

Уравнения и связи.rar