肖翔飛,高浩迪,孫靖,張啟倫,賀金權,龐博元,范守文
基于CAA的汽車座椅骨架快速變型設計
肖翔飛1,高浩迪1,孫靖2,張啟倫2,賀金權1,龐博元1,范守文1
(1.電子科技大學 機械與電氣工程學院,四川 成都 611731;2.廣西雙英集團有限責任公司,廣西 柳州 545006)
汽車座椅骨架在整體構型以及零件組成方面相似度很高,適合利用計算機輔助技術進行變型設計。在對汽車座椅進行模塊劃分后,利用CATIA二次開發的CAA技術設計了一款汽車座椅骨架快速變型設計軟件,并連接數據庫,通過人機交互的可視化界面完成座椅差異化零件的參數化建模。使用CAA的裝配API對參數化后的零件及其他配套零件完成座椅整體的自動裝配。該設計縮短了汽車座椅開發的準備時間,提高了汽車座椅骨架的設計效率和設計質量。
CAA;CATIA;汽車座椅骨架;快速變型設計
隨著計算機技術在汽車、飛機等行業的運用,CAD/CAE/CAM從根本上改變了過去手工繪圖、依靠圖紙組織整個生產過程的技術管理模式,對傳統汽車工業起到強大的推動作用[1]。到如今,簡單對軟件的應用已經不能滿足客戶的需求,如果能在軟件原有內核的基礎上對軟件再進行定制修改和功能擴展,則可更進一步地提升工作效率。
關于二次開發,何朝良[2]借助于VisualC++平臺和C++語言,對基于CAA的CATIA二次開發進行深入探索,成功解決了基于CATIA/CAA平臺的虛擬裝配和路徑規劃所必備的,如交互式建模方法等一系列基本問題。Hai Qiao Wang等[3]利用Pro/Toolkit二次開發工具和Visual C++編程語言對Pro/E進行二次開發,實現機床零件的參數化設計。Li Juan Zhao等[4]通過對切割頭的分析與設計,以三維成型軟件Pro/E為基礎,以VC++ 6.0為二次開發工具,實現切割頭零件的自動更新與裝配。王瑞波等[5]通過Excel VBA利用COM(Component Object Model,組件對象模型)接口訪問CATIA內部的對象,依據CATIA文檔結構,使用API(Application Program Interface,應用程序接口)逐級建立和獲取CATIA各層級對象,并定義相關運動副,自動完成建立汽車懸架參數化運動仿真模型。李華等[6]基于CATIA參數化建模及CAA二次開發,通過一種花紋設計方法,利用CATIA知識工程及三維建模技術,實現以規格為主要發布參數的模板封裝和輪胎整周花紋的快速拼接拼接,縮短了輪胎開發設計周期,提高了設計自動化水平。徐春生等[7]通過CATIA二次開發技術提取單機總裝MBD(Model Based Definition,基于模型定義)模型中的緊固件配置信息(如緊固件數量、類型、規格等),然后使用CATIA的知識工程模塊創建緊固件三維模型,最后按照配置信息調取緊固件三維模型,將三維模型按照位置關系自動安裝到單機三維模型中,實現緊固件自動裝配,顯著提高了模型裝配效率。
汽車座椅在設計建模過程中,同一類型的不同型號具有70%甚至更高的重復度,有很多零件可以通配替換,部分零件只需要在尺寸上進行調整,只有少部分零件屬于個性化零件。本文利用CATIA的CAA工具進行二次開發,在可視化操作界面下,用戶通過指定安裝點、設定差異化零件的尺寸、選擇型號可以自動生成不同的汽車座椅骨架裝配體。
CATIA主要有兩種二次開發方法,一種是基于VBA(Visual Basic for Applications,Visual Basic宏語言)的宏方法,另一種是基于CAA(Component Application Architecture,組件應用架構)的C++或者Java應用接口。
宏作為CATIA內的一種實用功能,很適合簡單的二次開發。CAA則是Dassault系統產品擴展和客戶進行二次開發的最強有力工具。CAA的實現,采用了組件對象模型(COM,Component Object Model)和對象的連接嵌入(OLE,Object Linking and Embedding)技術,具有可復用性、抽象性、封裝性等優點,CAA組件架構如圖1所示。
如圖2所示,為了便于對汽車座椅骨架進行開發工作,將汽車座椅骨架包括頭枕管、背靠上橫管等18個主要零部件,分為標準模塊、通用模塊、差異化模塊和個性化定制模塊四大模塊。
標準模塊是型號與規格已經標準化、系列化的零部件,其二次開發采用數據庫驅動的方法,直接從數據庫中讀取裝配體文件。
通用模塊是座椅骨架的主要零部件,這部分零件在快速變型設計中造型不會發生變化,用以對整個座椅進行各種參數設置。
差異化模塊是決定汽車座椅骨架變型設計的關鍵性部分。通過對差異化模塊的零件進行參數化設計,使得設計參數由下向上傳遞,最終保證汽車座椅骨架裝配體的外形參數與用戶輸入的外形參數一致。

