FreeCAD — свободная система параметрического трёхмерного моделирования под лицензией LGPL. Она выросла из инженерного инструмента и сегодня закрывает полный цикл: эскиз, твёрдотельное тело, сборка, чертёж, прочностной расчёт и подготовка модели к печати или обработке. В отличие от редакторов полигональных сеток FreeCAD хранит историю построения: размеры и ограничения остаются редактируемыми, а изменение одного числа перестраивает всю деталь. Ниже — практический обзор с установкой, рабочим эскизом, сборкой, автоматизацией и разбором типичных сбоев.

Что даёт параметрический подход

Документ FreeCAD — это дерево объектов. Эскиз, выдавливание, карман, скругление и массив занимают отдельные строки, их можно править, подавлять и переставлять. Размеры связываются выражениями, поэтому толщина стенки зависит от диаметра отверстия, а не дублируется в десяти местах. После изменения габаритов геометрия пересчитывается сама — именно это отличает параметрическое моделирование от ручной правки сетки.

  • Sketcher — двумерные эскизы с геометрическими и размерными ограничениями.
  • Part Design — тела из эскизов: выдавливание, вращение, карманы, фаски, массивы.
  • Part — булевы операции над примитивами и импортированной геометрией.
  • Assembly — сборка узлов с сопряжениями, встроенная в ветку 1.x.
  • TechDraw — ассоциативные чертежи с видами, разрезами и размерами.
  • FEM и Path — расчёт методом конечных элементов и траектории для ЧПУ.

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

Установка и первый запуск

В Debian и Ubuntu пакет называется freecad, в Fedora и Arch — так же. Версия в репозиториях LTS-дистрибутивов обычно отстаёт, поэтому для новых возможностей разумнее Flatpak или официальный AppImage. Проверять версию стоит и в меню «Справка → О программе», и в консоли: так видно, какой именно бинарник запускается.

sudo apt install freecad
flatpak install flathub org.freecad.FreeCAD
flatpak run org.freecad.FreeCAD --version
./FreeCAD-*.AppImage --version

Если AppImage не стартует с сообщением о FUSE, запустите его с ключом --appimage-extract-and-run или установите libfuse2. На Wayland при проблемах с окном помогает принудительный X11: QT_QPA_PLATFORM=xcb.

Эскиз, ограничения и первое тело

Создайте новый документ, выберите верстак Part Design и нажмите «Создать тело». Внутри появится плоскость; на ней строится эскиз. Сначала рисуются грубые линии и дуги, затем накладываются ограничения: совпадение точек, горизонтальность, перпендикулярность, равенство радиусов. Размерные ограничения задают числа. Пока степеней свободы больше нуля, эскиз недоопределён и подсвечивается, а после полного набора ограничений становится зелёным.

  1. Нарисуйте замкнутый профиль и добавьте размеры длины и ширины.
  2. Задайте радиусы и положение отверстий относительно кромок.
  3. Закройте эскиз и выполните «Выдавить» на нужную толщину.
  4. Добавьте карман, фаску и скругление — каждое действие останется в дереве.

Имена и выражения лучше задавать сразу: в поле размера можно ввести Spreadsheet.Width / 2 и получить зависимость от таблицы параметров. Это удобнее, чем искать число по всему дереву.

Сборка и чертёж

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

Чертёж делается в TechDraw: выберите тело или сборку, вставьте вид, добавьте проекции и размеры. Виды ассоциативны, поэтому правка модели обновляет лист. Экспорт в PDF и SVG выполняется из меню «Файл → Экспорт»; для печати проверьте масштаб и толщину линий, иначе тонкие кромки пропадут.

Автоматизация через Python

Внутри FreeCAD работает Python, а встроенная консоль позволяет выполнять те же операции кодом и повторять их в макросе. Макрос сохраняется в ~/.local/share/FreeCAD/Macro и запускается кнопкой. Через freecadcmd тот же сценарий выполняется без графики — удобно для пакетной генерации деталей на сервере.

import FreeCAD as App
import Part

doc = App.newDocument("Plate")
plate = doc.addObject("Part::Box", "Plate")
plate.Length = 120
plate.Width = 80
plate.Height = 6
doc.recompute()
Part.export([plate], "/home/user/plate.step")
doc.saveAs("/home/user/plate.FCStd")

Скрипт запускается напрямую или через командную строку:

freecadcmd /home/user/build_plate.py
freecadcmd -c "import FreeCAD; print(FreeCAD.Version())"

В AppImage исполняемый файл без графики может называться FreeCADCmd; проверьте содержимое каталога, если команда не найдена. Экспорт в STEP и STL доступен из Python, поэтому генерацию серийных размеров легко связать с таблицей или CSV.

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

freecadcmd -c "import FreeCAD; print(FreeCAD.listModules())"

Диагностика типичных проблем

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

glxinfo -B | grep -E "OpenGL renderer|OpenGL version"
QT_QPA_PLATFORM=xcb freecad
ls ~/.local/share/FreeCAD/Mod

Ошибки в эскизе читаются в панели задач: там указано число степеней свободы и конфликтующие ограничения. После импорта STEP проверяйте, что деталь — Solid, а не набор поверхностей: иначе булевы операции дадут пустой результат. Тяжёлые массивы и скругления лучше делать последними, а промежуточные версии сохранять отдельными файлами.

Чек-лист перед серьёзным проектом

  • Зафиксируйте единицы измерения в настройках документа.
  • Заведите таблицу параметров для повторяющихся размеров.
  • Называйте операции осмысленно, а не «Pad001».
  • Сохраняйте резервную копию перед крупной перестройкой дерева.
  • Проверьте экспорт STEP в другой программе, если деталь уходит подрядчику.
  • Держите версию FreeCAD неизменной до конца проекта.

Итог

FreeCAD остаётся самым зрелым свободным пакетом для параметрического моделирования. Он не заменяет тяжёлые коммерческие среды в крупных сборочных проектах, но для инженерной детали, домашней мастерской, 3D-печати и ЧПУ возможностей более чем достаточно. Главное — освоить ограничения эскиза и дисциплину именования: тогда дерево построения остаётся читаемым, а правки не превращаются в переделку с нуля.

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 0 / 5. Количество оценок: 0

Оценок пока нет. Поставьте оценку первым.

Поделиться: Telegram ВКонтакте