基于組件開發(fā)三維CAD系統(tǒng)的技術(shù)和實現(xiàn)方法

2009-05-30 鬼馬 真空技術(shù)網(wǎng)整理

1.引言

        隨著傳統(tǒng)CAD系統(tǒng)在工業(yè)界的應(yīng)用普及以及現(xiàn)代設(shè)計問題的復(fù)雜化、智能化,人們不再僅僅滿足于用計算機取代人進(jìn)行手工繪圖。所幸隨著計算機圖形學(xué)、人工智能、計算機網(wǎng)絡(luò)等基礎(chǔ)技術(shù)的發(fā)展和計算機集成制造、并行工程、協(xié)同設(shè)計等現(xiàn)代設(shè)計理論和方法的研究,使得CAD系統(tǒng)也由單純二維繪圖向三維智能設(shè)計、物性分析、動態(tài)仿真方向發(fā)展,參數(shù)化設(shè)計向變量化和VGX方向發(fā)展,幾何造型、曲面造型、實體造型向特征造型以及語義特征造型等方向發(fā)展;另一方面,伴隨著CAD軟件復(fù)雜程度的增加和各個不同應(yīng)用系統(tǒng)間互操作的現(xiàn)實需要,人們希望CAD系統(tǒng)具有極佳的開放性同時又能“搭積木”似的自由拼裝形成不同的功能配置,軟件工程技術(shù)非凡是組件開發(fā)技術(shù)的研究應(yīng)用和逐漸成熟為解決這一問題提供了堅實的基礎(chǔ)。

        組件技術(shù)使得各CAD系統(tǒng)開發(fā)商們不必再完全遵從“一切從零開始”的開發(fā)模式,他們可根據(jù)自己的技術(shù)優(yōu)勢在滿足組件接口規(guī)范要求下開發(fā)不同的構(gòu)件,然后在得到許可的情況下便可以自由使用這些構(gòu)件來搭建用戶所需要的CAD系統(tǒng)。這種方式因其開發(fā)周期短、見效快、系統(tǒng)柔性高、開放性好、以及輕易“即插即用”和進(jìn)行并行開發(fā)等優(yōu)勢而倍受親賴。
本文主要討論采用組件技術(shù)開發(fā)國產(chǎn)商品化CAD/CAM系統(tǒng)——“金銀花”系統(tǒng)的一些關(guān)鍵技術(shù)。

2.系統(tǒng)框架

        “金銀花”是在ACIS幾何建模平臺上,采用變量化特征造型技術(shù),基于STEP標(biāo)準(zhǔn)——遵循AP214和AP203協(xié)議而研制開發(fā)出來的商品化三維CAD系統(tǒng)。該系統(tǒng)基本框架結(jié)構(gòu)如圖一所示,大體分為三個層次——數(shù)據(jù)層、功能層、接口層:


        數(shù)據(jù)層包括物理數(shù)據(jù)文件、數(shù)據(jù)庫和邏輯數(shù)據(jù)模型兩部分,它是CAD系統(tǒng)的設(shè)計結(jié)果,也是CIMS信息集成的主模型,由于本系統(tǒng)是符合STEP標(biāo)準(zhǔn)的,故可以通過標(biāo)準(zhǔn)數(shù)據(jù)存取接口進(jìn)行操作,數(shù)據(jù)是用戶利用系統(tǒng)功能實現(xiàn)的。

        功能層是主體部分,主要有三維零件設(shè)計、裝配設(shè)計、二維工程圖設(shè)計三大模塊,由于有主模型的支持,三塊之間相互關(guān)聯(lián):即任一部分的改變都將引起其它部分相關(guān)的自動更新。在零件設(shè)計中采用特征造型和實體造型相結(jié)合、特征模型與實體模型共存,大大方便了后續(xù)工藝分析和加工對特征信息的需求又滿足了顯示、變換、物性計算、干涉檢查等操作對實體信息的要求。變量化VGX技術(shù)主要在草圖設(shè)計、特征造型、裝配設(shè)計等部分應(yīng)用,極大的方便了用戶對設(shè)計的編輯和修改。

        接口層是提供系統(tǒng)的對外接口,分為功能接口與數(shù)據(jù)接口。功能接口便于用戶進(jìn)行二次開發(fā),組件重用等;而數(shù)據(jù)接口為其它環(huán)節(jié)如CAPP“CAM“CAE“PDM等提供一致性的數(shù)據(jù)訪問方式。

