柳 青
?
宏程序在凹、凸半球面銑削加工中的應用
柳 青
(岳陽職業(yè)技術學院 湖南岳陽 414000)
非圓曲線編程是手工編程中的難點,而球面是數(shù)控銑床加工中最為常見的非圓曲線。以內(nèi)、外半球加工為例, 詳細介紹了FANUC系統(tǒng)數(shù)控銑床加工球面的宏程序編寫及程序注解,并指出了在編制程序時的注意事項。使用宏程序加工零件可以大大簡化數(shù)控程序,達到精確和高效的目的。
球面 宏程序 變量 參數(shù)方程
宏程序是程序編制的高級形式,它應用了大量的編程技巧,例如數(shù)學模型的建立、加工刀具及切削用量的選擇等,這些使得利用宏程序加工的零件精度很高[1-2]。特別是對于中等難度的零件,使用宏程序進行編程加工要比自動編程加工快得多,同時如果編寫大批量相類似零件的時候只需要改動幾個數(shù)據(jù)就可以了,沒必要進行大量重復的編程,所以能應用手工編程的地方盡量不要使用自動編程。球面是在宏程序的編制中經(jīng)常出現(xiàn)的一種圖形,要求編制者能掌握球面的相關方程,并能夠熟練地應用方程式,實現(xiàn)對各種形式的球面進行編程和加工。
宏程序就是使用了宏變量的程序、由用戶編寫的專業(yè)程序,類似于子程序,可以使用規(guī)定的指令代號以便調(diào)用。宏程序的代號稱為宏指令。
用戶宏程序是提高數(shù)控機床性能的一種特殊功能,其最大特點就是將有規(guī)律形狀或尺寸的加工零件用最短的程序段表達出來,具有很好的易讀性和易修改性,編寫出來的程序非常簡潔、邏輯嚴密、通用性強,而且機床在執(zhí)行此類程序時,相比執(zhí)行CAD/CAM軟件生成的程序更加快捷,反應更加迅速。
在一般的程序編制中,程序中的地址字符為常量的,一個程序只能描述一個幾何形狀,所以缺乏靈活性和適用性。宏程序中地址字符為變量的(也稱宏變量),可以根據(jù)需要通過賦值語句加以改變,使程序具有通用性。配合循環(huán)語句、分支語句和子程序調(diào)用語句,可以編制各種復雜零件的加工程序[3]。
在對球圓面曲面規(guī)則公式進行程序編制時,一般從曲面的規(guī)則公式或參數(shù)方程中,選擇其中一個變量做自變量,另一個變量作為自變量的函數(shù),并將公式或方程轉(zhuǎn)化為自變量的函數(shù)表達式,再用數(shù)控系統(tǒng)中的變量(#i或i)來表示這個函數(shù)表達式,最后根據(jù)這個曲面的起始點和移動步距,采用不同深度、不同半徑的圓來擬合球面,如圖1和圖2所示進行程序設計。
圖2 凹球面的擬合
1)零件圖紙及要求:
用直徑為10 mm的球銑刀在FANUC-0i系統(tǒng)機床上銑削加工S20的凹球面,如圖3所示。
圖3 加工SR20凹球面
2)建立數(shù)學模型
參數(shù)方程如下:
=0(0°~90°,設定初始值為0)
=*cos,=*sin
=20(球半徑,mm)-5(刀具半徑,mm)
3)分析加工路線
首先,建立工件坐標系,確定球零件上表面的中心為、、軸的零點,機床坐標系設置在G54寄存器中。在工件內(nèi)垂直下刀,不采用半徑補償。
4)NC編程
采用參數(shù)方程編寫如下NC程序段。
O1111;程序名
G17G21G80G90G54G40G49G69;運行初始狀態(tài)設置
MO3 S800; 設定主軸轉(zhuǎn)速
G000O2; 快速運動到工件外下刀點
#1=20 凹球半徑
#2=5 刀具半徑
#3=0 加工起始角度
#4()=#1-#2 刀具中心距
WHILE[#3LE90]DO1 角度小于等于90°繼續(xù)循環(huán)
#5=#4*sina[#3] 刀具下刀點值的計算
#6=#4*cos[#3] 刀具下刀點值的計算
G01#6Z-#5150 直線運動到下刀點
G03-#6 圓弧運動
#3=#3+1 角度增量,每次增加1度
END1 循環(huán)結(jié)束
G0050 抬刀
M30 程序結(jié)束并返回程序起點
5)加工分析
在精加工凹球面時要進行排料粗加工,否則刀具加工量太大會引起刀具的破壞或加工尺寸偏差較大[4]。常采用以下兩種開粗加工方式:一種方式是用立銑刀進行螺旋式下刀開粗;另一種方式是將程序中球半徑改小,先掏出個小凹球后再進行加工。
1)零件圖紙及要求:
用直徑為10 mm的立銑刀在FANUC-0i系統(tǒng)機床上銑削加工S20的凸球面,如圖4所示。
圖4 加工SR20凸球面
2)建立數(shù)學模型
設定球的半徑為,刀具半徑為,參數(shù)方程:
=0(0°~90°,設定初始值為0)
=*sin+,=*cos-
3)分析加工路線
建立工件坐標系,確定球零件上表面的中心為、、軸的零點,機床坐標系設置在G54寄存器中。在工件外垂直下刀,不采用半徑補償,定球的最高頂點為0。
4)NC編程
采用參數(shù)方程編寫如下NC程序段。
O1111; 程序名
G17G21G80G90G54G40G49G69;運行初始狀態(tài)設置
MO3 S800; 設定主軸轉(zhuǎn)速
G000O2; 快速運動到工件外下刀點
#1=20 凹球半徑
#2=5 刀具半徑
#3=0 加工起始角度
WHILE[#3LE90]DO1 角度小于等于90°繼續(xù)循環(huán)
#4=#1*sina#3+#2 刀具下刀點值的計算
#5=#1cos#3-#1 刀具下刀點值的計算
G01X#4Z#5F150 直線運動到下刀點
G03I-#4 圓弧加工
#3=#3+1 角度增量,每次增加1°
(根據(jù)加工要求而定可將值改小或增大)
END1 循環(huán)結(jié)束
G0050 抬刀
M05 主軸停轉(zhuǎn)
M30 程序結(jié)束并返回程序起點
5)加工分析
在精加工凸球面時要進行排料粗加工,否則刀具加工量太大會引起刀具破壞或加工尺寸偏差較大[4]。常采用以下開粗加工方式:先用立銑刀進行螺旋式下刀開粗將球體部分加工成圓柱體,再將球半徑值改大加工一次,再根據(jù)實際尺寸修改球半徑進行精加工。
在FANUC系統(tǒng)中宏程序應用比較廣泛,編寫宏程序可以在機床數(shù)控系統(tǒng)的操作面板上直接用MDI方式,也可以在計算機上編寫程序,通過RSN-32接口傳輸?shù)綑C床數(shù)控系統(tǒng)。不論用什么方式編程,宏程序可分為A類和B類。A類宏程序是以G65 H~P#~Q#~R#~的格式編寫的,而B類宏程序則是以直接的公式和語言編寫的,與C語言很相似。其中H~用H01~H99表示宏程序的各種功能。另外#~表示宏程序中一個存放數(shù)值的固定地址稱為變量,可分為4種類型:(1)局部變量:#1~#33是宏程序中局部使用的變量,用于自變量轉(zhuǎn)移,只能存儲數(shù)據(jù),如運算結(jié)果。當斷電時其值全部清除;調(diào)用宏程序時,自變量對局部變量賦值。(2)公用變量:在不同的宏程序中意義相同,對主程序調(diào)用的各子程序或各宏程序都是公用的,用戶可以自由使用。當斷電時變量#100~#199的值全部被清除,而變量#500~#531即使斷電數(shù)據(jù)仍然保存。(3)系統(tǒng)變量:由#后跟4位數(shù)字來定義,它能獲取機床處理器或NC內(nèi)存中的只讀或讀/寫信息,包括與機床處理器有關的交換參數(shù)、機床狀態(tài)參數(shù)、加工參數(shù)等系統(tǒng)信息。(4)空變量:#0總是空的,沒有值能賦給該變量。掌握好變量是應用好宏程序的關鍵。
使用宏程序加工零件不僅大大簡化了數(shù)控程序,并且提高零件的加工精度,宏程序在實際加工中得到了廣泛的運用。以上所述只是其中的一實例,雖然不能替代CAD/CAM軟件,但在簡化手工編程的方面起到了重要的作用。
[1] 趙剛.數(shù)控銑削編程與加工[M].北京:化學工業(yè)出版社,2007.
[2] 馮志剛.數(shù)控宏程序編程方法技巧與實例[M].北京:機械工業(yè)出版社,2008.
[3] 金福吉.數(shù)控大賽試題答案點評[M].北京:機械工業(yè)出版社, 2008.
[4] 王愛玲.數(shù)控機床加工工藝[M].北京:機械工業(yè)出版社, 2006.