董鐘慧
(云南機電職業(yè)技術(shù)學院,云南 昆明 650203)
隨著計算機的發(fā)展,在數(shù)控加工行業(yè)中,自動編程技術(shù)也飛速發(fā)展,很多零件的編程可以使用計算機自動編程,但在實際加工中也會遇到一些曲面,應(yīng)用自動編程會更復雜。會有一些零件無法用指令插補加工出來,要利用宏程序進行加工。宏程序一般用于手工編程,可大大縮短編程時間,提高編程效率,現(xiàn)代的數(shù)控系統(tǒng)提供了很多高效編程功能。
云南省第四屆數(shù)控技能大賽數(shù)控車床的實操試題,是個裝配體,由3個零件組成,其中一個零件是橢圓面,一個零件有拋物線的內(nèi)孔。如果用自動編程,花費時間較長,生成的程序段較多,而且加工精度不高;如果用數(shù)控系統(tǒng)提供的高效編程功能,如復合循環(huán)程序、子程序、宏程序等,采用手工編程,反而可以縮短編程時間,提高加工效率。
本文以這幾個零件為例,介紹宏程序在華中數(shù)控車床上實際加工的應(yīng)用。
這個裝配體由3個零件裝配而成,如圖1。
圖1 裝配圖
經(jīng)過圖樣分析,零件2和零件3的最大外圓尺寸比較接近,因此可以用一個毛坯一次裝夾,完成兩個零件的基本加工,切斷后再分別加工至圖紙要求,零件1兩次裝夾完成整個零件的加工;先加工出零件3,再加工零件2,保證配合達到圖紙要求,最后加工零件1,保證其能和零件2和零件3都配合緊密。
為保證加工精度和粗糙度,加工時都采用先粗加工后精加工的方法。本文主要是介紹宏程序的應(yīng)用,因此在這不對零件的具體加工工藝做過多闡述。
加工零件2的橢圓表面和零件3的拋物線內(nèi)孔,由于一般的數(shù)控系統(tǒng)無橢圓和拋物線插補功能,采用手工編程,如果用直線逼近的話,我們要算很多節(jié)點,手工來計算節(jié)點坐標實際上是不可能的事。華中數(shù)控系統(tǒng)提供了邏輯運算和表達式等功能,通過數(shù)學計算或邏輯運算,以一個坐標值的不斷變化,根據(jù)表達式就可算出另一個坐標的值,即可得出曲線上的節(jié)點坐標值。這就是數(shù)控系統(tǒng)里宏程序的功能。因此宏程序可以實現(xiàn)一些普通程序難以實現(xiàn)的功能,運用宏程序編程加工非圓曲線時(如橢圓、拋物線等),可以使加工程序簡潔易懂。
概念:用變量的方式進行數(shù)控編程的方法,就叫做數(shù)控宏程序編程。
宏程序分為A類和B類,A類宏程序比較老,編寫起來比較費時費力,B類宏程序類似于C語言編程,編寫起來很方便,A類和B類運行效果一樣,一般說來,華中數(shù)控機床用的是B類宏程序,因此本文零件的非圓曲面加工是用B類宏程序編寫的。
數(shù)控宏程序的優(yōu)點:
(1)可編寫一些非圓曲線,如橢圓、雙曲線、拋物線等;
(2)編寫形狀相同,尺寸不同的零件,可根據(jù)零件具體尺寸修改程序中相應(yīng)的數(shù)據(jù),不用全部重新編程;
(3)利用宏程序進行手工編程時,可以通過數(shù)學公式自動計算節(jié)點坐標;
(4)宏程序的插補精度可以根據(jù)加工要求進行修改。
宏程序編程時,雖然圖形的各個節(jié)點坐標值是由CNC來計算,但其還是屬于手工編程的范疇。宏程序是普通加工編程的補充,因此編程規(guī)則和手工編程一樣,編制宏程序時,首先要分析零件圖紙,確定各加工表面間的幾何關(guān)系,得出各參數(shù)之間的關(guān)系,建立正確的數(shù)學模型。其次要正確選擇變量參數(shù),一般選擇X或Z坐標變化范圍大的一個變量,作為自變量,并列出正確的方程,然后設(shè)定合理的循環(huán)變量。為提高程序的通用性,尺寸參數(shù)盡可能的用宏變量表示。
以零件2的加工程序為例,說明用宏程序編寫橢圓面,零件的具體尺寸如圖2。
圖2 橢圓套的零件圖(零件1)
根據(jù)圖紙,橢圓的標準方程是
以零件的右端面的中心為編程零點編制程序,采用直線擬合,把Z作為自變量,用任意一點的Z值變化來表達相應(yīng)的X值,求得方程為
在這就不羅列整個零件的加工程序,僅寫出宏程序的編程加工程序部分。
橢圓面加工程序清單如下:
4%02程序號
M43高速檔
N10 M03 S600 T0303 粗車刀具、轉(zhuǎn)速
N20 G00 X60 Z0.5 快速定位到循環(huán)起點
N30 G71 U1.5 R2 P80 Q180 X0.5 Z0 F180外圓粗車循環(huán)
N40 G00 X260 快速退刀
N50 Z60
N60 M03 S1300 T0303 精車刀具、轉(zhuǎn)速
N70 G00 X60 Z0.5 快速定位到循環(huán)起點
N80 G01 X49.69 F80 精車外圓起點
N90 Z0
N100#1=38 長半軸賦值
N110#2=18 短半軸賦值
N120#3=5 Z軸起點
N130 WHILE#3 GE[-30.5]當 Z<-30.5,轉(zhuǎn)到N180
N140#4=#2*SQRT[#1*#1-#3*#3]/#1 橢圓上任一點X坐標值計算
N150 G01 X[2*#4+14]Z[#3-5]直線插補橢圓
N160#3=#3-0.5 Z軸變量
N170 ENDW
N180 G01 X53
N190 G00 X260 快速退刀
N200 Z60
N210 M5
N220 M30 程序結(jié)束
表1 變量說明
以零件3的加工程序為例,說明用宏程序編寫拋物線孔,零件的具體尺寸如圖3。
圖3 軸的零件圖(零件2)
根據(jù)圖紙,拋物線的方程是X2=-5Z,以零件的右端面的中心為編程零點編制程序,采用直線擬合,把Z作為自變量,用任意一點的Z值變化來表達相應(yīng)的X值,求得方程為
在這舉例就寫出運用宏程序編程加工的部分,不再將整個零件完整的加工程序全部列出。
拋物線內(nèi)孔加工程序清單如下:
%03程序號
M43高速檔
N10 T0101 M03 S400 粗車刀具、轉(zhuǎn)速
N20 G00 X19 Z2 快速定位到循環(huán)起點
N30 G71 U0.75 R0.3 P80 Q160 X-0.4 Z0 F120內(nèi)孔粗車循環(huán)
N40 G00 Z100 快速退刀
N50 X150
N60 T0202 M03 S800 精車刀具、轉(zhuǎn)速
N70 G00 X19 Z2 快速定位到循環(huán)起點
N80 G01 X28.28 F60 精車內(nèi)孔起點
N90 Z0
N100#1=40 Z賦值
N110 WHILE#1 GE 20 當 Z<20,轉(zhuǎn)到 N160
N120#2=SQRT[5*#1]拋物線上任一點X坐標值計算
N130 G01 X[2*#2]Z[#1-40]直線插補拋物線
N140#1=#1-0.5 Z軸變量
N150 ENDW
N160 G01 X19
N170 G00 Z100 快速退刀
N180 X150
N190 M05
N200 M30 程序結(jié)束
表2 變量說明
通過以上兩個實例可以看出,宏程序嵌套在外圓粗車復合循環(huán)指令G71里,在精車程序中定義橢圓的標準方程,確定Z坐標值為自變量,自動計算出X坐標值,并根據(jù)循環(huán)語句反復執(zhí)行循環(huán)體內(nèi)容,直到符合條件,則循環(huán)結(jié)束。
因此,用宏程序編寫橢圓、拋物線等曲面的加工程序時,結(jié)合G71指令,可以使程序更直觀、簡便、易懂,提高編程效率。
在實際加工中,我們還會遇到許多形狀相同,尺寸不同的零件,如果每次都要新編寫程序,工作量就很大,那么我們就可以在子程序中嵌套宏程序,根據(jù)不同零件的尺寸變動情況,修改子程序里的參數(shù),再調(diào)用子程序即可,就無需重新編寫整個程序,這就是宏程序和子程序結(jié)合編程的優(yōu)點。
綜上所述,當零件的圖形沒有相同的地方時,將粗車復合切削循環(huán)G71指令應(yīng)用在宏程序中,加工程序的編寫會更簡潔、易懂;當零件的圖形有相同或相近的地方,用子程序調(diào)用指令M98、M99更有優(yōu)勢。因此,在實際應(yīng)用中,編程要根據(jù)零件的具體情況分析,靈活地將子程序、循環(huán)指令運用到宏程序中,這樣在簡化程序和提高加工精度等方面都能取得較好的效果。
通過利用華中世紀星HNC-21T數(shù)控系統(tǒng)的宏程序功能,作者用宏程序編制的加工程序成功加工出以上零件,可發(fā)現(xiàn)對滿足函數(shù)關(guān)系的零件曲面編程,從編程時間、加工效率、加工精度及程序簡化等方面,宏程序具有優(yōu)越性。
在實際數(shù)控加工中,根據(jù)加工零件的特點,合理運用宏程序,手工編程也能完成復雜零件的編程工作,能充分發(fā)揮數(shù)控機床的性能。
參考資料:
[1]韓鴻鸞,榮維芝.數(shù)控機床加工程序的編制[M].北京:機械工業(yè)出版社,2001.
[2]王睿鵬.數(shù)控機床編程與操作[M].北京:機械工業(yè)出版社,2009.
[3]華中數(shù)控.世紀星車床數(shù)控系統(tǒng)編程說明書[Z].武漢:武漢華中數(shù)控股份有限公司,2009.
[4]陳文杰.數(shù)控加工工藝與編程[M].北京:機械工業(yè)出版社,2009.