跳轉到

連桿鍛造模的 NC 優化:HiNC 的進給優化讓手動修訂的程式少 24.5 %,而 R1.5 凹角即使用最低進給仍超過上限

連桿鍛造模是一副鋁合金連桿的下模:一個 AI 代理 (agent) 依一篇論文的鍛件圖與實際模具的照片設計它,自己寫了三支 Fanuc 程式——D10 R1 端銑刀粗加工,D6 球刀與 R1.5 長頸球刀做殘料粗加工與精修。一半模具要 342.8 min。那個案例找到了弱點:在肋溝的 R1.5 凹角裡,R1.5 球刀整段四分之一圓弧同時切削,撓曲遠超過代理給精修的 12.5 µm。代理手動修改了兩次進給;第二次修訂把往料裡的下刀與球刀包覆凹角的段都壓到下刀進給,要 439.1 min。這一頁,代理把這些程式交給 HiNC 的進給優化,問工程師會問的事:手動修訂壓不住的凹角,優化器壓得住嗎?要付多少時間?如果 HiNC 只准加速,手動修訂過的程式能快多少?

三個變體都在 HiNC 3.2.45 上以 0.125 mm 的網格對整塊模具優化,一支程式一輪,再把程式放到凹角上一塊 12 × 11 × 12 mm 的探針毛胚上,以 0.0625 mm 重播。每個變體裡,HiNC 都把粗加工程式從 64.8 min 縮到 41.1 min(−36.6 %),主軸功率與刀具應力都在目標內。V1 優化原程式,並把每個操作的撓曲上限給它當目標:在探針毛胚上,超過上限的 1,423 步裡有 1,422 步被寫成最低進給 100 mm/min,R1.5 球刀陡牆精修最大的一步從 112.4 µm 降到 23.8 µm。代價是時間:一半模具要 659.0 min,比原程式多 92 %,因為 HiNC 把每一個寫在最低進給的步前後各 2 mm 也一起降到同樣的進給,而整塊模具上這樣的步有好幾千個(難題 3)。V3 是同樣的設定、拿掉這些延伸窗,要 251.9 min(−26.5 %),但 0.125 mm 網格看不到的負載拿到了全速:它的殘料粗加工撓曲到 89.5 µm。V2 保留手動修訂的程式,只准 HiNC 加速:331.5 min,比第二次修訂少 24.5 %、比原程式少 3.3 %,第二次修訂的峰值原樣不動。

凹角本身不是進給的問題。超過上限的每一步都已在最低進給時,R1.5 球刀在溝的凹角裡仍彎到 23.8 µm;沒有進給去得掉它,剩下能改的是進刀方式或球刀的大小,和那個案例頁的結論相同。本頁的一切都是模擬,沒有切過任何模具。

HiNC 模擬:V1 優化後的程式播在探針毛胚上,R1.5 球刀的刀柄在大熱縮刀把下方,刀頸與球頭深入肋溝;溝面依力上色,凹角一帶是綠與藍

V1 優化後的程式播在探針毛胚上,停在 R1.5 球刀伸進肋溝的位置:Ø6 刀柄在 HSK-A63 熱縮刀把下方,刀頸與球頭在溝裡。溝面依切出它的那一步陡牆精修的最大力上色,0 到 100 N:凹角一帶是綠與藍,原程式在這裡是紅與黃(難題 2)。HiNC 3.2.45,0.0625 mm。

在 HiNC 3.2.45 上量得 原程式 第二次修訂(手動) V1:優化原程式 V2:第二次修訂、不比它慢 V3:V1 拿掉延伸窗
一半模具的模擬加工時間 342.8 min 439.1 min(+28.1 %) 659.0 min(+92.2 %) 331.5 min(−3.3 %) 251.9 min(−26.5 %)
同上,對第二次修訂 −21.9 % — +50.1 % −24.5 % −42.6 %
T1 粗加工,整塊模具 64.8 min 64.8 min 41.1 min(−36.6 %) 41.1 min 41.1 min
T1 粗加工的最大主軸功率比,整塊模具 0.37 0.37 0.35 0.35 0.35
T3 陡牆精修的 XY 刀尖撓曲,最大/第 99 百分位,探針毛胚(上限 12.5 µm) 112.4/32.1 µm 39.6/17.4 µm 23.8/15.0 µm 39.6/17.8 µm 23.8/16.4 µm
T3 殘料粗加工的最大 XY 刀尖撓曲,探針毛胚(上限 40 µm) 70.0 µm 43.9 µm 39.8 µm 43.9 µm 89.5 µm
探針上撓曲超過上限的切削步 3,092 1,431 1,423 1,430 1,789
其中在最低進給之上、還能再降的 — — 1 1,430 373
代理的 z-map 上,毛胚與原程式的差在 1 µm 內的格點,T2/T3 — — 99.82/99.94 % 99.98/99.93 % 99.49/99.84 %
整塊模具的優化播放,伺服器時間 — — 72 min 54 min,T1 用 V1 的 40 min,T1 用 V1 的
一次優化播放的記憶體峰值 — — 46.3 GiB(T1) 31.6 GiB 20.3 GiB

案例

模具本身的案例頁講代理怎麼依論文的圖重建鍛件、依照片設計模具、寫程式,並讓整塊模具通過驗收;這一頁從那一頁結束的地方開始。代理拿到的是:

  • 三支通過驗收的程式,也就是原程式:T1 是 D10 R1 端銑刀、3,800 rpm,以 F1050 等高粗加工模膛並把平面做到尺寸(64.8 min);T2 是 D6 球刀、10,000 rpm,以 F1200 做殘料粗加工與精修,陡牆用等高、緩坡用平行刀路(101.1 min);T3 是 R1.5 長頸球刀、12,000 rpm,在 D6 構不到的地方以 F900 分層做殘料粗加工、以 F1200 精修(176.9 min)。一半模具,也就是下模,要 342.8 min,三支程式各 70,567、190,004 與 400,570 行。
  • T2、T3 的兩次手動修訂,都只改進給:第一次在切除截面大的地方降低進給(一半模具 402.9 min);第二次再把往料裡的陡下刀與球刀包覆凹角的段壓到下刀進給,T2 F500、T3 F300(439.1 min)。第二次修訂是這個案例採用的程式;第一次修訂當時沒有留下(難題 12)。
  • 案例給小球刀定的標準:T2 與 T3 精修的 XY 刀尖撓曲最多 12.5 µm,是模膛公差 ±0.05 mm 的四分之一;T3 殘料粗加工最多 40 µm。
  • 那個案例的機台、主軸、刀具與刀把:HiNC 的三軸骨架機台、一支通用的 24,000 rpm 主軸(連續 7.5 kW、短時 10 kW)、從 HSK-A63 熱縮刀把伸出 20 mm 的通用碳化鎢刀具,以及約 40 HRC 的 FDAC 模具鋼。
  • 要求:以既有案例為基礎,做 HiNC NC 優化的實作案例,由 HiNC 的產品擁有者提出。

沒有任何資料寫明的:

  • 這幾把刀能跑多快。 刀具是通用的,沒有刀具廠的每刃進給上限;每把刀拿到的上限是代理的選擇。
  • 怎麼守住撓曲上限。 HiNC 的優化器守的是主軸功率、主軸扭矩、刀具應力、目標切削力與進給的上下限;它沒有內建的撓曲準則,所以 12.5 µm 必須由別的準則來承載。
  • 網格讀不讀得到精修。 T3 留給精修 0.04 mm、T2 留 0.12 mm,都在整塊模具能拿來優化的 0.125 mm 網格之下。

那個案例頁寫的是它自己的驗收;兩邊都量過的讀數(探針毛胚上的負載、整模的刀尖撓曲、第二次修訂的時間),它引用本研究的播放。本頁的每一個數字都來自這次研究在 HiNC 3.2.45 上的播放:原程式與兩次修訂都和優化後的變體在同一塊探針毛胚上重播,所以每個「優化前」都和它的「優化後」並排量得。

代理建了什麼

每個值都標明是讀取(來自程式或案例)、推得(由它們算出)、自選(代理的選擇)或預設(照留 HiNC 的預設)。

