[摘要]隨著職業技術教育不斷被重視,全國各地每年都在組織各類數控技能比賽,大到全國數控技能大賽,小到各省、市、區、縣的數控技能比賽,這類比賽都要求參賽選手必須使用手工編程來加工零件,因此,目前全國各類職業技術院校相關專業的師生,為了參賽都在學習手工編程方法,本文結合作者的實踐經驗,針對目前市場上某些數控銑床手工編程書籍,介紹編程指令不全面的缺點,補充說明了旋轉指令的使用方法和應該注意的問題。
[關鍵詞]數控銑床 手工編程 旋轉
一、緒論
目前,市場上關于數控銑床手工編程的書籍很多,但有些書介紹編程指令過于簡單,至于具體如何應用,沒有詳細介紹。有些書雖然介紹比較詳細,但是運用某些指令編程時,某些容易出錯而又不容易被發現的細節之處沒有提到。因此往往會造成以下兩種現象:一、即使知道了各個指令的含義,還是不會編程;二、編程格式完全正確,但是把程序輸入機床,一經校驗,發現刀具軌跡錯誤,可想而知,如果直接運行程序,不但前面加工好的表面會破壞,甚至也有可能造成撞刀的嚴重后果。以上兩種現象都應“歸功”于這些書的一個共性:點到為止,介紹不夠全面。要想真正掌握各個指令的編程方法,還需要自己花大量的時間去慢慢琢磨。
下面我想談談個人對使用旋轉指令時的一些心得,希望能對初學數控銑床手工編程的人員帶來一點幫助。
二、旋轉指令概念與編程格式
數控銑床的系統較多,應用比較廣泛的有:FANUC、華中世紀星、SIEMENS等,不同的系統,編程的格式、指令代碼也略有不同,現在以華中世紀星系統為例,談談旋轉指令的使用方法。
旋轉指令主要用于加工某些圍繞中心旋轉得到的特殊輪廓加工,如果根據旋轉后的實際加工軌跡進行編程,就可能使坐標計算的工作量大大增加,而通過圖形旋轉功能,可以大大簡化編程的工作量。
指令格式:G17G68 X_Y_P_;
G69;
格式中的G17表示選擇加工平面是XY平面,其中G68表示圖形旋轉生效,而指令G69表示圖形旋轉取消.格式中的X、Y值用于指定圖形旋轉的中心,P圖形旋轉的角度,該角度一般取0-360°的正值,旋轉角度的零度方向為第一坐標軸的正方向,逆時針方向為角度旋轉的正向。不足1°的角度以小數點表示,如10°54'用10.9°表示。例如,G68X15.0Y20.0P30.0;該指令表示圖形以坐標點(15,20)作為旋轉中心,逆時針旋轉30°。
三、旋轉指令使用方法
初步掌握了旋轉指令的使用范圍以及編程格式后,如何來應用該指令編程加工,對初學者來說還是比較困難,因為在加工時,如果加工深度比較大,往往不能一次加工成型,這就需要調用若干個子程序進行分層加工,下面以粗加工圖1所示的4個φ12的孔為例,介紹本人使用旋轉指令時的一種編程方法。
方法:選用φ8的鍵槽銑刀進行加工,而4個孔的有效深度有6mm,考慮到刀具的強度,所以每次切削深度可定為3mm,這就需要分兩層加工,粗加工后留孔的精加工半徑余量為0.5mm。
主程序調用兩個子程序,主程序中編寫旋轉指令,子程序1中做好孔加工前的定位準備,子程序2用來分層加工。

