APP下载

基于AutoCAD二次开发的图元识别及数控程序生成技术的研究

2017-07-31李成华周盼盼张文光苏旭斌马思亮

组合机床与自动化加工技术 2017年7期
关键词:凸度线型圆弧

李成华,周盼盼,张文光,苏旭斌,马思亮

(航空工业成都飞机工业(集团)有限责任公司,成都 610092)



基于AutoCAD二次开发的图元识别及数控程序生成技术的研究

李成华,周盼盼,张文光,苏旭斌,马思亮

(航空工业成都飞机工业(集团)有限责任公司,成都 610092)

在开发AutoCAD自动编程系统中,解决图元识别问题以及程序输出问题是实现自动编程的两大核心问题。在图元识别方面文章提出了基于优化多线段的图元识别技术。 依靠线型的凸度实现了对顺逆圆弧以及直线的判断;同时,利用优化多线段的线型数据结构实现图元的排序,避免人为对图元进行排序的操作,简化了编程,提高了图元识别的效率。在程序输出方面,采取基于模板的程序输出方式,为每一台机床定制程序模板实现程序的规范输出,柔性解决了现场机床多样性带来的工作繁复问题。利用上述技术开发的自动编程系统,不仅识图效率高,而且程序输出样式灵活,提高了编程系统的适应能力。

图元识别;凸度;自动编程;优化多线段

0 引言

随着社会的高速发展以及人们时间观念的不断加强,传统手工编程逐渐被自动编程系统所取代。各类自动编程系统的研究成为热点,其中基于AutoCAD的自动编程为一个重要的分支。在航空制造业中,零件不仅结构复杂、种类繁多而且属于单件小批量生产。通常机加车间具有数控铣,数控车,线切割等多种加工设备,而且由于不同厂家的机床各有优势,现场设备基本没有重复,数控系统种类多,造成数控程序样式多。因此在开发应用于航空制造业的自动编程系统的过程中,首先必须解决图元识别的问题,其次还得具备快速输出适应各类机床所需的数控程序的能力。

目前,基于图形的计算机辅助编程技术快速发展,提高了编程效率和程序准确度[1],文献[2]通过读取DXF文件自动建立图元信息数据库,按照特定工艺自动生成加工代码,对零件进行加工。文献[3]针对停车设备中H型钢加工要求,通过读取DXF文件获取图元信息,为H型钢加工专用组合机床设计一种自动编程算法,完成型钢加工。以上自动编程系统对于零件图元信息的获取及轮廓识别技术复杂,效率低;程序输出格式在系统后台定义,无法灵活改变程序的输出样式。

本文针对辅助编程技术中的关键环节进行研究,在轮廓识别和程序输出环节提出了新的处理方式。在轮廓识别阶段,通过将不同几何线型的图元统一转换为优化多段线(LightweightPolyline)线型提高了轮廓识别的效率;在程序输出阶段,采取了基于程序模板生成数控程序的方式,程序输出时通过选择不同的模板能够快速生成适用于不同机床的数控加工程序,使编程系统适应性更强。

1 图元识别中的关键技术

1.1 圆弧顺逆的判断

由AutoCAD设计的图纸一般由线段和圆弧构成[4]。线段的图元信息中包含两端点坐标,可以为生成数控程序所用;圆弧图元信息中包含圆心,半径,起始角和结束角,没有圆弧的方向,不能直接利用图元信息生成数控程序,程序必须将圆弧的图元信息转化为等价的起点,终点,半径并判断顺逆性,才可生成数控程序。因此,图元识别技术中的第一个关键点即圆弧方向的判断。文献[3,5]中利用向量的叉乘,结合右手定则进行圆弧顺逆的判断。

1.2 图元的排序

零件的图形中包括多条线段和圆弧的组合,针对单个图元的几何信息的提取不足以生成数控程序,要完成零件数控程序的生成,必须对各个图元按加工方向进行排序,依次提取各图元几何信息用以生成数控程序。

对于图元的排序,通常是采用顺次搜索法,方法的核心思想是通过人工选择起点,程序自动计算第一个图元的终点,然后依据第一图元的终点,寻找与其端点重合的另一图元,以此类推,直至寻找不到符合条件的图元为止。图元搜索示意图如图1所示,搜索算法流程图如图2所示。

图1 图元搜索示意图

