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