APP下载

浅谈宏程序在数车中的编程方法

2013-11-22于定文

商品与质量·消费研究 2013年9期
关键词:宏程序数控技术椭圆

于定文

【摘 要】随着制造工业的发展,数控技术的应用也越来越广泛,更多公司开始开发高效的CNC程序,虽然现在很多复杂的零件采用CAD/CAM软件自动编程,但是由于各种原因,它们没有也不能代替宏编程。宏程序对专门的需求常有专门的解决办法。本文针对椭圆在数控车床上的加工谈谈宏程序的编程方法。

【关键词】数控技术;宏程序;宏指令;椭圆

文章编号:ISSN1006—656X(2013)09 -0110-02

前言:我国目前被誉为“世界工厂”、“制造大国”,我国制造工业在发展的同时, 数控技术也得到了最广泛的应用,现在无论是硬件数控系统还是软件数控系统,其插补的基本原理是相同的,只是实现插补运算的方法有所区别。最常见的是直线插补和圆弧插补,没有椭圆、双曲线、抛物线等插补。为了解决这些编程问题,我们可以采用拟合计算,用宏程序方式进行编制。下面就数控车床加工椭圆来介绍A类和B类宏程序的编程方法:

一、宏程序概念介绍:

用户宏程序是以变量的组合,通过各种算术和逻辑运算、转移和循环等命令,而编制的一种可以灵活运用的程序,只要改变变量的值,即可完成不同的加工或操作。

用户宏功能主体是一系列指令,相当于子程序体。既可以由机床生产厂提供,也可以由机床用户自己编制。

宏指令是代表一系列指令的总指令,相当于子程序调用指令。最大特点是,可以对变量进行运算,使程序应用更加灵活、方便。用户宏功能有A、B两类。其中A类宏是以G65HxxP#xxQ#xxR#xx的格式输入的,而B类宏程序则是以直接的公式和语言输入的和C语言很相似在0i系统中应用比较广。

A类宏程序:

(一)变量

在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址。为了使程序更具通用性、更加灵活,在宏程序中设置了变量,即将变量赋给一个地址。

(二) 宏指令G65

包括算术运算、逻辑运算等处理功能。

一般形式: G65 Hm P#i Q#j R#k

式中:

m--宏程序功能,数值范围01~99;

#i--运算结果存放处的变量名;

#j--被操作的第一个变量,也可以是一个常数;

#k--被操作的第二个变量,也可以是一个常数。

(三)宏功能指令

1. 算术运算指令 包括加、减、乘、除等;

2. 逻辑运算指令 包括或、与、异或;

3. 三角函数指令 正弦、余弦、正切、反正切

4. 控制类指令 无条件转移、条件转移、产生PS报警

B类宏程序:

(四)宏程序的简单调用格式

宏程序的简单调用是指在主程序中,宏程序可以被单个程序段单次调用。

调用指令格式: G65 P(宏程序号) L(重复次数)(变量分配)

其中:G65――宏程序调用指令

P(宏程序号)――被调用的宏程序代号;

L(重复次数)――宏程序重复运行的次数,重复次数为1时,可省略不写;

(变量分配)――为宏程序中使用的变量赋值。

宏程序与子程序相同的一点是,一个宏程序可被另一个宏程序调用,最多可调用4重。

(五)宏程序的编写格式

宏程序的编写格式与子程序相同。其格式为:

0 ~(0001~8999为宏程序号) //程序名

N10 …… //指令

.

N~ M99 //宏程序结束

上述宏程序内容中,除通常使用的编程指令外,还可使用变量、算术运算指令及其它控制指令。变量值在宏程序调用指令中赋给。

(六)变量

(七)算术运算指令

(八)控制指令

(1)条件转移

编程格式:IF [条件表达式] GOTO n

以上程序段含义为:

1)如果条件表达式的条件得以满足,则转而执行程序中程序号为n的相应操作,程序段号n可以由变量或表达式替代;

2)如果表达式中条件未满足,则顺序执行下一段程序;

3)如果程序作无条件转移,则条件部分可以被省略。

4)表达式可按如下书写:

#j EQ #k 表示=

#j NE #k 表示≠

#j GT #k 表示>

#j LT #k 表示<

#j GE #k 表示≥

#j LE #k 表示≤

(2)重复执行

编程格式:WHILE [条件表达式] DO m (m = 1,2,3)

.

.

.

END m

上述“WHILE…END m”程序含意为:

1)条件表达式满足时,程序段DO m至 END m即重复执行;

2)条件表达式不满足时,程序转到END m后处执行;

