预览加载中,请您耐心等待几秒...
1/8
2/8
3/8
4/8
5/8
6/8
7/8
8/8

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

PAGE\*MERGEFORMAT8 HYPERLINK”http://tieba。baidu。com/p/3540655670"\o"第一章宏程序的基础"\t”_blank”第一章宏程序的基础 概述一、宏程序的分类首先我们来讲一下宏程序的分类,A类和B类。首先在数控车系统比较老的时候,我们系统里面有A类宏,A类宏格式为G65格式,现在已经基本淘汰。随着科技发达,系统的升级优化,现在的数控系统大多支持B类宏程序,总体而言,现在B类宏是一个主流发展趋势,所以接下来我们的实例讲解都以B类宏程序为例.二、宏程序的概念简单来理解宏程序是什么?可以这样理解,宏程序就是利用数学公式,函数等计算方式,配合数控系统中的G代码编制出的一种程序,主要加工一些像椭圆,曲线,各类大螺距螺纹和刀具路线相识的一些零件。随着科技发达,像椭圆,抛物线,等线性零件,用软件或则系统自代G代码可以完成加工,而大螺距异型螺纹这类零件,软件还没达到成熟,所以我们学会宏程序在加工中可以起到一个非常大的作用.可以弥补多年来数控车对大螺距螺纹的编程难的一个提高.三、宏程序的特征1。赋值在宏程序中我们通常用法最多的就是变量,比如:#1=1它就是一个变量。我们把这一过程,称为赋值.也就是说,我们把等号后面的数值1,赋值给#1.而现在#1的值就等于1,也可以理解为#1就是一个代号,用来代替数值1.2.变量和应用比如:#1=2(把数值2赋值给#1)#2=1(把数值1赋值给#2)#2=#1(程序从上往下执行,思考一下现在#2的值等于多少?)解:当程序执行第一步的时候#1的值等于2,当执行第二步的时候#2的值等于1,当执行第三步的时候这里要注意了,刚才讲过赋值过程,是等号后面的值赋值给等号前面,所以当#1在第一步赋值以后,#1已经等于2了,所以在执行第三步的时候#2的值应该等于2,不在是第二步的1了.从这里我们可以看出,当程序中有相同的变量#的时候,后面的#号代替前面的#号。比如:#1=2ﻫ#1=3最后结果#1的值因该是等于3的.所以说后面的代替前面的.四、变量的取值范围ﻫ1。局部变量(#1—#33)什么叫局部变量,局部变量就是在局部或则可以理解为在单个程序中有效。断电以后系统自动清零。ﻫ2。公共变量(#100—#199,#500-#999)公共变量和局部变量的区别在于,局部变量是在局部,或则单个程序中有效,而公共变量是指如果一个程序同时拥有主程序和子程序的情况下,在主程序中如果已经赋值,在子程序中可以不用从新赋值,可以共用.而#100—#199和#500—#999的区别在于,前者断电清零,而后者不会清零会一直保存在系统内部。比如:ﻫ#500=TAN[15]ﻫ#500一旦赋值就将保存在系统内部,下次可以直接调用#500使用。3。系统变量(#1000—#17200)系统变量是用于我们机床系统储存一些刀补数据参数等等的东西,我们可以不用管它,不会用的,慎用)总结:一般情况下我们写程序用#1—#33,当有子程序的时候我们用#100-#199。五、宏程序中常用的计算ﻫ1.加法运算例如:#1=2ﻫ#1=#1+3那么#1的值等于2+3=52。减法运算例如:#1=3ﻫ#1=#1-1那么经过计算我们的#1的值等于3—1=23。乘法运算程序中用*号来代替乘法例如:#1=5#2=#1*2那么计算出来#2的值等于5*2=104。除法运算程序中用/号来代替除法运算例如:#1=10ﻫ#1=#1/2那么经过计算#1的值等于10/2=5六、常用三角函数运算1。TAN(正切)例如#1=2*TAN[20]中括号里面是角度2。SIN(正玄)例如#1=3*SIN[3]同上ﻫ3.COS(余玄)例如#1=COS[15]ﻫ4。ASIN、ACOS、ATAN(反三角)ﻫ5。SQRT(数学中的开平方的意思,和数学中根号一样)例如#1=SQRT[9]那么计算出来#1的值等于3七、宏程序的常用符号和含义GT(大于)ﻫGE(大于或等于)LT(小于)ﻫLE(小于或等于)EQ(等于)ﻫNE(不等于)ABS(绝对值)AND(与)OR(或者)八、常用的语法和应用ﻫ1。无条件转移GOTOn(n表示数值)例如:GOTO01此程序段的意思是当程序中执行到这一程序段的时候无条件跳转到程序段中N1的地方,执行N1后面的程序段。ﻫM3S500G99T101M08ﻫGOTO10(当程序执行到这里的时候,直接跳转到N10那个程序段执行M30,跳过了G0那一步,所以这叫做无条件跳转,和我们一般程序中跳段功能一样)ﻫG0X100.Z100.ﻫN10M302。有条件跳转IF[条件表达式]GOTOn例如:IF[#1GT15]GOTO10从这段程序当中,我们这样理解,如果中括号里面的条件满足,那么就执行后面的GOTO跳转语句,如果中括号里面条件不满足,那么不执