К содержанию

РуководствоCAD/CAM, чертежи и файлы

Твердотельное или поверхностное моделирование: что выбрать для детали под ЧПУ

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

Дмитрий Волков

Инженер-механик, фрезерные станки с ЧПУ и CAM, 15 лет в отрасли

10 минут

Две концентрические окружности, изображающие CAD-модель тора, и ряд треугольников, приближающих ту же форму, как в STL
Точная геометрия CAD и её треугольное приближение в STL. Для станка это разные объекты

Кратко

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

  • Деталь из плоскостей, цилиндров, отверстий и карманов моделируют твёрдым телом. Оно замкнуто по определению, и CAM работает с ним без подготовки.
  • Поверхности нужны для форм, которые не получить выдавливанием и вращением: рельеф, лопатка, вкладыш пресс-формы, корпус свободной формы, вогнутые переходы.
  • Поверхность не имеет объёма. Чтобы по модели можно было резать или печатать, поверхности сшивают в замкнутую оболочку, и она становится телом.
  • Сетка STL приближает форму треугольниками и не хранит точную геометрию. Для механообработки её используют, только если исходной модели нет.
  • Главный дефект поверхностных моделей: щель между гранями шире допуска сшивки. Тело при этом не образуется, и CAM получает открытую оболочку.

Что такое твёрдое тело и что такое поверхность

В CAD деталь хранится как граничное представление: набор граней, рёбер и вершин. Грань здесь точная, математическая, а не набор точек. Именно так устроены современные CAD-системы, и в этом же виде модель уходит в STEP.

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

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

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

Замкнутый объём: зачем он станку и принтеру

Фрезе нужно знать, где кончается материал. Если оболочка открыта, у программы нет понятия «внутри»: куда идти и что считать заготовкой, она определить не может. Слайсеру 3D-принтера нужно то же самое, чтобы знать, где заполнять периметры. Поэтому у обоих процессов одно требование: оболочка без дыр, с однозначно определённой внешней стороной.

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

Как поверхности превращаются в тело

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

В справке КОМПАС-3D v25 это команда «Сшивка поверхностей». В ней есть поле «Точность» (максимальное расстояние между рёбрами) и опция «Создавать тело». После завершения программа проверяет замкнутость: если оболочка замкнута, получается твёрдое тело, если нет, получается тело с нарушенной целостностью. В SOLIDWORKS то же делает Knit Surface: справка прямо говорит, что при замкнутом объёме можно создать твёрдое тело (опция Create solid) или оставить поверхность. Размер щелей и допуск сшивки там смотрят через Gap Control.

Во FreeCAD сшивка идёт через «Part → Shape Builder» (команда Part Builder): режимы «Shell from faces» и «Solid from shell» собирают оболочку из выбранных граней и тело из оболочки. Для готовой формы есть ещё «Convert to Solid».

Fusion держит поверхностные и твёрдые тела в одной модели и действует по той же схеме: поверхности, сшивка, замкнутое тело.

Что нужно CAM

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

От модели CAM нужны три вещи:

  1. Замкнутый объём, чтобы отделить материал от воздуха.
  2. Грани без щелей и наложений: на щели траектория проваливается или ломается.
  3. Правильные размеры. Единицы в CAD и в программе обработки должны совпасть, иначе деталь придёт в масштабе 1,4 или 1.

Если в модели есть то, что фреза не достанет (внутренний угол с нулевым радиусом, стенка тоньше инструмента), CAM этого не исправит. Такие вещи разобраны в статье как подготовить 3D-модель для фрезеровки.

Что выбрать: таблица по задачам

ЗадачаТвёрдое телоПоверхностиСмешанный подход
Плита, крышка, кронштейн с карманами и отверстиямиОсновной способНе нужныНе нужен
Вал, фланец, шестерняОсновной способНе нужныНе нужен
Корпус с рёбрами и бобышками, где стенки прямыеОсновной способНе нужныНе нужен
Корпус с обтекаемой верхней частьюБазовые элементыВерх корпусаОсновной способ: тело плюс сшитая поверхность
Рукоятка, ручка, эргономичная формаКрепёжные отверстия, торцыЗона хватаОсновной способ
Кулачок с несложным профилемЭскиз и выдавливаниеНе нужныНе нужен
Лопатка, крыльчаткаХвостовикПеро лопаткиОсновной способ
Вкладыш пресс-формы, матрицаГабарит, плоскости разъёмаФормообразующая поверхностьОсновной способ
Рельеф, барельеф, декоративное панноРамка, основаниеРельефОбычно карта высот или сетка
Лекало, профиль по контуруЕсли профиль плоский, телоЕсли сечения меняются по длинеПо ситуации

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

