基于proe的圖形協同感知技術研究
2013-05-13 by:廣州有限元分析、培訓中心-1CAE.COM 來源:仿真在線
梁科山 唐力 曹玉君 孟凡磊 來源:萬方數據
關鍵字:三維CAD 協同設計 proe 協同感知技術
針對基于proe的協同數據感知技術進行探討,重點論述特征操作信息數據結構的設計、特征信息的數據挖掘和特征操作再現,設計三維設計模型數據信息的分析、提取和恢復的循環操作機制。利用所論述的技術,成功解決基于proe的協同設計系統CoopCAD中設計過程的實時性問題,具有較好的穩定性和較高的效率。
圖形協同感知技術是協同設計的一項關鍵技術,主要完成協同設計中對于三維設計操作的描述。對于基于特征的三維造型工具,三維模型的設計過程就是對模型特征的增減和更改的過程。從這一點考慮,協同設計系統在支持協同設計時,只需交流設計者對三維模型特征所進行的操作的描述信息,就可以實現三維圖形的協同感知。因此,圖形協同感知問題集中在了特征操作數據的挖掘和特征操作的再現上。
基于proe平臺的協同設計系統CoopCAD中,采用了將三維造型設計時的特征操作信息轉化成計算機編程語言可識別的數據結構描述,并設計了特征操作數據挖掘模塊和特征操作再現模塊,實現了基于proe的協同設計中圖形協同感知。
1 特征操作信息數據結構的設計
CoopCAD系統所采用的特征操作信息的數據結構設計如下:
struct proe_feat_operation_info
{
UserName;∥進行此次操作的協同用戶
FeatureId;∥特征標志號
Operation;∥操作種類
FeatData;∥特征的樹形信息
}
UserName記錄著特征操作的實施者,Featureld唯一標志著某一特征,Operation是一個宏變量,它記錄了操作的種類(生成新特征、更改特征、刪除特征、陣列特征……)。
FeatData記錄了描述特征的樹形信息,結構如下:
struct featdata
{
ElemTree:∥特征元素樹
tree-sum;∥特征元素樹大小
SelData;∥特征元素樹中的選擇信息
SketchDam;∥特征元素樹中草繪信息
}
特征元素樹(ElemTree)是proe定義的一種工作空間結構,其樹形結構中的各個分支分別對應著特征各種特性的描述,開發者能夠通過一定的函數和方法填充或更改其數值,進而使它可以描述不同類型的特征。
圖1顯示的是proe中凸臺特征的特征元素樹結構。樹中的根結點和支節點稱為元素,每一個元素都用ProElemen定義,元素在樹中的位置以相應的ID號來確定。將多種類型元素按照proe定義的樹狀結構進行組合,便構成了代表某一種類型特征的特征元素樹。
FeatData中的ElemTree記錄了所有的結點及其屬性所需的數據,而SelData和SketchData結構記錄了所有已存在的幾何項目的參考、草繪元素的參考、所有的三維尺寸值三項所需的所有數據。
2特征操作數據挖掘
協同設計中的特征操作數據挖掘,是把設計者的特征操作轉換成相應的數據結構描述(proe-feat-operation-info),其獲得的數據信息是協同設計各端點間所交流的主要信息,是設計模型達到實時共享的關鍵。CoopCAD系統中的特征數據挖掘是通過設計的proe特征操作數據管理器模塊,其負責控制和管理各個子模塊,并協調它們之間的任務調度。
特征數據挖掘過程是由兩個環節來完成:
第一,設置特征相關事件觸發器,使協同設計程序能夠及時獲知proe中與特征相關事件的發生,并對不同的特征操作作出響應。
第二,針對不同的特征操作,通過特征數據分析器解析出特征的樹形信息(FeatData)。
圖2展示了特征數據挖掘的具體流程。特征數據分析器的分析結果就是特征操作的數據結構描述(proe-feat--operation-info)。
2.1特征操作相關事件觸發器
特征操作的相關事件觸發器是特征數據挖掘模塊與proe聯系最緊密的部分,它負責監視proe中的各種該模塊感興趣的特征操作事件。特征數據挖掘模塊主要感興趣的proe特征操作事件主要包括:
1)PRO-FEATURE-CREATE--新特征創建事件;
2)PRO-FEATURE-REDEFINE--特征被重定義事件;
3)PRO_FEATURE-REGEN--特征再生事件;
4)PRO-FEATURE-DELETE--特征刪除事件。
事件響應函數在相對應的proe事件發生時被自動調用,通知proe特征操作數據管理器這個事件發生,使管理器及時指派特征數據分析器對該特征操作事件進行分析以獲取特征操作數據。
特征操作的相關事件觸發器中的每一種事件都對應著獨立的處理函數,這使得它具有很好的擴展性和維護性,這也增強了整個協同設計系統的柔性,為適應更廣泛的協同設計事務提供可能。
2.2特征數據分析器
特征數據分析器是整個特征數據挖掘模塊中的核心部分,它完成了與proe相關的特征操作向其數據結構描述的轉化。在某種程度上,這個部分也是整個協同設計系統的基礎,它為系統的其余模塊提供了最直接的數據依據。
分析器所分析的特征操作包括創建新特征、重定義特征、刪除特征和陣列特征。對于不同的特征操作,分析器所采用的分析方式既有相同之處也有不同之處。對于所有的特征操作,proe_feat_operation-info中的Operation(操作種類)和FeatureId(特征標志號)是必需的,除了特征的刪除操作不再需要其它分析數據以外,另三種操作均需要進行進一步地分析。
1)創建新特征。對于新創建的特征,分析器需要將新特征的FeatData(特征的樹形信息)完全解析出來,包括特征元素樹的全部結構、特征元素樹大小、特征元素樹中的選擇信息和特征元素樹中的草繪信息。分析器所獲得的所有元素信息最終按照嚴格的邏輯順序記錄到FeatData的ElemTree結構中,選擇信息和草繪信息另外記錄在FeatData的SelData和SketchData結構中,并與相關元素一一對應。這樣新特征的數據信息就完全解析出來并以規范的結構記錄下來,為將來的特征再現提供了可靠高效的數據依托。
2)重定義特征。以一般的觀點來看,就特征數據分析器所承擔的工作量而言,重定義一個特征要小于新創建一個特征,但該協同設計系統的數據挖掘模塊將特征的重定義操作與創建新特征基本等同看待。這是由proe的開發方式所限定造成的,其要求辨別特征的重定義部分同樣需要對特征進行完全的分析操作。
3)刪除特征。分析特征的刪除操作是數據挖掘模塊中最易實現的,它只需要獲知所刪除特征的ID即可,分析器也只須對proe_feat_operation_infe中的Operation(操作種類)和FeatureId(特征標志號)分別做好記錄就可以了。
4)陣列特征。陣列特征是一項比較特殊的操作,特征數據分析器在分析該種信息結構之前需要做較多的預分析工作,由于proe的開發接口不提供直接的陣列事件,因此特征數據挖掘模塊從其它的proe特征操作事件中間接判斷陣列事件(進行特征的陣列操作必然發生特征再生,分析器通過捕捉此事件再進一步判斷陣列事件是否發生)。另一方面與分析創建新特征操作不同的是,分析器在記錄FeatData時不再需要分析是否存在草繪信息,而是改為分析是否存在多值信息。如上所述,特征數據挖掘模塊通過特征操作事件觸發器和特征數據分析器兩個子模塊協調操作,以簡潔有效的信息轉換機制建立起CoopCAD系統,在proe設計平臺上采集協同感知數據的穩定的信息通道。最后,它將特征操作的數據結構描述發送到協同操作代理模塊中,并由其經過一定的處理后轉換成協同感知信息發送到協同設計網絡上。
3特征操作再現
協同設計中的特征操作再現是CoopCAD系統中協同感知技術的最終體現者,其作用和特征數據挖掘模塊相反,利用特征操作的數據結構描述,將這一數據結構描述中的特征信息重新組合并聯系起來,構成proe能識別的特征表述,并最終在proe設計平臺上重現這一特征操作。
特征操作再現模塊主要由特征操作分類器和特征操作執行器兩部分組成。當特征操作再現模塊從協同操作代理模塊接收到特征操作的數據結構描述后,首先將其交給分類器進行分類處理:分類器根據特征操作信息(proe_feat_operation_nfo)中的Operation變量的值確定此特征操作的種類,然后由不同的操作種類,將接收到的特征操作數據結構描述傳遞給特征操作執行器的不同部分進行特征再現。特征操作執行器對不同的特征操作采取不同的特征再現策略。
再現創建新特征的操作需要將特征的特征樹信息完全再度創建出來,其過程主要是從FeatData的ElemTree中順序取出各個元素,再將它們按照嚴格的元素樹形組織結構聯系在一起,才能最終由此樹形結構完全相同地再現此特征。
再現重定義特征的操作基本與再現創建新特征相同。再現刪除特征操作只需根據FeatureId(特征標志號)由開發接口調用ProFeatureDelete函數即可。陣列特征操作的再現和創建新特征的再現過程基本相同,但在再現陣列操作時不需要重新構建革繪信息,需要構建多值信息。
相關標簽搜索:基于proe的圖形協同感知技術研究 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓 Abaqus培訓 Autoform培訓 有限元培訓 Solidworks培訓 UG模具培訓 PROE培訓 運動仿真