Files
kompas-plugin/plugin/skills/kompas-fdm-design/references/fdm-rules.md
T

22 KiB
Raw Blame History

Свод правил DFM для FDM-печати

Выверено 3 ревью (pi/glm-5.1, pi/kimi-k2.6, Codex). Числа для w≈0.4–0.45, h≈0.2 (сопло 0.4). Зазоры — на сторону (радиальные); диаметральный = 2×. Угол нависания — от вертикали (вертикаль=0°, горизонталь=90°); самонесущие — ≤ θ_max. Параметры w/h/θ_max — см. SKILL.md → «Калибровка». Ссылки «§N» ниже — на разделы этого файла.

1. Стенки и оболочки

  • Толщина стенки = n · w. Мин. конструктивная — 2·w (~0.8 мм); несущая — ≥3·w.
  • Маппинг стенка→периметры: нужно N периметров ⇒ стенка ≥ N·w (при w=0.45: 3 → 1.35, 4 → 1.8, 5 → 2.25 мм).
  • Не задавай толщину стенки, не кратную w (напр. 0.6 при w=0.45): слайсер оставит зазор или переэкструдирует. Прыгай на следующий кратный.
  • Caveat: n·w — для конструктивных стенок; внешняя функциональная величина (флексура, тепловой барьер, посадочный размер) важнее кратности.
  • Одиночная стенка 1·w — только декоративная. Узкий сквозной прорез — ≥2·w (~0.8 мм).

2. Нависания, полки, мосты (разделять!)

  • Самонесущие — поверхности ≤ θ_max от вертикали. Зона 45–60° (т.е. выше θ_max=45° при дефолте) — ещё печатается, но с падением качества; > θ_max существенно — поддержки → избегать редизайном.
  • 90°-полка (консоль, опора с одной стороны) НЕ печатается ни на какой длине (миф «≤6 мм» неверен — провисает с первого слоя). Любую горизонтальную полку: скос под θ_max, либо превратить в мост (две опоры), либо поддержка.
  • Мост (bridge) — пролёт между двумя опорами на одной высоте. При достаточном обдуве, h≈0.2, консервативно (для ненастроенного слайсера): PLA ~15–25 мм, PETG ~10–15 мм, ABS ~12–18 мм. Длинные прямоугольные проёмы ориентировать так, чтобы мост шёл по короткой стороне; концы — на сплошных опорах.
  • Нижнюю функциональную поверхность моста — припуск 0.2–0.3 мм на провис. Граница: величину провиса из CAD не предсказать (обдув/скорость — настройки печати).
  • Внутренние/потолочные нависания хуже наружных — потолок пазов аркой/шевроном, не плоским пролётом > 2 мм.
  • Доступ к поддержкам: окно во внутренней полости ≥8–10 мм.

3. Отверстия

  • Вертикальные (ось ∥ Z) печатаются уже номинала → увеличить диаметр модели (радиус на половину): +0.2 мм (Ø<4), +0.2–0.3 мм (Ø 4–10), +0.1–0.2 мм (Ø>10); калибровать, критичные — рассверливать.
  • Горизонтальные (ось в XY) — потолок отверстия печатается нависанием. По порядку предпочтения:
    1. Развернуть деталь так, чтобы ось отверстия стала вертикальной (∥ Z), — если это не спорит с прочностью по слоям (§«Ориентация»).
    2. Мелкое отверстие (Ø ≤ ~6 мм) — оставить круглым. Потолок — короткий мост в пару миллиметров, FDM печатает его без поддержек; круглая часть печатается уже → +0.1–0.2 мм к Ø.
    3. D-отверстие — плоский верх: хорда на высоте r·cos φ над центром превращает потолок в мост шириной 2r·sin φ, материал над хордой остаётся. Контур выреза — ЗАМКНУТЫЙ: дуга окружности снизу от одного конца хорды до другого (arc3points по точкам хорды и низу) плюс сама хорда отрезком. Дополнительный вырез поверх круглого отверстия D-формы не даёт — он только расширяет отверстие. Мост держи ≤ 5–10 мм. Мин. Ø 2 мм. Посадочные отверстия (вал, подшипник, штифт) после печати рассверливать.
  • Глухое отверстие: дно = внутренний мост → толщина дна ≥2–3 мм или купольное/ вентилируемое. Сквозные предпочтительнее.
  • Отступ от края — через остаточную перемычку: стенка между отверстием и краем ≥2–3·w (лёгкая нагрузка) / больше под крепёж.

