一种用于处理模具精加工加工余量的自动编程方法技术

技术编号:22847433 阅读:90 留言:0更新日期:2019-12-17 22:58
本发明专利技术提供一种用于处理模具精加工加工余量的自动编程方法,包括以下步骤:1、把加工程序以G代码的形式,另存为TXT格式;2、读取加工程序TXT文档的数据;3、其按顺序提取加工程序文档中的一行数据,将信息分类整合;4、判断步骤3中提取的数据是否需要修正,若需要修正,则跳到步骤5,否则跳到步骤7;5、获取加工余量的大小及其矢量方向;6、根据加工余量的大小及其矢量方向,对加工G代码进行修正,并输出新的G代码;7、将剩余的加工G代码直接输出至文本窗口,并提取加工程序TXT文档中的下一行数据,若该行为最后一行,自动编程中的G代码修改部分结束,否则跳回步骤3;本发明专利技术能提高数控编程的效率,同时降低出错率。

An automatic programming method for machining allowance of die finishing

【技术实现步骤摘要】
一种用于处理模具精加工加工余量的自动编程方法
本专利技术属于模具数控编程
,具体涉及一种用于处理模具精加工加工余量的自动编程方法。
技术介绍
数控编程是数控加工准备阶段的主要内容之一,是从零件图纸到获得数控加工程序的全过程;通常包括分析零件图样,确定加工工艺过程;计算走刀轨迹,得出刀位数据;编写数控加工程序;制作控制介质;校对程序及首件试切。数控编程分为手工编程和自动编程两种方法。手工编程是编程员直接通过人工完成零件图工艺分析、工艺和数据处理、计算和编写数控程序、输入数控程序到程序验证整个过程的方法。手工编程广泛用于形状简单的点位加工和直线、圆弧组成的平面轮廓加工中。自动编程是一种利用计算机辅助编程技术的方法,它是通过专用的计算机数控编程软件来处理零件的几何信息,实现数控加工刀位点的自动计算。对于几何形状复杂的零件需借助计算机使用规定的数控语言编写零件源程序,经过处理后生成加工程序。加工误差是指被加工工件达到的实际几何参数(尺寸、形状和位置)对设计几何参数的偏离值。在生产实际中,影响加工精度的工艺因素是错综复杂的。由于误差补偿方式的不同,误差补偿又可分为加工误差补偿和原始误差补偿,前者是对零件加工过程中的误差进行补偿,而后者是对造成零件加工误差的误差源进行补偿,本软件采用的是前者。此外针对模具加工中的自动编程问题,国内专家学者进行了大量的研究,具体如下。周祯晖等(周祯晖.基于NX的复杂曲面零件数控加工自动编程[J].科技资讯,2017(50):50-52.)以复杂曲面零件为研究对象,基于NX_CAM模块,对数控加工自动编程中的刀具选择、加工参数设置、刀轨生成及校验、后置处理等一系列关键环节进行了研究,以为数控加工自动编程技术的实施提供了参考。孙先成等(孙先成,邹阳等.自由轮廓曲面铣削加工的表面尺寸误差补偿[J].机械设计与制造2018(11):124-127.)针对自由轮廓曲面铣削加工,提出了一种补偿加工中由于刀具变形引起的表面尺寸误差的方法。徐子文(徐子文.型腔模复杂镶块数控自动编程系统的研究与开发[D].华中科技大学.2017.)以UnigraphicsNX作为编程系统的架构平台,通过其提供的二次开发函数接口,根据系统选用的数控加工工艺方案和操作参数,使用编程语言实现创建加工操作、设置操作参数、生成刀路轨迹、完成后处理等所有编程流程的自动化。以上方法的缺点为:1.针对手动编程方法,对于复杂的零件精加工时所产生的加工余量,特别是具有非圆曲线曲面的加工表面,或者零件的几何形状并不复杂,但是程序编制的工作量很大,或者是需要进行复杂的工艺及工序处理的零件,由于这些零件在编制程序和加工过程中,数值计算非常繁琐,程序量很大,如果采用手工编程往往耗时多、效率低、出错率高,甚至无法完成。2.针对自动编程方法,对于复杂的零件精加工时所产生的加工余量,设计人员首先需要对加工零件模型进行对应余量的修改,再在该模型的基础上利用UG进行自动编程以得到加工程序,结束编程后还需将模型恢复原状,以保证模型的一致性。整个过程进行大量重复操作,耗时多且效率低。3.而针对目前专家学者的研究成果,目前针对模具加工中的自动编程问题,主要是基于基于NX_CAM模块,通过人工或软件编程对模具的3D结构模型进行再编程,最终输出G代码,以达到自动编程的目的。但这类方法由于需要对模具的3D结构模型进行处理,耗时长,效率低。目前急需一种直接对加工程序G代码直接进行处理的自动编程技术。
技术实现思路
针对现有手动编程与自动编程存在的加工效率低、加工成本高的技术问题,本专利技术提供了一种用于处理模具精加工加工余量的自动编程方法,处理模具精加工加工余量的数控编程,其能提高数控编程的效率,同时降低出错率。本专利技术至少通过如下技术方案之一实现。一种用于处理模具精加工加工余量的自动编程方法,包括以下步骤:S1、把加工程序以G代码的形式,另存为TXT格式,形成加工程序TXT文档;S2、建立文件读取函数,读取步骤S1中的加工程序TXT文档的数据;S3、建立提取函数,使其按顺序提取加工程序TXT文档中的一行数据,并将其中信息分类整合;S4、判断步骤S3中提取的数据是否需要修正,若需要修正,则跳到步骤S5,否则跳到步骤S6;S5、获得加工余量的大小及其矢量方向;S6、根据加工余量的大小及其矢量方向,对加工G代码进行修正,并逐步将新的G代码输出至文本窗口;S7、将剩余的加工G代码直接输出至文本窗口,并提取加工程序TXT文档中的下一行数据,若该行为最后一行,自动编程中的G代码修改部分结束,否则跳回步骤S3。S8、新建一个TXT文档并将修改的G代码复制至其中,然后将其重新导入数控机床中对产品进行二次加工,至此,自动编程结束。进一步的,步骤S3具体包括以下步骤:S31、建立文件行读取函数uc4514(intchan,char**cbuf),读取加工程序TXT文档中的一行数据并将其储存进char类型的数组Cbuf[64]中;S32、建立若干个char类型数组,用于储存文档中字符X、Y、Z及X、Y和Z后面数字的字符,分别命名为Cbuf_X[64],Cbuf_Y[64]和Cbuf_Z[64];S33、建立若干个char类型数组,用于储存文档中字符X、Y、Z前面所有的字符,分别命名为temp_X[64],temp_Y[64]和temp_Z[64];S34、建立若干个char类型数组,用于储存文档中字符X、Y、Z后面所有的字符,分别命名为Cbuf_AX[64],Cbuf_AY[64]和Cbuf_AZ[64];S35、建立一个char类型数组作为缓存空间,储存空格后面所有的内容,命名为temp_sapce[64];S36、通过expression0->Value()函数,读取所要修改的余量大小,并储存为double类型,命名为value;S37、通过vector0->Vector()函数,读取所要修改的余量的矢量方向,并储存为Vector3d类型,命名为vector。进一步的,所述的步骤S4中判断步骤S3中提取的数据是否需要修正,具体包括以下步骤:S41、建立bool类型变量key,初始值记为false,当检测到字符G91时,令key=true;当再次检测到G91时,令key=false,如此反复;S42、建立strcat(char*strDestination,constchar*strSource)函数遍历数据的字符,查看该行数据是否存在字符X、Y或Z;若不存在,则不需要修正;若存在,则继续判断key是否为true,若是,则需要进行修正,否则便不需要修正。进一步的,步骤S5具体包括以下步骤:S51、通过expression0->Value()函数,读取所要修改的余量大小,并储存为double类型,命名为value;S52、通过vec本文档来自技高网
...

