初学数控车床,看到编程前都是算好工件长度,按需长夹紧,手动用刀光一刀端面,在刀补键按出刀号输入Z0.0,再车外圆量出直径输入X--。,用同样方式对好其他刀。编程时是不用G50的。但听说一次加工几个工件时是要用子程序,就要用到G50定位。但不知如何用法。望有朋友告诉实例与解读。感谢。
那不是做5个工件就要编5个子程序?G0 X100 Z160
如果加工工件需要用到几把刀,对刀时全都是以第一次加工工件端面为Z0.0的,不用刀补,用了G50 X100 Z200工件零点是不是都变为Z200处了?
例如我加工:G71 U2 R1
G71 pN1 QN2 U0.2
N1 G0 X0 Z0
G2 X5 -Z5 R5
N2 G-Z10
G70 P1 Q2
如何夹一次加工5件?
你是加工5个不同的零件还是相同的零件?如果是不同的零件的话你只能每次重新对刀,并且需要不同的子程序。如果是相同的零件的话一个子程序就可以了。
现在的数车基本上都是绝对编码器的,对刀时都是以机床的机械零点为参考依据的。也就是说你的对刀后的值都应该是负值。你是需要同时对很多刀,但是你的工件零点是不变的。你每把刀相对于工件零点的距离都输在刀补值里了。所以你每次调用刀具(T0101)时,也在同时调用了刀补,基础问题,看下说明书。还有就是G50的用法,我想你是没搞明白,自己看下说明书,多测试几次就应该搞的懂了。
另外,你需要一次加工5个零件的话,上面已经说过了,将工件的完整加工程序编程子程序格式(M99结尾)就可以了。然后按照上边的程序格式再编制一个主程序,调用这个子程序就可以了。
你如果是想按一次启动键,就加工完5个零件的话,主程序可以有几种写法(宏程序计数,或多次调用子程序),我再示范一下(宏计数方法),程序执行之前的准备动作同上。
o1234(主程序)
#100=5(需加工的工件个数)
#1=1(初始的工件数)
WHILE[#1LE#100]DO1(当加工的工件数低于5个时,重复以下程序)
T0101(执行刀补)(循环开始)
G50 X100.Z200.(设定工件零点)
M98P001(调用子程序加工零件)
T0101(更换至初始刀具)
G00 X100. Z180.(重点注意,此处的Z值。200-180=20工件长度)
#1=#1+1(工件数加1)
END1(循环结束)
G50X100.Z80.(恢复加工第一个工件的程序零件)
G0X100.Z200.(回到相对第一个工件零点的换刀点,方便更换工件后直接加工)
M30
我已经说的很详细了,如果你还是不明白,那我也没办法了。考虑到你是初学,估计经验和基础都太薄弱了,平时多练习练习。
非常感谢你,虽然我看不明的。我不仅是初学,而且没机会实操。因为我不是做数控的,我只是钳工,想学数控,手上只有本广数980TA的说明书。我只想搞懂编程,明年去找车工做。宏程序我厂那些车工都不懂。若有什么建议,请多指教,不胜感激。
如果我本身Z轴零点是在工件端面的,如用G50去设置坐标:G50X100Z50的话,是不是说零点就在Z50处了,刀尖要靠近工件就要-Z50了?那刀尖要到工件中心点是如何?是X0还是否100?
追答"如果你本身Z轴零点是在工件端面的,如用G50去设置坐标:G50X100Z50的话,零点是在工件的端面,因为你把G50 Z50设置距离工件端面50的位置啊。如果你设置G50 Z0 那你的原点就距离工件的原点50毫米了。也就是说如果你用G50 Z0 ,那你把刀具移动到哪里,哪里就是工件原点?