在线工博会

基于对象知识的级进模三维零件库设计
为节省流量,手机版未显示文章中的图片,请点击此处浏览网页版
随着制造业信息化的发展,UG、Pro/E等具有参数化功能的三维CAD软件已广泛应用于模具产品的设计和制造中,这对提高模具的设计质量和效率起到了重要的促进作用。模具产品具有多类别、小批量的特点,除模具标准件外,其他模具零部件之间的通用性、替换性不强。所以在对软件三维造型功能提出更高要求的同时,对于建立模具的专用CAD软件应用系统也有迫切需求。在模具设计制造方面,现有的研究成果有参数化法生成模具零部件[1]、模具标准件库设计[2-3]等。在级进模产品设计过程中,相关方面的研究却鲜见,所以设计初级进模三维零件库软件系统对于提高级进模数字化设计效率具有重要意义。本文在组织实施市/国家创新基金项目(09C26215122288)中借助UGNX三维CAD软件平台,利用VisualC++6.0为开发工具,通过UG软件提供的API二次开发功能和参数化功能,建立级进模三维零件库。
级进模三维零件库关键技术
级进模三维零件库关键技术包括:三维零件知识描述与表示、三维零件参数化造型、三维零件库数据库设计、三维零件库系统设计。
1 级进模三维零件知识描述与知识表示
面向对象(Object Oriented,OO)的思想使得知识描述和软件编写更直观,更符合思维习惯,这里采用面向对象的思想对级进模设计进行描述。
级进模设计包括级进模总体结构设计和零部件结构设计,这2个过程都依赖于级进模要生产的零件形状和结构。
根据面向对象的思想,建立级进模设计过程中的各种类。
级进模类标准件是指与由设计人员归纳出的形状结构比较类似的级进模零部件。与标准件不同,类标准件不是国家正式颁布的标准件。不同类型级进模的类标准零件的形状不一定完全相同,所以无法事先确定。由级进模三维零件系统所生成的零件往往不会被设计人员直接用于产品,而是根据工艺和产品要求在非关键的特征处作些修改和细化。
将级进模三维零件抽象为对象,级进模三维零件对象按其通用性分为3类,即标准、类标准件、非标准件。每类对象又可根据功能或形状特征分解为子对象,子对象又可继续分解。每类对象都有自己的属性和行为。由于形状结构的复杂性,部分类别之间出现交叉的情况,即类的多层继承。其树状结构如图1所示。

(图片)

级进模三维零件对象由对象、属性、行为3部分构成。
元组O=(P,A ,B)表示三维零件对象。其中P代表对象名,A代表对象属性,B代表对象行为。
P={P1,P2,…,P N}(N=1,2,…,n)代表三维零件(对象、子对象)集合;A={D,A1,A2,…,AN}(N=1,2,…,n)代表三维零件(对象、子对象)属性,主要指零件的静态或动态信息,包括设计经验和知识等;Ai(1≤i≤n)也是一个属性集,表示子对象Oi(1≤i≤n)设计过程中所依据的设计经验和知识;D={D1,D2,…,Df}(1≤f≤n)为A的子集,表示三维零件(对象、子对象)的名称、编号等部分静态信息;B={D,B1,B2,…,BN}(N=1,2,…,n)代表三维零件(对象、子对象)接受消息的行为集,反映零件的功能。Bj(1≤j≤n)也是一个行为集,表示子对象O(j1≤j≤n)的行为属性。
三维零件属性描述了三维零件的动态信息和静态信息,其中子对象继承父对象的属性。将三维零件的装配行为抽象为对象的行为。若将不同属性的三维零件归纳、整理并建库,则会方便设计人员进行不同类型的级进模设计使用。
对级进模零件进行分类(图2)可以有多种依据,分成不同的类。每类对象由父类对象派生,形成子对象。在派生时,由于每类对象的子对象由父类继承,除了具体的尺寸数值和局部特征发生了变化外,其基本几何特征都相同。因此设计人员使用时只需选择同类件,根据设计知识在UG环境中生成实体,在该实体的基础上补充设计,可以规范设计并极大地简化设计过程、提高设计效率。

(图片)

