杜 江,曹 岩,杜来红
(1.西安工业大学 机电工程学院,西安710021;2.西安财经学院 管理学院,西安710010)
圆柱螺旋弹簧作为一类典型零件在机电产品中应用广泛,对其的设计建模活动在实际中被设计人员反复开展.针对此情况,在基于三维计算机辅助设计(Computer Aided Deisgn,CAD)系统和关系数据库系统静态记录管理圆柱螺旋弹簧二维尺寸、三维模型等数据的基础上,如果能基于所记录的圆柱螺旋弹簧零件数据进一步探讨封装圆柱螺旋弹簧设计流程的方法,则可以有效辅助设计人员通过对已有圆柱螺旋弹簧相关设计数据及知识的重用而按当前设计使用要求实现圆柱螺旋弹簧的自动化设计建模[1-6].功能驱动的圆柱螺旋弹簧三维(Three Dimensional,3D)零件库的概念就是基于这一认识而提出的.文中在利用三维CAD技术、关系数据库技术依职能归类记录弹簧零件数据的基础上,进一步从三维CAD系统和关系数据库系统功能集成的角度探讨建立可辅助设计人员依设计使用要求通过对已有弹簧设计数据和知识的高效重用而实现圆柱螺旋弹簧自动化设计建模的3D零件库系统.以期有效解决圆柱螺旋弹簧的重复设计问题,从设计知识得以准确有效重用的方式和方法角度,为机电领域产品中针对典型通用零件的自动化设计系统和零件库系统的设计研发提供有益的参考.
目前,基于二维、三维CAD系统开发的二维Two Dimensional,2D)、3D 零件库系统已在实际应用中取得了良好的效果.但针对以圆柱螺旋弹簧为代表的系列典型通用零件,若仅针对其系列化、标准化的特点开发以管理尺寸数据为主的3D零件库显然不能很好解决其重复设计效率低下的问题.其原因就在于圆柱螺旋弹簧的结构尺寸在实际中是依据其承载等设计使用需求依国标所规定的尺寸动态计算查定的.与之对应,为了能够基于CAD技术和数据库技术有效解决圆柱螺旋弹簧的重复设计问题,对于圆柱螺旋弹簧3D零件库的开发显然应在依据国标规定分别运用三维CAD系统和关系数据库系统归类记录管理圆柱螺旋弹簧的二维尺寸和三维模型数据的基础上,进一步解决如何按圆柱螺旋弹簧设计使用要求完成其结构尺寸的自动计算和检索以及对应弹簧零件的自动建模问题.这就是“功能驱动的圆柱螺旋弹簧3D零件库”的内涵所在.其本质就是在基于传统方法建库归类静态记录管理圆柱螺旋弹簧二维、三维零件数据的基础上,进一步依据圆柱螺旋弹簧的“载荷、变形量”等设计使用要求而实现对其的自动化设计建模[1-2].基于上述分析,功能驱动的圆柱螺旋弹簧3D零件库的基本系统结构如图1所示.
图1 功能驱动的圆柱螺旋弹簧3D零件库系统结构Fig.1 Function driven 3Dpart library structure of cylindrical helical spring
从图1可见,功能驱动的圆柱螺旋弹簧3D零件库系统具有三层次的体系结构,底层是基于关系数据库系统和三维CAD系统所建立和管理的圆柱螺旋弹簧的2D、3D零件数据,基于它们可为圆柱螺旋弹簧的设计选型、检索、计算和自动化建模形成可重用的数据平台.中间层是针对底层弹簧零件数据实现“读取访问、记录、存储和维护管理”职能的三维CAD系统、关系数据库系统.最上层则是封装了弹簧设计流程可辅助设计人员按当前设计目标和使用要求完成对应圆柱螺旋弹簧设计建模的自动化设计建模程序.基于它可通过中间层的关系数据库系统和三维CAD系统按当前的设计目标和使用要求通过对底层弹簧零件数据的有效检索和重用而动态完成所需圆柱螺旋弹簧的设计计算和自动化建模.依图1所示系统结构,开发建立功能驱动的圆柱螺旋弹簧3D零件库的所需解决的关键问题[3-4]主要有三个问题:① 圆柱螺旋弹簧二维、三维零件数据依职能的归类记录存储和一致关联描述;② 依设计使用要求的圆柱螺旋弹簧功能参数的定义及基于功能参数的弹簧设计流程和方法;③ 功能参数驱动的圆柱螺旋弹簧设计及自动建模程序.
针对上述功能驱动的圆柱螺旋弹簧3D零件库系统的实现目标,通过问题①的求解,可使不同类型弹簧数据彼此之间在弹簧设计过程中的检索调用次序和关系得到稳定和明确.从而可为通过对它们的重用来实现弹簧设计建模过程的自动化提供数据层面的保证.通过问题②的求解,可实现弹簧设计目标的明确化和参量化,从而可使圆柱螺旋弹簧在不同设计和使用需求下的设计步骤和计算方法也得到明确.通过对问题③的求解,可以开发程序封装圆柱螺旋弹簧在不同设计目标下的设计流程和计算方法,通过对已有圆柱螺旋弹簧设计数据和知识的重用,实现圆柱螺旋弹簧的自动化设计和建模[5].
依《圆柱螺旋弹簧设计计算》(GB 23935-2009)所规定的设计方法,圆柱螺旋弹簧在实际中的设计目标和使用要求主要体现“载荷、变形量”等层面.与之对应可将圆柱螺旋弹簧的功能参数可定义为:最大工作载荷Fmax、工作载荷F和变形量f.上述三个功能参数与圆柱螺旋弹簧其他结构参数见表1.
表1 圆柱螺旋弹簧的功能参数和结构参数Tab.1 Function and structure parameters of cylindrical helical spring
圆柱螺旋弹簧功能参数与其他结构参数之间的计算关系为
式中:[τ]为材料许用剪切应力;[σ]为材料许用弯曲应力;G为材料剪切模量;E为材料弹性模量.
针对表1所示圆柱螺旋弹簧功能、结构参数以及之间的关系,对于拉伸和压缩弹簧,可按如下4个步骤实现功能参数驱动的弹簧零件设计建模,功能参数驱动的扭转弹簧设计计算流程与之类似,具体为
1)依使用要求选定弹簧结构类型,并按其工作空间查取可行的中径D取值.
2)依查定的中经D,基于功能参数Fmax按式(1)计算并依据弹簧材料数据表查定符合要求的簧丝直径d以及剪切模量G、弹性模量E数据.
3)基于设计确定的D、d、G、E数据,依工作载荷F按式(2)计算确定弹簧圈数n并基于设计计算所得n值进一步计算确定圆柱螺旋弹簧的螺距t等其他结构尺寸,实现按设计目标和使用要求完成对圆柱螺旋弹簧全部结构参数的设计和计算.
4)基于设计计算所得结构尺寸数据调用更新对应的弹簧零件3D模型完成弹簧零件的自动化建模.
根据上面分析的功能驱动的弹簧设计流程,如何基于CAD系统和关系数据库系统依职能实现对圆柱螺旋弹簧二维、三维零件设计数据的归类记录和存储是按上述流程开发建立功能驱动的圆柱螺旋弹簧3D零件库所必须考虑解决的问题.这也是通过对弹簧零件数据准确有效设计重用而实现其设计自动化的保证.虽然实际中圆柱螺旋弹簧按其结构和制造工艺的不同在国标中规定了多种不同类型,但各种结构类型圆柱螺旋弹簧的设计和使用都是稳定的,因此,依据上述功能驱动的弹簧设计流程中设计数据之间的调用步骤和关系,可按表2所示内容对弹簧零件数据依其职能而实现归类,进而可依据所归类弹簧零件数据的特点及彼此间的关系,运用CAD系统和关系数据库系统实现对其的归类记录和管理.
针对功能驱动的弹簧设计流程,表2方法为基于程序而实现功能驱动的弹簧设计流程奠定了基础,由表2可知归类后的弹簧零件的“标识数据、零件2D结构图以及3D模型”这三类数据之间基于所描述的弹簧零件存在一一对应的关联关系.因此,圆柱螺旋弹簧的2D结构图和3D模型数据可以采用可扩展标记语言(Extenside Markup Language,XML)文件实现对它们的一致性关联描述,为通过程序实现对它们的自动化检索和调用提供支持.
表2 圆柱螺旋弹簧零件数据依职能的数据归类Tab.2 Data sorting by function of cylindrical helical spring
相对于圆柱螺旋弹簧的2D结构图和3D模型数据,其中径尺寸和簧丝材料数据在弹簧设计流程中具有通用性,因此可基于关系数据库系统采用如表3所示方式加以记录管理,不必考虑其一致性维护问题.
表3 弹簧材料表Tab.3 Cylindrical helical spring material table
在依上述方法对圆柱螺旋弹簧零件数据依职能归类记录存储的基础上,显然可依据上述功能驱动的弹簧设计流程开发对应程序实现圆柱弹簧依功能要求的自动化设计和建模.
功能驱动的圆柱螺旋弹簧3D零件库系统的功能需通过图1体系结构中最上层的圆柱螺旋弹簧设计及自动建模程序加以实现.基于所记录弹簧零件数据,此程序可通过与设计人员的交互动态获取对应的弹簧设计目标和要求数据并按功能驱动的弹簧设计流程完成对应弹簧零件的自动化设计和建模[6-8].该程序针对各类弹簧零件数据进行的操作和数据调用流程作如图2所示.
根据前文所分析的功能驱动的圆柱螺旋弹簧3D零件库的体系结构,图2所给出的有关弹簧中径等尺寸数据和三维模型数据的操作和调用流程显然需要通过对关系数据库系统以及CAD系统的二次开发加以实现.与之对应,在以Access数据库系统和ProE CAD系统为平台记录管理归类弹簧二维尺寸和三维模型数据的基础上,可以采用表4所示类对象或Protookit函数编程实现图2中的数据操作和调用流程,达到通过对所归类记录的弹簧零件数据重用而按设计目标和使用要求完成圆柱螺旋弹簧自动设计建模的目标.
基于上面所分析的方法,本文以ProE CAD为平台在VC编程环境下基于Protookit通过对ProE系统和Access系统的二次开发所开发建立的功能参数驱动的圆柱螺旋弹簧自动化设计建模程序的运行界面如图3所示.
图3中程序界面左侧为基于Cpersistent-TreeCtrl、CbitmapContrl、MSXML2 等几个类对象建立的可交互显示弹簧类型的树视图窗口.
图2 功能参数驱动的圆柱螺旋弹簧自动化设计建模程序的数据操作和调用流程Fig.2 Data operation and process of cylindrical helical spring automation design model driven by function
图3 功能参数驱动的圆柱螺旋弹簧自动化设计建模程序运行界面Fig.3 Automation design model procedure running interface of cylindrical helical spring automation design model driven by function
基于图3可实现对弹簧类型的浏览和选取.界面中间为基于CbitmapContrl类编程建立的可依所选弹簧类型动态显示对应弹簧2D结构图的位图控件窗口,右侧上面为基于CEdit类所编制建立的功能参数输入区域,下面为基于CDatabase、Crecordset、CListCtrl类编程建立的弹簧中径D和簧丝直径d的检索、选择窗口区域.界面下端则是基于CEdit类建立的圆柱螺旋弹簧螺距t、圈数n等结构参数的设计结果显示窗口.该程序通过与设计人员的交互可以按以上所分析的设计流程依所获取的功能参数完成对圆柱螺旋弹簧各结构尺寸的自动计算并显示给设计人员.当设计人员点击确定按钮后,程序可以基于ProMdlRetrieve和ProMdlDisplay两个函数动态打开所选类型弹簧零件的三维模型,并基于当前计算所得结构尺寸数据通过ProParameterValueSet函数实现对模型结构尺寸数据的更新,通过ProSolidRegenerate函数实现模型按计算所得尺寸的再生,完成所需螺旋弹簧零件3D模型的自动化设计建模.
针对典型通用零件在实际产品开发过程中所普遍存在重复设计问题,本文以圆柱螺旋弹簧为对象从按设计使用需求实现零件自动化设计建模角度提出了功能驱动的3D零件库的概念,并结合主流三维CAD系统ProE和关系数据库系统Access研究了其实现的关键技术和方法,开发建立了功能驱动的圆柱螺旋弹簧3D零件库系统.文中所提出的方法不仅可以有效解决圆柱螺旋弹簧的重复设计问题,而且也是从设计知识和过程重用角度,探索通过对三维CAD系统和数据库系统的功能集成而实现机电领域工程应用型数据库系统开发的一次有益尝试.
[1] 张欣,莫蓉,陈涛,等.面向设计意图不变的三维CAD模型重用方法[J].计算机辅助设计与图形学学报,2012(10):1356.ZHANG Xin,MO Rong,CHEN Tao,et al.Design Intent Preserved Reuse of 3DCAD Models[J].Journal of Computer-Aided Design Computer &Graphic,2012(10):1356.(in Chinese)
[2] 王致民,刘小莹.基于生命系统理论的机械产品功能建模方法研究[J].机械设计与制造,2012(2):209.WANG Zhi-min,LIU Xiao-ying.Function Modeling Based on Living System Theory for Mechanical Products[J].Machinery Design & Manufacture,2012(2):209.(in Chinese)
[3] 白静,周广平.面向设计重用的工程零件设计特征模型构建[J].计算机辅助设计与图形学学报,2011(4):622.BAI Jing,ZHOU Guang-ping.Design Reuse Oriented Construction of Design Feature Models of Engineering Parts[J].Journal of Computer Aided Design & Computer Graphics,2011(4):622.(in Chinese)
[4] 白晓亮,张树生,张开兴.面向重用的三维CAD模型检索算法[J].西安交通大学学报,2011(1):74.BAI Xiao-liang,ZHANG Shu-sheng,ZHANG Kaixing.Algorithm for 3-Dimensional CAD Model Retrieval Based on Reuse[J].Journal of Xi’an Jiaotong Univeristy,2011(1):74.(in Chinese)
[5] 李杰,赵孟,苏莹,等.复杂产品设计的知识建模与重用研究[J].制造业自动化,2010(2):102.LI Jie,ZHAO Meng,SU Ying,et al.The Model and Reuse of Complex Product Design Knowledge Research[J].Manufacturing Automation,2010(2):102.(in Chinese)
[6] 岳良建,陈功,宋海娃,等.设计重用及其在产品设计中的应用[J].机电产品开发与创新,2010(1):42.YUE Liang-jian,CHEN Gong,SONG Hai-wa,et al.Design Reuse and Its Application in Product Design[J].Development & Innovation of Machinery &Electrical Products,2010(1):42.(in Chinese)
[7] 陈旭玲,楼佩煌,唐敦兵,等.概念设计中功能驱动的消化吸收再创新研究[J].计算机集成制造系统,2009(10):1873.CHEN Xu-ling,LOU Pei-huang,TANG Dun-bing,et al.Assimilation and Recreation Driven by Function in Conceptual Design [J].Computer Integrated Manufacturing Systems,2009(10):1873.(in Chinese)
[8] 蔡昭权,卢庆武,郑宗晖,等.基于元数据的快速开发平台设计与实现[J].计算机工程,2009,(5):60.CAI Zhao-quan,LU Qing-wu,ZHENG Zong-hui,et al. Design and Implementation of Rapid Development Platform Based on Metadata[J].Computer Engineering,2009,9(5):60.(in Chinese)