每個變體=每支程式在整塊模具上一次優化播放,加上在探針毛胚上的重播。優化播放播的是原始程式,程式前面放一個 NC 優化設定,播完寫出優化後的檔案;它的逐步結果就是「優化前」。一支程式一輪:每支程式播完,HiNC 記下毛胚,下一支從那裡開始,所以 T2 看到的是 T1 留下的毛胚,T3 看到的是 T2 留下的。

變體 原始程式 改了什麼 回答什麼
V1 原程式 粗加工可以加速到每把刀的上限;精修守在程式進給,並受該操作的撓曲上限約束;最低進給 100 mm/min 優化器壓得住凹角嗎?要多少時間?
V2 第二次修訂的 T2、T3,T1 用 V1 的 V1 的設定,再加原始進給率下限 100 %:沒有一步比第二次修訂慢 只准 HiNC 加速時,手動修訂的程式能快多少
V3 原程式 V1,但切削前後的延伸距離都設成 0 延伸窗花了什麼、換到什麼(V1 之後加做,難題 3)
V4,試跑 原程式,只在探針毛胚上 V3,延伸窗 0.5 mm 短的延伸窗能不能留住 V3 的速度與 V1 的峰值(難題 5)

每把刀的限制,在每次優化播放前以 PUT api/Cutter/{id}/opt-limit 送出,並讀回記進執行紀錄:開啟優化;降伏安全係數 3,應力守在降伏的三分之一;最小切屑厚度與後角限制開啟;不設最小每刃進給——以上都是預設——每刃進給上限取粗加工每刃進給的 1.5 倍,自選。這些上限不是刀具廠對這幾把刀的資料:

刀具 程式的每刃進給(F ÷ 轉速 ÷ 刃數)——推得 上限——自選
T1 D10 R1 端銑刀,4 刃,3,800 rpm 0.0691 mm(F1050);下刀 0.0263 mm(F400) 0.1036 mm(F1575)
T2 D6 球刀,2 刃,10,000 rpm 0.060 mm(F1200);下刀 0.025 mm(F500) 0.090 mm(F1800)
T3 R1.5 球刀,2 刃,12,000 rpm 殘料粗加工 0.0375 mm(F900)、精修 0.050 mm(F1200);下刀 0.0125 mm(F300) 0.05625 mm(F1350)

每支程式前面的 NC 優化設定:

設定 值 來源
進給優化、重新插值 開 預設
前進、側向與深度補償 關 自選:補償不在這次研究內
深度分割 關 自選
原始進給率下限 V1、V3 關;V2 開、100 % 預設(關);自選(V2)
最低與最高進給率 100 與 20,000 mm/min 自選:100 低於第二次修訂的下刀進給 F300,凹角的進刀還能再慢;20,000 低於機台 24,000 mm/min 的快移
沒有切削的段落所用的進給 T1 14,560、T2 3,680、T3 2,140 mm/min 推得:下面的殘料切屑規則
進給變化的加速度 1,000 mm/s² 自選:預設的 10 mm/s² 會把每次變速攤到幾百 mm
切削前後的延伸距離 V1、V2 為 2 mm 與 2 mm;V3 為 0 與 0 預設;自選(V3)
進給率指派比例 0.01 預設
主軸功率與扭矩安全係數 1.5:目標是短時額定的 67 % 預設
執行內容層的降伏與熱降伏係數 0 與 0:降伏用刀具自己的係數 3;熱降伏不是準則 預設
目標切削力 程式層不設;逐一操作設定,見下 預設
網格 0.125 mm,案例的驗收網格 自選:優化器要看到整支程式在整塊模具上,才分得出切削與空切;整塊模具用 0.0625 mm 太重

空切進給。 比精修留量粗的網格可能把薄薄的切削讀成空切,優化器就會把那一段寫成空切進給。所以每把刀的空切進給,取一層 12.5 µm(標準允許精修留下的)在這個進給下切出的切屑,不比這把刀自己的精修切屑厚(T1 用它的粗加工切屑)。切屑厚度=每刃進給 × sin φ,cos φ=1 − 2 × 切深 ÷ 刀徑:T1 程式的切屑 67.7 µm(橫向 4 mm),得 14,560 mm/min;T2 16.8 µm(留 0.12 mm),得 3,680;T3 11.5 µm(留 0.04 mm),得 2,140——推得。

每個操作自己的設定,以腳本註解 (@@…) 接在該操作的第一個主軸行後面,從那一行起生效(嵌在 NC 碼裡的設定);代理的腳本逐一確認每份複本其餘的內容都和原始程式相同:

操作 目標切削力——推得 最高進給——自選 降伏安全係數——推得
T1 等高粗加工 不設 20,000 mm/min 刀具的 3
T1 平面到尺寸 376.5 N 1,050 mm/min,程式進給 5.84
T2 殘料粗加工 不設 20,000 mm/min 刀具的 3
T2 精修,陡牆(等高) 88.4 N 1,200 mm/min,程式進給 7.03
T2 精修,緩坡(平行) 85.7 N 1,200 mm/min,程式進給 6.85
T3 殘料粗加工 69.5 N 20,000 mm/min 3.25
T3 精修,陡牆(等高) 23.5 N 1,200 mm/min,程式進給 10.29
T3 精修,緩坡(平行) 21.5 N 1,200 mm/min,程式進給 10.38
  • 目標切削力=撓曲上限 ÷ 柔度。 柔度取原程式在探針毛胚上、該操作切削步的 XY 刀尖撓曲每牛頓的第 95 百分位,讓 95 % 的步在目標力下不超過上限:T3 陡牆精修是 12.5 µm ÷ 0.5318 µm/N=23.5 N。
  • 降伏安全係數=每單位應力比的撓曲 ÷ 上限,第一次試跑之後加上(難題 1)。HiNC 的刀具樑模型裡,刀尖的 XY 撓曲和應力比來自同一個彎矩,所以每把刀「每單位應力比的撓曲」在它的切削步上幾乎是常數:T3 121–130 µm、T2 79–88 µm、T1 68–73 µm(第 5 到第 95 百分位)。T3 陡牆精修是 128.6 µm ÷ 12.5 µm=10.29:應力守在降伏的 1/10.29,就是 12.5 µm 的撓曲。
  • 精修守在程式進給:可以變慢,不准變快,因為精修加速會讓刀彎得更多,而這些播放關著 HiNC 的撓曲變換,去料的形狀看不出彎曲。

優化器本來就不改的:快移、換刀與刀長補正行、G91 G28 與 M 碼。這三支程式沒有鑽孔循環,也沒有圓弧,只有 G00 與 G01。

探針毛胚:12 × 11 × 12 mm,位在 x 22..34、y 1..12,就在 T3 去料最多的肋溝凹角上,以 0.0625 mm 播剪下的程式:只留刀具半徑加 1 mm 範圍內經過毛胚的移動,每一段都從安全高度以快移進出。六個程式版本——原程式、兩次修訂、三個變體——都用同樣的剪法在這裡比較(難題 9)。

代理怎麼管理這件工作

  • 標準與設定先寫。 九條標準與每個設定的來源,在第一次優化播放(含試跑)之前寫下並提交。試跑與每個變體帶來的改變,都在下一次播放前寫在計畫旁邊,一共三次,原文不改。
  • 先修剪。 剪下的原程式先在探針毛胚上跑完整條鏈——優化、重播、確認優化器真的改了進給、每個嵌入的設定落在它的操作上——之後才播整塊模具。試跑兩次;第二次檢查難題 1 的解法。
  • 整塊模具一支程式一輪。 HiNC 3.2.45 的私有複本,跑在一台和線上實例、其他代理的研究共用的 32 執行緒伺服器上。每次重的播放都排在和其他研究共用的鎖上,伺服器有 40 GB 可用記憶體才開始,而且在剛重啟、從檔案重新載入專案的實例上跑。伺服器可用記憶體低於 15 GB 時,一個守護程式會停掉這次研究自己的實例;播放中每三分鐘做一次唯讀檢查,看警報、播到哪一行、接觸與負載。
  • 設定讀回。 每次播放之後讀回每把刀的限制與優化設定,連同訊息、伺服器時間與記憶體記在結果裡。
  • 決定在結果之前寫好。 哪一個變體做整塊模具的重播、短延伸窗的 V4 要不要在整塊模具上播,都在決定它們的試跑之前寫下。
  • 人在哪裡介入。 HiNC 的產品擁有者要以既有案例為基礎做 NC 優化的實作案例;變體、設定與標準都是代理自己定的。