图2 图元搜索流程图

通过对上述算法的分析可知,依靠程序不停的对所有图元进行遍历,判断,排序,不但规则定义复杂,而且效率也不高。

2 基于优化多线段线型的图元识别

2.1 优化多线段(LightweightPolyline)线型介绍

优化多段线是由直线和圆弧段组成的可调节宽度的二维线,它将直线和圆弧组合为一个有机整体。优化多线段不仅将线段中各个节点的点位坐标以二维数组的方式顺次存储,便于访问;而且可以通过每个节点的凸度值来判断各线段线型是圆弧还是直线。

凸度是多段线顶点列表中选定顶点和下一顶点之间的圆弧所包含角度的1/4的正切值。负的凸度值表示圆弧从选定顶点到下一顶点为顺时针方向,正的凸度值表示圆弧从选定顶点到下一顶点为逆时针方向,凸度为0 表示直线段,凸度为1表示半圆。由凸度定义可知当图形为半圆时候无法判断顺逆,因此当图元中存在半圆时候,将半圆拆分为两段圆弧处理。凸度与线型的关系如图3所示。

图3 凸度与线型的关系

2.2 数据的获取与组织

优化多线段的各节点的坐标点位存储在Coordinate(Index)属性中,Index是在顶点数组中你所要设置或查询的顶点的索引号,整数类型。顶点数组的基数为 0。Coordinate为二维数组,数组逻辑结构形式如图4所示。

图4 Coordinate数组逻辑结构形式

节点的凸度值可以通过优化多线段的Object.GetBulge(Index)方法提取,Index含义与Coordinate(Index)中的相同。为了方便数据管理与排序,将优化多线段的节点坐标和凸度值存储在n行3列的二维数组FullInfo(Index)中,数组结构仅比Coordinate数组结构多一个凸度值的列。

2.3 数控图元的完善及加工方向的选择

以数控车零件加工为例子来讲解编程图形的制作,数控车编程图形如图5所示,在编制粗车程序时候需要明确零件毛坯尺寸及轮廓信息,零件轮廓和毛坯边界之间的区域为车削余量去除区域(图中斜线填充区域),除了明确零件加工必须的信息外,需要添加P1-P2进刀线。

当图形制作完成之后需要将零散的图形线转换为优化多线段线型,转换的具体步骤为:在命令框中依“PE”调出合成优化多线段命令,然后框选图形,选择类型为“合并”,输入合并距离值“0”,然后回车。

转换为优化多线段线型后,程序可以依次提取节点的相关信息,但是此时依据FullInfo数组从行坐标0到n-1依次提取各点位信息的方向可能与加工方向相同(即图5所示),也可能与加工方向相反。点位的顺序与在合成优化多线段线型时线条选择的先后顺序有关[6]。因此在程序输出前需要弹出对话框让用户选择加工位置的起点,起点的选择支持模糊输入(程序后台会将与选择加工起点距离较近的优化多线段端点作为程序输出的起点),起点的选择决定FullInfo数组按0到n-1输出还是n-1到0输出。

图5 数控车编程图形

基于优化多线段的图元识别,充分利用了AutoCAD关于该线型的方法和属性,避免了通过人为定义规则判别圆弧顺逆和对节点进行排序,简化了编程,提高了程序生成的效率和准确率,此种图元识别的方式具有明显的优势。

3 带示意图编程窗体的设计

为了使软件便于使用,采用带示意图的窗体设计,用户只需要按照给出的示意图作图,设置好加工的转速、进给、加工余量等参数即可生成数控程序。程序设置窗体样式如图6所示。

图6 程序设置窗体样式

4 代码的生成模式

4.1 程序代码结构分析

数控程序的组成通常包含三部分:程序头,刀具轨迹,程序尾。程序头主要包含G指令,转速,进给等信息;轨迹部分为G01,G02,G03组成的刀具运动路径;程序尾包含主轴停止,机床回零等固定操作。程序结构图如图7所示。

图7 数控程序结构图

4.2 基于模板的程序输出方式

