劉 斌,李少陽,鄭 宇,彭義兵
(1.華中科技大學 機械學院,武漢 430000;2.中國航天八院805研究所,上海 200000 3.上海交通大學 機械與動力工程學院,上海 200000)
隨著現代科技的迅猛發展,各類大型工業設備規模持續增大,其制造工藝也越來越復雜,傳統的二維圖紙及二維工藝已不能滿足現代制造業的迫切需求,基于三維產品設計模型的3DCAPP系統以其數字化設計與制造、管理模式對制造信息化和綜合制造能力的提升起到了關鍵的推動作用,逐漸成為現代工業數字化制造的新趨勢。夾具作為機械設備制造階段重要的基礎工藝裝備,很大程度上影響工藝路線安排與工藝規程制定。在3DCAPP系統的加工仿真過程中,需工藝人員對夾具手工建模、手動裝夾,在零件機加工工藝路線設計的過程中需要反復操作,但由于零件大小對夾具型號需求不同,使得夾具模型復用率很低。國內的一些學者已對三維夾具庫做過一些研究。如劉爽等人開發出基于UG的機床夾具標準件庫[1],李鐵剛做過UG工裝標準件庫的理論研究[2],楊華甫等做過集成環境下CAFD系統框架及體系結構研究[3],翁劍成等基于Pro/E建立組合夾具三維標準件庫[4],這些研究大多是針對孤立的三維夾具庫,而對3DCAPP系統中的夾具庫系統的研究較少。本文旨在利用主流CAD軟件建立集成于三維機加工工藝規劃系統的通用夾具庫系統,以機加工工藝規劃效率。
通用夾具庫系統,旨在為工藝設計人員提供各種型號的通用夾具、模式化的裝夾方式,以減少手動操作,提高工藝設計的效率。
圖1是通用夾具庫系統在集成環境下的業務流程。其中,夾具庫系統由快速建模技術、快速裝配技術、知識工程技術作支撐,由三維CAD提供二次開發接口和用戶交互界面。夾具庫系統的輸入部分,是由CAPP系統傳入的工藝路線及其內容(主要是各個工序內容),各個工序信息經過夾具庫系統解析之后,生成對應的工裝夾具夾持狀態下工序模型集合。

圖1 夾具庫系統業務流程

