|
宏程序之扩展应用
最近逛的论坛都在讨论宏程序,那我也发一个自己编写的宏,功能简单,应用方便。言归正传,这个子程序O1920有三个功能,在主程序里调用时用变量A1,A2,A3来指定这三个功能。
G65P1920X20Y20A_W70Z-10D0Q-2R1.5F150
X,Y是第一个点的坐标A1 是X方向上的U型槽,W是第二个点的X值A2 是Y方向上的U型槽,W是第二个点的Y值A3是铣孔的程序Z 是最终加工深度D 是开始加工的深度,类似于G83里的RQ 是每刀加工的深度,是个负值,类似于G83的QR 是半径差,是圆弧变径与刀具半径只差,为正值F 是进给速度详情见下图的两个U型槽和一个圆,刀具就以直径是8的立铣刀,需要加工的深度是10mm,每刀吃2mm(X方向的U型槽第一个点选用左边的,Y方向的U型槽第一个点选用上面的5.5-4=1.5,6.5-4=2.5,12-4=8)
G30G91Z0
G54G90G17G49G00X0.Y0.
S1500M03
G43H01Z10M08
G65P1920X20Y20A1W70Z-10D0Q-2R1.5F150(X-X-Y-R)
G65P1920X20Y90A2W50Z-10D0Q-2R2.5F150(X-Y-Y-R)
G65P1920X70Y50A3Z-10D0Q-2R8F150(X-Y-R)
G0Z50M09
G30G91Z0M0
M30
O1920
IF[#1EQ1]GOTO100(X-X-Y-R)
IF[#1EQ2]GOTO200(X-Y-Y-R)
IF[#1EQ3]GOTO300(X-Y-R)
M99
N100 (X-X-Y-R)
#100=#24(X)
#101=#25(Y)
#102=#23(W)
#103=#7(D)
#104=#17(Q)
#105=#26(Z)
#106=#18(R)
#107=#9(F)
#108=#100-#106
#109=#100+#106
G00X#100Y#101
N110
#103=#103+#104
G01Z#103F#107
G01Y#108
G01X#102
G03X#102Y#109R#106
G01X#100
G03X#100Y#108R#106
G01Y#101
/MO1
IF[#103EQ#105]GOTO120
GOTO110
N120
G01Z10F1500
M99
N200 (X-Y-Y-R)
#100=#24(X)
#101=#25(Y)
#102=#23(W)
#103=#7(D)
#104=#17(Q)
#105=#26(Z)
#106=#18(R)
#107=#9(F)
#108=#100-#106
#109=#100+#106
G00X#100Y#101
N210
#103=#103+#104
G01Z#103F#107
G01X#108
G01Y#102
G03X#109Y#102R#106
G01Y#101
G03X#108Y#101R#106
G01X#100
/MO1
IF[#103EQ#105]GOTO220
GOTO210
N220
G01Z10F1500
M99
N300 (X-Y-R)
#100=#24(X)
#101=#25(Y)
#103=#7(D)
#104=#17(Q)
#105=#26(Z)
#106=#18(R)
#107=#9(F)
#108=#100+#106
G00X#100Y#101
N310
#103=#103+#104
G01Z#103F#107
G01X#108
G03I-#106
G01X#100
/MO1
IF[#103EQ#105]GOTO320
GOTO310
N320
G01Z10F1500
M99
|
|