圖1 CAA組件架構

1.頭枕管;2.靠背上橫管;3.靠背邊板;4.座靠連接板;5.靠背簧組件;6.靠背底板;7.正駕后橫管;8.座墊邊板;9.后下架;10.正駕左后支架;11.前支架;12.座簧組件;13.高調齒板;14.右后支架;15.坐墊前橫加強管;16.前橫支撐板;17.前連桿;18.滑軌。
個性化定制模塊是基于用戶需求單獨定制的模塊,該模塊也是由采購件或者已經生產完成的組件組成,不需要進行變型設計。與標準模塊不同,該模塊根據客戶需求,將會有選擇性地出現在設計結果中。該模塊包括加熱、通風、腰托及按摩等模塊。
軟件主界面作為快速變型設計功能的入口,需要嵌入包括座椅型號選擇、座椅主體參數調整、各個座椅模塊的選型,以及最后整個座椅的重生按鈕。
在實際開發過程中,考慮將部分的按鈕、標簽以及文本框集成到主對話框中,同時保留各子模塊選型的入口。那么整個快速變型軟件的界面大致由主對話框以及參數設置子對話框和各模塊選型對話框組成。主界面既有模型重生的功能,又作為其他子模塊選型的入口容器,集成對應按鈕入口。在完成相應參數設置以及模塊選型后,返回并使用全局靜態變量保存數據,實現座椅整體重生時的模塊調用。
添加工具條和菜單的主要代碼為:

使用汽車座椅菜單調用build()函數顯示操作界面主窗口,如圖3所示。
在座椅的快速變型設計中,連接數據庫是標準模塊選型裝配的基石。標準模塊具有專業性強、開發周期長、開發成本高的特點。在整個汽車座椅骨架的變型設計中,標準模塊作為已經定型的零部件,不需要二次開發,也不具備二次開發的條件,只需要在整體裝配時經由數據庫導出并裝配到骨架上。
考慮到CAA是以接口技術為核心API的二次開發手段,在對座椅選型進行數據庫連接時采用ADO(ActiveX Data Objects,ActiveX數據對象)作為數據庫訪問技術,同時選用Access數據庫。則首先需在連接數據庫模塊的頭文件中引入動態鏈接庫msado15.dll的信息:

典型VC應用都已定義EOF作為常數-1,需將結束符“EOF”更換為“adoEOF”,即:
在頭文件中需要全局定義,用來返回或記錄一個空指針的_ConnectionPtr接口,記錄集CommandPtr接口和記錄集對象_RecordsetPtr接口。而且需要對所有的SQL語句進行_bstr_t強轉,同時在字符串前使用_T宏。
如圖4所示,以滑軌標準模塊為例,在實際開發過程中,只需要切換零件序號,點擊數據庫零件按鈕,選擇適合的滑軌標準模塊并裝配即可。

