跳轉到

訓練切削集的設計

訓練是把仿真力對著量測力擬合一組刀路,藉此回推六個銑削係數。一組刀具與刀路究竟能不能決定這些係數,取決於設計而不是資料品質:有兩種特定的退化會讓某個係數無論樣本多乾淨都回推不出來。兩者各有各的解法,而且互相不能替代。

兩種退化

出了什麼事 在結果上長什麼樣 什麼能消掉它
彎矩平面的零空間。 在轉動平均後的 Mx/My 裡,刃口剪切係數與法向剪切係數的某一個特定組合是完全不可觀測的 剪切係數回來時大了好幾個數量級,而且對同一份資料重跑,正負號會翻 螺旋角的多樣性——同一次訓練裡的刀具至少要有兩個明顯不同的螺旋角
斜率與截距的共線性——剪切係數與犁切係數是同一條直線的斜率與截距 相關係數看起來仍然很好。剪切係數低約一成,犁切係數高約五成 每刃進給要有跨度——刀路之間要有一段切屑負荷的範圍,而不是切深的範圍

只解掉其中一個而不解另一個,這組資料仍然會失敗,而且會以沒解掉的那一種方式失敗。兩者都是整組刀路的性質,所以兩者都在切下第一刀之前就決定了。

為什麼螺旋角是那根槓桿

不可觀測的方向,是刃口剪切係數與法向剪切係數以螺旋角的餘弦與正弦加權後的組合。改變螺旋角並不會消掉那個方向——它只是把它轉了個角度。因此兩個相隔夠遠的螺旋角會給出兩個不同的零方向,兩者唯一的共同點是零,於是併起來的擬合完全沒有零空間,刃口係數單靠量測就可辨識:不需要扭矩通道、不需要先驗值、也不需要外部餵進來的相位。

只用單一個螺旋角零度是最糟的情形,而且糟得很有欺騙性,因為它讓零方向正好對齊刃口係數那一軸。這樣設計出來的切削集,回傳的刃口係數是零空間填充值而不是資料要求的值;偏偏它旁邊的法向係數會是整頁最準的數字。

怎麼讀單一螺旋角的結果(重要)

在單一螺旋角下,刃口與法向剪切係數各自的數值本身沒有意義,即使相關係數很高也一樣。判斷一次訓練要看它重現出來的力隨時間的曲線——見切削力與扭矩驗證——而不是看任何單一個係數的大小。

刃數不是槓桿

同一把對稱多刃刀具再多跑幾趟,不管進給怎麼給,都買不到東西。那個樣本子空間本來就是退化的,多來一些仍然是退化的。等距分布的刀刃也會把轉動平均後的橫向力矩抵消掉,而一次訓練正是靠這個力矩推出自己的刀具相位,所以一組全部由對稱刀路構成的集合本身不帶任何相位參考。接下來會以哪種方式失敗,取決於量了哪些通道:有軸向扭矩通道時,擬合仍會收斂,並在大了好幾個數量級的剪切係數上回報很高的相關係數;沒有它時,擬合會直接崩掉而不是變差。兩種結果都不能用,多加刀路也修不好任何一種。真正買得到可辨識性的是跨度——螺旋角的跨度,以及每刃進給的跨度。

從外部供應相位,只能消掉問題的那一半,別的都不會變。EnableCwePhasePairing (API) 會從接觸區塊 (engagement blocks) 讀出每一步的相位,而不是從樣本自舉出來,適用於輕徑向切入側銑中的單刃與對稱兩刃刀具;超出這些前提時,訓練會退回自舉的路徑並發出警告,所以四刃的切削集救不回來。單一螺旋角留下的零空間,無論哪種做法都原封不動。

出貨的智慧刀把切削集正是這個樣子:它的銑削刀路是一把對稱四刃端銑刀、兩種進給,所以整組只在每刃進給上有跨度,決定不了它自己的刃口與法向剪切值——見智慧刀把訓練。

不過市售的對稱刀具就夠了。兩種解法都不需要客製的單刃研磨;兩把庫存的兩刃刀具磨成不同螺旋角,就帶著同樣的可辨識性,而且那是工廠真的拿得到的東西。

切入量:側銑而不是槽銑

有用的激振來自徑向切入量夠小、小到同一時間最多只有一條螺旋刃在接觸的刀路——接觸弧要比刃與刃之間的角距還窄。整條槽銑會同時有好幾條刃在切,把擬合正需要的那份變化平均掉了。沿著素材邊緣一階一階走淺側銑,做出來的就是一組沒有任何一刀是槽銑的集合。

加大切深不能代替它。切深移動的是負荷而不是切屑負荷,所以它對「每刃進給跨度」要打破的那個斜率與截距共線性完全沒有作用。

延伸閱讀

  • 智慧刀把訓練 —— 這些限制所適用的出貨切削形狀
  • 刀具幾何 —— 這套設計所仰賴的螺旋角在哪裡描述、在哪裡填