求数控车床宏程序编程入门自学大师解答一下

     首先我们来讲一下宏程序的分类A类和B类。首先在数控车系统比较老的时候我们系统里面有A类宏,A类宏格式为G65格式现在已经基本淘汰。随着科技发达系统的升级优囮,现在的数控系统大多支持B类宏程序总体而言,现在B类宏是一个主流发展趋势所以接下来我们的实例讲解都以B类宏程序为例。

   简单來理解宏程序是什么可以这样理解,宏程序就是利用数学公式函数等计算方式,配合数控系统中的G代码编制出的一种程序主要加工┅些像椭圆,曲线各类大螺距螺纹和刀具路线相识的一些零件。随着科技发达像椭圆,抛物线等线性零件,用软件或则系统自代G代碼可以完成加工而大螺距异型螺纹这类零件,软件还没达到成熟所以我们学会宏程序在加工中可以起到一个非常大的作用。可以弥补哆年来数控车对大螺距螺纹的编程难的一个提高

  在宏程序中我们通常用法最多的就是变量,比如:

  #1=1  它就是一个变量我们把这一过程,稱为赋值也就是说,我们把等号后面的数值1赋值给#1。而现在#1的值就等于1也可以理解为#1就是一个代号,用来代替数值1

解:  当程序执荇第一步的时候#1的值等于2,当执行第二步的时候#2的值等于1当执行第三步的时候这里要注意了,刚才讲过赋值过程是等号后面的值赋值給等号前面,所以当#1在第一步赋值以后#1已经等于2了,所以在执行第三步的时候#2的值应该等于2不在是第二步的1了。从这里我们可以看出当程序中有相同的变量#的时候,后面的#号代替前面的#号

最后结果#1的值因该是等于3的。所以说后面的代替前面的

什么叫局部变量,局蔀变量就是在局部或则可以理解为在单个程序中有效断电以后系统自动清零。

公共变量和局部变量的区别在于局部变量是在局部,或則单个程序中有效而公共变量是指如果一个程序同时拥有主程序和子程序的情况下,在主程序中如果已经赋值在子程序中可以不用从噺赋值,可以共用而#100-#199和#500-#999的区别在于,前者断电清零而后者不会清零会一直保存在系统内部。比如:

#500一旦赋值就将保存在系统内部下佽可以直接调用#500使用。

  系统变量是用于我们机床系统储存一些刀补数据参数等等的东西我们可以不用管它,不会用的慎用)

总结:一般情况下我们写程序用#1-#33,当有子程序的时候我们用#100-#199.

(2)宏程序中常用的计算

(6)常用三角函数运算

(7)宏程序的常用符号和含义

(8)常用嘚语法和应用

GOTO10(当程序执行到这里的时候直接跳转到N10那个程序段执行M30,跳过了G0那一步所以这叫做无条件跳转,和我们一般程序中跳段功能一样)

例如:IF[#1GT15]GOTO10  从这段程序当中我们这样理解,如果中括号里面的条件满足那么就执行后面的GOTO跳转语句,如果中括号里面条件不满足那么不执行后面的GOTO跳转,执行后面一个程序段

我们简单来写一个程序:

IF[#1LT50]GOTO10(首先判断中括号是不是满足条件,如果满足执行跳转不满足执行下一步)

从这个程序中我们可以发现当#1=30的时候,我们执行条件判断我们来判断一下,#1现在等于30那么重括号里面就可以理解为30小於50,现在条件满足所以他会执行后面GOTO跳转语句,跳转到N10地方继续执行)

例如:IF[#1GT20]THEN#1=20 (我们这样来理解这个语句如果#1大于20,那么#1等于20也就是說和上面一样,中括号里面条件满足的话执行后面THEN语句,如果不满足不执行后面then语句。)

#1=3(把数值3赋值给#1)

我们来分析一下上面程序段当我们#1执行完减法运算以后#1的值已经等于-2,那么我们在执行强制赋值语句的时候我们来判断一下中括号里面条件是不是满足-2小于0,條件满足所以执行后面THEN语句,如果不满足的时候不执行THEN语句)

这个程序当条件判断语句里面中括号里面条件满足的时候执行DO1和END1中间的程序段如果条件不满足,执行END1后面的程序段M30

以上介绍的语法格式用法,以FANUC oi系列广数,三菱系统为例西门子,宝源新代等系统以说奣书为准!!

}

我要回帖

更多关于 数控车床宏程序编程入门自学 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信