SolidWorks 草圖、零件建模與方程式驅動設計
概述
SolidWorks 的零件建模為 「草圖 → 特徵」二階段結構。草圖一旦偏差,後續再高階的特徵也無法修復。
反之,在 約束妥善的草圖 之上,僅用 Extrude、Revolve、Sweep、Loft 等基本特徵就能完成多數機械零件的建模。
本文件整理草圖狀態管理、主要特徵指令,以及串連尺寸間關係式(Equation、Global Variable)把設計意圖(Design Intent)寫入檔案的方法。
1. 草圖狀態與色彩規則
草圖元素會依約束與尺寸狀態以不同顏色顯示。
在實務上,以藍色狀態收尾草圖等於埋了一顆「之後會爆的炸彈」。
| 色彩 | 意義 | 處置 |
|---|---|---|
| 藍色 | Under Defined | 追加約束或尺寸 |
| 黑色 | Fully Defined | 理想的收尾狀態 |
| 紅色 | Over Defined | 移除衝突的約束 |
| 粉紅 | Not Solved | 重新定義關係 |
| 黃色 | Dangling | 參考圖元遺失 — 重新附著或刪除 |
| 棕色 | Invalid Solution | 改選反向解(solution) |
提示: 草圖 務必以黑色(Fully Defined)收尾。藍色草圖會在非預期狀況下被拖動,是 Rebuild 錯誤最常見的來源。
2. 幾何約束(Geometric Relations)
標準約束清單如下。
- Horizontal / Vertical
- Coincident(點-點、點-線一致)
- Collinear(同直線)
- Perpendicular / Parallel
- Tangent(相切)
- Concentric(同心)
- Equal(長度、半徑相等)
- Midpoint(中點)
- Merge(點合併)
- Symmetric(以中心線為基準對稱)
- Fix(固定) — 盡量避免
- Intersection / Coradial
提示: 約束先於尺寸 追加。約束充足後,尺寸數量自然會降到最少。
提示: 在 Display/Delete Relations 對話框將篩選切至 Dangling,即可 只列出參考已斷開的約束。是修整匯入草圖的必備工具。
注意: Fix 約束 等同把圖元釘在全域座標上,原點移動或特徵重排時容易崩壞。原則上應以 約束組合 定義位置來取代 Fix。
3. Smart Dimension 運用
- 以單一指令自動判定線性/角度/半徑/直徑。
- 兩點 → 線性、兩線 → 角度、單一圓 → 直徑尺寸。
- 於 Modify 對話框輸入
=進入方程式模式 → 可參照 Global Variable 或其他尺寸。 - 拖曳數值旁的微調旋鈕會即時反映數值,便於驗證設計意圖。
提示: 若圖面需要 mm/inch 並列標示,請於 Tools → Options → Document Properties → Dimensions → Dual Dimensions 設定 Primary/Secondary 單位。
4. 草圖輔助工具
- Sketch Picture:將 PDF 截圖或手繪置於平面上,再以 Auto Trace(Professional 以上)把外輪廓自動轉為草圖。
- Convert Entities(建議快捷鍵
Ctrl+E):將邊線、草圖投影到目前平面。自動附加 On Edge 約束。 - Offset Entities(建議
Ctrl+Shift+O):將圖元以一定距離偏移。提供雙向、反向、Cap ends 選項。 - Sketch Contour:於單一草圖內個別選取多個封閉區域進行 Extrude — 但管理困難,不宜濫用。
- 3D Sketch:管路佈線、Weldment 路徑、線材路徑等必備。以
Tab鍵切換 XY / YZ / ZX 平面。 - Equation Driven Curve:支援 Explicit(y=f(x))/Parametric(x=f(t), y=f(t))。用於漸開線齒輪、擺線等方程式曲線。
注意: 若想解除 Convert Entities 所產生圖元的 On Edge 約束,請 只刪除約束,保留圖元本身。刪除圖元會使上游特徵失去參考。
5. Extrude / Revolve / Sweep / Loft
5.1 Extrude(拉伸)
- Boss/Base 為加料、Cut 為減料。
- End Condition:Blind / Through All / Up To Next / Up To Vertex、Surface、Body / Mid Plane / Offset From Surface。
- 相較於 Through All,Up To Next 更能精確傳達設計意圖。日後即使新增實體,也只會貫穿預期範圍。
- Mid Plane 以草圖平面為基準雙向對稱拉伸。對稱形狀必備。
5.2 Revolve(旋轉)
- 旋轉軸 + 輪廓草圖。若輪廓跨越旋轉軸會產生自我貫穿錯誤。
- One-Direction / Two-Direction / Mid-Plane。
- 將 中心線(Centerline) 與輪廓一同繪製,系統會自動辨識為軸。
5.3 Sweep(掃出)
- 輪廓 + 路徑(Path)。追加 Guide Curve 可額外控制路徑外的形狀變化。
- 利用 Twist 選項 建立螺紋、彈簧。
- 路徑草圖務必與 輪廓的中心點、端點建立 Pierce 約束。
5.4 Loft(疊層拉伸)
- 以 2 個以上的輪廓平滑連接。
- 支援 Guide Curves、Centerline、Start/End Constraints(Normal/Tangent)。
- 若輪廓的 頂點(Connector) 錯位會造成扭曲,請拖曳 Connector 使其對齊。
5.5 Boundary Boss/Base
- Loft 的進階版本。以雙向曲線網格控制面,並可指定 Contact / Tangent / Curvature 連續性。
- 需要曲面性質的 Class-A 形狀時很實用 → 詳細曲面技巧: /cad-tips/solidworks/sheetmetal-weldments-surface
6. Fillet、Chamfer、Shell、Draft、Rib
6.1 Fillet
- 提供 Constant / Variable / Face / Full Round 四種模式。
- 先套用大圓角,再放小圓角。順序相反時,大圓角無法完整覆蓋小圓角。
- 在 Shell、Draft 之前套用 Fillet,才會形成自然的內側圓角。
- 濫用美觀用圓角 會拖垮圖形效能,且讓 Shell 失敗。
6.2 Chamfer
- Distance-Distance / Distance-Angle / Vertex / Offset Face。
- 2019+ 版本的 Partial Chamfer 可僅於邊線部分區段倒角。
6.3 Shell
- 挖空內部形成 等厚度壁面。
- 利用 Multi-thickness 選項可對特定面指定不同厚度。
- Cut-Extrude 須在 Shell 之後 套用,才會是真正的穿孔形狀。
- 當凸圓角半徑小於壁厚時 Shell 會失敗 → 加大 Fillet 半徑或以 Multi-thickness 另外處理。
6.4 Draft(拔模斜度)
- 射出、鑄造模具必備。Neutral Plane / Parting Line / Step Draft。
- 提供 DraftXpert 自動化工具。
- 建議順序為 Draft → Fillet。相反順序會讓邊緣變得不自然。
6.5 Rib
- 薄型補強肋。以開放草圖線段產生。
- Linear / Natural 類型,可指定 Draft 角度與厚度方向。
- 肋的草圖外沿會自動延伸,因此不必刻意完全約束,僅定義位置約束會更簡潔。
7. Pattern / Mirror
| 類型 | 用途 |
|---|---|
| Linear Pattern | 單方向/雙方向、Up to Reference、Pattern Seed Only |
| Circular Pattern | 以旋轉軸為基準,Equal Spacing / Instances to Skip |
| Mirror | 以平面對稱複製。建議保留 Merge solids 勾選 |
| Sketch Driven | 以草圖點位置複製 |
| Curve Driven | 沿曲線等距 |
| Table Driven | 以 Excel 座標表為基礎 |
| Fill Pattern | 將指定區域以蜂巢或圓形排列填滿 |
提示: 勾選 Geometry Pattern 選項可略過特徵重算,僅複製實體。在 100 個以上的大量陣列中可快 10~20 倍。
8. 參考幾何與特殊特徵
- Plane:偏移/角度/三點/垂直/相切等建立方式多元。
- Axis:兩點/兩平面/圓柱面/點-平面垂直。
- Point:弧中心、面中心、交點。
- Coordinate System:Export/Import 的基準點。
- Combine:多實體 Add/Subtract/Common。
- Split:以平面、面分割實體後,用 Save Bodies 分成個別檔案。
- Intersect:產生或移除實體、面的相交區域。
- Wrap:將草圖 Emboss/Deboss/Scribe 到 3D 表面。用於 logo 或防滑紋路。
- Thread:可選 Cosmetic Thread 或 Real Geometry Thread。若目的是圖面表達,Cosmetic 就已足夠。Real Geometry 耗用資源較大。
提示: 於 View → Hide/Show → Temporary Axes 啟用圓柱面自動軸後,即可直接作為圓形陣列的軸心使用。
9. Equation、Global Variable — 方程式驅動設計
9.1 Global Variable
- 在 Modify 對話框輸入
=變數名稱→ 點擊「Create Global Variable」按鈕。 - 之後在所有尺寸均可參照此變數。
- 變數名稱限用英數字與底線。建議使用有意義的名稱(
HoleDiameter、PlateThickness)。
9.2 Equations 管理員
Tools → Equations,或於 FeatureManager 的 Equations 節點上按右鍵。由三個分頁組成。
- Global Variables:變數定義
- Features:特徵的 Suppression 條件
- Equations:尺寸間的關係式
範例:
"D1@Sketch1" = "D2@Sketch1" * 2"D1@Hole1" = "PlateThickness" * 1.5"State@Rib1" = "PlateThickness" < 3 ? "Unsuppressed" : "Suppressed"— 在薄板自動啟用肋。
9.3 函式與單位
支援函式:sin、cos、tan、asin、acos、atan、sqrt、log、log10、exp、abs、int、sgn、if、min、max、floor、ceil、mod。
- 三角函式以 弧度為單位。角度轉換為
sin(45 * pi/180)。 - 支援
pi常數。 - 單位換算須手動:inch → mm 為
* 25.4。
9.4 External Text File 連結
當多個零件共用相同尺寸時,可將 Global Variable 連結到外部 .txt 檔載入。
Tools → Equations → Link to External File。只要修改一個尺寸,所有連結的零件都會隨之更新。
提示: Custom Property 也能以 Equation 帶入。例如用 $PRP@Description = "Plate " & "PlateThickness" & "mm" 的格式自動產生零件說明。
10. 草圖與建模最佳實務
- 約束先行,尺寸在後。以最小約束為原則。
- 將至少 1~2 個點連結至原點(Coincident、Midpoint)。
- 複雜草圖請拆分為 多個單純草圖。
- 積極使用 中心線(Construction line) 以取得對稱與中心約束。
- Fillet、Chamfer 以特徵而非草圖 處理。
- 建議依 大特徵 → 細節 → 標準特徵(Hole Wizard)→ Draft → Fillet → Shell → Cosmetic 順序組織樹狀。
- 將主要尺寸宣告為 Global Variable,改一處即可全案連動。
實務檢查清單
- 所有草圖為 Fully Defined(黑色)狀態
- 盡量減少 Fix 約束的使用
- 主要尺寸以 Global Variable 集中管理
- Fillet 置於 Shell、Draft 之前
- 大圓角先、小圓角後
- Convert Entities 產生的圖元不刪除,僅調整約束
- Pattern 數量超過 100 時勾選 Geometry Pattern
- Thread 依目的選擇 Cosmetic/Real Geometry
- Equation 置於 FeatureManager 最上方以確保可視性