鄭金鐸,王濤,馬士禎,鞠錦建
(臨工集團濟南重機有限公司,山東濟南 250104)
?
基于ICAPI的汽車零部件三維參數化設計研究
鄭金鐸,王濤,馬士禎,鞠錦建
(臨工集團濟南重機有限公司,山東濟南 250104)
摘要:基于CAXA實體設計二次開發應用程序接口(ICAPI)以及VC++6.0,針對汽車產品典型零部件結構特點及設計要求,通過三維參數化模型庫的構建,實現了汽車產品典型零部件的三維參數化設計,降低了設計人員的勞動強度,提高了設計效率。
關鍵詞:ICAPI;二次開發;三維參數化設計
0引言
ICAPI(IronCAD Application Programming Interface,IronCAD應用程序接口)是CAXA實體設計為用戶提供的二次開發程序接口,用戶可以應用ICAPI創建基于CAXA實體設計二次開發的應用程序,通過ICAPI可編接口函數,用戶可以實現CAXA實體設計提供給最終用戶的幾乎所有功能。另外,用戶可以幾乎不受限制地訂制和改進一些額外功能,因此通過ICAPI的二次開發可以完成機械產品專用CAD(Computer Aided Design,計算機輔助設計)設計系統的開發,以降低企業設計人員的勞動強度,提高設計效率。
CAXA實體設計為用戶提供了自定義參數化零件庫功能,任何用戶認為有重復利用需要的設計都可以作為一種設計元素在自定義參數化零件庫中保存起來,在需要的時候,可以方便地從設計元素庫拖到設計環境中,實現零部件的設計重用。設計元素可以是一個設計好的特征、零件、裝配、圖標或是一種特殊的圖案。圖1所示為用戶自定義的汽車典型零部件三維參數化模型庫。
1系統構建的關鍵技術
在CAXA實體設計提供的二次開發環境下,利用CAXA二次開發應用程序接口(ICAPI)實現零件的參數化設計。采用該方法,首先構建零部件的三維模型,并定義其參數構成和關聯約束,然后利用高級開發語言(文中利用VC++6.0)調用設計參數驅動零件三維模型。
系統構建以汽車產品典型零部件為例展開討論,通過構建汽車典型零部件的三維參數化驅動模型,實現汽車產品設計過程中典型零部件的參數驅動。
1.1CAXA實體設計三維參數建模的基本要求
三維參數化模型包括零件的幾何拓撲關系、尺寸參數等信息。建立零部件的三維參數化模型的關鍵是保證其能夠正確地完成參數化設計。建模時應遵循以下要求[1]:
(1)使用CAXA實體設計提供的參數化造型功能構建的三維模型,應盡量減少特征數,以較好地支持參數化。
(2)如果三維參數化模型是一個部件(子裝配),該模型不僅含有能夠驅動零件幾何形狀的尺寸參數,還應包括零件之間的裝配約束關系,這是為了保證在參數驅動時,子裝配零件之間具有相對正確的位置。
(3)直接用于驅動零部件幾何尺寸形狀的參數作為頂層參數,稱之為一級參數,封裝了零部件的幾何信息;在CAXA二維草圖截面上定義的參數稱之為二級參數,又稱為特征級造型參數。用一級參數的表達式來表示特征級造型參數,當改變零件的尺寸參數(一級參數)時,可以驅動特征級造型參數改變,從而驅動零件的尺寸及形狀發生改變。各個參數之間關系如下:
f1(一級主參數)→(二級主參數)
f2(一級主參數,二級主參數)→(一般參數)
CAXA實體設計提供了多種構建零件三維模型的功能,如智能圖素、三維球工具、編輯二維草圖截面等功能,利用這些功能,根據三維實體建模的基本要求可以方便地構建零件的三維模型。在三維模型的基礎上,經過對其二維草圖和特征包圍盒施加約束和定義參數,可以對零件的三維模型進行尺寸驅動和位置驅動,并將建好的參數化模型存入CAXA實體設計提供的設計圖素庫(Catalogs)中,供設計人員在參數化設計時使用。典型零部件的三維參數模型及其參數構成如圖2所示。
1.2CAXA實體設計二次開發的相關技術
CAXA實體設計為用戶提供的二次開發應用程序接口(ICAPI),使得用戶可以根據自己的需要訪問系統的各項功能和底層數據,并利用第三方工具來擴展功能,達到用戶程序與CAXA實體設計的無縫集成。利用VC++6.0,基于COM組件的集成方案直接利用ICAPI提供的大量接口和函數進行用戶程序的編寫,是一種比較有效的二次開發方式。
ICAPI在設計時努力使二次開發用戶在調用一個API函數后,CAXA實體設計始終保持數據的正確狀態。如果二次開發用戶調用一個API后成功返回,CAXA實體設計則始終保持一個正確的狀態,即便是因為設計模型還沒有結束而停留在一個中間狀態,CAXA實體設計也始終處于一個正確狀態,這樣CAXA實體設計就不會出現異常。如果API調用失敗,CAX實體設計會清楚它產生的內部數據,以保持一個正確的狀態[2]。
圖3所示為ICAPI對象總圖,每一個對象都支持一個或多個接口。在每個獨立的接口中都集成了一套強大的功能。這些接口包含了一組用來操作、查詢和創建它們包含的對象的函數。要詳細了解這些接口和接口函數的功能,可以參閱CAXA的ICAPI幫助文件。
2系統實現
系統開發利用CAXA實體設計所提供的二次開發接口ICAPI,采用Visual C++6.0作為開發工具,在CAXA實體設計環境下,實現了專用機械產品三維參數化快速設計,下面以汽車懸架系統典型零部件為例來討論系統功能的實現。
2.1零部件設計流程及實現方式
汽車懸架系統設計的流程圖如圖4所示。
把基于ICAPI編寫的典型零部件應用程序加載在該零部件三維模型上,并將其三維模型保存在設計元素庫中,這樣將模型拖入設計環境時會自動彈出該零部件的設計向導,在人機交互式設計向導界面上按照要求依次輸入設計驅動參數后,單擊確定,即可完成該零部件的設計。
2.2典型零部件設計功能實現
例如汽車懸架系統中鋼板彈簧屬于比較典型的零件,在進行其設計時,設計人員將其從設計元素庫中拖到CAXA實體設計環境下,加載在該模型上的應用程序被激活,系統自動彈出設計向導對話框,設計人員根據對話框的內容,依次輸入設計參數,單擊確定,便可完成汽車懸架系統中鋼板彈簧的設計,如圖5所示。設計完成之后的計算結果顯示界面如圖6所示,圖7是設計完成的三維模型。
如果進行部件(子裝配)總成的設計,在進行參數驅動、完成三維造型的同時,內部零件之間也必須保證相對位置正確,這就需要在參數化模型設計時,要考慮零件之間的裝配約束關系,這一點很重要,它將直接影響到參數驅動完成后的模型是否正確,所以在進行參數化造型時必須考慮。
圖5鋼板彈簧設計向導圖6計算結果
3結束語
以Visual C++6.0作為開發工具,在CAXA實體設計環境下,實現了專用機械產品三維參數化快速設計。應用該系統進行專用機械產品設計時,能有效降低設計人員的重復勞動,提高設計效率。但是在系統的具體實現時,不僅局限于汽車產品,可以推廣到其他機械產品領域,以后還可以考慮系統與知識庫及模型數據庫的鏈接,把行業標準、經驗數據等加入到模型中去,使之更好地服務于設計人員。
參考文獻:
【1】靳江艷,方憶湘,劉恩福.CAXA實體設計環境下的蝶閥產品參數化設計[J].河北科技大學學報,2007,28(3):230-233.
【2】朱雅達.CAXA實體設計的二次開發[J].CAD/CAM與制造業信息化,2002(8):51-52.
Study of Automobile Parts 3D Parametric Design Based on ICAPI
ZHENG Jinduo,WANG Tao,MA Shizhen,JU Jinjian
(Lingong Group Jinan Heavy Machinery Co.,Ltd.,Jinan Shandong 250104,China)
Keywords:IronCAD Application Programming Interface (ICAPI); Secondary development;3D parametric design
Abstract:Based on the CAXA solid design secondary development application interface (ICAPI) and VC++6.0, according to the structure characteristics and design requirements of the typical parts of automotive products, the 3D parametric design for typical parts of automobile products was realized by which the labor intensity could be reduced and the design efficiency could be improved.
收稿日期:2015-12-15
作者簡介:鄭金鐸(1981—),男,碩士研究生,工程師,研究方向為汽車工程、機械CAD/CAM。E-mail:zhengjinduo@163.com。
中圖分類號:TP391.72
文獻標志碼:A
文章編號:1674-1986(2016)03-043-03