子程序在数控车编程的应用

时间:2023.10.20

  子程序在数控车编程的应用【1】

  【摘 要】 子程序常用于加工几何形状完全相同或相似的加工轨迹,是数控车床手工编程的常用方法之一。

  正确使用子程序,可以有效简化手工编程工作量,减少程序所占内存,提高加工效率。

  本文主要对子程序进行简要介绍,并以具体实例加以说明。

  【关键词】 数控车子程序 编程 应用

  1 引言

  在数控加工中,有时在一个零件上,有两处或两处以上形状和大小都相同的加工部位,为简化程序的编制,可以用子程序来加工,或调用子程序实现循环加工,以减少编制程序时需要计算的基点的个数,简化编程。

  2 子程序介绍

  (1)子程序的定义。

  某些被加工的零件中,常常会出现几何形状完全相同的加工轨迹,在编制加工程序时,有一些固定顺序和重复模式的程序段,通常在几个程序中都会使用它。

  这个典型的加工程序段可以做成固定程序,并单独加以命名,这组程序段就称为子程序。

  (2)子程序的作用。

  使用子程序可以减少不必要的重复编程,从而达到简化编程的目的。

  主程序可以调用子程序,一个子程序也可以调用下一级子程序。

  子程序必须在主程序结束指令后建立,其作用相当于一个固定循环。

  (3)子程序的格式。

  子程序的格式与主程序相同,在子程序的开头编制子程序号,在子程序的结尾用M99指令结束子程序并返回主程序。

  O××××

  …

  M99

  (4)子程序的调用。

  在主程序中,调用子程序的指令是一个程序段。

  指令:M98

  格式:M98 P×××× ×××× (前四位为调用次数,后四位为子程序号)

  或M98 P×××× L××××(P后面为子程序号,L为调用次数)

  说明:省略循环次数时,默认循环次数为一次。

  (5)子程序的嵌套。

  子程序调用另一个子程序,称为子程序的嵌套。

  主程序调用同一子程序执行加工,最多可执行9999次,但是子程序的嵌套不是无限次的,在编程中使用较多的是二重嵌套(不同的系统其执行的次数及层次不同),其程序执行情况如图1所示。

  3 应用子程序编程实例

  (1)等距槽可以利用循环或子程序进行编程,但加工不等距槽时,就体现出了利用子程序进行编程的优势。

  例如:图2所示为车削不等距槽,已知02号刀为切槽刀,刀刃宽度为4mm,左刀尖对刀, 35mm外圆已加工好,试通过调用子程序的形式编写其加工程序。

  1)主程序。

  O0001

  N10 G50 X100.0 Z100.0;设定工件坐标系。

  N20 M03 S900;主轴正转,转速900r/min。

  N30 T0202;换02号切槽刀。

  N40 G00 X38.0;快速定位到38mm处。

  N50 Z-20.0 M08;快速定位,准备切槽,开冷却液。

  N60 M98 P31000;调用O1000的子程序3次。

  N70 G00 X50.0 Z-138.0;快速定位。

  N80 G01 X0 F30;切断。

  N90 M30;程序结束。

  2)子程序。

  O1000

  N10 G00 W-4.0;Z轴负向移动4mm至第一槽处。

  N20 G01 U-13.0F30;切第一槽至指定尺寸。

  N30 G04 X1.0;槽底停留1S。

  N40 G01 U13.0;X方向退出。

  N50 G00 W-14.0;快速定位第二槽处。

  N60 G01 U-13.0;切第二槽至指定尺寸。

  N70 G04 X1.0;槽底停留1S。

  N80 G01 U13.0;X方向退出。

  N90 G00 W-20.0;Z轴负向移动20mm。

  N100 M99;子程序结束,并返回主程序。

  (2)如果加工等距槽,但是形状较复杂时,循环指令就失效了,这时应用子程序就可以大大提高编程的效率。

  例如:图3所示为车削等距复杂型槽,已知02号刀为切槽刀,刀刃宽度为3mm,左刀尖对刀,28mm外圆已加工好,试通过调用子程序的形式编写其加工程序。

  1)主程序。

  O0002

  N10 G50 X100.0 Z100.0; 设定工件坐标系。

  N20 M03 S600; 主轴正转,转速600r/min。

  N30 T0101; 选择1号外圆刀。

  N40 G00 X30.0 Z2.0;定位至30mm,距端面正向2mm。

  N50 G71 U1.0 R0.5; 采用复合循环粗加工半圆球、外圆、外圆锥面等,

  N60 G71 P70 Q130 U0.5 W0 F100; X正方向留精加工余量0.5mm。

  N70 G42 G01 X0 F50;

  N80 Z0;

  N90 G03 X20.0 W-10.0 R10.0;

  N100 G01 Z-42.0;

  N110 X25.0 Z-50.0;

  N120 Z-55.0;

  N130 G40 X30.0;

  N140 M00 M05;主轴停,程序加工暂停,检测工件。

  N150 M03 S1200;主轴正转,转速 1200r/min。

  N160 G70 P70 Q130;精加工半圆球、外圆、外圆锥面等。

  N170 G00 X100.0 Z100.0;返回换刀点,主轴停。

  N180 M03 S800;主轴正转,转速 800r/min。

  N190 T0202; 换02号切槽刀。

  N200 G00 X22.0 Z-10.7M08;快速定位,准备切槽,开冷却液。

  N210 M98 P32000;调用O2000的子程序3次,加工3处等距外沟槽。

  N220 G00 X100.0 Z100.0; 返回换刀点。

  N230 M30; 程序结束。

  2)子程序。

  O2000

  N10 G00 W-8.6;刀具沿Z轴负方向平移8.6mm。

  N20 G01 U-10.0 F20;沿径向切槽至槽底。

  N30 G04 X1.0;槽底停留1S。

  N40 G00 U10.0 F500;快速退至22mm处。

  N50 W1.3;沿Z轴正方向平移1.3mm。

  N60 G01 U-2.0;沿径向移动至20mm处。

  N70 U-8.0 W-1.3;刀具切沟槽右侧面至槽底。

  N80 G00 U10.0;快速退至22mm处。

  N90 W-1.3; 沿Z轴正方向平移1.3mm。

  N100 G01 U-2.0;沿径向移动至20mm处。

  N110 U-8.0 W1.3;刀具切沟槽左侧面至槽底。

  N120 G00 U10.0;快速退至22mm处。

  N130 M99;子程序结束,并返回主程序。

  4 结语

  编写子程序时注意应用增量坐标写出加工路线,让程序沿X向(或Z向)循环进刀,设置好背吃刀量,计算出加工次数,在主程序中进行调用。

  这种方法可减少基点的计算个数,适用于各种形状复杂的零件,使这类零件在数控机床上的编程变得简便。

  灵活的应用子程序,在很大程度上提高了零件的加工效率,并且在实际生产中收到了良好的效果。

  参考文献:

  [1]谢晓红.数控车削编程与加工技术.北京:电子工业出版社,2008.7.

  [2]黄康美.数控加工编程.上海交通大学出版社,2004.8.

  [3]宋放之.数控工艺培训教程.清华大学出版社,2003.8.

  主程序调用子程序的编程方案在数控教学中的应用【2】

  一、手工编程在教学和生产中的概况及意义

  在制造业非常发达的华南(以珠三角地区为代表)和(以江浙地区为代表),各类CAD\CAM软件的应用由来已久,而且非常广泛和成熟,即使在那些只有1~2部数控铣床或加工中心的“路边加工店”里,也随处可见Mastercam、 UG、 PRO\E、Cimatron、Powermill、Surfcam等世界知名CAD\CAM软件的身影。

  到目前为止,各类CAD\CAM软件应用日趋普及,特别是数控三维曲面加工,使手工编程几乎已没有用武之地。

  但是必须强调的是,手工编程是根本,是基础,各种疑难杂症的解决往往还要利用手工编程;再者,学习手工编程有利于进一步完善数控程序,所以在学校中教学手工编程有着极其重要的意义,特别是“模块式”课程教学手工程序。

  另外,当一些中小型认为使用正版CAD\CAM软件成本过高时,手工编程(更高层次的变量编程,即宏程序的运用)就会显示其使用价值。

  因此手工编程在教学和生产中仍具有极其重要的地位。

  笔者根据多年的数控生产实践经验和教学实践,提出采用主程序调用子程序的编程方案,编写结构化数控程序,有效地改善数控程序的可读性与安全性,给教学和生产带来了安全与便利。

  二、用主程序调用子程序编程方案的优点

  GSL990M铣床数控系统中,在主程序中用M98指令调用子程序,而在子程序中用M99指令返回主程序。

  采用主程序调用子程序进行编程有两大用途,一是把需要重复使用的边界程序段编写成子程序,避免了程序编写重复,使程序简洁;二是把需要重复实现的功能用子程序来完成,使程序清晰易读。

  阵列孔加工程序采用子程序结构,充分说明了以上第一用途;多工序加工中,系列辅助功能(如换刀、刀具长度补偿等)采用子程序结构,说明了以上第二个用途。

  三、两个重要子程序

  多工序加工中无原则经常换刀,换刀后在刀具接近工件的过程中,又需建立刀具的长度补偿。

  如果将这两项功能编写成两个子程序,将使主程序结构清晰、易变,而且不容易出错。

  下面介绍两个子程序。

  1.换刀子程序

  O5555;

  N0001 G80G40M09;撤消固定循环、撤消半径补偿、

  关冷却液

  N0002 G91G28Z0M05;通过当前点返回参考点、主轴

  停转

  N0003 G49;刀具长度偏移注销

  N0004 M06;换刀准备,具体调用的刀具号由主程序

  指定

  N0005 M99;返回主程序

  由此可见,换刀子程序除实现换刀功能外,还撤销了固定循环、刀具半径补偿、刀具长度补偿,实现关冷却液、停止主轴旋转功能,使系统基本复原到初始状态,起到防止误操作的作用,提高了程序的安全性。

  2.刀具接近子程序

  O5554;

  N0001 G90G00X0Y0;检验X、Y坐标原点是否正确

  N0002 M03;主轴正转,具体转速由主程序指定

  N0003 G43G00Z100;建立刀具长度补偿,并移动到

  Z=100mm的位置,具体补偿参数            由主程序指定

  N0004 M07;开冷却液

  N0005 M99;返回主程序

  刀具接近子程序建立了刀具的长度补偿,并且使刀具到坐标点(0,0,100)的位置,起到了检查工件坐标系(WCS)原点是否正确的作用,提高了程序运行的安全性。

  四、数控加工中工序概念的定义

  为了说明多工序加工数控编程,需对数控加工中的工序概念进行重新定义。

  传统机械加工中的工序概念,以两个方面区分工序,一是工序过程是否连续完成;二是工作场地是否发生变化。

  显然,这种传统的工序定义在数控加工中已不适用,应对数控加工工序提出新的定义。

  数控加工以是否更换加工程序来区分工序,更符合数控加工的实际情况。

  进一步说,数控加工工序是指工件的一次安装中,使用同一把刀具、同一工艺参数和同一数控加工程序对工件进行加工,所连续完成的那一部分工艺过程。

  基于以上数控加工工序的定义,数控加工工艺过程卡包括:工序号、工序名称(应说明加工部位、加工性质、加工阶段)、刀具、安装方案和有关工艺装备、工艺参数、数控程序号、加工区域简图等内容。

  反之,数控加工工序过程卡也正好明确了数控加工工序的概念。

  五、多工序加工中采用的主程序结构

  在建立数控加工工序概念的基础上,通过调用两个重要子程序,可以对多工序数控加工编写出结构性、可读性好的主程序。

  假如要完成两道工序的数控加工,这两道工序分别使用说明01#、02#刀具,长度补偿值分别存放在H01、H02内存单元,转速分别为1000r/min、1200r/min,加工子程序号为O1000、O2000。