3.組件結(jié)構(gòu)

        系統(tǒng)的組件結(jié)構(gòu)設(shè)計是基于組件技術(shù)開發(fā)CAD系統(tǒng)的關(guān)鍵,主要內(nèi)容是根據(jù)應(yīng)用系統(tǒng)的功能需求列出所有構(gòu)成組件、各個組件間的依靠關(guān)系和接口,并確定哪些組件自己開發(fā)而哪些可直接從組件供給商處購買以縮短開發(fā)周期。而本系統(tǒng)就是通過從美國STI公司購買三維CAD系統(tǒng)所需幾何造型、文件治理、內(nèi)存治理等基本功能組件,而集中精力開發(fā)支持特征造型、VGX約束求解、裝配設(shè)計、關(guān)聯(lián)繪圖、用戶接口等組件。

        由于ACIS是完全基于組件技術(shù)開發(fā)的,其所有基礎(chǔ)功能均通過不同的組件實現(xiàn)。在ACIS6.0中大約有五十多個DLL,所有這些DLL實際可劃歸為兩部分:
ACIS 3D Toolkit和Optional Husks。其中核心組件提供構(gòu)造系統(tǒng)所需的基本功能,這部分是ACIS幾何建模的核心,類似于飛機的發(fā)動機,其中包括許多開發(fā)商的必選構(gòu)件;而另一部分可選組件則提供一些更專業(yè)化和更高級的功能,這部分作為可選組件由用戶根據(jù)實際開發(fā)的系統(tǒng)需要自由挑選、搭配和組合,當(dāng)然用戶也可用自己開發(fā)的組件取代ACIS的部分組件。ACIS的各組件之間存在一定的依靠關(guān)系,其中核心組件詳情可參見ACIS6.0核心組件依靠關(guān)系圖。

        金銀花系統(tǒng)組件結(jié)構(gòu)是在對系統(tǒng)功能需求和總體框架結(jié)構(gòu)分析基礎(chǔ)上得出的,同時也參照了ACIS的組件劃分思想。圖二給出了系統(tǒng)組件依靠關(guān)系簡圖,為方便組件的集中治理和調(diào)用系統(tǒng)采用了層次結(jié)構(gòu),主要分為核心組件、功能組件、接口組件三層,上層組件可任意調(diào)用下層組件提供的所有服務(wù)。以下對圖二作一些介紹:

        核心組件層:該層包含了系統(tǒng)最重要和最基本的組件,是三維特征造型、二維關(guān)聯(lián)繪圖、部件裝配、動態(tài)仿真等模塊的共享部分。ACIS核心組件也位于其中,為系統(tǒng)提供ACIS幾何造型基本功能;LM_GI是提供底層顯示支持,如:對OpenGL的調(diào)用、對屏幕刷新的操作、基本幾何元素的繪制;LM_PUBFUN中提供通用數(shù)學(xué)運算以及公用鏈表、隊列、堆棧的類定義;LM_RUB包容了各種幾何元素的橡皮條——rubberband,該部分是支持VGX動態(tài)拖放造型中通過屬性ATTRIB機制又嵌入其對應(yīng)的LmSuperElement。這種雙向鏈表結(jié)構(gòu)方式不僅便于實現(xiàn)特征造型和實體造型間的無縫鏈接和快速查找,而且也為系統(tǒng)重建時維護(hù)拓?fù)潢P(guān)系奠定了基礎(chǔ)。因為僅記錄ACIS拓?fù)湓厥遣豢赡鼙WC拓?fù)潢P(guān)系一致的。m_OtherInfo屬性主要用于存放特征語義、工藝信息等,另外還為用戶提供了手工添加特征語義的接口,為真正支持CIMS環(huán)境下信息集成奠定了基礎(chǔ)。

        在特征創(chuàng)建“刪除“修改或模型重建過程中,為維護(hù)設(shè)計者的設(shè)計意圖關(guān)鍵在于維護(hù)模型修改前后拓?fù)浣Y(jié)構(gòu)的對應(yīng)關(guān)系即:拓?fù)湟恢滦,因此必須考慮拓?fù)渚幋a的問題。系統(tǒng)通過為每個從ENTITY派生的實體引入索引標(biāo)志的方法解決,該索引標(biāo)志不僅記錄全局唯一標(biāo)志符,而且通過充分利用ACISENTITY中的ATTRIB和ANNOTATION類對模型操作的具體變化做了具體的記錄:操作前有那些面、邊、點,操作后又產(chǎn)生了那些新的面、邊、點等等。操作后系統(tǒng)自動重新整理,保證了拓?fù)浣Y(jié)構(gòu)的對應(yīng)關(guān)系。

        要支持特征造型,還必需維護(hù)特征之間的依靠關(guān)系,以便修改特征參數(shù)后重建所有依靠特征,這些關(guān)系一般形成樹形結(jié)構(gòu),又稱特征樹。特征樹方便了對特征的治理,但這種關(guān)系往往也限制了設(shè)計人員的設(shè)計思路,并且還可能出現(xiàn):父特征的刪除導(dǎo)致所有子特征的刪除,假如某特證的參數(shù)依靠于其后續(xù)特征的參數(shù)導(dǎo)致系統(tǒng)重建時的崩潰等現(xiàn)象。于是系統(tǒng)采用雙重坐標(biāo)方法:即對每個特征既記錄其相對父特征的坐標(biāo),也記錄其在全局坐標(biāo)系下的坐標(biāo)。這樣,當(dāng)父特征不存在時,子特征可在全局坐標(biāo)系下“生存“;另外,采用VGX技術(shù),將約束關(guān)系從幾何關(guān)系中獨立出來,建立全局約束鏈,相對獨立的約束求解器,結(jié)合代數(shù)方法和數(shù)值求解方法對約束整體聯(lián)立求解,既增加了系統(tǒng)的動態(tài)導(dǎo)航、動態(tài)約束添加和動態(tài)修改機制又保證了模型的修改可以超越設(shè)計歷史樹的限制,使得設(shè)計人員隨時、隨地、隨意修改成為現(xiàn)實。

