焦躍龍 張義森 王志超
摘 要:裝配序列規(guī)劃技術(shù)是虛擬裝配的關(guān)鍵技術(shù)之一。針對(duì)傳統(tǒng)的裝配序列規(guī)劃方法已不能滿足船用推進(jìn)器等大型復(fù)雜裝配體序列規(guī)劃的需求,提出了基于層次關(guān)聯(lián)圖的裝配信息模型,以及裝配經(jīng)驗(yàn)知識(shí)與割集法相結(jié)合的序列生成方法。最后憑借研究的理論知識(shí)開(kāi)發(fā)了裝配序列規(guī)劃系統(tǒng)。
關(guān)鍵詞:裝配序列規(guī)劃技術(shù);層次關(guān)聯(lián)圖;裝配經(jīng)驗(yàn)知識(shí);割集法
1.裝配信息模型
裝配信息模型是裝配序列規(guī)劃的基礎(chǔ),完善、正確的裝配信息模型是裝配序列生成的保證。
1.1.裝配模型的信息需求
建立完整、精確的裝配信息模型的目的在于一方面為裝配序列規(guī)劃優(yōu)化提供全面的信息和支持。另一方面要簡(jiǎn)化裝配序列生成過(guò)程中算法的復(fù)雜度、提高計(jì)算效率。影響裝配序列規(guī)劃的裝配信息主要有三類(lèi):1.零件自身的屬性信息,主要包括零件的形狀、尺寸、材料等;2.產(chǎn)品的組成層次信息,一個(gè)產(chǎn)品根據(jù)設(shè)計(jì)時(shí)的功能、結(jié)構(gòu)特點(diǎn)可以劃分為多個(gè)功能模塊,功能模塊又可進(jìn)一步劃分;3.零部件間的裝配聯(lián)接關(guān)系信息,主要反映零部件之間的相對(duì)位置、相互聯(lián)接、相對(duì)運(yùn)動(dòng)關(guān)系以及配合關(guān)系。
1.2.裝配模型的表達(dá)方式
國(guó)外很多學(xué)者對(duì)裝配信息模型的表達(dá)方式進(jìn)行了研究,提出了不同的表述方法,歸納起來(lái)共有兩種比較成熟的方法:
1.2.1.關(guān)聯(lián)圖模型:表達(dá)機(jī)械產(chǎn)品的裝配關(guān)系最初由法國(guó)學(xué)者Bourjault提出,Bourjault以數(shù)據(jù)結(jié)構(gòu)中的圖結(jié)構(gòu)G(P,L)表達(dá)裝配體,其中節(jié)點(diǎn)P={ , , …… }代表裝配體中的零部件,n為產(chǎn)品中零部件的數(shù)目;邊L={ , , …… }代表裝配體中的零部件間的聯(lián)接關(guān)系,這里的聯(lián)接關(guān)系表示零件之間的物理接觸關(guān)系,m為聯(lián)接邊的數(shù)量。
1.2.2. 層次模型:從三維建模軟件中可以獲得原始的裝配樹(shù)結(jié)構(gòu),該裝配樹(shù)中只包含裝配體中零部件的名稱(chēng)信息,為了能夠自動(dòng)生成裝配序列,還需對(duì)產(chǎn)品的零件、子裝配體、緊固件進(jìn)行統(tǒng)一的編號(hào),為簡(jiǎn)化裝配層次樹(shù),還可以將一組規(guī)格、功能相同的緊固件合并當(dāng)作一個(gè)零件處理。最后生成一個(gè)新的經(jīng)過(guò)編號(hào)和簡(jiǎn)化的裝配層次關(guān)系樹(shù)用于割集法生成裝配序列。
1.3.基于層次關(guān)聯(lián)圖的裝配信息模型
層次模型可以樹(shù)的數(shù)據(jù)結(jié)構(gòu)來(lái)表達(dá),反映了裝配體中零部件之間的裝配層次關(guān)系,符合人們的思維習(xí)慣,能較好地體現(xiàn)設(shè)計(jì)意圖和產(chǎn)品的零部件組成層次,由于將產(chǎn)品的零部件分層來(lái)表示,所以當(dāng)采用割集法生成裝配序列時(shí),只對(duì)某一層的零部件進(jìn)行規(guī)劃,可以有效降低裝配序列規(guī)劃的復(fù)雜度。層次樹(shù)模型的缺點(diǎn)是缺乏對(duì)同層中零部件裝配關(guān)系的描述,也沒(méi)有涵蓋零部件裝配操作有關(guān)的信息,因此這種模型很難被裝配序列規(guī)劃模塊直接所用,關(guān)系模型主要用圖的數(shù)據(jù)結(jié)構(gòu)來(lái)表達(dá),反映了裝配體中零部件之間的聯(lián)接關(guān)系,但是該模型不能清楚的表達(dá)產(chǎn)品零部件的層次結(jié)構(gòu),不符合人們對(duì)產(chǎn)品的認(rèn)識(shí)習(xí)慣,對(duì)于割集算法當(dāng)產(chǎn)品中零部件數(shù)量較多時(shí),容易產(chǎn)生“組合爆炸”問(wèn)題。
針對(duì)上述兩種方法的缺點(diǎn),提出一種層次模型和關(guān)系模型相結(jié)合的裝配模型表達(dá)方法,即基于層次關(guān)聯(lián)圖的裝配信息模型。既表達(dá)了裝配體中零部件的裝配層次關(guān)系,也反映了零部件之間的聯(lián)接關(guān)系。
2.裝配序列生成
2.1.目前裝配序列求解比較典型的幾種方法,按求解方向的不同又可以將裝配序列生成方法分為兩大類(lèi),一類(lèi)是正向法,正向法是按照產(chǎn)品裝配的順序得出裝配序列;另一類(lèi)是逆向法,逆向法是按照產(chǎn)品拆卸的方法得出拆卸序列,再取逆序得裝配序列。
常用的知識(shí)表示結(jié)構(gòu)有:基于邏輯的知識(shí)表示,基于框架的知識(shí)表示,基于規(guī)則的知識(shí)表示三種類(lèi)型。其中基于規(guī)則的知識(shí)表示經(jīng)過(guò)分析更加符合裝配序列規(guī)劃的過(guò)程,同時(shí)在系統(tǒng)實(shí)現(xiàn)方面比較容易,本文將主要介紹基于規(guī)則的裝配知識(shí)表示?;谝?guī)則的知識(shí)表示形式如下:
IF(前提條件1,前提條件2,…,前提條件n),THEN(結(jié)果),CF(可信度)
其中前提條件主要描述配合的零件以及裝配特征類(lèi)型等,結(jié)果表述零件的裝配序列,可信度表示結(jié)果正確的概率。
為了基于規(guī)則描述各種裝配知識(shí)還需定義若干謂詞,現(xiàn)舉例如下:
螺栓聯(lián)接用Bolt(x, , ,y)表示,其中x表示螺栓,y表示螺母, , 表示彈簧墊片和平墊片,當(dāng) , 為0時(shí)表示該聯(lián)接沒(méi)有使用墊片。
Connect((x),(y))表示用聯(lián)接件y將x中的零件聯(lián)接起來(lái)。
Sequences(x,N)表示零件x的裝配順序?yàn)镹。
利用上述三個(gè)謂詞可以構(gòu)造一個(gè)螺栓聯(lián)接的推理規(guī)則,先敘述如下:
IF(Connect((x,y),bolt(cont1,cont2)),bolt(cont1,0,0,cont2)),
THEN(Sequence(cont1,1),Sequence(y,2),Sequence(x,3),Sequence(cont2,4)),CF(0.9)
該規(guī)則包括兩個(gè)前提條件,前提條件1表示用聯(lián)接件(cont1,cont2)將零件x,y聯(lián)接起來(lái),前提條件2表示螺栓cont1,螺母cont2形成螺栓聯(lián)接但沒(méi)有使用墊片。結(jié)果為先安裝cont1,然后y,x,最后cont2。該結(jié)果正確的概率為90%。
2.2. 割集法
割集法求解裝配序列是裝配序列規(guī)劃問(wèn)題的重要方法之一,它把裝配體得拆卸過(guò)程巧妙的與圖的分割過(guò)程結(jié)合在一起。但是割集法也有一個(gè)很大的缺陷,當(dāng)零件的數(shù)目增加時(shí),割集分解的數(shù)量呈現(xiàn)指數(shù)級(jí)增加,因此對(duì)于解決大規(guī)模裝配體割集法則顯得無(wú)能為力。
在利用割集法求解時(shí),最后得到了每層子裝配體的裝配與或圖。
3.總結(jié):
傳統(tǒng)的方法只能解決零部件較少的小型裝配體的裝配序列規(guī)劃問(wèn)題,本文針對(duì)大規(guī)模裝配體提出了基于層次關(guān)聯(lián)圖的裝配信息模型,該模型能夠恰當(dāng)?shù)谋磉_(dá)裝配體的結(jié)構(gòu)層次性以及零部件之間的聯(lián)接關(guān)系,在裝配序列生成時(shí)采用正逆向相結(jié)合的方法即裝配經(jīng)驗(yàn)知識(shí)與割集法相結(jié)合來(lái)求解裝配序列。
參考文獻(xiàn):
[1]范菁,董金祥.虛擬環(huán)境中的產(chǎn)品裝配技術(shù)[J].工程設(shè)計(jì)學(xué)報(bào),2000,(3):1~5.
[2]王艷瑋.計(jì)算機(jī)輔助裝配順序規(guī)劃關(guān)鍵技術(shù)研究[D].西安:西北工業(yè)大學(xué),1999.3:1~5.
[3]于建明,蔡建國(guó).裝配建模及裝配順序分層規(guī)劃方法研究[J].機(jī)械科學(xué)與技術(shù),2000,19(4):671~673.