张郭勇
(中国西南电子技术研究所,四川 成都 610036)
基于SolidWorks的产品零部件个性化设计
张郭勇
(中国西南电子技术研究所,四川 成都 610036)
摘要:针对工业产品的零部件个性化设计展开了研究,提出了一种零部件个性化设计技术方案和实现方法。基于参数化设计思想,利用数据库技术将个性化零部件参数与产品数据关联,自动生成所需零部件规格参数,并自动更新模型。研究中以SolidWorks和Access为支撑平台,以VC++6.0为二次开发工具,针对床头柜外形和把手外观进行了设计,开发了个性化设计平台,实现了预期功能。
关键词:个性化设计;参数化设计;SolidWorks;二次开发;数字化设计
工业革命之后,依靠以标准化为基础的大批量机器生产模式迅速占领市场,满足了消费者对产品的大量需求。然而,随着科技的迅猛发展,产品的生命周期越来越短,消费需求也正在迅速地变化和分化[1]。随着信息化时代的到来,人们对于产品设计提出了更高的要求,标准化的设计已不能满足消费者个性化的需求。企业要想赢得市场,就应加强对消费者需求的理解,对多元化需求做出有力的对应,开发出高效、可行的产品个性化设计平台,以个性化的产品回馈社会,才能更好地营造并保持市场优势[2]。目前,产品个性化设计的主要思路是在定型产品的基础上针对某些个性化零部件结合消费者意愿进行外形、外观的修改,以满足消费者的个人喜好。对于应用上述思路并且结合三维设计软件开发的产品零部件个性化设计平台还比较少见。
基于此,提出以SolidWorks和Access为支撑平台,利用VC++6.0对SolidWorks进行二次开发,开发一种使得产品外形尺寸参数化设计,个性化零部件自动更换及其外观参数任意选择的个性化设计平台。
1SolidWorks二次开发关键技术和方法
1.1SolidWorks二次开发的关键技术
SolidWorks(以下简称SW)二次开发的技术主要有2种:1)基于OLE技术,可以开发exe形式的程序;2)基于COM技术,可以生成*.dll格式的文件,作为SW的插件在SW中被加载运用[3]。本文研究采用第2种开发技术。
1.2使用ATL对象向导进行二次开发
ATL即活动模板库,支持利用C++语言编写ASP代码以及其他ActiveX程序。通过活动模板库,可以建立COM组件,然后通过ASP页面中的脚本对COM对象进行调用[4]。
利用ATL开发SW之前,应将SW API SDK解压缩并根据向导安装,然后在VC++ 6.0中选择ATL COM Wizard创建动态链接库,加入相关代码,编译生成动态链接库(*.dll)文件。此方式可在SW插件管理器中生成插件,并以菜单形式自动添加新建或打开的视图中,以完成特定功能。
1.3数据库的建立和链接
本文需要使用个性化零部件的几何、属性等数据,在研究中运用数据库可以使对数据的访问和操作更加安全方便。在本文中数据库采用Access,使用ODBC接口访问数据库。
ODBC接口通过操作平台的驱动程序与应用程序的交互来实现对数据库的操作,避免了在应用程序中直接调用与数据库相关的操作,从而使数据库保持了独立性[5]。
2个性化设计平台总体结构
本文开发的个性化设计平台主要功能为实现产品外形尺寸参数化设计,个性化零部件自动更换及其外观参数任意选择,因此,个性化设计平台由操作界面、参数化建模和数据库等三大部分组成,各部分的运行及其相互间的联动由后台程序完成,后台程序由各专用功能类组成。平台操作界面主要为人机交互界面,集成了个性化设计的全部功能。参数化建模主要实现零部件参数的更改及模型的建立。数据库主要存储个性化零件规格及其几何、属性等数据,以方便平台调用。平台总体结构如图1所示。
图1 平台总体结构图
3零部件参数化建模
3.1SW三维系统参数层级划分
零部件三维参数化设计所涉及的参数很多,如果不对参数进行分级处理,就会出现一些用户不需要的参数也由用户来修改,使用起来很不方便。为此本文采用参数分级手段来简化参数,把用户不关心的尺寸参数封装起来,并将参数划分为主动参数、从动参数和通用参数等3种类型[6]。
主动参数是指系统提供给用户并允许用户修改的参数;从动参数是指在设计过程中由SW方程式计算得到的参数;通用参数是指通过查阅相关资料得到的标准参数,也就是一般不需要变化的参数。3种参数之间可以形成某种函数关系。
3.2基于SW的零部件参数化建模方法
3.2.1程序驱动直接建模
程序驱动直接建模是指开发程序软件与SW建立联系,程序调用SW API函数,设置模型的主动参数,直接建立零件并且自动装配,其流程如图2所示。
图2 程序直接驱动建模流程图
3.2.2关联驱动建模
关联驱动建模是指首先在SW中建好模型,建立主动参数和从动参数之间的方程式关系,然后编写程序驱动主动参数,使从动参数关联改变,最后生成用户所需的模型,其流程如图3所示。本文基于第2种参数化建模方法,提出了一种产品零部件个性化设计方案。
图3 关联驱动建模流程图
4零部件个性化设计思路
零部件个性化设计主要包括零部件外形尺寸变化、个性化零件自动更换及其外观参数自由选择。本文通过VC++6.0开发一个集成上述3种功能的个性化设计平台,功能由编写的专用类来实现,并且将此平台通过插件的形式与SW结合起来,方便用户的使用。主要设计流程为启动平台,选择产品,设置参数,经过程序后台优化设计,得到最终想要的结果,其设计流程如图4所示。
图4 个性化设计流程图
外形尺寸变化主要是通过在零件建模和装配过程中设置主动尺寸、从动尺寸以及二者之间的方程式关系。通过平台调用SW API函数IModelDoc2::IParameter()和Dimension::SetSystemValue2(),驱动主动尺寸,实现外形尺寸关联变化。
个性化零件大多属于非标准件,所以在其更换前应完成零件的设计,将其存储于零件库中,并将零件的个性属性、完全路径等参数存储在Access数据库中。个性化零件自动更换主要由SW装配功能中的“替换零/部件”子功能来实现,关键技术是遍历技术。平台通过遍历FeatureManager设计树,来定位需要更换的零件,并调用SW API函数AssemBlyDoc::ReplaceComponents(),驱动“替换零/部件”功能,完成零件的更换。在更换完毕后,再调用函数EquationMgr::Add2()和EquationMgr::put_Equation(),设置个性化零件从动尺寸与装配体主动尺寸之间的方程式关系,实现装配尺寸关联。
个性化零部件外观参数自由选择主要是将MFC颜色选择对话框集成在个性化设计平台上,用户根据个人喜好选择颜色,并通过平台调用函数Configuration::SetColor(),驱动SW设置该零件的颜色属性配置,实现颜色的变换。上述3项功能既可以单独实现,也可以同时实现。
5设计实例分析
本文以床头柜的个性化设计为例,说明如何按照上述方法实现零部件的个性化设计。床头柜的外形参数主要为其长、宽、高、板材厚度以及抽屉尺寸,个性化零部件为抽屉的把手。根据上述方法将实现尺寸的参数化设计,把手自动更换及其颜色的自由选择。
上述功能的实现主要由CSwObj(VC++与SW连接类)、CSwTestDlg(平台界面操作类)、CMyRecordset(VC++与Access数据库连接类)和CConfig(个性化功能操作类)等4个类实现。
启动SW,运行平台,平台界面如图5所示。选择并打开模型,视图中出现设计前的床头柜模型(见图6)。模型中把手为圆把手,把手颜色为黑金属色。在“更换把手规格”界面中选择方把手,确定后把手自动更换。在“设置把手颜色”界面中选择红色,确定后把手颜色变为红色。在方程式文本框中输入把手配合长度与板材厚度之间的方程式,点击“添加方程式”按钮,方程式即添加成功。在尺寸参数设置栏中输入设计所需参数后,点击“尺寸驱动”按钮,模型自动变化,得到想要的个性化设计结果,设计后模型如图7所示。
图5 个性化设计平台界面
图6 设计前床头柜模型 图7 个性化设计后的模型
6结语
基于SW平台,使用VC++6.0对SW进行了二次开发,并结合Access数据库,编写了针对床头柜外形参数以及把手规格和外观参数的个性化设计平台,实现了本文提出的个性化设计的方法,对于将个性化设计与消费者需求结合起来开展了有意义的尝试,提高企业产品的市场竞争力具有重要意义。
参考文献
[1] 巢琳芝,韩春明.个性化办公家具设计研究[D].合肥:合肥工业大学,2005.
[2] 李勇.论产品设计中的标准化与个性化[J].成都理工大学学报:社会科学版,2003,11(4):34-36.
[3] 王文波,涂海宁,熊星君.SolidWorks 2008二次开发基础与实例(VC++)[M].北京:清华大学出版社,2009.
[4] 百度百科.ATL[DB/OL].[2004-05-31]. http://baike.baidu.com/view/370167.htm.
[5] 梁建武,陈英.Visual C++程序设计实验指导与实训[M].北京:中国水电出版社,2006.
[6] 龚春全,严忠胜,王天驰,等.基于SolidWorks的磨床零部件三维参数化CAD系统[J].制造业信息化,2009(2):49-51.
责任编辑郑练
The Individuation Design for Components of Products based on SolidWorks
ZHANG Guoyong
(Southwest China Institute of Electronic Technology, Chengdu 610036, China)
Abstract:By researching the individuation design for parts of the industrial products, a technical solution and an implementation method are proposed. Based on the idea of the parametric design, and using database technology, the parameters of personalized parts are associated with the product data, then the required specification parameters of the parts are automatically generated, and the model is automatically updated. In accordance with the design on the appearance of bedside cabinet and handle, the study used SolidWorks and Access as the support platform, and used VC++6.0 as the re-development tool, so that the personalized design platform is developed. Finally, it realizes the expected function.
Key words:individuation design, parametric design, SolidWorks, re-development, digitization design
收稿日期:2015-09-18
作者简介:张郭勇(1989-),男,助理工程师,硕士,主要从事数字化工艺、数字化设计等方面的研究。
中图分类号:TP 391.72;TH 122
文献标志码:A