2025年9月18日 星期四

CNC 加工路徑優化

 好的——以下是一個可一般化、可落地的多目標路徑優化框架(不限於 FANUC,對任意 CNC/運動控制器皆適用)。目標同時兼顧表面粗糙度(Ra/Rz)幾何公差(Tolerance)加工時間(T),並把你指定的關鍵因素(設計、插補前/後加速度、路徑速度、加加速度〔Jerk〕、工具機動態限制)整合成一個分層可計算的流程。


多目標路徑優化:一般化 Framework

A. 問題定義(Objectives, Variables, Constraints)

1) 多目標

min  F(X)={Ra(X),  Tol(X),  T(X)}\min \; F(X)=\{\,Ra(X),\; Tol(X),\; T(X)\,\}
  • Ra:由幾何殘留(scallop/步距)、速度波動與高頻振動疊加而成。

  • Tol:路徑幾何近似誤差(弦誤差/曲率不連續)+伺服跟隨誤差(輪廓誤差)。

  • T:總切削時間 T=dsv(s)T=\int \frac{ds}{v(s)}

2) 設計變數 XX(可調參數)

  • 幾何層:路徑型式(Line/Arc/NURBS)、曲率連續等級(G1/G2/G3)、角落圓角/過渡半徑、步距/步深。

  • 插補層:插補週期 dtdt插補前/後加速度(進入/退出段的加減速配置)、速度平滑參數。

  • 運動學層:進給速度分佈 v(s)v(s)、最大加速度 amaxa_{\max}、最大加加速度(Jerk)jmaxj_{\max}

  • 動態層:伺服/結構模型(FRF/剛性/阻尼)、前饋/跟隨補償增益。

3) 約束(硬邊界)

v(s)Vmax,at(s)amax,j(s)jmax,econtour(s)Tolreqv(s)\le V_{\max},\quad a_t(s)\le a_{\max},\quad j(s)\le j_{\max},\quad e_{\text{contour}}(s)\le Tol_{\text{req}}

再加上製程邊界(切削力、熱偏移、夾持剛性等)。


B. 可計算的核心模型(與決策槓桿)

1) 幾何→速度的「安全進給上限」

  • 向心加速度界

    vacc(s)    amaxκ(s)(κ=1/R:曲率)v_{\text{acc}}(s)\;\le\;\sqrt{\frac{a_{\max}}{\kappa(s)}} \quad (\kappa=1/R:曲率)
  • Jerk 變曲率界(曲率變化激烈處限速):

    vjerk(s)    (jmaxdκ/ds)1/3v_{\text{jerk}}(s)\;\le\;\Big(\frac{j_{\max}}{|d\kappa/ds|}\Big)^{1/3}
  • 綜合限速:

    vallow(s)=min{Vmax,vcmd(s),vacc(s),vjerk(s)}v_{\text{allow}}(s)=\min\{V_{\max},\,v_{\text{cmd}}(s),\,v_{\text{acc}}(s),\,v_{\text{jerk}}(s)\}

2) 公差/輪廓誤差估計(簡化)

  • 幾何弦誤差(線段近似曲線):

    echordκ28e_{\text{chord}}\approx\frac{\kappa\,\ell^2}{8}
  • 伺服輪廓誤差:由伺服/機械頻響與命令頻譜疊合估計(可用二質點或 FRF 簡模得到 eservo(s)e_{\text{servo}}(s))。

  • 總公差Tolmaxs{echord(s)+eservo(s)}Tol\approx \max_s\{e_{\text{chord}}(s)+e_{\text{servo}}(s)\}

3) 粗糙度代理模型(通用近似)

  • 幾何殘留(例:側銑/步距 pp 與刀具半徑 RtR_t):

    hscallopp28Rth_{\text{scallop}}\approx \frac{p^2}{8R_t}
  • 速度波動/振動貢獻:用速度抖動 RMS 與主軸/結構峰值增益近似

    Raαhscallop+βRMS{δv/v}+γAvibRa \approx \alpha\,h_{\text{scallop}}+\beta\,\text{RMS}\{\delta v/v\}+\gamma\,A_{\text{vib}}