圖2 夾具設計流程圖
3D-CAPP系統將工序模型信息、加工工藝信息(包括加工面、加工方法)傳入夾具庫系統,夾具庫系統提供通用夾具,并按用戶意圖夾持工序模型,最后將夾具夾持下的工序模型傳入CAM仿真系統。實現此通用夾具庫系統的關鍵技術主要包括兩點:
1)快速建模技術:實現夾具模板的參數化驅動,生成不同型號的夾具元件模型;
2)快速裝配技術:實現夾具位置和姿態的變化。
夾具模型快速生成技術的關鍵是模型參數化驅動,參數化驅動就是利用三維CAD環境下的參數化設計系統,通過圖形驅動(或尺寸驅動)方式在設計繪圖狀態下修改圖形。利用參數化技術,可以實現夾具模板的尺寸驅動,滿足我們對不同型號夾具的需求。
2.1.1 模型參數化驅動技術研究
常用的模型參數化驅動方法主要有:用戶自定義特征、部件族、表達式等。
1)用戶自定義特征(User Defined Featrue):即UDF技術,用戶可以根據特定的需求,自定義特征,建立常用特征庫。建立模型時,只要將所需特征加載到基本幾何體上即可。
2)部件族(Part Families):通過創建族表,可以根據零件標準規格開發各種尺寸的零件,整個族表通過電子表格存儲數據。
3)表達式(Expressions): 表達式法將零件特征參數用表達式控制,通過修改表達式的參數值來建立其它相類似的零件模型。
在上述方法中,用戶自定義特征技術每次調用均需建立一個新零件和查找數據,自動化程度低;零件族方法是建立UG標準件庫的常用方法,需要對零件進行詳細的分類,對于分類困難的標準件,管理和使用都很繁瑣且操作界面不直觀[5]。
表達式法只對模板大小的改造,不涉及新零件的創建,相對操作簡單,而且表達式法適合由幾個元件組成的夾具,不同夾具元件的表達式可以互相關聯,即一個夾具元件中的某一表達式可以引用其他夾具元件中的表達式,當被引用的夾具元件的表達式更新時,引用它的夾具元件中相應表達式的值也會實時更新。
表達式法參數化是常用CAD系統提供的參數化方法,使用此方法前,需做一些準備工作。首先,建立夾具模板知識庫,用來存儲各類型夾具的模板和夾具型號參數表。這是夾具模型參數化驅動的基礎和前提,即對各類型的夾具的某一型號進行手工建模并建立該類型夾具的標準參數數據庫,用來供此類型的夾具利用數據庫數據驅動生成其它型號的夾具。
2.1.2 夾具系統支撐知識庫的構建
夾具模板知識庫為夾具模型參數化驅動提供支撐,參數化驅動又為夾具快速裝夾過程服務。為方便夾具快速裝夾過程的實現,在對夾具模板建模時,需遵循一些原則:
中心基準原則:模板建立時應有一個中心基準,可以是坐標原點、基準軸、基準面。
最少特征數原則:將特征參數分為主要參數和次要參數,盡量用主要參數約束和控制次要參數[6]。
部件關聯原則:對于由多個部件裝配而成的裝配體,需注意多個裝配件之間參數的鏈接關系。
因此,為了快速裝配系統方便快捷的實現,我們應該盡量遵循上述原則。通用夾具元件,大部分都是對稱的,建立模板時,我們應該盡量將模型的對稱中心建立在坐標原點,模板姿態也應盡量符合裝配習慣,這樣可為快速裝配提供方便。其次,把控制夾具元件主要特征的尺寸作為主要參數,其余一些對夾具形狀、大小影響較小的特征尺寸作為次要參數,然后用主要參數表示次要參數,盡量減少控制夾具模板的參數數目。另外,對于多個夾具元件組合而成的夾具體,在建立各個夾具元件模板時,要注意各夾具元件之間參數的鏈接關系,如一些有配合關系的尺寸,可以在夾具元件之間以某種關系式引用,當被引用參數化修改時,其他元件的關聯尺寸就會跟隨變化。表1列出幾個通用夾具需要建立的模板元件:

表1 常用通用夾具模板元件
夾具模板建模完成后需建立夾具型號參考表。為每種類型的夾具模板創建一個XML文件,然后查詢夾具手冊,按某一固定順序記錄夾具各主要參數的數值,為參數化過程提供數據支撐。夾具型號參考表允許用戶自定義夾具型號,按照已有的格式添加滿足自己需求的夾具型號參數即可。
2.1.3 通用夾具模板構建實例
平口鉗夾具模板構建實例:

圖3 平口鉗

圖4 固定鉗口表達式

圖5 活動鉗口表達式
平口鉗夾具模板構建:首先對平口鉗各部件(固定鉗身、固定鉗口、活動鉗口)建模,建模過程中要始終遵循建立模板的原則。固定鉗身、固定鉗口都為對稱元件,將模型對稱中心建立在各自模板文件的坐標原點,并使固定鉗身、固定鉗口的三個坐標軸正向一一對應;對活動鉗口的模板建模則與固定鉗口不同,但也要考慮到與鉗身和固定鉗口的配合方便。如圖3所示,固定鉗口建模時使左側面與底面交線的中點位于坐標原點,考慮到固定鉗口與固定鉗身的裝配關系,將固定鉗身左側面與工作臺面交線的中心放置在坐標原點,并使兩個元件的坐標系三個軸向一一對應,這樣在快速裝配過程中,對于夾具各元件定位點和方向矢量的確定就會比較方便,因為兩個元件的定位信息相同,獲取其一即可。
圖4及圖5分別是固定鉗口、活動鉗口的表達式重命名以及表達式公式。固定鉗口和活動鉗口兩個元件是關于被夾持工件對稱的,大小、形狀完全一致,因此對應的主要參數數值也是一致的。這時就可以以固定鉗口的主要參數為基準,供活動鉗口的參數一一對應引用。在參數化過程中,只需修改固定鉗口的參數,活動鉗口的參數就會自動更新。
三爪卡盤、四爪卡盤夾具模板也遵循同樣的方法建模:卡盤建模時,卡盤中心建在坐標系原點;卡爪建模時,卡爪夾緊面建在坐標系原點。
頂尖模板建立時,頂尖頭放到坐標系遠點,頂尖軸線方向與坐標系Z軸重合。
夾具快速裝配就是在裝配環境下調整夾具各元件的方位和姿態,實現夾具元件位置變化。
在三維空間,一個零件的方位和姿態可以由一個4x4的方位矩陣表示。在裝配圖中,A的方位和姿態就可以用方位矩陣AXYZ_P表示[7]:

