我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

您的位置:網(wǎng)站首頁 > CAM

數(shù)控車削仿真中的面向?qū)ο髷?shù)據(jù)庫系統(tǒng)

時(shí)間:2011-02-27 11:04:41 來源:

虛擬數(shù)控加工仿真系統(tǒng)的目的是建立一個仿真的平臺,并提供一個逼真的加工環(huán)境。在此平臺上,操作者或研究者可以通過交互式系統(tǒng)實(shí)現(xiàn)對于數(shù)控加工過程的真實(shí)模擬。正因?yàn)槿绱耍到y(tǒng)應(yīng)該具有開放式、模塊化的特征,以利于根據(jù)不同的需要實(shí)現(xiàn)數(shù)控系統(tǒng)、機(jī)床、加工環(huán)境的不同組合。而傳統(tǒng)的軟件系統(tǒng)是面向過程的并且相應(yīng)的支持?jǐn)?shù)據(jù)庫是針對關(guān)系來建立,這就使其存在以下不足:

1) 傳統(tǒng)的系統(tǒng)開發(fā)過程周期較長。當(dāng)應(yīng)用要求發(fā)生變化時(shí),開發(fā)過程的各個階段都要作相應(yīng)的修改,因而代價(jià)較大。這是因?yàn)闃?gòu)成系統(tǒng)的各個功能單元的程序都是依據(jù)結(jié)構(gòu)化程序思想設(shè)計(jì)而成的。雖然模塊化程度較高,但忽視了數(shù)據(jù)對程序產(chǎn)生的彬響。由于在結(jié)構(gòu)化語言中,幾乎重要的數(shù)據(jù)都被定義為全局?jǐn)?shù)據(jù),而全局?jǐn)?shù)據(jù)可以被任何一個程序所訪問,所以當(dāng)全局?jǐn)?shù)據(jù)的結(jié)構(gòu)或?qū)傩园l(fā)生變化時(shí),相關(guān)聯(lián)的程序必將作相應(yīng)的修改。

2) 有限的建模能力和計(jì)算能力。傳統(tǒng)數(shù)據(jù)庫系統(tǒng)所支持的主要數(shù)據(jù)模型是層次、網(wǎng)狀和關(guān)系,并且關(guān)系數(shù)據(jù)庫要求一個關(guān)系的所有屬性都必須是原子型,面對復(fù)雜數(shù)據(jù)的抽象和建模,關(guān)系數(shù)據(jù)庫只能建立所謂嵌套關(guān)系數(shù)據(jù)模型,這就使得關(guān)系數(shù)據(jù)庫對于客觀世界中的實(shí)體很難對應(yīng),因而對現(xiàn)實(shí)世界中復(fù)雜數(shù)據(jù)的抽象和表達(dá)能力只能是極其有限的。同時(shí),由于數(shù)據(jù)結(jié)構(gòu)的單一性,導(dǎo)致計(jì)算時(shí)需要不斷在客觀實(shí)體與單一數(shù)據(jù)結(jié)構(gòu)之間進(jìn)行轉(zhuǎn)換。

從上面的分析可以看出,不論足在系統(tǒng)級的開發(fā)上還是在數(shù)據(jù)庫的設(shè)計(jì)與管理上,傳統(tǒng)的系統(tǒng)開發(fā)及數(shù)據(jù)庫管理都存在著缺陷,而面向?qū)ο髷?shù)據(jù)庫系統(tǒng)的開發(fā)可以解決這些傳統(tǒng)開發(fā)系統(tǒng)面臨的問題。

1 面向?qū)ο髷?shù)據(jù)庫原理與實(shí)現(xiàn)

面向?qū)ο蠹夹g(shù)是一種按照人們對現(xiàn)實(shí)世界習(xí)慣的認(rèn)識論思維方式來研究和棋擬客觀世界的方法學(xué),它將現(xiàn)實(shí)世界中的任何事物均視為“對象”,客觀世界看成是由許多不同種類的對象構(gòu)成。每個對象都有自己的內(nèi)部狀態(tài)和運(yùn)動規(guī)律,不同對象之間的相互聯(lián)系和相互作用就構(gòu)成了完整的客觀世界。它主要包括三方面內(nèi)容。即面向?qū)ο蟮南到y(tǒng)分析與設(shè)計(jì)方法、面向?qū)ο蟮臄?shù)據(jù)庫技術(shù)和面向?qū)ο蟮某绦蛟O(shè)計(jì)語言。在這其中,對象的構(gòu)造與分析是關(guān)鍵。