Поверхности в детали, которая могла быть телом

Плюсы

  • Дают плавный переход, который не получается скруглением
  • Дают контроль над тем, как грань идёт и касается соседних граней

Минусы

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

Сетка STL: третий тип модели

Помимо тела и поверхности есть сетка. Файл STL описывает необработанную треугольную поверхность: нормаль и вершины каждого треугольника. Масштаба и единиц в нём нет, цвета и текстуры тоже, только геометрия поверхности. Подробнее о форматах в статье про STEP, STL, IGES, DXF и DWG.

У полигональной сетки есть свойство, которое важно для станка: окружность в ней превращается в многоугольник. Отклонение многоугольника от окружности считают как стрелу прогиба хорды: s = R × (1 − cos(θ/2)), где θ равен 360° / n, а n — число сторон. Для окружности радиусом 10 мм при n = 36 шаг составляет 10°, и s = 10 × (1 − cos 5°) = 10 × (1 − 0,99619) ≈ 0,038 мм. При n = 72 шаг равен 5°, и s = 10 × (1 − cos 2,5°) ≈ 0,0095 мм. Для радиуса 50 мм те же n дают 0,19 и 0,048 мм.

Радиус окружности, ммСторон в сеткеУгол стороныОтклонение от окружности, мм
103610°0,038
10725°0,0095
503610°0,19
50725°0,048

Таблица показывает, почему сетку не берут для деталей с допуском в сотые доли миллиметра: чтобы удержать их, треугольников нужно очень много, а отверстие всё равно остаётся многоугольником. О том, что делать, если у вас только STL, написано в статье как перевести STL в STEP.

Для рельефа сетка, наоборот, часто удобна. Резное панно не имеет резьб и посадок, а форма задана свободно, поэтому рельеф для фрезера нередко делают не в CAD, а картой высот: изображение, где яркость пикселя задаёт глубину. Для поля 300 × 200 мм с шагом 0,5 мм получится (300 / 0,5 + 1) × (200 / 0,5 + 1) = 601 × 401 = 241 001 точка высоты, и этого хватает для декоративной резьбы. Как на этом зарабатывают, разобрано в статье про резные панно и 3D-рельефы.

Типичные дефекты и как их найти

  • Щели между гранями. Края соседних граней не касаются друг друга. В КОМПАС-3D такая оболочка не даёт тело, программа сообщает «Сшитая поверхность не замкнута»: расстояние между открытыми рёбрами больше точности сшивки. В SOLIDWORKS щели видны в Gap Control.
  • Самопересечения. Поверхность пересекает саму себя. В команде «Заплатка» в КОМПАС-3D для этого есть опция «Проверка самопересечений».
  • Перевёрнутые нормали. В STL нормаль должна смотреть наружу, вершины перечисляют против часовой стрелки, если смотреть снаружи. Если порядок нарушен, слайсер и CAM путают внутреннюю и внешнюю сторону.
  • Нулевая толщина. Оставили поверхность, не придав ей толщину, и получили тело нулевой толщины, которого не существует физически. Команды: «Придать толщину» в КОМПАС-3D, Thicken в SOLIDWORKS.
  • Несколько тел вместо одного. После сшивки часть граней осталась отдельной оболочкой. КОМПАС-3D сообщает «После сшивки остались несвязанные между собой части».

Проверка в разных системах. Во FreeCAD команда Check Geometry (Part → Check Geometry) проверяет, корректно ли граничное представление выбранного объекта как тела, и подсвечивает ошибочные рёбра и грани. В КОМПАС-3D после сшивки смотрят значок тела в дереве построения: значок тела с нарушенной целостностью означает открытые рёбра, а выделение операции сшивки подсвечивает все сшитые рёбра. В SOLIDWORKS при сшивке нужно открыть Gap Control и проверить, что открытых пар нет.

Пример: рукоять ручного инструмента

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

