魏小龍,李 原,陳 姣
(西北工業(yè)大學(xué) 現(xiàn)代設(shè)計(jì)與集成制造技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室,陜西 西安 710072)
裝配序列規(guī)劃(ASP)經(jīng)過多年研究,已取得了不少研究成果,建立了相對成熟的裝配序列規(guī)劃體系。然而,現(xiàn)實(shí)的產(chǎn)品裝配規(guī)劃是個(gè)極其復(fù)雜的問題,多數(shù)研究者在進(jìn)行裝配序列規(guī)劃時(shí)會對該問題進(jìn)行一些簡化,也即傳統(tǒng)的裝配序列規(guī)劃問題只考慮簡化的單調(diào)裝配序列規(guī)劃問題,其特點(diǎn)是:①規(guī)劃零件為順序裝配,每次完成兩個(gè)零件或子裝配體間的裝配;②零件間的所有裝配關(guān)系一次建立,且在裝配過程中保持不變。
單調(diào)裝配序列規(guī)劃忽略了在裝配過程中存在的拆裝混合、反復(fù)試裝等非單調(diào)情況。為了彌補(bǔ)傳統(tǒng)單調(diào)裝配序列規(guī)劃算法的不足,專家學(xué)者進(jìn)行了研究:文獻(xiàn)[1]針對虛擬裝配中裝配過程模型信息表達(dá)不完整的問題,提出了一種基于層次鏈的產(chǎn)品裝配過程建模方法,對復(fù)雜的裝配過程進(jìn)行表示;文獻(xiàn)[2]在分析裝配單元、裝配過程在產(chǎn)品裝配過程中引入和退出裝配環(huán)境的優(yōu)先關(guān)系基礎(chǔ)上,提出基于有向圖和無向圖的連接圖模型,建立了集成裝配過程信息的裝配模型;文獻(xiàn)[3]提出了虛擬環(huán)境下評價(jià)裝配模型好壞的依據(jù),并給出了一種分層裝配序列規(guī)劃方法;文獻(xiàn)[4]針對自動裝配規(guī)劃和交互式規(guī)劃都存在不足的情況,將虛擬現(xiàn)實(shí)和仿生算法結(jié)合起來,提出一種生成優(yōu)化裝配序列的新方法;文獻(xiàn)[5]針對衛(wèi)星裝配工藝特點(diǎn),分析了包含拆裝混合信息的裝配序列規(guī)劃問題。上述研究工作都開始涉及到裝配序列規(guī)劃中的非單調(diào)情況,但對非單調(diào)裝配信息模型表達(dá)和序列規(guī)劃技術(shù)研究不成體系,沒有對非單調(diào)的情況做詳細(xì)分析,所建模型不能很好地輔助生成裝配序列,這些都會影響非單調(diào)裝配序列規(guī)劃的有效性和實(shí)用性。
本文提出了一種基于知識規(guī)則與幾何推理的非單調(diào)裝配序列規(guī)劃方法,通過對非單調(diào)裝配過程及其特點(diǎn)進(jìn)行詳細(xì)分析,采用包含狀態(tài)信息的層次關(guān)聯(lián)圖及裝配知識規(guī)則兩種方式對非單調(diào)裝配信息進(jìn)行表達(dá),基于該裝配信息進(jìn)行非單調(diào)裝配序列的生成。該方法集幾何推理的數(shù)學(xué)嚴(yán)謹(jǐn)性與裝配經(jīng)驗(yàn)知識的靈活性一體,能有效解決非單調(diào)裝配序列規(guī)劃問題。
針對非單調(diào)裝配過程的特點(diǎn),給出如下定義。
非單調(diào)裝配順序定義:對于一個(gè)裝配順序,如果每個(gè)零件的裝配是一次到位的,即對于任一零件,該零件安裝后與之前已裝配零件之間的相對位置始終保持不變,不被后繼的裝配操作所更改,則稱此裝配順序是單調(diào)的。反之,則稱此裝配順序是非單調(diào)的。如圖1所示的裝配過程便是非單調(diào)裝配順序,因?yàn)樽詈笠徊降牟僮鞲淖兞俗友b配1-2的原有結(jié)構(gòu)。
對于非單調(diào)裝配過程中存在的零部件狀態(tài)不唯一的問題,傳統(tǒng)的以零部件為節(jié)點(diǎn)的裝配模型無法如實(shí)反映。為了完整的表達(dá)產(chǎn)品的非單調(diào)裝配模型,我們引入粗粒度的裝配任務(wù)類型(Assembly Task,AT)和細(xì)粒度的裝配狀態(tài)信息(Assembly State,AS),對非單調(diào)裝配過程進(jìn)行表達(dá)。
圖1 非單調(diào)裝配過程
裝配任務(wù)AT:裝配任務(wù)類型(Assembly Task,AT)是指為完成一個(gè)或多個(gè)零部件(文中的零部件是指裝配過程中的當(dāng)前操作對象,既可以是子部件,也可以是零件)的裝調(diào)所需實(shí)施的連續(xù)過程。通過對不同形式的非單調(diào)裝配過程進(jìn)行分析,總結(jié)歸納非單調(diào)裝配過程可能包含的結(jié)構(gòu)形式,我們將非單調(diào)裝配的裝配任務(wù)類型分為組裝任務(wù)、調(diào)整任務(wù)、拆卸任務(wù)。其中組裝任務(wù)即傳統(tǒng)單調(diào)裝配任務(wù),調(diào)整任務(wù)和拆卸任務(wù)為非單調(diào)裝配任務(wù)。
裝配單元AU:一個(gè)完整的產(chǎn)品裝配流程即將不同的零件或部件按照指定的約束順序組裝成總裝配體的過程,其中的零件或部件即稱為裝配過程中的裝配單元(Assembly Unit,Unit)。由概念可知,裝配單元節(jié)點(diǎn)不嚴(yán)格區(qū)分零件和部件,而將零件或部件統(tǒng)一看作其上一級裝配體的結(jié)構(gòu)成員。
基于非單調(diào)裝配過程中裝配任務(wù)的類型劃分,本文對非單調(diào)裝配過程裝配單元(AU)劃分為關(guān)鍵節(jié)點(diǎn)、組裝單元、關(guān)聯(lián)關(guān)系組。其中關(guān)鍵節(jié)點(diǎn)即包含狀態(tài)變化信息的非單調(diào)節(jié)點(diǎn),關(guān)鍵節(jié)點(diǎn)及其狀態(tài)變化所對應(yīng)的組裝單元構(gòu)成關(guān)聯(lián)關(guān)系組。
裝配狀態(tài)AS:裝配過程中零部件狀態(tài)信息不唯一是非單調(diào)裝配過程區(qū)別與傳統(tǒng)裝配過程的關(guān)鍵,而裝配狀態(tài)(Assembly State,AS)是非單調(diào)裝配過程中關(guān)鍵節(jié)點(diǎn)在某個(gè)時(shí)間點(diǎn)的狀態(tài)表現(xiàn),它是裝配過程中的零件屬性信息。以拆卸任務(wù)為例,在一個(gè)完整的拆卸任務(wù)中,每個(gè)拆裝節(jié)點(diǎn)至少包括“裝、拆、裝”三個(gè)狀態(tài)變遷過程。同時(shí),零件裝配狀態(tài)的變化也對應(yīng)裝配過程的不斷完善。
對于如衛(wèi)星裝配等結(jié)構(gòu)復(fù)雜、零部件種類多的裝配體,用傳統(tǒng)的裝配模型表示會形成組合爆炸的問題,使裝配序列規(guī)劃變得非常復(fù)雜。結(jié)合前文對于非單調(diào)裝配過程所做的分析,基于裝配任務(wù)類型AT和裝配狀態(tài)信息AS,豐富傳統(tǒng)層次關(guān)聯(lián)模型的內(nèi)涵,建立了一個(gè)集成零部件狀態(tài)信息的層次表示模型。在該裝配層次模型中,產(chǎn)品的裝配模型由裝配任務(wù)-裝配單元-裝配狀態(tài)三個(gè)層次。通過裝配工藝知識確定子裝配體、關(guān)聯(lián)關(guān)系組,簡化裝配層次模型,并生成簡化的層次關(guān)聯(lián)圖,為后續(xù)的序列規(guī)劃奠定基礎(chǔ)。
圖2 裝配層次關(guān)系樹
由分析可知,非單調(diào)裝配多是由于裝配作業(yè)是面向工藝組織而產(chǎn)生的,其非單調(diào)節(jié)點(diǎn)定義在相應(yīng)零件設(shè)計(jì)階段、裝配工藝規(guī)劃之前,故關(guān)鍵節(jié)點(diǎn)的狀態(tài)信息及其對應(yīng)的關(guān)聯(lián)關(guān)系組也為已知條件。狀態(tài)信息層很好地利用了裝配過程中的已知信息,豐富了非單調(diào)裝配體的層次關(guān)系樹的信息。
層次聯(lián)接關(guān)系圖從圖形角度為裝配序列規(guī)劃提供了完整、清晰的裝配體信息。但裝配序列規(guī)劃是數(shù)字化裝配系統(tǒng)中一個(gè)復(fù)雜的問題,現(xiàn)如今的單純的推理算法無法考慮裝配過程中出現(xiàn)的拆裝混合、重復(fù)試裝等非單調(diào)問題。充分利用裝配經(jīng)驗(yàn)知識,簡化裝配規(guī)劃模型,將一些已有的、常見的、符合習(xí)慣的裝配部件的裝配順序按照一定的描述規(guī)范來建立一個(gè)規(guī)則庫,在裝配序列生成推理時(shí),將裝配體中的任一獨(dú)立裝配單元的聯(lián)接關(guān)系圖以及結(jié)構(gòu)的相關(guān)裝配工藝信息輸入規(guī)則庫中搜索與之相匹配的裝配部件,如果結(jié)構(gòu)、功能類似則自動生成裝配序列。該方法能在裝配序列生成階段剔除不符合裝配工藝的裝配序列,提高裝配序列規(guī)劃的效率。
本文將該規(guī)則庫定義為裝配知識規(guī)則庫。裝配知識規(guī)則庫主要是一系列成熟的裝配知識按照一定的描述規(guī)范組建成的規(guī)則庫,而裝配知識是指裝配工藝人員在長期的日常生產(chǎn)實(shí)踐中整理、挑選、總結(jié)出的裝配經(jīng)驗(yàn)。它由特定領(lǐng)域的描述、關(guān)系和過程組成。按照裝配知識的特點(diǎn)劃分,將其分為兩大類。
事實(shí)型知識:主要來源于具體產(chǎn)品的裝配工藝事實(shí),主要用于同層子裝配體之間、穩(wěn)定的子裝配體中所有零件之間裝配順序的判定以及子裝配體和基礎(chǔ)件的判定。事實(shí)型裝配知識包括裝配基礎(chǔ)件判定知識、裝配單元的判定知識。
經(jīng)驗(yàn)型知識:即裝配經(jīng)驗(yàn)型知識,指裝配工藝人員在長期日常生產(chǎn)實(shí)踐中總結(jié)出的用于判定獨(dú)立裝配單元中所有零件之間裝配順序的裝配經(jīng)驗(yàn)。經(jīng)驗(yàn)型裝配知識包括裝配狀態(tài)穩(wěn)定性知識、裝配操作方便性知識等。
根據(jù)基于裝配知識特點(diǎn)的分類建立裝配知識規(guī)則表,如表1所示。
表1 裝配知識規(guī)則表
根據(jù)以上分析,提出一種基于知識規(guī)則與幾何推理的裝配序列分段規(guī)劃方法來解決非單調(diào)裝配序列生成難題。該方法基本思路是:在數(shù)字化預(yù)裝配平臺上,以設(shè)計(jì)階段產(chǎn)生的產(chǎn)品層次模型為基礎(chǔ),根據(jù)實(shí)際需要,由工藝人員依據(jù)裝配知識規(guī)則對層次結(jié)構(gòu)樹直接進(jìn)行調(diào)整與重構(gòu),從而完成面向裝配規(guī)劃的產(chǎn)品子裝配體再劃分以及裝配序列的初步劃分;同時(shí)在子裝配體劃分的基礎(chǔ)上,采用幾何推理的方法完成子裝配體的裝配規(guī)劃,最后完成非單調(diào)裝配序列的規(guī)劃。
非單調(diào)裝配序列分段生成方法總體思路如下,如圖3所示。
(1)首先輸入裝配模型信息,包括層次關(guān)系模型、裝配信息模型,基于層次裝配模型中的聯(lián)接關(guān)系圖進(jìn)行裝配基礎(chǔ)件定義、子裝配體提取;
(2)參考裝配工藝信息豐富層次關(guān)聯(lián)圖,添加關(guān)鍵節(jié)點(diǎn)的狀態(tài)信息及其對應(yīng)的關(guān)聯(lián)關(guān)系組;
(3)比對裝配知識規(guī)則庫,進(jìn)一步提取裝配信息,構(gòu)造整個(gè)裝配體及各子裝配體的聯(lián)接關(guān)系圖,并將子裝配體對應(yīng)的超結(jié)點(diǎn)進(jìn)行壓縮得到層次聯(lián)接關(guān)系圖;
(4)基于簡化的整體聯(lián)接關(guān)聯(lián)圖及零部件狀態(tài)信息,進(jìn)行裝配序列生成。參考裝配知識規(guī)則庫,如果存在結(jié)構(gòu)、功能類似的部分則可以直接運(yùn)用裝配經(jīng)驗(yàn)知識正向推理生成裝配序列;如果在裝配知識規(guī)則庫中沒有搜索到與之相匹配的裝配部件,則利用拆卸法生成各子裝配體裝配序列;
圖3 基于知識規(guī)則與幾何推理的裝配序列生成
(5)正逆向序列結(jié)合得到總體裝配序列,并采用層次鏈裝配過程模型對裝配過程進(jìn)行記錄。
裝配知識推理實(shí)質(zhì)是一個(gè)裝配序列專家系統(tǒng),在這個(gè)系統(tǒng)中主要是由兩個(gè)相互獨(dú)立的裝配知識規(guī)則庫和推理機(jī)組成。裝配知識規(guī)則庫中存放著依次按照條件規(guī)則標(biāo)識號、條件表述、適用條件、條件標(biāo)識號以及相對應(yīng)的結(jié)論規(guī)則標(biāo)識號、結(jié)論表述、結(jié)論可信度、結(jié)論標(biāo)識號的裝配經(jīng)驗(yàn)知識。推理機(jī)主要的功能是實(shí)現(xiàn)事實(shí)與規(guī)則是否匹配的推理決策過程。黑板則主要是用來臨時(shí)記錄條件規(guī)則標(biāo)識號,條件標(biāo)識號以及結(jié)論規(guī)則標(biāo)識號、結(jié)論標(biāo)識號等的有效工具。
在推理裝配序列時(shí),首先將裝配體中的任一子裝配體的裝配約束信息以及裝配工藝信息確定事實(shí)輸入裝配知識規(guī)則庫中搜索與之相匹配的裝配部件,如果結(jié)構(gòu)、功能類似的規(guī)則,則可以計(jì)算每一條規(guī)則的可信度CF值(一般取值為0.5~1.0之間)并且CF值最大的規(guī)則直接輸出裝配序列;如果在裝配知識規(guī)則庫中沒有搜索到與之相匹配的裝配部件則推理結(jié)束。整個(gè)裝配知識推理的流程如圖4所示。
圖4 知識推理流程圖
基于上述的基于規(guī)則推理的裝配序列生成的方法以及前文的裝配知識規(guī)則庫,可針對某些具體和特定條件,快速實(shí)現(xiàn)裝配序列規(guī)劃,從而有效解決非單調(diào)裝配序列規(guī)劃問題,提高裝配序列規(guī)劃的效率。
對于裝配經(jīng)驗(yàn)知識不能解決的問題,則釆用基于優(yōu)先約束的幾何推理來生成子裝配體的裝配序列。
產(chǎn)品的裝配順序是由優(yōu)先約束關(guān)系決定的,包括硬約束和軟約束兩方面。只有滿足優(yōu)先約束的裝配順序才是可行的。采用虛擬環(huán)境下人機(jī)交互式拆卸的方法生成優(yōu)先約束。將每個(gè)零件的拆卸操作定義為一個(gè)拆卸任務(wù),每個(gè)拆卸任務(wù)記錄該零件的拆卸路徑、拆卸方向和拆卸工具等信息。虛擬拆卸過程中,根據(jù)零件之間的碰撞干涉信息生成硬約束,根據(jù)人的經(jīng)驗(yàn)和知識生成軟約束。
定義優(yōu)先約束表來記錄和表達(dá)零件之間的優(yōu)先約束關(guān)系。優(yōu)先約束表來源于產(chǎn)品的裝配關(guān)聯(lián)圖,是一個(gè)n行n列的二維表格,行標(biāo)題Pi(1<i<n)和列標(biāo)題Pj(1<j<n)分別表示產(chǎn)品的n個(gè)零件。表中的每一個(gè)元素Pij表示裝配行元素Pi和列元素Pj間的優(yōu)先約束關(guān)系集合。
定義1 如果Pij的值為0,它表示Pi和Pj之間不存在裝配聯(lián)接關(guān)系。
定義2 如果Pij的值為1,它表示Pi和Pj之間存在裝配聯(lián)接關(guān)系。
定義3 如果Pij的值為1,它表示Pi可以作為第一個(gè)裝配的基準(zhǔn)件。
定義4 如果Pij的值包含優(yōu)先約束算子“>xi”,它表示Pi和Pj之間的裝配必須先于引用聯(lián)接xi所對應(yīng)零件之間的裝配。
定義5 引用聯(lián)接“xi”是為了方便表達(dá)零件之間的優(yōu)先約束關(guān)系而定義的一個(gè)標(biāo)記。根據(jù)需要,任何兩個(gè)零件之間的裝配關(guān)系都可定義為引用聯(lián)接。
基于優(yōu)先約束列表的子裝配體可行序列生成流程如圖5所示。
圖5 基于優(yōu)先約束表的可行裝配序列生成
本文對非單調(diào)裝配過程及其特點(diǎn)進(jìn)行了分析,采用包含狀態(tài)信息的層次關(guān)聯(lián)圖及裝配知識規(guī)則兩種方式對非單調(diào)裝配信息進(jìn)行表達(dá)。最后提出了基于知識規(guī)則與幾何推理相結(jié)合的非單調(diào)裝配序列生成方法,有效解決了包含拆裝混合信息的大型、結(jié)構(gòu)復(fù)雜裝配體的裝配序列生成問題。
[1]侯偉偉,劉檢華,寧汝新,等.基于層次鏈的產(chǎn)品裝配過程建模方法[J].計(jì)算機(jī)集成制造系統(tǒng),2009,15(8):1522-1527.
[2]張開富,李 原,邵 毅,等.一種集成裝配過程信息的裝配建模方法[J].西北工業(yè)大學(xué)學(xué)報(bào),2005,23(2):222-226.
[3]Yin Zhouping,Ding Han,Li Hanxiong,Xiong Youlun.A Connector-Based Hierarchical Approach to Assembly Sequence Planning for Mechanical Assemblies.Computer Aided Design,2003,35(1):37-56.
[4]夏平均,姚英學(xué),劉江省,李建廣.基于虛擬現(xiàn)實(shí)和仿生算法的裝配序列優(yōu)化[J].機(jī)械工程學(xué)報(bào),2007,43(4):44-51.
[5]張 淵.面向衛(wèi)星總裝的裝配建模及規(guī)劃[D].西安:西北工業(yè)大學(xué),2011.
[6]郭曉明,馬良荔,徐興華.復(fù)雜約束條件下的分層裝配模型[J].計(jì)算機(jī)工程,2011,37(18):260-263.
[7]李曉楓,王仲奇,康永剛.基于DELMIA的裝配過程仿真及其在飛機(jī)數(shù)字化柔性工裝設(shè)計(jì)中的應(yīng)用[J].鍛壓裝備與制造技術(shù),2012,(6):92-95.
[8]李 剛,馬良荔,郭曉明.交互式拆卸引導(dǎo)裝配路徑規(guī)劃方法研究[J].計(jì)算機(jī)應(yīng)用與軟件,2012,29(10):248-250.
[9]符 磊,余劍峰,張 杰.基于多級骨架模型的關(guān)聯(lián)設(shè)計(jì)方法研究[J].鍛壓裝備與制造技術(shù),2013,48(4):94-98.
[10]龔志海,葉春生,黃樹槐.FDM支撐生成算法及支撐路徑規(guī)劃研究[J].鍛壓裝備與制造技術(shù),2006,41(3):92-94.