α,β,γ\alpha,\beta,\gamma 由實測/回歸校準)


C. 分層流程(Design → Interp → Kinematics → Dynamics → MOO)

  1. 幾何層(Design)

    • NURBS/圓弧化、角落加圓角;確保 G2/G3 曲率連續,降低 dκ/dsd\kappa/ds

    • 設定步距/步深以界定幾何殘留上限。

  2. 插補層(Interpolation)

    • 選擇插補策略(線/弧/樣條)與插補週期 dtdt

    • 佈署插補前/後加速度與段間過渡(S 曲線/五次多項式),避免速度尖峰。

  3. 運動學層(Kinematics Scheduling)

    • Look-ahead 計算 vallow(s)v_{\text{allow}}(s),套用 Jerk 限制與角落減速,得到 v(s)v(s)

    • 生成 S 曲線(jerk-limited)速度/加速度/加加速度剖面。

  4. 動態層(Machine Dynamics Check)

    • 用簡化伺服+結構模型預估 eservo(s)e_{\text{servo}}(s)、速度抖動與振動放大。

    • TolTol 或振動超限→回到 1–3 層自動調整:放寬曲率、降低 vv、增大過渡半徑或延長加減速距離。

  5. 多目標優化(MOO)

    • 決策變數:{vcmd(s)\{v_{\text{cmd}}(s) 形狀參數、圓角半徑、步距、dtdt、S 曲線時間常數、amax,jmaxa_{\max},j_{\max} 分配等})

    • 法:NSGA-II / MOEA-D / PSO 產生 Pareto 前緣

    • 評估器:用上節模型計算 (Ra,  Tol,  T)(Ra,\;Tol,\;T)

    • 選擇:膝點/權重或加上魯棒性(對刀具磨耗/材料波動的 worst-case)。


D. 變數—目標—風險 的對照(決策槓桿表)

槓桿主要影響次要影響風險/代價
增加角落圓角/樣條化↓Tol、↓Ra(更平順)可能 ↓T(少減速)幾何改動需符合設計意圖
降低步距/步深↓Ra(幾何殘留)↑T加工成本上升
降低 dtdt↓弦誤差、↓速度抖動↑控制負載控制器性能限制
延長插補前/後加速距離↓速度尖峰、↓振動可能 ↑T程式更長、動作空走增加
嚴格 Jerk 限制↓Ra、↓Tol↑T高精要求工件可接受
降低 vcmdv_{\text{cmd}}(局部)↓Ra、↓Tol↑T用 look-ahead 做局部降速最划算
伺服/前饋調整↓Tol、↓Ra需上機校正/辨識

E. 實作藍圖(簡化偽碼)

Input: 路徑幾何 G(s), 機台限值 {Vmax, amax, jmax}, 製程需求 {Ra_req, Tol_req} 1. 幾何光順: 生成 G*(s) 並計算 κ(s), dκ/ds 2. 速度規劃: v_allow(s) = min{Vmax, v_cmd(s), sqrt(amax/κ), (jmax/|dκ/ds|)^(1/3)} 3. Jerk-limited S 曲線生成 v(s), a(s), j(s) 4. 動態預估: e_servo(s), δv/v, A_vib → Tol, Ra, T 5. 若約束違反 → 調參回 1–3 層(圓角/步距/時間常數/局部降速) 6. 多目標優化(NSGA-II):決策向量 X → 評估 (Ra, Tol, T) → Pareto 集 7. 選解 → 輸出加工程式(含樣條/圓角、速度表、S 曲線參數)

F. 快速落地建議

  1. 先模型後優化:用少量實驗校準 α,β,γ\alpha,\beta,\gamma 與伺服簡模,讓評估可信。

  2. 區域化優化:把高曲率/曲率梯度區段做「局部多目標」調速,其餘區段跑效率。

  3. 雙迴路:離線求 Pareto;上機用小範圍自適應(監測輪廓誤差/振動)做微調。

  4. 決策視圖:輸出三維 Pareto 與「膝點」建議,方便製程工程師選擇。

沒有留言: