APP下载

基于DXF文件的G代码自动生成系统的设计与实现

2016-02-07王睿苏李黄春雨祝勇

关键词:走刀圆弧起点

王睿,苏李,黄春雨,祝勇

(1.长春理工大学计算机科学与技术学院,长春 130012;2.吉林省教育学院职业与成人教育培训学院,长春 130021)

基于DXF文件的G代码自动生成系统的设计与实现

王睿1,苏李2,黄春雨1,祝勇1

(1.长春理工大学计算机科学与技术学院,长春 130012;2.吉林省教育学院职业与成人教育培训学院,长春 130021)

设计了基于DXF文件的G代码自动生成仿真系统,该系统可以对现代数控机床多通道多轴的复杂工况进行相关的参数设定,可以自动对DXF文件进行分析实体排序,生成加工轮廓信息,通过直线插补算法直接生成G01代码,编程效率得到极大的提升,也相应的提高了机床利用率及加工效率。

DXF文件;仿真系统;自动编程

G代码自动生成仿真系统,通过读取DXF文件中的工件加工轨迹,数控仿真软件对加工参数进行设置,计算机根据工件的轮廓信息进行运算,并实时显示轨迹的加工过程,这个过程精度高、速度快且人机交互,流程设计简洁,图形交互式自动编程软件已经成为数控机床加工的未来趋势。

1 DXF文件概述

DXF文件作为AUTOCAD与其它软件进行数据交换的数据文件格式,已经成为行业标准。DXF文件由文件段和结束符标志构成,文件段分为文件头段、类段、表段、块段、实体段和对象段六段构成,其中实体段储存了DXF文件中图元的相关参数,所以本文只对DXF文件的实体段进行解析[1-2]。

DXF文件实体段数据解析[4]

0ENTITIES段的开始SECTION2

ENTITIES0每个图元定义一个条目<图元类型>5

<句柄>330

<指向所有者的指针>100

AcDbEntity8

<图层>100

AcDb<类名>

<数据>.

0ENTITIES段的结束

ENDSEC

2 实体排序与插补算法

由于在读取DXF文件中图元的读取顺序具有一定的随机性,在多通道多轨迹加工路径中要确定哪些图元属于同一加工轨迹,必须对其进行排序并合并成一条轨迹信息,本系统中只考虑直线和圆弧两种图元,通过DXF文件可以直接读取直线的起点和终点坐标,圆弧为圆心坐标、半径、起点角度、端点角度,实体排序的过程如下:

首先获取实体的起始坐标点,如果实体为圆弧则首先通过计算获得其两个端点坐标信息,算法不考虑封闭实体以及无法记性直线你和的实体,递归进行起点坐标和终点坐标比对,如果发现两个实体的起点坐标或者终点坐标相同,则根据两个实体的横坐标大小进行实体合并,如无重合坐标点则设定为独立实体,通过递归算法对所有实体进行合并操作,得到相应的加工轨迹信息,根据不同的道具类型生成基于刀具的加工轨迹。

图1 实体排序流程图

得到实体排序后的加工轨迹后,本系统全部采用直线插补G01对实体进行插补,由于轨迹中实体均为直线和圆弧,需对直线和圆弧进行直线拟合,拟合算法如下:

直线拟合算法:

在DXF文件中可以直接读取直线的起点坐标和终点坐标,设起点坐标为(x,y),终点坐标为(x1,y2),步长为d,则直接输出插补坐标(a,b)斜率为k,以直线的起点坐标为起点进行计算,len为直线长度,当len>d时,

计算出第一个输出坐标点后,将输出坐标点设为直线起点坐标直到当len<d时直接输出直线的终点坐标。

a=x1;

b=x2;

圆弧拟合算法

设圆弧的圆点坐标为(x,y),圆弧半径为r,起点角度为bangle,端点角度为eangle,步长为d,输出插补坐标(a,b)首先将步长转换为相应的角度∂=d/r,计算圆弧的起点坐标,

起点坐标计算完成之后根据起点坐标进行圆弧的直线拟合,根据角度步长进行拟合的坐标如下:

同理将起点与端点坐标进行置换,计算过程中需要对起点角度和端点角度进行判断和分别分析。计算中实时计算差补角度,若差补角度小于∂则直接输出圆弧的端点坐标,此次加工G代码输出完成。

3 系统的设计

本系统根据数控机床的加工要求分为DXF文件读取参数设定以及加工仿真3个模块。