第一次優化播放之前寫下的標準,切削步定義為接觸且去料率大於 0.01 mm³/s 的步:

# 標準
O1 每一行都跑到、沒有新警報:每次播放執行的行數等於檔案的行數;沒有 Collided、沒有行程警報;Play-RapidCut--Detected 不多於原始程式在同一網格的播放;沒有基準沒有的警告或錯誤;每次優化播放都建好進給、寫出檔案
O2 主導的負載在目標內:整塊模具上每把刀至少 99 % 的切削步,功率比與扭矩比 ≤ 0.667、應力比在它的目標內;有撓曲上限的操作,探針上至少 99 % 的切削步在上限內(難題 1 之後);寫在最低進給的步另計
O3 形狀不變:(a) 在代理的 z-map 上,每支優化後的程式留下的毛胚與原始程式相同,99.9 % 的格點差在 1 µm 內;(b) 整塊模具重播後 HiNC 匯出的毛胚對設計,照驗收的做法
O4 時間預測:V1 一半模具 280–345 min、T1 最多 50 min;V2 在 V1 與第二次修訂之間,330–420 min;後來加做的 V3 最多是第二次修訂的 439.1 min
O5 探針上的精修撓曲:V1 每個 T2、T3 精修操作的第 99 百分位與最大值不高於原程式(容差 2 %),超過 12.5 µm 的比例較小;V2 不高於第二次修訂 × 1.02
O6 空切進給不落在料上:依播放順序在代理的 0.05 mm z-map 上重走,沒有任何一段以高於該操作上限 × 1.02 的進給切進深於 2 µm
O7 輸出檔真的被改寫、改寫乾淨:每支優化後的檔案都和原始程式不同,程式改寫沒有錯誤
O8 凹角的峰值:探針重播上,每一個超過上限的步,要嘛已寫在最低進給、沒有進給可再降,要嘛在上限的 2 % 內;預測:剩下的是直插凹角的下刀
O9 誰決定進給:每個切削步依決定它的限制分類;預測 T1 粗加工至少 80 % 頂在上限,精修大多守在程式進給,凹角的下刀在最低進給

難題

每條依序寫出:情況、沒發現的話有什麼風險、怎麼發現、怎麼解決,以及解法成立的證據。

1. 對斜降與下刀不起作用的目標切削力

  • 情況。 計畫用目標切削力把每個精修操作守在它的撓曲上限內,目標嵌在程式裡該操作的第一個主軸行。
  • 風險。 目標不起作用的地方,精修照樣以程式進給跑,凹角的峰值不變,設定卻看起來像是守住了。
  • 怎麼發現。 第一次在探針毛胚上試跑,優化後 T3 陡牆精修仍彎到 41 µm,力的第 99 百分位仍是 51.5 N,而目標是 23.5 N。代理的檢查接著拿每一個已經超過目標的步,比對優化器步級日誌裡力準則允許的每刃進給和這一步原本的進給:斜降步除了一步(1,497 步中 1,496 步)與每一個下刀步(36 步中 36 步,其中包括直插凹角的那一步 208 N),日誌給的都是上界,也就是這一步本來就會有的進給;水平的步上目標有作用(177 步中 168 步)。一支最小程式也顯示同樣的事:斜降段 36–68 N、目標 5 N,日誌給 0.05 mm 的上界;接在後面的水平段給 0.0089 mm。
  • 解決。 在 V1 第一次整塊模具播放之前寫在計畫旁:改由刀具應力準則承載撓曲上限,透過每個操作的降伏安全係數,因為刀尖撓曲和應力比來自同一個彎矩。目標切削力照留,因為它在水平步上有作用。O2 改寫成以撓曲判這些操作。
  • 證據。 第二次試跑:探針上 T3 陡牆精修的第 99 百分位/最大從 32.1/112.4 µm 變成 15.1/23.8 µm;仍超過 12.5 µm 的 1,366 步裡,1,363 步在最低進給 100 mm/min,其餘三步 12.6–12.7 µm;T3 殘料粗加工超過 40 µm 的步從 1,112 步剩 2 步,41.2 µm。在整塊模具上,T3 陡牆精修超過目標的斜降步,力準則仍有 39,051 步給上界,只有 177 步真的求解。

2. 怎麼降進給都修不好的凹角步

  • 情況。 O8 問的是:在優化器能寫的最低進給下,凹角的哪些峰值仍超過上限。
  • 風險。 當成進給的問題,就會把凹角再放慢——更低的最低進給、更長的延伸窗——時間愈花愈多,卻永遠達不到上限。
  • 怎麼發現。 V1 探針重播上的 O8,以及同一個姿勢優化前後的畫面。
  • 解決。 V1 把探針上撓曲超過上限的 1,423 步裡的 1,422 步寫成最低進給 100 mm/min:T3 陡牆精修 1,361 步、緩坡精修 40 步、T2 陡牆精修 21 步。第二次試跑時它們都在肋溝凹角,x 22–34、y 5.7–8.6、z −7.1 到 −4.3,27–46 N、13–24 µm。唯一還在最低進給之上的一步彎 12.71 µm,在上限的 2 % 內,所以 O8 照字面通過,它的預測也成立:更低的進給沒辦法讓這些步回到上限內;剩下能改的是進入凹角的方式,或用比凹角小的球刀,和那個案例頁的結論相同。
  • 證據。 探針上 T3 陡牆精修:最大撓曲 112.4 → 23.8 µm,最大力 208.3 → 46.0 N,超過 12.5 µm 的步 23.3 → 6.1 %。畫面、同一段每半秒的圖,以及 O8 的圖:

HiNC 模擬:原程式播在探針毛胚上,與頁首同一個視角:沿著溝的凹角是一圈圈紅與黃,到 100 N 以上

優化前:原程式,與頁首同樣的姿勢與上色,0 到 100 N。沿著溝的凹角是一圈圈紅與黃,那裡是球刀整段圓弧在切。

T3 陡牆精修經過探針毛胚:原程式、第二次修訂與三個變體,每半秒的最大 XY 刀尖撓曲與切削步的進給;原程式峰值 112 µm,V1 以 100 mm/min 跑了 320 秒,維持在約 24 µm

T3 陡牆精修經過探針毛胚,每 0.5 秒的模擬時間。原程式 73 秒、峰值 112 µm;第二次修訂與 V2 各 121 與 108 秒、峰值 40 µm;V1 與 V3 峰值 24 µm,V1 用了 320 秒,因為它的延伸窗把每個凹角步周圍都壓在 100 mm/min,V3 用了 96 秒。

探針重播上撓曲超過上限的切削步,依變體與操作分成在最低進給的步與在它之上的步:V1 幾乎全在最低進給,V3 有 238 個殘料粗加工步在它之上,V2 的 1,430 步全在它之上

O8。淺藍:超過上限、已在最低進給 100 mm/min、沒有進給可再降的步。紅:超過上限、在最低進給之上的步,更低的進給還能幫上忙。

3. 延伸窗花的時間比降速本身多

  • 情況。 V1 的一半模具是 659.0 min,O4 預測 280–345 min,比原程式多 92 %。
  • 風險。 不看分解,會以為優化器把切削本身放慢了,或把延伸窗的代價當成撓曲上限的代價。
  • 怎麼發現。 代理在 z-map 上重走每支程式,把每段移動分成切削或空切,並把進給依時間加權;以及優化器的步級日誌。
  • 解決。 接觸的步各以自己求得的進給,只比原程式多 16 min:T2 54.9 → 60.6 min,T3 60.9 → 70.9 min。其餘的是延伸距離:HiNC 把一步前後各 2 mm 降到窗內最低的進給,所以 T3 緩坡精修寫在最低進給 100 mm/min 的 4,006 個切削步,每一步最多帶走 4 mm 的路徑,那個進給下就是 2.4 秒。這些步大多不在凹角:在 0.125 mm 的整塊模具上,原程式 T3 緩坡精修的力第 99 百分位是 156 N(探針毛胚上 36.5 N),因為 T3 的殘料粗加工只沿 X 分層,那裡留下的不只名目上的 0.04 mm。計畫因此修正:加做 V3,也就是拿掉延伸窗的 V1。
  • 證據。 V1 裡,T3 的切削移動有 193.6 min 在 100–200 mm/min,其中 127.0 min 在緩坡精修;原程式一分鐘也沒有。圖:

