欢迎来到天天文库
浏览记录
ID:41576919
大小:58.15 KB
页数:8页
时间:2019-08-28
《基于AutoCAD二次开发的机械加工余量计算研究》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于AutoCAD二次开发的机械加工余量计算研究0引言铸造工艺CAD技术具有优化铸造工艺,预测铸件质量,确定铸造方案,快速准确估算铸造成本,显示并自动绘制铸造工艺图、工艺卡等功能,这使铸造产品设计的传统模式发生了深刻变革[lh以前一般基于铸造加工的机械产品制造流程是:由零件图出发,生成铸件工艺图,进行毛坯铸造加工,再进行机加工,因此涉及到零件图——铸件图信息转换、图形再生成问题。这部分工作如果用人工做,存在操作复杂,速度慢,往往不能准确绘制铸件外轮廓等问题。为了提高铸件图绘图效率和准确性,市场上出现了很多计算机辅助铸造设计软件,但这些大部分依赖
2、于高档CAD/CAM—体化软件如Pro/E等,虽已经包含了铸件模具设计模块,但其价格过高,中小铸造企业难以承受。基于目前中小企业的铸造工艺CAD需要,笔者作了一些初步的探索,研究了在AutoCAD2008平台下,使用0bjectARX008开发包,在MicrosoftVisualStudio2005环境下,开展了实现零件图转换成铸件图的计算机辅助方法的研究。AutoCAD是美国Autodesk公司开发的交互式计算机辅助设计与绘图软件包,是目前工程设计领域中应用最为广泛的计算机辅助设计软件,且AutoDesk公司提供了便捷的二次开发工具,先后推出
3、AutoLisp、ADS、ADS-RX、ObjectARX、VBA、VisualLISP、.Net等工具,适合于各种不同类型设计人员对AutoCAD进行二次开发。在这些开发工具中,ObjeclARX对开发者编程能力要求最高,也是开发大型应用模块的首选工具,并且ObjectARX提供了AcBr类库和AcGe类库,这使得我们在机械加工余量计算过程中,更能方便访问二维实体信息,初步实现了零件图转换成铸件图过程中的机械加工余量计算。1ObjectARX简介ObjectARX开发工具是Autodesk公司在AutoCAD(R13或以上版本)平台上推出的一
4、个以C++语言为基础的面向对象的开发环境。它包含了一组通用工具,使得二次开发者可以充分利用AutoCAD的开放性,直接访问AutoCAD数据库结构,图形系统及CAD几何造型核心[2]oARX程序实质上是地道的WindowsDLL程序,而AutoCAD软件本身则是一个典型的Windows程序,ARX程序与AutoCAD.Windows之间均采用Windows消息传递机制直接通信,并且它是…种可共享AutoCAD地址空间和对AutoCAD直接调用,从而运行效率更高[3]。2机械加工余量计算过程2.1机械加工余量定义机械加丁余量是为了保证铸件机械加工
5、面尺寸和零件加工精度,在设计铸件和铸造工艺时,预先增加并在机械加工时应予切除的金属层厚度,其代号用字母“MA”表示,并由精到粗分为A、B、C、D、E、F、G、H、J共9个等级[4]。在本程序中,输入一个正实数,用来表示机械加工余量,其算法流程如图1所示:2.2子实体高亮显示和取消高亮显示在屏幕上选择某一了实体吋,如一个三维实体的某一个面,AutoCAD会将其高亮显示,目的是区别其他未选定实体,任务结束时,必须取消高亮显示。子实体的高亮显示和取消高亮显示的步骤如下:1)首先从选择集中获取用户所选择实体的GS标记[3]。2)然后调用getSuben
6、tPathsAtGsMarker()函数将所获得的GS标记转换成了实体路径,并指定所需要的了实体类型(顶点、边、面)⑶。3)接着根据子实体路径调用highlinght()函数,高亮显示所选择的子实体。4)最后根据子实体路径调用unhighlinght()函数,取消高亮显示所选择的了实体。2.3曲面分类为了能对选取的曲面进行分类,必须借助AcBr类库。AcBr类库以只读的方式去访问以边界表示的实体信息,包括拓扑信息和几何信息。这类实体由实体建模器创建,分别是:三维实体类(AcDb3dSolid)、形体类(AcDbBody)和面域类(AcDbReg
7、ion)[5]。根据子实体路径,创建面子实体对象,然后要判断曲面的类型,可以通过类中定义的getSurfaceType(AcGe::Entityld&type)const方法来获得。其中AcGc::Entityld值来确定对象的类别。如AcGe::kPlane表示该面为平面,AcGe::kCylinder表示该面为一圆柱面等等[6]。在AcGe类库中几何曲面类的分类如图2所示。在铸造过程中,铸件一般是平面、圆柱面,针对这一需求,在程序中笔者只对这两种曲面进行处理,其他类型的曲面待以后研究。2.4平面和圆柱面的处理思路1)平面对平血的处理方法需要
8、分两种情况,如果平面上所有顶点的另外一条边,这条边不在该平面上,它们的方向都与平面的法向平行,可以通过拉伸操作;反之,必须通过放样操作,具体算法过程如
此文档下载收益归作者所有