在子类对象继承父类时,可以多继承。
除了级进模模具零件类,根据级进模将要生产的产品零件,将级进模设计中的设计经验和知识信息等定义为3类:(1)级进模要生产的零件的结构形状知识,称为生产零件类;(2)模具设计知识,包括各种数据图表、经验公式等知识,称为设计知识类;(3)模具零件材料和待生产零件的材料参数等,称为材料参数类。
三维零件库的面向对象知识表示方法,将设计经验、知识信息和材料等都用对象来表示,以对象为单位将知识和控制封装起来,增加了知识的表达能力和知识库的易维护性[3]。
2 三维零件参数化造型
将级进模零部件按面向对象的知识表示方法进行表示,再将级进模零件类别将模具零件分类造型,分别建立相应的三维零件库来存贮分类零件。
根据零件的形状结构形式和功能,进行分析归纳,再将零部件划分类别,确定出三维零件的控制参数及模型尺寸约束关系,进行参数化造型。参数化造型是通过尺寸驱动的方式来生成模型。参数化造型的优势在于尺寸驱动。对于同一类型零件,形状相同、尺寸不同,通过尺寸驱动进行修改,可以快速获得所需零件。
应用UG二次开发中的UG/OPEN API功能和UG中的部件族功能来建立三维零件库,具体过程分为5步[4]。
(1)三维零件造型。在UG建模环境中建立某一个三维零件模型,再以此模型为基础,形成与此模型形状结构类似的零件库。
(2) 选择实体造型参数。针对所建立的零件模型,将系统默认生成的影响三维零件规格的各个参数进行提取和整理,并通过表达式设立相关参数的关系公式。
(3)创建参数表。启动预设置菜单下的电子表格,选择电子表格对话框中的Excel选项,选择工具菜单下的部件族,然后添加选择的参数后创建电子表格,在表格中输入三维零件各个系列的参数值,在部件族菜单下单击保存部件族,同时可以退出UG建模环境。
(4)建立用户界面。在UG应用菜单下单击用户界面编辑器,弹出可以配置的空白对话框,向上面添加自己需要的控件,注意按钮控件回调函数的设置,建立所需要的对话框,保存其生成的3个文件。这时可以在生成的*.C文件中找到建立菜单的代码,将其存为后缀为.men的文件即可使用。
(5)API编程。在VC软件中建立一个MFC DLL工程,将在使用用户界面编辑器建立用户界面时生成的文件添加到这个工程中来,然后在VC中进行相关环境的配置,在Project Settings对话框中Link 选项卡下,在Object/library modules文本框中加入UG库文件,并在Options对话框中,选择Include files选项,建一个指向UG安装路径中的UG OPEN文件夹的路径;在这些配置完成后,就可以在文件中的回调函数添加程序代码,建立界面与模型参数的联系,从而生成一系列三维零件组成三维零件库,如图3所示。

(图片)

3 三维零件库数据库设计
对模具设计过程中新的零部件的设计,要生成所需要尺寸规格和类型的三维零件模型,可从已建立的三维零件库中浏览和查找已建立的零件,方便新零件的设计。对于一个数据库系统,知识存储设计与实现的好坏将直接影响系统的性能[5]。
与级进模三维零件对象定义相对应,设计数据库结构时,共设计4个数据表分别是,存放产品组件信息的组件表(Component Table),存储三维零件分类信息的零件主表(MainTable)。存放三维零件静态属性信息的属性表(Attribute Table)和存放三维零件设计过程知识和经验的知识表(Knowledge Table)。
(1)组件表(Component Table)。此表主要说明零件与所属组件或产品的关系。包括iID、cPartname(零件名称)和cParts(产品或组件名称)3个属性。其中iID与主表的iID对应,Parts存放组件表和零件模型文件的路径。当新添加零件对象时,对应组件表中添加三维零件记录,并形成零件主表。
(2)零件主表(Main Table)。此表包括iID、cName(名称)和cNote(备注,存贮零件功能信息)3个属性,通过与组件表的联系,将图1树状结构形式以数据库方式进行存储,记录三维零件分类信息。其中iID设置序列,便于在数据库添加时获取新ID号。当新添加零件对象时,对应主表中添加三维零件属性记录,并形成属性表和知识表。
(3)属性表(Attribute Table)。此表通过iID与零件主表联系,由模具三维零件的各种静态属性构成,主要反映控制三维零件模型的参数变量,包括零件形状结构、尺寸、几何约束等。用来表达同一类三维零件相同的几何尺寸约束,是系统参数化造型的基础。
(4)知识表(Knowledge Table)。此表通过iID与零件主表联系,由不同三维零件的设计经验和知识构成,如参数范围的选取、公式的计算等。用于表达同一类三维零件相同的知识约束,是实现系统三维零件设计的基础。
这4个表即可将对象的属性表达出来,下面以某级进模中弯曲凸模为例说明。
首先根据组件表Pi(iID,cPartname,cParts)新建零件对象弯曲凸模记录,同时更新零件主表记录,创建新零件弯曲凸模。创建弯曲凸模零件属性表Bi和知识表Ci。Bi={iID,A1,A2,A3,A4,…},给出零件形状特点,尺寸参数,几何约束等信息。Ci={iID,K1,K2,K3,K4,…}中给出了弯曲凸模设计过程中的知识输入,如弯曲回弹计算等。各数据表通过表中iID相互联系,将树状结构存储在数据表中,4个表的数据存储如图4所示。

