李炳銳
(廣東科杰機械自動化有限公司,廣東江門529000)
基于徑向基函數的刀路跟隨
李炳銳
(廣東科杰機械自動化有限公司,廣東江門529000)
影響3C產品外殼高光亮倒角邊工藝良率的最主要因素是高亮邊是否均勻,由于外殼的剛性低,經過夾具夾緊后不可避免地出現微小的形變,從而導致倒角邊不均勻產生廢品。針對這種由于形變引起的不均問題,采用探針測量工件輪廓上若干點得到變形量,通過支持向量機建立徑向基函數預測模型,修正刀路上的每個點,實現刀路對形變的跟隨,效果顯著。
高光倒角;形變;徑向基函數;刀路跟隨;支持向量機
現在的3C產品通常會采用鎂鋁合金做外殼,很多時候為了美觀會專門在外輪廓銑出一道均勻和高光亮的倒角邊,而高光亮效果可以通過專門的設備和刀具,再采用合適的工藝參數配來獲得,但均勻性卻很難得到保證,因為工件外殼在裝夾是不可避免地產生變形,因此NC刀路需要跟隨工件的變形作出相應的修正,即所謂的刀路跟隨,否則會出現倒角邊不均勻的不良品,如圖1所示。要實現跟隨通常的解決方案是在數控系統里加入路徑優化模塊,比如西門子的CIRCLE832,此外還需要有經驗的工程師來在NC代碼中加入代表探針補償值的R變量,過程非常復雜,而且更換產品后,NC代碼又要重新修改。

圖1 倒角寬度不均
本文通過探針補償值,用徑向基函數構建插值模型來修正NC代碼,實現刀路跟隨,不需要額外優化模塊,更不需要手動修改NC代碼,對于PC-Base類型數控系統可以直接嵌入到系統的譯碼模塊中。
1.1 獲得工件的變形量
要得到工件大概的變形,在工業生產現場是通過在機床生裝備高精度的探針去探測工件外輪廓的有限個點,得到對應位置的變形量。圖2封閉曲線是工件的輪廓,黑點是探測位置。圖3是探測點的變形數據。

圖2 探針探點位置

圖3 探針探測值
1.2 建立徑向基函數模型
得到變形數據后,通過建立徑向基函數模型來對整個刀路中未經探測的點進行預測,補償校正,實現跟隨,這是本文的重點。
2.1 模型的選擇
數學建模有兩種類型可選:一是樣條插值,即插值曲線是由分段的函數組成,每一段都有各自的系數,比如線性樣條、akima樣條、cubic樣條、hermite樣條等,最常用的就是cubic樣條。用樣條來擬合的好處是結構簡單容易實現,但邊界需要仔細處理,不同的邊界類型,曲線的形狀會不同,其次就是某些類型的樣條會有振蕩問題,如圖4所示,另外NC刀路的輪廓是封閉,而常規的樣條函數要求曲線是單調,除非對NC的輪廓做必要的改變,比如展開并且投影到X軸上,如此處理回收模型變得非常復雜,因此不選用樣條函數來建模。

圖4 樣條的局部振蕩
另一類是徑向基函數插值。函數在某輸入點x的值是由各個基函數在x處的值疊加,如圖2,跟B樣條有些類似,但B樣條除了疊加,還要乘上控制向量的值,并且兩者的基函數不同。徑向基函數插值可以通過不同λ值(正則系數或者懲罰系數)來改變插值精度,避免過擬合并提高預測能力,如圖5所示。如果徑向基函數的類型是高斯函數,用C/C++語言實現起來相當方便,因此選用徑向基函數插值來處理。

圖5 懲罰系數的影響
2.2 徑向基函數的特性及其求解
圖5和圖6是用Gaussian函數g(x)=e-(x-x0)2進行插值的示意。插值過程,就是用一系列位于不同位置(這里的位置對應探針的探測點位置)的Gauss函數疊加,得到一個函數,該函數過給定的樣本點。常用的徑向基函數有以下一些:

圖6 徑向基函數疊加插值

這里選Gaussian型函數。g(x)=e-(x-x0)2是一個一元Gaussian型徑向基函數,φ(X)=e-‖X-X0‖2是多元Gauss型徑向基函數,用φ(‖X-Xi‖)表示,其中X,Xi∈Rm0,φ(X)∈R1.于是,用徑向基函數進行插值得到的多元近似函數可以一般地表示為:F

(X)∈R1可以看成是(m0+1)維空間上的一個曲面。圖7所示。

圖7 徑向基函數插值曲面
用N個徑向基函數(N等于探針探點個數)對樣本所表示的未知函數進行插值。用φi(‖X-Xi‖)表示Xi探針點的徑向基函數,而該函數在Xj點的取值表示為:φji(‖Xj-Xi‖),于是,插值函數應該滿足:

