主程序与子程序不在同一程序模块中_调用宏程序编写的子程序加工圆周等分孔...

宏程序作为机床加工程序的一种编写方法,其优点众多;今天我们来看一个简单的例子,调用宏程序编写的子程序加工孔的方法。

例:用宏程序和子程序功能顺序加工圆周等分孔。设圆心在O点,它在机床坐标系中的坐标为(X0,Y0),在半径为r的圆周上均匀地钻几个等分孔,起始角度为α,孔数为n。以零件上表面为Z向零点。见下图。

12b0fc9a81ce9cecdf9997fd4c660c4f.gif

等分孔计算方法

使用以下保持型变量:

#502:半径r;

#503:起始角度a;

#504:孔数n,当n>0时,按逆时针方向加工,当n<0时,按顺时针方向加工;

#505:孔底Z坐标值;

#506:R平面Z坐标值;

#507:F进给量。

使用以下变量进行操作运算:

#100:表示第i步钻第i孔的记数器;

#101:记数器的最终值(为n 的绝对值);

#102:第i个孔的角度位置qi的值;

#103:第i个孔的X坐标值;

#104:第i个孔的Y坐标值;

用用户宏程序编制的钻孔子程序如下:

O9010

N110 G65 H01 P#100 Q0 //#100 = 0

N120 G65 H22 P#101 Q#504 //#101 = │#504│

N130 G65 H04 P#102 Q#100 R360 //#102 = #100 ×360o

N140 G65 H05 P#102 Q#102 R#504 //#102 = #102 / #504

N150 G65 H02 P#102 Q#503 R#102 //#102 = #503 + #102当前孔角度位置qi = a + ( 360o × i) / n

N160 G65 H32 P#103 Q#502 R#102 //#103 = #502 ×COS(#102)当前孔的 X坐标

N170 G65 H31 P#104 Q#502 R#102 //#104 = #502 ×SIN(#102) 当前孔的Y坐标

N180 G90 G00 X#103 Y#104 //定位到当前孔(返回开始平面)

N190 G00 Z#506 //快速退到R平面

N200 G01 Z#505 F#507 //加工当前孔

N210 G00 Z#506 //快速退到R平面

N220 G65 H02 P#100 Q#100 R1 //#100 = #100+1孔计数

N230 G65 H84 P-130 Q#100 R#101 //当#100 < #101时,向上返回到130程序段

N240 M99 //子程序结束

调用上述子程序的主程序如下:

O0010

N10 G54 G90 G00 X0 Y0 Z20 //进入加工坐标系

N20 M98 P9010 //调用钻孔子程序,加工圆周等分孔

N30 Z20 //抬刀

N40 G00 G90 X0 Y0 //返回加工坐标系零点

N50 M30 程序结束

设置G54:X=-400,Y=-100,Z=-50。

变量#500~#507可在程序中赋值,也可由MDI方式设定。

怎么样,屏幕前的你是否也觉得宏程序很好用,其适用于一类零件的加工,只需要更改参数就可以实现同一类零件不同尺寸的加工程序;更多精彩内容,关注我,每天为您带来一点点数控宏程序知识。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值