方位矩陣中,XDi、YDi、ZDi是裝配件絕對坐標系相對于裝配坐標系的方向矢量,(P1, P2 , P3)裝配件坐標原點在裝配坐標系的位置點。
夾具快速裝配的關鍵是得到夾具各個元件在裝配坐標系中的放置點以及各夾具元件坐標系三個軸線正向在裝配坐標系中對應的方向矢量。利用模型幾何信息、用戶輸入信息(用戶指定的夾持面)聯立解算可以得到所需參數。針對不同的夾具需要不同的方式解算,如圖6,為各種夾具裝夾示意圖:
1)平口鉗:由用戶指定的夾持面(A、B)、底面C,獲取相應的矢量,以模型最小包圍盒最小點建立局部坐標系CSYS_temp(以底面C法矢的反向為局部坐標系Z軸,以夾持面B的法矢為局部坐標系X軸,叉乘得到Y軸)。求解底面C的最小包圍盒,計算得到底面C中點P,P向夾持面A投影得到投影點就是固定鉗口的定位點。CSYS_temp的三個坐標軸矢量就是固定鉗口在裝配坐標系對應的方向矢量。

圖6 夾具裝夾示意圖
2)三爪卡盤:由用戶指定的底面,以其法矢的反向為Z軸,以垂直于Z軸的平面中呈90°夾角的兩個矢量分別為X、Y軸(X矢量叉乘Y矢量為Z軸方向),以夾持柱面軸線在底面上的投影點P’為坐標原點建立局部坐標系CSYS_temp。坐標原點沿X軸移動圓柱面半徑的距離,求得的點就是卡爪定位點。CSYS_temp的三個坐標軸矢量就是固定鉗口在裝配坐標系對應的方向矢量。
3)四爪卡盤:四爪卡盤定位與三爪卡盤定位相似,但由于四爪卡盤多用來夾持塊狀、不規則狀模型,根據用戶指定的底面、夾持面建立局部坐標系CSYS_ temp后,需要確定另外三個夾持面的形狀、位置。求解方法是,從底面中心發出X、Y、-X、-Y方向的射線,求得四條射線與模型相交的距離底面中心最遠的面,并記錄底面中心與四個面的距離,底面中心分別沿著四條射線移動求得的距離,就是四爪卡盤卡爪的定位點。四個卡爪的定位方向各不相同,只要保證卡爪夾緊面與夾持面接觸,很容易計算出每個卡爪坐標系軸線對應的方向矢量。
4)頂尖:用戶指定的夾持面可能是中心孔錐面,也可能是中心孔所在地端面。若用戶指定的是中心孔倒角,計算錐角大小,很容易求得錐角頂點的坐標,這就是新建局部坐標系的原點,錐面軸線方向可作為局部坐標系的Z軸,X、Y軸為垂直于Z軸的平面上呈90°夾角的兩個方向矢量(X、Y叉乘等于Z)。此時頂尖定位點就是局部坐標系原點,CSYS_temp的Z軸與頂尖方向平行,很容易求得頂尖另外兩個方向矢量。
三維CAD種類很多,均提供了二次開發技術,考慮到三維繪圖領域中UG應用面廣、用戶群多的特點,本通用夾具庫基于UG平臺,使用了C++語言結合UG二次開發接口實現夾具庫功能。UGNX提供了UG/OPEN MenuScript、UG/OPEN UIStyler和UG/OPEN API等二次開發模塊。其中UG/OPEN API是UG/OPEN最常用的開發工具,它提供了UGNX軟件的幾乎全部編程接口,這些接口實質上是UGNX提供的一系列函數與過程的集合。UG/Open API封裝了近2000個UGNX操作函數,本系統使用其中的函數來實現夾具模板的參數化驅動[1]。
在實現參數化驅動的代碼中,用到的函數主要有:UF_PART_ask_part_tag()用于獲取模板文件的唯一標識號;UF_PART_open_quiet()后臺打開模板文件;UF_ MODL_edit_exp()用戶修改表達式參數,也是參數化驅動的核心API;UF_MODL_update()刷新模板文件,此時可以看到參數化驅動的過程;UF_PART_save()保存模板文件即可。
通過交互界面獲取用戶輸入信息,然后解析輸入信息,獲取到用戶指定的裝夾面,UF_MODL_ask_face_ data()用于獲取裝夾面的信息,利用這些面信息建立局部坐標系,通過計算工序模型和裝夾面的最小包圍盒計算夾具定位點,由此得到部件最終的位置矩陣;UF_ASSEM_add_part_to_assembly ()將夾具部件載入裝配圖時會產生一個對象事件(instance);UF_ASSEM_ reposition_instance()利用位置矩陣將裝配部件重新定位;UF_MODEL_update()更新模型,裝配完畢。
以三爪卡盤為例進行操作說明。以KM3DCAPP-M(武漢開目軟件公司研發的三維機械加工工藝規劃軟件)為操作平臺,加工零件為航天設備中常用的軸類零件。用戶使用KM3DCAPP-M系統自動對零件進行分析,自動識別加工特征、自動生成毛坯、制定工序、自動生成工序模型之后,點擊KM3DCAPP-M軟件“選擇工裝夾具”按鈕,夾具庫系統根據模型形狀和加工處理的工藝信息(加工面、加工方法)自動推薦夾具類型和型號,若用戶不滿意,“刪除工裝夾具”,重新添加即可自主選擇夾具種類和型號。彈出交互界面后,用戶指定卡爪類型和夾持方式,選擇夾持面,預覽,滿足要求則點擊“確定”,若不滿足需求,重新選擇夾持面,即可重新裝夾。點擊“確定”,則保存裝配圖,裝配完成。

