呂奉陽 申威 韓強 羅培鋒
摘 要:為了減少重復(fù)設(shè)計,提高工作效率,對CATIA二次開發(fā)進行了研究。介紹了CATIA二次開發(fā)的基本流程,采用VBS編寫了批量導(dǎo)入坐標點、批量創(chuàng)建焊點球面、批量更改零件顏色和圖紙鏈接替換等應(yīng)用實例代碼。通過應(yīng)用實例,驗證了CATIA二次開發(fā)的實用性和高效性。
關(guān)鍵詞:VBS;CATIA;二次開發(fā);車身設(shè)計
1 引言
車身設(shè)計過程中,經(jīng)常遇到一些重復(fù)性工作,例如將坐標點信息從EXCEL導(dǎo)入CATIA,焊點設(shè)計時將坐標點生成球面,統(tǒng)計車身材料分布時將零件用不同顏色區(qū)分,零件號更改后圖紙鏈接失效導(dǎo)致重新出圖。這些工作內(nèi)容本身并不復(fù)雜,由于坐標點數(shù)量多,焊點數(shù)量多,車身零件多,圖紙信息量大,導(dǎo)致工時增加,影響工作效率及開發(fā)周期。為了減少重復(fù)設(shè)計工作量,提高工作效率,CATIA二次開發(fā)日益受到重視。
2 理論介紹
2.1 VBS腳本語言
VBS全稱Microsoft Visual Basic Script Edition,即微軟公司可視化BASIC腳本版。VBS是基于Visual Basic的腳本語言,是Visual Basic的一個抽象子集,是Windows系統(tǒng)內(nèi)置的,用它編寫的腳本代碼不需編譯成二進制文件,直接由Windows系統(tǒng)執(zhí)行。
VBS腳本不需使用專業(yè)的編程軟件,應(yīng)用Windows系統(tǒng)自帶的記事本即可。將程序代碼輸入到記事本里面,然后保存為以.vbs為擴展名的文件。雙擊VBS文件名即可執(zhí)行程序。
VBS語法簡單,靈活高效,功能強大,可以使工作任務(wù)自動化,可以讓設(shè)計師從重復(fù)瑣碎的工作中解脫出來,提高工作效率?;谝陨咸攸c,本文采用VBS腳本進行CATIA二次開發(fā)。
2.2 CATIA V5 Automation
CATIA提供了兩種編程接口,一種是自動化對象編程(V5 Automation),一種是開放的組件應(yīng)用架構(gòu)(CAA)。CAA功能全面,穩(wěn)定性好,適合深層次的CATIA二次開發(fā),但是對開發(fā)人員的要求較高,需要使用專業(yè)的編程軟件及工具。V5 Automation是基于COM技術(shù)的編程接口,描述了CATIA二次開發(fā)編程對象架構(gòu),包含不同接口中每個對象的方法屬性等詳細信息,是進行CATIA二次開發(fā)的重要參考資料。本文采用基于V5 Automation 的CAITA的二次開發(fā)方法,使用VBS作為編程語言。
2.3 CATIA二次開發(fā)流程
CATIA二次開發(fā)的目的是滿足產(chǎn)品設(shè)計自動化需求。所謂CATIA二次開發(fā),就是利用CATIA提供的API接口進行程序設(shè)計開發(fā),拓展CATIA軟件功能,實現(xiàn)軟件功能個性化和操作自動化。
進行CATIA二次開發(fā),首先要了解CATIA V5 Automation API的基本架構(gòu),掌握常用對象的屬性和方法。CATIA V5 Automation對象架構(gòu)如圖1所示。
CATIA二次開發(fā)的過程可以理解為:用戶為實現(xiàn)某種功能,根據(jù)需要合理地調(diào)用V5 Automation提供的類、庫的屬性和方法以及二次開發(fā)函數(shù)。CATIA中的每個功能(包括零件設(shè)計、曲面設(shè)計、裝配設(shè)計、工程制圖等)以及所有的實體特征(包括草圖特征、修飾特征、曲面特征、變換特征、組合特征等)都有相應(yīng)的類、庫支撐,因此CATIA二次開發(fā)的主要工作就是合理地調(diào)用V5 Automation API對象進行編程。對CATIA進行二次開發(fā)的基本流程如圖2所示。
3 應(yīng)用實例
3.1 批量導(dǎo)入坐標點
車身設(shè)計過程中,需要根據(jù)外部門的安裝需求導(dǎo)入坐標點,產(chǎn)品接口控制文件一般采用EXCEL文件形式,坐標點位置通過xyz坐標值確定。設(shè)計時一般采用手工輸入坐標值的方法導(dǎo)入坐標點。坐標點較多時,手工輸入工作量較大,且容易出錯。利用VBS批量讀取EXCEL文件坐標值并導(dǎo)入CATIA,可以提高工作效率。
批量導(dǎo)入坐標點的基本流程如圖3所示。VBS腳本代碼如圖4所示。
圖5是EXCEL中的坐標點示例。A、B、C三列分別代表點的x,y,z坐標值。打開CATIA應(yīng)用程序,進入零件設(shè)計或創(chuàng)成式曲面設(shè)計模塊。打開包含坐標點的EXCEL文件:CreatPointFromEXCEL.xls。確認文件名及路徑與VBS代碼一致。雙擊執(zhí)行VBS腳本,切換到CATIA應(yīng)用界面,可以看到EXCEL坐標點已經(jīng)批量導(dǎo)入CATIA,如圖6所示。
3.2 批量創(chuàng)建焊點球面
汽車白車身一般由數(shù)百個鈑金沖壓件焊接而成,焊點設(shè)計是白車身設(shè)計的重要內(nèi)容。在CATIA中,兩層焊點一般采用半徑3mm的綠色球面表示。白車身焊點設(shè)計的特點是建模簡單,焊點數(shù)量多,重復(fù)性工作量大,適合采用二次開發(fā)進行批處理,提升建模效率。
批量創(chuàng)建焊點球面的基本流程如圖7所示。VBS腳本代碼如圖8所示。
打開包含坐標點的CATIA文件,雙擊執(zhí)行VBS腳本,在CATIA文件中選擇包含坐標點的幾何圖形集,完成坐標點批量生成焊點球面如圖9所示。
3.3 批量更改零件顏色
白車身包含數(shù)百個零件,設(shè)計過程中,一般采用不同顏色進行區(qū)分。實際應(yīng)用過程中,為了統(tǒng)計鍍鋅板及非鍍鋅板,沿用件及專用件,高強度鋼板應(yīng)用分布,需要在總成數(shù)據(jù)中對零件顏色進行更改。
以高強度鋼板應(yīng)用分布為例,需要根據(jù)材料類別對零件進行區(qū)分并用不同顏色表示。本文采用歐洲車身會議采用的車身材料顏色代碼定義,如表1所示。零件顏色更改的基本流程如圖10所示。VBS腳本代碼如圖11所示。
圖12是EXCEL中的零件顏色代碼定義示例。A列表示零件號,B、C、D三列分別代表顏色代碼的R、G、B數(shù)值。打開CATIA總成數(shù)據(jù)文件,打開包含零件顏色代碼定義的EXCEL文件:Setcolor.xls。確認文件名及路徑與VBS代碼一致。雙擊執(zhí)行VBS腳本,切換到CATIA應(yīng)用界面,可以看到零件顏色批量更改結(jié)果如圖13所示。
3.4 圖紙鏈接替換
車身開發(fā)過程中,經(jīng)常遇到由于設(shè)計變更或配置增加導(dǎo)致零件號更改的情況,零件號更改后導(dǎo)致2D圖紙鏈接數(shù)據(jù)失效,圖紙無法更新,重新出圖需要將圖紙信息重新標注一遍,對于復(fù)雜零件,重新出圖工作量較大。利用CATIA二次開發(fā),將原圖紙鏈接數(shù)據(jù)替換為新數(shù)據(jù),然后在原圖紙上更新零件變化點的標注信息即可,可以提高出圖效率。
圖紙鏈接替換的基本流程如圖14所示。VBS腳本代碼如圖15所示。
打開CATIA圖紙,打開圖紙鏈接數(shù)據(jù),將CATIA當前工作視圖切換到圖紙。雙擊執(zhí)行VBS腳本,彈出對話框如圖16所示,輸入鏈接數(shù)據(jù)序號,點擊確定即可完成圖紙鏈接替換。
4 結(jié)語
本文對CATIA二次開發(fā)技術(shù)進行了研究,介紹了VBS及CATIA二次開發(fā)技術(shù)的基本理論及開發(fā)流程,通過批量導(dǎo)入坐標點、批量創(chuàng)建焊點球面、批量更改零件顏色和圖紙鏈接替換等實例驗證了CATIA二次開發(fā)的實用性及強大功能。由于VBS腳本語言的局限性,實現(xiàn)可視化窗口界面比較復(fù)雜,交互體驗較差,不適合復(fù)雜的CATIA二次開發(fā)。下一步研究方向是擴展CATIA二次開發(fā)的應(yīng)用范圍及實現(xiàn)方法,不局限于VBS腳本語言,進一步提高工作效率,提升設(shè)計質(zhì)量。
參考文獻:
[1]胡挺,吳立軍.CATIA二次開發(fā)技術(shù)基礎(chǔ)[M].電子工業(yè)出版社,2006.
[2]周桂生,陸文龍.CATIA二次開發(fā)技術(shù)研究與應(yīng)用[J].機械設(shè)計與制造,2010(1):81-83.
[3]彭歡.基于V5 Automation的CATIA二次開發(fā)技術(shù)研究[J].電子機械工程,2012,28(2):61-64.