宋義林
摘要:在數(shù)控車(chē)床應(yīng)用加工中,我們會(huì)遇到各種各樣的曲線加工特征,而在現(xiàn)今的數(shù)控機(jī)床系統(tǒng)中,通常采用直線和圓弧插補(bǔ),橢圓、拋物線等曲線插補(bǔ)沒(méi)有直接指令應(yīng)用。為了解決這種曲線加工問(wèn)題,如果使用宏程序就非常簡(jiǎn)單了。我院大量使用濟(jì)南第一機(jī)床廠生產(chǎn)的廣州數(shù)控系統(tǒng)(GSK980TD系統(tǒng)),本文介紹了在該系統(tǒng)機(jī)床中如何用宏程序進(jìn)行橢圓零件程序編制加工。
關(guān)鍵詞:橢圓 宏程序 數(shù)控
宏程序與子程序其實(shí)是很相似的,將一組能夠?qū)崿F(xiàn)某種功能的指令,作為子程序的形式存儲(chǔ)在數(shù)控機(jī)床系統(tǒng)中,利用宏程序進(jìn)行調(diào)用指令執(zhí)行該功能。宏程序與一般程序主要區(qū)別,在一般程序中程序字為常量,一段程序僅能描述一個(gè)幾何形狀,缺乏靈活性。在應(yīng)用宏程序進(jìn)行編程時(shí),采用變量的方式進(jìn)行編程,利用宏程序指令對(duì)程序中的變量進(jìn)行賦值、進(jìn)行運(yùn)算處理。由此可見(jiàn)使用宏程序編程,比較靈活,只要是一些有規(guī)律的曲線都可以用宏程序進(jìn)行編程加工。
1 常用的宏程序概述
常用的宏程序主要分為A、B兩類(lèi)。目前廣數(shù)系統(tǒng)數(shù)控車(chē)床,主要使用A類(lèi)宏程序。本文主要以本院廣數(shù)系統(tǒng)的數(shù)控車(chē)床為例,對(duì)橢圓類(lèi)零件的宏程序應(yīng)用進(jìn)行介紹編程加工。
在宏程序中為了使程序更加具有通用性、靈活性在宏程序中設(shè)置了變量,變量用符號(hào)#表示,#后面跟上變量序號(hào)如I(I=1,2,100,200......)。在宏程序中,變量分為三類(lèi),局部變量,公共變量,系統(tǒng)變量。
局部變量是指在宏程序局部位置使用的變量,該變量只在當(dāng)前局部位置有用,在其他位置出現(xiàn)同樣的變量時(shí),應(yīng)該是指不一樣的值,比如在A宏程序調(diào)用B程序時(shí),兩個(gè)程序中都有#1,此時(shí)A中的#1和B中的#1不是同一個(gè)變量。
公共變量是貫穿整個(gè)程序的過(guò)程比如在A宏程序調(diào)用B程序時(shí),兩個(gè)程序中都有#100,此時(shí)A中的#100和B中的#100是同一個(gè)變量。
系統(tǒng)變量是指有固定的用途的變量,他的值決定系統(tǒng)的狀態(tài),系統(tǒng)變量包括刀具偏置,接口輸入與輸出信號(hào)變量及位置信號(hào)變量等
例: X#100 當(dāng)#100=40時(shí),表示X=40,與指令X=40是一樣的
Z-#101 當(dāng)#101=50時(shí),表示Z=-50與指令Z=-50是一樣的
2 宏程序格式與調(diào)用
①宏程序格式和子程序格式相似,都是由程序號(hào)O及4位數(shù)字組成,都是以M99指令作為程序結(jié)束。
②宏程序調(diào)用有兩種形式:一種與子程序調(diào)用相同,利用M98進(jìn)行程序的調(diào)用;第二種是利用指令G65進(jìn)行程序的調(diào)用,如下所示:
G65 P0031 L5 X80.0 Z-20.0;
G65:宏程序調(diào)用指令,該指令應(yīng)該寫(xiě)在每一行句首。
P0031:表示調(diào)用的宏程序號(hào)為O0031。
L5:表示宏程序調(diào)用5次。
X80.0 Z-20.0:引數(shù)表示為有小數(shù)點(diǎn)的正負(fù)數(shù)。
③運(yùn)算、轉(zhuǎn)移指令
常用的指令格式為:
G65 Hm P#i Q#j R#k
M——運(yùn)算命令或轉(zhuǎn)移命令功能
#i——存入運(yùn)算結(jié)果的變量名
#j——進(jìn)行運(yùn)算的變量名1,可以是常數(shù)
#k——進(jìn)行運(yùn)算的變量名2,可以是常數(shù)
該指令表示的意義為:#i=#j+#k;+是指運(yùn)算符號(hào),由Hm指定。
在宏程序中變量值是不含小數(shù)點(diǎn)的數(shù)值,它以系統(tǒng)的最小輸入單位為其值的單位。如當(dāng)#200=20時(shí),X200代表0.02mm。使用宏程序運(yùn)算指令時(shí),如果變量以角度形式進(jìn)行指定,單位是0.001°。在運(yùn)算過(guò)程中有的Q、R在程序中沒(méi)有指定時(shí),系統(tǒng)將其值自動(dòng)作為“0”進(jìn)行運(yùn)算,并且在運(yùn)算、轉(zhuǎn)移等指令中的H、P、Q、R都要寫(xiě)在G65指令之后。所以,在程序編制時(shí)G65前的地址符只能有O、N。
3 宏程序編制
用宏程序進(jìn)行非圓曲線加工時(shí),將曲線細(xì)分成許多直線段用直線進(jìn)行擬合,其實(shí)實(shí)際加工完成的曲線是由許多直線段線段構(gòu)成的。如圖所示,橢圓方程為Z=-X2/16,以Z為自變量,每次增量為-0.1mm。X為應(yīng)變量(注意公式中的X為半徑量),直徑量x=2■=■。
■
運(yùn)用宏程序大多用于精加工,所以加工余量不宜太大,在精加工之前要去除大量余量的余量,粗加工可用圓弧擬合的方法進(jìn)行橢圓加工,加工程序不做過(guò)多解釋。
編寫(xiě)該精加工宏程序,采用如下變量進(jìn)行運(yùn)算。
#101:曲線上各點(diǎn)的Z坐標(biāo);
#102: 曲線上各點(diǎn)的X坐標(biāo);
曲線加工程序如下:
O0002; (主程序)
G98;
T0202; (轉(zhuǎn)菱形刀)
M03 S1500;
G00 X-1.0 Z3.0; (宏程序起始點(diǎn))
M98 P103; (調(diào)用精加工宏程序)
G01 X40.0;
G00 X150.0 Z150.0;
M30;
O0103; (精加工程序)
G65 H01 P#101 Q0; (Z坐標(biāo)賦初值)
G65 H01 P#102 Q0; (X坐標(biāo)賦初值)
N100 G01 X#102 Z#101 F100;
G65 H03 P#101 Q#101 R100;(Z坐標(biāo)每次減0.1mm)
G65 H04 P#100 Q#101 R-64000;(注意R值為64000,而不能用64)
G65 H21 P#102 Q#100; (X坐標(biāo)值)
G65 H86 P100 Q#102 R32000;(如果X坐標(biāo)小于32mm,則返回N100)
M99;
編寫(xiě)A類(lèi)宏程序時(shí),當(dāng)進(jìn)行乘、除運(yùn)算時(shí),應(yīng)注意算式中各因子的數(shù)值單位。
4 結(jié)束語(yǔ)
通過(guò)對(duì)橢圓輪廓的加工,發(fā)現(xiàn)A類(lèi)宏程序指令的使用比其他指令相對(duì)難,但也沒(méi)有想象中復(fù)雜,任何事物都有其自身規(guī)律,只要掌握其規(guī)律,問(wèn)題就迎刃而解了。
參考文獻(xiàn):
[1]沈建峰數(shù)控車(chē)工(高級(jí))[M].機(jī)械工業(yè)出版社,2006.9.
[2]GSK98TD數(shù)控系統(tǒng)使用說(shuō)明書(shū).
[3]馬漢偉,張紹杰.用宏程序在數(shù)控車(chē)床上加工大螺距梯形螺紋[J].科教文匯(下旬刊),2010(03).