刀具補償是現代計算機數控(CNC)系統所具有的重要功能之一,可分為刀具半徑補償和長度補償兩種。就目前而言,應用于二維輪廓加工的兩坐標聯動數控系統基本都具備刀具補償功能,而多坐標(三坐標以上)聯動數控系統中對于刀具補償功能還未能得到較好解決。特別是五軸聯動加工中,由于刀具的旋轉運動,使得五軸聯動刀具補償較難實現。
國外幾個主要CNC生產商在其高檔的五軸聯動數控系統中已經帶有刀具補償功能,如SIEMENS的SINUMERIC840D系統具有將三維空間向量轉換為實際機械軸角度的計算能力的“3D Tool Radius Compensation”功能,而所帶的坐標轉換(或位置變換)功能實在質就是五軸刀具長度補償。國內有關五軸聯動加工刀具補償方法的研究并未幾,因此,本文將對五軸加工中的刀具補償題目進行深進研究,分別對五軸加工中的刀具半徑補償和長度補償的實現方法進行具體敘述,以期能建立并完善五軸聯動CNC系統的刀具半徑和長度補償功能。
一、五坐標加工數控程序的生成
五坐標加工主要應用于復雜曲面零件如整體葉輪等的加工,因此其數控程序的天生必須借助于一些自動編程軟件如UGII、HyperMill等。在應用這些軟件進行五坐標數控編程時得到的刀位文件(CLF)是不依靠于具體機床結構和形式的,而且它提供了五軸曲面加工時刀具底端面中心(以下簡稱為刀具中心)在工件坐標系下要求位移到的位置坐標以及刀軸的方位矢量等信息,但CLF文件的天生卻依據了選用刀具的形式(如平底刀等)和刀具半徑等參數。
因此,五軸加工程序的天生與刀具參數設定有密切的關系。另外,利用編程軟件的后置處理模塊根據選用五軸數控機床的結構形式等參數將CLF文件轉換成加工曲面所需的數控程序。假定某加工程序段為:G01XxYyZzAaCc其中位置坐標值x、y、z可以是刀具中心坐標也可以是機床主軸端(Spindle none)的坐標a、c分別為繞X軸、Z軸的角度坐標值。當x、y、z為刀具中心坐標時稱為刀具中心編程,當x、y、z為主軸端坐標時稱為主軸端編程。
但無論哪種編程方式都需數控系統具有刀具自動補償功能才能加工出我們所需要的零件。結構形式五軸數控機床和刀具(平底刀)中心編程為例分別敘述五軸聯動加工中的刀具半徑補償和長度補償。
二、現行五軸數控編程在刀具半徑補償方面的不足
上節中敘述的五坐標數控加工編程方式和得到的數控指令格式是根據國際標準化組織(ISO)有關數控編程的標準ISO 6983進行的。對平面兩軸或兩軸半的加工而言,在ISO 6983中常使用G41/G42功能來補償刀具半徑。補償時根據數控程序中提供的相關信息如G17/G18/G19進行加工平面選擇配合G41/G42左右刀具補償選取,利用一般較低檔的控制器即可完成。
但是,對于三軸特別是五軸加工,即刀具半徑的補償要在三維空間完成,ISO 6983中所提供的信息則顯得不足,如G17/G18/G19、G41/G42等已經失效,插補程序段中提供的數據信息又僅僅是刀具中心點坐標和刀具軸的方位角,刀具半徑補償實際上不可能進行,由于控制器不知道該往哪個方向進行補償,而這個方向對于刀具半徑補償非常重要。
因此,假如要進行三維空間刀具半徑補償功能,則必須在數控加工程序段中提供補償方向向量等信息,如FANUC15-MA(FANUC,1994)、CINCINNATI MILACRON ACRA-MATIC 950(CINCINNATI,1990)等,FANUC控制器采用了1JK碼來表示,而CINCINNATI則是采用POR碼來表示。
另外,在后置處理方面,目前的CAM編程系統通常并不提供刀具補償向量模式,只有在五軸機床的原廠商對其個別型式的五軸機床專用的后置處理程序,才提供了這種五軸三維刀具補償向量模式的輸出,但其價格卻相當昂貴。本文假定得到的加工程序段中提供了刀具半徑補償向量。
三、五軸刀具半徑補償
在進行刀具中心編程時,由CAD/CAM軟件天生的數控程序是根據編程刀具半徑計算出來的刀具中心運動軌跡。實際加工時,必須保證刀具半徑與編程時刀具半徑相等。一旦刀具半徑發生改變,尤其是刀具在加工的過程由于磨損而造成尺寸變化時,程序的重復使用就受到很大的限制,必須根據所用刀具半徑返回CAD/CAM系統重新產生CLF文件經后置處理天生新的NC程序。
這樣會造成程序維護不易,生產效率無法進步,若考慮更換新刀具加工,則又存在增加備用刀具本錢的缺點。假如所使用的五軸CNC系統帶有刀具半徑補償功能,則原有的程序和刀具仍然可用,只需在加工前丈量出刀具實際半徑值即可,不必每次加工都保證所使用刀具半徑與編程刀具半徑相等。
在加工過程中某數控加工程序段表示的刀具中心位置坐標、刀軸方位角度坐標以及補償方向單位向量為 ,刀具與加工表面切觸于點 ,進給方向垂直紙面向里,刀具底沿在紙面的投影為一橢圓。圖4中實線表示編程使用的刀具,半徑為Rp,點劃線表示實際加工時所用的刀具,半徑為R。顯然當R=Rp時刀具底沿與理論加工表面切觸于C,無須進行半徑補償而直接進行長度補償計算主軸端點位置坐標即可。但是若R≠Rp時,則必須先進行半徑補償,半徑補償的目的是要讓實際加工刀具的底沿仍與理論加工表面切觸于C。
定義:將由編程刀具中心位置即指向刀具半徑補償后實際加工刀具中心的矢量稱為刀具半徑補償向量,用Vr表示。
由于刀具半徑補償不能改變刀具姿態,也就是補償前后刀具軸向方位角不變,刀具只是沿Vr平移,插補預處理時只需將得到的主軸端點坐標做平移變換即可。
四、五軸刀具長度補償
ISO 6983標準中規定了刀具旋轉的角度,從而也就能確定出刀具的軸向向量,因此刀具長度補償仍然有效,長度補償的方向即為刀具的軸向向量。從編程方面看,無論采用哪種編程得到的數控加工程序,CNC控制器中刀具長度補償功能對最后的加工結果都非常重要。假如刀具中心編程得到的數控程序不經過長度補償得到主軸端點坐標,則數控系統會將刀具中心點誤以為是主軸端點,加工結果可想而知。主軸端編程是根據編程中使用的刀具長度計算出來的主軸端點的運動軌跡。實際加工時,必須保證刀具長度與編程時刀具長度相等。一旦刀具長度發生改變,
則刀具中心點不可能到達編程時的刀具中心,因此也需要對刀具長度變化進行補償。主軸端編程時刀具長度補償前后對加工結果的影響。
假定加工刀具長度為1,刀具半徑補償后的刀具中心位置坐標及刀軸方位角度坐標分別為(x,y,z,ap,cp),要求的是主軸端點坐標(xs,ys,zs)。題目關鍵在于刀具軸向單位向量T的求解。如圖2可知,初始狀態下,刀具豎直向下且平行于機床坐標系的Z軸,即T0={0,0,1}。
五、結語
基于刀具補償功能在五軸數控加工中的重要性,本文在分析現行編程標準對于實現刀具半徑補償功能不足的基礎上,通過引進刀具半徑補償向量討論了圖2所示結構形式的五軸聯動數控機床的刀具長度和半徑補償的實現。對于其他形式的機床可以通過類似的方法分別實現刀具半徑補償和長度補償。
(審核編輯: 智匯胡妮)
分享