4. Посадки и зазоры (печатная деталь ↔ печатная деталь)

Зазор на сторону (радиальный); диаметральный = 2× значения:

Посадка Зазор/сторону Примечание
Натяг (press) −0.05…0 мм (вычесть из номинала!) короткий, PLA; иначе snap-fit (§14)
Переходная/плотная 0.05–0.15 мм
Скользящая 0.15–0.20 мм PLA↔PLA; контакт ≥20 мм → 0.20; PETG +0.05
Свободная 0.25–0.35 мм >0.35/сторону — уже очень слабо
  • Знак: «натяг» = отрицательный зазор → вычесть из номинала (вал +/отверстие −). Положительное число в строке press — ошибка прочтения.
  • ABS↔ABS: +0.05/сторону. PETG: прессовые со временем «расслабляются».
  • Допуск точности (НЕ прибавлять к посадкам): общий разброс FDM — XY ±0.2 мм (±0.1 калибровано), Z хуже. Это точность изготовления, не добавка к зазору.

5. Первый слой / стол

  • Elephant foot — от притирки первого слоя (низкий Z-offset/переэкструзия; НЕ от высоты слоя). Фаска по нижним рёбрам: 0.3 × 45° (калибровано) / 0.5–1.0 × 45° (слабая калибровка).
  • Внутренние углы у основания — скругление ≥R0.5.
  • Опорная площадка: без «лезвийных» оснований; контакт хотя бы ~3 периметра. Высокие тонкие детали — интегральный фланец 1–2 мм (предпочтительнее brim).

6. Ориентация и прочность

  • Z (межслойная) прочность от XY: PLA ~40–55%, PETG ~35–50%, ABS ~20–35% (выброс). Несущую нагрузку — в XY (вдоль слоёв).
  • В абсолютных числах (нужны, чтобы посчитать запас — SKILL.md §«Ориентация: когда три требования не сходятся»): XY на разрыв PLA ~50–60 МПа, PETG ~45–50, ABS ~35–40 ⇒ межслойная PLA ~20–30, PETG ~15–25, ABS ~8–15 МПа. Порядок величины, не паспорт конкретного филамента.
  • Z-сжатие допустимо (слои в сжатии не расслаиваются); избегать Z-растяжения и Z-среза.
  • Изгиб: слои в растяжении/сжатии, не на срез по линии слоя.
  • Z-нагрузка неизбежна → увеличить несущее сечение ~×2 относительно XY-расчёта.
  • Плоскости сопряжения — на XY-гранях, не на Z-боковинах.

7. Минимальные элементы и текст

  • Выступ/штифт/ребро — ≥1·w (≥0.5 мм); паз/щель — ≥2·w (~0.8 мм).
  • Аспект тонких выступов: высота ≤ ~4–5× базовой ширины; выше — конусность/раскос/редизайн.
  • Выпуклый текст: штрих ≥0.5 мм, высота ≥2·h (~0.4 мм), sans-serif bold.
  • Гравированный текст: штрих ≥2·w (~0.8–0.9 мм) (нужно ≥2 периметра; 0.6 мм не влезает), глубина ≥2·h (~0.4 мм). (pt не используем — геометрия в мм.)
  • Штрих задаёт ШРИФТ, а не кегль, и чертёжные шрифты под печать не годятся. По ГОСТ 2.304 толщина линии чертёжного шрифта равна h/14: кегль 8 даёт 0.57 мм — полторы ширины сопла, то есть ниже порога 2·w. Такой шрифт берёт порог только с кегля ~13 мм, а уверенно читаемые 3·w — с ~18 мм. У жирного гротеска штрих ≈ h/4.5 (Arial Black при кегле 10 → ~2.2 мм), и порог выполняется с запасом уже на кегле 4–5 мм. Замер: «2» кеглем 8 шрифтом GOST type A на вертикальной стенке не читается вовсе; тот же символ кеглем 10 шрифтом Arial Black читается издалека. Маркировку набирайте жирным sans-serif и проверяйте штрих, а не высоту.

