您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > 复杂曲面件模具设计的计算机辅助系统开发
22复杂曲面件模具设计的计算机辅助系统开发姜浩1徐永超1祝世强2(1.哈尔滨工业大学材料科学与工程学院,哈尔滨150001;2.首都航天机械公司,北京100076)摘要:针对复杂曲面件及其模具设计,开发计算机辅助系统,借助该系统可使设计工作直观、方便、快捷。系统以UG为平台,综合运用UG/Open开发工具、VisualC++以及数据库知识而建立。经实践证明,系统运行良好,可以顺利完成该类零件及模具设计工作。关键词:数字化设计;复杂曲面件;模具设计;计算机辅助系统ComputerAidedSystemDevelopmentforComplex-shapedPartandToolDesignJiangHao1XuYongchao1ZhuShiqiang2(1.Harbininstituteoftechnology,Harbin150001;2.CapitalAerospaceMachineryCompany,Beijing100076)Abstract:Forthedesignofserializedpartswithcomplexshapeandthetooldesign,bythecomputeraidedsystem,thedesignperiodcanbeshortened;therepetitiveworkcanbereducedeffectivelyforthedesigners.BasedonUG,UG/Opendevelopmenttool,VisualC++andtheknowledgeofdatabas,acomputeraidedsystemisestablished,whichmakesthepartdesignandthetooldesignvisibleandconvenient.Ithasbeenfoundthatthecomputeraidedsystemrunswellandcanaidtoaccomplishthedesigneffectively.Keywords:digitaldesign;complexshapedparts;tooldesign;computeraidedsystem1引言经济全球化和世界市场一体化的加速发展,加速了制造业的竞争,进一步缩短了产品改型换代的周期。在一种产品制造的整个周期中,模具的设计制造水平是制约产品开发速度与品质的核心因素[1]。本文所涉及的复杂曲面件为工业应用中的典型零件,其结构形状类似,尺寸不同,且已经形成系列化。以往的零件和模具完全通过二维图形设计、表达,设计效率和视图直观性差,后续仍需通过三维造型进行加工。目前,传统的设计方法,已经不能满足零件设计、模具加工的需要,存在着不同设计阶段的相互集成度不够以及模具型面设计方法效率低下等问题[2]。本文根据该类零件结构类似的特点及实际需要,从数字化设计的原理出发,借助于UG、VisualC++和数据库,进行复杂曲面件设计、模具设计的计算机辅助系统开发,并以实例分析系统的性能和适用性。2系统设计与功能根据零件特征,通过系统设计达到如下功能:零件的参数化设计,已有零件的参数化修改,模具的自动生成,模具以三维图形和文本文档的形式输出,进行坯料的自动生成、坯料的三维图形和文本文档输出等。根据功能需要,确定的系统总体结构如图1所示。作者简介:姜浩(1987-),本科在读,材料加工工程专业;研究方向:数字化制造。基金项目:清华大学先进成形制造教育部重点实验室开放基金资助项目(2008005);国家自然科学基金资助项目(50875062)。收稿日期:2009-12-0323CAD系统(UGNX4.0)ACCESS数据库PC操作系统CAD接口(UG/Open及VisualC++)用户界面(UG/OpenMenuScript,UG/OpenUIStyler)输出信息管理参数计算三位图形文本文档信息修改信息入库信息查询坯料参数生成模具参数生成用户层坯料模板文件模具模板文件零件模板文件模板文件注册数据源注册环境变量数据处理坯料信息数据库模具信息数据库零件信息数据库数据层图1系统总体结构图2.1零件的参数化设计图2零件设计对话框图2为零件形状结构图,通过图2所示的零件设计对话框进行人机交互设计工作。对话框内,系统预先给出每一个反映零件形状尺寸的特征变量的默认值,根据该类零件实际尺寸,用户可以在此基础上进行某一个或几个数值的改动,进而生成欲得到的零件。点击零件参数库按钮,可进入数据库界面,从已有的零件中选择已有的数据组合,也可以对数据库中已有的零件进行修改和删除等操作。图3为系统中典型的复杂曲面零件三维图形,如图所示,它共包含10个确定零件形状的特征值。结合图3对特征变量的文字说明及图2零件设计对话框,可以方便地设定反映零件特征的关键尺寸。图3零件模板文件242.2数据库系统在数据库方面,本系统把数据从CAD系统中独立出来组成独立的数据库,这样应用程序可以借助数据库实现数据交换。使用数据库实现模块化设计,使程序和数据相对独立将有利于数据的维护和扩充。在图2零件设计的界面中,点击“零件参数库”按钮,会出现如图4所示的对话框,该对话框可以完成已有零件的参数选取、信息查询、信息更改和删除等功能。图4零件数据的用户使用界面点击图4所示界面中的“添加”按钮,弹出如图5所示零件参数入库的对话框,通过该对话框进行零件数据入库操作。图5零件参数入库对话框2.3模具和坯料的生成通过本系统,用户可以直接设计模具和坯料,也可以先进行零件设计,获得零件形状及尺寸,然后根据零件内表面的形状尺寸由系统直接生成凸模,根据零件外表面形状尺寸,考虑模具间隙及圆角等因素可由系统生成凹模,零件中性面展开即可获得坯料形状尺寸。结果以文本文档和三维图形的形式输出,同时将结果在后台写进数据库。图6充液室与凸模在图2所示的“零件设计”对话框中,输入完整的零件信息,点击“生成模具/进入模具库”按钮,弹出“模具设计”对话框,可以相应约束模具的生成进行,然后由系统自动生成模具。针对图2所示的零件,生成的充液室与凸模的三维图形如图6所示。模具其他辅助特征一般使用默认值,例如充液室上的螺纹孔大小、模具装夹槽大小等信息,用户在操作的时候可以选择默认值,这样用户只需要输入或修改几个参数便可以在零件的基础上生成模具,有效提高模具设计效率。在后台进行参数计算过程中,需要从数据库中提取已有的零件信息,也需要用户输入其他的浮动性数据,如凹模与凸模之间的间隙大小等,便于研究人员改变参数后对比不同的设计,选择更加科学的方案。3系统实现与原理3.1模板文件本系统自动生成三维图形的条件:存在复杂曲面件零件的数学模型。利用UGNX4.0软件建立三维模板文件,以PRT格式保存到ug_part文件夹中,并设为只读文件,建立、生成相应的表达式,在表达式中将各变量的数值进行整理,找出对模型具有绝对约束作用的所有变量,并对这些特征值进行命名,最后用这些特征值编写公式来约束模型中其他的非特征变量。在模板文件的基础上,利用UG/OpenAPI进行参数化设计。通过修改参数来实现几何特征的修改。3.2接口3.2.1UG对菜单文件的调用菜单脚本文件为*.men格式,存放在startup文件夹中。UG要完成对该菜单脚本文件的调用,必须在操作系统中注册环境变量。变量名为UGII_USER_DIR,变量值是系统在磁盘上的存放位置。3.2.2菜单与UG对话框的连接UG对话框在完成设计以后,会生成.dlg格式的文件,将这个文件移动到系统文件夹下的application25文件夹中,以备调用[3]。菜单脚本的.men文件中的语句:LABELABCACTIONSbbc.dlg其中“ABC”是菜单上该按键的名称,可以根据需要任意命名。ACTIONS语句后面所指向的bbc.dlg就是该按键要执行的UG对话框文件。3.2.3UG对MFC界面进行调用及后台数据库的访问在UG编辑的对话框文件中,其关键代码如下:externCDllExportboolchoice_data_func(intdialog_id,void*str_mid,char*table);UF_STYLER_item_value_type_tdata[13];数据从VisualC++到UG的传递在CDataChoice类中实现,其关键的数据信息传递代码如下:CStringstr[50];externCDllExportboolchoice_data_func(intdialog_id,void*str_mid,char*table){AFX_MANAGE_STATE(AfxGetStaticModuleState());CDataChoiceData_wagen_dialog;if(Data_wagen_dialog.DoModal()==IDOK){for(inti=0;iData_wagen_dialog.fields_count;i++)((char**)str_mid)[i]=str[i].GetBuffer(0);returnTRUE;}returnFALSE;}Choice_data_func函数将被UG对话框中的回调函数调用;CDataChoice类代表对话框及数据库信息的访问,用于反应数据库中的数据;str_mid指针是把VisualC++中的数据传递回UG/OpenAPI的主要变量;str数组是全局数组,用于返回CDataChoice类对话框中被选中数据的参数数值[4]。3.3用户界面本系统的用户界面分为三类,分别为UG软件菜单栏、UG对话框和利用MFC制作的Windows界面。UG软件菜单栏的制作通过UG/OpenMenuScript实现[5]。菜单脚本文件扩展名为*.men,存放在startup文件夹中。用CASCADE_BUTTON语句来定义子菜单;ACTIONS语句标示选择菜单是要完成的动作,一般调用UG对话框*.dlg文件。图7所示为进入系统的菜单通道,是本系统中唯一一处使用的UG软件菜单栏。图7菜单栏UG对话框应用UG/OpenUIStyler进行设计,在UG中选择UserInterfaceStyler命令进行操作。对话框对于控件的访问需要如下的几种工具:UF_STYLER_ask_value函数,用于获取控件中用户输入的值,为程序提供数据传递,是联系用户与程序的桥梁;UF_STYLER_set_value函数,主要用于设置控件中的值,把程序中处理数据的结果返回到控件中,为用户的输入提供响应;UF_STYLER_item_value_type_p_t数据类型,是结构体类型的指针,主要用于以上的两种函数中,完成数据信息在用户与程序之间的交互[6]。Windows界面使用VisualC++界面编辑功能进行设计制作。利用MFC类与UG/OpenAPI混合编程的技术,利用void*空指针类型进行UG/OpenAPI与MFC数据的双向传递,实现数据库技术与系统的融合[7]。在VisualC++中对界面相应的Cpp文件进行代码编写,完成参数计算操作等各种功能,并最终生成可以供UG/OpenAPI调用的DLL文件,从而完成UG对Windows界面的调用。3.4数据库系统在VisualC++平台上基于ODBC开发C/S结构的数据库模块,将数据集中管理分散使用,便于保证数据的完整性和安全性[8]。3.4.1数据库的开发过程应用Access进行数据库的物理模型设计,然后人工注册数据源。在VisualC++中建立DLL文件,利用VisualC++的MFC类库中提供的数据库访问方法,根据不同的任务选择,完成对数据库数据的读取、查询、添加、删除和插入等操作。3.4.2CDatabase和CRecordSet类对象CDatabase类对象和CRecordSet类对象是MFCODBC中的两个比较重要的类。CDatabase类对象用于建立与数据源的连接。首先构造一个CDatabase类对象,然后调用CDatabase(下转第48页)485预防措施5.1已制品处理将
本文标题:复杂曲面件模具设计的计算机辅助系统开发
链接地址:https://www.777doc.com/doc-283938 .html