第二篇:宏指令在数控编程加工中的应用


  宏指令在数控编程加工中的应用

  摘 要: 本文根据宏指令和CAD/CAMD 在数控编程加工中的应用分析,分析其各自的特点;并通过典型零件的宏指令编程实例,说明利用宏指令编程对程序往往能起到化难为易、化繁为简的作用,使程序具有通用性、灵活性。

  恰当地使用宏变量,可用同一程序完成一个系列零件的加工,大大提高编程效率。

  关键词: 数控机床 数控编程加工 宏指令 CAD/CAM

  数控编程作为数控加工的关键技术之一,其程序的编制效率和质量在很大程度上决定了产品的加工精度和生产效率,尤其是随着数控加工不断朝高速、精密方向发展,提高数控程序的编制质量和效率,对提高制造企业的竞争力有着重要的意义。

  随着CAD/CAM软件的不断普及,数控编程的模式逐渐由自动编程取代了手工编程。

  但CAM软件和手工编程有着各自的特长,且现有的CAM软件不能满足所有数控系统的特殊功能。

  如何充分结合两种编程模式,合理有效地利用数控机床的各种功能,编制精简合理的小容量数控程序,有着非常重要的意义。

  一、CAD/CAM和用户宏程序在编程加工中的性能对比

  当今CAD/CAM软件越来越具有智能化,非常适用于各种复杂曲线零件编程和加工,但并不意味着CAD/CAM编程能绝对取代用户宏程序。

  相反,在实际应用中用户宏程序相对于CAD/CAM软件有其适用范围和特点,具体如下。

  首先,用户宏程序是程序编制的高级形式,素质较高的编程人员在宏程序里应用大量的编程技巧,使程序简洁易懂,并具有较好易读性和修改性。

  而采用CAD/CAM编程,必须先几何建模,后设定各种加工参数,然后计算刀具轨迹,再经后处理生成程序。

  这个过程非常耗时,且生成的程序十分繁琐,内容较多,可读性和修改性较差。

  对于中等难度的零件,使用宏程序编程要比CAD/CAM方便得多。

  其次,一般的数控系统内部存贮空间不超过256K,而采用CAD/CAM生成的程序比较繁琐,基本上都超过额定存贮空间,因而只能通过DNC方式加工,即通过数控机床配备的通信接口在线加工。

  现在的机床常备的是RS-232串行接口,其最大的传输波特率为19200bit/s,当计算精度、计算速度F值较大时,程序的传输速度就跟不上机床的节拍,出现进给运动有明显的继续的现象,采用其他方法也不会太大的改观。

  由于宏程序一般都短小精悍,存储空间一般为3K以下,完全可以存储在数控系统内部。

  在计算的速度较快,使用宏程序不会出现加工中断续的现象。

  最后,CAD/CAM软件生成的程序具有一定的误差,使得对零件加工精度具有很大的影响。

  误差来源于很多方面,从用户使用的层面上说,使用CAD/CAM软件来生成刀路及程序是非常容易的事,但是剖析CAD/CAM软件计算刀路的原理,就知道它存在一定的弊端。

  在CAD/CAM软件中,无论构造规则或不规则的曲面都有一个数学运算的过程,也必然存在着计算的误差和处理,而在对其生成三维加工刀路时,软件是根据你选择的加工方式、设定的加工参数,并结合所设定的加工误差(或称为曲面的计算精度),使刀具与加工表面接触点(相交点或相切点)逐点移动完成加工,从本质上看,其实就是在允许的误差值范围内沿每条路径用直线去逼近曲面的过程。

  例如手工编程中用G02或G03表示圆弧,CAD/CAM生成的程序使用n边形去逼近一个圆。

  CAD/CAM软件生成的程序除了受NC刀具轨迹的计算精度影响,还受多方面因素的影响,例如受CAD建模时的计算精度的影响、不同软件之间CAD图档的转换精度的影响和后处理环节的影响等。

  二、用户宏程序在数控编程加工中的优点

  宏功能是数控编程技术的一项关键技术,是提高数控加工性能的一种特殊功能。

  宏功能的主体是宏程序,由一系列指令组成,宏程序用一个总指令作代号,也称宏指令。

  其特点是可以对变量得对变量进行运算,用变量执行相应操作,使程序应用更加灵活、方便。

  1.宏程序中的变量有局部变量、公共变量、系统变量三种,可满足不同的赋值需求。

  在宏程中,用事先指定的事变量代替地址符后面直接给出的数值,在调用宏程序或该宏程序本身执行时,给出计算好的变量值,这种使宏程序有广泛的通用性。

  更改也非常简单,若程序中某数据要更改,只需将相应变量重新赋值即可。

  2.在宏程序中已赋值的变量,在后续程序中可被重新赋值,原先的内容被新内容代替,利用数控系纺对变量值进行计算和变量可以理新赋值的特性,使得在进行复杂非圆轮廓的曲线加工中,而不必人工逐点计算,从而用很短的直线或圆弧线段逼近理想轮廓曲线,满足零件加工精度。

  3.宏程序中的算术和逻辑计算功能,如:反正运算、指数函数运算、异或运算等,满足了用户不同的计算要求,减少了编程的繁琐计算,使编程更佳快捷、方便。

  4.宏程序所具有的转移和循环功能,包括GOTO、IF、WHILE语句,可方便地实现语句的无条件、有条件跳转和重复多次循环减少了编程语句的数量,满足了用户对不同情况的编程要求。

  三、宏指令编程实例

  实例一:宏指令在壳体类零件数控加工编程中的应用

  在工厂实际生产中,常常生产不同型号的同类产品,每一型号的产品都有不同的规格,这些规格不同而型号相同的产品一般结构和形状相似,仅尺寸大小不同。

  所以其壳体零件也是结构和形状相似,只是尺寸或数量不同。

  而基本上所有产品的壳体零件,其加工内容无非是轴孔镗削加工、断面铣削加工、连接孔钻削加工,如果对每个规格壳体的零件都去编程,很费时,易出差错,且占用内存空间大。

  为了提高程序的通用性,可以将同类形状的表面加工采用宏指令编程,加工时给宏程序中的变量赋值就可调用宏程序,大大简化加工程序。

  例如阀门产品型号很多,然而同一型号的阀门其结构及外形却非常相似,阀体结构基本一样,仅是尺寸大小即规格不同。

