摘要:針對五軸AC雙轉(zhuǎn)臺數(shù)控機床后處理存在的非線性誤差問題,提出一種精確插補算法。采用齊次變換矩陣實現(xiàn)機床逆解,采用旋轉(zhuǎn)量最小法篩選多解。對于常規(guī)非線性誤差采用矢量插補,對于奇異非線性誤差采用線性插補,將插補產(chǎn)生的新非線性誤差精確控制在目標(biāo)值的95%~100%之間,仿真表明該方法可以有效控制誤差精度。曲面零件加工實驗結(jié)果表明:該方法相對于傳統(tǒng)中點迭代插補方法能夠減少18%的NC數(shù)據(jù)量和13.7%的加工時間,同時改善切削力與表面粗糙度。
關(guān)鍵詞:五軸后置處理;非線性誤差;奇異問題;線性插補;矢量插補
中圖分類號:TH161;TG502.12文獻(xiàn)標(biāo)志碼:A文章編號:1671-5276(2024)06-0047-06
Abstract:A compensation algorithm with accurate interpolation is proposed for the nonlinear error problem in the post-processing of existing five-axis AC double rotary table CNC machines. The inverse solution of machine motion is realized by using the homogeneous transformation matrix, and the multi-solution screening is performed by using the rotation amount minimization method. Exact vector interpolation is used for non-singular nonlinear errors, and exact linear interpolation is applied for singular nonlinear errors to precisely control the new nonlinear errors generated by each interpolation between 95% and 100% of the target value. Simulations show that the method can effectively control the error accuracy. And the experimental results of surface part machining show that the proposed method, in comparison with the traditional midpoint iterative interpolation one, can reduce the amount of NC data by 18% and the machining time by 13.7% and improve the cutting force and surface roughness as well.
Keywords:five-axis machine tool post-processing; nonlinear error; singularity problem; linear interpolation; vector interpolation
0引言
五軸數(shù)控機床廣泛應(yīng)用于航空、汽車與工業(yè)模具等具有高精度加工要求的領(lǐng)域,自動化的應(yīng)用對于自動編程和后置處理也提出了新要求。五軸后置處理是將CAM軟件生成的記錄刀具相對加工坐標(biāo)系的位姿運動信息(automatically programmed tools,APT)文件轉(zhuǎn)換成適應(yīng)特定型號數(shù)控機床加工環(huán)境的NC文件的過程[1]。由于五軸機床的結(jié)構(gòu)特點,后置處理過程中旋轉(zhuǎn)軸取值容易產(chǎn)生突變,進(jìn)而產(chǎn)生明顯的非線性誤差。
目前針對五軸非線性誤差的補償方法一般分為切觸點偏置法、線性加密法和自適應(yīng)插補法等[2]。姬俊峰等[3]采用通過將刀具沿著切觸點法向偏置來控制非線性誤差。李旗號等[4]通過調(diào)整步長來加密以減小非線性誤差。劉明明[5]采用中點迭代插補算法,插值一定數(shù)量的點來控制非線性誤差范圍。
關(guān)于非線性誤差補償,切觸點偏置法操作復(fù)雜,而線性加密法也只適用于小型零件加工,大型零件加工會造成數(shù)據(jù)量過大,影響數(shù)控系統(tǒng)加工效率。中點迭代插補雖然可以控制誤差精度,但是插補點的數(shù)量也較多,具有可優(yōu)化空間。
目前對于五軸奇異非線性誤差處理主要是針對奇異區(qū)域APT刀軸矢量調(diào)整、線性插補和優(yōu)化裝夾等幾個方向開展[6]。吳磊[7]采用五次B樣條曲線對APT的刀軸位姿進(jìn)行擬合還原曲面,通過篩選最小非奇異域刀位點來規(guī)避奇異誤差。SRBY[8]提出了一種在奇異點附近線性插值的算法,修改C軸轉(zhuǎn)角來減小奇異誤差。CRIPPS等[9]分析奇異點的產(chǎn)生本質(zhì),通過傾斜裝夾工件來避開奇異點,但該方法只適用于特定工件的特定刀路。
關(guān)于奇異補償,APT刀軸矢量優(yōu)化雖可實現(xiàn)奇異刀軸的規(guī)避,但是該方法多是基于刀軸角度偏差反饋展開的,即對于加工的刀尖位置偏離誤差不具備有效的精度控制;工件裝夾優(yōu)化方法雖然可以很好地解決部分加工奇異問題,但是對目標(biāo)零件與工序有明確的要求,且一般需要定制夾具,故難以推廣。
綜上所述,本文在相關(guān)研究的基礎(chǔ)上,分析非線性誤差的具體組成,應(yīng)用精確矢量插值來補償常規(guī)非線性誤差,應(yīng)用精確線性插值來補償奇異非線性誤差,實現(xiàn)滿足精度的最少插值點的補償要求。
1運動學(xué)建模
1.1五軸AC機床運動學(xué)模型
針對正交雙轉(zhuǎn)臺AC五軸機床結(jié)構(gòu)特性,構(gòu)建機床、旋轉(zhuǎn)軸、刀具等坐標(biāo)系,如圖1所示。其中OM為機床坐標(biāo)系,OA為旋轉(zhuǎn)軸A的坐標(biāo)系,OC為旋轉(zhuǎn)軸C的坐標(biāo)系,OW為加工坐標(biāo)系,OT為刀具坐標(biāo)系。機床默認(rèn)為正交坐標(biāo)系,即坐標(biāo)系之間的初始狀態(tài)只涉及平移變換,考慮機床運動的[X,Y,Z,A,C]之后,各個坐標(biāo)系之間的變換關(guān)系如圖所示,其中T表示坐標(biāo)系原點之間的平移矩陣,R表示坐標(biāo)系旋轉(zhuǎn)姿態(tài)變化的旋轉(zhuǎn)矩陣。
為了簡化計算,將OM和OA重合,即Tatm=E(單位矩陣),同時定義刀位點中刀尖坐標(biāo)相對刀具坐標(biāo)系的齊次坐標(biāo)分別為:TP=0,0,0,1T,刀軸矢量在刀具坐標(biāo)系的齊次坐標(biāo)為TV=0,0,1,0T。通過兩條運動鏈在OT和OW上閉合求解。
可得機床運動量NC數(shù)據(jù)[XYZAC]與刀位位姿APT數(shù)據(jù)xyzijk的關(guān)系表達(dá)式為:
式中:[Xwtc,Ywtc,Zwtc]T=[0,0,120]T,表示坐標(biāo)系原點OW指向OC原點的矢量;同理,機床旋轉(zhuǎn)軸A到旋轉(zhuǎn)軸C的結(jié)構(gòu)參數(shù),即坐標(biāo)系原點OC指向OA的矢量為[Xcta,Ycta,Zcta]T=[0,0,-120]T。
1.2多解篩選
五軸正交AC雙轉(zhuǎn)臺數(shù)控機床在旋轉(zhuǎn)軸量程滿足的條件下,同一APT刀位點位姿對應(yīng)的A、C取值一般不唯一。對于多組解需要進(jìn)行篩選,本文采用旋轉(zhuǎn)量最小法,即設(shè)定目標(biāo)函數(shù),用來反映某個刀位數(shù)據(jù)對應(yīng)旋轉(zhuǎn)軸的第i組可行解(Ai,Ci)取值帶來的旋轉(zhuǎn)軸運動總量。理論上該目標(biāo)函數(shù)取值越小,代表旋轉(zhuǎn)軸的運動總量也越小。
式中:k1代表A軸旋轉(zhuǎn)變化量的權(quán)值;k2代表C軸旋轉(zhuǎn)變化量的權(quán)值。
2非線性誤差分析與補償
2.1非線性誤差原因分析
五軸數(shù)控機床非線性誤差指的是五軸數(shù)控機床每次在執(zhí)行微小插補加工過程中,理想表面上的點到實際刀具軌跡包絡(luò)體之間存在的最大距離偏差。由圖2所示,根據(jù)產(chǎn)生的原因,非線性誤差可分為弦高誤差與刀具擺動誤差,刀具擺動誤差又可根據(jù)誤差表現(xiàn)形式分為刀軸偏角誤差與刀尖偏距誤差。
非線性誤差中,弦高誤差產(chǎn)生原因是CAM在輸出APT文件時將理想刀軌離散成直線或者圓弧時產(chǎn)生的誤差,可以通過縮小離散步距進(jìn)行優(yōu)化,故該誤差本文不予考慮。刀軸偏角誤差是由于五軸機床數(shù)控系統(tǒng)對NC數(shù)據(jù)的轉(zhuǎn)角采用線性插值處理方式與APT刀軌矢量插補方式的差異而引發(fā)的刀具姿態(tài)誤差;刀尖偏距誤差是插補生成的旋轉(zhuǎn)角數(shù)據(jù)對刀尖坐標(biāo)進(jìn)行變換產(chǎn)生的刀尖位置誤差。
2.2非線性誤差計算
以圖1中的五軸AC雙轉(zhuǎn)臺機床為例,設(shè)一組需要插補的NC代碼為NC0=[X0,Y0,Z0,A0,C0]到NC1= [X1,Y1,Z1,A1,C1],其對應(yīng)的APT數(shù)據(jù)為APT0=[x0,y0,z0,i0,j0,k0]到APT1=[x1,y1,z1,i1,j1,k1],將上述數(shù)據(jù)作為一個處理單元。定義理想軌跡與實際軌跡插補點的總個數(shù)均為k,其中ki對應(yīng)插值系數(shù)t,t∈0,1,對應(yīng)插補點的理想刀軸矢量Vt為
式中:刀軸矢量V0=[i0,j0,k0]T;V1=[i1,j1,k1]T;θ為V0和V1間的夾角。
對于NC數(shù)據(jù),參數(shù)t對應(yīng)插補點的角度與刀軸矢量為V′t為:
刀具偏角誤差就是理論插補刀軸矢量Vt與實際插補刀軸矢量V′t之間的角度誤差。
計算刀尖偏距ε則需要根據(jù)式(3),先對NCt的刀尖坐標(biāo)Pt=[Xt,Yt,Zt]T進(jìn)行計算。
計算插補系數(shù)t對應(yīng)的刀尖偏距誤差,即點Pt到理論插補線段的距離:
式中:Pa0=[x0,y0,z0]T是APT0中的刀尖坐標(biāo)數(shù)據(jù);Pa1=[x1,y1,z1]T是APT1中的刀尖坐標(biāo)數(shù)據(jù)。
如圖3所示,在較大的非線性誤差下,刀尖偏距誤差對于加工產(chǎn)生的過切欠切比刀軸偏角誤差更為明顯。因此,本文針對非線性誤差補償?shù)哪繕?biāo)就是減小刀尖偏距誤差。
2.3常規(guī)非線性誤差精確矢量插值補償
針對由于離散步距等常規(guī)原因引起的常規(guī)非線性誤差,本文采取精確矢量插補方法修正。
已知APT0、APT1、NC0、NC1以及插值系數(shù)t,則插值數(shù)據(jù)NCt計算如下。
根據(jù)式(4)獲得Vt=[it,jt,kt]T,計算At,Ct:
結(jié)合多選篩選式(4)獲得At,Ct;然后根據(jù)APT0與APT1計算當(dāng)前理想刀尖坐標(biāo):
將Pt代入式(7)計算最終的刀尖坐標(biāo)。
已知刀尖偏距誤差閾值εlim,通過二分法確認(rèn)設(shè)定一個插值系數(shù)t,t∈[0,1]。t的初始值為0.5,會根據(jù)需求不斷迭代:如果ε/εlimlt;0.95,則t=1.5t,再次計算對應(yīng)的NCt;如果ε/εlimgt;1,則t=0.5t迭代計算。直到使得NC0與NCt之間的刀尖偏距誤差ε滿足ε/εlim∈[0.95,1],對應(yīng)NCt作為目標(biāo)插值數(shù)據(jù)。
3奇異誤差分析與補償
3.1奇異原因分析
五軸數(shù)控機床奇異指當(dāng)APT刀軸矢量接近加工坐標(biāo)系的Zw軸,對應(yīng)NC旋轉(zhuǎn)軸的相鄰取值發(fā)生突變的現(xiàn)象。如圖4所示,刀位Vi和Vi+1的夾角設(shè)為Φ,對應(yīng)A軸和C軸的的旋轉(zhuǎn)增量為ΔA和ΔC。此處Φ的取值即使很小,對應(yīng)ΔC的取值卻非常大,這就是因為刀軸矢量進(jìn)入奇異域引發(fā)的旋轉(zhuǎn)量突變現(xiàn)象[10]。
3.2奇異檢測
一般將距離奇異軸一定角度閾值的區(qū)域定義為奇異域,經(jīng)過奇異域的刀軸矢量就容易產(chǎn)生奇異非線性誤差,但是奇異域的邊界難以定義,無法應(yīng)用該方法精確檢測奇異刀軸矢量。對此,可以通過矢量插補所需次數(shù)來判斷當(dāng)前刀軸矢量進(jìn)給是否存在奇異。
圖5所示為單位球在yOz平面的投影,V0與V1對應(yīng)的ΔC趨于180°,對V0、V1之中的所有可插補矢量進(jìn)行選取作為插值點,如果只考慮C=arctan(-i/j),則奇異軸兩側(cè)的Vi、Vi+1中的ΔC也是趨于180°。考慮到一般多解的選取策略為綜合A軸與C軸的變化量,所以奇異發(fā)生的位置為奇異軸偏向終點矢量的某一組相鄰插值點,如圖中的Vk與Vk+1,即奇異點在矢量插補之后進(jìn)行了“后移”,理論上矢量插補無法解決奇異非線性誤差。
綜上所述,本文檢測方法為:如果常規(guī)非線性誤差矢量插補次數(shù)超過閾值Nlim且誤差不收斂,則可以認(rèn)定為屬于奇異單元。
3.3奇異非線性誤差精確線性插值補償
針對由于奇異原因引起的非線性誤差,本文采取精確線性插補方法,流程如下。
已知存在奇異的數(shù)據(jù)APT0、APT1、NC0、NC1以及插值系數(shù)t=0.5,則插值數(shù)據(jù)NCt計算如下。
對NC的角度數(shù)據(jù)進(jìn)行插補,計算At、Ct:
根據(jù)APT0與APT1計算當(dāng)前理想刀尖坐標(biāo):
將Pt代入式(7)計算當(dāng)前的刀尖坐標(biāo)與NCt數(shù)據(jù)。同理采用二分法對t進(jìn)行迭代,計算出符合要求的t,滿足ε/εlim∈[0.95,1],將對應(yīng)NCt作為插入值。
4非線性誤差精確插補算法整合
本文非線性誤差精確插補算法整體流程如下(圖6)。
1)輸入目標(biāo)APT與初始NC數(shù)據(jù);定義目標(biāo)最大非線性誤差εlim以及奇異檢測的矢量插補最大迭代次數(shù)Nlim。
2)載入第i、i+1組APT與初始NC數(shù)據(jù)作為一個處理單元,參照2.2節(jié)計算對應(yīng)的非線性誤差ε。
3)如果當(dāng)前非線性誤差εlt;εlim,則該組數(shù)據(jù)合格,令i=i+1,執(zhí)行步驟2);否則參照2.3節(jié)進(jìn)行常規(guī)非線性誤差矢量插補,并設(shè)定num作為記錄該過程中插補的NC數(shù)據(jù)個數(shù)。每次該處理單元新增1組NC數(shù)據(jù),則num=num+1,同時計算該單元所有非線性誤差{ε}。
4)如果{ε}均小于εlim,且numlt;Nlim, 則認(rèn)定插值合格,令i=i+1,執(zhí)行步驟2);如果{ε}不完全小于εlim,且numgt;Nlim,則認(rèn)定插值不合格,需對該數(shù)據(jù)單元中所有插值數(shù)據(jù)進(jìn)行清空,并參照3.3節(jié)進(jìn)行奇異線性補償;
5)奇異補償過程中,每次新增1組插值數(shù)據(jù)NC,則計算整體非線性誤差{ε};如果{ε}均小于εlim,則認(rèn)為該數(shù)據(jù)單元插值合格。處理完畢,令i=i+1,執(zhí)行步驟2);否則繼續(xù)執(zhí)行插值新的NC數(shù)據(jù)。
6)每次令i=i+1的時候,會進(jìn)行一次判斷,如果i到達(dá)最后一行,則輸出目標(biāo)NC數(shù)據(jù),流程結(jié)束;否則執(zhí)行步驟2)。
5仿真與加工驗證
為驗證本文算法的有效性。對曲面案例模型的刀軌進(jìn)行插補,零件插補前后刀軌如圖7所示。對該曲面進(jìn)行加工,材料60mm的方形毛坯,為了獲得良好的加工效果,對刀軌進(jìn)行密化,將刀軌“往復(fù)”數(shù)量從30條增加到120條進(jìn)行半精加工,增加到600條進(jìn)行精加工。
在半精加工工序中,非線性誤差插補閾值設(shè)置為0.005mm,在切削量與進(jìn)給速度等加工參數(shù)相同的條件下,精確插補NC總數(shù)據(jù)量為31 663個,加工時間1 442s;中點迭代插補NC總數(shù)據(jù)量為38 747個,加工時間為1 670s。即精確插補算法NC數(shù)據(jù)量同比減少18.3%,加工時間同比減少13.7%。
在半精加工過程對精確插補與傳統(tǒng)中點迭代插補的切削過程進(jìn)行切削力測量,其結(jié)果對比如圖8所示,精確插補的切削力在加工過程中切削力變化較大的位置實現(xiàn)了切削力幅值的有效降低。
半精加工完成后,對精確插補與傳統(tǒng)中點迭代插補方法加工完成的兩組加工零件測量表面粗糙度,其測點選擇如圖9所示。
如圖10所示,在半精加工表面粗糙度測試中,精確插補加工表面粗糙度更小,整體更為光滑。
精確插補方法的精加工工序完成后,零件切削效果如圖11所示,整體表面光滑,無明顯過切欠切痕跡,達(dá)到預(yù)期優(yōu)化目標(biāo)。
6結(jié)語
本文提出五軸機床后處理非線性誤差精確插補算法,包括通過建立機床運動鏈模型,運用齊次變換對機床運動進(jìn)行建模,采用旋轉(zhuǎn)量最小法實現(xiàn)多解篩選,對常規(guī)的非線性誤差采用精確矢量插補,對奇異非線性誤差進(jìn)行監(jiān)測和精確線性插補。仿真和實驗驗證該方法不僅可以有效控制非線性誤差,而且與常規(guī)中點迭代插補算法相比,具有插補點更少、加工時間更短、切削力和加工表面質(zhì)量更好的優(yōu)點。
參考文獻(xiàn):
[1] 閆金堂,王洪申. 基于NC程序的五軸數(shù)控加工刀位信息提取算法[J]. 機械制造與自動化,2019,48(6):29-33.
[2] 吳大中. 五軸聯(lián)動數(shù)控加工非線性誤差控制及后置處理[D]. 上海:上海交通大學(xué),2007.
[3] 姬俊鋒,周來水,安魯陵,等. 考慮非線性誤差補償?shù)奈遄鴺?biāo)數(shù)控加工走刀步長改進(jìn)算法[J]. 重慶大學(xué)學(xué)報,2010,33(4):37-42.
[4] 李旗號,張麗. 自由曲面數(shù)控加工中非線性誤差分析與走刀步長的確定[J]. 合肥工業(yè)大學(xué)學(xué)報(自然科學(xué)版),2000,23(3):385-388.
[5] 劉明明. 偏心錯齒型刀具五軸數(shù)控磨削技術(shù)研究[D]. 長沙:湖南大學(xué),2018.
[6] 章紹昆,畢慶貞,王宇晗. 鏡像銑削加工奇異區(qū)域刀具路徑優(yōu)化[J]. 航空學(xué)報,2021,42(10):524591.
[7] 吳磊. 機床坐標(biāo)系下的復(fù)雜曲面五軸加工刀軸優(yōu)化和奇異避免[D]. 大連:大連理工大學(xué),2020.
[8] SRBY K. Inverse kinematics of five-axis machines near singular configurations[J]. International Journal of Machine Tools and Manufacture,2007,47(2):299-306.
[9] CRIPPS R J,CROSS B,HUNT M,et al. Singularities in five-axis machining:cause,effect and avoidance[J]. International Journal of Machine Tools and Manufacture,2017,116:40-51.
[10] 畢慶貞,丁漢,王宇晗. 復(fù)雜曲面零件五軸數(shù)控加工理論與技術(shù)[M]. 武漢:武漢理工大學(xué)出版社,2016.
收稿日期:20230406
基金項目:南京航空航天大學(xué)研究生科研與實踐創(chuàng)新計劃項目(xcxjh20210507)
第一作者簡介:徐世昌(1998—),男,江西南昌人,碩士研究生,研究方向為五軸數(shù)控機床后置處理與仿真,1667691056@qq.com。
DOI:10.19344/j.cnki.issn1671-5276.2024.06.009