王沿斌
(廣州市技師學(xué)院先進(jìn)裝備制造產(chǎn)業(yè)系,廣州 510410)
隨著高端制造業(yè)的發(fā)展和五軸數(shù)控技術(shù)的普及,越來(lái)越多的企業(yè)和院校引進(jìn)了五軸加工中心并開展了五軸CAM技術(shù)應(yīng)用。其中使用后處理器將CAM軟件刀具路徑轉(zhuǎn)化為五軸機(jī)床能夠執(zhí)行的G代碼程序是五軸技術(shù)應(yīng)用的關(guān)鍵環(huán)節(jié)。目前后處理器生成G代碼程序主要有兩種類型:一種是直接通過(guò)坐標(biāo)的位置和旋轉(zhuǎn)軸的角度來(lái)表達(dá)刀具位置和方向的常規(guī)程序;另一種是使用坐標(biāo)位置和刀軸方向來(lái)表達(dá)的刀軸矢量程序。常規(guī)程序由于五軸機(jī)床旋轉(zhuǎn)軸不同,同一條CAM刀具路徑想要在不同結(jié)構(gòu)的五軸機(jī)床上運(yùn)行必須再次通過(guò)專用后處理器生成G代碼程序,增加了五軸CAM技術(shù)應(yīng)用門檻和成本;而刀軸矢量程序指令簡(jiǎn)潔,使用刀軸在X/Y/Z軸上的空間矢量分量坐標(biāo)代替A/B/C各軸旋轉(zhuǎn)坐標(biāo),程序代碼不受限于機(jī)床旋轉(zhuǎn)軸結(jié)構(gòu),可以實(shí)現(xiàn)同一條程序在不同結(jié)構(gòu)、相同系統(tǒng)的五軸機(jī)床上重復(fù)使用,具有良好的通用性。
本文綜述了一種采用NX軟件制作矢量程序后處理器的方法,實(shí)現(xiàn)了不同結(jié)構(gòu)的五軸機(jī)床加工程序通用。通過(guò)刀軸矢量后處理器將CAM刀具路徑轉(zhuǎn)化為刀軸矢量程序,利用刀軸矢量程序與五軸機(jī)床結(jié)構(gòu)形式無(wú)關(guān)的特點(diǎn),實(shí)現(xiàn)在同一數(shù)控系統(tǒng)中不同結(jié)構(gòu)的五軸機(jī)床上G代碼程序通用,使五軸加工工藝應(yīng)用更為靈活,提高了五軸機(jī)床使用效率,如圖1所示。
圖1 基于刀軸矢量編程的CAM技術(shù)流程
常規(guī)五軸程序依據(jù)機(jī)床的實(shí)際結(jié)構(gòu),分別指定了各個(gè)旋轉(zhuǎn)軸的運(yùn)動(dòng)角度,不同結(jié)構(gòu)的五軸機(jī)床程序代碼完全不同,以海德漢iTNC530數(shù)控系統(tǒng)為例,同一段刀具路徑的BC軸混合型五軸機(jī)床常規(guī)程序部分代碼如圖2所示,刀軸矢量程序如圖3所示。
圖2 常規(guī)五軸程序代碼
圖3 刀軸矢量程序代碼
對(duì)比圖2~3,可見兩端程序代碼中的X/Y/X的坐標(biāo)值相同,但圖3刀軸矢量程序代碼中卻沒有出現(xiàn)用以指定的各旋轉(zhuǎn)軸角度B/C代碼,而是使用了TX/TY/TZ表達(dá)當(dāng)前刀軸的空間矢量位置。
由于刀軸矢量程序沒有直接給出旋轉(zhuǎn)軸角度,數(shù)控系統(tǒng)在讀取刀軸矢量數(shù)據(jù)后,需要通過(guò)刀具中心點(diǎn)控制指令(TCPM/RTCP指令),在數(shù)控系統(tǒng)內(nèi)部調(diào)用機(jī)床、工件坐標(biāo)和刀具補(bǔ)償?shù)葏?shù),從而實(shí)時(shí)運(yùn)算解析各軸的實(shí)際旋轉(zhuǎn)角度并控制各軸運(yùn)動(dòng),進(jìn)而實(shí)現(xiàn)五軸加工中的五軸聯(lián)動(dòng)或定向加工[1]。
目前常見的五軸聯(lián)動(dòng)數(shù)控系統(tǒng)中,海德漢iTNC530、西門子840D、FANUC30i等都支持刀軸矢量編程,其程序格式和刀具中心點(diǎn)控制指令如表1所示。
表1 常見數(shù)控系統(tǒng)矢量程序格式
海德漢iTNC530數(shù)控系統(tǒng)的刀軸矢量程序格式如下:LN X_Y_Z_TX_TY_TZ_,其中LN表示開啟三維直線補(bǔ)償功能,X_Y_Z_表示直線程序運(yùn)動(dòng)的終點(diǎn)坐標(biāo),TXTYTZ表示直線程序運(yùn)動(dòng)終點(diǎn)的刀軸方向。
FANUC 30i系統(tǒng)格式如下:G00/G01 X Y Z I J K,其中X、Y、Z表示直線程序運(yùn)動(dòng)的終點(diǎn)坐標(biāo),I、J、K表示程序運(yùn)動(dòng)終點(diǎn)刀軸方向(注:此時(shí)I、J、K不表示圓弧中心位置)。
西門子840D系統(tǒng)格式如下:G00/G01 X Y Z A3=B3=C3=,其中X、Y、Z表示直線程序運(yùn)動(dòng)的終點(diǎn)坐標(biāo),A3=、B3=、C3=表示程序運(yùn)動(dòng)終點(diǎn)刀軸方向。
由此可見,對(duì)比常規(guī)G代碼程序,刀軸矢量程序無(wú)需考慮五軸機(jī)床的具體結(jié)構(gòu),可以降低后處理器制作難度并實(shí)現(xiàn)五軸CAM后處理器通用。
在NX軟件中,刀具路徑的每個(gè)運(yùn)動(dòng)位置點(diǎn)都包含了一個(gè)空間坐標(biāo),可以在五軸程序的CLF格式文件中觀察到該空間坐標(biāo)數(shù)據(jù)。當(dāng)?shù)遁S空間角度變化時(shí),原本一行3組的數(shù)據(jù)數(shù)據(jù)會(huì)變?yōu)橐恍?組的數(shù)據(jù),分別表示當(dāng)前點(diǎn)的XYZ軸3個(gè)坐標(biāo)點(diǎn)和該點(diǎn)刀軸的方向矢量方向,如圖4所示。
圖4 NX刀具路徑的CLF文件代碼
分析發(fā)現(xiàn)只要在普通后處理器基礎(chǔ)上,將CLF文件中每個(gè)空間點(diǎn)的3個(gè)坐標(biāo)值和3個(gè)方向矢量按照機(jī)床數(shù)控系統(tǒng)規(guī)定的格式輸出就可以生成五軸刀軸方向矢量程序。
經(jīng)過(guò)查閱NX/Post Builder資料[2],當(dāng)前位置的3個(gè)坐標(biāo)值可通過(guò)普通移動(dòng)指令獲得,而表示刀軸方向矢量的數(shù)據(jù)則需要從變量“mom_tool_axis”中使用輸出命令“$mom_tool_axis(0)”、“$mom_tool_axis(1)”和“$mom_tool_axis(2)”獲取。由此可見,在普通三軸后處理器中添加刀具中心控制代碼和上述變量即可構(gòu)建五軸刀軸矢量后處理器。
下面舉例介紹基于海德漢iTNC530系統(tǒng)的刀軸矢量程序NX后處理器的構(gòu)建過(guò)程。
進(jìn)入NX軟件自帶后處理器開發(fā)模塊Post_Builder,新建一個(gè)后處理器并并設(shè)置后處理輸出單位為mm;因?yàn)榈遁S矢量程序不需要考慮使用的五軸機(jī)床實(shí)際結(jié)構(gòu),所以可直接選擇一個(gè)立式三軸機(jī)床作為模板,控制器直接調(diào)用庫(kù)中自帶的HEIDENHAIN系統(tǒng),如圖5所示。點(diǎn)擊確定后進(jìn)入機(jī)床頁(yè)面,由于使用刀軸矢量程序不便使用圓弧插補(bǔ),可將“一般參數(shù)”中的輸出圓形記錄關(guān)閉,線性軸行程等參數(shù)根據(jù)實(shí)際機(jī)床數(shù)據(jù)設(shè)置,本例為默認(rèn)參數(shù),如圖6所示。
圖5 創(chuàng)建基本后處理器
圖6 設(shè)置機(jī)床參數(shù)
點(diǎn)擊“程序和刀軌”頁(yè)面,如圖7所示,該頁(yè)面是控制后處理器輸出代碼的主要頁(yè)面,其中“線性移動(dòng)”和“快速移動(dòng)”控制程序中直線運(yùn)動(dòng)的參數(shù)輸出,默認(rèn)狀態(tài)是輸出當(dāng)前位置的笛卡爾坐標(biāo)系的X、Y、Z坐標(biāo)值。
圖7 設(shè)置程序和刀軌
點(diǎn)擊進(jìn)入“線性移動(dòng)”,添加一個(gè)“新地址”用作輸出刀軸矢量方向,新地址名稱按海德漢iTNC530系統(tǒng)格式要求定義為“TX”,設(shè)置表達(dá)式中輸入字符“$mom_tool_axis(0)”,后處理器將在線性移動(dòng)中加入代碼“TX”,并輸出刀軸矢量方向的第1組數(shù)據(jù),如圖8所示。
圖8 添加刀軸方向矢量
重復(fù)上述操作,添加另外兩組矢量方向數(shù)據(jù),分別用TY和TZ命名,并在表達(dá)式中輸入“$mom_tool_axis(1)”和“$mom_tool_axis(2)”,最后用文字排序功能,將TX、TY、TZ依次排列在Z后面,并強(qiáng)制輸出,如圖9所示。
圖9 海德漢系統(tǒng)的刀軸矢量程序格式
Post_Builder中的“程序和刀軌”頁(yè)面中的“程序起始序列”中添加對(duì)應(yīng)數(shù)控系統(tǒng)的刀具中心控制指令(TCPM/RTCP指令,詳見表1),其余選項(xiàng)可依據(jù)機(jī)床手冊(cè)具體要求另做修正[3],刪減或補(bǔ)充相關(guān)G代碼和輔助M代碼,其具體操作方法和普通三軸機(jī)床后處理器修改方法一致,在此不做詳細(xì)敘述。至此,基于海德漢iTNC530系統(tǒng)格式的刀軸矢量程序后處理器就基本構(gòu)建完成。
基于FANUC30i系統(tǒng)和西門子840D系統(tǒng)的后處理器構(gòu)建方法與上述一致,同樣是在“線性移動(dòng)”中增加符合各自程序格式的矢量方向代碼,即在FANUC30i系統(tǒng)中增加“IJK”代碼,在西門子840D系統(tǒng)中增加“A3=B3=C3=” 代 碼 , 并 分 別 通 過(guò) 表 達(dá) 式“$mom_tool_axis(0)”、“$mom_tool_axis(1)”和“$mom_tool_axis(2)”輸出相應(yīng)格式的刀軸矢量參數(shù)[4],如圖10和圖11所示。
圖10 FANUC系統(tǒng)的刀軸矢量程序格式
圖11 西門子系統(tǒng)的刀軸矢量程序格式
為了驗(yàn)證刀軸矢量程序后處理器的效果,設(shè)計(jì)了一個(gè)試切模型,并用NX編寫了一段“3+2”定軸加工刀路用于毛坯開粗和一段五軸聯(lián)動(dòng)加工刀路用于側(cè)刃精銑,如圖12所示。
圖12 測(cè)試模型及五軸測(cè)試刀路
使用制作的海德漢iTNC530、FANUC30i和西門子840D數(shù)控系統(tǒng)的刀軸方向矢量后處理器,成功生成了定軸和五軸聯(lián)動(dòng)測(cè)試程序,其中iTNC530測(cè)試程序如圖13所示。
圖13 刀軸矢量測(cè)試程序
選用了3種不同結(jié)構(gòu)的VERICUT虛擬測(cè)試機(jī)型,分別是Huron公司kx100型刀具旋轉(zhuǎn)AC軸加工中心、Hermle公司C30U型工作臺(tái)旋轉(zhuǎn)AC軸加工中心和DMG公司DMU60t型混合旋轉(zhuǎn)BC軸加工中心。測(cè)試先采用海德漢iTNC530系統(tǒng),調(diào)用后處理好的測(cè)試刀軸矢量程序并設(shè)置好坐標(biāo)系等相關(guān)參數(shù),依次選用3種結(jié)構(gòu)類型的五軸機(jī)床模型進(jìn)行測(cè)試,3種機(jī)床均能完成仿真加工,仿真測(cè)試效果如圖14~16所示。
圖14 刀具旋轉(zhuǎn)型五軸機(jī)床仿真測(cè)試
圖15 工件旋轉(zhuǎn)型五軸機(jī)床仿真測(cè)試
圖16 混合型五軸機(jī)床仿真測(cè)試
第2次測(cè)試采用西門子840d系統(tǒng)的后處理器,第3次測(cè)試采用FANUC30i系統(tǒng)后處理器,在VERICUT中調(diào)換對(duì)應(yīng)的仿真控制系統(tǒng),保持機(jī)床模型和坐標(biāo)等參數(shù)不變,測(cè)試結(jié)果全也全部正常,3種不同系統(tǒng)的五軸矢量程序后處理器均能生成程序并順利運(yùn)行。
VERICUT虛擬仿真測(cè)試通過(guò)后,因測(cè)試車間沒有刀具旋轉(zhuǎn)型五軸機(jī)床,選用了2臺(tái)其他結(jié)構(gòu)的五軸機(jī)床用來(lái)測(cè)試刀軸矢量程序。
首先選用了哈挺公司的UX600工作臺(tái)旋轉(zhuǎn)型五軸加工中心,該機(jī)床為工件旋轉(zhuǎn)的AC軸結(jié)構(gòu),配備了海德漢iTNC530控制系統(tǒng),出廠年份為2011年,測(cè)試工件材料為硬鋁6061棒料,刀具為10 mm硬質(zhì)合金端銑刀。程序?qū)霗C(jī)床并順利運(yùn)行,機(jī)床在加工過(guò)程中運(yùn)行平穩(wěn),測(cè)試結(jié)果如圖17所示。
圖17 AC軸工作臺(tái)旋轉(zhuǎn)型機(jī)床加工測(cè)試
第2次測(cè)試選用DMG公司的DMU60t五軸加工中心,該加工中心是混合型BC軸結(jié)構(gòu)(B軸為刀具旋轉(zhuǎn)軸,C軸為工件旋轉(zhuǎn)軸),同樣配備了海德漢iTNC530控制系統(tǒng),出廠年份為2012年,材料和刀具不變。直接將程序拷貝至機(jī)床,在程序頭部手工修改部分M代碼其余不變,啟動(dòng)程序后機(jī)床能順利讀取識(shí)別刀軸矢量代碼并完成工件切削,切削測(cè)試結(jié)果如圖18所示。
圖18 BC軸混合旋轉(zhuǎn)型機(jī)床加工測(cè)試
通過(guò)上述實(shí)踐驗(yàn)證表明,刀軸矢量程序能順利實(shí)現(xiàn)五軸定位加工和五軸聯(lián)動(dòng)加工,且能在結(jié)構(gòu)不同但數(shù)控系統(tǒng)相同的五軸機(jī)床上實(shí)現(xiàn)程序通用,有助于提高五軸設(shè)備使用效率,降低相關(guān)生產(chǎn)和教學(xué)活動(dòng)的成本。
基于刀軸矢量程序的后處理器在制作和使用過(guò)程中均不需要考慮機(jī)床具體的旋轉(zhuǎn)軸結(jié)構(gòu),制作過(guò)程簡(jiǎn)便,各企業(yè)和院校的技術(shù)人員只需要擁有三軸機(jī)床后處理制作經(jīng)驗(yàn),即可參考本文利用刀軸矢量程序和NX/Post_Builder自主開發(fā)出通用的五軸刀軸矢量后處理器,該后處理器經(jīng)過(guò)簡(jiǎn)單修改就能適配各種結(jié)構(gòu)的五軸機(jī)床,降低后處理器開發(fā)成本,具有較好的經(jīng)濟(jì)價(jià)值和推廣價(jià)值。