更多相关推荐:
数控毕业论文范文

毕业设计论文零件的加工方法与编程姓名:***学号:****专业:数控技术班级:06大专数控设备班导师姓名:***副教授20**年10月15日目录第一章绪论2第二章零件图纸分析52.1零件的特征52.2数值计算5…

数控车毕业论文范文

山东科技职业学院毕业论文摘要在数字化制造技术中计算机数控技术和数控编程技术是最重要的之一本文主要针对20xx年山东省数控大赛数控车零件1行CNC加工采用Fanuc系统对零件进行数控编程加工首先是对工件进行加工工...

数控专业毕业论文范本

继续教育学院毕业设计(论文)题目:数控车削加工中的刀具选择院、系(站):机电工程系学科专业:数控加工与维护学生:**学号:**指导教师:**20XX年10月摘要理想的加工程序不仅应保证加工出符合图样的合格工件,…

08数控毕业论文范文

建平职业技术学校毕业论文论文题目专业名称数控技术班级名称09数控2班学生学号1021005456594学生姓名秦贺指导老师教研室数控教研室20xx年04月08日目录0数控技术和装备发展趋势及对策摘要当今世界数控...

数控毕业论文范文

数控毕业论文范文数控技术和装备发展趋势及对策摘要简要介绍了当今世界数控技术及装备发展的趋势及我国数控装备技术发展和产业化的现状在此基础上讨论了在我国加入WTO和对外开放进一步深化的新环境下发展我国数控技术及装备...