面向?qū)ο蟮脑O(shè)計(jì)要求相應(yīng)的數(shù)據(jù)庫支持,而傳統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)方法具有一定的缺點(diǎn),因此必須設(shè)計(jì)針對面向?qū)ο笤O(shè)計(jì)的數(shù)據(jù)庫系統(tǒng)來實(shí)現(xiàn)相應(yīng)的功能。面向?qū)ο髷?shù)據(jù)庫管理系統(tǒng)(OODBMS)是一個既支持面向?qū)ο笙到y(tǒng)特性,又支持DBMS系統(tǒng)特點(diǎn)的系統(tǒng)。在設(shè)計(jì)和實(shí)現(xiàn)OODBMS中,一般有如下三種方案:

1) 修改(擴(kuò)充)現(xiàn)有的數(shù)據(jù)模型,使之與面向?qū)ο竽P拖嘁恢拢瑫r(shí)增加相應(yīng)的數(shù)據(jù)庫特征。
2) 獨(dú)立開發(fā)出全新的數(shù)據(jù)欖型,直接支持面向?qū)ο箫L(fēng)格。
3) 在面向?qū)ο蟪绦蛟O(shè)計(jì)語言中嵌入數(shù)據(jù)庫功能,形成OODBMS。

在本論文中采用第三種設(shè)計(jì)方法。根據(jù)上面的原理,在對數(shù)據(jù)庫進(jìn)行設(shè)計(jì)和構(gòu)造時(shí),首先進(jìn)行對象分析。對象分析的目的是針對具體的問題,分析在系統(tǒng)中可能用到哪些對象,對象之間的繼承與上下級關(guān)系。然后是確定采用什么樣的數(shù)據(jù)結(jié)構(gòu)來實(shí)現(xiàn),最后是設(shè)計(jì)一個庫表,實(shí)現(xiàn)數(shù)據(jù)的存儲。面向?qū)ο笤O(shè)計(jì)的數(shù)據(jù)庫設(shè)計(jì)的流程圖如圖1:


圖1 面向?qū)ο髷?shù)據(jù)庫分析

2 數(shù)控車削仿真數(shù)據(jù)庫設(shè)計(jì)

1) 數(shù)控車削仿真中的對象分析

如前所述,虛擬數(shù)控車削仿真的目的是以“用戶”為中心的,相應(yīng)的數(shù)據(jù)庫的設(shè)計(jì)也必須是以“用戶”為中心的,這就要求數(shù)據(jù)庫具有開放性。即針對用戶的要求,系統(tǒng)可以實(shí)現(xiàn)數(shù)據(jù)庫內(nèi)容的重新定義,以完成相應(yīng)的功能。數(shù)控車削仿真數(shù)據(jù)庫的實(shí)現(xiàn)是以軟件中的對象分析為基礎(chǔ)的,因此在進(jìn)行數(shù)據(jù)庫設(shè)計(jì)之前。必須首先進(jìn)行系統(tǒng)的對象分析。

數(shù)控車削仿真對象包括環(huán)境對象、光源、機(jī)床對象、刀具對象、工件對象、切屑對象、數(shù)控系統(tǒng)對象、刀架、溜板、工作臺等部件對象。不論是物理仿真還是幾何仿真都是針對的這些對象來反映他們的狀態(tài)與特征。在面向?qū)ο蠓治鲋校總€對象以類的抽象形式定義。

在數(shù)控車削仿真系統(tǒng)中,將各個對象的“共性”加以抽象,形成類。類的形成原則是所有類對象必需具有某種共性。類中分為虛類和實(shí)類。虛類通常為類對象中的最高的類,具有最通用的一些特性。但同時(shí)其參數(shù)也相對比較少,如果按照其構(gòu)造對象,通常無法在視圖中加以顯示。因此常采用實(shí)類實(shí)現(xiàn)對象的構(gòu)造,但虛類往往是實(shí)類的父類,一些參數(shù)而要從中定義。虛類和實(shí)類都可以有子類,不同的是,實(shí)類和其子類都可直接構(gòu)造對象。父實(shí)類和了實(shí)類可以具有不同的下級類。類關(guān)系圖見圖2。


