AutoCAD 二维图形生成刀具轨迹的方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
AutoCAD 二维图形生成刀具轨迹的方法
数控机床是机械制造业中最重要的加工工具。数控机床编程员将要加工的零件按照数控编程标准,编制成供数控机床执行用的数控加工程序(简称NC 程序) 。常用的编程方法有两种:手工编程和自动编程。手工编程枯燥、乏味,指令难记忆,遇到复杂的零件时,用手工编程要花费大量的时间,且易出错。本文提出用ObjectARX 开发工具,在开发AutoCAD二维图形数控自动编程系统中,零件刀具轨迹信息的获取,并根据这些信息和其他参数生成刀具的运动轨迹,并直接生成加工代码。该系统可以明显提高编程效率和编程质量,提高数控机床的利用率,降低废品率,有显著的经济效益,尤其是在复杂轮廓的编程中,更能发挥其优势。
1 零件轮廓的CAD 设计
为了实现由AutoCAD 二维图形中描述零件轮廓的图形实体直接生成数控加工代码,必须从二维图形中获取数控编程所需要的主要信息———刀具轨迹,刀具轨迹信息由AutoCAD 图形数据库中描述零件轮廓的图形实体获取。AutoCAD二维图形中有较多的内容,不仅有尺寸、剖面线、标注文本、中心线等非零件轮廓的实体;而且还有根据制图标准规定的画法(如螺纹、花键等) 画出的图形实体,这些图形实体也不能描述零件轮廓。因此,为了从AutoCAD 图形数据库中正确地提取零件轮廓的图形实体,需在绘制图形时给描述零件轮廓的图形实体以特定的相关关联的共同性质。可以有以下的方法:
①将描述零件轮廓的图形实体放在特定的同一层; ②将描述零件轮廓的图形实体置为特定的同一颜色; ③将描述零件轮廓的图形实体指定为特定的组( Group) ; ④将描述零件轮廓的图形实体连接为一条Polyline (多线段、或称为多义线、组合线) 。
对上述方法比较的结果,采用最后一种方法更为有利,这是因为:
(1) Polyline 是可以包括多个直线段和圆弧段的图形实体,这和一般数控机床所具备的直线插补和圆弧插补方法完全一致,可以方便地确定数控代码的类型;
(2) Polyline 可以(用直线和圆弧) 逼近任意形状,这在零件轮廓为不规则曲线时显得十分方便,同时还可以通过控制逼近算法以调节逼近精度;
(3) Polyline 中各个直线段和圆弧段是依次首尾相接的,有起点,有终点,这便于确定加工时的刀具的运动方向;
(4) Polyline 虽然包含多线段和圆弧,但仍然为单一实体,便于选择拾取;
(5) 通常CAD 设计结果为零件的最终尺寸,用Polyline表示零件轮廓,则毛坯及加工过程中零件的形状与尺寸通过AutoCAD 中的OFFSET、SCAL E、及STRETCH等命令方便的得到,并可由此获得加工过程中刀具的中间坐标;
鉴于上述考虑,把描述零件轮廓的图形实体连接成一条多线段(可封闭也可不封闭) ,多线段的起点即就是刀具的起点,加工过程中所需的终点坐标均可由多线段各顶点的数据确定,根据这些数据即可生成数控加工代码。
2 零件轮廓坐标信息的获取
从图形中获取信息,首先要把零件按实际尺寸准确进行绘制,并使图形坐标和机床加工坐标一致。从前面的分析,可用Polyline 表示零件轮廓,Polyline 是AutoCAD 中特殊的图形实体,它是有一系列首尾相连的直线和圆弧组成,在图形数据库中以顶点(即相连点) 子实体的形式保存信息,与位置、形状有关的信息主要有两个:一是顶点(Vertex) 坐标数值,保存在10 组码中;二是顶点
凸度(Bulge) ,保存在42 组码中。
AutoCAD 中约定:凸度为0 是直线的顶点,它与下一个顶点连接为一直线;凸度不为0 是圆弧顶点,它与下一个顶点连接为圆弧;凸度为负表示顺时针圆弧,凸度为正表示逆时针圆弧;凸度绝对值小于1 表示圆弧包角小于180°,凸度绝对值大于1 表示圆弧包角大于180°。Polyline 的直线顶点和圆弧顶点都只保存了直线和圆弧的起点标志,终点坐标则都保存在下一个顶点中。利用ObjectARX函数可以很方便地知道Polyline 各顶点的坐标值和凸度值,这样就得到了零件轮廓线上直线的起点、终点坐标和圆弧的起点、终点、半径、圆心等几何信息。
3 NC程序自动生成
3. 1 NC程序的结构
按照ISO 标准,NC 程序由若干个程序段组成。程序段的格式为:N G X Y Z F S T M
其中:N 后面四位数字,表示程序段号; G后面跟两位数字,表示准备功能;X、Y、Z 后面跟数字,表示被加工段的终点坐标;F、S、T 后面跟数字,分别表示被加工时的进给速度、主轴转速及加工刀具号;M 后面跟两位数字,表示辅助功能;程序段用‘;’结束。
3. 2 工艺参数确定
生成NC 程序过程中,需要根据加工零件来确定F、S、T等值。在本系统中,利用Visual C + + 资源(对话框) 和ObjectARX类库及函数,实现用户通过对话框界面选取F、S、T ,自动将所选值添加到NC 程序的程序段中。
3. 3 NC程序自动生成
通过ObjectARX 函数可以很方便地知道AcDb2dPolyline(刀具轨迹多线段) 各顶点的坐标值和凸度值,对照这些几何信息与NC 程序准备功能指令,可知
凸度(Bulge) 为0 对应G01
凸度(Bulge) 不为0 对应G02 或G03
由此可编制一个完整的NC 代码生成程序,由AutoCAD二维图形中描述零件轮廓的图形实体直接生成NC 程序。当然,在程序中需要人机交互来确定以下内容:零件加工的起始点,确定G00 的坐标;加工的刀具补偿,确定G41 或G42 等信息。