杜 江,曹 巖,杜來紅
(1.西安工業(yè)大學(xué) 機(jī)電工程學(xué)院,西安710021;2.西安財經(jīng)學(xué)院 管理學(xué)院,西安710010)
圓柱螺旋彈簧作為一類典型零件在機(jī)電產(chǎn)品中應(yīng)用廣泛,對其的設(shè)計建?;顒釉趯?shí)際中被設(shè)計人員反復(fù)開展.針對此情況,在基于三維計算機(jī)輔助設(shè)計(Computer Aided Deisgn,CAD)系統(tǒng)和關(guān)系數(shù)據(jù)庫系統(tǒng)靜態(tài)記錄管理圓柱螺旋彈簧二維尺寸、三維模型等數(shù)據(jù)的基礎(chǔ)上,如果能基于所記錄的圓柱螺旋彈簧零件數(shù)據(jù)進(jìn)一步探討封裝圓柱螺旋彈簧設(shè)計流程的方法,則可以有效輔助設(shè)計人員通過對已有圓柱螺旋彈簧相關(guān)設(shè)計數(shù)據(jù)及知識的重用而按當(dāng)前設(shè)計使用要求實(shí)現(xiàn)圓柱螺旋彈簧的自動化設(shè)計建模[1-6].功能驅(qū)動的圓柱螺旋彈簧三維(Three Dimensional,3D)零件庫的概念就是基于這一認(rèn)識而提出的.文中在利用三維CAD技術(shù)、關(guān)系數(shù)據(jù)庫技術(shù)依職能歸類記錄彈簧零件數(shù)據(jù)的基礎(chǔ)上,進(jìn)一步從三維CAD系統(tǒng)和關(guān)系數(shù)據(jù)庫系統(tǒng)功能集成的角度探討建立可輔助設(shè)計人員依設(shè)計使用要求通過對已有彈簧設(shè)計數(shù)據(jù)和知識的高效重用而實(shí)現(xiàn)圓柱螺旋彈簧自動化設(shè)計建模的3D零件庫系統(tǒng).以期有效解決圓柱螺旋彈簧的重復(fù)設(shè)計問題,從設(shè)計知識得以準(zhǔn)確有效重用的方式和方法角度,為機(jī)電領(lǐng)域產(chǎn)品中針對典型通用零件的自動化設(shè)計系統(tǒng)和零件庫系統(tǒng)的設(shè)計研發(fā)提供有益的參考.
目前,基于二維、三維CAD系統(tǒng)開發(fā)的二維Two Dimensional,2D)、3D 零件庫系統(tǒng)已在實(shí)際應(yīng)用中取得了良好的效果.但針對以圓柱螺旋彈簧為代表的系列典型通用零件,若僅針對其系列化、標(biāo)準(zhǔn)化的特點(diǎn)開發(fā)以管理尺寸數(shù)據(jù)為主的3D零件庫顯然不能很好解決其重復(fù)設(shè)計效率低下的問題.其原因就在于圓柱螺旋彈簧的結(jié)構(gòu)尺寸在實(shí)際中是依據(jù)其承載等設(shè)計使用需求依國標(biāo)所規(guī)定的尺寸動態(tài)計算查定的.與之對應(yīng),為了能夠基于CAD技術(shù)和數(shù)據(jù)庫技術(shù)有效解決圓柱螺旋彈簧的重復(fù)設(shè)計問題,對于圓柱螺旋彈簧3D零件庫的開發(fā)顯然應(yīng)在依據(jù)國標(biāo)規(guī)定分別運(yùn)用三維CAD系統(tǒng)和關(guān)系數(shù)據(jù)庫系統(tǒng)歸類記錄管理圓柱螺旋彈簧的二維尺寸和三維模型數(shù)據(jù)的基礎(chǔ)上,進(jìn)一步解決如何按圓柱螺旋彈簧設(shè)計使用要求完成其結(jié)構(gòu)尺寸的自動計算和檢索以及對應(yīng)彈簧零件的自動建模問題.這就是“功能驅(qū)動的圓柱螺旋彈簧3D零件庫”的內(nèi)涵所在.其本質(zhì)就是在基于傳統(tǒng)方法建庫歸類靜態(tài)記錄管理圓柱螺旋彈簧二維、三維零件數(shù)據(jù)的基礎(chǔ)上,進(jìn)一步依據(jù)圓柱螺旋彈簧的“載荷、變形量”等設(shè)計使用要求而實(shí)現(xiàn)對其的自動化設(shè)計建模[1-2].基于上述分析,功能驅(qū)動的圓柱螺旋彈簧3D零件庫的基本系統(tǒng)結(jié)構(gòu)如圖1所示.
圖1 功能驅(qū)動的圓柱螺旋彈簧3D零件庫系統(tǒng)結(jié)構(gòu)Fig.1 Function driven 3Dpart library structure of cylindrical helical spring
從圖1可見,功能驅(qū)動的圓柱螺旋彈簧3D零件庫系統(tǒng)具有三層次的體系結(jié)構(gòu),底層是基于關(guān)系數(shù)據(jù)庫系統(tǒng)和三維CAD系統(tǒng)所建立和管理的圓柱螺旋彈簧的2D、3D零件數(shù)據(jù),基于它們可為圓柱螺旋彈簧的設(shè)計選型、檢索、計算和自動化建模形成可重用的數(shù)據(jù)平臺.中間層是針對底層彈簧零件數(shù)據(jù)實(shí)現(xiàn)“讀取訪問、記錄、存儲和維護(hù)管理”職能的三維CAD系統(tǒng)、關(guān)系數(shù)據(jù)庫系統(tǒng).最上層則是封裝了彈簧設(shè)計流程可輔助設(shè)計人員按當(dāng)前設(shè)計目標(biāo)和使用要求完成對應(yīng)圓柱螺旋彈簧設(shè)計建模的自動化設(shè)計建模程序.基于它可通過中間層的關(guān)系數(shù)據(jù)庫系統(tǒng)和三維CAD系統(tǒng)按當(dāng)前的設(shè)計目標(biāo)和使用要求通過對底層彈簧零件數(shù)據(jù)的有效檢索和重用而動態(tài)完成所需圓柱螺旋彈簧的設(shè)計計算和自動化建模.依圖1所示系統(tǒng)結(jié)構(gòu),開發(fā)建立功能驅(qū)動的圓柱螺旋彈簧3D零件庫的所需解決的關(guān)鍵問題[3-4]主要有三個問題:① 圓柱螺旋彈簧二維、三維零件數(shù)據(jù)依職能的歸類記錄存儲和一致關(guān)聯(lián)描述;② 依設(shè)計使用要求的圓柱螺旋彈簧功能參數(shù)的定義及基于功能參數(shù)的彈簧設(shè)計流程和方法;③ 功能參數(shù)驅(qū)動的圓柱螺旋彈簧設(shè)計及自動建模程序.
針對上述功能驅(qū)動的圓柱螺旋彈簧3D零件庫系統(tǒng)的實(shí)現(xiàn)目標(biāo),通過問題①的求解,可使不同類型彈簧數(shù)據(jù)彼此之間在彈簧設(shè)計過程中的檢索調(diào)用次序和關(guān)系得到穩(wěn)定和明確.從而可為通過對它們的重用來實(shí)現(xiàn)彈簧設(shè)計建模過程的自動化提供數(shù)據(jù)層面的保證.通過問題②的求解,可實(shí)現(xiàn)彈簧設(shè)計目標(biāo)的明確化和參量化,從而可使圓柱螺旋彈簧在不同設(shè)計和使用需求下的設(shè)計步驟和計算方法也得到明確.通過對問題③的求解,可以開發(fā)程序封裝圓柱螺旋彈簧在不同設(shè)計目標(biāo)下的設(shè)計流程和計算方法,通過對已有圓柱螺旋彈簧設(shè)計數(shù)據(jù)和知識的重用,實(shí)現(xiàn)圓柱螺旋彈簧的自動化設(shè)計和建模[5].
依《圓柱螺旋彈簧設(shè)計計算》(GB 23935-2009)所規(guī)定的設(shè)計方法,圓柱螺旋彈簧在實(shí)際中的設(shè)計目標(biāo)和使用要求主要體現(xiàn)“載荷、變形量”等層面.與之對應(yīng)可將圓柱螺旋彈簧的功能參數(shù)可定義為:最大工作載荷Fmax、工作載荷F和變形量f.上述三個功能參數(shù)與圓柱螺旋彈簧其他結(jié)構(gòu)參數(shù)見表1.
表1 圓柱螺旋彈簧的功能參數(shù)和結(jié)構(gòu)參數(shù)Tab.1 Function and structure parameters of cylindrical helical spring
圓柱螺旋彈簧功能參數(shù)與其他結(jié)構(gòu)參數(shù)之間的計算關(guān)系為
式中:[τ]為材料許用剪切應(yīng)力;[σ]為材料許用彎曲應(yīng)力;G為材料剪切模量;E為材料彈性模量.
針對表1所示圓柱螺旋彈簧功能、結(jié)構(gòu)參數(shù)以及之間的關(guān)系,對于拉伸和壓縮彈簧,可按如下4個步驟實(shí)現(xiàn)功能參數(shù)驅(qū)動的彈簧零件設(shè)計建模,功能參數(shù)驅(qū)動的扭轉(zhuǎn)彈簧設(shè)計計算流程與之類似,具體為
1)依使用要求選定彈簧結(jié)構(gòu)類型,并按其工作空間查取可行的中徑D取值.
2)依查定的中經(jīng)D,基于功能參數(shù)Fmax按式(1)計算并依據(jù)彈簧材料數(shù)據(jù)表查定符合要求的簧絲直徑d以及剪切模量G、彈性模量E數(shù)據(jù).
3)基于設(shè)計確定的D、d、G、E數(shù)據(jù),依工作載荷F按式(2)計算確定彈簧圈數(shù)n并基于設(shè)計計算所得n值進(jìn)一步計算確定圓柱螺旋彈簧的螺距t等其他結(jié)構(gòu)尺寸,實(shí)現(xiàn)按設(shè)計目標(biāo)和使用要求完成對圓柱螺旋彈簧全部結(jié)構(gòu)參數(shù)的設(shè)計和計算.
4)基于設(shè)計計算所得結(jié)構(gòu)尺寸數(shù)據(jù)調(diào)用更新對應(yīng)的彈簧零件3D模型完成彈簧零件的自動化建模.
根據(jù)上面分析的功能驅(qū)動的彈簧設(shè)計流程,如何基于CAD系統(tǒng)和關(guān)系數(shù)據(jù)庫系統(tǒng)依職能實(shí)現(xiàn)對圓柱螺旋彈簧二維、三維零件設(shè)計數(shù)據(jù)的歸類記錄和存儲是按上述流程開發(fā)建立功能驅(qū)動的圓柱螺旋彈簧3D零件庫所必須考慮解決的問題.這也是通過對彈簧零件數(shù)據(jù)準(zhǔn)確有效設(shè)計重用而實(shí)現(xiàn)其設(shè)計自動化的保證.雖然實(shí)際中圓柱螺旋彈簧按其結(jié)構(gòu)和制造工藝的不同在國標(biāo)中規(guī)定了多種不同類型,但各種結(jié)構(gòu)類型圓柱螺旋彈簧的設(shè)計和使用都是穩(wěn)定的,因此,依據(jù)上述功能驅(qū)動的彈簧設(shè)計流程中設(shè)計數(shù)據(jù)之間的調(diào)用步驟和關(guān)系,可按表2所示內(nèi)容對彈簧零件數(shù)據(jù)依其職能而實(shí)現(xiàn)歸類,進(jìn)而可依據(jù)所歸類彈簧零件數(shù)據(jù)的特點(diǎn)及彼此間的關(guān)系,運(yùn)用CAD系統(tǒng)和關(guān)系數(shù)據(jù)庫系統(tǒng)實(shí)現(xiàn)對其的歸類記錄和管理.
針對功能驅(qū)動的彈簧設(shè)計流程,表2方法為基于程序而實(shí)現(xiàn)功能驅(qū)動的彈簧設(shè)計流程奠定了基礎(chǔ),由表2可知?dú)w類后的彈簧零件的“標(biāo)識數(shù)據(jù)、零件2D結(jié)構(gòu)圖以及3D模型”這三類數(shù)據(jù)之間基于所描述的彈簧零件存在一一對應(yīng)的關(guān)聯(lián)關(guān)系.因此,圓柱螺旋彈簧的2D結(jié)構(gòu)圖和3D模型數(shù)據(jù)可以采用可擴(kuò)展標(biāo)記語言(Extenside Markup Language,XML)文件實(shí)現(xiàn)對它們的一致性關(guān)聯(lián)描述,為通過程序?qū)崿F(xiàn)對它們的自動化檢索和調(diào)用提供支持.
表2 圓柱螺旋彈簧零件數(shù)據(jù)依職能的數(shù)據(jù)歸類Tab.2 Data sorting by function of cylindrical helical spring
相對于圓柱螺旋彈簧的2D結(jié)構(gòu)圖和3D模型數(shù)據(jù),其中徑尺寸和簧絲材料數(shù)據(jù)在彈簧設(shè)計流程中具有通用性,因此可基于關(guān)系數(shù)據(jù)庫系統(tǒng)采用如表3所示方式加以記錄管理,不必考慮其一致性維護(hù)問題.
表3 彈簧材料表Tab.3 Cylindrical helical spring material table
在依上述方法對圓柱螺旋彈簧零件數(shù)據(jù)依職能歸類記錄存儲的基礎(chǔ)上,顯然可依據(jù)上述功能驅(qū)動的彈簧設(shè)計流程開發(fā)對應(yīng)程序?qū)崿F(xiàn)圓柱彈簧依功能要求的自動化設(shè)計和建模.
功能驅(qū)動的圓柱螺旋彈簧3D零件庫系統(tǒng)的功能需通過圖1體系結(jié)構(gòu)中最上層的圓柱螺旋彈簧設(shè)計及自動建模程序加以實(shí)現(xiàn).基于所記錄彈簧零件數(shù)據(jù),此程序可通過與設(shè)計人員的交互動態(tài)獲取對應(yīng)的彈簧設(shè)計目標(biāo)和要求數(shù)據(jù)并按功能驅(qū)動的彈簧設(shè)計流程完成對應(yīng)彈簧零件的自動化設(shè)計和建模[6-8].該程序針對各類彈簧零件數(shù)據(jù)進(jìn)行的操作和數(shù)據(jù)調(diào)用流程作如圖2所示.
根據(jù)前文所分析的功能驅(qū)動的圓柱螺旋彈簧3D零件庫的體系結(jié)構(gòu),圖2所給出的有關(guān)彈簧中徑等尺寸數(shù)據(jù)和三維模型數(shù)據(jù)的操作和調(diào)用流程顯然需要通過對關(guān)系數(shù)據(jù)庫系統(tǒng)以及CAD系統(tǒng)的二次開發(fā)加以實(shí)現(xiàn).與之對應(yīng),在以Access數(shù)據(jù)庫系統(tǒng)和ProE CAD系統(tǒng)為平臺記錄管理歸類彈簧二維尺寸和三維模型數(shù)據(jù)的基礎(chǔ)上,可以采用表4所示類對象或Protookit函數(shù)編程實(shí)現(xiàn)圖2中的數(shù)據(jù)操作和調(diào)用流程,達(dá)到通過對所歸類記錄的彈簧零件數(shù)據(jù)重用而按設(shè)計目標(biāo)和使用要求完成圓柱螺旋彈簧自動設(shè)計建模的目標(biāo).
基于上面所分析的方法,本文以ProE CAD為平臺在VC編程環(huán)境下基于Protookit通過對ProE系統(tǒng)和Access系統(tǒng)的二次開發(fā)所開發(fā)建立的功能參數(shù)驅(qū)動的圓柱螺旋彈簧自動化設(shè)計建模程序的運(yùn)行界面如圖3所示.
圖3中程序界面左側(cè)為基于Cpersistent-TreeCtrl、CbitmapContrl、MSXML2 等幾個類對象建立的可交互顯示彈簧類型的樹視圖窗口.
圖2 功能參數(shù)驅(qū)動的圓柱螺旋彈簧自動化設(shè)計建模程序的數(shù)據(jù)操作和調(diào)用流程Fig.2 Data operation and process of cylindrical helical spring automation design model driven by function
圖3 功能參數(shù)驅(qū)動的圓柱螺旋彈簧自動化設(shè)計建模程序運(yùn)行界面Fig.3 Automation design model procedure running interface of cylindrical helical spring automation design model driven by function
基于圖3可實(shí)現(xiàn)對彈簧類型的瀏覽和選?。缑嬷虚g為基于CbitmapContrl類編程建立的可依所選彈簧類型動態(tài)顯示對應(yīng)彈簧2D結(jié)構(gòu)圖的位圖控件窗口,右側(cè)上面為基于CEdit類所編制建立的功能參數(shù)輸入?yún)^(qū)域,下面為基于CDatabase、Crecordset、CListCtrl類編程建立的彈簧中徑D和簧絲直徑d的檢索、選擇窗口區(qū)域.界面下端則是基于CEdit類建立的圓柱螺旋彈簧螺距t、圈數(shù)n等結(jié)構(gòu)參數(shù)的設(shè)計結(jié)果顯示窗口.該程序通過與設(shè)計人員的交互可以按以上所分析的設(shè)計流程依所獲取的功能參數(shù)完成對圓柱螺旋彈簧各結(jié)構(gòu)尺寸的自動計算并顯示給設(shè)計人員.當(dāng)設(shè)計人員點(diǎn)擊確定按鈕后,程序可以基于ProMdlRetrieve和ProMdlDisplay兩個函數(shù)動態(tài)打開所選類型彈簧零件的三維模型,并基于當(dāng)前計算所得結(jié)構(gòu)尺寸數(shù)據(jù)通過ProParameterValueSet函數(shù)實(shí)現(xiàn)對模型結(jié)構(gòu)尺寸數(shù)據(jù)的更新,通過ProSolidRegenerate函數(shù)實(shí)現(xiàn)模型按計算所得尺寸的再生,完成所需螺旋彈簧零件3D模型的自動化設(shè)計建模.
針對典型通用零件在實(shí)際產(chǎn)品開發(fā)過程中所普遍存在重復(fù)設(shè)計問題,本文以圓柱螺旋彈簧為對象從按設(shè)計使用需求實(shí)現(xiàn)零件自動化設(shè)計建模角度提出了功能驅(qū)動的3D零件庫的概念,并結(jié)合主流三維CAD系統(tǒng)ProE和關(guān)系數(shù)據(jù)庫系統(tǒng)Access研究了其實(shí)現(xiàn)的關(guān)鍵技術(shù)和方法,開發(fā)建立了功能驅(qū)動的圓柱螺旋彈簧3D零件庫系統(tǒng).文中所提出的方法不僅可以有效解決圓柱螺旋彈簧的重復(fù)設(shè)計問題,而且也是從設(shè)計知識和過程重用角度,探索通過對三維CAD系統(tǒng)和數(shù)據(jù)庫系統(tǒng)的功能集成而實(shí)現(xiàn)機(jī)電領(lǐng)域工程應(yīng)用型數(shù)據(jù)庫系統(tǒng)開發(fā)的一次有益嘗試.
[1] 張欣,莫蓉,陳濤,等.面向設(shè)計意圖不變的三維CAD模型重用方法[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,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] 王致民,劉小瑩.基于生命系統(tǒng)理論的機(jī)械產(chǎn)品功能建模方法研究[J].機(jī)械設(shè)計與制造,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] 白靜,周廣平.面向設(shè)計重用的工程零件設(shè)計特征模型構(gòu)建[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,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].西安交通大學(xué)學(xué)報,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] 李杰,趙孟,蘇瑩,等.復(fù)雜產(chǎn)品設(shè)計的知識建模與重用研究[J].制造業(yè)自動化,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] 岳良建,陳功,宋海娃,等.設(shè)計重用及其在產(chǎn)品設(shè)計中的應(yīng)用[J].機(jī)電產(chǎn)品開發(fā)與創(chuàng)新,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] 陳旭玲,樓佩煌,唐敦兵,等.概念設(shè)計中功能驅(qū)動的消化吸收再創(chuàng)新研究[J].計算機(jī)集成制造系統(tǒng),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] 蔡昭權(quán),盧慶武,鄭宗暉,等.基于元數(shù)據(jù)的快速開發(fā)平臺設(shè)計與實(shí)現(xiàn)[J].計算機(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)