每把刀切削移動在各進給區間的時間,原程式、第二次修訂與三個變體:V1 的 T3 在 100 到 200 mm/min 有一根 194 分鐘的高柱

切削移動在各進給區間的時間,取自代理對整塊模具的 z-map 重走。V1 的 T3 有 194 min 在 100–200 mm/min;V3 每一步的求解和 V1 一樣,只是沒有延伸窗,是 13 min。

每把刀、每個程式版本在切削進給、空切進給與快移的時間:V1 的 T3 在切削與空切都長到 458 分鐘;V3 兩者都比原程式短,V2 兩者都比第二次修訂短

時間花在哪裡,每把刀:切削進給、空切進給與快移。延伸窗把 V1 的空切移動也和切削一起拖慢:T3 的空切進給從 85.7 min 長到 178.5 min。

4. 沒有延伸窗,網格的盲點拿到全速

  • 情況。 V3 拿掉延伸窗:一半模具 251.9 min,比原程式少 26.5 %。
  • 風險。 0.125 mm 的網格比 T3 精修留量 0.04 mm 粗。沒有延伸窗,網格讀成很輕、或讀成空切的切削,就拿到上限或空切進給,周圍也沒有東西讓它慢下來。
  • 怎麼發現。 V3 探針重播上的 O8,以及它在 z-map 重走上的 O6。
  • 解決。 V3 照實記錄、照字面判定,不建議使用。在探針毛胚上,T3 殘料粗加工彎到 89.5 µm(原程式 70.0 µm、V1 39.8 µm):那一步在 x 23.6、y 6.2、z −5.45,寫的是上限 F1350,探針在那裡讀到 157 N、應力比 0.70。殘料粗加工有 238 步、陡牆精修有 127 步在最低進給之上超過上限。在 z-map 上,T2 有 3,156 段、T3 有 26,838 段以高於該操作上限的進給切到料,其中 516 段深於 12.5 µm,最深 50 µm,在 T2 的殘料粗加工;V1 只有 63 段,深於 12.5 µm 的只有 1 段,13.8 µm。
  • 證據。 T3 殘料粗加工經過探針毛胚的圖,以及畫面:每一步的求解和 V1 一樣——凹角的步在最低進給,每刃進給畫面上是藍色——但旁邊的步保有自己的進給。

T3 殘料粗加工經過探針毛胚:每半秒的最大 XY 刀尖撓曲與進給;V3 突到 89.5 µm,原程式到 70,V1 維持在 40 µm 上限以下

T3 殘料粗加工經過探針毛胚,每 0.5 秒。V3 用了 110 秒、突到 89.5 µm;V1 用 286 秒守住 40 µm。

HiNC 模擬:V3 播在探針毛胚上,與頁首同樣的視角與力的上色:凹角一帶是綠與藍,和 V1 一樣

V3,同樣的姿勢與力的上色,0 到 100 N:它的陡牆精修讀起來和 V1 一樣。

HiNC 模擬:V3 播在探針毛胚上,依每刃進給上色,0 到 0.05 mm:凹角是接近最低進給的藍色,溝的其餘部分是程式 0.05 mm 的紅色

V3 依每刃進給上色,0 到 0.05 mm:凹角一帶是藍色,那些步在最低進給附近;其他地方是紅色,也就是精修的程式值 0.05 mm。

5. 短的延伸窗換到什麼

  • 情況。 介於 0 與 2 mm 之間的延伸窗,或許能留住 V3 大部分的速度與 V1 的峰值。
  • 風險。 憑猜測在整塊模具上播 V4,要佔共用鎖大約一小時;不播,問題就懸著。
  • 怎麼發現。 試跑之前寫下的規則:在整塊模具上播「探針試跑通過 O8、而且沒有深於 12.5 µm 的空切進給段」裡最短的那個延伸窗;一個都不過,就不播 V4,並寫明延伸窗換到的是什麼。
  • 解決。 在探針毛胚上試跑:剪下的原程式以 0.125 mm 優化、0.0625 mm 重播,一組沒有延伸窗、一組 0.5 mm。沒有延伸窗的試跑重現了整塊模具 V3 的峰值,同一步 89.5 µm,所以試跑代表得了整塊模具。0.5 mm 的延伸窗把在最低進給之上超過上限的步從 418 減到 22,殘料粗加工的最大值從 89.5 降到 42.7 µm,也沒有深於 12.5 µm 的空切進給段,探針上的時間多 51 %;V1 的 2 mm 延伸窗在那裡比 V3 多 142 %。0.5 mm 仍沒通過 O8,所以依規則不播 V4。0.25 mm 的延伸窗給每一步的進給只會比 0.5 mm 高、峰值不會更低,所以它的試跑在等鎖時就取消了。
  • 證據。
每步前後的延伸窗 探針上 T2+T3 T3 殘料粗加工:最低進給之上超過 40 µm 的步/最大 T3 陡牆精修:最低進給之上超過 12.5 µm 的步/最大 T3 緩坡/T2 陡牆精修:最低進給之上超過 12.5 µm 的步、最大 深於 12.5 µm 的空切進給段
0 mm,試跑 5.90 min 273/89.5 µm 132/14.8 µm 3、16.3 µm/10、12.9 µm 22
0.5 mm,試跑 8.92 min 5/42.7 µm 14/13.5 µm 1、13.3 µm/2、12.6 µm 0
對照:整塊模具優化的 V3,剪下(0 mm) 7.11 min 238/89.5 µm 127/14.4 µm 2、16.3 µm/6、12.9 µm 5
對照:整塊模具優化的 V1,剪下(2 mm) 17.20 min 0 1/12.7 µm 0/0 0

延伸窗 0 與 0.5 mm 的試跑,三個分圖:探針上 T2 與 T3 的時間 5.9 與 8.9 分鐘;在最低進給之上的步,T3 殘料粗加工最大撓曲 89.5 與 42.7 µm;最低進給之上超過上限的步 418 與 22,深於 12.5 µm 的空切進給段 22 與 0

延伸窗試跑:0.5 mm 換到什麼、又花了什麼。

6. 「不比第二次修訂慢」留住了第二次修訂的峰值

  • 情況。 V2 把每一步的下限設在第二次修訂自己的進給。O2 要求至少 99 % 的切削步在上限內,O5 要求精修不超過第二次修訂的撓曲 × 1.02。
  • 風險。 把 V2 讀成「HiNC 守住了凹角」:下限留住了第二次修訂的慢步,也一起留住了第二次修訂的峰值。
  • 怎麼發現。 探針重播對 O2 與 O5 的判定,以及每次優化播放的警告 NcOpt-Feed--SourceFloorOverTarget:下限把 T2 的 3,062 步、T3 的 46,230 步撐在負載目標之上。
  • 解決。 照字面判:O2 與 O5 沒過。探針上超過上限的 1,430 步——T2 陡牆精修 93 步、T3 陡牆精修 1,268 步、緩坡精修 64 步、殘料粗加工 5 步——都是第二次修訂自己的步,被下限擋在第二次修訂的進給上;沒有一步在最低進給。最大的步和第二次修訂相同:T3 陡牆精修 39.6 µm、殘料粗加工 43.9 µm。第 99 百分位比第二次修訂略高,超出 2 % 的容差:T2 陡牆 16.2 對 15.4 µm、T3 陡牆 17.8 對 17.4 µm、T3 緩坡 14.7 對 14.2 µm,以及 T2 緩坡 2.9 對 2.3 µm,遠低於它的上限。V2 從第二次修訂的 439.1 min 省下的 107.7 min 來自三處:粗加工程式 23.7 min,V2 用的是 V1 的 T1;T2 與 T3 的殘料粗加工 44.8 min,加速到每刃上限,沒有切削的段以空切進給走;以及它們的精修 39.1 min,第二次修訂放慢得比 HiNC 的限制所需更多的段再加快回來(不超過程式進給),空切移動以空切進給走。
  • 證據。 下限決定了 T2 陡牆精修 56 %、緩坡精修 63 %,T3 陡牆 45 %、緩坡 24 % 的步:見限制的圖。

每個切削步的進給由哪個限制決定,依操作,V1 與 V2:粗加工是上限,V1 的精修大多是程式進給,V2 有一半的精修步是第二次修訂進給的下限