8. «Лесенка» (staircase) — критерий ориентации

  • Наклонные/криволинейные поверхности дают ступени: глубина ≈ h / tan(α) (α — угол от горизонтали; не путать с θ_max, который от вертикали). Пример: α=30°, h=0.2 → ~0.35 мм.
  • Критичные (скользящие/уплотняющие/оптические) поверхности ориентировать вертикально или горизонтально. Это вход в правило ориентации (SKILL.md, правило 1).
  • Большой плоский верх без опоры коробит («подушка») — внутренние рёбра каждые ~15–20 мм или достаточная толщина верха.

9. Бобышки, инсёрты, резьба

  • Саморез/винтонарезной пилот (M3): ~Ø2.5 PLA / Ø2.6 PETG / Ø2.7 ABS; заход ≥3 мм.
  • Термоинсёрт латунный (M3): бор по даташиту (типично ~Ø4.0, ±0.05); Ø_bore = OD_инсёрта − (0…0.1) мм (≤ OD, лёгкий натяг под расплав — НЕ больше OD); стенка бобышки ≥2 мм; глубина = длина инсёрта + 0.5 мм; ставить с верхней (Z) грани (не в боковину).
  • Бобышка под винт: OD ≥ 2–3× Ø винта; не делать массивный сплошной объём (карман/оболочка).
  • Сквозное под металлический болт: радиальный зазор 0.2–0.3 → +0.4–0.6 мм к номиналу болта.
  • Резьба: не моделировать <M6 → инсёрты/саморезы. Если моделировать: ≥M6, ось вертикальная, зазор +0.1–0.2 мм, профиль крупный/трапецеидальный (не мелкий ISO — вершины-нависания).

10. Фаски vs скругления

  • Нижние (у стола) рёбра — фаска (скругление = нулевой контакт + EF).
  • Косметическое лицо кладут НА СТОЛ: первый слой на стекле/PEI даёт поверхность лучше любого верхнего слоя (там видны швы и «лесенка»). Тогда деталь и моделируют в этой ориентации — лицом к XOY, — а несимметричный рисунок (логотип, текст) зеркалят: на лицевую грань смотрят со стороны −Z. Проверка — снимок со стороны лица (model_snapshot(view=rear) для эскиза на XOY).
  • Зеркалит не только лицо на столе — зеркалит ЛЮБАЯ грань, обращённая против нормали эскиза. Надпись читается с той стороны, куда смотрит нормаль плоскости: XOY → +Z, XOZ → +Y, YOZ → −X (нормаль YOZ уходит в МИНУС X — тот же замер, что разворачивает на ней выдавливание). Значит гравировка по эскизу на YOZ, положенная на щеку с бОльшим X, выйдет зеркальной, а на щеку X=0 — правильной. Замер: цифра на щеке X=20.4 читалась зеркально при ЛЮБОМ angle; тот же эскиз, перенесённый на X=0, встал верно. Поворотом это не лечится — angle вращает, а не отражает; лечится выбором грани (или зеркальным контуром).
  • Фаска по лицевому контуру — это ещё и размер первого слоя. При 45° она сжимает силуэт лица на катет c по всему периметру, поэтому её потолок задаёт не эстетика, а то, что останется: ширина_штриха − 2c ≥ 2·w. У широкого рисунка (штрих ~10 мм) ограничением становится толщина детали — держите c ≤ ⅓·T, иначе плашка читается пирамидой. У мелкого (штрих ~1 мм) фаска почти невозможна: 0.15 мм уже съедает половину первого слоя.
  • Считайте по САМОМУ УЗКОМУ месту рисунка, а не по типичному штриху. У знака с клиньями и перемычками (логотипы, вензеля) минимум вдвое-впятеро меньше медианы. Мерить это глазом по эскизу нельзя и незачем: sketch_measure_thickness(entitiesFile, minSegment) возвращает наибольшую вписанную окружность, узкое место с координатами и таблицу «офсет c → на сколько кусков распалось лицо» — ничего не строя.
  • Узкое место зависит от СОСТОЯНИЯ контура, поэтому порядок такой: чистка → замер чищеного → катет. Чистка (minSegment) заменяет скругления острыми углами: в выпуклом углу это добавляет материал, в вогнутом — срезает, а перемычки между штрихами образованы как раз вогнутыми углами. То есть операция, которую делают РАДИ фаски, уменьшает допустимый катет — на обводке логотипа это единицы процентов, и хватает, чтобы катет перестал проходить свой же критерий. Мерьте после неё, тем же порогом, каким будете строить.
  • Норматив катета — c = stroke_min/2 − w, где stroke_min — узкое место ЧИЩЕНОГО силуэта, w — ширина нити. Он и есть решение неравенства ширина − 2c ≥ 2w: в узком месте остаётся ровно 2w, два прохода сопла. Считайте его на своём контуре — величина принадлежит рисунку. Осторожно с «эталонными» значениями из прошлых работ: катет, принятый когда-то на похожем знаке, своему же правилу обычно не удовлетворяет — он подбирался под другой рисунок, другой порог чистки или вовсе на глаз. Катет вдвое сверх норматива оставляет в узком месте одну нить экструзии: тело там сплошное, рвётся косметика лицевой грани — та самая поверхность, ради которой деталь и кладут лицом на стол. Сверьте нормативом, а не воспоминанием.
  • Верхние рёбра — скругление (R0.5–2.0); но радиус > ~½ толщины стенки сам даёт нависание > θ_max → тогда фаска/ступень.
  • Внутренние углы — всегда скругление ≥R0.5.

