邱海輝 馬良策 鮑鏡如
(北京汽車股份有限公司汽車研究院)
汽車車身關鍵數據管理系統(tǒng)的研究開發(fā)
邱海輝 馬良策 鮑鏡如
(北京汽車股份有限公司汽車研究院)
針對車身概念設計階段的設計特點,利用Vb.net和MySQL建立了汽車車身關鍵數據管理系統(tǒng),利用CATIA/ CAA與CATIA/Automation二次開發(fā)技術實現了該數據管理系統(tǒng)與CATIA之間的集成與通信。該數據管理系統(tǒng)可完成對數據的輸入、編輯、查詢等管理操作,將參考模型實時從數據庫調入到CATIA軟件中,根據目標數據的不同定制并輸出數據參數對比報表。
CATIA軟件以其強大的自由曲面造型和逆向功能,成為航空和汽車行業(yè)的主流CAD平臺[1]。CATIA軟件為兼顧用戶的不同需求,預留了二次開發(fā)接口。在CATIA平臺下進行零件庫的開發(fā)主要有3種方法[2]:第1,使用CATIA的Formula、Design Table和Catalog功能建立三維標準件庫,但其格式固定,不能有效和國家及企業(yè)標準結合起來,且操作繁瑣、更新性較差、零件存儲的數據冗余、不易操作[3]。第2,可以利用CATIA提供的組件應用架構(Component Application Architec?ture,CAA)接口和二次開發(fā)工具快速應用開發(fā)環(huán)境(Rapid Application Development Environment,RADE)進行CATIA的二次開發(fā),創(chuàng)建零件庫的應用程序。此方法入門困難,但實現的功能強大,開發(fā)的程序效率高,能夠滿足用戶深層次專業(yè)化的要求[4]。第3,使用自動化接口(Automation API),在VB環(huán)境下引用CATIA的類對象、函數進行二次開發(fā)。此種方法入門容易,但功能限制大[5],且所開發(fā)的零件庫系統(tǒng)只能在特定模塊下使用,靈活性較差[6]。
本文從車身關鍵數據管理的實際問題出發(fā),結合CATIA平臺下3種開發(fā)零件庫方法的優(yōu)缺點,利用VB.net和MySQL建立車身關鍵數據管理系統(tǒng),采用CA?TIA/CAA技術,實現了數據庫系統(tǒng)與CATIA的無縫連接,應用Automation技術實現了數據庫系統(tǒng)與CATIA的數據通信。該數據管理系統(tǒng)可以完成關鍵數據的管理、預覽、對比以及模型輸出,為提高對標設計效率、縮短車身開發(fā)周期提供了支持。
該系統(tǒng)以Windows和CATIA V5為操作平臺,使用VB.net作為開發(fā)語言,通過MySQL作為底層數據庫進行數據存儲。圖1為系統(tǒng)的體系結構框圖,可分為集成層、用戶層和數據存儲層。集成層使用RADE和CAAAPI實現用戶層與CATIA的集成。用戶層體現了系統(tǒng)功能,目前可分為3個基礎模塊(分別為系統(tǒng)管理模塊、車型管理模塊、材料管理模塊)和1個關鍵數據模塊,關鍵數據管理模塊作為車身關鍵數據的載體,根據用戶對不同零件的需求,可進行實時擴展。數據存儲層為用戶層的各模塊提供相應的數據支持,其和用戶層通過ADO.NET接口和Automation進行數據交流與更新。
系統(tǒng)的工作流程可描述為:進入CATIA,點擊開發(fā)工具條上的車身關鍵數據管理系統(tǒng)命令按鈕,打開已加載到CATIA內部的車身關鍵數據管理系統(tǒng),通過ADO.NET訪問數據庫,進行車身關鍵數據的功能性操作。
本系統(tǒng)關鍵結構包括集成層的實現和用戶層的開發(fā)。
3.1 基于CAA的集成層開發(fā)
采用組件應用架構CAA完成數據庫系統(tǒng)在CATIA下的入口設計,要在CATIA中創(chuàng)建一個全新的work?bench,以便將基于CAA二次開發(fā)的車身關鍵數據輔助設計模塊進行集中顯示,也要將開發(fā)的工具條嵌入到其他相關工作臺中,以利于實際操作。集成層的開發(fā)框架(圖2)分為兩個步驟:第1步,插入新工作臺;第2步,在新工作臺中開發(fā)新工具條并將工具條關聯到CATIA的創(chuàng)成式、零件設計和裝配設計工作臺。
a.工作臺的插入
在CAA中創(chuàng)建新的工作臺流程如圖3所示。
b.工具條及命令按鈕開發(fā)
工具條在新建工作臺和創(chuàng)成式設計、零件設計以及裝配設計下可用,因此需要將工具條描述類與這4項的接口建立聯系。以新建工作臺為例,通過以下兩個語句,可實現工具條與新建工作臺的連接。
#include"TIE_IBATVBDCreationWbenchAddin.h"
TIE_IBATVBDCreationWbenchAddin(BATDataAd?din)
工具條描述類作為對系統(tǒng)接口的擴展,會重載Cre?ateToolbars和CreateCommands兩個函數,CreateToolbars用以創(chuàng)建一個按鈕容器,即工具條。圖4是創(chuàng)建工具條及添加按鈕的過程。
函數CreateCommands()的作用是關聯工具條按鈕的響應命令。在該命令中添加調用外部程序的響應,可實現對外部程序調用的API函數有Shell、ShellExecute、ShellExecuteEx、Winexec、CreateProcess等,本文采用使用率較高的ShellExecute函數。
3.2 車身關鍵數據管理系統(tǒng)
作為車身設計數據的對標平臺,也可以作為通用化的基礎平臺,系統(tǒng)的設計功能如圖6所示。
a.用戶權限劃分:不同用戶權限使用不同功能。管理員職能涉及對數據庫的修改操作,而普通用戶僅對數據庫有查詢操作權限。圖7為系統(tǒng)主界面。
b.數據存儲:記錄用戶關注的車身關鍵數據,包括車型、材料、主斷面位置、車門、主斷面、密封條斷面、孔堵和鉸鏈等數據的幾何信息及其數模文件。
c.數據查詢:實現對車型、材料、主斷面位置、車門、主斷面、密封條斷面、孔堵和鉸鏈的幾何信息進行瀏覽和查詢,同時可以對零件或斷面的形狀進行初步預覽。圖8為關鍵數據的信息展示界面。
d.數據輸出與對比報表:對于其他程序或腳本來說,CATIA只是一個OLE自動化對象服務器,因此任何能訪問COM對象的程序或腳本都能訪問CATIA的對象并對其進行操作[7]。本文通過Automation技術實現了數據庫系統(tǒng)與CATIA的通信,使用前在VB.net程序框架中引用CATIA的庫文件,在獲取當前CATIA Application對象后,使用Documents的Open方法將數據庫中的數模文件在CATIA中打開。通過Automation技術實現數據庫與CATIA的通信,將相應斷面或零件數模從數據庫中直接導入到CATIA。對比報表的輸出同樣采用支持自動化操作的Excel實現,用戶根據自身需要搜索到所需零件或斷面,通過選擇相應的參數,輸出參數對比報表。圖9為對標數據參數對比報表的輸出。
針對車身工程師在對標數據管理及通用化設計方面的需求,在分析了CATIA的二次開發(fā)方式后,選擇了CAA和Automation兩種方式相結合的開發(fā)思路,設計實現了車身關鍵數據管理系統(tǒng),該系統(tǒng)主要功能如下:
a.可以錄入車型、材料、主斷面位置、車門、主斷面、密封條斷面、孔堵和鉸鏈等關鍵數據的參數信息,也可以存入數模文件;
b.系統(tǒng)集成到CATIA中,方便設計人員在設計時對關鍵數據的調用;
c.不同對標數據之間的對比功能可以使設計人員在短時間內選出對自身設計有參考價值的數據,同時對在產車型的零部件數據進行積累,更有利于車身零部件通用化工作的推進。
車身關鍵數據管理系統(tǒng)作為針對性更強的零部件級系統(tǒng),為解決車身設計前期階段中大量對標數據管理及快速查詢與使用提供了一條有效途徑。同時,采用CAA與Automation相結合在CATIA平臺下二次開發(fā)的方法,也為在CATIA下開發(fā)其他零件庫提供了思路。
1 魏華峰,郝泳濤.基于CATIA平臺三維通用機械零件庫系統(tǒng)的開發(fā).機械設計與制造,2005(9):85~87.
2 李原,彭培林,邵毅,等.基于CATIA的標準件庫設計與實現.計算機輔助設計與圖形學學報,2005,17(8):1873~1877.
3 胡國強,賈輝.基于CATIA V5的三維標準件庫的創(chuàng)建與使用.輕型汽車技術,2010(10):34~37.
4 梁岱春,張為民,隋立江.淺析基于CAA的CATIA二次開發(fā).航空制造技術,2012(10):65~68.
5 龍峰,樊留群.CATIA V5二次開發(fā)技術探討.淮陰工學院學報,2005,05:21~23,27.
6 史豐榮,韓華偉,史豐智.基于CATIA的標準件庫的設計及應用.機械工程與自動化,2011,164(1):181~182.
7 胡挺,吳立軍.CATIA二次開發(fā)技術基礎.北京:電子工業(yè)出版社,2006.
(責任編輯簾 青)
修改稿收到日期為2015年8月1日。
Research and Development of Key Data Management System for Vehicle Body
Qiu Haihui,Ma Liangce,Bao Jingru
(Automotive Technology Center,BAIC MOTOR Co.,Ltd)
An automotive body data management system is constructed with Vb.net and MySQL based on the design characteristics of the body concept design stage.CATIA/CAA and CATIA/Automation secondary development technology are applied to realize integration and communication between this data management system and CATIA.Management operations like data input,edit and inquiry can be made with this management system.When the reference model is imported to CATIA,data comparison report can also be customized and exported according to different target data.
Vehicle Body,Key Data,Management System,Database,Secondary Development
車身 關鍵數據 管理系統(tǒng) 數據庫 二次開發(fā)
U463.82
A
1000-3703(2015)09-0013-03