圖4 滑軌選型
座椅零件參數化設計是快速變型設計的重要部分,也是差異化模塊變型設計的實現部分。參數化設計是基于尺寸參數驅動實現的。尺寸參數驅動是通過預定義零件文件,給定一個或多個參數,去驅動模型的相關尺寸發生變化,從而實現產品的快速建模[8]。在對零件進行參數化設計時,需要預定義零件中的參數關系式,并通過參數遍歷和名稱匹配找到對應的變化參數,進而調整參數值且重新生成模型。
以正駕右前支架6801211-4ABH為例,如圖5所示,提取孔相對位置等五個關鍵驅動參數,將驅動參數與添加的參數進行綁定。在通過編程進行自動參數化建模時,首先將零件文件加載至會話,通過發布命令遍歷零件的參數集,對參數集中的參數進行名稱匹配,找到名稱為Height的參數,并對其進行賦值操作,驅動其他參數進行變型,最后對零件模型進行刷新操作。

圖5 正駕右前支架
在汽車座椅的快速變型設計中,已將需進行變型的零件整合到模型重生按鈕之中,所以不會產生細節的零件參數設計模塊。汽車座椅骨架零件的尺寸參數由靠背寬度、靠背高度、座框深度、座框寬度和座框高度五個參數計算得來,例如正駕右前支架的驅動參數Height與座框高度參數Height_Cushion的關系為:

座椅整體裝配是汽車座椅骨架快速變型設計的最后一步,也是非常重要的一步。裝配涉及到各零件之間的約束沖突消解問題,以及軟件的代碼實現問題。
關于裝配約束沖突消解問題,呂剛[9]研究了裝配約束關系網中節點的數據結構,給出了裝配約束關系網的構建方法,并從裝配約束關系網中的設計缺陷節點出發,采用蟻群算法對裝配設計缺陷的修正路徑進行了優化。
座椅骨架在裝配過程中可以對稱考慮。按照模塊在座椅左右對稱零部件之間起到的作用,可以分為連接模塊和非連接模塊。靠背上橫管和靠背底板在裝配中起到了連接左右對稱部分的作用。整個滑軌模塊以及坐墊前橫加強管在與坐墊進行裝配時,也相當于起到了連接的作用。將座椅骨架模型簡化,只分為靠背上橫管、左右靠背邊板、靠背底板、左右坐墊邊板、坐墊前橫加強管和滑軌八個大部分,裝配連接如圖6所示。
將圖6(a)中每一條實線雙向箭頭看作兩個零件之間的完全裝配,要想避免過度約束導致的無法裝配,最簡單的辦法是消除其中的連接環。以1、2、4、3連接環為例,靠背底板在被左靠背邊板完全定義的情況下,還要與右靠背邊板建立裝配關系,勢必會產生過定義,又由于圖中只選定了靠背上橫管這一個裝配基準,那么消除環便可以解決過定義的問題。如圖6(b)所示,拆解原來的裝配,靠背上橫管完全定義左右靠背邊板,然后用靠背右邊板去完全定義靠背底板。靠背底板完全定義坐墊左右邊板,坐墊左右邊板分別去完全定義坐墊前橫加強管以及滑軌。在這種情況下,由一個已經被完全定義的零件去完全定義另一個零件,便不會出現過約束。
針對座椅骨架裝配的其他零件,分別也采用消除裝配連接圖中的連接環的方法,來避免裝配約束沖突。
在CAA中實現對零件的裝配,涉及到裝配體下零件的位置和姿態變換以及約束的創建。在CATIA裝配環境下零件的位置信息通過其位姿矩陣描述。位姿矩陣是虛擬裝配中對零部件進行平移和旋轉的內部信息依據[10],是一個4×4的矩陣,可以表示為式(1)。

1.靠背上橫管;2.左靠背邊板;3.右靠背邊板;4.靠背底板;5.坐墊左邊板;6.坐墊右邊板;7.滑軌;8.坐墊前橫加強管。