11. Зенковки / цековки

  • Цековка (counterbore) — большим Ø/полостью вверх (дно по телу, не мостом); глубина +0.3 мм.
  • Зенковка (countersink): конус вверх; включённый угол ≤90° → стенки ≤45° от вертикали печатается; >90° → стенки-нависание → поддержка или замена цилиндрической цековкой.

12. Заходные фаски (assembly relief)

  • На штифтах, отверстиях, инсёртах, защёлках, «ласточкиных хвостах» — заходная фаска (≈0.5–1 мм × 45° или ≈ половина зазора) против задиров при сборке.

13. Разбиение детали и сборка из печатных частей

  • Конфликт «прочная ориентация vs бесподдержечность», или крупная/коробящаяся деталь → разбить на части с самоустанавливающимися стыками (печатные штифты/шпонки/замки), склейка; стыки на XY-гранях. Зазор стыка — по §4.

14. Защёлки (snap-fit) / живой шарнир

  • Консольная защёлка: толщина балки ≈1.0–2.0 мм (функциональный размер, не привязан к кратности w; тоньше ~1 мм — хрупко), зацеп/возврат 0.3–0.8 мм, длина/толщина ≥5:1 (до 10:1), скругление в основании ≥R0.5.
  • Направление слоёв: балка гнётся в плоскости XY (слои перпендикулярны изгибу), не поперёк Z (расслоится с первого нажатия).
  • Живой шарнир — только PLA/PP-подобные, перемычка 0.3–0.5 мм; PETG/ABS не годятся.

15. Коробление (геометрия)

  • Большие плоскости (>80×80, особенно ABS): скругления углов R3–5 + рёбра/решётка снизу.
  • Радиус внешних углов: R2 (ABS) / R1 (PLA/PETG).
  • Длинные тонкие пролёты (>60 мм, <2 мм) — рёбра/косынки каждые 30–40 мм; высота ребра ≤5× базы.
  • Избегать сплошных кубов/плит → карман/оболочка + рёбра. Усадка: PLA ~0.3%, PETG ~0.5%, ABS ~0.8%.
  • Симметрия геометрии уравновешивает усадку.
  • «Мышиные уши» (Ø8–10 мм по углам) — крайняя мера адгезии (по сути brim-геометрия); предпочтительно интегральный фланец/скругления углов.
  • Граница: стол/корпус/обдув для ABS — настройки печати, вне навыка; здесь только геометрия.

16. Полые детали и гигиена модели

  • Полости: дренаж Ø3–5 мм у низшей точки + вент у высшей.
  • Допуски/зазоры — в геометрию (слайсер читает модель буквально).
  • Раздельные тела — зазор ≥0.2 мм (общая CAD-гигиена; перед выдачей объединять — рабочий цикл, шаг 5 в SKILL.md).