【技术保护点】
1.一种用于处理模具精加工加工余量的自动编程方法,其特征在于,包括以下步骤:/nS1、把加工程序以G代码的形式,另存为TXT格式,形成加工程序TXT文档;/nS2、建立文件读取函数,读取步骤S1中的加工程序TXT文档的数据;/nS3、建立提取函数,使其按顺序提取加工程序TXT文档中的一行数据,并将其中信息分类整合;/nS4、判断步骤S3中提取的数据是否需要修正,若需要修正,则跳到步骤S5,否则跳到步骤S7;/nS5、获得加工余量的大小及其矢量方向;/nS6、根据加工余量的大小及其矢量方向,对加工G代码进行修正,并逐步将新的G代码输出至文本窗口;/nS7、将剩余的加工G代码直接输出至文本窗口,并提取加工程序TXT文档中的下一行数据,若该行为最后一行,自动编程中的G代码修改部分结束,否则跳回步骤S3;/nS8、新建一个TXT文档并将修改的G代码复制至其中,然后将该TXT文档重新导入数控机床中对产品进行二次加工,至此,自动编程结束。/n

【技术特征摘要】
1.一种用于处理模具精加工加工余量的自动编程方法,其特征在于,包括以下步骤:
S1、把加工程序以G代码的形式,另存为TXT格式,形成加工程序TXT文档;
S2、建立文件读取函数,读取步骤S1中的加工程序TXT文档的数据;
S3、建立提取函数,使其按顺序提取加工程序TXT文档中的一行数据,并将其中信息分类整合;
S4、判断步骤S3中提取的数据是否需要修正,若需要修正,则跳到步骤S5,否则跳到步骤S7;
S5、获得加工余量的大小及其矢量方向;
S6、根据加工余量的大小及其矢量方向,对加工G代码进行修正,并逐步将新的G代码输出至文本窗口;
S7、将剩余的加工G代码直接输出至文本窗口,并提取加工程序TXT文档中的下一行数据,若该行为最后一行,自动编程中的G代码修改部分结束,否则跳回步骤S3;
S8、新建一个TXT文档并将修改的G代码复制至其中,然后将该TXT文档重新导入数控机床中对产品进行二次加工,至此,自动编程结束。


