郭喜鋒,劉順濤,梁文馨,韓志仁
(1.中航工業(yè)成都飛機工業(yè)(集團)有限責任公司,成都 610073;2.沈陽航空航天大學,沈陽 110136)
基于CATIA/CAA的標準件批量裝配應(yīng)用研究
郭喜鋒1,劉順濤1,梁文馨1,韓志仁2
(1.中航工業(yè)成都飛機工業(yè)(集團)有限責任公司,成都 610073;2.沈陽航空航天大學,沈陽 110136)
介紹了CATIA二次開發(fā)的方式,并通過基于CAA的CATIA二次開發(fā),實現(xiàn)了螺栓、螺母、墊片等標準件的批量裝配,大大提高了模型裝配效率。裝配結(jié)果以實體或者曲面兩種可選形式存在于裝配體模型中,工藝人員可以直觀的進行標準件邊距和位置的檢測,大幅提高了工藝審查的效率和質(zhì)量。
標準件;裝配;CATIA;CAA
飛機裝配時會使用成千上萬個螺栓、螺母、墊圈等標準件。這些標準件相對于飛機部件而言,比較小,有時甚至被其他零件或部件所覆蓋。與飛機部件進行裝配時,通常需要對它們進行移動才能顯示在當前視圖中,而在CATIA裝配環(huán)境下,定義一個完整的裝配約束關(guān)系需要2個以上約束。因此,逐個對這些標準件進行裝配顯得既費時又費力,而且容易出錯。
隨著MBD(Model-Based Definition,基于模型的定義)技術(shù)的應(yīng)用,螺栓、鉚釘?shù)葮藴始奈恢眯畔⑼ǔS靡粋€點和一務(wù)直線表示以輕量化設(shè)計模型。但在部件實際裝配過程中,工藝人員常常需要標準件的實體來進行必要的干涉缺陷以及邊距是否足夠的檢測。如何快速、批量將同種類型的標準件實體模型在數(shù)模上進行裝配是工藝人員工作中時常面臨的問題。本文通過對CATIA裝配模塊進行二次開發(fā),設(shè)計出標準件快速批量裝配工具。利用該工具,工藝人員交互選擇少量裝配約束特征,便可以實現(xiàn)螺栓、螺母、墊圈等標準件的快速批量裝配,大大提高了工作效率和質(zhì)量。
1.1CATIA二次開發(fā)方式
CATIA有四種二次開發(fā)方式(如圖1所示)。它們分別是Konwledge(智能構(gòu)件)、Automation API(自動化應(yīng)用接口)、CAA V5 C++&Java API(CAA V5的C++)和User Defined Feature (用戶定義特征)。
Konwledge(智能構(gòu)件)主要應(yīng)用于知識顧問、知識專家和產(chǎn)品工程優(yōu)化三個方面,是一種反應(yīng)式的、基于規(guī)則的、面向目標的客戶化方式;Automation API(自動化應(yīng)用接口)通過VB Script or Java Script來錄制宏,自動生成代碼;CAA V5 C++ & Java API,就是常說的CAA(component application architecture)--基于組件的應(yīng)用架構(gòu);User Defined Feature (用戶定義特征)主要通過整合現(xiàn)有的特征來交互的定義新的數(shù)據(jù)類型。文獻[1]把標準格式的輸入輸出也作為了一種二次開發(fā)方式。
圖1 CATIA二次開發(fā)方式
相對于其他開發(fā)方式而言,CAA具有強大的交互、集成和用戶特征定義的功能,并有一套自己的體系架構(gòu)。但是基于CAA進行CATIA二次開發(fā)難度也比較大,除了掌握CATIA的基本知識外,它還需要開發(fā)人員掌握面向?qū)ο蟮恼Z言以及組件的相關(guān)知識。
1.2基于CAA的CATIA二次開發(fā)
CAA的實現(xiàn),主要是通過RADE(Rapid Application Development Environment)和不同的API(Application Programming Interface應(yīng)用程序接口)來完成的。
RADE(快速應(yīng)用研發(fā)環(huán)境)是一個可視化的集成開發(fā)環(huán)境,它提供完整的編程工具組,是以Microsoft Visual Studio VC++為載體,但在VC++環(huán)境中增加了CAA的開發(fā)工具。API(應(yīng)用程序接口)提供了操作各種對象的方法、工具和接口。
利用CAA可以對CATIA進行從簡單到復(fù)雜的二次開發(fā)工作,并和CATIA本身無縫連接。
批量裝配(批裝配)是針對在某一裝配模型中裝配多組相同規(guī)格零組件的情況,在定義零組件的裝配特征和分析零組件與裝配模型之間約束關(guān)系特點的基礎(chǔ)上,能夠?qū)崿F(xiàn)用戶在裝配模型上選擇較少的裝配約束幾何元素,批裝配系統(tǒng)即可采用裝配運算,自動定義這些零組件和裝配模型之間的裝配約束,從而實現(xiàn)零組件的快速成批裝配[2]。本文開發(fā)的標準件批量裝配工具,只需用戶拾取裝配模型中存放法式的幾何圖形集和一個參考面,以及選擇需要安裝的標準件即可實現(xiàn)螺栓、螺母、墊片等標準件的批量裝配。
3.1CAA提供的裝配約束關(guān)系
CAA V5提供的裝配約束關(guān)系主要有Fix Constraint(固定約束)、Offset Constraint(偏移約束)、Coincidence Constraint(相合約束)、Angle Constraint(角度約束)和Contact Constraint(接觸約束)[3]。與這些約束對應(yīng)的約束類型如表1所示。
約束的創(chuàng)建主要通過函數(shù)CreateConstraint(參數(shù)一,參數(shù)二,…)實現(xiàn)的。它的第一個參數(shù)便是約束類型。
3.2定義裝配特征
定義裝配特征是指,指定裝配模型和標準件中的幾何元素(幾何特征),使其參與裝配。這一過程是通過函數(shù)GetProductConnector建立起裝配特征和幾何元素之間的引用關(guān)系而實現(xiàn)的。圖2是某裝配模型和標準件的裝配特征。它們之間的映射關(guān)系如表2所示。
圖2 某裝配模型和標準件的裝配特征
表1 CAA對應(yīng)的裝配約束以及類型
3.3裝配特征信息的獲取
裝配模型的特征信息主要是法失和兩個參考面(螺栓約束參考面和墊片約束參考面)。法失存放在幾何圖形集下,用戶拾取得到。程序通過CATIDescendants類依次得到所有的法式,并通過法失得到確定標準件位置信息的點。通過法失和這個點,程序自動做出螺栓的參考面,放置在一個已命名的幾何圖形集下。墊片的參考面則需要用戶在裝配模型上拾取得到。當拾取的面是曲面時,法失和該曲面自動求交。依據(jù)法失和該交點,做出墊片的參考面。
為了修改的方便,標準件參與裝配的特征信息經(jīng)常使用“Tools”菜單下的“Publication”命令發(fā)布。因此,其特征信息的獲取通過使用CATIPrdObjectPublisher對象獲取。
3.4圖形顯示和更新
用戶打開裝配體模型,調(diào)用快速裝配命令,通過類CATNavigation3DViewer,實現(xiàn)了標準件的實時預(yù)覽。點擊預(yù)覽按鈕,程序自動計算法失的數(shù)量,并在后臺載入與法失數(shù)量相等的標準件,自動與裝配模型進行裝配,裝配完畢后,分別通過CAA提供的CATIRedrawEvent和CATIModelEvents兩個類完成當前裝配體的結(jié)構(gòu)樹和視圖的更新。如果對當前裝配結(jié)果不滿意,點擊“取消”按鈕,裝配結(jié)果消失,裝配模型未做任何變動,恢復(fù)初始值。否則,點擊“確定”按鈕,裝配結(jié)果以實體形式保留。以實體形式裝配的標準件,是以組件的形式載入裝配體的,當數(shù)量比較多時,結(jié)構(gòu)樹冗長,管理不方便。由于CATIA的Product文件是以保存鏈接的方式管理裝配體組件,當載入的組件路徑移動時,組件就無法載入,這也給裝配組件的管理帶來了麻煩。但是,實體裝配的標準件可用于后續(xù)的仿真分析。
本文開發(fā)了第二種組件裝配結(jié)果供用戶選擇。選擇“預(yù)覽”按鈕后,按鈕“生成面”變?yōu)榭捎脿顟B(tài),點擊此按鈕,程序會自動獲取以實體形式載入的屬性信息(零部件號、材料、顏色等),之后將這些標準件及其約束移除。通過類CATMmrInterPartCopy,將其放在用戶指定位置的幾何圖形集下??截惤Y(jié)果以面的形式存在,不僅保留了標準件實體裝配時的屬性信息,同時也保留其位置信息。這種形式的裝配結(jié)果既說明了設(shè)計意圖,又方便了裝配模型的管理。
另外,本文開發(fā)的批量裝配工具,既可以單獨裝配螺栓,又可以螺栓、墊片配套裝配或者三者同時裝配。其對話框和模裝配模型的裝配結(jié)果如圖3、圖4所示。
表2 某裝配模型和標準件之間的裝配映射關(guān)系
圖3 標準件批量裝配工具對話框
圖4 某裝配模型批量裝配結(jié)果
基于CAA技術(shù),通過對CATIA二次開發(fā)得到的標準件批量裝配工具,實現(xiàn)了螺栓、墊片、螺母等標準件的快速批量裝配。此工具的開發(fā)使工藝人員可以隨時直觀的進行標準件邊距及位置的檢測,大幅提高工作效率和質(zhì)量。
工具運行的結(jié)果以實體和曲面兩種形式存在。實
【】【】體的形式側(cè)重于仿真分析中的應(yīng)用,曲面的形式管理方便,側(cè)重于工藝審查時的查看。
[1] 何朝良,杜廷娜,張超.基于CAA的CATIA二次開發(fā)初探[J].自動化技術(shù)與應(yīng)用,2006,25(9).
[2] 陳功,周來水,安魯陵,鄧冬梅.基于CATIAV5的零組件快速裝配設(shè)計技術(shù)研究[J].機械科學與技術(shù),2007,26(10).
[3] DassaultSystemes.CAA V5 encyclopaedia[CP].Paris:DassaultSystemes, 2000.
[4] 黃兵鋒.CATIA V5的Publication功能及應(yīng)用[J].湖北汽車工業(yè)學院學報,2009,06.
[5] 曾柳楊.基于CATIA/CAA的虛擬裝配約束關(guān)系分析與干涉檢查研究[D].南京:南京航空航天學,2005.
[6] 張安鵬,張俊,姬濤.無師自通CATIAV5之零件設(shè)計[M].北京:北京航空航天大學出版社,2007:146-152.
[7] 曹俊生.基于CATIA/CAA的飛機結(jié)構(gòu)虛擬裝配信息模型研究[D].南京:南京航空航天學,2005:26-29.
A research on the application of standard parts batch assembly based on CATIA/CAA
GUO Xi-feng1, LIU Shun-tao1, LIANG Wen-xin1, HAN Zhi-ren2
TP391.7
A
1009-0134(2016)10-0080-03
2016-08-03
郭喜鋒(1986 -),男,河南開封人,工程師,碩士,主要從事飛機數(shù)字化裝配工藝設(shè)計相關(guān)工作。