Φ為系數矩陣,通過把探點數據代入φ(‖X-Xi‖)得到,D是探點數據組成的向量,W就是所求的系數向量。得到W后,把NC刀路上每個點X代入(1)式,就可得到該點的預測修正量。如果加入正則項λ,對應的求解公式為(G+λ·I)·W=d,G是Φ格林函數,如果徑向基函數采用用高斯函數,兩者是等價的。接下來是求解各個基函數系數。
2.3 在數控系統中的應用
盡管求解各基函數系數的過程比較復雜,但可以通過現有的算法來解決。
(1)直接求解kernel ridge regression問題(結構簡單,但涉及到矩陣運算);
(2)支持向量機(Support Vector Machine)算法。
這兩種方法形式很相似,只是Loss函數不同,前者是Square Loss(L2范數),后者是Hinge Loss(L1范數),這里選用支持向量機SVM,網上已經有了開源的C語言版算法包,很容易嵌入到PC-Base類型的數控系統當中。SVM常用于模式分類中,但同樣可以用于插值和預測。SVM通過輸入樣本,篩選出一定數量支撐向量,來構造出一張擬合(或分類)曲面,如圖7所示,只要SVM選取徑向基函數作核函數,選取合理的gamma值,就可以得到所需的效果。
在實際加工中,先以原始若干個三維探測坐標值(x,y,z)作為參考去探測工件輪廓,再把測到的三個方向補償值(dx,dy,dz)作為目標值,作為訓練樣本一次性輸入到SVM中,最終得到三張擬合曲面,可以通過它們來預測輸入點三個方向的補償值,并根據需要生成一個新的文件。由于高斯是連續可導,并且形狀可以通過gamma值來控制,擬合精度可以通過λ值來控制,λ決定擬合曲面是否過輸入點,因此擬合曲面可以做到相當平滑,SVM是通過LIBSVM來實現,可以瞬間完成訓練。現在已經把SVM的源碼成功嵌入到本人所在公司的CNC系統當中,執行效率也要相當高,SVM的訓練過程也只需數毫秒,而對輸入坐標的預測也要在1 ms內完成,在工廠的加工效果令人滿意,如圖8.以下是用C++實現的建模和預測的部分程序代碼。

圖8 刀路跟隨的加工效果
int CCtrl::AddPathCapTabledata(short ptNums,short group)//模型訓練函數
{...
for(int i=0;i { //探測位置 xpos[i]=m_cptPts[i].pos[0]; ypos[i]=m_cptPts[i].pos[1]; zpos[i]=m_cptPts[i].pos[2]; //探測位置對應的補償值 dx[i]=m_cptPts[i].cptValue[0]; dy[i]=m_cptPts[i].cptValue[1]; dz[i]=m_cptPts[i].cptValue[2]; } m_RBFModel.SetSampleNum(ptNums);//設置樣本個數 m_RBFModel.Train(xpos,ypos,zpos,dx,dy,dz);//訓練模型 ... } int CCtrl::addToBuf(char*p) {// ... x=m_compileData.OutData('X');//先取出刀路上的點 y=m_compileData.OutData('Y'); z=m_compileData.OutData('Z'); gp_Pnt pt(x,y,z); gp_Pnt dv(0,0,0); m_RBFModel.Calc(pt,dv);//用模型修正刀路上的每個點 x+=dv.x;m_compileData.InData('X',x);//把修正后的點壓回去 y+=dv.y;m_compileData.InData('Y',y); z+=dv.z;m_compileData.InData('Z',z); ... } 徑向基函數模型可以通過兩種方式來對NC代碼的跟隨,一種是離線式,通過外置的計算機生成一個新的NC文件覆蓋原文件,需要外置的計算機跟數控系統通訊,另一種是集成式,徑向基函數模塊以類庫的形式集成到是數控系統里,PC-Base類型的數控系統很容易實現,圖9是徑向基函數刀路跟隨的具體流程。 圖9 徑向基函數刀路跟隨流程 基于徑向基函數的刀路跟隨可以大幅降低對數控系統高級功能模塊的依賴,降低NC代碼的復雜度,執行效率高,容易集成到數控系統當中,該方案已經在某著名代工廠的生產線上大量應用,加工效率和產品的良率都得到提高。 [1]機器學習實踐Machine learning in action[M]/(美)哈靈頓(Harrington,P.)(2013)ISBN 978-7-115-31795-7. [2]Buhmann,Martin D.(2003),Radial Basis Functions:Theo ry and Implementations[M].Cambridge University Press,ISB N 978-0-521-63338-3. [3]Chang,Chih-Chung;Lin,Chih-Jen(2011).LIBSVM:A li brary for support vectormachines[Z]. ToolPath Follow ing Bases on RadialBasis Function LIBing-rui Themain factors affecting the 3C shell high brightness chamfered edge process yield is to highlight the edge is uniform,because the shell rigidity is low,after clamping inevitably appear small deformation,resulting in uneven waste generated chamfered edge.In view of this problem is due to the deformation caused by themeasurement of workpiece contour,probes some points on the obtained deformation,through support vector machine to establish a prediction model of radial basis function,each fixed knife on the road,realize the tool path on the deformation follow,significant effect. chamfering;deformation;radial basis function;toolpath follow;support vectormachine TP181 A 1672-545X(2017)04-0114-04 2017-01-19 李炳銳(1982-),男,廣東江門人,工程師,本科,主要從事數控系統,機器視覺的開發工作。3 徑向基函數刀路跟隨的執行流程

4 結束語
(Guangdong Kejie Machinery Automation Co.,Ltd.,Jiangmen Guangdong 529000,China)