孫炎+仲梁維+劉營營



摘要:傳統的剪板機設計費時費力,無法適應現代快速變化的競爭環境。以剪板機為例,結合傳統的參數化設計方法,構建了基于Pro/E二次開發的剪板機快速設計系統。該快速設計系統以VB.NET為開發平臺,Pro/E軟件為開發對象,Microsoft Office Access為開發數據庫,并結合VB API函數實現了剪板機的快速設計與開發。經實例驗證,該系統的使用可以極大地減少企業開發時間,提高產品設計效率。
關鍵詞:剪板機;二次開發;快速設計;參數化建模;VB.NET
中圖分類號:TP319
文獻標識碼:A
文章編號:16727800(2017)004013903
0引言
剪板機是一種用于切斷板材、型材或切割類似紙質材料的典型機械設備,廣泛應用于電機電器、儀器儀表、鍋爐壓力容器等輕工行業。近年來,由于中、小企業的蓬勃發展,對于剪板機的需求大增,品種規格也隨著用戶的要求各異而日漸增多。但大部分不同規格的剪板機設計都以同類機型為參照,只對部分結構進行了少量修改,因而設計中大部分都具有重復性,很少有全新設計。為提高生產效率和設計水平,進行快速設計十分必要[1]。 快速設計是為了適應快速變化的市場,將二次開發技術運用到剪板機產品設計中,以最大程度縮短產品設計周期,減少設計者的重復勞動,提升企業的生產力和競爭力,使企業適應快速變化的現代市場。本文提出利用 VB.NET對 Pro/E進行二次開發的方法,通過建立參數化設計平臺,進而快速生成設計圖紙,成功實現了剪板機快速設計系統。
1系統總體設計方案
1.1快速設計系統總體結構
該剪板機快速設計系統主要包含3部分,即基于Pro/E的剪板機參數化基礎模型、可視化用戶系統以及相關的參數數據庫[2]。剪板機參數化基礎模型的建立在Pro/E中完成,建模過程中需要添加參數作為驅動模型的基礎,然后定義各特征之間的關系用于聯系參數,最終在裝配體的建模過程中,需要保證各組件之間的完全約束。參數化模型的建立與最終的產品完成度緊密相關,該部分是整個快速設計系統開發過程中最基礎的一部分。可視化用戶系統包含前端用戶界面與后端程序,該部分連接模型與數據庫,同時也是人機交互的重要組成部分,是整個系統的核心。
產品設計相關知識包含在數據庫中,本系統使用Microsoft Office Access作為后端數據庫。數據庫包含設計參數庫與歷史資料庫,剪板機設計過程中需要用到關鍵的結構參數信息以及相關設計知識,將這些資料合理有序地存儲起來以更好地為設計者服務。以剪板機快速設計系統為例,設計參數庫包括剪板機前托料架長度、刀架位置等信息,歷史資料庫包括設計者、設計意圖、產品編號等信息。剪板機快速設計系統整體結構框架如圖1所示。
1.2快速設計系統工作流程
依據系統整體結構框架,基于Pro/E二次開發的剪板機快速設計系統工作流程分為3個步驟[3]:首先用戶根據設計要求由可視化界面中輸入相應參數,然后程序自動匹配參數數據庫檢測相似性,若匹配到重復設計,則彈出提示“是否打開歷史設計模型”。當需要打開歷史模型時,系統會從數據庫中自動調取三維模型圖與二維工程圖,從而避免重復設計,提高模型利用率;若無重復設計,系統則會自動驅動Pro/E生成新的產品模型圖與工程圖。在用戶得到新的產品設計圖紙時,經過核對可根據需要進行重新設計或參數修改,直到完成最終的產品設計。系統的具體工作流程如圖2所示。
2剪板機快速設計系統中的關鍵技術
2.1參數模型建立
基于Pro/E的二次開發需要通過程序驅動模型自動完成新產品設計,因此在前期三維基礎模型建立過程中,幾何關系定義尤為重要。在三維參數化建模過程中,可以將部分無法通過幾何約束表達的經驗公式和設計準則推導出數學關系,然后通過Pro/E軟件中的關系定義,將某些尺寸的變動同基礎尺寸關聯起來,最終由VB.NET程序驅動某一基本參數自動改變關聯參數,完成復雜的建模過程[4]。在完成關系定義后,復雜三維模型的生成與修改則會變得簡單快捷,這種由一種參數控制多種參數變動的方法在整個系統的設計中十分關鍵。基于Pro/E二次開發的剪板機快速設計系統中機架部分關系與參數定義如圖3所示。
2.2快速設計系統前期搭建
在基于Pro/E二次開發的快速設計系統中,采用Microsoft Visual Studio 2008作為開發平臺,VB.NET作為開發語言,Pro/E WildFire 5.0 作為開發對象,Microsoft Office Access作為開發數據庫。該平臺可以運行于Windows7/8 系統平臺中。快速設計系統中Pro/E與VB.NET分屬不同平臺,因此首先需要連接兩大平臺。連接過程需要3個步驟:首先完成系統環境變量的設置,在Windows系統下,新建變量名為pro_comm_msg_exe,變量值指向pro_comm_msg_exe文件所在的完整路徑,該文件全路徑為:
[Proe_loadpoint]\
其中Proe_loadpoint為Proe安裝路徑,Systemtype為Windows系統類型。當使用32位Windows系統時,Systemtype為i486_nt,否則為x86_win64。以64位Windows7系統為例,環境變量設置如圖4所示。
然后進行COM組件的注冊,利用Pro/E提供的COM組件注冊文件vb_api_register.bat,該文件路徑為[5-6]:
[Proe_loadpoint]\\bin\\vb_api_register.bat
最后在VB.NET中添加Proe VB API Type Library組件的引用,當添加這一COM組件后,只需要在程序中Import pfcls命名空間即可正常調用VB API函數。
2.3程序控制模型與數據庫連接
2.3.1程序控制模型 在VB.NET程序中,通過程序驅動模型的改變,在模型的處理過程中根據不同特征需要使用不同的處理類,每一個大類根據驅動參數的不同控制不同零件的變動或者裝配體的變化[7]。以上功能的主要代碼如下:(1)激活與驅動模型。
//激活窗口 Dim window1 As pfcls.IpfcWindow //定義變量 Dim session As pfcls.IpfcSession Dim Casync As New pfcls.CCpfcAsyncConnection AsyncConnection=Casync.Connect(DBNull.Value,DBNull.Value.DBNull.Value, DBNull.Value) Session = asyncConnection.Session Window1 = session.CurrentWindow //連接當前窗口 Window1.Activate() //窗口激活 Window1.Repaint() //窗口重建 //前托料架驅動參數 2 500KFY Model=asyncConnection.Session.getmodel("2500KFY.asm",EpfcModelType.EpfcMDL_ASSEMBLY) //獲取模型 Params = CType(model, IpfcParameterOwner).ListParams() //得到模型參數 For i7 = 0 To params.Count - 1 //循環修改參數 Param = params.Item(i7) Paramunit = param.Units Select Case param.Name …… End Select〖HT〗(2)保存、重建模型。
RegInstr = (New CCpfcRegenInstructions).Create(True, True, Nothing) Model = asyncConnection.Session.CurrentModel Solid = CType(model, IpfcAssembly) Solid.Regenerate(regInstr) AsyncConnection.Session.GetModelWindow(solid).Repaint() Model.Save()
2.3.2數據庫連接 通過VB.NET對Microsoft Office Access數據庫的連接是通過與ADO(Active Date Object,即ActiveX數據對象)、OLE-DB(Object Linking and Embedding-Datebase,即Active數據對象)技術相結合,它包含了外部程序對數據庫執行訪問、查詢、更新等操作的類庫[8]。該功能的主要功能代碼如下:
//連接數據庫 Dim connstr As String="Provider=Microsoft.ACE.OLEDB.12.0;Data Sourc;DataSource=CASC.accdb " Dim conn As New OleDbConnection (connstr) Conn.Open() Dim mycom As New OleDbCommand Dim AccStr As String = "SELECT * FROM *" Mycom = New OleDbCommand (AccStr,conn) cmd.ExecuteNcmd.ExecuteNonQuery ()//執行操作 conn.Close ()//關閉數據庫連接
3應用實例
剪板機快速設計系統界面主要由環境配置、工作參數等構成。環境配置可以設置企業的個性化要求,如產品型號、設計人員等信息;剪板機作為大型復雜的機械設備,結〖LL〗構參數數量很多,工作參數設計界面僅顯示關鍵參數內容,其它參數由關鍵參數根據關系定義自動變化,在對需要修改的關鍵參數確認后,快速設計系統自動驅動各模塊完成零件、裝配體的生成與圖紙的驅動;最后系統自動將設計信息保存到數據庫中供下次使用[9]。快速設計系統生成的剪板機最終模型如圖5所示。
4結語
本文將Pro/E 的二次開發應用于剪板機的快速設計中,借助PTC Pro 提供的VB API函數接口和VB.NET完成快速設計系統的搭建。利用該系統可以幫助企業解決剪板機設計過程中工作量大、易于出錯的問題,提高了工作效率,從根本上提升了企業綜合競爭力。
參考文獻:[1]張明富,黃治中.國內外折彎機、剪板機現狀和發展趨勢[J].鍛壓機械,1994(2):5961.
[2]劉龍,朱林波.基于VB的Pro/E二次開發方法的再探討[J].金屬加工冷加工,2009(13):6567.
[3]吳慶鳴,宗馳,張志強,等.基于公理化和知識的機械產品快速設計[J].武漢理工大學學報,2009(24):6266,86.[4]黃愷,李雷,劉杰.Pro/E參數化設計高級應用教程[M].北京:化學工業出版社,2008.
[5]Parametric Technology Coporation. PTC Pro parametric 3.0 VB API user′s guide[M].USA:PTC,2010.
[6]劉慶立,曹巨江,姚素芬,等.利用Visual Basic對Pro/E進行二次開發的方法研究[J].機械傳動,2010,34(1):4750.[7]鐘崴,童水光.鍋爐智能CAD的技術和方法研究[J].浙江大學學報:工學版,2006,40(4):572576.
[8]王建正.基于產品平臺的快速設計集成系統研究與開發[D].北京:機械科學研究總院,2008.
[9]甘淑娟.基于VB.NET與Access的題庫管理系統設計與實現[J].軟件導刊,2013,12(7):117119.
(責任編輯:黃健)