
引言
随着科学技术的发展, 数控机床越来越广泛地应用在机械制造行业中。在数控加工系统中, 传统的NC代码手工编程不仅效率低, 而且容易出错; 而采用 APT语言的自动编程虽然几何定义语句简洁, 功能较强, 但要求编程人员要熟记系统的语言与规则,一旦出错又不易发现。
本数控加工自动编程系统是基于AutoCAD 平台上开发而成的。AutoCAD作为绘图软件在机械设计与制造中应用广泛, 如果数控加工系统能够提取 Auto2CAD中的图形信息, 将会大大简化数控编程, 提高生产效率。但AutoCAD是通过图形来表示零件的几何信息的, 而数控加工系统采用NC 代码手工编程或APT语言自动编程, 二者之间信息的描述是不统一的。本系统正是解决AutoCAD 与数控加工系统的接口问题, 从AutoCAD 图 形中提取几何信息并进行数据转换, 即根据AutoCAD的DXF文件特有的结构, 进行二次开发, 实现AutoCAD与数控加工系统的集成。
1.DXF文件的数据处理www.jixie163.com
AutoCAD输出的DXF 文件是图形文件的ASCII或二进制格式描述[ 1 ] , 有其特定的格式, 常用于与其他应用程序共享数据, 对数控编程来说其中有些冗余数据, 因此必须经过处理才能方便数控自动编程系统的后置处理模块使用。
1.1 DXF文件的结构
AutoCAD输出的DXF文件通常由五个段( SEC2TION) : 标题段(HEADER) 、表段( TABLES) 、块段 ( BLOCKS ) 、实体段( ENTITIES ) 和结束段( ENDSEC) 组成。但对数控编程来说, 最有用的就是实体段, 因此要求打开 DXF文件, 将实体段的有关信息记录下来并保存在GRP文件中。每个实体的格式都是固定的, 且都有与它相关的参数(部分参数见表1) , 实体段记录 了每个实体的几何数据。
表1 实体类型与相关参数(部分)
1.2 DXF文件的数据提取与排序
图1 DXF文件数据处理程序流程图
由AutoCAD绘制的图形, 用DXFOUT命令将其生成DXF文件, 再由接口程序读取图形信息, 其读取程序的流程如图1 所示。但由于 AutoCAD 绘制的图形根据个人绘图习惯不同, 导致DXF文件数据是按照实体的绘制顺序排列的, 其图元的排列顺序也就不一定是按照零件的拓扑顺序 排列的, 也就是说它的数据排列可能是杂乱无章的, 因此经接口程序处理得到的GRP文件数据也是按照绘制顺序排列的。而数控加工过程是严格按照特定的加 工路线进行的, 因此要求对GRP文件数据按照给定的加工路线进行排序。
考虑到由于绘图的原因使得相连的线段首尾点的不一致, 因此应设定一个有效的容差, 以保证组成一个完整的加工路线图。在加工系统中, 从每一条线段的起 始点开始, 加工到此线段的终点止, 该终点也就成为下一线段的起始点, 然后加工下一线段, 因此加工的轮廓是一个由有向、有序线段组成的图形。本系统 采用选择法进行排序, 即以起刀点为基准, 寻找与之相连的线段, 该线段作为节点1, 记录其始终点坐标值, 记终点坐标 。接着在GRP文件中搜 索其它线段, 如某端点坐标 与 在容差范围内相等, 则此线段作为节点2, 其终点坐标为 ; 再从余下的线段中查找其始点坐标与 相等 的为节点3; 以此类推, 将所有的线段按顺序记录下来, 再保存在GRP文件中。
2.NC代码与加工轨迹的自动生成