5.結(jié)論

        軟件組件技術(shù)的發(fā)展為大型復(fù)雜的三維CAD/CAM系統(tǒng)的開發(fā)提供了極好的解決之道,它完全改變了傳統(tǒng)CAD/CAD系統(tǒng)開發(fā)的低效率模式,使得該類復(fù)雜系統(tǒng)也可以“搭積式”的快速構(gòu)建。本文深入研究了基于組件技術(shù)開發(fā)三維CAD系統(tǒng)的相關(guān)技術(shù),介紹了具體實現(xiàn)方法,同時給出了系統(tǒng)組件層次結(jié)構(gòu),可為開發(fā)該類系統(tǒng)提供一定的參考。

參考文獻(xiàn)

1、CFACA:Componentframeworkforfeature-baseddesignandprocessplanning。Computer-AidedDesign32397-408。

2、王剛。“金銀花“系統(tǒng)中曲面特征造型模塊的研究與實現(xiàn)。北京航空航天大學(xué)碩士論文。1998.3

3、OnlineHelpforACISVersion6.0。http://www.13house.cn。

4、J.C.H.Chungetal.Frameworkforintegratedmechanicaldesignautomation。Computer-AidedDesign32355-365。

5、R.Bidarra,W.F.Bronsvoort。Semanticfeaturemodelling。Computer-AidedDesign32201-225。