邹军:数控程序的调用(三)

一、什么情况下用程序的调用

经常会遇到(加工中心)工作台面上安装好几件工件,或数控车床装夹一根长的棒料,一次加工好几件工件……
编程的时候只需要编写一件工件的程序作为子程序,然后调用这个子程序,就可以完成一次装夹加工好几件工件。
二,数控程序调用的种类:

调用子程序常用下面4种类型
1, M98调用
2,G65调用
3,G66调用
4,定义G指令调用
5,定义M指令调用
三,如何调用

今天分享2个
1, M98调用
2,G65调用
1, 使用M98调用子程序
比如下面两个程序例子:
两程序保存在机床中,其中O0001为主程序,O0002为子程序。
程序运行顺序是:
运行O0001程序后,当运行至M98P2程序段,机床就会跳转至O0002程序
从O0002程序开头由上往下依次运行程序,至到M99就跳转至主程序O0001 运行M98P2后面程序段。
程序的调用方法:
格式一:
M98P_ _ _ _ L_
P_后面不超过四位的数字为程序号
(如M98P1 ,M98P0002 M98P2000L2)
L_为重复调用次数(省略时为调用1次)
格式二:
M98P_ _ _ _ _ _ _
P_后面最多跟8为数的数字,如后面的数字不超过4位,表示调用程序一次
如M98P2322 调用O2322程序一次。
如超过4位数,后4位为调用程序名,其余的为调用次数。
比如M98P00052322调用O2322程序5次。
2, 使用G65调用子程序
G65属于宏程序调用
格式:G65P子程序名  地址名

先看看P ,其实G65和M98子程序调用很相似。P后面跟着子程序的名字。
比如说现在有个子程序O1234,那么在主程序使用G65调用时可以写成G65 P1234(那个大写字母O不需要)
接下来就该谈谈非常关键的地址名了。
在宏程序中变量分为三大类(局部变量,公共变量,系统变量)
其中#1~#26为局部变量,局部变量和地址名A,B,C……Z对应的关系如下表。
地址名说白了就是给其对应的变量传递数据的
比如说上表中的字母A对应#1  ,若A10 那么就相当于把10这个数据传递给了变量#1,此时#1=10 ;同理若B20 ,那么#2=20  若Z-26, 那么#26=-26。
这么讲有些空洞,我举一个简单例子给大家一些启发,比如下面零件
铣M20x1.5外螺纹
我从#1~#26之间,任意设置了几个局部变量#1、#26、#7、#17、#11分别代表:
#1(A)代表毛坯尺寸;
#26 (Z)  代表螺纹深度;
#7 (D) 代表螺纹铣刀直径;
#17 (Q) 代表下刀点的初始Z值
#11 (H)代表螺距
铣螺纹程序:
把上面程序作为子程序,使用G65调用子程序如下:
当我使用G65调用O2222号程序时,字母 A、 D、Z、Q、H后面的数据就传递给了对应变量。
此时:
(#1) A代表毛坯尺寸;
(#26) Z代表螺纹深度;
(#7) D代表螺纹铣刀直径;
(#17) Q代表下刀点的初始Z值
(#11)H代表螺距
如果加工个类似的零件,我们只需要编写个主程序调用子程序即可。
比如们M33x2.0外螺纹,分两刀铣
程序调用如下:
(0)

相关推荐