每個切削步的進給由哪個限制決定,取自優化器在整塊模具上的步級日誌。V3 每一步的求解和 V1 一樣,只有延伸窗不同,所以沒有畫。

7. 被切開的程式行,在幾乎不動的軸上沿用來源行的終點值

  • 情況。 優化器重新插值進給的地方,會把一行原始程式切成幾段,每段寫出自己的終點,並帶著來源行的 (src(...)) 註記。代理的檢查透過這些註記,把寫出的每一點對回它的來源行。
  • 風險。 一個不在程式直線上的點,會把刀帶到 CAM 沒有放的位置;在精修道上,就是牆上的一個台階或過切。
  • 怎麼發現。 V3 的 T2 沒過 O3(a),只有 99.49 % 的格點在 1 µm 內;逐點對回來源行的檢查找到了原因。
  • 解決。 一支最小程式就看得到這個行為。G1 X33 Y6.515 從 X19 Y6.5 開始,Y 每一步只上升 0.00008 mm。某一段的 Y 和前一行寫出的 Y 相差不到 0.0001 mm 時,優化器保留來源行自己的 Y 字——也就是它的終點值——而不是寫出這一段的值:前 10 段裡有 7 段寫成 Y6.515,而那裡的直線是 Y6.5002–6.5011,刀在進刀處橫向來回跳 15 µm,最後一段平行偏離直線 14 µm。誤差的上限是那一軸在這條線上剩下的變化量,所以線愈長愈大:以這副模具的步長,100 mm 的線約 0.14 mm。這副模具的優化程式裡,偏離來源直線超過 1 µm 的每一點都是這一種,最多 8.6 µm(見結果)。代理的檢查把它們移回線上,O3(a) 照寫出的與修正後的兩種都報。
  • 證據。 圖:最小程式的直線與為它寫出的分段,以及每支優化程式裡偏離直線的點。

左:從 X19 到 X33 上升 15 µm 的程式直線,以及寫出的分段在起點附近於 Y6.5 與 Y6.515 之間跳動,之後一路在 Y6.515。右:每支優化程式裡偏離來源直線超過 1 µm 的點,最多是 V3 T2 的 8.6 µm

左:最小程式,Y 以高於 6.5 mm 的微米數畫出。右:模具優化程式裡偏離來源直線的點,與最大的距離。

8. 陡牆過不了的形狀標準

  • 情況。 O3(a) 要求 99.9 % 的 z-map 格點和原始程式的毛胚相差在 1 µm 內。把切開行的點移回線上之後,V3 的 T3 仍有 280 個格點相差超過 10 µm,最大 0.149 mm。
  • 風險。 把真的形狀改變當成網格雜訊,或者反過來。
  • 怎麼發現。 O3(a) 逐格點的比較。
  • 解決。 這 280 個格點全在陡於 82.7° 的牆上,那裡一個格點的高度對路徑次微米的移動極敏感。以格點 (35.6, 8.6) 為例:來源行 175061 是 R1.5 球刀 0.25 mm 的直插;下到 0.82 時球心離這個格點 1.499995 mm,球的赤道剛好碰到,把它切到 z −2.8085。優化器把這一行切在 X35.628 Y7.1——精確值是 Y7.10033——所以切開之後的那一段離格點 1.5000 mm 以上、碰不到,這一點留在 −2.6842。表面只移動了 0.33 µm,那個格點的高度卻差了 0.124 mm。不經取樣的精確掃掠在這 280 個格點給出一樣的差,最大 0.154 mm,所以這是近垂直牆上高度場的性質,不是 z-map 的取樣:1 µm 的高度標準在這種牆上判不了形狀。判定照字面保留。
  • 證據。 結果一節的 O3(a) 表。

9. 探針毛胚上的剪下程式

  • 情況。 整塊模具用 0.0625 mm,每格的記憶體是 0.125 mm 的四倍,六個程式版本太重;但小球刀的負載必須在離它的留量近一點的網格上讀。
  • 風險。 探針上的數字和整支程式經過那塊毛胚時不一樣。
  • 怎麼發現。 計畫時就寫下。
  • 解決。 優化在 0.125 mm 的整塊模具上看整支程式;之後把原始程式與優化後的程式都剪成經過毛胚的移動,在毛胚上以 0.0625 mm 重播,一次 1 到 3 分鐘。
  • 證據。 播在毛胚上,剪下的原程式每個操作接觸毛胚的步,和整支程式播在同一塊毛胚上逐一相同,最大力也相同:T3 精修 208.34 N、殘料粗加工 129.71 N、T1 176.49 N。整支 T1 程式播在毛胚上用了 110 秒、2.0 GB。

10. 只在代理的 z-map 上碰到料的快移

  • 情況。 V1、V2、V3 的 T3 都有一段從原始程式原封不動抄過來的快移 G0 X33.7 Y-6.7,Z−5.23;在 0.05 mm 步距的 z-map 重走上,它碰到料 37 到 117 µm 深(最多 0.0014 mm³),原始程式的重走則不碰。
  • 風險。 一支用快移切料的優化程式。
  • 怎麼發現。 z-map 重走裡「切到料的快移」的計數。
  • 解決。 從同一個毛胚以 0.01 mm 的步距重走,原始程式與 V1 都不碰:碰到的是重走在取樣快移之前被切開的移動,不是程式本身。
  • 證據。 原始程式與 V1 以 0.01 mm 重走,沒有切到料的快移。

11. 沒有人設的限制

  • 情況。 HiNC 的後角限制預設是開的,它把每刃進給壓在刃口的後刀面不會壓上未切削材料的範圍內(後刀面避讓)。在 V1 裡,它決定了 T2 殘料粗加工 7.5 % 的切削步、緩坡精修 5.5 % 的切削步。
  • 風險。 把這些較慢的步讀成代理設的負載限制造成的。
  • 怎麼發現。 步級日誌的分類(O9)。
  • 解決。 照 HiNC 的預設開著,結果裡另外列出。
  • 證據。 限制的表與圖。

12. 較小的幾件

發生了什麼 風險 怎麼看出來 怎麼解決 成立的證據
第一次修訂當時沒有留下 拿一個拿不出來的修訂比較 計畫時的清點 用案例自己的 CAM 腳本重新產生;同一支腳本逐位元組重現了留下來的原程式與第二次修訂 它的時間 T2 117.94、T3 220.10 min,對上第一次修訂記錄的 117.9 與 220.1 min
T1 的優化播放峰值 46.3 GiB,重播只要 4.9 GiB 擠到共用伺服器上的線上服務 記憶體紀錄 上面的守護程式與 40 GB 規則;一支程式一輪 每次播放都跑完;守護程式沒有停過任何一次
探針試跑用到 4.7 GiB、探針播放 1.9–2.7 GB,超過不排鎖可以用的 1.5 GB 共用伺服器上同時跑兩個重的工作 實例的記憶體 從當晚 20:30 起,每次探針播放都排共用鎖 每次播放紀錄裡的排鎖旗標
重啟的實例拿不到埠,因為舊實例還佔著 一串播放在開頭就失敗 一次啟動失敗 播放鏈等埠釋放之後才重啟實例 之後每次播放都啟動了
V1 三支程式的整塊模具重播約要 2.5 小時、30 GB 把鎖從 V3 與 V2 手上拿走 估計 依事先寫的規則,整塊模具重播只給峰值守住的變體裡最快的那個;沒有一個合格,所以只重播了 V1 的 T1,V1 的 T2、T3 以探針與 z-map 判 T1 的重播:每一行都跑到,41.11 min,在目標內
V2 的 T3 被排成從原程式 T2 留下的毛胚開始,不是第二次修訂的 V2 的 T3 在錯的毛胚上優化 還在等鎖時發現 開始前停掉;先單獨播第二次修訂的 T2 記下毛胚,再在它上面優化 V2 的 T3 V2 的 O3(a) 比的是第二次修訂自己的毛胚
共用鎖不照順序;有一次等了一個多小時 研究的尾端一直輪不到 排隊時間 取消 0.25 mm 的延伸窗試跑(難題 5),也取消三張規劃中的畫面,其中一張等了 83 分鐘;T1 的重播照做 T1 的重播等了 64 分鐘後跑完
畫面播放和試跑共用一個小實例 排隊中的試跑蓋掉要截圖的那一次播放 排隊順序 每張畫面拍好之前先停掉排隊中的試跑,拍完再排回去 本頁的四張畫面

