SolidWorks平臺下的擠壓模具CAD系統(tǒng)
本文基于SolidWorks軟件平臺開發(fā)了一套擠壓模具C A D系統(tǒng),該系統(tǒng)將專家知識和設(shè)計經(jīng)驗存儲于模具結(jié)構(gòu)和零件模型中,通過選用不同模具組件的結(jié)構(gòu)形狀,實現(xiàn)了擠壓模具的優(yōu)化設(shè)計,同時也保證了設(shè)計質(zhì)量,加快了設(shè)計速度。 SolidWorks軟件采用了特征建模技術(shù)和設(shè)計過程的全相關(guān)技術(shù),是目前領(lǐng)先的、主流的三維CAD軟件。它具有配置管理、協(xié)同工作、零件建模、裝配設(shè)計、全相關(guān)工程圖、鈑金設(shè)計、有限元分析和動態(tài)仿真等多項功能,在機械制造業(yè)的應(yīng)用非常廣泛。該軟件為用戶提供了功能強大的API接口,而且具有宏錄制功能,所以可以很方便地進行二次開發(fā)。本文所述的就是以SolidWorks軟件為平臺開發(fā)的一套擠壓模具CAD系統(tǒng)。 基于SolidWorks平臺的擠壓模具CAD系統(tǒng)將大量的專家知識和設(shè)計經(jīng)驗存儲于模具結(jié)構(gòu)和零件模型中,通過選用不同模具組件的結(jié)構(gòu)形狀,來達到擠壓模具的優(yōu)化設(shè)計。此外,它還能利用模具零件間的裝配形式和裝配關(guān)系實現(xiàn)擠壓模具的自動裝配,生成模具零件工程圖和裝配體工程圖,從而提高了擠壓模具設(shè)計的智能度,減少了設(shè)計人員的工作量,并保證了設(shè)計質(zhì)量,加快了設(shè)計速度。 該系統(tǒng)以Visual Basic為開發(fā)工具,利用VB的面向?qū)ο缶幊陶Z言、模塊化和組件共享等技術(shù),建立擠壓模具CAD系統(tǒng)的用戶界面及程序代碼;利用SolidWorks建立模具各部分組件的模型;還可以通過對SolidWorks提供的API接口函數(shù)進行二次開發(fā)來實現(xiàn)對模型庫的調(diào)用;并利用ADO數(shù)據(jù)庫訪問技術(shù)實現(xiàn)對零件模型的參數(shù)化驅(qū)動,最終生成模具零件工程圖和模具總裝配圖。
圖1 擠壓模具CAD系統(tǒng)結(jié)構(gòu)
一、系統(tǒng)設(shè)計進程 1.系統(tǒng)的功能和應(yīng)用 首先選擇合適的模架,然后選擇擠壓類型,包括正擠壓、反擠壓、復(fù)合擠壓和鐓擠壓等。在不同的擠壓類型里提供模具的凸模、凹模、頂出、預(yù)應(yīng)力及料等不同部分組件的結(jié)構(gòu)形狀,用戶選擇后可以組成一套完整的擠壓模具裝配體結(jié)構(gòu),然后進行單個模具零件的設(shè)計。用戶可以在模具設(shè)計對話框中更改模具零件的參數(shù)尺寸以滿足實際需求,還可以對模具零件的工程圖進行適當(dāng)?shù)男薷囊赃_到最滿意的效果。最后系統(tǒng)將所有設(shè)計好的模具零件按照預(yù)定的裝配關(guān)系自動裝配起來,生成總裝配圖。 2.功能模塊和設(shè)計流程 擠壓模具的CAD系統(tǒng)結(jié)構(gòu)由四個模塊組成,如圖1所示。 (1)模架選擇模塊 系統(tǒng)模架庫里存儲了許多不同類型的模架結(jié)構(gòu),通過選擇不同的模架名稱,在架構(gòu)選擇對話框的右邊將出現(xiàn)該模架的模型圖片。選擇模架的主要零件名稱,可以調(diào)出該零件的模型圖片和參數(shù)信息,選取三維圖按鈕和工程圖按鈕則可以分別打開對應(yīng)的SolidWorks模型文件和工程圖文件,如圖2所示。
圖2 模架選擇界面
(2)擠壓類型選擇模塊 擠壓類型包括正擠壓、反擠壓和復(fù)合擠壓等,通過選取左邊的按鈕確定擠壓類型,在右邊就會出現(xiàn)該種類型的示意圖和擠壓件類型示意圖,如圖3所示。
圖3 擠壓類型選擇界面
(3)模具組件結(jié)構(gòu)選擇模塊 模具組件可分為凸模組件、凹模組件、頂出組件、預(yù)應(yīng)力組件和料組件等,系統(tǒng)建立了模具組件庫供用戶選擇選擇使用。在該模塊中用戶可以選擇不同組件結(jié)構(gòu)的任意一種形狀,點選放大組件按鈕可以查看對結(jié)構(gòu)的詳細(xì)介紹和使用場合,點擊其他組件按鈕可以選擇其他組件,如圖4所示。
圖4 模具組件選擇界面
(4)裝配體結(jié)構(gòu)確認(rèn)模塊 通過上一步選擇模具各部分的組件結(jié)構(gòu),系統(tǒng)將會按照組裝關(guān)系將組合起來的裝配結(jié)構(gòu)圖輸出并讓用戶加以確認(rèn),如果用戶覺得不夠滿意,可以點返回上層按鈕重新選擇各部分組件結(jié)構(gòu)。如果選擇的模具各部分組件不能組成一套裝配圖,系統(tǒng)將彈出一個提示框提示用戶返回重選。確認(rèn)后右邊會出現(xiàn)該裝配結(jié)構(gòu)的零件清單,通過點選不同的零件名稱按鈕將出現(xiàn)模具零件設(shè)計模塊,如圖5所示。
圖5 裝配體確認(rèn)界面
(5)模具零件設(shè)計模塊 系統(tǒng)建立了不同模具零件的尺寸數(shù)據(jù)庫,可以在尺寸屬性對話框中對零件的尺寸和公差進行修改,選取修改按鈕后該零件的SolidWorks模型的尺寸和公差就會實時更新。在注解屬性對話框中可以輸入零件的其他屬性信息,這樣這些信息將在零件工程圖的標(biāo)題欄中顯示出來。當(dāng)用戶滿意后就可以選取保存按鈕對該模型文件進行保存,如圖6所示。
圖6 模具零件設(shè)計界面
(6)工程圖編輯模塊 如果工程圖上的信息不夠準(zhǔn)確、完整和規(guī)范,用戶可以通過本模塊對工程圖加以編輯修改,選擇保存按鈕可以實現(xiàn)工程圖的自動保存,如圖7所示。
圖7 工程圖編輯界面
(7)自動裝配模塊 系統(tǒng)按照預(yù)定的裝配結(jié)構(gòu)和裝配關(guān)系對設(shè)計好的各種模具零件進行自動裝配。系統(tǒng)輸出的模具裝配體和裝配體工程圖,如圖8和圖9所示。 此時已完成該系統(tǒng)的主要功能,使用該系統(tǒng)可以促進擠壓模具的高效和快速設(shè)計,并且已經(jīng)在生產(chǎn)實踐中得到充分的檢驗。事實證明,這套系統(tǒng)的工作效率很高,并且工作狀況。
圖8 系統(tǒng)輸出的裝配體模型
二、系統(tǒng)模具零件設(shè)計模塊部分源程序 鑒于本系統(tǒng)的源程序比較龐大,所以本文只給出系統(tǒng)模具零件設(shè)計模塊部分的源程序。 Dim ss As String Dim boolstatus As Boolean ss=App.Path &“\圖形庫\三維\” Set swApp=CreateObject("SldWorks.Application") swApp.Visible = True '調(diào)用SolidWorks程序 Set Part = swApp.OpenDoc6(ss & “\反擠壓\6\凸模.SLDPRT”, 1, 0,“”, longstatus, longwarnings)
圖9 系統(tǒng)輸出的工程圖
Set Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID(“注解”, “DCABINET”, 0,0, 0, False, 0, Nothing) '打開對應(yīng)的模型文件 Dim rs As ADODB.Recordset Dim conn As ADODB.Connection '定義ADO對象變量 ss = App.Path & "\database\" Set conn = New ADODB.Connection conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" & “Persist Security Info=False;” & “Mode=read;”& “Data Source=” & ss & “模具零件庫.mdb;” c onn.Open ‘建立ADO連接,打開數(shù)據(jù)庫 newTableName = Str(2011) A d o d c 1 . R e c o r d S o u r c e =newTableName Adodc1.Refresh S e t D a t a G r i d 1 . D a t a S o u r c e =Adodc1 ‘打開記錄集,讀取模具零件型號 DataGrid1.Row = 0 For i = 1 To DataGrid1.Columns.Count 1 D(i) = DataGrid1.Columns(i).Value Next DataGrid1.Row = 1 For i = 1 To DataGrid1.Columns.Count 1 tolMax(i) = DataGrid1.Columns(i).Value Next DataGrid1.Row = 2 For i = 1 To DataGrid1.Columns.Count 1 tolMin(i) = DataGrid1.Columns(i).Value Next '存入模具零件尺寸值和公差值 B o o l s t a t u s = P a r t . E x t e n s i o n .SelectByID(“D1@草圖1@凸模.SLDPRT”, “DIMENSION”, 0, 0, 0, False, 0,Nothing) Part.Parameter(“D1@草圖1”).SystemValue = D(1) / 1000 retval = Part.Parameter(“D1@草圖1”).SetToleranceValues(tolMin(1) /1000, tolMax(1) / 1000) ‘驅(qū)動模具零件尺寸和公差 三、結(jié)論 基于S o l i d W o r k s平臺的擠壓模具CAD系統(tǒng)通過集成大量擠壓模設(shè)計資料和專家經(jīng)驗,形成了模具設(shè)計知識庫,為典型擠壓零件的模具設(shè)計提供了完整的計算機輔助設(shè)計手段,甚至連一些缺乏經(jīng)驗的技術(shù)人員也能夠利用本系統(tǒng)完成擠壓模具的設(shè)計,從而有利于擠壓技術(shù)的推廣和應(yīng)用。同時該系統(tǒng)也是對SolidWorks專業(yè)化應(yīng)用的開拓與實踐,對其余專業(yè)從事SolidWorks本地化專業(yè)化的二次開發(fā)具有重要借鑒意義。為了使本系統(tǒng)更加完整,目前正在補充模具強度校核部分。
|