数控毕业论文范文

毕业论文--数控车床轴类零件加工毕业实习攻关报告题目:数控车床轴类零件加工学院(系):专业:班级:学生:指导教师(职称):完成日期:20XX年6月10日数控车床轴类零件加工摘要前言1.零件图工艺分析1.1数控加…

机械数控类毕业论文范文

基于数控加工技术的工艺与编程综合设计院系专业学生班级姓名学号指导教师单位指导教师姓名指导教师职称20xx年4月基于数控加工技术的工艺与编程综合设计机械工程及自动化20xx级指导老师摘要随着科学技术的飞速发展传统...

数控毕业论文范文

毕业论文20xx届题目姓名系部班级指导教师数控加工工艺编制周立夫机电信息系11数控技术应用葛莹前言本次毕业设计是学院为了提高学生的数控技术及相关技能等综合运用能力通过毕业设计和完成毕业论文也是学院对毕业生生毕业...

数控专业论文范文

包头轻工职业技术学院毕业论文论文题目调头加工轴数控加工工艺设计xxxx班班级xxxx学号xxx作者数控技术专业名称20xx年04月25日包头轻工职业技术学院调头加工轴数控加工工艺设计闫挺作者指导教xxx单位xx...

数控毕业论文小结

常州纺织服装职业技术学院机械制造与自动化专业毕业论文题目机械制造与自动化实训报告姓名鲁聪学号20xx0131指导教师沈洁学习点常州纺织服装职业技术学院协新教学站二0一二年四月九日摘要随着数控技术的不断发展和应用...

数控专业毕业论文改

石家庄理工职业学院毕业论文题目:数控车零件工艺设计及NC编程姓名:系别:机电工程系专业:机械制造与自动化班级:指导教师:20xx年5月20日一、摘要1二、引言数控概述2(一)数控机床简介2(二)数控机床的特点2…

数学毕业论文参考题目(20xx级)

数学毕业论文参考题目(20xx级)1、极限思想的产生和发展;裴红敏2、三角函数的极值求法;3、数列极限和函数极限的统一;4、求函数极限的方法;赵小娜5、函数的本质探讨;6、求二重极限的方法;7、数学概念的探究教…

数控毕业论文(37篇)