2.如权利要求1所述的一种用于处理模具精加工加工余量的自动编程方法,其特征在于,步骤S3具体包括以下步骤:
S31、建立文件行读取函数uc4514(intchan,char**cbuf),读取加工程序TXT文档中的一行数据并将其储存进char类型的数组Cbuf[64]中;
S32、建立若干个char类型数组,用于储存文档中字符X、Y、Z及X、Y和Z后面数字的字符,分别命名为Cbuf_X[64],Cbuf_Y[64]和Cbuf_Z[64],其中X、Y、Z分别代表三维坐标系的X轴、Y轴和Z轴,其后面的数字分别对应X轴、Y轴和Z轴的坐标值;
S33、建立若干个char类型数组,用于储存文档中字符X、Y、Z前面所有的字符,分别命名为temp_X[64],temp_Y[64]和temp_Z[64];
S34、建立若干个char类型数组,用于储存文档中字符X、Y、Z后面所有的字符,分别命名为Cbuf_AX[64],Cbuf_AY[64]和Cbuf_AZ[64];
S35、建立一个char类型数组作为缓存空间,储存空格后面所有的内容,命名为temp_sapce[64];
S36、通过expression0->Value()函数,读取所要修改的余量大小,并储存为double类型,命名为value;
S37、通过vector0->Vector()函数,读取所要修改的余量的矢量方向,并储存为Vector3d类型,命名为vector。


3.如权利要求1所述的一种用于处理模具精加工加工余量的自动编程方法,其特征在于,所述的步骤S4中判断步骤S3中提取的数据是否需要修正,具体包括以下步骤:
S41、建立bool类型变量key,初始值记为false,当检测到字符G91时,令key=true;当再次检测到G91时,令key=false,如此反复;
S42、建立strcat(char*strDestination,constchar*strSource)函数遍历数据的字符,查看该行数据是否存在字符X、Y或Z;若不存在,则不需要修正;若存在,则继续判断key是否为true,若是,则需要进行修正,否则便不需要修正。


4.如权利要求1所述的一种用于处理模具精加工加工余量的自动编程方法,其...

【专利技术属性】
技术研发人员:夏琴香张心言陈志平叶福缘徐晓
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1