式中:左上角的3×3矩陣代表繞三個坐標軸的旋轉角增量,、和分別為繞、和軸的旋轉角增量;右上角的3×1矩陣代表沿三個坐標軸的位置增量,、和分別為沿、和軸的位置增量[11]。
約束是裝配的重要手段,約束的目的依然是位置和姿態矩陣的變換。CATIA已經為開發人員打包了一個“工具”,開發人員可以利用該工具,完成快速裝配。李維學等[12]利用CAA實現了將已有部件插入到裝配體中,建立約束關系,實現產品自動裝配的功能。并提出了采用坐標軸系統重合的約束方法。
在對該汽車座椅進行自動裝配時,針對部分使用孔軸配合定位的零件,預先設定其軸線以及重合面,并對軸線或者平面使用特定的名稱命名,確保能在后期對零件特征進行精準尋獲,然后為其創建約束。
CAA中創建一個約束大致需要三步:
(1)找到零件上依賴為約束對象的特征;
(2)以該特征為對象建立Connector對象;
(3)在兩個Connector對象之間建立約束。
依賴為約束對象的特征就好比兩個零件同軸,那么對應的軸即為特征。找到相應的軸特征需要先對用于裝配的Product文件進行遍歷。
在CATIA中,一個Product以產品結構樹的形式體現出來。只要獲取一個Product的根節點,就可獲得它的其他子節點。獲取裝配體的根節點后,通過Product接口的GetAllChildren()方法即可獲取產品結構樹上每一個Product和每一個Part文件的根節點。然后通過使用CAA的CATIDescendants接口獲取到零件下屬的面、線、點等。并未出現在結構樹上的特征需使用CAA的拓撲模塊進行操作。
確定邊界及不同部分之間的連接,其中用于表征對象的稱為拓撲對象。CATIA使用“cell complexes”的技術完成計算機圖形建模,這樣能夠以統一的方式處理多維概念,進而也能表征流形和非流形對象。CATIA基本的拓撲元包括cell、domain和body。如果要獲取一個面,只需獲取對應的cell即可。在一個Part文件中包含了CATProdCont(產品容器)、CATPrtCont(特征容器)、CATMFBRP(拓撲容器)和CGMGeom(幾何容器)四個特征。以特征容器為接口進而獲取零件實體,然后對零件進行拓撲分解,便獲取了所有的cell。cell屬于拓撲元素,不能作為裝配的connector選擇對象,需要進一步將cell特征化,特征化之后即可作為裝配元素使用。
關鍵代碼為:

獲取零件的特征對象后,使用全局函數Get Product Connector生成對應對象的Connector,然后對Connector集合使用Create Constraint命令,生成相應的裝配約束。在標準模塊的選型中,選定相應型號后,對該模塊的所有零件使用CAA進行自動裝配,獲得標準模塊的裝配模型,如圖7所示。
座椅骨架變型設計的基本流程如圖8所示。以SYP01電動款座椅骨架為例,在軟件主窗口上選擇默認安裝點:(1483.923, -586.723, 6.7),(1042.355, -587.615, 48.191),(1042.355, -152.615, 48.191)。設置安裝點主要是為了在完成座椅和其他汽車部件的裝配時具有一個確定的相對位置關系。設置座椅的差異化參數為:靠背寬度424.4 mm,靠背高度601.01 mm,座框深度502.27 mm,座框寬度441 mm,座框高度33 mm。然后對其標準模塊進行選型。滑軌選擇第一個型號,點擊導入零件,將所需的全部零件導入子裝配體,然后點擊裝配,刷新、保存及關閉子窗口。調角器和高調器相同。最后點擊模型重生按鈕,將三個主要的子裝配體以及其他非標準模塊零件導入總裝裝配體,并完成自動裝配,座椅骨架總裝模型如圖9所示。

圖7 滑軌裝配模型

圖8 座椅骨架變型設計基本流程

