经常有朋友问我,如何学数控宏编程?
复杂的事情简单化,简单的事情流程化
比如面对一张产品图,尤其是复杂的,一看都懵
其实世上无难事,只要肯分解。
工艺员主要就是干这事情的,把产品图分解成工序图,在细分每序如何装夹,用什么刀具,量具等等都会确定下来,从而形成工艺文件。
有了这个工艺文件,组织生产加工零件就容易多了,照着流程做就行了。
这个流程可以大幅度减少我犯错的概率,让我把做事情的难度降低好多倍。
知道流程化的威力后,回到数控编程上面来,清风传授大家一个两步编写宏程序的流程。
两步教你编写宏程序
第一步:设定确定变量关系
在编写宏程序前,不知道从哪儿下手,先别管其它的,复杂的事情简单化,先从清风告诉的第一步开始,拿出笔和纸,设定变量,并找出各变量之间的关系,列出变量之间的数学算式。
第二步:套用宏案例
能不能编写出宏程序,就看你心中有没有学到手的宏案例,然后套用案例即可。采用变量来控制铣削的深度,编程时只需要编写一层的程序,从而加工出需要的深度。如下图:
掌握了分层铣的这个案例,现在要编写一个类似程序,设置变量等然后套用邹军给你提供的案例即可。
比如上图分层铣的例子
第一步:设定确定变量关系
铣一圈,刀具Z向下降一定深度,然后在铣一圈,Z向下降再下降一定深度, 依次类推至到铣到加工深度为止。
如果我用一个变量来代替铣削深度,比如#1,设置每层下1mm,那么#1=#1-1(让变量#1自运算,每运算一次#1的数值减少1),开始执行的时候给#1赋值为0,作为运算起点。
第一步设定确定的变量关系如下:
#1=0
#1=#1-1
第二步:套用宏案例
如下是分层铣的主要结构
WHILE [ ]DO1
#1=#1-1
……
……
加工程序
……
……
END1
第一步,设置了#1代表铣削深度,假如零件总深-10,(总深也可以设置个变量)让#1与总深做比较,即#1LE-10
当中括号中的表达式成立,就依次执行WHILE到END1之间的程序段。也就实现了分层加工。
在比如下面这个案例:在数铣上加工半径为SR10的球面。选取D12的铣刀
第一步:设定确定变量关系
采用G02顺铣每铣一圈,刀具下降一定深度再铣一圈,依次类推至到铣到加工深度为止(也就是软件编程中的等高环绕加工方法)
如果我用一个变量来代替铣削深度,比如#1,设置每层下0.1mm,那么#1=#1+0.1(让变量#1自运算,每运算一次#1的数值增加0.1)
#1=_____初始变量赋值
#1=#1+0.1 每层切0.1深
有了我设定的初始下刀深度#1,可以推算出Z方向的递减数值,设为#3,可以推算出#3=10-#1(如下图)比如初始下刀深度为1mm即 #1=1 ,那么#3的值9。
知道了#3,那么球面Z坐标对应的X坐标满足#2²+#3²=10²这个数学关系式
可以推算出:
FANUC系统开平方根为SQRT 所以:
第二步:套用宏案例
如套用你掌握的分层铣案例
WHILE [ ]DO1
#1=#1-1
……
……
加工程序
……
……
END1
开始编程
O0001
G40G49G80G90
G0X-18Y0(下刀点)
Z5M08
#1=0(刀具Z向初始下刀0.5mm)
WHILE[#1LE10]DO1(当下刀深度小于等于10时,执行DO到END之间的程序
#3=10-#1(给#3赋值,Z方向递减)
#2=SQRT[100-#3*#3](计算X方向数值)
#1=#1+0.1(每层切0.1深)
G1Z-#1F100(Z方向的进刀)
G41G1X-#2F120D1(X方向定位加工采用左刀补)
G2I#2(顺时针铣削)
G1G40X-18Y0(取消刀补)
END1
G1Z5.
M30
程序仿真:
联系客服