浅谈数控车床中宏程序的应用.doc
上传人:sy****28 上传时间:2024-09-13 格式:DOC 页数:4 大小:50KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

浅谈数控车床中宏程序的应用.doc

浅谈数控车床中宏程序的应用.doc

预览

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

16 金币

下载此文档

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

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

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

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

浅谈数控车床中宏程序的应用[摘要]随着现代制造技术的发展和数控技术不断进步,数控车床加工中各种复杂型面也日渐增多,如椭圆、抛物线、正弦曲线、余弦曲线和双曲线等各种非圆曲面。数控加工中很重要的一部分就是编程,从CAD/CAM软件出现以后,人们依赖CAD/CAM软件进行自动编程,但由于种种原因,在绝大数情况下数控车床主要还是依靠手工编程,尤其是博大精深的宏程序,它有着自动编程软件不可取代的优势[关键词]工件坐标系方程变量宏程序[前言]:在数控机床编程指令系统中,有一类功能非常强大,同时理解、掌握起来也比较困难的高级编程指令——用户宏程序指令。宏程序和宏指令是一个比较难以理解的概念和指令,所以在编程中大多数人还不会或不愿使用宏程序。同时受客观条件的限制,自动编程(计算机编程)在目前还未被普及。正是因为用户宏程序具有上述特点,使它在理解、使用和教学中成为一个难点。同样,如果能牢牢把握住这些特点,使用起来便会得心应手,使编程变得更加简洁,既可节省编程及输入程序的时间,又能提高生产效率,也可减少程序所占有的内存空间。在教学中,通过用户宏程序编程和普通程序的对比讲解,可使用户宏程序教学内容变得简单明了,通俗易懂。宏程序简介在编程工作中,我们经常把能完成某一功能的一系列指令像子程序那样存人存储器,用一个总指令来代表它们,使用时只需给出这个总指令就能执行其功能所存人的这一系列指令称作用户宏程序本体,简称宏程序。这个总指令称作用户宏程序调用指令。在编程时,编程员只要记住宏指令而不必记住宏程序。用户宏程序与普通程序的区别在于:在用户宏程序本体中,能使用变量,可以给变量赋值,变量间可以运算,程序可以跳转;而普通程序中,只能指定常量,常量之间不能运算,程序只能顺序执行,不能跳转,因此功能是固定的,不能变化。用户宏功能是用户提高数控机床性能的一种特殊功能,在相类似工件的加工中巧用宏程序将起到事半功倍的效果。宏程序本体既可以由机床生产厂提供,也可以由机床用户自己编制。使用时,先将用户宏主体像子程序一样存人到内存里,然后用子程序调用指令调用二、宏程序与自动编程的比较自动编程有自动编程的好处,但是在加工有规律的曲面时就不见得了,加工有规律的工件的时候用宏程序加工要比用自动编程软件要强的多,而且宏程序比较精练,不象自动编程程序那么烦琐,而且比较长,看起来比较麻烦。宏程序与普通程序的对比普通编程是利用每个指令代码的功能,按照规定进行编程即可,有的时候这些简单的指令不能满足加工要求,因此系统提供了用户宏程序功能,使用户可以对数控系统进行一定功能的扩展,普通程序只能使用常量进行编程而且常量之间不可以进行计算,而宏程序则可以使用变量进行编程,并可以给变量进行赋值,变量之间可以根据程序中给出表达式进行计算。当工件形状没有变化,但尺寸发生变化时,只需改变变量中几个与尺寸有关的值,其他的表达式无须改变。同时在控制工件尺寸时也很方便,只要将跟刀具有关的变量改变其值就可以。2.宏程序编程比较简短宏程序是程序编制的高级形式,程序编制的质量与编程人员的素质息息相关,宏程序里应用了大量的编程技巧。它利用数学关系的表达,加工刀具的选择,走刀方式的取舍等等,这些都使得宏程序的精度很高,特别是对于中等难度的零件,使用宏程序加工要比自动编程加工快的多。另外很重要的一点,CAD/CAM所生成的程序很多,而且非常的烦琐,有的时候自动编程的程序长度可能是宏程序长度几十倍,甚至几百倍,加工时间也会大大增加。三、用户宏程序本体的编写格式用户宏程序本体的编写格式与子程序的格式相同。在用户宏程序本体中,可以使用普通的NC指令,采用变量的NC指令、运算指令和控制指令。格式如下:Oxxxx;#26=#4+#18xCos[#1〕;G90GOOX#26;…………IF[#22GE#9〕GOTO9;……N9M99变量可以用于宏程序本体,可以指定运算和控制指令。用宏程序调用命令赋予变量实际值四、应用实例抛物线Z=-X²/c椭圆:椭圆抛物线Z=-X²/c抛物线与椭圆的宏程序运用%8002(程序名)G92X50Z0(起点坐标)U32V40W55A8B5C4M98P8001(定义#20=32、#21=40、#22=55、#0=8、#1=5、#2=4)G36G90X50Z0(到起点位置)M30%8001(子程序名)#10=0#11=0(抛物线起点X、Z轴坐标值)#12=0#13=0(椭圆起点在X、Z轴方向增量值)G64G37(小线段连续加工、半径编程)WHILE#11LE#20(抛物线方程:Z=-X*X/C)G01X[2*#10]Z[-[#11]]F1500#10=#10+0.08(计算各段抛物线X轴坐标)#11