(宏程序编程入门讲解)(宏程序编程入门讲解视频)

(宏程序编程入门讲解)(宏程序编程入门讲解视频)

宏程序基础知识 

针对目前很多同行兄弟对宏程序不了解,本人按照自己的经验,循序渐进的引导大家去揭开宏程序的真实面目。当然,想通过我这篇文章完全掌握宏那是不可能的,因为这需要你实际去多应用,才可能掌握的。所以如果你想一步到位,那可以关闭本文了,本文没有这功效,如果你还有一点想法,那就开始吧,一步一步告诉你怎么样去编辑和应用宏程序: 

1.相对编程 

O0001 

G0 X0 Z0 

G1 U1 W1 G98 F100 

M30 

定位到X0 Z0位置后,X/Z轴均相对插补1,终点坐标为X1 Z1,程序结束。 

2.相对编程重复执行同样的程序段 

O0002 

G0 X0 Z0 

G1 U1 W1 G98 F100 

U1 W1 

M30 

定位到X0 Z0位置后,X/Z轴相对插补1后,再相对插补1,终点坐标为X2 Z2,程序结束。 

3.调用子程序重复执行同样的程序段 

O0003(程序1) 

G0 X0 Z0 

N10 G1 U1 W1 G98 F100 

M99 P10 

M30 

定位到X0 Z0位置后,X/Z轴相对插补1后,下一段为强制返回N10段,所以再相对插补1,然后又强制返回,所以本程序将一直插补,不能结束。 

O0004(程序2) 

G0 X0 Z0 

N10 G1 U1 W1 G98 F100 

IF #5041=10 GOTO 20(当X轴坐标=20,跳到N20段,如果不等于20,顺序执行) 

M99 P10 

N20 M30 

本程序与O0003程序的区别是在M99强制返回前加了一段判断语句,该判断句的意思是如果#5041=10(#5041是一个系统宏变量,表示当前X轴坐标,不同系统处理可能不同,这里仅做示例),则跳到N20段执行,如果不等于10,则顺序执行。从程序中可以看出:第一次插补后,X轴坐标为1,不符合该判断条件,所以顺序执行下一段M99 P10,此段又将程序返回到插补段执行,执行完为X2,也不符合条件,就这样重复执行插补,直到X轴插到10,则符合条件,跳到N20段执行,结束程序,终点坐标为X10 Z10。 

4.利用宏变量计算后,再执行同样的程序段 

O0005(程序1) 

G0 X0 Z0 

#1=0 

#2=0 

#11=1 

#12=1 

N5 #1=#1+#11 

#2=#2+#12 

N10 G1 X#1 Z#2 G98 F100 

IF #1<10 GOTO 5(当X轴坐标<10,跳回到N5段,重新计算后再运行,如果大于等于10,顺序执行) 

N20 M30 

本程序引入了更多的变量,但执行后的结果与O0004一样,与O0004

程序区别如下: 

1.本程序插补采用绝对指令(如X),O0004程序采用相对指令(如U); 

2.本程序插补坐标是变量(如#1),O0004程序插补坐标是固定值(如1) 

从这两点可以看出:当宏变量的变化值为一固定值时,也可采用相对编程来执行。

但这种情况很少,采用宏计算的值,一般都是符合某个规律变化,但数值不会简单的恒加或恒减。

本程序相关执行解释如下: 

1.定位到切削起点X0 Z0; 

2.对需用来计算的宏变量定义及赋初始值,如把#1定义为X轴坐标,并赋初始值为0;把#11定义为X轴每次进给的增加量,与O0004程序中指定的U1自增性质相同;  

3.计算当前需进给到的位置,如#1=#1+#11,执行后程序指定的X坐标变为1,所以执行下面G1段时,X轴可插补到1的位置;  

4.用计算后的结果进行插补,如本次运算后,两轴插补到X1 Z1;  

5.判断插补后位置是否到达所需位置,如本例采用X轴终点坐标进行判断,本次X轴终点坐标<10,满足条件,所以返回到N5段执行。N5段为计算X轴位置,上一次计算后,#1=1了,所以再次计算时,因本身为1,再加上#11,则#1变为2了,所以下面执行插补,X轴将插补到2的位置,插补完后进行判断,就这样循环下去,直到X轴插补到10,此时判断条件也不满足,所以按顺序执行后面的程序。


O0006(程序2) 

G0 X0 Z0 

#1=0 

#2=0 

#11=1 

#12=1 

N10 G1 X#1 Z#2 G98 F100 

#1=#1+#11 

#2=#2+#12 

IF #1≤10 GOTO 5(当X轴坐标≤10,跳回到N5段,重新计算后再运行,如果大于10,顺序执行)

5.宏程序实际应用 

采用宏程序加工如下圆弧:

(宏程序编程入门讲解)(宏程序编程入门讲解视频)

如本图中,坐标原点在工件右端面中心,圆弧起点坐标为X40 Z0,圆弧终点坐标为X140 Z-50,圆弧半径为R50。如采用宏程序车削此圆弧,需先定义几个宏变量: 

#1:圆弧X轴上任意点的半径值,乘以2再加上X40,即为圆弧上当前点X轴位置。 

#2:圆弧Z轴上的位置; 

#3:圆弧半径,R50; 

#4:该值在编程时不用,但有利于我们计算。假设我们知道#1的长度,那么通过勾股定理(即在直角三角形中,两直角边的平方等于斜边的平方,还不清楚请参考初中几何书),就可以算出#4的长度,算出#4的长度后,就能得出#2的长度,即得到当前点Z轴的坐标。因此我们可以对#1进行赋值,根据勾股定理计算出#2,这样可得出圆弧上任意的坐标,再进行插补即可得出圆弧

程序如下: 

G0 X0 Z2 

G1 Z0 G98 F80 

X40(定位到圆弧起点) 

#1=0(赋圆弧加工起点为0) 

#3=50(将圆弧半径R50赋值给#3) 

#10=0.005(设置X轴每次增加的尺寸,如定位到起点后,第一刀车到40.01,第二刀车到40.02,以此类推,这样就可以将自增量的半径值设为0.005)

N10 #1=#1+#10(计算出当前圆弧半径上的增量,即从0慢慢变化到50) 

#11=#1*#1(将该值平方,用于计算#4)

#12=#3*#3(半径开平方,用于计算#4) 

#4=SQRT(#11-#12)(计算出#4的长度) 

#2=#4-#3(算出当前点Z轴的坐标) 

#13=40+#1*2(算出当前点X轴坐标,即为圆弧上的增量乘以2,再加起点40) 

G1 X#13 Z#2(进行圆弧插补,这里采用直线方式。当线段越多,则轨迹越接近圆弧,当然运行效率越慢,同时也可能影响工件光洁度,如果线段太少,则轨迹与圆弧相差可能太大,所以需谨慎设置#10,即自增量)

IF #13<140 GOTO 10(这里以X轴终点坐标判断,当X轴插补到140时,说明圆弧插补完成,可退出循环执行后面程序。当然,也可以用其它量进行判断,如#4、#2等)

G0 X100 Z100(加工完毕,退出工件)

声明:我要去上班所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者亦玖教育咨询服务部所有,原文出处。若您的权利被侵害,请联系删除。

本文标题:(宏程序编程入门讲解)(宏程序编程入门讲解视频)
本文链接:https://www.51qsb.cn/article/m8znj.html

(0)
打赏微信扫一扫微信扫一扫QQ扫一扫QQ扫一扫
上一篇2023-03-18
下一篇2023-03-20

你可能还想知道

发表回复

登录后才能评论