数控车宏程序编程方法及技巧
- 格式:ppt
- 大小:629.00 KB
- 文档页数:41


浅谈数控编程中的宏程序
Monday, November 30, 2009 11:48:53 PM 发布:sunlight
浅谈数控编程中的宏程序
一.引言
在CAD/CAM软件普遍存在的今天,手工编程的应用空间日趋减小,数控世界有一种说法很流行“宏程序已经没有什么用”,其实任何数控系统都有很多指令在一般情况下用不着,那他们是否也没有用呢?这显然不对,对宏程序也是如此,原因只是大家对宏程序不熟悉,往往误以为宏程序深不可测而已,在实际工作中,宏程序确实也有广泛的应用空间,并且能够方便手工编程,锻炼操作者的编程能力,帮助操作者更加深入的了解自动编程的本质。
二.认识宏程序
在一般的程序编制中程序字为常量,一个程序只能描述一个几何形状,当工件形状没有发生改变但是尺寸发生改变时,就没有办法了,只能重新进行编程,缺乏灵活性和适用性。当我们所要加工的零件如果形状没有发生变化只是尺寸发生了一定的变化的情况时,我们只需要在程序中给要发生变化的尺寸加上几个变量再加上必要的计算公式就可以了,当尺寸发生变化时只要改变这几个变量的赋值参数就可以了。
它是利用对变量的赋值和表达式来进行对程序的编辑的,这种有变量的程序叫宏程序。
三.宏程序与自动编程的比较
自动编程有自动编程的好处,但是自动编程也有其不利于加工方面的问题,在加工不规律的曲面时利用自动编程确实是很好,但是在加工有规律的曲面时就不见得了,加工有规律的工件的时候用宏程序加工要比用自动编程软件要强的多,而且宏程序比较精练,不象宏程序那么烦琐,而且比较长,看起来比较麻烦。下文将对CAD/CAM生成的程序与宏程序进行比较:
1.宏程序与普通程序的对比
普通编程是利用每个指令代码的功能,按照规定进行编程即可,有的时候这些简单的指令不能满足加工要求,因此系统提供了用户宏程序功能,使用户可以对数控系统进行一定功能的扩展,普通程序只能使用常量进行编程而且常量之间不可以进行计算,而宏程序则可以使用变量进行编程,并可以给变量进行赋值,变量之间可以根据程序中给出表达式进行计算。
数控车削中宏程序的编程技巧
摘要:在数控车床上加工非直线、非圆弧轮廓时,由于数控系统一般没有非圆曲线的插补功能,所以必须用宏程序编程。本文介绍了用宏程序编程的思路及编程技巧,并给出了程序流程图,以便对于任何非圆曲线但可用公式函数描述的零件轮廓,都可在较短的时间内编出程序,提高效率。
关键词:宏程序 变量 曲线方程 循环条件
使用宏程序编程,其最大特点就是程序精炼,短小、简洁,具有极好的易读性和易修改性,通用性极强,而且机床在执行此类程序时,较执行CAD/CAM软件生成的程序更加快捷,反映更迅速。下面以华中数控系统HNC-21T为例说明数控车削中宏程序的编程方法与步骤。
1 宏程序编程思路
利用宏程序加工可用函数公式描叙的轮廓曲线时,基本思路是使用多段细小直线依次连接来拟合曲线,当直线段越多时,对曲线的逼近效果越好。细小直线的端点称为节点,节点的坐标利用宏程序计算。
2 编程步骤
2.1 写出曲线的方程
为了便于写出曲线的方程,以曲线本身原点O1为原点写出其方程,曲线上点的坐标用X1、Z1表示。
2.2 确定自变量
选取坐标变化较大的为自变量,且因变量有唯一的值与其对应,图二所示的零件必须以Z1为自变量,而不能以为自变量X1,因为一个X1值有两个Z1值与其对应。
2.3 写出因变量与自变量的函数表达式
注意:遇到开平方根时,要看轮廓的方向是哪一侧,从而决定取正号还是负号。图一的零件用Z1表示X1时,应该取负号。
2.4 确定自变量的取值范围,即初始值和终止值(相对于O1)
2.5 确定循环条件,主要是看自变量是否到达终止值
2.6 设置程序中所需的变量
为了使程序具有通用性,设置以下变量
#1:X1坐标
#2:Z1坐标
#3:O1点相对于编程原点Op的X坐标△X,若O1在X轴正向,取正值,反之为负。
#4:O1点相对于编程原点Op的Z坐标△Z,若O1在Z轴正向,取正值,反之为负。
#5~:曲线方程中的常数,如椭圆的长短轴。
1
1.根据图样要求、毛坯及前道工序加工情况,确定工艺方案及加工路线
1)以底面为主要定位基准,两侧用压板压紧,固定于铣床工作台上。
2)加工路线
Y方向以行距小于球头铣刀逐步行切形成椭球形成。
2.选择机床设备
根据零件图样要求,选用经济型数控铣床即可达到要求。故选用华中Ⅰ型(ZJK7532A型)数控钻铣床。
3.选择刀具
球头铣刀大小6mm。
4.确定切削用量
切削用量的具体数值应根据该机床性能、相关的手册并结合实际经验确定,详见加工程序。
5.确定工件坐标系和对刀点
在XOY平面内确定以工件中心为工件原点,Z方向以工件表面为工件原点,建立工件坐标系,如图2-25所示。
采用手动对刀方法把0点作为对刀点。
6.编写程序(用于华中I型铣床)
按该机床规定的指令代码和程序段格式,把加工零件的全部工艺过程编写成程序清单。该工件的加工程序如下:
%8005(用行切法加工椭园台块,X,Y按行距增量进给)
#10=100 ;毛坯X方向长度
#11=70 ;毛坯Y方向长度
#12=50 ;椭圆长轴
#13=20 ;椭圆短轴
#14=10 ;椭园台高度
#15=2 ;行距步长
G92 X0 Y0 Z[#13+20]
G90G00 X[#10/2] Y[#11/2] M03
G01 Z0
X[-#10/2] Y[#11/2]
G17G01 X[-#10/2] Y[-#11/2]
X[#10/2]
Y[#11/2]
#0=#10/2 2 #1=-#0
#2=#13-#14
#5=#12*SQRT[1-#2*#2/#13/#13]
G01 Z[#14]
WHILE #0 GE #1
IF ABS[#0] LT #5
#3=#13*SQRT[1-#0*#0/[#12*#12]]
IF #3 GT #2
#4=SQRT[#3*#3-#2*#2]
数控车B类宏程序的简单入门
前言
很多做数控车的朋友,看着别人都能够熟练的运用宏编程和加工,自己除了羡慕外也曾经多少次暗暗下决心决定学好宏,但苦于没有老师和实际的教材(网络中的教材大多需要有一定的基础才能看懂)一次次的被宏拒绝与门外。我写此文的目的就是希望大家能够对宏有一个基本的了解并且能够入门。下面我就通过一些简单的例子来引导各位进入宏的大门。(文中的宏编程都是以GSK980TDb)
宏的简单说明:学习宏就需要对宏的语法有一个简单的了解,下面就通过对宏运用实例的一些简单说明来带领大家学习宏。
简单的赋值语句
#101=300 把变量#101初始值定义为300
#102=240 把变量#102初始值定义为240
#103=#101+#102 #103的值是#101和#102的和
#104=#101-#102 #104的值是#101和#102的差
举例1:
O0001
N010 G97 恒转速
N020 G99 mm/r
N030 T0101 M03S500 调用1号刀具1号刀补
N040 #101=300 把变量#101初始值定义为300
N050 #102=240 把变量#102初始值定义为240
N060 G00 X400 Z#102 快速定位到X400 Z240的位置
N070 G00 X#101 Z0 快速定位到 X300 Z0的位置
N080G01 X-1 F0.2 切削到X-1的位置
N090 G00 X#101Z#102 快速定位到 X300 Z240的位置
N100 M30 程序结束并返回程序开始
复杂的赋值语句
N10 #101=100
N20 #101=#101-2