趙慧++吳爽++吳向陽
摘 要:該文介紹了Creo2.0軟件參數化設計在空氣壓縮機設計中的應用。基于Creo/Toolkit利用VS2010作為開發工具,實現了某空氣壓縮機外殼的參數化設計。通過項目的開發實現了壓縮機參數化設計,講解了利用Creo/Toolkit二次開發的方法。項目的實施規范了設計的流程,提高了設計效率,為企業實現產品的系列化生產提供了有力依據,具有重要應用價值。
關鍵詞:參數化 Creo2.0 空氣壓縮機 VS2010 Creo/Toolkit
中圖分類號:TP391 文獻標識碼:A 文章編號:1674-098X(2016)09(b)-0052-02
在空氣壓縮機領域,產品的零部件設計大都采用CAD軟件進行三維設計。并以此作為分析以及后期加工的依據。但傳統的三維造型方法都是技術人員基于零件的結構特點采用各自擅長的方法進行建模,使用的軟件因人而異,即使使用同一軟件造型理念也可能存在很大的隨意性。對于同一系列的產品需要修改尺寸往往需要從頭進行設計,不僅浪費人力、物力,也不利于產品技術資料的管理。該項目針對某型號空氣壓縮機參數特點基于Creo2.0軟件規范了產品各零件的造型方法。提取了其中的有效尺寸參數,基于Creo/Toolkit利用VS2010作為工具研發了空氣壓縮機參數化建模輔助應用程序。
1 Creo的二次開發
Creo Parametric Toolkit是Creo Parametric軟件功能強大的二次開發工具,也稱為應用程序接口[1]。它是實現CAD/CAE/CAM集成的關鍵技術之一。Creo 提供了豐富的二次開發工具,常用的有族表(Family Table)、用戶定義特征(UDF)、Creo/Program、J-link、Creo/Toolkit等[2]。Visual Studio是微軟公司推出的開發環境。其集成開發環境(IDE)的界面被重新設計和組織。除了Microsoft SQL Server,它還支持IBM DB2和Oracle數據庫[3]。
1.1 開發工具簡介
族表(Family Table):當零件具有相同或相近結構時,利用族表來管理十分方便。因此標準件庫的建立或同類型系列型號的產品零件也適合利用族表來管理。壓縮機零件也適合利用該種方法進行管理。
用戶定義特征(UDF):用戶定義特征是將若干個系統特征融合為一個自定義特征,使用時作為一個整體出現。也就是說將某個由多個特征構成的零件比如螺栓或螺母作為一個整體特征進行定義。
Creo/Program:Creo軟件對于每個模型都有一個主要設計步驟和參數列表——Creo/Program。它是基于BASIC語言構成的,用戶可以根據設計需要來編輯該模型的Program,使其作為一個程序來工作。
J-link:J-link是Creo中自帶的基于JAVA語言的二次開發工具。用戶通過JAVA編程實現在軟件Creo中的添加功能。
Creo/Ttoolkit:Creo/Toolkit同J-link一樣也是Creo自帶的二次開發工具,是Creo自帶的功能最強大的二次開發工具。它封裝了許多針對Creo底層資源調用的庫函數與頭文件,借助第三方編譯環境進行調試。它使用面向對象的風格,在Creo與應用程序之間通過函數調用來實現數據信息的傳輸。該項目開發的工具使用的就是Creo/Ttoolkit,下面將介紹Creo/Toolkit二次開發方法。
1.2 Creo/Toolkit二次開發方法
通過Creo/Toolkit作為函數來訪問Creo,在Creo/Toolkit中最基本的兩個概念是對象(Object)和行為(Action)[4]。使用Creo/Toolkit開發應用程序包含3個步驟:編寫源文件,生成可執行文件,可執行文件在Pro/E中注冊并運行。
Creo為應用程序提供兩種工作模式:同步模式和異步模式,前者又分為Spawn(多進程模式)或DLL(動態鏈接庫模式)。采用Spawn模式工作,必須將源文件編譯生成exe文件;若用DLL模式工作,將把源文件生成動態鏈接庫[5]。由于同步模式與Creo緊密集成,猶如Creo自身的功能,運行速度快、可靠性高,因而應該盡可能地使用同步模式[6]。該項目開發采用同步模式進行設計。利用該模式開發出CREO2.0安裝目錄…CREO2.0\CommonFiles\M050\下的以下4個文件,在Creo2.0中嵌入了方便工程設計人員使用的工具按鈕,并以符合專業技術要求且好多對話界面實現壓縮機零件設計。
1.3 Creo/Toolkit二次開發步驟
使用Creo/Toolkit開發應用程序包含3個基本步驟。
程序的編譯和連接:為了編譯連接所編制的程序代碼,一般需要制作Makefile文件,可以根據Creo/Toolkit自帶的Makefile修改。該文件主要制定庫文件、頭文件、源文件的位置及要生成的可執行文件和動態連接庫名稱等[7]。方法如下。
(1)打開VS2010后“文件”—“新建”—“項目”,選擇MFC DLL,點擊“確定”,點擊“下一步”。選擇“使用共享 MFC DLL的規則DLL”,后點擊“完成”,這樣就利用向導MFC AppWizard(DLL)創建一個工程。
(2)開發環境的配置。①包含文件的添加。點擊“項目”—“屬性”—“配置屬性”—“VC++目錄”,選擇“包含文件”依次添加:CREO2.0安裝目錄…CREO2.0\CommonFiles\M050\下的以下4個文件prodevelope\includes; prodevelope\prodev_appls\includes; protoolkit\includes和protoolkit\protk_appls\includes。②庫文件的添加。添加步驟包含文件的添加方法相同,為CREO2.0安裝目錄…CREO2.0\CommonFiles\M050\下的以下4個文件prodevelope\i486_nt\obj;protoolkit\i486_nt\obj;protoolkit\x86e_win64\obj和prodevelop\x86e_win64\obj。③工程屬性配置。選擇“項目”—“屬性”—“配置屬性”—“常規”,點擊“配置管理器”,選擇要配置的項目。
編寫源文件:源文件包括資源源文件和程序源文件。資源源文件包括菜單源文件、窗口信息源文件、對話框源文件(分別用來完成創建和修改Creo、窗口信息和對話框等功能)等。程序源文件指用戶編寫的C語言程序,它是整個Creo/Toolkit程序開發的核心部分。該系統開發了適合壓縮機參數化設計的資源源文件和程序源文件,實現了交互式參數化建模。
可執行文件注冊和運行:要使應用程序能夠集成到Creo系統中運行,必須做一個擴展名為.dat的注冊文件,用該文件進行應用程序的注冊。
2 Creo系統中參數化建模的實現方法
空氣壓縮機的結構比較復雜,其中泵體是壓縮機的核心部件。相對泵體來說缸體的結構比較簡單,參數較少,該文將以缸體為例進行參數化設計,為整個壓縮機的參數化設計奠定基礎。
空氣壓縮機在零件模式下建立三維模型,設置控制三維模型的設計參數,設計參數有兩種:一種是用來控制三維模型形狀和拓撲關系的與其他參數無關的驅動參數,稱為局部參數。另一種是與其他參數相關的非驅動參數,稱為全局參數。參數化程序設計采用的是第一種設計參數,以驅動三維模型的再生,建立設計參數和三維模型的尺寸變量的關聯關系可以利用Creo的relation功能創建關系式實現。
2.1 菜單欄菜單設計
Croe系統的菜單主要包括菜單欄菜單和菜單管理器菜單。在Creo/Toolkit中,用戶可以創建新的菜單欄菜單,也可以對Croe系統已有的菜單欄菜單進行修改。為了方便于用戶對命令突變的查找,采用在工具條上添加命令圖標的方式向Croe界面中添加壓縮機上下缸體參數化設計按鈕。
2.2 對話框設計
對話框設計主要是用戶界面對話框(簡稱UI對話框)的設計,UI對話框是Creo/Toolkit提供的一種交互界面,可以利用UI對話框技術,在Creo/Toolkit程序中設計出風格與Creo系統本身相似的人機交互界面。
3 結語
該文提出了基于Creo軟件的針對空氣壓縮機參數化設計理念。以空氣壓縮機缸體零件為例,分析了零件的局部尺寸,同時兼顧了工藝要求。基于Creo/Toolkit利用VS2010作為開發工具,實現了某空氣壓縮機外殼的參數化設計。介紹了Creo2.0軟件參數化設計和利用Creo/Toolkit二次開發的方法。
參考文獻
[1] 白皛,龔堰玨,趙罘.Creo2.0中文版基礎設計教程[M].清華大學出版社,2013.
[2] (美)蘭多夫,著.Visual Studio2010高級編程[M].任鴻,普杰,高宇輝,譯.清華大學出版社,2012.
[3] 王文波.Pro/E Wildfire 4.0二次開發實例解析[M].清華大學出版社,2010.
[4] 金濤.PRO/ENGINEER軟件二次開發技術[J].計算機工程與應用,2001(37):13.
[5] (美)馬歇爾,著.Visual Studio 2010并行編程從入門到精通[M].梁春艷,譯.清華大學出版社,2013.
[6] Pro/Toolkit Users Guide[M].Needham:Parametric
Technology Corporation,2001.
[7] 李世國.Pro/Toolkit程序設計[M].機械工業出版社,2003.
[8] 王恒,寧汝新,張旭,等.利用MFC二次開發Pro/E[J].計算機輔助設計與圖形學學報,2004(6):870-871.