brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
prepare-print-modelExport and optimize 3D models for FDM/SLA printing including STL/3MF export, mesh integrity verification, wall thickness checking, support generation, and slicing. Use when exporting from CAD or modeling software for 3D printing, verifying STL/3MF files are printable before slicing, troubleshooting models that fail to slice correctly, optimizing part orient…
Independent GitHub snapshot · Automated classification · Original documentation governs
為加成製造匯出並最佳化 3D 模型。本技能涵蓋自 CAD/建模軟體匯出,至網格修補、可列印性分析、支撐生成與切片設定之完整流程。確保模型流形、壁厚足、方向正確以利強度與品質。
fdm、sla、sls)pla、petg、abs、standard-resin)cura、prusaslicer、orcaslicer、chitubox)以適合列印之格式匯出 3D 模型:
FDM/SLA 用: If starting from CAD (Fusion 360, SolidWorks) Export as: STL (binary) or 3MF Resolution: High (triangle count sufficient for detail) Units: mm (verify scale)
Example export settings: STL: Binary format, refinement 0.1mm 3MF: Include color/material data if using multi-material printer
預期: 以適切解析度匯出之模型檔(機械件用 0.1mm 弦容差,有機形用 0.05mm)。
失敗時: 檢查模型是否完整定義(無構造幾何)、無遺面、所有元件皆可見。
檢查網格是否流形且可印:
# Install mesh repair tools if needed
# sudo apt install meshlab admesh
# Check STL file for errors
admesh --check model.stl
# Look for:
# - Non-manifold edges: 0 (every edge connects exactly 2 faces)
# - Holes: 0
# - Backwards/inverted normals: 0
# - Degenerate facets: 0
常見問題:
預期: 報告顯示 0 錯,或錯可修。
失敗時: 自動或手動修補網格:
# Automatic repair with admesh
admesh --write-binary-stl=model_fixed.stl \
--exact \
--nearby \
--remove-unconnected \
--fill-holes \
--normal-directions \
model.stl
# Or use meshlab GUI for manual inspection/repair
meshlab model.stl
# Filters → Cleaning and Repairing → Remove Duplicate Vertices
# Filters → Cleaning and Repairing → Remove Duplicate Faces
# Filters → Normals → Re-Orient all faces coherently
若自動修補失敗,回到來源軟體修建模錯(重合頂點、開邊、重疊本體)。
驗證所擇製程之最小壁厚:
各製程之最小壁厚:
| Process | Min Wall | Recommended Min | Structural Parts |
|---|---|---|---|
| FDM (0.4mm nozzle) | 0.8mm | 1.2mm | 2.4mm+ |
| FDM (0.6mm nozzle) | 1.2mm | 1.8mm | 3.6mm+ |
| SLA (standard) | 0.4mm | 0.8mm | 2.0mm+ |
| SLA (engineering) | 0.6mm | 1.2mm | 2.5mm+ |
| SLS (nylon) | 0.7mm | 1.0mm | 2.0mm+ |
Check wall thickness visually in slicer:
For precise measurement, use CAD software:
預期: 各壁皆達所擇製程之最小厚。薄壁標記以便檢視。
失敗時: 回 CAD 加厚壁,或:
擇擺向以最佳化強度、表面與支撐用量:
擺向決策矩陣:
為強度:
為表面:
為最少支撐:
受力方向分析:
If part experiences:
- Tensile load along axis → print with layers perpendicular to axis
- Compressive load → layers can be parallel (less critical)
- Bending moment → layers perpendicular to neutral axis
- Shear → avoid layer interfaces parallel to shear direction
預期: 已擇擺向並明示為強度、表面或支撐取捨之理由。
失敗時: 若無單一擺向滿足所有需求,依序排優:功能強度→尺寸精度→表面→最少支撐。
為懸垂配置自動或手動支撐:
支撐角門檻:
支撐類型:
樹狀支撐(FDM,建議):
線性支撐(FDM,傳統):
重支撐(SLA):
介面層:
In slicer (PrusaSlicer example): Print Settings → Support material
預期: 已為超出門檻之懸垂生成支撐,預覽顯示無浮空幾何。
失敗時: 若自動支撐不足:
設製程適當之參數:
FDM 層高:
SLA 層高:
各製程關鍵參數:
FDM:
layer_height: 0.2mm
line_width: 0.4mm (= nozzle diameter)
perimeters: 3-4 (structural), 2 (cosmetic)
top_bottom_layers: 5 (0.2mm layers = 1mm solid)
infill_percentage: 20% (cosmetic), 40-60% (functional)
infill_pattern: gyroid (FDM), grid (basic)
print_speed: 50mm/s perimeter, 80mm/s infill
temperature: material-specific (see select-print-material skill)
SLA:
layer_height: 0.05mm
bottom_layers: 6-8 (strong bed adhesion)
exposure_time: material-specific (2-8s per layer)
bottom_exposure_time: 30-60s
lift_speed: 60-80mm/min
retract_speed: 150-180mm/min
預期: 設定檔以製程適當之預設配置,並依特定材料/模型需求微調。
失敗時: 若不確定參數,先用切片之「Standard Quality」預設,再迭代。
檢視切片之 G-code:
In slicer:
預覽中之警訊:
預期: 預覽顯示連續之周線、適切之填充、乾淨之移動,無顯著缺陷。
失敗時: 調整切片參數重切。常見修補:
以描述性名稱儲存切片之 G-code:
# Naming convention:
# <part_name>_<material>_<layer_height>_<profile>.gcode
# Example: bracket_petg_0.2mm_standard.gcode
# Verify G-code:
grep "^;PRINT_TIME:" model.gcode # Check estimated time
grep "^;Filament used:" model.gcode # Check material usage
head -n 50 model.gcode | grep "^M104\|^M140" # Verify temperatures
# Expected first layer temp:
# M140 S85 (bed temp for PETG)
# M104 S245 (hotend temp for PETG)
列印前查核表:
預期: G-code 檔已儲存並含中繼資料、溫度已驗證、列印時間/材料估值合理。
失敗時: 若列印時間過長(>12 小時),可考慮: