- 相關推薦
基于組件的三維CAD系統開發(fā)的關鍵技術研究
摘要:研究了組件技術和特征造型技術,并以“金銀花”系統的開發(fā)為實例對基于組件開發(fā)三維CAD系統的相關技術和實現方法進行了深入研究,給出了實現系統的框架結構和組件結構。
關鍵詞: CAD 組件 變量化(VGX) 實體造型 特征造型
1. 引言
隨著傳統CAD系統在工業(yè)界的應用普及以及現代設計問題的復雜化、智能化,人們不再僅僅滿足于用計算機取代人進行手工繪圖。所幸隨著計算機圖形學、人工智能、計算機網絡等基礎技術的發(fā)展和計算機集成制造、并行工程、協同設計等現代設計理論和方法的研究,使得CAD系統也由單純二維繪圖向三維智能設計、物性分析、動態(tài)仿真方向發(fā)展,參數化設計向變量化和VGX(超變量化)方向發(fā)展,幾何造型、曲面造型、實體造型向特征造型以及語義特征造型等方向發(fā)展;另一方面,伴隨著CAD軟件復雜程度的增加和各個不同應用系統間互操作的現實需要,人們希望CAD系統具有極佳的開放性同時又能“搭積木”似的自由拼裝形成不同的功能配置,軟件工程技術特別是組件開發(fā)技術的研究應用和逐漸成熟為解決這一問題提供了堅實的基礎。
組件技術使得各CAD系統開發(fā)商們不必再完全遵從“一切從零開始”的開發(fā)模式,他們可根據自己的技術優(yōu)勢在滿足組件接口規(guī)范要求下開發(fā)不同的構件,然后在得到許可的情況下便可以自由使用這些構件來搭建用戶所需要的CAD系統。這種方式因其開發(fā)周期短、見效快、系統柔性高、開放性好、以及容易“即插即用”和進行并行開發(fā)等優(yōu)勢而倍受親賴。
本文主要討論采用組件技術開發(fā)國產商品化CAD/CAM系統——“金銀花” 系統的一些關鍵技術。
2. 系統框架
“金銀花”是在ACIS幾何建模平臺上,采用變量化特征造型技術,基于STEP標準——遵循AP214和AP203協議而研制開發(fā)出來的商品化三維CAD系統。該系統基本框架結構如圖一所示,大體分為三個層次——數據層、功能層、接口層:
數據層包括物理數據文件、數據庫和邏輯數據模型兩部分,它是CAD系統的設計結果,也是CIMS信息集成的主模型,由于本系統是符合STEP標準的,故可以通過標準數據存取接口(SDAI)進行操作,數據是用戶利用系統功能實現的。
功能層是主體部分,主要有三維零件設計、裝配設計、二維工程圖設計三大模塊,由于有主模型的支持,三塊之間相互關聯:即任一部分的改變都將引起其它部分相關的自動更新。在零件設計中采用特征造型和實體造型相結合、特征模型與實體模型共存,大大方便了后續(xù)工藝分析和加工對特征信息的需求又滿足了顯示、變換、物性計算、干涉檢查等操作對實體信息的要求。變量化VGX技術主要在草圖設計、特征造型、裝配設計等部分應用,極大的方便了用戶對設計的編輯和修改。
接口層是提供系統的對外接口,分為功能接口與數據接口。功能接口便于用戶進行二次開發(fā),組件重用等;而數據接口為其它環(huán)節(jié)如CAPP\CAM\CAE\PDM等提供一致性的數據訪問方式。
3. 組件結構
系統的組件結構設計是基于組件技術開發(fā)CAD系統的關鍵,主要內容是根據應用系統的功能需求列出所有構成組件、各個組件間的依賴關系和接口,并確定哪些組件自己開發(fā)而哪些可直接從組件供應商處購買以縮短開發(fā)周期。而本系統就是通過從美國STI公司(Spatial Technology Inc.)購買三維CAD系統所需幾何造型、文件管理、內存管理等基本功能組件,而集中精力開發(fā)支持特征造型、VGX約束求解、裝配設計、關聯繪圖、用戶接口等組件。
由于ACIS是完全基于組件技術開發(fā)的,其所有基礎功能均通過不同的組件(表現為動態(tài)聯接庫DLL)實現。在ACIS6.0中大約有五十多個DLL,所有這些DLL實際可劃歸為兩部分:ACIS 3D Toolkit(核心模塊)和Optional Husks(可選模塊)。其中核心組件提供構造系統所需的基本功能(如:基本幾何和拓撲、內存管理、模型管理、顯示管理、圖形交互等),這部分是ACIS幾何建模的核心,類似于飛機的發(fā)動機,其中包括許多開發(fā)商的必選構件;而另一部分可選組件則提供一些更專業(yè)化和更高級的功能(如:高級過渡、高級渲染、可變形曲面、精確消影、拔模、抽殼、與CATIA和Pro/E等系統的數據接口等),這部分作為可選組件由用戶根據實際開發(fā)的系統需要自由挑選、搭配和組合,當然用戶也可用自己開發(fā)的組件取代ACIS的部分組件。ACIS的各組件之間存在一定的依賴關系,其中核心組件詳情可參見ACIS6.0核心組件依賴關系圖。
金銀花系統組件結構是在對系統功能需求和總體框架結構分析基礎上得出的,同時也參照了ACIS的組件劃分思想。圖二給出了系統組件依賴關系簡圖(為節(jié)省篇幅,主要表示了三維零件設計部分的組件,而沒有詳細表示關聯繪圖和裝配部分的組件),為方便組件的集中管理和調用系統采用了層次結構,主要分為核心組件、功能組件、接口組件三層,上層組件可任意調用下層組件提供的所有服務。以下對圖二作一些介紹:
◆ 核心組件層:該層包含了系統最重要和最基本的組件,是三維特征造型、二維關聯繪圖、部件裝配、動態(tài)仿真等模塊的共享部分。ACIS核心組件也位于其中,為系統提供ACIS幾何造型基本功能;LM_GI是提供底層顯示支持,如:對OpenGL的調用、對屏幕刷新的操作、基本幾何元素的繪制;LM_PUBFUN中提供通用數學運算以及公用鏈表、隊列、堆棧的類定義;LM_RUB包容了各種幾何元素的橡皮條——rubberband,該部分是支持VGX動態(tài)拖放造型(drag-and-drop)、動態(tài)約束添加以及
裝配模塊中的動態(tài)干涉檢查等的基本組件;LM_KERN包括本系統特征造型功能和ACIS幾何造型引擎連接相關的類LmSuperElement(詳見4),以及為上層提供的管理類、約束類、特征類等提供超類。
◆ 功能組件層:該層建于核心層之上,系統面向應用的主要功能部件均在這一層實現。用戶的不同需求會希望配置不同功能的軟件系統,從該層選折所需組件集進行不同配置即可。圖二所示為三維部分的核心組件LM_KERNPART、特征造型組件LM_FEATURE、VGX約束管理器組件LM_VGX、處理選折對象的組件LM_PICK、和負責總體協調管理的組件LM_MANAGE等。而其中特征造型和VGX組件中又分別進一步細化為:草圖特征、高級特征、自定義特征和VGX約束操作、約束管理約束求解等組件。
◆ 接口組件層:是系統的最高層,也是與用戶直接進行交互操作管理的組件層,所以主要有處理鼠標事件MouseTool的LM_MT和管理系統界面中涉及到的對話框、菜單、工具條等資源的組件。
可見,這種組件設計結構不僅極大的方便了不同用戶需求系統的配置,而且將系統的用戶接口與功能的具體實現分開,便于針對不同語種、不同操作系統平臺、不同使用習慣開發(fā)豐富多彩的界面,也從技術角度實現了與ACIS幾何引擎的無縫集成。
4. 關鍵技術實現
采用軟件組件技術建立組件依賴關系為三維CAD系統架設了總體結構,但具體實現還需解決許多關鍵性技術,以下主要以特征造型技術為例說明系統的設計思路。
由于ACIS本質上一個幾何實體造型的平臺,通過B-rep表示提供實體幾何、拓撲結構的完整描述,但它并不直接支持特征造型。因此,如圖三所示系統在實體模型和特征模型之間通過引入構造點、邊、面的機制建立一種映射關系。每個特征中不僅包含工藝制造信息還包含其具體構造點、邊、面信息,這些構造元素再與實體模型中的點、邊、面建立聯系。
其中LmFeature最終派生于ACIS的ENTITY,以便于進行內存管理、文件存儲和模型操作管理。m_Construction屬性記錄該特征的所有構造點LmSuperPoint、邊LmSuperEdge、面LmSuperFace(三者均派生于LmSuperElement),它們又分別記錄ACIS的VERTEX,EDGE,FACE和部分幾何參數以及特定的語義信息;同時在每個ACIS拓撲元素(FACE,EDGE,VERTEX)中通過屬性ATTRIB機制又嵌入其對應的LmSuperElement。這種雙向鏈表結構方式不僅便于實現特征造型和實體造型間的無縫鏈接和快速查找,而且也為系統重建時維護拓撲關系奠定了基礎。因為僅記錄ACIS拓撲元素(FACE,EDGE,VERTEX)是不可能保證拓撲關系一致的。m_OtherInfo屬性主要用于存放特征語義、工藝信息等,另外還為用戶提供了手工添加特征語義的接口, 為真正支持CIMS環(huán)境下信息集成奠定了基礎。
在特征創(chuàng)建\刪除\修改或模型重建過程中,為維護設計者的設計意圖關鍵在于維護模型修改前后拓撲結構的對應關系即:拓撲一致性,因此必須考慮拓撲編碼的問題。系統通過為每個從ENTITY派生的實體引入索引標志的方法解決,該索引標志不僅記錄全局唯一標志符,而且通過充分利用ACIS ENTITY中的ATTRIB 和ANNOTATION 類對模型操作的具體變化做了詳細的記錄:操作前有那些面、邊、點,操作后又產生了那些新的面、邊、點等等。操作后系統自動重新整理,保證了拓撲結構的對應關系。
要支持特征造型,還必需維護特征之間的依賴關系,以便修改特征參數后重建所有依賴特征,這些關系一般形成樹形結構,又稱特征樹。 特征樹方便了對特征的管理,但這種關系往往也限制了設計人員的設計思路,并且還可能出現:父特征的刪除導致所有子特征的刪除,如果某特證的參數依賴于其后續(xù)特征的參數導致系統重建時的崩潰等現象。于是系統采用雙重坐標方法: 即對每個特征既記錄其相對父特征的坐標,也記錄其在全局坐標系下的坐標。這樣,當父特征不存在時,子特征可在全局坐標系下"生存";另外, 采用VGX技術,將約束關系從幾何關系中獨立出來,建立全局約束鏈,相對獨立的約束求解器, 結合代數方法和數值求解方法對約束整體聯立求解,既增加了系統的動態(tài)導航、動態(tài)約束添加和動態(tài)修改機制又保證了模型的修改可以超越設計歷史樹的限制,使得設計人員隨時、隨地、隨意修改成為現實。
5. 結論
軟件組件技術的發(fā)展為大型復雜的三維CAD/CAM系統的開發(fā)提供了極好的解決之道,它完全改變了傳統CAD/CAD系統開發(fā)的低效率模式,使得該類復雜系統也可以“搭積式”的快速構建。本文深入研究了基于組件技術開發(fā)三維CAD系統的相關技術,介紹了具體實現方法,同時給出了系統組件層次結構,可為開發(fā)該類系統提供一定的參考。
參 考 文 獻
1 CFACA:Component framework for feature-based design and process planning。 Computer-Aided Design 32(2000) 397-408。
2 王剛。 "金銀花"系統中曲面特征造型模塊的研究與實現。 北京航空航天大學碩士論文。1998.3
3 Online Help for ACIS Version 6.0。 http://www. spatial. com。
&nb
sp;4 J.C.H. Chung et al. Framework for integrated mechanical design automation。 Computer-Aided Design 32(2000) 355-365。
5 R.Bidarra,W.F.Bronsvoort。 Semantic feature modelling。 Computer-Aided Design 32(2000) 201-225。
【基于組件的三維CAD系統開發(fā)的關鍵技術研究】相關文章:
基于MATLAB的數字水印技術研究08-06
基于DLL的虛擬儀器系統開發(fā)08-06
基于ARM的實時測控系統開發(fā)平臺08-06
基于諧波補償的逆變器波形控制技術研究08-06
基于在線手寫簽名的身份認證技術研究和展望08-06
云環(huán)境下基于蟻群算法的動態(tài)容錯技術研究08-19
硬件密碼組件與軟件密碼組件的比較研究08-06