DXF文件的读取,读取DXF文件的有效信息,并进行排序与直线差补拟合,并不能直接生成G代码,还需要对工件加工的参数进行设定,在加工之前需要确定工件的加工方向,由于圆弧的拟合方向原因,不同的走刀方向生成的加工轨迹将完全不同[3-5]。

数控机床包括多轴多通道加工,需要根据工件的加工要求设定机床的工作通道数,方便工程师直接将全部加工轨迹绘制在DXF文件中,可以直接在系统中选择加工轨迹,设定加工轨迹颜色,根据不同机床对工作轴的特殊要求,修改工作轴。

其中包括走刀方向、通道选择、差补步长、刀具半径,要模拟走刀过程还需要对轨迹线进行,重新绘制道具轨迹线,本系统按照实际操作过程流程设计出科学易用的人机交互界面,符合操作习惯,左侧为参数设置区域,右侧为仿真显示与G代码生成与编辑区域。系统操作流程如图2所示:

4 系统运行

使用AUTOCAD制作了包含圆弧和直线的测试轨迹图纸,将测试文件导入系统中系统显示了DXF文件中的全部三条轨迹线并进行实体排序如下图所示

图2 系统操作流程

图3 走刀路径

选择走刀方向后,系统直接对走刀路径进行规划,规划后路径如下图所示:

图4 规划后走刀路径

按照规划后路径直接即可生成相关路径的G01代码,本测试采用4轴3轨迹线,工作轴名称可以根据实际情况自行设定,本文设定4轴分别为Z,A,B,C轴,通过观察加工轨迹以及生成G01代码数据的变化可以看到系统自动完成了规划轨迹后的G代码生成,同时要为数控机床添加其他控制信息可以在输出过程中直接输出

图5 部分走刀路径G代码

在文本文件中可以看到不同工作轴的拟合路径变化,该方法按照设定的拟合参数对加工路径进行了拟合,且精度可继续提高。

5 结论

通过分析DXF文件结构,提取文件的实体信息进行实体排序,实时显示DXF文件轨迹信息,将由圆弧和直线构成的加工轨迹信息进行直线拟合,完成拟合后曲线的G01代码输出,代替手工编程,有效的提高了编程效率和加工精确度。由于直线拟合的限制并为对其他类型的实体进行G代码生成,在后续研究将进行深入探讨。

[1]陈艳巧,陈秀云,王俊杰.浅谈数控编程方法和学习技巧[J].装备制造技术,2011(03):180-181.

[2]廖友军,余金伟,王恒升.基于特征识别的数控车床自动编程系统研究[J].机械科学与技术,2008,27(4):533-536.

[3]李晶晶,侯伯杰,卢小勇.数控加工过程计算机仿真软件设计[J].郑州工业大学学报,2000,21(4):91-92.

[4]胡胜红.使用VC++编程实现DXF文件数据提取[J].福建电脑,2006(11):21-25.

[5]王子茹,任清波.基于VC++的DXF数据文件接口的研究[J].厦门理工学院学报,2007,15(1):27-30.

Design and Realization of the System to Automatically Generate G-code Based DXF Files

WANG Rui1,SU Li2,HUANG Chunyu1,ZHU Yong1
(1.School of Computer Science and Technology,Changchun University of Science and Technology,Changchun 130022;2.Jilin Provincial Institute of Education,Institute of Vocatinal and Adult Education Reseatch Training,Changchun 130021)

Designed to automatically generate G-code simulation system based DXF files,The system can be modern multi-channel multi-axis CNC machine tools of complex conditions related parameter settings,The automatic DXF file for analysis to sort entity,Generates contour information,Generate G01 code directly by linear interpolation algorithm,Programming efficiency greatly improved,Also a corresponding increase machine utilization and processing efficiency.

DXF file;simulation system;automatic programming

TP3-05

A

1672-9870(2016)06-0122-03

2016-07-11

王睿(1983-),男,博士,讲师,E-mail:wangrui56789@163.com

猜你喜欢

走刀圆弧起点
浅析圆弧段高大模板支撑体系设计与应用
数控多轮廓加工走刀空行程路径优化研究
外圆弧面铣削刀具
弄清楚“起点”前面有多少
起点
我的“新”起点
六圆弧齿廓螺旋齿轮及其啮合特性
数控车编程指令研究
新年的起点
等截面圆弧无铰板拱技术状况评价