圖2 數(shù)控仿真類關(guān)系圖

2) 數(shù)據(jù)庫管理系統(tǒng)的實(shí)現(xiàn)

面向?qū)ο蟮臄?shù)據(jù)庫管理系統(tǒng)是實(shí)現(xiàn)面向?qū)ο笤O(shè)計(jì)的關(guān)鍵。開放式的數(shù)據(jù)庫管理系統(tǒng)可以通過視圖由用戶實(shí)現(xiàn)記錄的增加、刪除、查詢和修改:同時(shí)在數(shù)控仿真的各個階段,數(shù)據(jù)庫系統(tǒng)作為仿真的基礎(chǔ)一直運(yùn)行著。在數(shù)控車削智能仿真系統(tǒng)中,數(shù)據(jù)庫的視圖位于視圖類中,它是用戶與系統(tǒng)交互的窗口,消息通過視圖類傳遞到數(shù)據(jù)庫管理系統(tǒng)中。而數(shù)據(jù)庫管理系統(tǒng)位于系統(tǒng)的文檔類中,負(fù)責(zé)對數(shù)據(jù)也就是對象的管理。因此下面針對仿真進(jìn)程中的各個階段,說明數(shù)據(jù)庫管理系統(tǒng)的實(shí)現(xiàn)。

(1) 仿真進(jìn)程中

在仿真的進(jìn)程中,尤其是在仿真初始化的時(shí)候,采用向下泊歷算法來實(shí)現(xiàn)。算法的描述如下:

a. 首先在文檔類中生成一個仿真對象,從面向?qū)ο髷?shù)據(jù)庫中得到相應(yīng)的信息包括環(huán)境對象、車床對急、車削系統(tǒng)對象。然后根據(jù)車床對象的數(shù)據(jù)庫中的信息可以得到相應(yīng)的刀具、刀架、底座、導(dǎo)軌等部件的信息,從而形成一個完整的仿真對象,初始化完畢后,在視圖類中顯示。
b. 等待用戶響應(yīng),根據(jù)不同的操作形成不同的動態(tài)模型。

在仿真的某一時(shí)刻,只需遍歷數(shù)據(jù)庫中帶有當(dāng)前紀(jì)錄標(biāo)識的對象,就可以得到當(dāng)前時(shí)刻的物理凡何仿真所甜要的數(shù)據(jù)。

(2) 仿真完畢后

在仿真完畢后,可能用戶根據(jù)仿真的結(jié)果需要對對象的屬性甚至是對象的類型進(jìn)行修改,這就需要對數(shù)據(jù)庫中的內(nèi)容進(jìn)行更新,假定用戶在視圖中進(jìn)行了對象更新,則數(shù)據(jù)庫更新的算法可以描述為:

a. 根據(jù)用戶要求確定所要更新的對象;
b. 判斷是整個對每需要更新(轉(zhuǎn)iii),還是對象的屬性需要更新(轉(zhuǎn)vi):
c. 如果整個對象需要更新,要得到對象的標(biāo)識和ID;
d. 初始化得到對象的各項(xiàng)屬性,并根據(jù)向下遍歷的原則建立下級各節(jié)點(diǎn)的屬性:
e. 如果無其他對象需要更新,則End.否則(轉(zhuǎn)ii):
f. 根據(jù)對象的ID更新對象屬性,并存儲到數(shù)據(jù)庫中,改變當(dāng)前記錄標(biāo)識:轉(zhuǎn)v。

3 結(jié)論

本文針對數(shù)控車削過程中數(shù)控仿真的需要,采用面向?qū)ο蟮臄?shù)據(jù)庫技術(shù)建立了開放式的數(shù)控仿真數(shù)據(jù)庫,并對其中的數(shù)據(jù)庫的管理和仿真對象的分析進(jìn)行了詳細(xì)的研究。實(shí)際應(yīng)用結(jié)果表明,采用面向?qū)ο蟮臄?shù)據(jù)庫技術(shù)可以極大的實(shí)現(xiàn)系統(tǒng)功能的擴(kuò)展。從而使得系統(tǒng)的開放性和擴(kuò)展性大大的提高。