3)如果WHILE [条件表达式]部份被省略,则程序段DO m至 END m之间的部份将一直重复执行;

二、宏程序编程实例应用:

已知椭圆z向长轴半径40,X向短轴半径20,毛坯材料为50棒料,加工右半椭圆,工件坐标系的原点如图所示,设置在工件的右端面中心位置。编写如(图1)所示椭圆A—B段的精加工程序:

(图1)

(一)以GSK980(当前版本是GSK980TD)数控车系统为代表的A类宏程序应用:

编程分析:

由于椭圆是非圆曲线,用宏程序加工非圆曲线时,其原理是将曲线分成若干段后用直线进行拟合,具体分成段数的多少要根据零件加工精度来确定,精度越高,分段数越多。所以实际加工完成的非圆曲线是由很多极短的折线段构成。

主程序

O1000;

N10 G97G99G40; (指定进给方式和取消刀具半径补偿)

N20 M03S800T0101;(设置主轴转速选用1号刀和调用1号刀补)

N30 G00G41G00X0Z2; (圆弧半径左补偿)

N40 G65P1001; (调用宏程序)

N50 G01X52F0.2; (退刀)

N60 G40G00X100Z100;

N70 M05;

N80 M30;

椭圆加工宏程序

O1001;

N10 G65 H01 P#100 Q40000; (#100=40mm)

N20 G65 H01 P#101 Q20000; (#101=20mm)

N30 G65 H01 P#102 Q40000; (#102=40mm)(初始值)

N40 G65 H28 P#103 Q#100 P#102;

N50 G65 H05 P#104 Q#103 P#100; (#104=#103/#100)

N60 G65 H04 P#105 Q2000 R#104; (#105=2×#104)

N65 G65 H03 P#106 Q#102 R40;

N70 G01 X#105 Z#102 F100;

N80 G65 H03 P#102 Q#102 R500; (确定Z向步长为0.5 mm。)

N90 G65 H85 P40 Q#102 R0; (条件判断:当变量#102≧0时,转移到N40程序段,如果#102﹤0时,继续向下执行。)

N100 M99

2. 以FANUC-0i数控车系统为代表的B类宏程序应用,编写如(图1)所示椭圆A—B段的粗加工程序:

O2000;

N10 G97G99;

N20 M03S800T0101;

N30 G00X52Z2; (快速定位刀具)

N40 #101=50 (确定X向粗加工余量50mm)

N50 WHILE[#101GE0.5]DO1; (建立条件式1,当粗加工余量大于0.5mm时,执行1号程序循环DO1--END1之间的程序)

N60 #101=#101-2; (指定粗加工时的背吃刀量为2mm)

N70 #2=40; (确定Z向坐标初始值)

N80 WHILE[#2GE0]DO2; (建立条件式2,当Z向坐标在运动到终点坐标前,执行2号程序循环DO2--END2之间的程序)

N90 #1=40*SQRT[1-#2*#2/1600];(根据椭圆标准方程公式转换)

N100 G01X[#1+#101]Z[#2-40]F0.2;(采用G01拟合加工,进给率为0.2mm/r)

N110 #2=#2-1; (指定Z向坐标的变化步距)

N120 END2; (条件式2程序结束)

N130 G00X100Z100;

N140 M05;

N150 M30;

宏指令编程像高级语言一样,可以使用变量进行算术运算逻辑运算和函数混合运算进行编程。在宏程序形式中,一般都提供循环判断分支和子程序调用的方法。可编制各种复杂的零件加工程序。熟练应用宏程序指令进行编程,可大大精简程序量,还可以增强机床的加工适应能力。比如可以将抛物线、椭圆等非圆曲线的算法标准化后做成内部宏程序,以后就可以像圆弧插补一样按标准格式编程调用,相当于增加了系统的插补功能。所以宏程序的编程方法显得越来越重要。

参考文献:

[1] 数控编程与加工技术,黄登红.中南大学出版社;

[2] 数控编程,中国劳动社会保障出版社

[3] 数控车床加工椭圆方法的研究,陈松;

[4] 广数980TD数控车床编程说明书;

[5]FANUC-0i数控车床编程说明书;

猜你喜欢

宏程序数控技术椭圆
SINUMERIK840D系统加工中心增量铣技术
数控技术在自动化机械制造中的运用研究
高职数控技术专业实践教学改革
b=c的椭圆与圆
巧用点在椭圆内解题
数控技术在机械制造自动化中的进展运用
宏程序在加工中心生产中的应用
机械制造中数控技术应用的探讨分析
数控车编程教学中宏程序嵌套的应用
椭圆的三类切点弦的包络