张衡岳
(沙市大学机械工程系,湖北 荆州 434000)
机械产品模块化设计平台的构建
张衡岳
(沙市大学机械工程系,湖北 荆州 434000)
在研究了各种模块化设计方法及其具体实例的基础上,以面向对象的统一建模语言(UML)为工具,构建出了满足一般机械产品的模块化设计平台模型,该平台模型包括3个子系统:平台框架构建子系统,产品方案设计子系统和设计资源管理子系统。主要分析了3个子系统的功能、结构和程序实现技术。该平台模型可以极大地提高设计系统的质量,缩短设计系统所花费的时间。
模块化设计;产品平台;模块;设计平台
以数字化、集成化、并行化、网络化为基础,以缩短产品设计开发周期为目标的模块化设计技术是快速设计出满足用户个性化需求的机械产品的有效手段[1]。针对模块化设计中现有的设计理论和方法难于满足不同类型产品设计的需要,同时还缺乏计算机辅助模块化设计工具和平台的问题,笔者在分析现有的有关理论和实践资料[2,3]的基础上,提出了一种机械产品模块化设计平台的实现方法,并构建了该平台系统。该系统主要包括平台框架构建、产品方案设计和设计资源管理3个子系统。
图1 平台框架构建子系统结构图
1)结构和功能 平台框架构建子系统的结构[4]如图1所示,笔者将其分割为6个不同的子功能分别予以实现。平台框架构建子系统的功能是提供统一的数据库结构,为所定制的模块化设计系统建立底层数据库。根据对产品的规划和需要,各个子功能分别完成各个数据库的建立,如建立产品系列子功能完成产品系列库与系列矩阵库的建立等等。
2)数据库结构 该数据库的结构可以根据用户的定制需要进行动态更新,对于数据库中的所有存储表分为2类:①动态数据表。根据设计者的定制需要而动态建立或删除的表,其个数不限。②静态数据表[5]。不会被设计者删除,其结构也不会被修改的数据表,其结构如图2所示。
图2中模块描述表与产品系列表分别存储所定制系统的所有模块与产品系列,2张表为设计者提供了使用树状父子关系的模块与产品系列的构建方式,其结构设计为程序递归写入和读出作了准备。为了能够清晰表达模块与产品系列的矩阵关系,使用模块矩阵表与产品矩阵表存贮模块矩阵与产品矩阵。产品平台描述表存储各个系列的产品平台与模块之间的对应关系。模块关联表、系列与模块关联表,分别存储模块间连接关系和产品系列与模块之间的连接关系。
图2 平台框架构建子系统静态数据表结构
3)软件实现技术 软件系统采用面向对象建模的构建技术[5,6],各个子功能的实现是依靠不同的对象类来实现的。每一个子功能的实现都包含一个或多个类,为了减小子系统的各个子功能之间的耦合度,使程序在发生变化时易于修改,各个子功能的类之间尽量减小关联。平台框架构建子系统的类库规划如图3所示。
图3 平台框架构建子系统类库规划
在图3中,中间的各个类如wxfModelCreate等均继承自wxfObject类,wxfObject类中实现了各个类中都需要的数据成员,如连接对象conn,初始化数据库操作等。wxfDB类实现数据库的基本操作,包括根据查询条件得到数据集,向数据库中插入数据、修改数据和删除数据等。由于这一系列的基本操作是每一个功能类都需要的,所以中间各个类都包含了wxfDB类。
图4 产品方案设计系统结构
1)结构和功能 产品方案设计子系统的结构如图4所示。需求参数录入子功能完成设计者对产品参数的定制,该子功能实现中,既允许设计者从已有的参数之中选择,同时设计者也可以根据需要由手工填入所需要的值。产品系列选择子功能由设计者选择具体对哪一个系列产品进行设计,系统根据设计者的具体选择而呈现相应的产品设计系统,它决定了模块查询与选择等子功能运行哪一种产品设计系统。模块查询与选择子功能根据设计者输入的需求参数在数据库中搜索相匹配的模块或产品平台,设计者根据需要选择具体的模块或产品平台添加到选择列表中。对于系统搜索出来的模块,设计者可以根据需要转入设计资源子系统对模块的详细信息进行查看。产品组装验算子功能根据用户选择的模块和产品平台进行模块间的连接验算,以确定所选择的模块或产品平台是否可以组装为一个产品。设计者认为组装出来的产品符合要求,则可以使用产品信息打印子功能打印出BOM表、模块清单等具体信息。
2)软件实现技术 产品方案设计子系统的主要类库规划如图5所示。
图5 产品方案子系统类库规划
wxfPALoader类的主要功能为根据设计者对产品系列的选择加载相应的产品平台及模块。wxfPAIntegrality类完成验证功能,它调用wxfPASeries类的功能函数从数据库中取出设计者所选择的产品系列所对应的模块,然后与选择列表中的模块进行比对,检查组装产品所需要的所有模块是否已经齐全。wxfPASearch类根据需求参数选择匹配的模块或产品平台,该类调用wxfProductComparer或wxfModuComparer类的功能函数对需求参数和数据库中的模块进行对比,从而选择出符合要求的具体模块或产品平台。如果不存在与需求参数相匹配的模块或产品平台,则自动生成新模块或新产品平台任务书。
图6 设计资源管理子系统结构
图7 设计资源子系统类图规划
1)结构和功能 用户在建立了上述的平台框架后,需要向数据库中添加内容,设计资源管理子系统完成该功能,其结构如图6所示。它被分割为7个不同的子功能。添加产品模块,删除产品模块,修改产品模块子功能分别完成模块的添加,修改,删除。添加产品平台,修改产品平台,删除产品平台子功能分别完成其相应的操作。显示模块信息子功能完成模块的基本信息的查看与浏览。
2)软件实现技术 设计资源子系统的主要类库规划如图7所示,wxfManageTreeLoad类的主要功能为将数据库中的模块及产品平台按相应的逻辑关系加载到管理树中,呈现在设计者眼前的将是一棵按模块与模块,模块与产品平台的逻辑关系排列的树,模块或产品平台被加载为该树上的一个节点。产品平台模块是产品平台的子节点,子模块是父模块的子节点。与平台框架构建类库规划相似,所有功能类继承自wxfObject类,所有功能类都包含数据库操作类wxfDB类。
笔者对模块化设计平台的具体实现作了较详细的描述,包括平台框架构建子系统,产品设计子系统,设计资源管理子系统的系统结构及类库规划,还对有关的重点程序作了详细描述。针对不同机械产品的模块化设计,设计者可以根据需要在该平台的基础上开发其所需的模块化设计软件。但模块化设计系统的开发十分复杂,它涉及到不同的学科领域知识和设计方法。该系统仅是一个原型系统,系统的功能和平台开发工具还待完善。
[1]徐震,徐联中.机械产品模块化设计[J].制造业设计技术,2007,(5):21~23.
[2]高淑英,徐燕申.面向广义模块化设计的机械产品模块数据建模及其应用研究[J].机床与液压,2006,(1):6~8.
[3]蔡业彬.模块化设计方法及其在机械设计中的应用[J].机械设计与制造, 2005,(8):11~13.
[4]Maier J R,Simpson T W,Mistree F.Product platform design:method and application[J].Research in Engineering Design,2001,13(1):2~22.
[5]刘润东.UML对象设计与编程[M].北京:北京希望电子出版社,2001.
[6]张龙祥,UML与系统分析设计[M].北京:人民邮电出版社,2006.1~20.
[编辑] 易国华
TH122
A
1673-1409(2009)03-N088-04
2009-05-12
张衡岳(1965-),男, 1989年大学毕业,讲师,现主要从事机械设计和制造方面的教学与研究工作。