(图片)

4 三维零件库系统设计
4.1 三层的设计模式
级进模三维零件库采用3层体系结构,使项目结构更清楚,分工更明确,有利于后期的维护和升级[6]。三层结构包含:
(1)数据层:主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层的操作,而不是数据库,具体为逻辑层或应用层提供数据服务。数据层是所处理问题逻辑在独立于显示内容和形式情况下的内在抽象,其封装了问题的核心数据、逻辑和功能的计算关系,并独立于具体的界面表达和输入输出操作。
(2)逻辑层:主要是针对具体问题的操作,也可以理解成对数据层的操作,对数据业务的逻辑处理。如果说数据层是积木,那逻辑层就是对这些积木的搭建。逻辑层用于处理用户与软件的交互操作,其职责是将数据层的改变传播给应用层,确保用户界面与模型间的对应联系。它接受用户的输入,将输入反馈给数据层,进而实现对模型的计算控制,是数据层和应用层协调工作的中间层。如果逻辑层相当强大和完善, 无论应用层如何定义和更改, 逻辑层都能完善地提供服务。
(3)应用层:应用层用于将表示模型数据及逻辑关系和状态的信息以特定形式展示给用户。它从数据层获得显示信息,对于相同的信息可以有多个不同的显示形式。这种3层的设计模式通过用户界面将设计人员和逻辑实现人员分离,为系统提供了良好的可维护性和稳定性。
4.2 级进模三维零件
库系统设计
以UG为平台的级进模三维零件库系统体系结构如图5所示。采用Smart PDM对产品进行数据管理,基于SQL Sever的零件数据库,提供三维零件的数据模型,处于数据层。三维零件的功能工具集接受用户输入信息对数据库进行修改扩充,处于逻辑层。UG平台的界面提供面向用户的交互界面,处于应用层。这种设计模式使设计和应用有了很大的灵活性。数据是独立于界面,具有可移植性。只需要在新平台上对界面和逻辑控制进行修改,可将数据独立地移植到新的工作平台运行[7]。
在级进模三维零件库系统中,逻辑层的三维零件管理组件、API组件、零部件查询及设计工具包是该体系结构的核心部分,不仅是数据层和应用层之间沟通的桥梁,其性能的好坏还直接影响整个系统的运行效果。这部分功能由模具设计和生产部门完成。
应用实例
在UG NX4.0环境中,从开发的菜单打开级进模三维零件库登录界面,通过身份认证即可进入系统。系统可通过级进模三维零件的结构树或查询功能进行三维零件的调用或查看产品结构关系,并通过三维零件设计向导调用设计知识进行三维零件的设计,得到所设计三维零件的关键参数,然后通过自动生成和装配功能模块生成三维实体模型,如图5所示[8]。

(图片)

结束语
本文在研究开发市/国家创新基金项目《基于网络协同的级进模数字化集成设计制造技术》(09C26215122288)的实践中,研究并开发了级进模三维零件库软件系统。实现了模具零部件从设计到三维建模图形生成的一体化,显著地提高了级进模三维零件的设计效率。该系统已初步应用于级进模产品的设计制造,效果良好。
参 考 文 献
[1] 林巨广,洪国俊,方贵盛.汽车覆盖件模具结构面向对象表示方法的研究.模具工业,2000(1):18-21.
[2] 吴雨辰.建立标准件库的几种方法//2000 UGS中国用户论文集.南京:东南大学出版社, 2000.
[3] 马闯,周军,钟志华.面向对象知识表示方法在冲压模具初始设计中的应用.模具技术,2001(1):3-6.
[4] 黄祖勇.应用UG设计汽车模具//2000 UGS中国用户论文集.南京:东南大学出版社, 2000.
[5] 毛雨辉,邱长华.基于知识的雷达典型结构件库的设计与实现.哈尔滨工程大学学报,2007(8): 924-929.
[6] 龙玲,殷国富,胡新如.多工位级进模具运动仿真技术研究与应用.机械设计与制造,(2):239-241.
[7] 胡新如,潘行伟,晏平仲.级进模设计制造技术.航空制造技术,2008(7):65-67.
[8] 胡新如.航空器、汽车共有技术.航空制造技术,2008(13):64-66. 5/12/2012


电脑版 客户端 关于我们
佳工机电网 - 机电行业首选网站