結果與效益

在 HiNC 3.2.45 上量得:整塊模具在 0.125 mm 的優化播放,一支程式一輪;剪下的程式在探針毛胚上以 0.0625 mm 重播;T1 在整塊模具上以 0.125 mm 重播。優化後 T2、T3 程式的時間是代理在 z-map 上的計算——進給長度除以進給、快移 24 m/min——因為它們沒有做整塊模具的重播;凡是 HiNC 在整塊模具上播過的程式——三支原程式、第二次修訂的 T2 與 T3、V1 的 T1——它自己的模擬時間和這個計算相差在 0.04 % 以內。

# V1,原程式,2 mm 延伸窗 V2,第二次修訂,不比它慢 V3,原程式,沒有延伸窗
O1 過。 三次優化播放每一行都跑到(70,567/190,004/400,570),建好進給、寫出檔案;唯一的警告是 T1 的一則 Play-RapidCut--Detected,就是原始程式自己的那一段快移,0.0002461 mm³。探針重播每一行都跑到、沒有警告。T1 的整塊模具重播:每一行都跑到、沒有 Collided、同一則快移訊息,41.114 min 過。 每次優化播放一則 NcOpt-Feed--SourceFloorOverTarget,是下限預期的報告;每一行都跑到(190,014/400,577);探針重播沒有警告 過。 同 V1;探針重播沒有警告
O2 探針上過:在最低進給之上超過上限的只有 1 步,T3 陡牆精修 12.71 µm。T1 在整塊模具上:186,846 個切削步裡,沒有一步功率或扭矩超過 0.667、或應力超過它的目標 照字面未過:T2 陡牆精修 93 步、T3 陡牆精修 1,268 步、緩坡精修 64 步、殘料粗加工 5 步,在最低進給之上超過上限——是第二次修訂自己的步,被下限擋在它的進給上 未過:T3 殘料粗加工 238 步(2.2 %,最高 89.5 µm)、陡牆精修 127 步(1.0 %)
O3(a) T1 100 %(最大 0.13 µm),過;T2 99.82 %,未過(把切開行的點修回線上是 99.99 %);T3 99.94 %,過 對第二次修訂自己的毛胚,T2 99.98 %、T3 99.93 %:過 T2 99.49 %,未過(修正後 99.996 %);T3 99.84 %,未過(修正後 99.896 %,其餘都在陡牆上,難題 8)
O3(b) 沒做:T2、T3 沒有整塊模具重播 沒做 沒做
O4 預測 280–345 min,實測 659.0:沒中(難題 3);T1 預測最多 50 min,實測 41.1:中 預測 330–420 min,實測 331.5:中 預測最多 439.1 min,實測 251.9:中
O5 過:每個 T2、T3 精修操作的第 99 百分位與最大值都低於原程式,超過 12.5 µm 的比例沒有變大(T3 陡牆 23.3 → 6.1 %) 照字面未過:最大的步與第二次修訂相同;四個精修操作的第 99 百分位都高於第二次修訂 × 1.02(難題 6) 精修過;它的殘料粗加工沒過 O2 與 O8
O6 照字面未過:T1、T2、T3 各有 1、20、42 段以高於上限的進給切到料,深於 12.5 µm 的只有一段,13.8 µm;其餘是 2–11 µm 的擦邊 照字面未過:1、20、43 段,深於 12.5 µm 的一段,13.8 µm 未過:T2 3,156 段、T3 26,838 段,516 段深於 12.5 µm,最深 50 µm
O7 過:每支檔案都和原始程式不同;程式改寫沒有錯誤 過 過
O8 過:超過上限的 1,423 步裡 1,422 步在最低進給,最後一步在 2 % 內 不適用:它超過上限的步被擋在第二次修訂的進給 未過:殘料粗加工 238 步、陡牆精修 127 步、T2 陡牆 6 步、T3 緩坡精修 2 步在最低進給之上
O9 照預測:T1 粗加工 99.8 % 頂在上限;T2、T3 精修 84–93 % 守在程式進給;凹角的下刀在最低進給 下限決定了 24–63 % 的精修步 每一步的求解和 V1 一樣;只有延伸窗不同

一半模具每把刀的時間(min):

程式版本 T1 T2 T3 一半模具 對原程式 對第二次修訂
原程式 64.84 101.12 176.85 342.8 — −21.9 %
第一次修訂(手動) 64.84 117.94 220.10 402.9 +17.5 % −8.3 %
第二次修訂(手動) 64.84 121.98 252.33 439.1 +28.1 % —
V1,2 mm 延伸窗 41.10 160.19 457.75 659.0 +92.2 % +50.1 %
V2,第二次修訂、不比它慢 41.10 90.12 200.23 331.5 −3.3 % −24.5 %
V3,沒有延伸窗 41.10 78.65 132.11 251.9 −26.5 % −42.6 %

一半模具每把刀堆疊的模擬時間,原程式、兩次手動修訂與三個變體:342.8、402.9、439.1、659.0、251.9 與 331.5 分鐘

一半模具,依刀具分。每個變體的 T1 都從 65 降到 41 min;變體之間的差別在 T2 與 T3。

時間花在哪裡,每把刀、每個版本,取自 z-map 重走(min):

刀具 版本 切削進給 空切進給 快移
T1 原程式、第一與第二次修訂 58.83 5.41 0.61
T1 每個變體 39.50 0.99 0.61
T2 原程式 60.87 34.88 5.37
T2 第二次修訂 81.73 34.88 5.37
T2 V1 97.80 57.02 5.37
T2 V2 62.17 22.59 5.37
T2 V3 52.98 20.31 5.37
T3 原程式 80.91 85.65 10.29
T3 第二次修訂 156.39 85.66 10.29
T3 V1 268.94 178.52 10.29
T3 V2 118.36 71.58 10.29
T3 V3 68.42 53.39 10.29

原程式有 37 % 的時間是空切進給:T3 的分層殘料粗加工與平行精修,跨過已經沒有料的地方。兩次手動修訂都沒有改到這一塊;優化器則把延伸窗內沒有切削的段落以該刀的空切進給送出。

探針毛胚上的小球刀。 切削步上主軸每轉一圈的 XY 刀尖撓曲,第 99 百分位/最大,括號是超過上限的步的比例:

操作(上限) 原程式 第一次修訂 第二次修訂 V1 V2 V3
T2 D6 精修,陡牆(12.5 µm) 46.3/68.1 µm(14.6 %) 16.2/68.1 µm(1.5 %) 15.4/31.6 µm(1.9 %) 10.7/14.2 µm(0.2 %) 16.2/31.6 µm(2.3 %) 12.0/14.2 µm(0.6 %)
T2 D6 精修,緩坡(12.5 µm) 3.0/3.4 µm(0) 2.3/3.4 µm(0) 2.3/3.4 µm(0) 2.9/3.4 µm(0) 2.9/3.4 µm(0) 2.9/3.4 µm(0)
T3 R1.5 殘料粗加工(40 µm) 53.4/70.0 µm(11.3 %) 47.2/65.1 µm(5.7 %) 33.2/43.9 µm(0.02 %) 36.5/39.8 µm(0) 38.0/43.9 µm(0.03 %) 41.0/89.5 µm(2.2 %)
T3 R1.5 精修,陡牆(12.5 µm) 32.1/112.4 µm(23.3 %) 18.0/112.4 µm(10.2 %) 17.4/39.6 µm(10.0 %) 15.0/23.8 µm(6.1 %) 17.8/39.6 µm(11.4 %) 16.4/23.8 µm(11.7 %)
T3 R1.5 精修,緩坡(12.5 µm) 20.5/96.7 µm(1.8 %) 14.7/96.7 µm(1.4 %) 14.2/32.3 µm(1.4 %) 12.3/18.3 µm(0.7 %) 14.7/32.3 µm(1.6 %) 13.4/18.1 µm(1.3 %)

同樣這些步的最大力與應力比:

操作 原程式 第一次修訂 第二次修訂 V1 V2 V3
T2 精修,陡牆:力/應力比 516 N/0.84 516 N/0.84 231 N/0.38 111 N/0.16 231 N/0.38 111 N/0.16
T3 殘料粗加工 130 N/0.56 120 N/0.52 83 N/0.35 74 N/0.31 83 N/0.35 157 N/0.70
T3 精修,陡牆 208 N/0.91 208 N/0.91 74 N/0.32 46 N/0.19 74 N/0.32 46 N/0.19
T3 精修,緩坡 173 N/0.76 173 N/0.76 58 N/0.25 34 N/0.14 58 N/0.25 34 N/0.14