为了使编程系统输出的数控程序具有更强的适应性,采取基于模板的程序输出方式,预先在系统中定制多种加工循环的代码模板,模板中存在常量和变量两种数据,常量包括程序头中和程序尾中的固定G96,M03,M30等代码,变量包括:转速,进给,刀具,刀具轨迹点位等。程序生成时候通过在系统里设置的值替换模板中的变量,即可生成相应的程序,例如:在编程系统中设置零件转速S=80,那么在程序生成时,将相应模板中的转速变量“S”替换为“S80”,即生成了我们想要的代码。刀具轨迹部分的插补指令,由系统识别轮廓图元后直接生成。如果要更改程序的样式或添加删改常用指令,只需更改模板中的常量即可,避免了修改编程系统的后台源码,对用户来说使用更方便。

5 结束语

本文通过对基于AutoCAD的自动编程系统的研究,提出了基于优化多线段的图元识别技术和基于模板的程序输出方式的两种新方法。利用上述新方法开发的自动编程系统充分利用多线段的线型结构,避免了人为对图元进行识别的复杂数学计算;通过对模板的更改达到程序样式的更改,解决了程序输出样式更改困难的问题;最终使得编程系统不但图元识别效率高,而且程序输出样式灵活,圆满的解决了航空制造业对自动编程系统的特殊需求。

[1] 肖苏华.图形交互式数控线切割自动编程系统的研究与开发[J].机电工程技术,2011(1):24-26.

[2] 张友兵,史旅华,冯霞.汽车纵梁数控冲床系统的数据库设计与开发[J].机电工程,2004(4):1-4.

[3] 马少华,张承瑞,胡天亮,等.基于AutoCAD的停车设备组合机床自动数控编程算法[J].组合机床与自动化加工技术,2013(2):117-120.

[4] Nafis Ahmad,A F M Anwarul Haque.Manufacturing feature recognition of parts using DXF fiels[J].4# international Conference on Mechanical Engineering, 2001,26-28:111-115.

[5] 张欢,余丽. 基于AutoCAD 的数控自动编程系统[J].机械研究与应用,2009(6):76-81.

[6] 张帆,郑立楷,卢择临,等. AutoCAD VBA 二次开发教程[M].北京: 清华大学出版社,2006.

(编辑 李秀敏)

Research on Graphic Element Recognition and Create Numerical Control Program Based on AutoCAD Re-Developing Technology

LI Cheng-hua,ZHOU Pan-pan,ZHANG Wen-guang, SU Xu-bin,MA Si-liang

(AVIC Chengdu Aircraft Industrial (Group)Co.,Ltd.,Chengdu 610092,China)

In the process of developing AutoCAD automatically programming system, solving the problem of graphics primitive recognition and program output is two core issues in realizing automatically programming. In the aspects of graphics primitive recognition, a graphics primitive recognition technology which is based on the optimization of multiple line segment is proposed in this paper. Rely on linear convexity realized the judgment of good or poor arc and straight line; meanwhile, using optimizing the linear data structure of multiple line segment to achieve graphics primitives’ ranking, avoid manual operation, simplified the programming, improved the efficiency of the graphics primitive recognition. In the aspects of program output, adopting the program output mode which is based on template, customizing programming template for each machine tools to realize the standard output of program, flexibly solved the problem of the complicated work which is brought by machine tools’ diversity. A automatically programming system proposed by this article , is not only high efficiency in graphics primitive recognition, and standardly outputting NC program also can quickly adapt to different machine tools, from the perspective of programming, realize the manufacture process flexibility.

graphics primitive recognition; bulge; automatic programming; optimize multiple line segment

1001-2265(2017)07-0116-03

10.13462/j.cnki.mmtamt.2017.07.027

2016-09-10;

2016-10-26

李成华(1989—),男,重庆北碚人,航空工业成飞公司工程师,电子科技大学硕士研究生,研究方向为机械制造,企业信息化管理,(E-mail)269762930@qq.com。

TH166;TG659

A

猜你喜欢

凸度线型圆弧
变化环境下考虑线型不确定性的水文设计值估算分析
利用轴线交错修整砂轮凸度曲线的方法探讨
湘潭高月塘大桥施工线型监控与合拢策略研究
浅析圆弧段高大模板支撑体系设计与应用
加权融合方法在船型开发中的应用
3800mm中板轧机变凸度工作辊辊形研究①
基于精轧平坦度优先的凸度分配策略
异步凸度轧制对AZ31镁合金板坯损伤抑制分析
外圆弧面铣削刀具
AutoCAD中线型的开发定制技术