CATIA軟件是汽車行業(yè)的主流,全球20強(qiáng)汽車企業(yè)18日采用CATIA作為核心設(shè)計(jì)軟件,在縮短新車型開發(fā)周期方面發(fā)揮著重要作用。如果使用CATIA軟件本身提供完整的交互功能,同時(shí)可以完成設(shè)計(jì)任務(wù),但有些日常工作是重復(fù)的,需要大量的重復(fù)操作才能完成,這將花費(fèi)大量時(shí)間。此前,有人提出了一種基于UG軟件二次開發(fā)技術(shù)的副業(yè)維修,而使用CATIA軟件作為主流軟件在這方面的開發(fā)還沒有先例。如果在CATIA軟件的環(huán)境下實(shí)現(xiàn)邊線修復(fù)的自動形成,無疑將大大提高設(shè)計(jì)工程師的工作效率。
CATIA二次開發(fā)技術(shù)
二次開發(fā)是使軟件定制化和專業(yè)化的有效手段,它可以使軟件更好地為用戶服務(wù),對提高工作效率和產(chǎn)品質(zhì)量具有不可低估的作用。CATIA軟件的圖1為用戶提供了各種二次開發(fā)界面。
圖1使用CATIA軟件的二級界面
1.自動化API
自動化API是使用自動化應(yīng)用程序界面(API)自動化的宏,對于自動化組件,日志(Journaling),以及開發(fā)Visual Basic和JavaScript/Html,自定義是一種交互方式。自定義模式允許用戶獲取CATIA數(shù)據(jù)模型。通過提供交互方式,讓用戶記錄操作過程,通過VB腳本或Java腳本記錄宏,從而自動生成代碼。
具有兼容任何OLE自動化API平臺的通信能力。自動化技術(shù)基于COM,其核心技術(shù)是允許一個(gè)應(yīng)用程序連接到另一個(gè)應(yīng)用。自動化技術(shù)不是直接獲取和處理數(shù)據(jù),而是間接通過暴露對象和屬性,使用對象的方法和屬性來捕獲、設(shè)置和處理數(shù)據(jù)。介紹這種方法功能限制較大,但容易受到CATIA版本的限制較小。
2.知識庫
KnowledgeWare智能組件是一種反應(yīng)式、基于規(guī)則、面向目標(biāo)的定制方式。它是對規(guī)范的高效重用,就像應(yīng)用程序公式一樣,簡單地實(shí)現(xiàn)了組指南集、知識庫和V5的緊密集成,以提高處理能力。它可以通過相關(guān)的穩(wěn)定規(guī)范來定義交互的知識捕獲。智能組件是一組預(yù)定義的易于使用的服務(wù),它推動了從功能、標(biāo)準(zhǔn)到組件和系統(tǒng)實(shí)現(xiàn)的管理和重用。它允許您自定義和集成外部代碼。它用于三個(gè)方面:知識顧問、專家知識和產(chǎn)品工程優(yōu)化。顧問用于參與嵌入式知識定義的設(shè)計(jì),包含規(guī)則集、檢查、審查和預(yù)定義的行為(行為)。專家知識的過程是基于規(guī)則的,規(guī)則可以設(shè)置、檢查和報(bào)告。面向產(chǎn)品工程優(yōu)化設(shè)計(jì)目標(biāo),包括優(yōu)化目標(biāo)、準(zhǔn)則和求解方案。
3.交互式用戶定義功能
交互式用戶定義功能交互式用戶定義特征,是一種自定義開發(fā)。通過聚合交互來定義現(xiàn)有特征的新數(shù)據(jù)類型,收集現(xiàn)有規(guī)范、指定輸入,從而創(chuàng)建“IUDF”(用戶定義特征)。“IUDF”可以通過引用(目錄)存儲在目錄文件中。CATPart文檔,客戶可以使用它進(jìn)行交互。
4.CAA V5 c++和Java API
C++和Java應(yīng)用程序的CAA V5接口,這是基于組件的自定義開發(fā)。這就是我們所說的CAA(組件應(yīng)用程序架構(gòu))。它具有很強(qiáng)的交互性、集成性和用戶自定義功能的特點(diǎn),并有自己的體系結(jié)構(gòu)。CAA CATIA是一組c++庫,這些庫在CATIA運(yùn)行時(shí)加載,用戶可以通過vc++編程環(huán)境下的RADE模塊編程,與CATIA通信。這種方法可以是最有效的應(yīng)用程序開發(fā),但入口困難,受CATIA版本的限制,在國內(nèi)這方面的技術(shù)信息相對較少。
沖壓模具邊線返修設(shè)計(jì)原則
在CAD軟件中計(jì)算邊線修復(fù)雖然精度很高,但手工繪制工作量很大,有些零件需要手工繪制數(shù)百個(gè)修剪點(diǎn),然后依次連接才能得到準(zhǔn)確的邊線修復(fù),通常需要幾天的時(shí)間。
如圖2所示,以發(fā)動機(jī)蓋板為例,說明了沖壓模具邊線修復(fù)的設(shè)計(jì)原理。
圖2邊線修復(fù)三維原理
1.修剪點(diǎn)
如圖2所示,將“工藝補(bǔ)充和翻邊MBB線”(以及產(chǎn)品和工藝添加的表面邊界)在某一點(diǎn)上計(jì)算到表面上,然后分別用“補(bǔ)充”和“翻邊側(cè)”線計(jì)算法線平面,如圖2“工藝補(bǔ)充平面剖面線”和“折邊平面剖面線“所示;如圖3所示,在“工藝補(bǔ)充平面剖面線”位置的修剪點(diǎn),“修剪”到“工藝補(bǔ)充和翻邊MBB線”的線長等于“翻邊平面剖面線“的線長,CATIA軟件中的線長可以通過測量或公式計(jì)算。這樣可以根據(jù)需要計(jì)算出修邊的數(shù)量,修邊點(diǎn)的密度越大,修邊的精度就越高。
圖3邊線修復(fù)二維原理
2.邊線修復(fù)
如圖2所示,“邊線修復(fù)”是在“工藝添加表面”之前計(jì)算連接樣條曲線的切邊點(diǎn)序列。邊線修復(fù)直接影響沖壓件的拉深模和切邊模的設(shè)計(jì)和制造周期。
程序開發(fā)過程
根據(jù)上述原理,我們采用了CATIA軟件自動化應(yīng)用界面(API)自動化二次開發(fā)的方法,利用Visual Basic編程語言實(shí)現(xiàn)了自動劃線。本程序?qū)⒗L制的邊線修分為三個(gè)功能界面來完成:(1)曲線的選擇方法,通過創(chuàng)建修邊功能界面的方式對曲面零件進(jìn)行修邊。系統(tǒng)要求用戶在界面選擇參考曲線(如圖1“工藝補(bǔ)充和翻邊MBB線”所示)中進(jìn)行交互,選擇“工藝添加面”(如圖2所示),選擇內(nèi)部(如圖2中的“法蘭面”),設(shè)置面號(即需要生成的修剪點(diǎn)數(shù)),設(shè)置后點(diǎn)擊創(chuàng)建,生成相應(yīng)數(shù)量的修剪點(diǎn);選擇兩(2)種方式創(chuàng)建修剪功能界面。該界面是第一步通過將任意兩個(gè)修剪點(diǎn)之間的再生生成多個(gè)修剪點(diǎn),具有局部增加修剪點(diǎn)密度的效果,該界面增加了交互式選擇起點(diǎn)和終點(diǎn)的操作,其他操作與第一步相同。(3) 創(chuàng)建界面的修剪曲線。這個(gè)界面交互選擇只固定了表面的邊緣(選擇“添加了過程的表面”),我們需要的東西可以在線獲得。
通過上述三個(gè)功能,可以在幾分鐘內(nèi)完成幾個(gè)小時(shí)甚至幾天的工作,通常只需要上述(1)和(3)兩個(gè)功能就可以得到滿意的副業(yè)維修(2)必要時(shí)使用。
圖4發(fā)動機(jī)蓋板
應(yīng)用示例
本程序適用于所有白色車身的邊線修復(fù)沖壓件的設(shè)計(jì),在大型復(fù)雜沖壓件中體現(xiàn)的效率尤為明顯。以圖4中的一輛汽車發(fā)動機(jī)蓋板為例,一半的線長為2500毫米,如果要得到精確的邊線修復(fù)需要300~500個(gè)點(diǎn),手繪復(fù)雜程度。例如,對于300個(gè)修剪點(diǎn)(見圖表),使用手繪和自動化設(shè)計(jì)程序的效率進(jìn)行了對比。
運(yùn)營效率對比
手工操作表中的統(tǒng)計(jì)時(shí)間是在連續(xù)操作條件下完成所需的時(shí)間,通常一個(gè)熟練的工程師需要兩天的時(shí)間才能完成手繪,而使用二次開發(fā)程序操作只需要1分鐘,數(shù)百個(gè)修剪點(diǎn)是自動計(jì)算機(jī)計(jì)算的,計(jì)算時(shí)間與計(jì)算機(jī)配置有關(guān),通常也只需要10分鐘左右,提高了設(shè)計(jì)效率。
結(jié)論
使用CATIA軟件提供了良好的二次開發(fā)界面。自動化對象編程(V5 Automation)易于進(jìn)入二次開發(fā)模式,并且可以根據(jù)自己的需要進(jìn)行相應(yīng)的開發(fā),從而大大提高了工作效率,因此更適合企業(yè)用作二次開發(fā)。本文介紹了沖壓模具修邊自動繪圖設(shè)計(jì)工程師從繁瑣的手工操作中,不僅提高了效率,而且保證了精度。