該方法的粗加工程序可編寫如下:
O0001;(主程序)
G90G54G00X0Y0;
M03S2000;
Z5;
M98P0002;
G68X0Y0P90;
M98P0002;
G68X0Y0P180;
M98P0002;
G68X0Y0P270;
M98P0002;
G69;
G90G00Z100;
X0Y0;
M30;
O0002;(子程序1)
G90G00Y31
G01Z–6F50;
M98P0003L2;
G90G00Z5;
X0Y0;
M99;
O0003;(子程序2)
G91G01Z-3F35;
Y1.5;
G02I0J-1.5F100;
G01Y-1.5;
M99;
四、使用旋轉指令加工時碰到的問題以及解決方法
問題一:程序運行到旋轉指令時,運行軌跡錯誤
程序校驗,加工第一個孔(即Y軸正向上的孔)時,加工軌跡正常,等該孔加工完畢,正要用旋轉指令加工第二個孔時(即X軸負方向的孔),加工軌跡出錯,即刀具不在第二孔的位置加工。仔細檢查程序,并請教了其他幾位專業老師,但始終找不出程序的錯誤。更令我費解的是,以前用旋轉指令加工類似的零件很順利,現在怎么會出錯呢?正當百思不得其解的時候,就查找了以前用旋轉指令編寫的程序,仔細對照新舊程序,發現新程序中的子程序O0002第一段和以前的程序段相比,略有不同,即:現在的這段程序G90G00Y31省略了X0,以前的程序中沒有省略這個X坐標字,原則上銑刀從X0Y0移動到X0Y31的位置X坐標沒有變化,是可以省略該坐標的,但是在旋轉程序中,為什么一省略,軌跡就出錯了呢?
在不知道原因的情況下,先試著把程序段G90G00Y31改成G90G00X0Y31,一運行,發現加工軌跡完全正確。于是基本可以得出一個結論:在帶有旋轉指令的程序中,第一個子程序中首個含有加工平面內的坐標的程序段(如加工平面是G17,該平面中含有X、Y兩個坐標,則子程序中首個含有X或Y坐標的程序段即是),無論該加工平面中的某個坐標有否變化,都不能省略任何一個坐標字,通俗一點講就是在該程序段中應該把所有坐標字都寫出來。
問題二:旋轉加工中按復位健后,再重頭開始運行程序發現被加工部位定位錯誤。
已經運行旋轉指令加工時,突然發現程序有些地方要修改一下,于是按下了復位鍵,然后修改需要修改的程序段,再從程序第一段開始運行,發現加工第一個孔時定位就錯誤了,機械回零后再重新運行程序,問題還是沒得到解決。仔細分析剛才的情形:按復位鍵時,程序正在運行旋轉指令,而G68是個模態指令,即如果不用G69取消,那么G68指令一直有效,而復位后加工第一個孔不需要用旋轉指令,因此導致加工該孔時定位出錯,相當于把第一個孔的位置旋轉了某個角度后再去加工。
那么用什么方法可以避免這種問題呢?想到一種很簡單的方法:在主程序首段,即G90G54G00X0Y0中插入G69來取消旋轉指令,即:G90G54G69X0Y0。再重新運行程序,發現軌跡完全正確。
五、結語
在編程時,除了使用旋轉指令時會碰到以上兩個問題外,同樣使用鏡像指令時一樣,因此,無論是用旋轉指令還是用鏡像指令加工零件,都應注意兩點:(1)第一個子程序中首個含有加工平面中的坐標的程序段中坐標字都不能省略。(2)用旋轉或鏡像指令編程時,最好在主程序開頭寫上取消旋轉指令G69和取消鏡像指令G25,可以避免因復位后重新運行程序導致軌跡錯誤。總之,手工編寫數控程序時,應耐心、仔細,碰到問題時冷靜分析、多思考、多總結,很多問題就能迎刃而解。
參考文獻:
[1]徐宏海,謝富春.數控銑床.化學工業出版社,2003,10.
[2]沈建峰,虞俊.數控銑工、加工中心操作工(高級).機械工業出版社.
[3]陳子銀.數控銑工技能實戰演練.國防工業出版社,2006,8.
(作者單位:浙江余姚市職業技術學校)