圖7 三爪卡盤裝夾示例
參照夾具手冊,利用C++和UG二次開發技術建立的通用夾具庫系統,能夠根據用戶交互信息對工序模型進行準確的夾持。夾具模板參數化,滿足了用戶對同一系列夾具不同尺寸規格的要求;快速裝配技術,大大提高了用戶的工作效率。現在此模塊已經與KM3DCAPP-M軟件集成,提高零件生成工藝規劃的效率的70%以上。
[1] 劉爽.基于UGNX的機床夾具標準件庫的開發[J].中國制造業信息化.2011.
[2] 李鐵鋼.基于UG的工裝標準件庫開發[J].組合機床與自動化加工技術.2009.
[3] 楊華甫,唐耀紅,鄧唯一.集成環境下CAFD系統框架及體系結構研究[J].計算機應用.2005.
[4] 翁劍成,張赟. 基于Pro/E的組合夾具三維標準件庫的建立[J].制造業自動化.2011.
[5] 高申存,黃翔,李迎光.基于知識熔接的標準件庫的研究與實現[J].機械制造與研究.2006.
[6] 石蘇慶.基于UG的三維標準件庫的建立原則和方法[J].機械工人.2005.
[7] 胡慶夕.徐言直.陸齊.基于UG環境產品自動裝配設計的研究[A] 2008.