探針毛胚上小球刀的刀尖撓曲,每個操作六條長條,分別是原程式、兩次修訂與三個變體,每條從中位數畫到第 99 百分位,圓點是最大的一步,並畫出 12.5 與 40 µm 的上限

探針毛胚上主軸每轉一圈的刀尖撓曲,對數刻度。每條長條從中位數畫到第 99 百分位;圓點是最大的一步。虛線:12.5 µm 的精修上限;點線:T3 殘料粗加工的 40 µm 上限。

一半模具的時間對 R1.5 球刀最大與第 99 百分位的撓曲,每個程式版本一點:V1 在右邊,659 分鐘、24 µm;V2 在 331 分鐘、40 µm;V3 在 252 分鐘,精修 24 µm、殘料粗加工 90 µm;兩次手動修訂在 403 與 439 分鐘

時間對 R1.5 球刀的撓曲,左是等高精修、右是殘料粗加工。沒有一個版本在兩張圖裡都落在左下:V1 峰值最低但最慢,V3 最快但殘料粗加工沒過,V2 比原程式快、峰值是第二次修訂的。

粗加工刀在整塊模具上,主軸功率比除以 0.667 超過某值的切削步比例,原程式與 V1;T3 陡牆精修在探針上,撓曲除以 12.5 µm 超過某值的比例,各版本

左:兩者 T1 的功率都離目標很遠,最多是目標的 0.55。右:T3 陡牆精修對 12.5 µm。曲線畫到萬分之一的比例為止,差一點就到最大的步:原程式是上限的 9 倍,第二次修訂與 V2 是 3.2 倍,V1 與 V3 是 1.9 倍。

整塊模具上的粗加工刀,原程式的優化播放對 V1 的重播:

T1 D10 R1,整塊模具 0.125 mm 原程式 V1
模擬時間 64.86 min 41.11 min
切削步 242,121 186,846
每刃進給,中位數 0.069 mm 0.104 mm
主軸功率比(短時額定),最大/第 99 百分位 0.37/0.086 0.35/0.126
主軸功率比(連續額定),最大 0.49 0.46
扭矩比,最大 0.15 0.14
應力比,最大 0.30 0.27
力,最大/第 99 百分位 813/337 N 775/392 N
XY 刀尖撓曲,最大/第 99 百分位 18.1/5.7 µm 17.6/7.8 µm

T1 在整塊模具上的粗加工:原程式與 V1 每 10 秒的最大主軸功率比,都遠低於 0.667 的目標;V1 在 41.1 分鐘結束,原程式 64.9 分鐘

T1 在整塊模具上,每 10 秒的最大主軸功率比。決定 T1 進給的不是主軸,是上限。

T1 切削步的每刃進給,依時間加權:原程式在 0.069 mm,V1 在 0.104 mm 的上限

T1 的切削時間依每刃進給分布:V1 把它從程式的 0.069 mm 搬到 0.104 mm 的上限。

誰決定進給,取自優化器在整塊模具上的步級日誌:每一步在自己的求解裡,允許進給最低的那個限制;延伸窗與加速度平滑在這之後還會把一些進給再壓低(難題 3):

變體、操作 切削步 上限 守在程式進給 不比第二次修訂慢 刀具應力 目標切削力 後角 最低進給
V1,T1 等高粗加工 209,381 99.8 % — — — — 0.2 % —
V1,T1 平面到尺寸 32,739 — 99.6 % — 0.3 % 0.1 % 0.1 % —
V1,T2 殘料粗加工 127,960 89.9 % — — 2.5 % — 7.5 % 2 步
V1,T2 精修,陡牆 212,832 — 92.7 % — 3.7 % 1.7 % 1.9 % 0.02 %
V1,T2 精修,緩坡 234,669 — 90.6 % — 3.8 % 0.2 % 5.5 % 8 步
V1,T3 殘料粗加工 277,908 88.3 % — — 5.3 % 4.4 % 1.9 % —
V1,T3 精修,陡牆 349,776 — 84.4 % — 10.7 % 3.3 % 0.02 % 1.6 %
V1,T3 精修,緩坡 178,373 — 90.2 % — 2.1 % 2.1 % 3.2 % 2.2 %
V2,T2 殘料粗加工 155,475 88.6 % — 7 步 4.7 % — 6.6 % —
V2,T2 精修,陡牆 286,249 — 26.8 % 56.2 % 10.0 % 3.3 % 3.8 % —
V2,T2 精修,緩坡 303,428 — 34.9 % 63.4 % 0.5 % 0.1 % 1.1 % —
V2,T3 殘料粗加工 466,601 85.5 % — 1.0 % 6.6 % 4.1 % 2.7 % —
V2,T3 精修,陡牆 547,027 — 31.1 % 44.7 % 22.7 % 1.5 % 0.02 % —
V2,T3 精修,緩坡 419,113 — 71.3 % 24.0 % 2.5 % 1.7 % 0.5 % —

主軸功率與扭矩在任何一個操作都只決定不到 0.1 % 的步。這裡的切削步是原始程式在優化播放裡的切削步。

代理 z-map 上的形狀:每支優化後的程式從它的原始程式開始時的毛胚重走,和原始程式自己的重走比,差在 1 µm 內的格點比例(標準 99.9 %),照寫出的與把切開行的點移回線上的兩種:

程式 V1 照寫出/修正後 V2 照寫出/修正後 V3 照寫出/修正後 最大差,照寫出
T1 100 % 用 V1 的 T1 用 V1 的 T1 0.13 µm
T2 99.82/99.99 % 99.98/99.996 % 99.49/99.996 % V1 7.2、V2 6.1、V3 8.6 µm
T3 99.94/99.96 % 99.93/99.97 % 99.84/99.896 % V1 20.4、V2 36.7、V3 148.9 µm

偏離程式直線的點,每支優化檔的每一點對回它的來源行:

程式 寫出的點 偏離直線超過 1 µm 最大
V1 T1 70,857 0 0.6 µm
V1 T2 203,523 346 5.4 µm
V1 T3 441,258 302 4.9 µm
V2 T2 195,978 57 3.45 µm
V2 T3 437,181 626 5.1 µm
V3 T2 261,298 4,672 8.6 µm
V3 T3 564,225 1,592 4.9 µm

空切進給對料(O6):在代理的 0.05 mm z-map 上,以高於該操作上限的進給切進深於 2 µm 的段:

變體 T1 T2 T3 深於 12.5 µm 最深
V1 1 20 42 1 13.8 µm,T3 殘料粗加工
V2 1 20 43 1 13.8 µm,T3 殘料粗加工
V3 1 3,156 26,838 516 50 µm,T2 殘料粗加工

優化後的檔案(優化器在重新插值進給的地方會把一行拆成幾行):

程式 行數,原始 → 優化後 F 字數,原始 → 優化後 寫出的進給 以空切進給的行
V1 T1 70,568 → 70,878 306 → 591 367–14,560 mm/min 203
V1 T2 190,005 → 203,547 646 → 24,706 100–3,680 mm/min 4,395
V1 T3 400,571 → 441,281 30,257 → 62,426 100–2,140 mm/min 9,617
V2 T2 190,015 → 196,012 24,003 → 20,815 300–3,680 mm/min 4,403
V2 T3 400,578 → 437,211 89,718 → 106,996 100–2,140 mm/min 9,818
V3 T2 190,005 → 261,322 646 → 130,845 100–3,680 mm/min 40,096
V3 T3 400,571 → 564,248 30,257 → 340,826 100–2,140 mm/min 121,307

執行的代價,在共用的 32 執行緒伺服器上:

