黃許娜
(鄭州市技師學(xué)院,河南 鄭州 450006)
用戶宏指令為用戶提供了一種編寫宏程序的手段。通常運(yùn)用宏指令編寫的程序我們稱之為用戶宏程序,簡(jiǎn)稱為宏程序。通常宏程序作為子程序存放在存儲(chǔ)器中,主程序需要時(shí)可以使用呼叫子程序的方式隨時(shí)調(diào)用。宏程序是一種編程方法,不僅可以讓編程者按照數(shù)控系統(tǒng)規(guī)定的格式編寫數(shù)控程序,而且還允許編程者在程序中進(jìn)行簡(jiǎn)單邏輯運(yùn)算與初等數(shù)學(xué)運(yùn)算,從而拓展了編程的靈活性與使用性,如表一所示。
表一 常規(guī)數(shù)控程序與用戶宏程序特點(diǎn)的對(duì)比
變量格式:FANUC 0iM數(shù)控系統(tǒng)中,變量的格式是再“#”符號(hào)后放置變量號(hào)碼,如#10表示10號(hào)變量。
變量的引用:變量的使用方法和常量一致,區(qū)別在于變量的值可以被替換。如:若變量#10的數(shù)值為1,變量#20中的數(shù)值為50,變量#30的數(shù)值為100,則指令G#10X#20F#30即為G1X50.0F100。
變量的運(yùn)算。宏程序的重要特性即是可以實(shí)現(xiàn)運(yùn)算功能,相當(dāng)于給編程者一把鑰匙,讓編程者開(kāi)發(fā)適合自己的加工走刀方式。宏程序的運(yùn)算有限順序?yàn)?1.函數(shù)運(yùn)算;2.乘除法與運(yùn)算、邏輯“與”;加減法運(yùn)算、邏輯“或”、邏輯“異或”。
宏程序中的控制指令。1)無(wú)條件轉(zhuǎn)移指令。指令使用格式為:GOTO n;其中,n為順序號(hào)。例如:GOTO 100。2)有條件轉(zhuǎn)移指令。指令使用格式為:IF{邏輯條件}GOTO n;其中,n為順序號(hào)。該指令表示,當(dāng)邏輯條件為真時(shí),執(zhí)行GOTO n,否則順序執(zhí)行下程序。3)循環(huán)指令。指令使用格式為:WHILE{邏輯條件}DO m;……END m;該指令表示,當(dāng)邏輯條件為真時(shí),程序執(zhí)行DO m和END m之間的程序,當(dāng)邏輯條件為假時(shí),程序執(zhí)行END m后的程序。其中,m的取值為1、2、3。例如:WHILE{#10 EQ#20}DO 1 G01 X100.0 END 1。
宏程序的調(diào)用。FANUC 0iM數(shù)控系統(tǒng)中用戶宏程序調(diào)用格式為:G65 P程序號(hào)L宏程序被重復(fù)調(diào)用幾次〈自變量賦值〉。例如:G65 P5001 L2 A1.0 B -100.0 C50.0。其中,5001為被調(diào)用的宏程序號(hào),L2表示重復(fù)調(diào)用兩次,A1.0表示向#1賦值1.0,B -100.0 表示向#2 賦值 -100.0,C50.0 表示向#3賦值 50.0。
從外形來(lái)看,倒角面就是一個(gè)三維的空間曲面,一般來(lái)說(shuō),對(duì)這種三維空間曲面的編程,使用常規(guī)的編程手段進(jìn)行程序編制會(huì)很麻煩,不僅會(huì)耗費(fèi)大量的編程時(shí)間,并且也不容易完成,在這個(gè)過(guò)程中可以考慮使用自動(dòng)的編程軟件,但是自動(dòng)編程軟件編制出來(lái)的程序一般都很復(fù)雜,很不易于實(shí)現(xiàn)在數(shù)控機(jī)床上進(jìn)行加工。經(jīng)過(guò)上面對(duì)兩種編程方案進(jìn)行分析后,我們認(rèn)為,必須要找出一種更加恰當(dāng)?shù)姆椒▉?lái)解決這個(gè)難題,宏指令編程方法就能解決上述問(wèn)題。因此,下面我們將對(duì)使用FANUC數(shù)控系統(tǒng)的宏指令解決上述問(wèn)題的應(yīng)用方法進(jìn)行簡(jiǎn)要介紹(數(shù)學(xué)計(jì)算法)。
在分別對(duì)應(yīng)圓孔的倒角處理和異形孔的倒角處理的基礎(chǔ)上,通過(guò)觀察相應(yīng)的圖形主視圖,可分別選擇相應(yīng)圖中的O點(diǎn),進(jìn)而建立機(jī)加工所需要的工件坐標(biāo)系,并且分別確定X、Y、Z三個(gè)坐標(biāo)的坐標(biāo)方向,視圖上表面的Z軸坐標(biāo)的數(shù)值均為零,我們進(jìn)而選取其中一個(gè)進(jìn)行相應(yīng)的分析,通過(guò)觀察工件坐標(biāo)系,主視圖坐標(biāo)方向中各個(gè)尺寸之間存在的數(shù)學(xué)關(guān)系,我們可以推算出,倒角面在Z軸方向的高度為5。根據(jù)我們以上對(duì)倒角面的分析,我們可以思考建立這樣一個(gè)基本的編程思路:使用宏指令進(jìn)行數(shù)控編程,加工刀具在到倒角面處沿Z軸向負(fù)方向在0—-5之間進(jìn)行切削加工,同時(shí)刀具還沿X、Y平面上進(jìn)行逐層的走刀,沿著這個(gè)思路,最終就可以形成我們所需要的倒角曲面。
通過(guò)深入的進(jìn)行切削過(guò)程分析,可以知道:刀具不僅在沿著Z軸負(fù)值方向進(jìn)行必要的切削移動(dòng),同時(shí)刀具也在X、Y平面進(jìn)行逐層的走刀。倘若加工刀具在Z為零值的平面內(nèi)進(jìn)行移動(dòng),則刀具沿X、Y平面走刀所形成的輪廓就會(huì)形成40mm的整圓或異形圓;倘若加工刀具已經(jīng)移動(dòng)到了Z等于-5mm的位置,則刀具沿X、Y平面走刀所形成的的輪廓就會(huì)形成30mm的整圓或異形圓。從三個(gè)坐標(biāo)數(shù)值間的關(guān)系的角度出發(fā),也可以這樣理解,當(dāng)Z坐標(biāo)的數(shù)值發(fā)生變化的時(shí)候,整個(gè)圓的直徑也在與Z坐標(biāo)的數(shù)值在形成某種對(duì)應(yīng)數(shù)學(xué)關(guān)系后進(jìn)行相應(yīng)的變化,也可以把它理解成是Z坐標(biāo)數(shù)值與X坐標(biāo)數(shù)值之間的某種內(nèi)在的函數(shù)關(guān)系。當(dāng)主視圖剖面放大后,顯示出的倒角截面X坐標(biāo)數(shù)值和Z坐標(biāo)數(shù)值的數(shù)學(xué)關(guān)系式為Z=X。從上面的分析可以知道,由于倒角的截面X坐標(biāo)值和Z坐標(biāo)值間存在著非常明顯的數(shù)學(xué)關(guān)系,所以在用宏指令進(jìn)行編程時(shí)可分別設(shè)置Z和X為兩個(gè)變量,控制Z值在(0~5mm)之間變化可實(shí)現(xiàn)走刀平面高度的變化即逐層銑削。由倒角截面間存在的數(shù)學(xué)關(guān)系式可得出:在進(jìn)行道具對(duì)倒圓角進(jìn)行逐層銑削過(guò)程中,X的數(shù)值隨Z軸數(shù)值的變化遵從相應(yīng)的數(shù)學(xué)關(guān)系式而發(fā)生變化,進(jìn)而就可以得到不同的走刀輪廓軌跡,我們把這種宏指令編程方法定義為數(shù)學(xué)計(jì)算法。
在工廠的實(shí)際機(jī)加工中,為了使裝配體能夠快速簡(jiǎn)單的進(jìn)行零件的裝配,一般零件都需要在其端部進(jìn)行倒圓角這一項(xiàng)加工工序,倒圓角雖然是很小的一道工序,但是其加工量很大,因此很費(fèi)工時(shí)。為了解決現(xiàn)有技術(shù)在倒圓角方面的不足,本文分析了用FANUC宏指令編程的方法來(lái)實(shí)現(xiàn)倒圓角,從分析來(lái)看,該方法應(yīng)該具有良好的實(shí)際機(jī)加工價(jià)值。