1、 1 毕业论文 文献综述 电气工程及自动化 特殊零件的 CAD 二次开发设计 摘要 :介绍 AutoCAD 常用的几种二次开发技术 ,并对它们各自的特点进行了分析比较。阐述了二次开发的关键技术 ,如参数化设计、对话框编制及图形绘制等;探讨了二次开发技术的主要应用领域。 关键词: Auto CAD;二次开发; 参数化设计;机械设计; 1 引 言 AutoCAD是目前世界范围内使用最为广泛的二维绘图软件,其丰富的绘图命令、强大的编辑功能和良好的用户界面受到了广大工程技术人员的普遍欢迎 1。 全球有数十亿的工程图形采用由 AutoCAD最早提出并应用的 T业标准 DxF和 DwG格式来描述。 Aut
2、oCAD及其图形格式已经成为一种事实上的国际业标准;同时 AutoCAD是具有高度开放结构的软件开发平台,它提供给编程者一个强有力的二次开发环境。 2.1 AutoCAD二次开发语言 人们在使用 AutoCAD过程中发现其存在较多的不足之处 , 如对于一些特殊曲线的绘制往往较为困难 , 而对于一些标准件、常用件 , 虽然从结构上看它们较为相似 ,但却难以采用 AutoCAD提供的复制、镜像、旋转等命令来实现 ,而必须一笔划一笔划的绘制 , 显得费时费力。因此 AutoDesk公司 及时提供了二次开发语言 AutoL ISP,并 先后推出了 ADS、 ObjectARX、 VBA、 Visual
3、LISP、 DotNet等二次开发语言,适合于各种不同类型设计人员对 AutoCAD 进行二次开发。几种二次开发语言特点各异,各有其优缺点,具体见表 2-1所示 2 表 2-1 AutoCAD二次开发语言性能比较 二次开发语言的种类 适合的开发人群 程序执行机制 与 AutoCAD通讯机制 特点 Auto ISP 初学者 解释 通过进程间通讯( IPC)实现 目前已被 VisualLISP取代 ADS 使用 C语言的设计人员 编译 通过进程间通讯( IPC)实现 目前, AutoCAD已不支持 续表 2-1 2 ObjectARX 使用 VC语言的设计人员 编译 通过动态链接库运行于同一地址空
4、间 功能强大,编程效率高,适合大型 CAD软件的开发但较难学 VisualLISP 初学者 解释 /编译 通过进程间通讯( IPC)实现 简单易学,开发周期短,适合小程序开发,但由于括号使用太多,调试不易 VBA 使用 VB语言的设计人员 解释 通过 ActiveX运行于同一地址空间 学习较为容易,开发周期较短,适合中小型程序开发 DotNet 使用 C#、 VB、NET语言的设计人员 编译 通过 ActiveX运行于同一地址空间 学习和编程难度适中,适合中大型程序开发 2.2 AutoCAD二次开发工具 AutoCAD的通用性为其二次开发提供了必要条件,而 AutoCAD开放的体系结构则使其
5、二次开发成为可能。为满足广大用户二次开发的需求 Autodesk公司相继推出了三代二次开发工具。目前,第一代的 AutoLISP已能被第三代的 VisualLISP完全替代,第二代的 ADS在 AutoCAD中已不再支持,所以第三代开发工具将成为今后 AutoCAD二次开发的必然选择 3。 2.3 AutoCAD二次开发环境 AutoCAD为用户提供的开放式体系结构 ,称之为 AutoCAD二次开发环境。 AutoCAD提供了丰富的图形处理命令和线型、图案、文字及符号库 , 但仍然不能覆盖用户的专业需要。因此要高效率地使用AutoCAD, 就有必要对它们进行扩充与修改 , 即二次开发。二次开发
6、应充分利用 AutoCAD提供的二次开发环境。利用它 , 用户可轻松地对 AutoCAD实施专业化系统改造 4。 AutoCAD提供的二次开发环境主要有基于文件系统的开发和基于高级语言的开发 这两类 。 2.4 AutoCAD二次开发应用 在进行机械设计除了绘制二维的平面图形外,还需进行大量的三维建模。建模过程中我们发现一些机件使用交互方式难以实现。例如弹簧、螺纹、齿轮、蜗杆、蜗轮等。 司辉基于 Pro Engineer二次开发的双流道叶轮流道设计 5很好的介绍了双流道叶轮自身形状不规则,传统的的 ProEngineer建模方法相对困难,且不可避免地耗费了大量的重复劳动 6。 Pm En商 n
7、eer二次开发能够满足用户特殊的要求,开发的基于三维样板模型,并以 uI对话框为媒介的参数化设计系统。 3 运用 Pro/E的二次开发工具 Pro/TOOLKIT进行程序自动特征建模技术,提出用动态链接库方式实现用微软基本类库( MFC)开发 Pro/E对话框界面的通讯机制,并给出了实现方案和程序示例 7。运用 Pro/E提供的二次开发工具 Pro/TOOLKIT可以比较容易地实现由程序动态地、自动地进行特征建模的功能,并且所建模型能由程序自动加入较为丰富的非几何特征,并存入模型统一的数据库、特征库中,为 CAD CAM CAE CAPP系统的集成打下良好基础 8。 AutoCAD 被广泛应用
8、于模具、机械等行业 , 现对 AutoCAD 进行二次开发 , 定制用户自定义下拉菜单 , 并结合 Visual LISP 语言实现对模具零件的参数化设计 , 开发适合本专业的绘图工具 , 以提高绘图效率 9。怎样提高模具设计和生产的效率以提高企业竞争力和市场占有率 , 是各个模具企业亟待解决的问题。通过对模具类软件的二次开发,创建企业自己的产品零件库是解决这一问题的有效途径之一。 利用 VBA 对 AutoCAD 进行专项的二次开发,建立一个标准零件库,以提高工作效率 10。组合零件库的开发降低了设计工作量 , 提高了设计效率。 实现了标准零件间组合的整体调用 。预先选择组合中不同类型的标准
9、零件 , 然后整体调用各种组合方式的二维图形使繁琐的绘图工作简化为只需输入一个或几个驱动尺寸 , 程序自动查询和计算其他参量值 , 然后绘出 CAD 的二维图形。与利用VisualLisp 语言开发 AutoCAD 的方法相比 , 组合零件库的开发主要使用了 VBA 程序 , 简化了开发程序 , 节省了开发的时间 11。 3 AutoCAD二次开发现状 用户在使用 AutoCAD2000 2004时,为了使绘图变的更加简单,通常会使用外部块或其它方法来处理一些常用件或标准件。但诸如此类方法并不方 便,也不能保证所插入图形尺寸完全符合标准,基于 AutoCAD平台,在 VisualLISP环境下
10、,开发出以 AutoLISP语言编写的应用软件,能够解决这些问题,且由于 AutoLISP与 AutoCAD高度融合性,使得软件使用起来更加方便 12。 4 总结 网络环境的 CAD系统设计的几个关键问题,就电气二次设计 CAD系统的改进作了探讨。借助AutoCAD图形平台和开发工具实现了基于网珞环境的电气二次设计 CAD系统软件 EQDNET13。 参考文献: 1 王斌,连永祥 . AutoCAD二次开发技术 VBA在挤 出机螺杆 CAD系统中的应用 J.中国制造业信息化 ,2005, 34( 12) :81-82. 2 方贵盛,王建军 . AutoCAD二次开发技术及其应用研究 J.机床与
11、液压 ,2007, 35( 6) :187-212. 3 晁彩霞,魏永乐 . AutoCAD 二次开发工具探讨 J. 机械 , 2008 ,(35):35-70. 4 4 雷子山 . AutoCAD 二次开发在机械设计中的应用 J . 科技信息 .,机械与电子 , 2008,(24):440-441 . 5 司辉,丛小青,王霄 . 基于 Pro Engineer二次开发的双流道叶轮流道设计 J. 排灌机 械 ,25(5):5-8. 6 Wu Jie.Lachlan J.Energy efficiency study on axial flow impellersJ, Chemied Engin
12、eering and Processing, 2006,45(8):625-632. 7 赖朝安等 . Pro/E的 二次开发的关键技术 J. 机械设计与制造工程 ,2001, 30(1):43-45. 8 Parametric Technology Corporation.Pro/TOOLKIT Users GuideZ.USA:PTC公司出版, 1998. 9 王志峰 . AUTOCAD二次开发技术在模具设计中的应用 J. 多媒体技术及其应用 . 2006,6:1113-1119. 10芦光 .基于 AutoCAD二次开发的标准零件库的建立 J. 现代制造技术与装备 ,2006,5 (174) :59-67. 11付靖渝 马咏梅 . 基于 AutoCAD二次开发的组合零件库设计 J. 机械设计与制造 ,2007 ,(1):52-53. 12刘 祥 . 基于 AutoCAD的二次开发设计 J. 科技信息, 2009,( 36): 222-223. 13陈堂功 张强 .基于网络环境的电气二次设计 CAD系统 J.低压电器, 2002,( 1): 37-55.