摘要:在飛控系統(tǒng)各類閥套、閥芯等零件中,外圓、內(nèi)孔的環(huán)槽型面占了零件特征很大一部分,在數(shù)控加工編程過程中,若全部用G代碼或子程序來編寫,不僅復(fù)雜、繁瑣,而且檢查校對(duì)費(fèi)時(shí),容易出錯(cuò),更有復(fù)雜的環(huán)槽用子程序無法實(shí)現(xiàn),所以開發(fā)實(shí)用性好、高效率的宏程序非常有意義,為此,本文總結(jié)了數(shù)控車削中軸類回轉(zhuǎn)體零件各類環(huán)槽加工的宏程序編寫方法和技巧。
關(guān)鍵詞:環(huán)槽 宏程序 分層切削 結(jié)構(gòu) 循環(huán)
中圖分類號(hào): 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1674-098X(2015)07(c)-0000-00
宏程序是在常規(guī)手工編程方式上附加的、更為高效的、更為通用的編程方式,它大量使用了各種變量、運(yùn)算指令和控制指令,提供循環(huán)、判斷、分支等的調(diào)用,從而大大精簡(jiǎn)了程序編制的容量。在數(shù)控車削加工中通過編輯宏程序能夠完成常規(guī)的數(shù)控編程指令不能完成的特殊型面,如當(dāng)加工的型面母線是橢圓、拋物線等時(shí)。另外當(dāng)加工零件圖形相似,尺寸不同或者工藝路徑一樣,位置不同的系列零件時(shí),通過調(diào)用一個(gè)宏程序,反復(fù)執(zhí)行某幾句代碼來達(dá)到減少編寫代碼的目的,從而極大地簡(jiǎn)化編程,使得程序邏輯嚴(yán)密,方便檢查,不易出錯(cuò)。
1.典型環(huán)槽編程方法與技巧
1.1 多窄槽車削宏程序編程方法
窄槽車削,選擇主切削刃寬度等于槽寬的切槽刀具,縱向走刀一次將槽切出。多窄槽車削時(shí),從零件右側(cè)切入─退出─Z方向左移一個(gè)槽間距…切入─退出…,如此反復(fù)完成多窄槽的加工
圖 1. 多窄槽零件二維、三維圖及主要尺寸
(1)參數(shù)化編程
參數(shù)化編程,也就是宏程序設(shè)計(jì),即用參數(shù)語句編寫程序,只要改變參數(shù)的值就可以加工不同尺寸的零件 。宏程序調(diào)用語法是:G65 P<程序號(hào)> L<重復(fù)次數(shù)><參數(shù)1>…<參數(shù)n>,程序號(hào)是已經(jīng)存在的要被調(diào)用的程序號(hào);重復(fù)次數(shù)是被調(diào)用程序連續(xù)執(zhí)行的次數(shù),默認(rèn)為1;參數(shù)用于給宏程序中的變量傳遞指定的初始值。
在宏程序中對(duì)于零件的坐標(biāo)值、切削用量等用宏變量來表示,宏變量是一個(gè)數(shù)學(xué)量,它能假設(shè)在其允許范圍內(nèi)的任何值,變量符號(hào)是#,后面緊跟著一個(gè)在允許范圍內(nèi)(這取決于控制系統(tǒng)版本)的數(shù)字(叫做變量號(hào))。在多窄槽加工程序中設(shè)置兩個(gè)關(guān)鍵變量分別表示環(huán)槽個(gè)數(shù)和第一個(gè)環(huán)槽軸向坐標(biāo)值,通過該變量的累加和運(yùn)算來控制切槽的數(shù)量和每一個(gè)環(huán)槽的軸向坐標(biāo)。
(2)單個(gè)循環(huán)結(jié)構(gòu)
循環(huán),就是只要滿足指定的條件,程序中的某些語句可以被反復(fù)執(zhí)行。FANUC 系統(tǒng)宏循環(huán)采用的是while條件判斷語句,while語句的格式為:
while[條件表達(dá)式] DO m;(m=1,2,3)
…<循環(huán)內(nèi)程序段>
END m;
當(dāng)條件表達(dá)式成立時(shí),執(zhí)行DO到END之間的語句,否則執(zhí)行END后面的語句。
加工多個(gè)窄槽時(shí),只需在宏程序里編制一個(gè)條件判斷語句while即可,其宏程序流程如圖2所示。
圖2 多窄槽加工宏程序框圖
1.2 寬環(huán)槽車削宏程序設(shè)計(jì)
1.2.1 單個(gè)深、寬環(huán)槽程序設(shè)計(jì)
在切削深、寬環(huán)槽時(shí),不僅需要在Z方向上分次切削,另外X方向槽較深,考慮排屑困難及刀具強(qiáng)度等因素,必須實(shí)行分層多次切削,即:采用從凹槽右側(cè)切入─退出─Z方向左移─切入… X方向向下移動(dòng)切入─退出─Z方向左移動(dòng)…,如此反復(fù)完成槽的加工。
圖 3單個(gè)深、寬環(huán)槽零件二維、三維圖及主要尺寸
(1)循環(huán)嵌套結(jié)構(gòu)實(shí)現(xiàn)徑向和軸向分層切削
一個(gè)循環(huán)結(jié)構(gòu)內(nèi)含有另一個(gè)循環(huán),稱為循環(huán)嵌套結(jié)構(gòu),又稱多重循環(huán)。單一的循環(huán)語句用于當(dāng)滿足指定的條件,完成一些同樣的操作,另一方面,在條件循環(huán)中,如果每個(gè)操作包含另外一套相同的操作就可以使用循環(huán)嵌套。在此深、寬環(huán)槽加工編程時(shí),采用循環(huán)嵌套結(jié)構(gòu),由兩個(gè)while statement語句組成,外層循環(huán)用來控制X向切深,內(nèi)層循環(huán)用來控制Z向切寬,這種方法極大地化簡(jiǎn)了編程,精簡(jiǎn)了程序,并且邏輯非常嚴(yán)密,易讀易改。
(2)針對(duì)不同刀寬的防錯(cuò)程序設(shè)置
在加工寬槽時(shí),槽的寬度是切槽刀具的n倍,一般軸向至少要分n次切削,,但當(dāng)n為非整數(shù)時(shí),為了不將寬槽多切或少切需在程序中進(jìn)行特殊的設(shè)置,例如,將WHILE語句中條件表達(dá)式設(shè)為: [#1 LT #2] ,條件表達(dá)式中#1為寬槽起點(diǎn)坐標(biāo),#2為寬槽終點(diǎn)坐標(biāo),中間的符號(hào)要用LT(小于),當(dāng)每次循環(huán)執(zhí)行完畢后再在#2處(槽的終點(diǎn)坐標(biāo)處)切削一次。
(3) 倒角、倒圓、去毛刺
當(dāng)環(huán)槽有倒角、倒圓或者去毛刺要求時(shí),可在程序中設(shè)置宏變量,利用切刀單側(cè)切削刃加工完成。
車削單個(gè)深、寬環(huán)槽的加工流程如圖4所示。
圖4 單個(gè)深、寬環(huán)槽的宏程序框圖
1.2.2等距多寬槽程序設(shè)計(jì)
此類環(huán)槽槽較寬,且個(gè)數(shù)較多,需要在在Z方向上分次切削切完一個(gè)槽之后刀具軸向移動(dòng)一個(gè)槽距再加工第二個(gè)寬槽,如此反復(fù)直到加工完全部槽。即:采用從凹槽右側(cè)切入─退出─Z方向左移─切入─退出─平槽底…軸向移動(dòng)一個(gè)槽距… 切入─退出─Z方向左移─切入─退出─平槽底…,如此反復(fù)完成槽的加工。
圖 5 等距多寬槽零件二維、三維圖及主要尺寸
(1)循環(huán)+分支結(jié)構(gòu)
面對(duì)該類零件,最簡(jiǎn)潔的方法是采用一個(gè)WHILE循環(huán)語句+IF語句的結(jié)構(gòu)來完成,比如循環(huán)語句控制槽寬,IF語句控制切槽的數(shù)量,主程序只需調(diào)用一次宏程序就能完成全部環(huán)槽加工。
(2 )算術(shù)運(yùn)算指令自動(dòng)計(jì)算各槽坐標(biāo)點(diǎn)
宏程序中可以將變量進(jìn)行算術(shù)運(yùn)算,然后賦給該變量本身或者另一個(gè)變量。在等距多寬槽切削時(shí),可以將寬槽的起始點(diǎn)設(shè)置成兩個(gè)變量,這兩個(gè)變量自身進(jìn)行相應(yīng)的算術(shù)運(yùn)算,得出每個(gè)環(huán)槽的起始坐標(biāo),這樣加工者不用去計(jì)算每個(gè)寬槽的起始點(diǎn)坐標(biāo)。
(3)粗、精車保證槽底光潔度
在加工寬槽時(shí),在分幾次橫向切完寬槽后,縱向走刀平槽底,保證槽底的光潔度要求。該程序中,我們可以將橫向切削尺寸編寫為小于實(shí)際尺寸0.02,在循環(huán)體外編寫一個(gè)平槽底程序,這樣每當(dāng)執(zhí)行完一次循環(huán)加工完一個(gè)寬槽后就會(huì)緊跟著精車槽底。
(4)尖邊倒角、倒圓、去毛刺及防錯(cuò)設(shè)計(jì)
零件的尖邊倒角、倒圓、去毛刺及防錯(cuò)設(shè)計(jì)與單個(gè)深、寬環(huán)槽程序設(shè)計(jì)相同。
等距多寬槽宏程序流程如圖6所示。
圖6 等距多寬槽的宏程序框圖
1.3 非等距寬槽宏程序加工技巧
在許多零件中多寬環(huán)槽并非全部等距,而是呈等差遞增(即槽寬一致,槽間距呈等差遞增)如圖7(a);多個(gè)階梯等距遞增(槽寬一致,槽間距相等,多個(gè)環(huán)槽槽徑呈等差遞增)如圖7(b);或者多個(gè)階梯等差遞增(槽寬一致,槽間距與槽徑均呈等差遞增)如圖7(c)等各種形式,
在編制以上這幾類宏程序時(shí),其編程思路與刀具路徑規(guī)劃與等距環(huán)槽相似,在編制等差遞增寬槽宏程序時(shí)時(shí)增加一個(gè)變量,使環(huán)槽起點(diǎn)與終點(diǎn)Z向坐標(biāo)值等差遞增;編制多個(gè)階梯遞增寬槽宏程序時(shí)設(shè)置槽徑自身累加,實(shí)現(xiàn)槽徑等差遞增;在編制多個(gè)階梯等差遞增槽寬宏程序時(shí)將以上二者相結(jié)合。通過宏變量的靈活運(yùn)用來實(shí)現(xiàn)不同類型的多環(huán)槽加工,這是一般的程序和子程序不能實(shí)現(xiàn)的。
a)等差遞增寬環(huán)槽 b)階梯等距遞增寬環(huán)槽 c) 階梯等差遞增寬環(huán)槽
圖7非等距寬槽典型零件
2.等距寬環(huán)槽宏程序編程應(yīng)用舉例
以圖5所示零件介紹如何編制多個(gè)等距寬環(huán)槽宏程序,零件材料為不銹鋼。在切削這類形狀相似、尺寸不同的環(huán)槽零件時(shí),為提高宏程序的通用性,我們需將程序中尺寸坐標(biāo)值、切削用量、倒角等全部用宏變量來代替,只需在主程序中通過參數(shù)給相應(yīng)的變量指定初始值即可。其具體程序如下所示:
O0004 (主程序號(hào))
M98 P1;
G97 S800 M13;
T15;
X12.;
Z2.;
G65 P0005 V5. A10. B17. Y11.H10.D8.Z2.; (調(diào)用0005號(hào)宏程序,并給
相應(yīng)字母賦值,V 為環(huán)槽的個(gè)數(shù),A為第一個(gè)環(huán)槽的起點(diǎn)Z向坐標(biāo), B為第一個(gè)環(huán)槽的終點(diǎn)
Z向坐標(biāo),Y 為倆個(gè)槽起點(diǎn)之間的軸向距,H為外圓直徑,D為槽徑)
M98 P1;
M30;
O0005; (宏程序號(hào))
#18=0; (設(shè)置#18變量的初始值)
#4=0; (切槽的初始次數(shù))
#5=#1; (#1變量的初始值賦給中間變量#5)
#6=#2; (#2變量的初始值賦給中間變量#6)
N1 #1=#1+#25*#18; (計(jì)算環(huán)槽起點(diǎn)Z向坐標(biāo)值)
#2=#2+#25*#18; (計(jì)算環(huán)槽終點(diǎn)Z向坐標(biāo)值)
#1=#1+#26; (Z向起點(diǎn)坐標(biāo)增加一個(gè)刀寬)
#10=#1; (#1變量的值賦給#10)
WHILE[#1 LT #2] DO2; (如果#1 小于#2,則在WHILE[#1 LT #2] DO2
和 END2之間循環(huán),否則調(diào)出循環(huán))
G0 Z-#1; (快速到達(dá)切槽的起點(diǎn)軸向位置)
G1 G99 X#7 F.03; (X向切槽)
G00 X[#11+1]; (退刀)
#1=#1+#26; (每次移過一個(gè)刀寬)
END2;
G00 Z-#2; (為避免每個(gè)寬槽過切或少切在寬槽終點(diǎn)處單獨(dú)切削一次,為 防止重復(fù)切削在上面的條件表達(dá)式中符號(hào)設(shè)為L(zhǎng)T)
G1 G99 #7 F.03 ;
X#11 ;
G00 Z-#10;
G1 G99 #7 F.03;
Z-#2; (精加工槽底)
X#11;
#18=#18+1; (#18變量累加1)
#4=#4+1; (切槽的次數(shù)累加)
#1=#5; (中間變量#5的值重新賦給#1變量)
#2=#6; (中間變量#6的值重新賦給#2變量)
IF [#4 LT #22] GOTO1; (條件判斷,如果#4 小于#22,則跳轉(zhuǎn)到N1)
M99;
程序中字母地址和變量之間的對(duì)應(yīng)關(guān)系如表1所示:
表1 字母地址與變量關(guān)系對(duì)應(yīng)表
地址變量號(hào)地址變量號(hào)地址變量號(hào)
A#1B#2C#3
D#7E#8F#9
H#11I#4J#5
K#6M#13R#18
V#22Y#25X#24
W#23Z#26
3.結(jié)語
本文從多種結(jié)構(gòu)并存,運(yùn)用循環(huán)、循環(huán)嵌套及條件語句等進(jìn)行分層多次切削,使用變量的運(yùn)算及通過變量的靈活應(yīng)用等總結(jié)了軸類零件多窄槽、單個(gè)深寬槽、等距多寬槽、各種非等距多寬槽的宏程序的編寫方法和技巧。并舉例說明了宏程序的編程步驟,該方法大大精簡(jiǎn)了程序的篇幅,使得程序短小精湛,邏輯嚴(yán)密。主程序只需調(diào)用一次宏程序即可完成全部加工內(nèi)容。編程中的一些防錯(cuò)設(shè)置、粗精加工等確保了刀具的安全性和零件的精度,參數(shù)的變量化使得程序具有了通用性,充分發(fā)揮了宏程序在環(huán)槽車削中的優(yōu)越性,同時(shí)為其他相似型面宏程序設(shè)計(jì)提供參考和借鑒。
參考文獻(xiàn)
[1] 沈春根,徐曉翔,劉義.數(shù)控車宏程序編程實(shí)例精講.機(jī)械工業(yè)出版社,2011.12.
[2]S.K.Sinha. 數(shù)控宏程序編程技術(shù).科學(xué)出版社,2011.
[3] 吳長(zhǎng)有.數(shù)控車床加工技術(shù).機(jī)械工業(yè)出版社,2010.4