




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业论文(设计)FANUC系统宏程序的设计指导老师:班级:系(部):专业:答辩时间:摘要随着数控技术以及计算机辅助制造软件的迅速发展,在数控编程方面,手工编程越来越多的被计算机自动编程所取代,从而使大家慢慢忽略了手工编程特别是宏程序的重要性,一个宏程序可以很方便地编制三维曲面的加工程序,而且程序非常简洁,通用性好,对于相同形状、不同尺寸的零件,只要在调用宏程序时赋不同的数值即可。宏程序的优越性同时体现在孔系加工、口袋及轮廓加工、各类圆柱面、斜面、内外球面、椭球面及倒R面加工。本文通过对FANUCOi系统研究,以宏程序的理论知识及应用为基础,从宏程序编制的数学基础开始,涉及到了宏程序的编译,给出了一种典型的可以用于任意宏程序的编译方法,以及用户宏程序B的应用,并对其常见问题进行了归纳总结,并以典型车削及铣削实例的形式加以具体阐述,希望为宏程序的应用及推广起到一定的借鉴作用。
AlongwiththerapidlydevelopmentofCNCtechnologyandCAMsoftware,manualprogramminghasbeenmainlyreplacedbyCAP.Somanypeopleignoretheimportanceofmanualprogrammingespeciallymacroprogram.Amacroprogramcanworkout3-Dcurvedfaceprogrameasily,andtheprogramwillbeconcisionandgoodatuniversalproperty.Ifthepartshavesameshapbutdifferentdimension,youcanusedifferentunivericalvaluewhentransferamacroprogram.Theadvantageofamacroprogramcanincarnateonmachini...目录摘要绪论宏程序应用概述1.1宏程序概述1.2宏程序与普通程序的对比1.3数控编程技术的应用现状1.4宏程序编程的技术特点1.5宏程序与CAD/CAM软件生成程序的加工性能对比宏程序的变量和数学基础的应用2.1宏程序基本变量2.2双轨迹的公共变量2.3算术和逻辑运算2.4宏程序的控制指令2.5FANUC-0i刀具补偿值的系统变量2.6宏程序报警、停止和信息显示、时间信息变量2.7自动运行控制可以改变自动运行的控制状态的变量第三章非圆曲线宏程序加工工艺3.1、非圆曲线宏程序的使用步骤3.2、非圆曲线宏程序的具体应用实例3.3用户宏程序应用举例第四章宏程序编程实例4.1编程实例4.2加工实例的工艺分析4.3数控车宏程序编程总结致谢参考文献附录一附录二绪论数控加工程序编制的关键是刀具相对工作运动轨迹的计算,即计算加工轮廓的基点和节点坐标或刀具中心的基点和节点坐标。数控机床一般只提供平面直线和圆弧插补功能,对于非圆的平面曲线Y=f(X),采用的加工方法是按编程允许误差,将平面轮廓曲线分割成许多小段,然后用数学计算的方法求逼近直线或圆弧轮廓曲线的交点和切点坐标。随着计算机数控系统(CNC)的不断发展。CNC不仅能通过数字量去控制多个轴的机械运动,而且具有强大的数据计算和处理能力,编程时只要建立加工轮廓的基点和节点的数学模型,按加工的先后顺序。由数控系统即时计算出加工节点的坐标数据。进而控制加工,这就是数控系统提供的宏编程。宏指令编程像高级语言一样,可以使用变量惊醒算术运算逻辑运算的函数混合运算进行编程。在宏程序形式中,一般都市提供循环判断分支和子程序调用的方法。可编制各种复杂的零件加工程序,熟悉应用宏程序指令进行编程,可大大精简程序量,还可以增强机床的加工适应能力。比如可以控制抛物线、椭圆的那个非圆曲线的算法标准化后做成内部宏程序,以后就可以像圆弧插补一样按照标准格式编程调用,相当于增加了系统的插补功能。随着数控系统的不断更新,宏指令应用越来越广泛。以日本FANUC-0i系统为例。0i系统使用B类宏指令,包括宏变量的赋值、运算、条件调用等,其功能强大,编程直观。宏指令编程虽然属于手工编程的范畴,但它不是直接算出轮廓各个节点的具体坐标数据,而是给出数学公式的算法,由CNC来即时计算节点坐标,因此对于简单直观的零件轮廓不具有优势。若零件结构不能用常规插补指令可以完成编程的,则可采用编制宏程序的方法,将计算复杂数据的任务交由数控系统来完成。对于加工方法和加工方式,零件的步骤,走刀路线及对刀点、起刀点的位置以及切入、切出方式的设计还是遵循一般手工编程的规则。编制宏程序时,应从零件的结构特点出发,分析零件加工表面之间的几何关系,应从零件的结构特点出发,分析零件上各加工表面之间的几何关系,据此推到出各参数之间的数量关系,建立准确的数学模型。第一章宏程序应用概述1.1宏程序概述1.1.1数控编程技术的分类数控编程方法可以分为两类:一类手工编程,另一类是自动编程。1.1.2手工编程手工编程是指编制零件数控加工程序的各个步骤,即从零件图纸分析,工艺决策,确定加工路线和工艺参数,计算刀尖轨迹坐标数据,编写零件的数控加工程序单直至程序的检验,均由人工完成。对于点位加工或几何形状不太复杂的轮廓加工,几何计算较简单,程序段不多,手工编程即可实现。如简单阶梯轴的车削加工,一般不需要复杂的坐标计算,往往可以由技术人员根据工序图纸数据直接编写数控加工程序。但对轮廓形状不是由简单的直线,圆弧组成的复杂零件,特别是空间复杂曲面零件,数值计算则相当繁琐,工作量大,容易出错,且很难孝对,采用手工编程是难以完成的。1.1.3自动编程使用计算机编制数控加工程序,自动地输出零件加工程序单及自动的制作控制介质的过程称作自动编程。自动编程就是编程人员根据零件图纸和工艺要求,使用规定的数控语言编写一个较简短的零件加工源程序,输入到计算机中。计算机自动地进行数学处理,计算出刀具中心运动轨迹,编写出零件加工程序单,并生成控制介质。有预见在计算机上可自动地绘出所编程的图形及走刀轨迹,所以能及时的检查程序是否错误,并进行修改,得到正确的程序。在自动编程时,工艺处理部分工作还需编程人员来完成并按自动编程系统要求的格式输入。1.2宏程序与普通程序的对比一般意义上所讲的数控指令其实是指ISO代码指令编程。即每个代码的功能是固定的,由系统生产厂家开发,使用者只需(只能)按照规定编程即可。但有时候这些指令满足不了用户的需要,系统因此提供了用户宏程序功能,便用户可以对数控系统进行一定的功能扩展,实际上是数控系统对用户的开放,也可视为用户利用数控系统提供的工具,在数控系统的平台上进行二次开发,当然这里的开放和开发都是有条件和有限制的。
用户宏程序和与普通程序存在一定的区别,认识和了解这些区别,将有助于宏程序的学习理解和掌握运用,表一是用户宏程序与普通程序的简要对比。
表一普通程序宏程序只能使用常量可以使用变量,并给变量赋值常量之间不可以运算变量之间可以运算程序只能顺序执行,不能跳转程序运行可以跳转1.3数控编程技术的应用现状在我国,六成以上的数控铣床(包括加工中心)都是应用在模具行业,由于模具加工的特殊性和一些非技术性原因,CAD/CAM软件的应用由来已久,且日趋成熟,特别是在数控三维曲面加工中,手工编程几乎已没有用武之地,而由于强大对我思维定势和使用习惯,使得编程人员不论程序大小、加工难易,都习惯并乐于使用各种CAD/CAM软件来编程加工。手工编程似乎被遗忘在角落里,大有无人问津之势。1.4宏程序编程的技术特点尽管使用各种CAD/CAM软件来编制数控加工程序已经成为潮流(或主流),但手工编程毕竟还是基础,各种”疑难杂症“的解决往往还要利用手工编程;且手动编程还可以使用变量编程,即宏程序的运用。其最大特点就是将有规律的形状或尺寸用最短的程序段表示出来,具有极好的易读性和易修改性,编写出的程序非常简洁,逻辑严密,通用性极强,而且机床在执行此类程序时,较执行CAD/CAM软件生成的程序更加快捷,反应更迅速。
随着技术的发展,自动编程逐渐取代手工编程,但宏程序简捷的特点使之依然具有使用价值,我个人认为,宏程序的运用应该是手工编程应用中最大的亮点和最后的堡垒。宏程序具有灵活性、通用性和智能性等特点,例如对于规则曲面的编程来说,使用CAD/CAM软件编程一般都有工作量大,程序庞大,加工参数不容易修改等缺点,只要任何一个参数发生任何变化,再智能的软件也要根据变化后的加工参数重新计算刀具轨迹,尽管软件计算刀具轨迹的计算速度非常快,但始终是个比较麻烦的过程。而宏程序则注重把机床参数与编程语言结合,而且灵活的参数设置也使机床具有最佳的工作性能,同时也给予操作工人极大的自由调整空间。从模块化加工的角度看,宏程序最具有模块化的思想和资质条件,编程人员只需要根据零件几何信息和不同的数学模型即可完成相应的模块化加工程序设计,应用时只需要把零件信息,加工参数等输入到相应的模块的调用语句中,就能使编程人员从繁琐的、打量重复性的编程工作中解脱出来,有中一劳用逸的效果。另外,由于宏程序基本上包含了所有的加工信息(如所使用刀具的几何尺寸信息等),而且非常简明直观,通过简单的存储和调用,就可以很方便的重现当时的加工状态,给周期性的生产特别是不定期的间隔式生产带来了极大的方便。客观的说,对于主要由于大量的不规则复杂曲面构成的模具成型零件,由于设计、分析道制造的整个生产链在技术层面及生产管理上都是通过以上各种CAD/CAM软件为核心(还包括PDM/CAE等)的纽带紧密相连的,从而形成一种高速的一体化和关联性,无论从哪个角度来看,数控加工程序编制几乎百分百的依赖各种CAD/CAM软件,宏程序在这里的发挥空间是非常有限的。但是,数控加工领域还有很大一片天空是属于机械零件的批量加工,虽然同样是数控加工,它与上述的模具类零件的数控加工还是有着相当大的差别的,机械零件的数控加工主要有以下几个特点:(1)机械零件绝大多数都是批量生产,在保证质量的前提下要求最大限度的提高生产效率以降低生产成本。另外批量零件字加工的几何尺寸精度和形状位置精度要求保证高度的一致性,而加工工艺的优化主要就是程序的优化,是一个反复调整、尝试的过程,这就要求操作者能够非常方便的调整程序中的各项加工参数(如刀具尺寸、刀具补偿值、层降、步距、计算精度、进给速度等),宏程序在这方面就有强大的优越性,只要能用宏程序来表述,操作者就根本无需触动程序本身,而只需要针对各项加工参数所对应得自变量赋值做出个别调整,就能迅速的将程序调整到最优化的状态,这就体现出宏程序的一个突出优点,即一次编程,终身受益。(2)机械零件的形状主要是由于各种凸台、凹槽、圆孔、斜平面、回转面等组成,很少包含不规则的复杂曲面,构成其的几何因素无外乎点、直线、圆弧,最多加上各种二次圆锥曲面(椭圆、抛物线、双曲线),以及一些渐开线(常应用于齿轮及凸轮等),所有这些都是基于三角函数,解析几何的应用,而数学上都可以用三角函数表达式及参数方程加以表述,因此宏程序在此有广泛的应用空间,可以发挥其强大的作用。(3)机械零件还有一些很特殊的应用,即使采用CAD/CAM软件也不一定能轻易地解决,例如变螺距螺纹的加工、用螺旋插补进行锥度螺纹的加工和钻深可变式深孔钻加工等,而在这些方面宏程序却可以发挥它的优势。1.5宏程序与CAD/CAM软件生成程序的加工性能对比只要能够用宏程序完整地表达,即使再复杂,其程序篇幅都非常有限,可以说任何一个比较合理、优化的宏程序,极少会超过60行,换算成字节数,至多不过2kbytes。一方面,宏程序天生短小精悍,即使是最廉价的机床数控系统,其内部程序存储空间再小也会有个10kbytes左右,完全容纳得下任何“庞大”的宏程序,因此根本无需考虑机床与外部电脑的传输速度对实际加工速度的影响。另一方面,为了对复杂的加工运动进行描述,宏程序必然会最大限度地使用数控系统内部的各种指令代码,例如直线插补G01指令、圆弧(螺旋)插补G02/G03指令等,因此机床在执行宏程序时,数控系统的计算机可以直接进行插补运算,运算速度极快,伺服电机响应快,机床反应迅速,加工效率极高。而对于CAD/CAM软件生成的程序,情况则要复杂得多首先,CAD/CAM软件生成的程序通常都比较大,非常容易就突破机床数控系统内部程序存储空间的限制,因此一般来说除了相对简单的孔系加工、二维轮廓或口袋加工以外,其余绝大部分程序都不得不以DNC方式进行在线加工,显然机床与电脑之间的传输速度成为了影响加工速度的第一个“瓶颈”因素。当计算精度较高、进给速度F值又较大(如F1800~F2500)时,程序传输速度往往还是跟不上机床的节拍,在实际加工中可以看到机床的进给运动有明显的断续、迟滞,对于Fanuc系统,即使打开DNC缓冲,或设置G51.1参数,也难以有大的改观。其次,在CAD/CAM软件中,无论构造规则或不规则的曲面,都有一个数学运算的过程,也必然存在着计算的误差和处理,而在对其生成三维加工刀路时,软件是根据你选择的加工方式、设定的加工参数,并结合所设定的加工误差(或称为曲面的计算精度),使刀具与加工表面接触点(相交点或相切点)逐点移动完成加工,从本质上看,其实就是在允许的误差值范围内沿每条路径用直线去逼近曲面的过程!第二章宏程序的变量和数学基础的应用2.1宏程序基本变量普通加工程序直接用指定G代码和移动距离;例如G01和X100.使用用户宏程序是,数值可以直接指定或变量指定。当用变量时,变量值可以用程序或用MDI面板上的操作改变。如#1=#2+100G01X#1F300变量的表示计算机允许使用变量名,用户宏程序不行。变量用变量符号(#)和后面的变量号指定。例如:#1表达式可以用于指定变量号。此时,表达式必须封闭在括号中。例如:#[#1+#2-12](2)变量值的范围局部变量和公共变量可以有0值或下面范围中的值:-1047到-10-19或-10-2到-1047范围。如果计算范围超出有效范围,则发出P/S报警NO.111。小数点的省略当在程序中定义变量值时,小数点可以省略。例:当定义#1=123;变量#1的实际值时123.000。变量的引用[1]为在程序中使用变量值,指定后跟变量号的地址。当用表达式指定变量时,要把表达式放在括号中。例如:G01X[#1+#2]F#3[2]被引用变量的值根据地址的最小设定单位自动地舍入。例如:当G00X#1;以1/1000mm的单位执行时,CNC把123456赋值给变量#1,实际指令值为G00X123456[3]改变引用变量的值的符号,要把负号(-)放在#的前面。例如:G00X-#1[4]当引用未定义的变量时,G00X#1Y#2的执行结果G00X0。2.2双轨迹的公共变量对双轨迹控制,系统为每一轨迹都是提供了单位的宏变量,但是,根据参数N0.6036和6037的设定,某些公共变量可同时用于两个轨迹。未定义的变量当变量值未定义时,这样的变量成为空变量。变量#0总是空变量。它不能写,只能读。[1]引用:当引用一个未定义的变量时,地址本身也被忽略。[2]运算:除了用赋值以外,其余情况下与0相同。[3]条件表达式:EQ和NE中的<空>不同于0。限制程序号,顺序号和任选程序段跳转不能使用变量。例:下面情况不能使用变量:0#1;/#G00X100.0;N#3Y200.0;2.3算术和逻辑运算线面运算可在变量中执行运算表达式可包含常量和由函数或运算符组成的变量。表达式中的变量#j#k可以用常数赋值。(1)常用变量#i=#j【加】#i=#j+#k【减】#i=#j-#k【乘】#i=#j*#k【除】#i=#j/#k(2)角度单位为度【正弦】#i=sin[#j]【余弦】#i=cos[#j]【正切】#i=tan[#j]【反正切】#i=atan[#j](3)函数【平方根】#i=sqrt[#j]【绝对值】#i=abs[#j]【四舍五入圆整】#i=round[#j]【舍入】#i=round[#j]【上取整】#i=fin[#j]【下取整】#i=fup[#j]【自然对数】#i=ln[#j]【指数函数】#i=exp[#j](4)逻辑变量逻辑运算对二进制数逐位进行【或】#i=#jor#k【异或】#i=#jxor#k【与】#i=#jand#k(5)运算符 EQ 等NE 不等于GT 大于GE 大于或等于LT 小于LE小于或等于1.说明
1)角度单位为度
例:90度30分为90.5度
2)ATAN函数后的两个边长要用“1”隔开
例:#1=ATAN[1]/[-1]时,#1为了35.0
3)ROUND用于语句中的地址,按各地址的最小设定单位进行四舍五入
例:设#1=1.2345,#2=2.3456,设定单位1μm
G91X-#1;X-1.235
X-#2F300;X-2.346
X[#1+#2];X3.580
未返回原处,应改为X[ROUND[#1]+ROUND[#2]];
4)取整后的绝对值比原值大为上取整,反之为下取整
例:设#1=1.2,#2=-1.2时
若#3=FUP[#1]时,则#3=2.0
若#3=FIX[#1]时,则#3=1.0
若#3=FUP[#2]时,则#3=-2.0
若#3=FIX[#2]时,则#3=-1.0
5)指令函数时,可只写开头2个字母
例:ROUND→RO
FIX→FI
6)优先级
函数→乘除(*,1,AND)→加减(+,-,OR,XOR)
例:#1=#2+#3*SIN[#4];
7)括号为中括号,最多5重,园括号用于注释语句
例:#1=SIN[[[#2+#3]*#4+#5]*#6];(3重)2.4宏程序的控制指令在宏程序中,有三种转移和循环操作可供使用。(1)无条件转移(GOTO语句)语句格式为:GOTOn其中n为顺序号(1—9999),可用变量表示。例如:GOTO1;GOTO#10;(2)条件转移(IF语句)语句格式为:IF[条件式]GOTOn条件式成立时,从顺序号为n的程序段开始执行;条件式不成立时,执行下一个程序段。条件式有以下几类:#jEQ#KEQ等于#jNE#KNE不等于#jGT#KGT大于#jLT#KLT小于#jGE#KGE大于等于#jLE#KLE小于等于条件式中变量#J或#K可以是常量也可以是表达式,条件式必须用括弧括起来。下面的程序可以得到1到10的和:O7100#1=0#2=1N1IF[#2GT10]GOTO2#1=#1+#2#2=#2+1GOTO1N2M30(3)循环语句(WHILE语句)语句格式为:WHILE[条件式]DOm(m=1,2,3)…ENDm如右图所示:当条件语句成立时,程序执行从DOm到ENDm之间的程序段;如果条件不成立,则执行ENDm之后的程序段。DO和END后的数字是用于表明循环执行范围的识别号。可以使用数字1,2和3,如果是其他数字,系统会产生报警。DO—END循环能够按需执行多次。如下例所示:上面的O7100程序也可以用WHILE语句编制如下:O7200#1=0#2=1WHILE[#2LE10]DO1#1=#1+#2#2=#2+1END1M302.5FANUC-0i刀具补偿值的系统变量(1)系统变量用于读和写NC内部数据例如刀具偏置值和当前位置数据,但是某些系统变量只能读。系统变量是自动控制和通用加工程序开发的基础,是可编程机床控制器PMC和用户宏程序之间交换的信号。接口信号的系统变量变量号功能#1000;#1015;#1032;把16位信号从PMC送到用户宏程序变量#1000,到#1015用于按位读取信号变量#1032用于一次。读取一个16位信号。#1100#1115#1132把16位信号从用户宏程序送到PMC变量#1100,到#1115用于按位写信号变量#1132用于一次写。一个16位信号#1133变量#1133用于从用户宏程序一次写一个32位的信号到PMC。注意#1133的值为从99999999到+99999999,详细情况请见连接说明书B-63503C-1,用系统变量可以读和写刀具补偿值。(2)刀具补偿存储器C的系统变量刀具长度补偿H刀具半径补偿D补偿;几何补偿磨损补偿几何补偿磨损补偿当偏置组数小于等于200时也可使用#2001#24002.6宏程序报警、停止和信息显示、时间信息变量(1)宏程序报警的系统变量变量号功能#3000当变量#3000的值为0200时CNC停止运行,且报警。在表达式后为不超过26个字符的报警信息;CRT屏幕上显示报警号和报警信息其中报警号为变量#3000的值加上3000。例#3000=1TOOLNOTFOUND报警屏幕上显示3001TOOLNOTFOUND刀具未找到程序执行停止并显示信息报警号功能。#3006在宏程序中指令#3006=1MESSAGE时程序执行前面程序段并停止。当最多到26个字符的信息由控制输入和控制输出括住在同一程序段中编程时,信息被显示在外部操作信息屏幕,时间信息可以读和写。(2)时间信息的系统变量变量号功能#3001该变量为一个计时器以1毫秒为计时单位,当电源接通时该变量值复位为0当达到2147483648毫秒时该计时器的值返回到0。#3002该变量为一个计时器当循环起动灯亮时以一小时为单位计时该计时器即使在电源断电时,也保存该值当达到9544.371767小时,该计时器的值返回到0。#3011该变量用于读取当前的曰期年/月/曰年/月/曰信息转换成十进制数。例如:1994年9月8曰表示为19940928。#3012该变量用于读取当前的时间时/分/秒时/分/秒信息转换成十进制数。例如:下午3点34分56秒表示为153456。2.7自动运行控制可以改变自动运行的控制状态的变量自动运行控制的系统变量#3003#3003单程序段辅助功能的完成0有效等待1无效等待2有效不等待3无效不等待当电源接通时该变量的值为0当单程序段停止无效时,即使单程序段开关设为ON也不执行单程序段停止,当不指定等待辅助功能MS和T功能完成时,在辅助功能完成之前,程序执行到下列程序段而且分配完成信号DEN不输出自动运行控制的系统变量#3004#3004进给暂停进给速度倍率准确停止0有效有效有效1无效有效有效2有效无效有效3无效无效有效4有效有效无效5无效有效无效6有效无效无效7无效无效无效当电源接通时该变量的值为0当进给暂停无效时1当进给暂停按钮被按下时,机床在单段停止方式停止,但是当用变量#3003使单程序段方式无效时单程序段停止不执行。2当进给暂停按钮压下又松开时,进给暂停灯亮,但是机床不停止程序继续执行,并且机床停在进给暂停有效的第一个程序段,当进给速度倍率无效时总是100%的倍率而不管机床操作面板上的进给速度倍率开关的设置。第三章非圆曲线宏程序加工工艺机械加工中常有由复杂曲线所构成的非圆曲线(如椭圆曲线、抛物线、双曲线和渐开线等)零件,随着工业产品性能要求的不断提高,非圆曲线零件的作用就日益重要,其加工质量往往成为生产制造的关键。数控机床的数控系统一般只具有直线插补和圆弧插补功能,非圆曲线形状的工件在数控车削中属于较复杂的零件类别,一般运用拟合法来进行加工。而此类方法的特点是根据零件图纸的形状误差要求,把曲线用许多小段的直线来代替,根据零件图纸的形状误差,如果要求高,直线的段数就多,虽然可以凭借CAD软件来计算节点的坐标,但是节点太多也导致了加工中的不方便,如果能灵活运用宏程序,则可以方便简捷地进行编程,从而提高加工效率。3.1、非圆曲线宏程序的使用步骤选定自变量。非圆曲线中的X和Z坐标均可以被定义成为自变量,一般情况下会选择变化范围大的一个作为自变量,并且要考虑函数表达式在宏程序中书写的简便,为方便起见,我们事先把与Z坐标相关的变量设为#100、#101,将X坐标相关的变量设为#200、#201等。(2)确定自变量起止点的坐标值。必须要明确该坐标值的坐标系是相对于非圆曲线自身的坐标系,其起点坐标为自变量的初始值,终点坐标为自变量的终止值。(3)进行函数变换,确定因变量相对于自变量的宏表达式。(4)确定公式曲线自身坐标系的原点相对于工件原点的代数偏移量(△X和△Z)。(5)计算工件坐标系下的非圆曲线上各点的X坐标值(#201)时,判别宏变量#200的正负号。以编程轮廓中的公式曲线自身坐标原点为原点,绘制对应的曲线坐标系的X′和Z′坐标轴,以其Z′坐标为分界线,将轮廓分为正负两种轮廓,编程轮廓在X′正方向称为正轮廓,编程轮廓在X′负方向为负轮廓。如果编程中使用的公式曲线是正轮廓,则在计算工件坐标系下的X坐标值(#201)时,宏变量#200的前面应冠以正号;如公式曲线是负轮廓,则宏变量#200的前面应冠以负号,即#201=±#200+△X。(6)设计非圆曲线宏程序的模板。设Z坐标为自变量#100,X坐标为因变量#200,自变量步长为△w,△X为曲线本身坐标系原点在工件坐标系下X方向偏移量,△Z为曲线本身坐标系原点在工件坐标系下Z方向偏移量,则公式曲线段的加工程序宏指令编程模板如下。#100=Z1(定义自变量的起点Z坐标)WHILE[#100GEZ2]DO1(加工控制)#200=f(#100)(建立自变量与因变量函数关系式)#201=±#200+△X(计算曲线上点在加工坐标系的X坐标)#101=#100+△Z(计算曲线上点在加工坐标系的Z坐标)G01X[2*#201]Z[#101]F(曲线加工)#100=#100-△w(自变量减小一个步距)END1(加工结束)3.2、非圆曲线宏程序的具体应用实例运用以上非圆曲线宏程序模板,就可以快速准确实现零件公式曲线轮廓的编程和加工。下面介绍一个具体应用示例。加工图1所示椭圆轮廓,棒料Φ45,编程零点放在工件右端面。图1分析零件尺寸,确定正负轮廓及代数偏移量(△X和△Z)。由图1可知,该图中的椭圆曲线为凸状,编程轮廓在X′轴正方向为正轮廓,在计算工件坐标系下的X坐标值(#3、#201)时,宏变量#200的前面应冠以正号,公式曲线自身坐标系的原点相对于工件原点的偏移量为(X0,Z-60)。(2)零件的外轮廓粗精加工参考程序如下(粗加工用直角方程,精加工用极坐标方程)。O9988G98S700M3;T0101;G00X41Z2;G01Z-100F150;(粗加工开始)G00X42;Z2;#1=20*20*4;(4a2)#2=60;(b)#3=35;(X初值(直径值))WHILE[#3GE0]DO1;(粗加工控制)#100=#2*SQRT[1-#3*#3/#1];(Z)#101=#100-60+0.2G00X[#3+1];(进刀)G01Z[#101]F150;(切削)G00U1;(退刀)Z2;(返回)#3=#3-4;(下一刀切削直径)END1;#10=0.8;(X向精加工余量)#11=0.1;(Z向精加工余量)WHILE[#10GE0]DO1;(半精、精加工控制)G00X0S800;(进刀,准备精加工)#20=0;(角度初值)WHILE[#20LE90]DO2;(曲线加工范围)#200=2*20*SIN[#20];(X)#201=#200+#10#100=60*COS[#20];(Z)#101=#100+#11-60;G01X[#201]Z[#101]F100;(曲线精加工)#20=#20+1;END2;G01Z-100;G00X45Z2;#10=#10-0.8;#11=#11-0.1;END1;G0X100Z200;M30;3.3用户宏程序应用举例例:用宏程序和子程序功能顺序加工圆周等分孔。设圆心在O点,它在机床坐标系中的坐标为(X0,Y0),在半径为r的圆周上均匀地钻几个等分孔,起始角度为α,孔数为n。以零件上表面为Z向零点。见图3.3。使用以下保持型变量:
#502:半径r;
#503:起始角度α;
#504:孔数n,当n>0时,按逆时针方向加工,当n<0时,按顺时针方向加工;
#505:孔底Z坐标值;
#506:R平面Z坐标值;
#507:F进给量。
#100:表示第i步钻第i孔的记数器;图3.3
#101:记数器的最终值(为n的绝对值);
#102:第i个孔的角度位置θi的值;
#103:第i个孔的X坐标值;
#104:第i个孔的Y坐标值;
用用户宏程序编制的钻孔子程序如下:
O9010
N110G65H01P#100Q0#100=0
N120G65H22P#101Q#504#101=│#504│
N130G65H04P#102Q#100R360#102=#100×360o
N140G65H05P#102Q#102R#504#102=#102/#504
N150G65H02P#102Q#503R#102#102=#503+#102孔角度位置θi=α+(360o×i)/n
N160G65H32P#103Q#502R#102#103=#502×COS(#102)当前孔的X坐标
N170G65H31P#104Q#502R#102#104=#502×SIN(#102)当前孔的Y坐标
N180G90G00X#103Y#104定位到当前孔(返回开始平面)
N190G00Z#506快速进到R平面
N200G01Z#505F#507加工当前孔
N210G00Z#506快速退到R平面
N220G65H02P#100Q#100R1#100=#100+1孔计数
N230G65H84P-130Q#100R#101当#100<#101时,向上返回到130程序段
N240M99子程序结束调用上述子程序的主程序如下:
O0010
N10G54G90G00X0Y0Z20进入加工坐标系
N20M98P9010调用钻孔子程序,加工圆周等分孔
N30Z20抬刀
N40G00G90X0Y0返回加工坐标系零点
N50M30程序结束
设置G54:X=-400,Y=-100,Z=-50。
变量#500~#507可在程序中赋值,也可由MDI方式设定。第四章宏程序编程实例4.1编程实例用数控车床完成如图4—2所示零件的加工。零件材料为45钢,毛坯为图(a):Ф50×100,图(b):Ф50×52,按图样要求完成零件节点、基点要求,设定工件坐标系,制定正确的工艺方案,选择合理的刀具的切削工艺参数,编制数控加工程序。如图4—2所示:图4—24.2加工实例的工艺分析(1)打孔Ф28×52(2)保证右端能正好或超过椭圆与直线的交点,用G71粗加工2右端,用G70精加工工件右端(3)用用G71粗加工图图(b)里端1:10的锥度,用G70精加工工件里端1:10的锥度(4)掉头保证长度50(5)加工椭圆的一部分,并留1mm余量(6)用G76螺纹复合循环加工M30×1.5内螺纹(7)粗车图(a)右端外部椭圆,留双边1mm的余量(8)将图(a)旋入图(b),精加工椭圆。4.3数控车宏程序编程加工图4—2的加工程序:先加工如图(a)所示零件,在加工如图(b)所示零件。技术要求:(1)锐角倒角C0.3;(2)未注倒角C1;(3)圆弧过渡光滑;(4)未注尺寸和公差按GB/T1084-m12加工和检验。图(b)FANUC—0i系统参考程序:图(b)O0001主程序名N05G97GN10M03S400F40主轴正转,转速400r/minN15T0202换2号内孔车刀N20G00X34Z4进给到内径粗车循环起刀点N25G71U1R1内径粗车循环U:单边切深1mm.R退刀量单边1mmN30G71P35Q60U0.5W0.1F80U:精加工余量双边0.5N35G01X38内径的起点N40G01Z0N45G01X36Z-1倒角N50X33Z-30N55X30.2Z-31.5N60Z-51N35-N60内径循环轮廓程序N65G00X100N70Z50退刀N75T0202N80M03S1200F20设定精加工主轴转速1200r/minN85G70P35Q60精加工程序段N86G00X100Z100退刀N87T0101 换1号930菱形外圆车刀N88M03S800F80主轴正转,转速800r/minN90G00X52Z4进给到外径粗车循环起刀点N95G71U1R1外径粗车循环U:单边切深1mm.R退刀量单边1mmN100G71P105Q120U0.5W0.1F80W:精加工余量0.1N105G00X45外径的起刀点N110G01Z0N115X48Z-1.5倒角N120Z-36N125G00X100Z50退刀N130T0101N140M03S1200F50精加工的转速,进给速度50mm/minN145G70P105Q120P105:精加工第一程序段号。P120精加工最后程序段号。N150G00X100Z100退刀N155M30程序的停止掉头加工螺纹:O0002主程序名N05G97GN10T0202换2号600的内螺纹刀N15M03S400转速400r/minN20G00X28Z6进给到内螺纹复合循环起到点N25G76P020060Q50R0.1P020060:02精加工次数2次;00螺纹尾端的倒角量为0;60刀尖角度。Q螺纹最小被吃刀量为0.05mm。R:精加工余量0.1mm。N30G76X31.86Z-23R0P0.93Q350F1.5X:有效螺纹终点X坐标;Z:有效螺纹终点Z坐标。R:螺纹半径差。P:螺纹牙高单边0.93mmQ:第一次被吃刀量单边0.35mmF:螺纹导程1.5mm。N35G00X150Z150退刀M30程序停止图(b)右端的的椭圆:O0003主程序名N05G97GN10T0101换1号930菱形外圆车刀N15M03S600F40主轴正转转速600r/min,进给速度40mm/minN20G00X36Z12快进N25#150=43设置到达的最高点43mmN30IF[#150LT1]GOTO70到达最高点小于1mm跳转到N70N35#1=0Z轴步距的起点N40#2=24*[SIN#1]+36在切削过程中X坐标N45#3=40*[COS#1]-28在切削过程中Z坐标N50G01X#2Z#3刀具所走的轨迹#1=#1+0.5Z轴步距,每次0.5N55IF[#1LT90]GOTO40Z轴步距小于90度跳转到N40N60#150=#150-2每次被吃刀量双边2mmN65GOTO30跳转到N30N70G00X100Z100退刀M30程序停止FANUC—0i系统参考程序:图(a)图(a)技术要求:(1)锐角倒角C0.3;(2)未注倒角C1;(3)圆弧过渡光滑;(4)未注尺寸和公差按GB/T1084-m12加工和检验。图(a)左端加工程序:O0004主程序名N05G97GN10T0101换1号930菱形外圆车刀N15M03S600F50主轴正转转速600r/min,进给速度50mm/minN20G00X51Z2进给到外径粗车循环起刀点N25G71U1R1外径粗车循环U:单边切深1mm.R退刀量单边1mmN30G71P35Q60U0.3W0.3F50U:精加工余量双边0.3。W:精加工余量0.3。进给速度50mm/minN35G00X42快进N40G01Z0F70N45X44Z-1倒角N50Z-20N55X47X48Z-20.50.5mm的倒钝N60Z-50N65M03S1200精加工的转速1200r/minG70P35Q60F40P35:精加工第一程序段号。P60:精加工最后程序段号F:进给速度50mm/minN75G00X100Z100退刀T0202换2号内孔车刀N80M03S500F50主轴正转转速500r/min,进给速度50mm/minN85G00X18Z3粗车内螺纹起点N90G71U1R1内径粗车循环U:单边切深1mm.R退刀量单边1mmN95G71P100Q120U0.3W0.3F50U:精加工余量双边0.3。W:精加工余量0.3。进给速度50mm/min。P:粗加工程序首段Q:程序粗加工末段N100G00X28.17N105G01Z0F40N110G02X24Z-10R25车半径25mm的圆弧N115G01Z-20N120X18N125M03S600精加工转速600r/minN130G70P100Q120F30P:粗加工程序首段Q:程序粗加工末段进给速度30mm/minN136G00X100Z100退刀M30主轴停止,程序停止。图(a)右端加工程序:O0005主程序段号N05G97GN10T0101换1号930菱形外圆车刀N15M03S600F70主轴正转转速600r/min,进给速度70mm/minN20G00X51Z2进给到外径粗车循环起刀点N25G71U1R1外径粗车循环U:单边切深1mm.R退刀量单边1mmN30G71P35Q80U0.3W0.3F70U:精加工余量双边0.3。W:精加工余量0.3。P:粗加工程序首段Q:程序粗加工末段N35G00X0N40G01Z0F70N45G03X17.32Z-5R10半径为10mm的圆N50G01X21N55X23Z-6倒角N60Z-12N65X28N70X29.7Z-13倒角N75Z-32N80X52N85M03S1200精加工转速600r/minN90G70P35Q80F40P70:精加工最后程序段号F:进给速度40mm/minN95G00X100Z100退刀T0303换3号5mm宽的割槽刀N100G00Z-32进给到所割的Z坐标N105G00X52进给到所割的X坐标N110G01X26F20割槽进给速度20mm/minN115G01X52N120G00X100退刀N125Z100T0404换4号600的外螺纹刀N130M03S300主轴正转转速300r/minN135G00X32Z-2进给到内螺纹复合循环起到点N140G76P020060Q50R0.1P020060:02精加工次数2次;00螺纹尾端的倒角量为0;60刀尖角度。Q螺纹最小N145G76X27.8Z-30R0P0.93Q350F1.5X:有效螺纹终点X坐标;Z:有效螺纹终点Z坐标。R:螺纹半径差。P:螺纹牙高单边0.93mmQ:第一次被吃刀量单边0.35mmF:螺纹导程1.5mm。N150G00X100Z100退刀N155M30程序停止图(a)左端的椭圆:O0006主程序段号N05G97GN10T0101换1号930菱形外圆车刀N15M03S600F40主轴正转转速600r/min,进给速度40mm/minN20G00X42Z-4快进N25#150=9设置最大切削深度9mmN30IF[#150LT1]GOTO70到达最大切削深度小于1mm跳转到N70N35#1=0Z轴步距的起点N40#2=24*[SIN#1]+42在切削过程中X坐标N45#3=40*[COS#1]-44在切削过程中Z坐标N50G01X#2Z#3刀具所走的轨迹#1=#1-0.5Z轴步距,每次0.5N55IF[#1LT-150]GOTO40Z轴步距小于150度跳转
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 时尚潮流商场鞋帽区品牌联合营销协议
- 餐饮学员合同协议书
- 铁路周围安全协议书
- 车辆承包保管协议书
- 酒店销售bd协议书
- 香烟饮料转让协议书
- 东营联通5g协议书
- 首钢矿业岗位协议书
- 闲置花卉转让协议书
- 农业灌溉放水员协议书
- 陕西省2024年普通高中学业水平合格性考试语文试卷(含答案)
- 《湖南省博物馆调研》课件
- 部编版四年级下册《道德与法治》全册教案(附教学计划及教学进度表)
- 武汉市2025届高中毕业生二月调模拟卷试题
- 高级英语I(下)-华东理工大学知到智慧树章节测试课后答案2024年秋华东理工大学
- 《东方物探HSE管理》课件
- 江苏省南通市(2024年-2025年小学六年级语文)统编版期末考试(下学期)试卷及答案
- 外科主治医师资格考试(专业代码317)历年真题及答案
- 2024年新疆维吾尔自治区中考英语真题含解析
- 电气接地培训课件
- 贵州省2025届高考英语二模试卷含解析
评论
0/150
提交评论