CATIA的軋輥設(shè)計(jì)二次開(kāi)發(fā)
2013-05-25 by:廣州有限元分析、培訓(xùn)中心-1CAE.COM 來(lái)源:仿真在線(xiàn)
CATIA在CAD/CAE/CAM行業(yè)中占據(jù)領(lǐng)先地位,它提供了V5 Automation和CAA等二次開(kāi)發(fā)接口。論述了利用VB 6.0對(duì)CATIA R16V5進(jìn)行二次開(kāi)發(fā)的一些關(guān)鍵技術(shù)和難點(diǎn),并給出了一段可用于設(shè)計(jì)軋輥的、比較通用的CATIA編程代碼,為以后的CATIA的二次開(kāi)發(fā)提供了技術(shù)支持,時(shí)于欲利用VBTIA進(jìn)行二次開(kāi)發(fā)的工程技術(shù)人員有很好的借鑒作用。
孫曉雷 吳俊 李國(guó)昌 來(lái)源:萬(wàn)方數(shù)據(jù)
關(guān)鍵字:VB 計(jì)算機(jī)輔助三維互動(dòng)應(yīng)用系統(tǒng) 軋棍 二次開(kāi)發(fā)
0前言
目前,針對(duì)企業(yè)產(chǎn)品特點(diǎn)開(kāi)發(fā)自定義的CAD系統(tǒng)已成為眾多企業(yè)考慮的問(wèn)題。CATIA是法國(guó)達(dá)索系統(tǒng)公司的CAD/CAE/CAM一體化軟件,在世界CAD/CAE/CAM領(lǐng)域中處于領(lǐng)先地位。CATIA被廣泛應(yīng)用于航空航天、汽車(chē)制造、造船、機(jī)械制造等行業(yè)。它的集成解決方案覆蓋所有的產(chǎn)品設(shè)計(jì)與制造領(lǐng)域,滿(mǎn)足了工業(yè)領(lǐng)域各類(lèi)大、中、小型企業(yè)的需要。世界上已有超過(guò)13 000個(gè)用戶(hù)選擇了CATIA ,其中包括波音、克萊斯勒、寶馬、奔馳、本田、豐田等著名企業(yè)。波音公司用CATIA完成了整個(gè)波音777的零件設(shè)計(jì)和電子裝配,創(chuàng)造了業(yè)界的一個(gè)奇跡,從而也確立了CATIA在CAD/CAE/CAM行業(yè)的領(lǐng)先地位。
二次開(kāi)發(fā)是對(duì)軟件進(jìn)行用戶(hù)化和專(zhuān)業(yè)化的有效手段,它可以使軟件更好地為用戶(hù)服務(wù),這對(duì)提高工作效率和工作質(zhì)量有著不可低估的作用。CATIA提供了多種二次開(kāi)發(fā)的接口,其中包括自動(dòng)化對(duì)象編程( VS Automation)和開(kāi)放的基于構(gòu)件的應(yīng)用編程接口(CAA)。
本研究通過(guò)對(duì)CATIA中的ActiveX Automation技術(shù)的分析,結(jié)合實(shí)例給出利用VB對(duì)CATIA進(jìn)行二次開(kāi)發(fā)的方法。
1 Visual Basic
Visual Basic是Microsoft公司推出的面向?qū)ο蟮目梢暬幊坦ぞ?。VB具有快速的程序開(kāi)發(fā)環(huán)境,界面設(shè)計(jì)操作簡(jiǎn)單,代碼編寫(xiě)量小,用戶(hù)可以很方便地直接改動(dòng)界面。由于CATIA加人了ActiveX自動(dòng)化服務(wù)功能,而VB又是最為常用的支持ActiveX技術(shù)的開(kāi)發(fā)工_具,以它作為開(kāi)發(fā)工具,可使CATIA與其他Windows程序的數(shù)據(jù)共享變得非常容易。
1.1 ActiveX Automation技術(shù)及其工作機(jī)制
ActiveX Automation是一套微軟標(biāo)準(zhǔn),以前通常稱(chēng)為OLE Automation,該標(biāo)準(zhǔn)允許通過(guò)外顯(exposed)的對(duì)象,由一個(gè)Windows應(yīng)用程序控制另一個(gè)Windows應(yīng)用程序。Windows自身允許在同一時(shí)間內(nèi)執(zhí)行多個(gè)應(yīng)用程序,ActiveX Automation則主要處理它們之間的通信問(wèn)題,每一個(gè)應(yīng)用程序都可以訪(fǎng)問(wèn)其他應(yīng)用程序所暴露的信息。
ActiveX Automation所涉及的一個(gè)主要問(wèn)題是兩個(gè)應(yīng)用程序之間的對(duì)話(huà)問(wèn)題,但兩個(gè)應(yīng)用程序之間并不是一種對(duì)等的關(guān)系。ActiveX Automation和每個(gè)部分所涉及到的兩個(gè)應(yīng)用程序所起的作用是不同的。客戶(hù)機(jī)是對(duì)話(huà)的發(fā)起端,而服務(wù)器則是對(duì)話(huà)的響應(yīng)端,對(duì)客戶(hù)機(jī)作出響應(yīng)。ActiveX Automation代碼主要在客戶(hù)機(jī)上運(yùn)行,但其功能是在服務(wù)器實(shí)現(xiàn)的。
每個(gè)ActiveX Automation操作過(guò)程都分3步:當(dāng)有一個(gè)應(yīng)用程序耍進(jìn)行ActiveX Automation操作時(shí),該程序就以客戶(hù)機(jī)模式進(jìn)行對(duì)話(huà)呼叫,而另一個(gè)被它所訪(fǎng)問(wèn)的應(yīng)用程序以服務(wù)器的模式響應(yīng)。對(duì)話(huà)開(kāi)始后,客戶(hù)機(jī)模式應(yīng)用程序運(yùn)行一些包括服務(wù)器命令的代碼。在使用時(shí),則由客戶(hù)機(jī)應(yīng)用程序決定具體使用哪個(gè)命令。于是ActiveX Automation的相應(yīng)命令被傳送到服務(wù)器模式應(yīng)用程序,服務(wù)器模式應(yīng)用程序按照客戶(hù)機(jī)模式應(yīng)用程序的要求完成特定的任務(wù)。客戶(hù)機(jī)模式應(yīng)用程序可以繼續(xù)發(fā)出其他的執(zhí)行命令,直到整個(gè)任務(wù)完成為止。
CATIA支持ActiveX Automation標(biāo)準(zhǔn),可完全實(shí)現(xiàn)ActiveX Automation自動(dòng)化。
1.2利用ActiveX Auto進(jìn)行CATIA二次開(kāi)發(fā)
在VB中,可以通過(guò)使用CATIA實(shí)體的庫(kù)文件編寫(xiě)CATIA的二次開(kāi)發(fā)程序,其一般步驟如下:
(1)應(yīng)用CATIA部件;
(2)定義CATIA對(duì)象模型;
(3)編寫(xiě)CATIA應(yīng)用程序。
2用VB創(chuàng)建CATIA應(yīng)用程序
筆者所介紹的程序是一個(gè)用VB開(kāi)發(fā)CATIA程序的參考模型,也是一個(gè)比較通用的開(kāi)發(fā)模式。下面舉例說(shuō)明在VB環(huán)境下怎樣利用ActiveX技術(shù)進(jìn)行CATIA的二次開(kāi)發(fā)。
這個(gè)例子是在CATIA中創(chuàng)建符合要求的成型立輥三維視圖。
2.1編程思路
從VB連接到CATIA,主要是使用CreateObject和GetObject函數(shù),創(chuàng)建獲得對(duì)ActiveX對(duì)象的引用,其實(shí)現(xiàn)代碼如下:
連接到CATIA之后,就可以對(duì)CATIA進(jìn)行操作。
2.2具體步驟
(1)運(yùn)行VB 6. 0,系統(tǒng)會(huì)彈出"New Project",對(duì)話(huà)框,從"New"選項(xiàng)卡中選擇"Standard EXE"選項(xiàng),單擊"打開(kāi)"按鈕創(chuàng)建新工程。選擇"Project/Reference"菜單項(xiàng),系統(tǒng)會(huì)彈出一個(gè)對(duì)話(huà)框,從對(duì)話(huà)框列表中選擇所有以CATIA開(kāi)頭的庫(kù)選項(xiàng),單擊"OK"按鈕。
(2)在系統(tǒng)自動(dòng)添加的窗體Form 1中,添加控件。在窗體的初始化事件中,為各個(gè)文本框添加默認(rèn)參數(shù)值,如圖1所示。
(3)在窗體的通用代碼區(qū),聲明用于進(jìn)行計(jì)算和與CATIA進(jìn)行數(shù)據(jù)傳遞的公有變量。
(4)窗體中"繪圖"按鈕的單擊事件,其作用是與CATIA建立連接,并且在圖形窗口中繪制成型立輥的三維視圖。三維視圖的生成采用先生成草圖sketch,接著在設(shè)定旋轉(zhuǎn)軸線(xiàn)后再旋轉(zhuǎn)的方法。
2.3實(shí)例效果
在VB6.0的開(kāi)發(fā)環(huán)境中,按下F5鍵運(yùn)行程序,系統(tǒng)將彈出成型立輥對(duì)話(huà)框,如圖2所示。
適當(dāng)調(diào)整成型立輥的參數(shù)值后,單擊"繪圖"按鈕,系統(tǒng)會(huì)自動(dòng)打開(kāi)CATIA在CATIA未運(yùn)行的情況下,并在圖形窗口中繪制成型立輥圖形,如圖3所示。
3結(jié)束語(yǔ)
在VB中通過(guò)創(chuàng)建程序進(jìn)行參數(shù)化設(shè)計(jì),其目的是對(duì)已有的零部件圖形進(jìn)行局部尺寸修改,以產(chǎn)生符合設(shè)計(jì)要求的新圖形文件。
本研究闡述了利用VB對(duì)CATIA零件設(shè)計(jì)進(jìn)行二次開(kāi)發(fā)的一些關(guān)鍵技術(shù),并用一個(gè)實(shí)例加以詳述,對(duì)于欲利用VB對(duì)CATIA進(jìn)行二次開(kāi)發(fā)的工程技術(shù)人員有很好的借鑒作用。在熟練掌握CATIA軟件功能的情況下,通過(guò)對(duì)其展開(kāi)深人研究,任何人都可以開(kāi)發(fā)出適用于本單位和個(gè)人習(xí)慣的工具,為提高工作效率和產(chǎn)品質(zhì)量服務(wù)。
相關(guān)標(biāo)簽搜索:CATIA的軋輥設(shè)計(jì)二次開(kāi)發(fā) CFD培訓(xùn) CFD流體分析培訓(xùn) cfd視頻 fluent cfx pumplinx軟件培訓(xùn) Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓(xùn) Abaqus培訓(xùn) Autoform培訓(xùn) 有限元培訓(xùn)