沖模CAD系統(tǒng)中典型結構動態(tài)設計方法的研究
2013-05-28 by:廣州有限元分析、培訓中心-1CAE.COM 來源:仿真在線
研究了沖模CAD系統(tǒng)中模具典型結構的動態(tài)設計方法,在約束關系樹裝配模型的基礎上,利用面向對象的方法進行裝配建模,并論述了動態(tài)設計中正向設計與反向設計相應的約束求解方法。
蒙凡勝;溫建勇;李建軍;肖祥芷 來源:模具工業(yè)
關鍵字:沖模CAD 面向對象方法 動態(tài)設計 約束求解
1 引 言
沖模典型結構,是指由標準模架、模具的固定和定位裝置及導向裝置、卸料裝置等組成的一個有機裝配體,它是進行模具結構設計的基礎。在以往的模具CAD系統(tǒng)中,進行模具結構設計時,往往預先定義好幾種典型的模具結構供用戶設計時選擇,然后再在此基礎上進行模具結構設計。這雖然大大地減少了設計者的工作量,提高了設計效率,但由于沖模結構的復雜與多變性,又限制了系統(tǒng)的實用范圍,也不能讓用戶進行設計修改,從而降低了設計的靈活性。
為了滿足不同用戶的需求,使他們能夠方便地自定義所需要的模具結構,并能在設計過程中進行動態(tài)的設計修改。本文研究了在參數(shù)化技術的基礎上,利用變量裝配設計方法,建立一個支持層次功能劃分,并能方便用戶進行動態(tài)設計修改的模具裝配模型,并以Auto CAD R14為平臺,利用面向對象的ObjectARX為二次開發(fā)工具,結合MFC庫(Microsoft Fundamental Library)予以實現(xiàn)。
2 動態(tài)設計的關鍵技術
動態(tài)設計是在設計變量、設計變量約束、裝配約束驅動下的一種可變的裝配設計,其中設計變量是定義產品功能要求和設計者意圖的產品整體或其零部件的最基本的功能參數(shù)和形狀參數(shù),設計變量約束即設計約束或變量約束,設計變量和設計變量約束控制裝配體中的零部件的形狀。裝配約束是裝配體內各個零部件的配合關系,它確定了零部件的位置。
動態(tài)設計的過程是正向設計與反向設計相互結合的過程,所謂正向設計是指從概念設計到詳細設計,從而得到裝配設計方案的自上而下的設計過程。而反向設計是指對產品設計方案中的一些不滿意的地方提出要求或限制條件,結合原有的裝配功能要求,通過約束求解對原有的設計方案進行設計修改的過程。
實現(xiàn)動態(tài)設計的關鍵技術主要有如下兩點:
(1)參數(shù)化技術。參數(shù)化設計為設計者提供了一個動態(tài)設計的環(huán)境。近幾年來,零件圖的參數(shù)化設計已經比較成熟,這使將參數(shù)化方法引入裝配設計成為可能。利用參數(shù)化技術,不僅可以實現(xiàn)裝配圖中零部件的動態(tài)設計修改,還可以通過裝配模型定義裝配關系,以一組變量的某種特定的形式或裝配特征來表達裝配關系,通過尺寸的驅動,在裝配圖模型的基礎上參數(shù)化生成裝配圖。
(2)變量裝配設計理論。變量裝配設計理論是一種支持產品功能的裝配設計理論,其主要特點有:①支持從上到下的產品形狀和功能構想;②支持面向功能的產品設計;③支持動態(tài)裝配設計。在裝配設計中,概念設計、裝配設計、零件設計是三個相互交叉的過程。變量裝配設計對概念設計產生的設計變量和設計變量約束進行記錄、表達、轉播,使各個階段設計主要是在產品功能和設計者意圖的基礎上進行,它始終是在產品的功能約束下進行和完成的。其設計過程如圖1。
圖1 變量裝配設計過程
3 模具典型結構動態(tài)交互設計的實現(xiàn)
3.1 設計變量及設計變量約束的表達
設計變量是實現(xiàn)動態(tài)設計的基礎,零件的參數(shù)化設計及變量裝配設計是通過各種設計變量來實現(xiàn)的。設計變量的類表示如下:
class Design Variable:{
char *m_name; //變量名稱
value_type m_type;//變量類型
double m_real; //變量值
int m_int; //變量值
Point3d m_point; //變量值
char*m_string; //變量含義
Design Variable *next;}
在級進模設計中,設計變量約束有如下3種:①等式約束,如上、下模板的Z方向坐標Z2=Z1+H。②限制約束,常為不等式約束。③規(guī)則約束,模具設計中的一些經驗知識。
采用設計變量約束網絡(Variable Constraint Network,VCN)來管理設計變量及其表達式。VCN是在模具典型結構的設計過程中逐步建立和完善的,用戶可交互的對設計變量和變量約束進行增加、修改、刪除等。
3.2 零件信息的表達
裝配體中相同的零件會出現(xiàn)多次,它們的幾何信息、物理特性都相同,不同之處在于空間位置,利用面向對象的方法,可以將零件表達為各個類的一個個對象,這些類存儲零件的圖形(由塊組成)、位置(中心點的坐標(x,y,z)用數(shù)學表達式表達)、屬性(約束變量值及尺寸大小)。而設計一個零件的過程就是一個實例化的過程。零件的基類表示如下:
class Copart:public AcDbEntity{
Char *_instant; //零件的名稱
Point3d mCenter; //零件的定位點
AcGe Vector3d mRot; //零件的方向矢量
AcDbHardPointerID mdef; //零件的信息,如尺寸變量、零件個數(shù)等,以CoParDef(見下文)類存儲,以對象ID標識
AcDbObjectIDArray mEntIds;//組成零件的實體信息,從圖塊中獲得
AcDbObjectIDArray mHoles;//零件上的孔的信息,由于級進模的裝配關系多為板孔關系,故此信息須記錄
AcDbObjectIDArray mCons;//零件的約束鏈,以CoCons類(見下文)存儲,以對象ID標識 }
存儲零件信息(約束變量,尺寸變量等)的CoPartDef類封裝了該零件的零件編號、數(shù)量、標識及變量表達式等。
3.3 裝配約束關系的表達
在級進模中各零件的裝配約束關系主要有以下幾點:①接觸關系;②依附關系;③裝配尺寸關系。
在級進模結構中,接觸關系和裝配尺寸關系相對比較簡單,它們用不同的類進行封裝,它們共同的基類CoCons表示如下:
class CoCons:public AcDbObject{
pointerID mBody1,mBody2;//裝配關系所約
束的兩個零件或子裝配體
pointerID mGeomRefl,mGeomRef2;//約束
關系的兩個圖形參考實體
}
而依附關系較復雜,在模具結構中,依附關系主要為板件上孔、槽等的描述。因此可用特征的隱式表達的方法,通過約束類型以及用變量表達式表示的約束參數(shù)來描述依附約束關系。當建立兩個零件之間的約束關系時,包括約束關系鏈的一方稱為擁有者(Owner),另一方稱作連接者(Connector)。當任一方被刪除后,它們的約束關系也被刪除。在模具結構中,孔的類型主要有通孔、帶螺紋階梯孔、螺紋孔、盲孔、階梯孔、凸、凹模的型孔等。通過總結,可將這些建立成裝配約束關系庫,系統(tǒng)可根據(jù)裝配關系庫自動建立零件間的約束關系。下面為約束關系的一個實例,通孔(如圖2)的描述:
Relation(彈簧、凹模墊板)
{
Owner:彈簧(ID6)
Connector:凹模墊板(ID3)
Type:通孔
Paremeters:{
Center=[rxof(ID6),xyof(ID6),rzof(ID3)];
Ndir=[0,0,1];D=max(D1∷ID5,D∷ID6);H=T∷ID3;}}
圖2 通 孔
3.4 動態(tài)設計及其約束求解
正向設計的過程為:先進行概念設計,確定模具的總體結構,從模具裝配圖庫中調出相應的典型模架裝配圖,在此基礎上,對裝配圖上的零件進行功能與形狀設計,同時進行裝配關系的定義(即貼合、同心、依附等)及修改,對所選零件的各個視圖進行參數(shù)化驅動或其它操作,并求解約束,約束求解采用動態(tài)變量約束求解。如設計方案中的一些不滿意,則須進行反向設計,如涉及到增加或刪除約束,則對VCN進行動態(tài)變量約束求解;如只需要進行修改零件的尺寸或設計變量,則選擇需要進行修改的零件,然后根據(jù)所選擇零件的約束,進行約束求解,并對相關零件進行設計修改。
所謂動態(tài)變量約束求解,即在建立VCN過程中,每輸入一個設計變量約束,如已知條件可以充分滿足該設計變量約束,就求解該約束。在此采用了分類分步分解的求解策略,將等式約束和其他約束分類進行分步處理,依次求解部分可解約束、循環(huán)處理,并應用序列分解方法選擇可解約束和決定約束求解的順序。等式約束的序列分解算法如下:
(1)把所有等式約束表達成一個鄰接矩陣M1,行表示等式約束,列表示設計變量,‘1’表示某設計變量出現(xiàn)在所有行的等式約束中,‘0’表示沒有出現(xiàn)。初始化一個堆棧S1。
(2)找出M1只含一個設計變量(對應只有一個‘1’)的行,如果沒有,則不可順序求解,轉入(4)。
(3)對只含一個設計變量的行,讀取該行的等式約束指針,并壓入堆棧S1,從矩陣中去掉該行,去掉含此設計變量的列,繼續(xù)(2)。
(4)求解S1中的等式約束所組成的方程組,返回。
當?shù)仁郊s束不可能再進行序列分解處理時,則需要進行方程組的聯(lián)立求解,其它類型的約束也可用以上類似的方法進行處理。
而反向設計中,如涉及到約束的增加或減少,也可對VCN進行動態(tài)變量約束求解。如約束不變,只是變量值發(fā)生了變化,則采用的約束關系的求解算法如下(如圖3):
(1)找到零件P1的約束鏈;
(2)依次取約束鏈中的約束關系,得到約束關系記錄的連接者Pc,如已到鏈尾則轉(5);
(3)如Pc的約束鏈中存在P1,則約束有效,轉(4),否則繼續(xù)(2);
圖3 零件約束圖
(4)根據(jù)約束中記錄的約束參數(shù),求解變量表達式,得到相應的圖形;
(5)依次取Pc中連接者ID鏈中每一個ID,取得零件PID,從PID的約束鏈中得到相應的約束關系,同樣進行(4)。
4 結束語
采用以上的裝配信息的表達方法,正、反向設計相應的求解策略及面向對象的程序設計方法,在模具典型結構設計中,零件及子裝配體的定義、存儲、管理、操作,裝配關系及約束變量的表達及求解將更加方便,這就給典型結構的動態(tài)交互設計奠定了基礎。同時,也就能更好地利用MFC的可視化技術,使用戶能方便地進行交互的定義模具典型結構,并能進行動態(tài)設計及修改。
相關標簽搜索:沖模CAD系統(tǒng)中典型結構動態(tài)設計方法的研究 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓 Abaqus培訓 Autoform培訓 有限元培訓 Solidworks培訓 UG模具培訓 PROE培訓 運動仿真