Параметрическая модель в КОМПАС-3D. Начало.
Всем привет. Я тут новенький, и еще не освоился. Так что могу нарушить некие неписанные правила, прошу не принимать близко к сердцу, я не со зла. Ладно, погнали.
Я часто работаю в САПР "Компас-3D" и "Altium Designer", я люблю красивые 3D-модельки и еще я достаточно ленив, чтобы рисовать каждую. По этой причине я обычно рисую одну параметрическую модель для объекта, имеющего разные варианты исполнения и потом ее перестраиваю через задание переменных. Например, микросхемы изготавливают в стандартных корпусах, отличающиеся в основном числом выводов, и параметризация тут экономит кучу времени. А еще, однажды я написал для друзей небольшой обзор того, как это делаю я, а теперь решил выложить сюда, может еще кого заинтересует. Это не урок, скорее описание личного опыта.
Если Вас еще не клонит в сон, то будьте готовы - там ниже примерно 10 страниц А4 нудятины и скучных картинок. И да, желательно иметь небольшой опыт работы в Компасе, на уровне знания где какие кнопки искать.
САПР "Компас-3D" имеет механизм задания параметров через переменные, и при этом неплохо ладит с математикой, что позволяет вносить изменения нажатием пары клавиш. Однако, практика показала, что многие пользователи игнорируют сочетание параметризации с другими возможностями среды, что в итоге вызывает сложности при параметризации чего-то сложнее длины болта. Так попробуем же усложнить модель?
А попробуем мы создать модель корпуса для микросхем типа QFP. У этого семейства корпусов может быть разное количество выводов, разный шаг между ними, и конечно же разные габаритные размеры. Очень удобная для демонстрации модель, можно показать метод, но не лезть в дебри.
Сначала можно построить сам пластиковый корпус, в котором смонтирован кремниевый кристалл. Так как модель планируется применять при работе в Altium Designer, то для удобства восприятия в меню "ориентация" выберем "Изометрия YZX", в таком положении плоскость, образованная осями X и Y оказывается в горизонтальном положении, Z направлена вверх. Плоскость XY является плоскостью платы для Altium Designer.
Так как сам корпус немного приподнят над плоскостью платы и стоит на выводах, мы построим вспомогательную плоскость, параллельную плоскости XY, на расстоянии 0,1 мм. в положительном направлении по оси Z, и уже от нее будем строить тело корпуса. Так как корпус квадратный, и стороны его одинаковы, можем задать длину стороны одной переменной: body_width. В построенной вспомогательной плоскости создаем эскиз, в нем чертим прямоугольник, и удобнее сделать это так, чтобы начало координат оказалось внутри него. Далее в меню "Размеры" выбираем размер от прямой до точки. Проставляем расстояние от каждой стороны прямоугольника до точки начала координат, при этом в поле "Выражение" во всех четырех случаях прописываем (body_width/2), так мы получаем для всех вариантов ориентацию относительно центральной точки и более удобную привязку модели.
Теперь нам надо задать объем корпуса, для чего выдавливаем полученный эскиз вверх на расстояние, равное (height-0.1), где height - высота всей итоговой детали над уровнем печатной платы, а -0.1 необходим для компенсации зазора под корпусом. Заготовка пластикового корпуса готова (см. рисунок 1).
Рисунок 1 - задание объема корпуса QFP и привязка переменных.
QFP без выводов - как паук без лапок, только девчонок пугать. Так построим же один вывод.
Фактически, это прямоугольная в сечении пластина, имеющая два отгиба в противоположные стороны (разогнем немного букву "S", и вот, почти оно). При грубом приближении, нам необходимы следующие параметры вывода:
pin_thickness - толщина пластины;
pin_width - ширина пластины;
foot_length - длина участка, который будет взаимодействовать с платой при пайке;
pin_pitch - расстояние между соседними выводами;
overall_width - ширина корпуса вместе с выводами;
pin_number – количество выводов корпуса.
Рисунок 2 – назначение переменных.
Все эти переменные будут появляться в списке по мере их появления при построении. Исходя из того, что вывод имеет изогнутую форму, для простоты параметризации мы создадим два эскиза, в первом - сечение проволоки вывода, это будет прямоугольник шириной pin_width и высотой pin_thickness, во втором эскизе будет профиль формовки вывода (траектория изгиба). А потом с помощью кинематической операции выдавим первый эскиз с сечением по траектории, нарисованной во втором. Просто же?
А вот есть подводные камни. Тут снова не обойтись без вспомогательных параллельных плоскостей. Их полезная фишка в том, что когда мы создаем в них эскиз, он при перестроении перемещается вместе с плоскостью и привязан к ней. Казалось бы, самое простое - это построить эскиз сечения на одной из сторон полученного выше тела, но в дальнейшем возможны ситуации, которые приведут к разрушению модели, например при создании фаски исходная плоскость может быть разрушена и будет потеряна связь объектов.
Рисунок 3 – расположение вспомогательных параллельных плоскостей.
Эскиз сечения вывода (рисунок 4а):
Как упоминалось выше, вывод в своем сечении представляет прямоугольник шириной pin_width и высотой pin_thickness. Исходя из этого можно вычислить расстояние от начала координат до сторон прямоугольника, определяющих ширину вывода, являющегося крайним на своей стороне:
(((pin_number/4-1)*pin_pitch)/2)-pin_width/2
(((pin_number/4-1)*pin_pitch)/2)+pin_width/2
И расстояние от начала координат, до сторон, определяющих нижний и верхний края указанного сечения:
(height+0.1)/2-(pin_thickness/2)
(height+0.1)/2+(pin_thickness/2)
Эскиз формовки вывода (рисунок 4б):
В изначальном варианте эскиз представляет три отрезка – участок, прилегающий непосредственно к плате, вертикальная составляющая и отвод непосредственно к корпусу. После простановки размеров выполняем скругление углов между отрезками и проставляем для них радиальный размер для избежания изменений при перестроении, так же проставляем выравнивание точек примыкания дуг скругления по вертикали/горизонтали с соответствующими объектами. Радиус скругления примем равным 0,2 мм., как наиболее часто встречающийся, и так как данный параметр будет нести в нашей модели больше эстетическую составляющую, усложнять его вычислениями не будем.
Далее используя операцию кинематического выдавливания эскиза (рисунок 4а) по траектории (рисунок 4б), результат изображен на рисунке 4в.
Рисунок 4 – эскизы для построения вывода микросхемы.
Один экземпляр вывода мы получили, заготовка корпуса у нас есть. И похоже на сегодня все, ибо обнаружил, что больше нельзя насовать блоков в пост.
Скоро тут будет ссылка на продолжение, в котором мы размножим выводы и немного облагородим модельку до состояния с превьюшки. Продолжение я выложу, даже если эту часть никто не прочтет, так как оно есть написанное, а бросать незавершенное дело нельзя.
P.S.: GrabCAD воскрес, там уже лежит эта статья целиком.
Как я понял - баянометр, это та штука, которая внизу предлагает возможные дубликаты. Так вот, пост не содержит голых жоп, эйфелевой башни и Джокера(!), которые он вменяет мне в плагиат. Думаю, имею право опубликовать.
Можете закидать критикой, или маякнуть в комментах, пригодилось данное чтиво или нет. Мне будет приятно и то и другое.