sxc6137 发表于 2011-8-3 22:35:24

请教下铣内圆宏程序???

请教下铣内圆的万能宏程序???

请高手给我一个思路。。。我现在想做成刀补的,至于是用半径补,还是用磨耗刀补?????

若枫 发表于 2011-8-4 09:47:24

给你一个。不知是不是你要的哦,这个是makino系列机器用的。

O9110(CIRCLE FINISH)
G53
IF[[#4*#7*#9]EQ0]GOTO990
IF[#18EQ#0]GOTO990
IF[#26EQ#0]GOTO990
#32=#4001
#31=#4003
M98P9100
G53
IF[#4LE#30]GOTO991
IF[#3NE#0]GOTO10
#3=#4/2
N10IF[#3LE#30]GOTO991
IF[#3GT#4]GOTO992
IF[#19NE#0]GOTO20
#19=#9*3
N20IF[#13EQ1]GOTO30
IF[#18LT#26]GOTO992
IF[#33LT#18]GOTO992
#5=[#33-#18]
#6=ABS[#18-#26]
GOTO40
N30#5=ABS[#18]
#6=ABS[#26]
N40G91G00G17Z-#5
G01Z-#6F[#9/2]
IF[#17EQ1]GOTO50
G41X-[#4-#3]Y#3D#7F#19
G03X-#3Y-#3J-#3F#9
I#4
X#3Y-#3I#3
G01G40X[#4-#3]Y#3F#19
GOTO60
N50G42X-[#4-#3]Y-#3D#7F#19
G02X-#3Y#3J#3F#9
I#4
X#3Y#3I#3
G01G40X[#4-#3]Y-#3F#19
N60G00Z[#5+#6]
GOTO999
N990#3000=140(DATA LACK)
N991#3000=141(OFFSET ERROR)
N992#3000=142(DATA ERROR)
N999G#32G#31F#9M99

空气中的小鱼 发表于 2011-8-5 08:42:50

我这里只是给你一个思路,程序没有调试,没有检查,你看看思路既可

        O30
       #1=-0.5    /*-- 下刀点 --*/
       #2=0.5   /*-- 每层切深 --*/
       #3=20.   /*-- 需加工深度 --*/
       #21=3000./*-- 进给 --*/
       #30=200.   /*-- 圆框半径 --*/
       #31=0.8    /*-- 刀粒R角 --*/
       #100=54.   /*-- 使用坐标 --*/
       #101=1.    /*-- 使用刀号 --*/
       #102=2000. /*-- 刀具转速 --*/
       #108=0.1   /*-- 单边预留量 --*/
       G80 M5
       M9
       G69
       G52 X0. Y0. Z0.
       G91 G28 G0 Z0.
       #100=FI[#100]
       #101=FI[#101]
       T#101 M6
       M1
       G90 G#100 G0 X0. Y0.
       G43 H#101 Z100.
       G43 H#101 Z100.
       M3 S#102
       #109=#+#108
       M#103
       G65 P1000 A#1 B#2 C#3 X-100. Y100. R#31 F#21
       M5
       M9
       G91 G28 G0 Z0.
       G91 G28 G0 Y0.
       M30

      A:下刀点
      B:每层切深
      C:需加工深度
      X:圆框X坐标
      Y:圆框Y坐标
      R:刀粒R角半径
      F:铣削进给量

        O1000 (FORMAT:G65 P1000 A_ B_ C_ X_ Y_ R_ F_)
        IF[#1 EQ #0]GO 3000
        IF[#2 EQ #0]GO 3000
       IF[#3 EQ #0]GO 3000
       IF[#24 EQ #0]GO 3000
       IF[#25 EQ #0]GO 3000
       IF[#18 EQ #0]GO 3000
        IF[#9*1 LE 10]GO 3001
       IF[#5083 EQ 0]GO 3002    /*-- 防止没有刀长补正 --*/
        IF[#4003 NE 90]GO 3000   /*-- 防止非绝对值编程 --*/
        G52 X#24 Y#25
        G90 G0 X0. Y0.
        #4=0.5            /*-- 每螺旋一圈的下刀量 --*/
        IF[#18 LE 0.8]GO 1
        #4=1.2
        IF[#18 LE 2]GO 1
        #4=2.
        N1
        #5=FU[#2/#4]      /*-- 螺旋下刀几次 --*/
        #6=#2/#5            /*-- 每层下刀切深 --*/
        #7=#109-#108-#31-5. /*-- 刀间距 --*/
        #8=#30-#109         
        #10=#1+#2
        #12=FU[#8/#7]      /*-- 需几刀可切削到所要求的直径 --*/
        #13=#8/#12         /*-- 每刀扩大多少 --*/
        IF[#10 GT #3]GO 3000
        IF[#7*2 GT #8]GO 3000
        IF[#8 LE 0.5]GO 3000
        WH[#10 LE #3]DO 1
        G90 G0 X[#7*2] Y0.
        G90 G1 Z-[#10-#2] F100
        #11=1.
        WH[#11 LE #5]DO 2
        G3 X[#7*2] Y0 Z-[#10-#2+#6*#11] I-[#7*2] J0 F[#9*1.2]
        #11=#11+1
        EN 2
        #11=1.
        WH[#11 LE #12]DO 3
        G1 X[#11*#13] Y0. F#9
        G3 X[#11*#13] Y0. I-[#11*#13] J0.
        #11=#11+1
        EN 3
       G0 Z-[#10-0.5]   /*-- 防止将框底划花 --*/
        #10=#10+#2
        IF[#10 LE #3]GO 2
        #10=#3
        N2
        EN 1
        G90 G0 Z70.
        G52 X0. Y0. Z0.
        M99
        N3000 #3000=0 (DATA ERROR)
        N3001 #3000=1 (FEED ERROR)
        N3002 #3000=2 (NOT TOOL LENGTH)

若枫 发表于 2011-8-5 18:01:39

回复 3# wmj820303


   专家就是专家,出手就是不一样。
连打字说话都得很专业。
{:4_98:}

空气中的小鱼 发表于 2011-8-5 20:42:18

回复 4# 若枫
多谢管理加钱,呵呵

sxc6137 发表于 2011-8-6 21:49:17

谢谢两位版主,偌枫版主的看不懂

wendll 发表于 2011-8-7 21:48:45

学习了 。。。。。。。。。。。。。。。

15981871225 发表于 2011-8-15 10:42:01

厉害,学习了

sjjtjs 发表于 2011-8-20 13:47:39

学习了,谢谢你们的奉献

3004 发表于 2011-9-27 16:09:42

高深的做不了只会简单的编。
页: [1] 2 3 4
查看完整版本: 请教下铣内圆宏程序???