基于UG的模块化机械设计方法研究摘 要]本文采用模块化设计思想和UG二次开发技术,解决了用UG软件进行机械设计时,许多常用件需要多次重新设计的问题。常用件模块以菜单的方式结合在UG软件中,这具有良好的可扩充性和可移植性。[关键词]模块化设计 机械设计 UG二次开发Unigraphics(简称UG)是美国EDS公司推出的CAD/CAM/CAE一体化软件。它的内容涉及到平面工程制图、三维造型、装配、制造加工、逆向工程、工业造型设计、注塑模具设计、钣金设计、机构运动分析、数控模拟、渲染和动化仿真、工业标准交互传输、有限元分析等十几个模块。近年来UG发展迅速,已广泛应用于多个领域,更是进行机械设计的常用软件。虽然UG功能非常强大,但在进行机械产品设计的时候经常会遇到一些标准件以外的常用件,若每次对它们均从头开始设计,则要做大量的重复性工作。为了提高劳动生产率,降低设计成本,将已经广泛应用于电子、计算机、建筑等领域的模块化设计思想引用到机械设计中,形成基于UG的模块化机械设计。1模块化机械设计1.1模块及模块化的概念模块是一组具有同一功能和结合要素(指联接部位的形状、尺寸、连接件间的配合或啮合等),但性能、规格或结构不同却能互换的单元。模块化则是指在对产品进行市场预测、功能分析的基础上划分并设计出一系列通用的功能模块,然后根据用户的要求,对模块进行选择和组合,以构成不同功能或功能相同但性能不同、规格不同的产品。1.2模块化机械设计相关性模块化设计所依赖的是模块的组合,即结合面,又称为接口。为了保证不同功能模块的组合和相同功能模块的互换,模块应具有可组合性和可互换性两个特征。这两个特征主要体现在接口上,必须提高模块标准化、通用化、规格化的程度。对于模块化机械设计,可见其关键是怎样划分模块,这里主要通过综合考虑零部件在功能、几何、物理上存在的相关性来划分模块。(1)功能相关性零部件之间的功能相关性是指在模块划分时,将那些为实现同一功能的零部件聚在一起构成模块,这有助于提高模块的功能独立性。(2)几何相关性零部件之间的几何相关性是指零部件之间的空间、几何关系上的物理联接、紧固、尺寸、垂直度、平等度和同轴度等几何关系。(3)物理相关性零部件之间的物理相关性是指零部件之间存在着能量流、信息流或物料流的传递物理关系。1.3模块化机械设计的优点模块化机械设计在技术上和经济上都具有明显的优点,经理论分析和实践证明,其优越性主要体现在下述几方面:(1)可使现在机械工业得到振兴,并向高科技产业发展;(2)减轻机械产品设计、制造及装配专业技术人员的劳动强度;(3)模块化机械产品质量高、成本低,并且妥善解决了多品种小批量加工所带来的制造方面的问题;(4)有利于企业根据市场变化,采用先进技术改造产品、开发新产品;(5)缩短机械产品的设计、制造和供货期限,以赢得用户;(6)模块化机械产品互换性强,便于维修。2模块化机械设计在UG中的实现2.1总体构思在用UG进行机械设计时,为了将常用件模块化,首先要把常用件的三维模型表达出来。对于系列产品,可按照成组技术的原理进行分类,一组相似的常用件建立一个三维模型,即所谓的三维模型样板。根据UG参数化设计思想,一个三维模型样板可认为是一组尺寸不同、结构相似的系列化零部件的基本模型。把众多的三维模型样板按类分开,每一类放在一个集合里,这样每类都形成了一个三维模型样板的模块库。为了使模块库与UG的集成环境有机地结合在一起,把每个模块库都以图标的方式放在用户菜单上,以方便调用。为了实现这一总体构思,综合运用了UG/Open MenuScript、UG/Open Ulstyler、UG/OpenAPI、Visual C++等UG二次开发技术,其程序流程图如图12.2模块库菜单设计为了与UG菜单交互界面风格保持一致,模块库采用了分级式下拉菜单,下拉菜单通过UG/Open MenuScript模块开发实现。即利用MenuScript提供的UG菜单脚本语言,编写成扩展名为“.men”的文本文件,将其放在用户目录下的/startup目录内,通过设定UG的环境变量,UG在启动时会自动加载用户菜单文件。为了方便用户调用时快速检索到所要的常用件三维模型样板,将下拉菜单的最大深度设计为3级,且每一条下拉菜单最多不超过15个按钮。末级菜单上每一个按钮对应一个常用件三维模型样板名称,点击末级菜单按钮即调出创建相应产品的三维模型样板对话框。2.3三维模型样板对话框设计利用UG/Open Ulstyle制作UG风格的对话框,按照模型样板的参数生成包含数据输入框、文本框、按钮、图片等控件的对话框。在对话框上部显示零配件图片,在对话框左上角显示对话框标题,在UG系统窗口左下角显示操作提示信息,这样可以使用户很方便地设计或选用常用件三维模型,三维模型样板对话框设计完成后,生成扩展名为“.dlg”文件。所有对话框都有6种基本同调函数,分别是Apply按钮的回调函数,Back按钮的回调函数、Cancel按钮的回调函数、OK按钮的回调函数、对话框构造函数和对话框析构函数。其中对话框构造函数在UG构建对话框完成之后、用户应用程序执行之前调用,将常用件三维模型的常用规格及技术要求显示到信息窗口,供用户创建产品时作参考。对话框析构函数在UG用户对话框关闭时调用,程序编写时利用它进行关闭、清除信息窗口以及释放申请的内存空间等操作。2.4应用程序动态链接库(*.dll)创建UG/Open API应用程序是用C/C++语言编写的,它除了能够在UG的环境下对UG进行功能调用外,还能在程序中实现软件的文件管理、流程控制、数据传输、窗口调用、数值计算等C/C++语言支持的全部功能,使用非常灵活。UG/Open API应用程序牵涉到UG提供的头文件(*.h)、库文件(*.dll)及以C/C++语言编程环境,需要对Visual C++编译环境进行设置,下面给出了Visual C++6.0编译环境设置方法及动态链接库的创建过程:(1)建立一个空的动态链接库工程。(2)配置程序头文件(*.h)、库文件(*.dll)的目录路径。其中头文件包括UG头文件,Visual C++6.0库文件。(3)将对话框生成的C语言源文件模板文件*.template.c添加到Project中。(4)编制应用程序。进入对话框回调函数内部进行程序编制,定义变量及UG对象,运用C/C++语言和UG/Open API函数进行参数化建模设计。(5)生成动态链接库(*.dll)文件。UG启动时会自动加载动态链接库文件,供用户菜单调用。3结束语随着装备制造业的飞速发展,产品种类急剧增多且结构日趋复杂,只有产品设计周期不断缩短,才能够满足企业激烈竞争的需要。用UG软件进行模块化机械设计符合机械产品快速设计的理念,符合装备制造业的发展需要,是机械设计的发展方向之一,具有较高的实用价值和经济价值。参考文献[1]袁峰UG机械设计工程范例教程[M]北京机械工业出版社2006[2]王志张进生于丰业王鹏任秀华基于模块化的机械产品快速设计[J]机械设计2004,21,8[3]滕晓艳张家泰产品模块化设计方法的研究[J]应用科技2006,33,2[4]董正卫田立中付宜利UG/Open API编程基础[M]北京清华大学出版社,2002