圖9 座椅骨架總裝模型
基于CAA,實現了一個以汽車座椅骨架為實例的快速變型設計軟件平臺。使用CAA進行參數化變型設計不太適合包含復雜曲面模型的零件,因為這類零件要么需要選擇的驅動參數過多,要么根本無法選擇驅動參數,參數化難度較高。在解決座椅骨架裝配中的約束沖突時,選擇了比較簡單的消除連接環方法,因為本文涉及的裝配約束基本都是完全定義約束。
[1]陳煒,林忠欽. 汽車CAD/CAM技術應用研究[J]. 汽車技術,1999,30(3):39-41.
[2]何朝良. 基于CATIA/CAA平臺的虛擬裝配路徑規劃的研究[D]. 南京:南京航空航天大學,2005.
[3]Hai Qiao Wang,Bei Bei Sun,Xiao Lan Ge,et al. Research of the Parametric Re-Development System Based on Pro/E[J]. Applied Mechanics and Materials,2012,101-102:41-44.
[4]Li Juan Zhao,Zheng Jun Wu,Zhen Tian. Based on Pro/Toolkit Parametric Design of the Longitudinal Roadheader Cutting Head[J]. Advanced Materials Research,2013,619:195-198.
[5]王瑞波,姚曉東. 基于Excel VBA與CATIA的汽車懸架運動仿真模型參數化建模[J]. 汽車工程師,2020,47(12):23-27.
[6]李華,張敏,程麗娜,等. 基于CATIA/CAA的輪胎花紋設計及自動節距排列[J]. 輪胎工業,2021,41(1):9-12.
[7]徐春生,張楊,夏永泉,等. 基于MBD和KBE的衛星單機模型緊固件自動裝配研究[J]. 制造業自動化,2020,42(9):114-117,126.
[8]胡畢富,吳約旺. CATIA軟件建模與CAA二次開發[M]. 北京:北京航空航天大學出版社,2018.
[9]呂剛. 機械產品設計缺陷的辨識模型與方法及其在機械傳動系統中的應用研究[D]. 成都:電子科技大學,2014.
[10]張魁,范玉青,盧鵠,等. 基于MBD制造體系的裝配工藝數據集成[J]. 機械工程師,2009,41(1):55-58.
[11]邵毅,李原,張開富,等. 基于CATIA的飛機虛擬裝配分析與仿真系統開發[C]. 中國系統仿真學會,全球化制造高級論壇暨21世紀仿真技術研討會論文集,2004:125-128.
[12]李維學,王仲奇,康永剛,等. 基于CATIA V5二次開發的產品自動裝配[J]. 機械制造,2010,48(1):40-43.
Rapid Variant Design of Automobile Seat Frame Based on CAA
XIAO Xiangfei1,GAO Haodi1,SUN Jing2,ZHANG Qilun2,HE Jinquan1,PANG Boyuan1,FAN Shouwen1
( 1.School of Mechanical and Electrical Engneering, University of Electronic Science and Technology of China, Chengdu 611731, China; 2.Guangxi Shuangying Group Co., Ltd., Liuzhou 545006, China)
There is a high degree of similarity between different automobile seat frames in overall configuration and parts. It is of great practical significance to make full use of computer-aided technology in variant design of automobile seat frames. By the secondary development technology of CATIA based on CAA ( Component Application Architecture ), a rapid variant design software for automobile seat frames is developed. The parametric modeling and integral assembly of the seat differentiated parts are implemented through the visual interface of man-machine interaction by using the assembly API of CAA. The preparation time of automobile seat frames development is shorten, and design quality and efficiency are improved.
CAA;CATIA;automobile seat frame;rapid variant design
TP391.7;U462.1
A
10.3969/j.issn.1006-0316.2022.02.005
1006-0316 (2022) 02-0030-08
2021-03-29
四川省科技廳創新人才項目(2019JDRC0009)
肖翔飛(1997-),男,湖北荊州人,碩士研究生,主要研究方向為自動化設計與智能設計,E-mail:feiundo@163.com;范守文(1968-),男,湖北武漢人,博士研究生,教授,主要研究方向為設計自動化、機器人機構學。