播放 步數 伺服器時間 記憶體峰值
T1 優化播放,整塊模具(每個變體共用) 275,011 29.1 min 46.3 GiB
V1:T2 與 T3 的優化播放 1,105,079 與 2,342,051 14.3 與 28.5 min 約 20 與 20.5 GiB
V3:T2 與 T3 的優化播放 1,105,079 與 2,342,051 12.3 與 28.0 min 20.3 與 20.2 GiB
V2:T2 與 T3 的優化播放 1,315,363 與 3,249,370 16.4 與 37.9 min 31.6 與 27.3 GiB
第二次修訂的 T2 一般播放,給 V2 起始的毛胚 1,315,363 11.4 min 7.6 GiB
V1 的 T1 在整塊模具上重播 199,311 16.4 min 4.9 GiB
探針毛胚上的 22 次播放:重播、試跑、畫面、最小程式 — 每次 5 秒到 3.3 min,合計 37 min 1.2 到 4.7 GiB

整塊模具的播放共用了 194 min 的伺服器時間;T1 的重播另外在鎖上等了 64 min。V1 的 T2 優化播放沒有取樣到記憶體。從第一次試跑到最後一次重播,這次研究在一個晚上跑完。

給加工工程師。 一副精修球刀在等半徑凹角裡過載的模具,HiNC 的優化依它被允許做什麼,做出三種不同的事。允許它把精修降到撓曲上限,它會把超限的步除了一步都降到最低進給,並顯示在凹角裡即使這樣仍有 13–24 µm:那裡要改的是進刀或刀具,不是進給。接著它的延伸窗讓模具慢了 92 %,因為一個在最低進給的步,連周圍的路徑也一起放慢。沒有延伸窗,模具快了 26.5 %,但在比精修留量粗的網格上,模型會漏看負載,殘料粗加工彎到 89.5 µm。不准它低於手動修訂的程式,它讓那支程式少了 24.5 %(其中五分之一在粗加工),峰值留在原處。每一種情況下,粗加工都快了 36.6 %,靠的是代理選的上限。而優化後的檔案要對照它的來源行檢查:被切開的行可能帶著不在路徑上的點。

給老師或學生。 一副模具說明了進給優化器守什麼、不守什麼:它沒有內建的撓曲準則,所以上限必須由它守得住的準則來承載——這裡是刀具應力,它和撓曲來自同一個彎矩。它也說明了讓進給平滑的延伸窗,怎麼把一個慢步攤到 4 mm;為什麼比留量粗的網格會讓快速的優化不可信;以及為什麼有些峰值是幾何,不是進給。

給評估這種做法值不值得的人。 從三支驗收過的程式與兩次手動修訂,到三個優化變體,花了一個晚上:九次整塊模具播放、194 min 的伺服器時間、記憶體最高 46.3 GiB,以及探針毛胚上 22 次輕的播放。代理先寫標準與決定規則,在試跑時發現目標切削力對斜降不起作用,在第一次整塊模具播放之前就把上限改由刀具應力承載,加做了解釋自己預測沒中的變體,也照實報告沒過的標準。留給工程師的是凹角的進刀方式,以及要不要接受手動修訂程式上的 24.5 %。

誠實的限制

  • 目標切削力在斜降與下刀上不會降低進給。 那些步上它幾乎都給上界;水平的步上它守得住。所以撓曲上限是由刀具應力準則、透過每個操作的降伏係數承載的。
  • 撓曲是 HiNC 刀具樑模型的讀數,不是量測,而且這裡的去料幾何不含撓曲:播放關著 HiNC 的撓曲變換,形狀的比較讀的是程式路徑。
  • 沒有任何進給能讓凹角回到 12.5 µm 內。 在最低進給 100 mm/min 下,R1.5 球刀在那裡仍彎 13 到 24 µm;要改的是進刀或刀具。
  • 凹角的負載可能讀得偏高。 小刀正面撞上轉角時,HiNC 可能把負載讀高——射出模的案例量到直線切削負載的 3.3–6.8 倍,實際截面只有 1.6–1.8 倍——而這次研究沒有量這個凹角的實際截面。所以「怎麼降進給都回不到 12.5 µm 以下」是 HiNC 的讀數;那裡實際的撓曲可能較小。
  • 延伸窗在每一步求解之後才作用,把慢步兩側各 2 mm 守在它的進給;最低進給的步一多,程式就變得很長。
  • 網格比精修留量粗。 優化以 0.125 mm 進行,T3 的留量是 0.04 mm;撓曲的判定只來自凹角上的探針毛胚。整塊模具在 0.125 mm 上,別處有些地方讀到更大的負載——原程式 T3 緩坡精修的第 99 百分位 156 N、88.8 µm——沒有在更細的網格上判定。
  • 優化後的檔案可能帶著不在程式直線上的點。 優化器把一行切開、而某一軸在一段裡移動不超過 0.0001 mm 時,這一段在那一軸上保留來源行的終點值:這裡最多 8.6 µm,100 mm 的線約 0.14 mm。優化後的檔案送上機台之前,先對照它的來源行檢查。
  • 優化後的 T2、T3 程式沒有在整塊模具上重播,也沒有拿匯出的毛胚對設計量(O3(b));它們的形狀是代理 z-map 的比較,時間是 z-map 的計算,而在 HiNC 播過的程式上,這個計算都和 HiNC 對得上。
  • 時間是理想進給的估計,不含控制器的加減速與前瞻:版本之間的比例可信,絕對值不是現場時間——見加工時間估算。
  • 收益靠代理訂的上限,粗加工每刃進給的 1.5 倍,不是刀具廠的資料。
  • 排屑、顫振與表面粗糙度都沒有建模。 只播了下模;上模是同樣的形狀與程式。
  • 機台、主軸與刀具都是通用的,負載來自 HiNC 對所選模具鋼的資料庫係數;沒有在機台上量過任何東西。

讀者可以帶到自己案例的

  • 把撓曲上限放在每一步都會作用的準則上。 這裡目標切削力對斜降與下刀不起作用;刀具應力和撓曲來自同一個彎矩,它起作用。
  • 確認上限真的壓得住。 拿步級日誌裡每個準則允許的進給,和每一步優化前的負載比;一個從來沒有綁住的目標,看起來和綁住的一模一樣。
  • 最低進給仍讓某一步超限時,改路徑,不要改進給。 看哪些步在最低進給、它們在哪裡。
  • 算一算延伸窗的代價。 一個在最低進給的步會放慢它周圍的延伸窗;這種步多的長程式,可能比原始程式還慢。
  • 網格比留量粗時,不要拿掉延伸窗,除非在更細的網格上檢查過結果;這裡那樣做放過了 89.5 µm。
  • 已驗證的程式,以它自己的進給當下限,前提是它的慢步是刻意選的:100 % 的原始進給率下限讓手動修訂的程式少了 24.5 %,峰值不變。
  • 優化後的檔案送上機台之前,對照它的來源行檢查。
  • 決定規則要寫在決定它的試跑之前,預測沒中就連原因一起報告。
  • 預留記憶體。 一次優化播放可能需要它重播的好幾倍:T1 是 46.3 GiB 對 4.9 GiB。

來源與授權

  • 來源: Anna Dziubińska(華沙理工大學),「The New Technology of Die Forging of Automotive Connecting Rods from EN AB-71100 Aluminium Alloy Cast Preforms」,Materials 2023, 16(7), 2856,doi:10.3390/ma16072856(PMC10095791)。連結失效時可搜尋:Dziubińska 2023 connecting rod EN AB-71100 die forging、ma16072856。
  • 授權: CC BY 4.0。文章寫明:「Copyright: © 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).」(© 2023 作者。授權方 MDPI,瑞士巴塞爾。本文為依創用 CC 姓名標示 (CC BY) 授權條款散布的開放取用文章。)授權依原樣提供素材,不附任何保證。本頁不代表作者或出版者的背書。
  • 姓名標示: 「Forging drawing and die photograph: A. Dziubińska, Materials 2023, 16, 2856, doi:10.3390/ma16072856, CC BY 4.0. Die design and machining set-up by Tech Coordinate's agent.」(鍛件圖與模具照片取自 A. Dziubińska,Materials 2023, 16, 2856,CC BY 4.0;模具設計與加工設定由 Tech Coordinate 的代理完成。)
  • 用了什麼、改了什麼: 論文給的是鍛件圖、鍛件體積、製程溫度與模具照片;模具的案例頁寫了代理怎麼用它們。模具、它的材料、機台、刀具、程式,以及這裡的優化,都出自代理。本頁沒有重製論文的任何一張圖:畫面是 HiNC 對代理所設計模具的模擬,圖表畫的是 HiNC 的逐步結果與代理自己的 z-map。本站不提供下載:讀者自行到出版者處取得論文。

另見