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