1 宏程序簡介
在編程工作中,我們經(jīng)常把能完成某一功能的一系列指令像子程序那樣存人存儲(chǔ)器,用一個(gè)總指令來代表它們,使用時(shí)只需給出這個(gè)總指令就能執(zhí)行其功能所存人的這一系列指令稱作用戶宏程序本體,簡稱宏程序。這個(gè)總指令稱作用戶宏程序調(diào)用指令。在編程時(shí),編程員只要記住宏指令而不必記住宏程序。
用戶宏程序與普通程序的區(qū)別在于:在用戶宏程序本體中,能使用變量,可以給變量賦值,變量間可以運(yùn)算,程序可以跳轉(zhuǎn);而普通程序中,只能指定常量,常量之間不能運(yùn)算,程序只能順序執(zhí)行,不能跳轉(zhuǎn),因此功能是固定的,不能變化。用戶宏功能是用戶提高數(shù)控機(jī)床性能的一種特殊功能,在相類似工件的加工中巧用宏程序?qū)⑵鸬绞掳牍Ρ兜男Ч?/font>
宏程序本體既可以由機(jī)床生產(chǎn)廠提供,也可以由機(jī)床用戶自己編制。使用時(shí),先將用戶宏主體像子程序一樣存人到內(nèi)存里,然后用子程序調(diào)用指令調(diào)用。
2 用戶宏程序本體的編寫格式
用戶宏程序本體的編寫格式與子程序的格式相同。
在用戶宏程序本體中,可以使用普通的NC指令,采用變量的NC指令、運(yùn)算指令和控制指令。格式如下:
O x x xx;
# 26= # 4+ # 18 x Cos[# 1〕;
G90 GOOX #26;
……
……
IF[#22 GE # 9〕GOTO 9;
……
N 9 M 99
變量可以用于宏程序本體,可以指定運(yùn)算和控制指令。用宏程序調(diào)用命令賦予變量實(shí)際值。
3 應(yīng)用實(shí)例
3.1 圓弧均布孔位計(jì)算宏程序的編程
工程上經(jīng)常使用圓弧均布的聯(lián)接孔,而這些孔在圖樣上往往是不給出每點(diǎn)的坐標(biāo),在編程時(shí)需要逐點(diǎn)計(jì)算,因而增加了編程員的工作量。圓弧孔可用極坐標(biāo)來描述,若圓心不在坐標(biāo)原點(diǎn)上,編程不太方便。現(xiàn)在有的系統(tǒng)提供了圓弧均布孔位計(jì)算宏指令,可供直接使用。這里給出扇形面上的圓弧孔的宏程序的編制方法。
(1)宏程序調(diào)用指令
G6 5 P9010 I-J-R-A-B-H-;
式中:I,J-圓弧中心坐標(biāo),不賦值為坐標(biāo)原點(diǎn);
R- 圓弧半徑;
A- 第1孔的角度值,省略時(shí)為0;
B- 孔間角,當(dāng)B>0。時(shí)為逆時(shí)針方向加工,B<0。時(shí)為順時(shí)針方向加工。當(dāng)B省略時(shí)為整圓周均布孔,此時(shí)的加工方向?yàn)槟鏁r(shí)針;
H - 孔數(shù),包括第1孔;
可在參數(shù)NO.2 20中設(shè)置70(自定),即G 70=G65 P 9010,
(2) 宏程序本體
O 9010(圓弧均布孔)
IF[#11 EQ#0〕GOTO 9;孔數(shù)不賦值報(bào)警
IF[#18 EQ#0]GOTO 9;圓弧半徑不賦值報(bào)警
IF〔#2 NE#0」GOTO 2;
#2二360.。/#11; 圓弧均布孔間角
N2#33= #4003; 保存03組G代碼
#3之。;孔加工計(jì)數(shù)初值
WHILE[#3 LT#1〕加1;
G90X[#4+# 18*COs[#1+# 3*#2丑〕;
X孔 位 坐 標(biāo)
Y [# 5+# 18二SIN[#1+# 3二#2〕];
Y孔 位 坐 標(biāo)
# 3二# 3+ 1;
ENDI ;
GOTO 10;
N9# 3000= 1;
N10 G#30 M99;
(3)編程舉例
... ...
G81...
... ...
# 100 = 32.0/7; 孔間角
G 70 A 41.2 B 96.0 H 2 4 108.0; 2Xφ8孔位
... ...
G 70 A 78.0 B- # 100 H 8 R 108.0; 左側(cè)8Xφ4孔位
G 70 A 102.0 B # 100 H 8 R 108.0; 右側(cè)8Xφ4孔位
實(shí)際應(yīng)用中,還經(jīng)常會(huì)遇到各種各樣的橢圓形加工特征。在現(xiàn)今的數(shù)控系統(tǒng)中,無論硬件數(shù)控系統(tǒng),還是軟件數(shù)控系統(tǒng),其插補(bǔ)的基本原理是相同的,只是實(shí)現(xiàn)插補(bǔ)運(yùn)算的方法有所區(qū)別。常見的是直線插補(bǔ)和圓弧擂補(bǔ),沒有橢圓插補(bǔ),手工常規(guī)編程無法編制出橢圓加工程序,常需要用電腦逐一編程,但這有時(shí)受設(shè)備和條件的限制。這時(shí)可以采用擬合計(jì)算,用宏程序方式,手工編程即可實(shí)現(xiàn),簡捷高效,并且不受條件的限制。加 工 如 圖3所示的橢圓形的半球曲面,刀具為R8的球銑刀。利用橢圓的參數(shù)方程和圓的參數(shù)方程來編寫宏程序。
橢圓的參數(shù)方程為 X=A*COS&
Z=B*SIN&
其中,A 為橢圓的長軸,B為橢圓的短軸。
編制參考宏程序如下:
%0012
#1=0
#2=20
#3=30
#4=1
#5=90
WHILE #5 GE #1 DO1
#6=#3*COS[#5*PI/180]+4
#7=#2*SIN[#5*PI/180]
G01X[#6]F800
Z[#7]
#8=360
#9=0
WHILE #9 LE #8 DO2
#10=#6*COS[#9*PI/180]
#11=#6*SIN[#9*PI/180]*2/3
G01X[#10]Y[#11]F800
#9=#9+1 (計(jì)數(shù)器)
END 1
#5=#5-#4 (計(jì)數(shù)器)
END2
M99
在上例中可看出,角度每次增加的大小和最后工件的加工表面質(zhì)量有較大關(guān)系,即記數(shù)器的每次變化量與加工的表面質(zhì)量和效率有直接關(guān)系。希望讀者在實(shí)際應(yīng)用中注意。
4 結(jié)束語
在編制宏程序時(shí),要牢記變量的種類及特性,不可亂用。因?yàn)榫植孔兞俊⑾到y(tǒng)變量、公共變量的用途和性質(zhì)各不相同,局部變量#1-#33是在宏程序中局部使用的變量,公共變量#100- # 149, # 500- # 531是通過主程序及其調(diào)出的子程序通用的變量。公共變量的用途,在系統(tǒng)中沒有規(guī)定,用戶可以自由使用。系統(tǒng)變量是在系統(tǒng)中用途固定的變量,如#200。一#2932為刀具補(bǔ)償量,# 3001, # 3002為時(shí)鐘等。
業(yè)務(wù)咨詢:932174181 媒體合作:2279387437 24小時(shí)服務(wù)熱線:15136468001 盤古機(jī)械網(wǎng) - 全面、科學(xué)的機(jī)械行業(yè)免費(fèi)發(fā)布信息網(wǎng)站 Copyright 2017 PGJXO.COM 豫ICP備12019803號(hào)