Как построить рукоять

  1. 01

    Шейка и отверстие.

    Эскиз окружности и выдавливание (в КОМПАС-3D «Элемент выдавливания») дают цилиндр. Отверстие под стержень делается вырезом. Пока всё это твёрдое тело, оно замкнуто и проверять нечего.

  2. 02

    Зона хвата.

    Её форма плавно меняет сечение вдоль длины. Строим несколько эскизов-сечений и соединяем их поверхностью по сечениям (КОМПАС-3D «Поверхность по сечениям», SOLIDWORKS Lofted Surface). Если нужен плавный переход к шейке с касанием, подойдёт Boundary Surface в SOLIDWORKS: по справке она даёт касательность или непрерывность кривизны по всем сторонам и обычно лучше loft по качеству.

  3. 03

    Торцы зоны хвата.

    Открытые концы поверхности закрываем плоскими гранями или заплаткой («Заплатка» в КОМПАС-3D, Filled Surface в SOLIDWORKS).

  4. 04

    Сшивка.

    Объединяем поверхность хвата, торцы и грани шейки: «Сшивка поверхностей» с включённой опцией «Создавать тело» или Knit Surface с Create solid. Если щель больше допуска, команда сообщит об этом, и поверхности нужно подправить.

  5. 05

    Проверка.

    В дереве должно быть одно тело. Если нет, смотрим, какие рёбра остались открытыми.

  6. 06

    Мелочи.

    Скругления торцов и фаски делаем уже на теле: это быстрее и надёжнее, чем строить их поверхностями.

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

Операции в разных программах

Названия команд, которые встречаются в этой статье. Данные взяты из справки КОМПАС-3D v25, справки SOLIDWORKS 2024 и вики FreeCAD.

ОперацияSOLIDWORKSКОМПАС-3DFreeCAD
Поверхность по сечениямLofted Surface«Поверхность по сечениям»Part Loft (параметр Create solid выключен) или Surface Sections
Поверхность вращенияRevolved Surface«Поверхность вращения»Part Revolve
Поверхность по траекторииSwept Surface«Поверхность по траектории»Part Sweep
Поверхность по границам, закрыть контурBoundary Surface, Filled Surface«Заплатка»Surface Filling
Усечение поверхностиTrim Surface«Усечение поверхности»—
СшивкаKnit Surface«Сшивка поверхностей»Part Builder: Shell from faces
Тело из замкнутой оболочкиCreate solid в Knit Surface«Создавать тело» в сшивкеPart Builder: Solid from shell, «Convert to Solid»
Придать толщину поверхностиThicken«Придать толщину»нет прямого аналога, Part Thickness полой делает тело
КонтрольGap ControlПодсветка сшитых рёбер, значок тела в деревеCheck Geometry

Какая программа удобнее для вашего случая, помогут решить статьи про CAD-системы и про замену SolidWorks. Общий список материалов по теме собран в подтеме «3D-моделирование».

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

Дмитрий ВолковИнженер-механик, фрезерные станки с ЧПУ и CAM

Частые вопросы

Можно ли фрезеровать по поверхности, у которой нет объёма?

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

Что такое твердотельное моделирование простыми словами?

Это способ строить деталь как объёмное тело: рисуете эскиз, выдавливаете или вращаете его, вырезаете отверстия и карманы. Программа сама следит, чтобы оболочка оставалась замкнутой. Статья про твердотельное моделирование в словаре даёт определение подробнее.

Чем плохо отправлять в цех STL вместо STEP?

В STL нет точных поверхностей: отверстие становится многоугольником, а резьбу, плоскости и допуски CAM не распознаёт. STEP хранит точную геометрию и подходит для механообработки. STL уместен для 3D-печати и скульптурных форм.

Нужно ли учить поверхностное моделирование, если делаешь простые детали?

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

Источники

  1. Выполнение сшивки ↗ — справка КОМПАС-3D v25, АСКОН, 2026
  2. Knit Surface ↗ — справка SOLIDWORKS, Dassault Systèmes, 2024
  3. Part Builder ↗ — FreeCAD Documentation

Рисунок: Laurens van Lieshout, CC BY-SA 3.0, Wikimedia Commons

Автор

Дмитрий Волков

Инженер-механик, фрезерные станки с ЧПУ и CAM, 15 лет в отрасли

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

Все материалы автора →

Как мы готовим материалы — в редакционной политике. Нашли ошибку? Напишите нам.

В этом разделе: 3D-моделирование

Все →

Комментарии

Пока никто не написал. Задайте вопрос — автор или эксперты редакции ответят.

Написать комментарий