張 瑤,孔建益,孫亮波,劉懷廣,劉源泂
(1.武漢科技大學(xué) 機(jī)械自動(dòng)化學(xué)院,武漢 430081;2.武漢輕工大學(xué) 機(jī)械工程學(xué)院,武漢 430038)
桿組是組成機(jī)構(gòu)的基本元素之一,機(jī)構(gòu)的組成理論[1]指出任何機(jī)構(gòu)都可以由若干個(gè)基本桿組聯(lián)接機(jī)架和主動(dòng)件得到,這一機(jī)構(gòu)形成過程簡單且直觀。李樹軍[2-4]提出平面機(jī)構(gòu)綜合方法,將基本桿組、主動(dòng)件、機(jī)架作為矩陣基本元素進(jìn)行排列組合得出機(jī)構(gòu),這種組合方式簡單、實(shí)用,同時(shí)給出了機(jī)構(gòu)識(shí)別的思想。曹毅等[5]在李樹軍的機(jī)構(gòu)綜合方法研究基礎(chǔ)之上,加入了復(fù)鉸因子參數(shù),獲得了八桿含復(fù)鉸的機(jī)構(gòu)構(gòu)型綜合。EE Peisakh[6]提出了Assur桿組的型綜合算法和識(shí)別構(gòu)型方法,使得型綜合計(jì)算機(jī)自動(dòng)化。孫亮波等[7-8]在桿組型綜合方面取得了很多成果,得到了2~10桿的單鉸桿組拓?fù)鋱D庫以及6桿含復(fù)鉸桿組圖庫。韓建友等[9]運(yùn)用拆分法在機(jī)構(gòu)中拆分得到桿組,并采用關(guān)聯(lián)和鄰接矩陣特征值特征向量來判定同構(gòu),但未涉及含復(fù)合鉸鏈的復(fù)雜桿組的獲得。
同構(gòu)判定是型綜合中重要步驟,關(guān)于運(yùn)動(dòng)鏈同構(gòu)的研究成果有很多,但不適用于桿組,一般我們討論的運(yùn)動(dòng)鏈都是閉式運(yùn)動(dòng)鏈,而桿組是含有兩個(gè)以上外接運(yùn)動(dòng)副的非閉合鏈,隨著桿組中構(gòu)件數(shù)目的增多,桿組結(jié)構(gòu)復(fù)雜度增大,無可避免的會(huì)出現(xiàn)同構(gòu)現(xiàn)象,所以針對桿組的同構(gòu)判定方法是不可或缺的。文獻(xiàn)[10]中提及了同構(gòu)運(yùn)動(dòng)鏈其鄰接矩陣特征值和特征向量的充分必要條件,該方法是判斷同構(gòu)最簡便的方法之一,但不適合桿組的識(shí)別。
本文根據(jù)描述桿組結(jié)構(gòu)特征的雙色拓?fù)鋱D,構(gòu)造了拓展的鄰接矩陣?;跅U組拓展鄰接矩陣表達(dá)桿組結(jié)構(gòu)中構(gòu)件、復(fù)鉸以及外接運(yùn)動(dòng)副的自身信息,和三者之間的連接關(guān)系。之后結(jié)合桿組拓展鄰接矩陣中包含的桿組結(jié)構(gòu)信息以及連接信息,利用矩陣特征值特征向量[10]來判斷桿組結(jié)構(gòu)是否同構(gòu),解決了含有復(fù)合鉸鏈的復(fù)雜桿組同構(gòu)問題。
為了保證桿組特征信息得到充分表達(dá),尋求一種桿組拓?fù)鋱D描述方式尤為重要。桿組中的結(jié)構(gòu)特征信息包括構(gòu)件數(shù)(n)、復(fù)鉸數(shù)(J)、運(yùn)動(dòng)副數(shù)(P)、環(huán)路數(shù)(Lg)、外接運(yùn)動(dòng)副數(shù)(pe)等。雙色拓?fù)鋱D是一種普遍用來表示含復(fù)鉸結(jié)構(gòu)的拓?fù)鋱D表示方法,含復(fù)鉸的桿組用實(shí)心和空心圓點(diǎn)分別表示構(gòu)件和復(fù)鉸,構(gòu)件與復(fù)鉸之間連接的線段表示內(nèi)接運(yùn)動(dòng)副,圓點(diǎn)上引出的線段表示外接運(yùn)動(dòng)副。下圖是桿組拓?fù)浣Y(jié)構(gòu)中n=6、J=1、P=9、Lg=2、pe=2的雙色拓?fù)鋱D。
(a)結(jié)構(gòu)簡圖 (b)雙色拓?fù)鋱D圖1 桿組的表示
這種雙色拓?fù)鋱D的表示方法相較于桿組結(jié)構(gòu)簡圖,能清晰直觀的表達(dá)了桿組中復(fù)鉸和外接運(yùn)動(dòng)副等重要的結(jié)構(gòu)特征信息,有利于后續(xù)同構(gòu)判定和型綜合的完成。
為了便于桿組結(jié)構(gòu)信息的描述以及后續(xù)桿組同構(gòu)識(shí)別的計(jì)算機(jī)處理,構(gòu)建了拓展的鄰接矩陣,假設(shè)桿組結(jié)構(gòu)拓?fù)鋱D中有n個(gè)構(gòu)件,J個(gè)復(fù)鉸和pe個(gè)外接運(yùn)動(dòng)副組成,則可以用A=[ai,j]表示,其中i,j=1,2,3,…,(n+J+pe),拓展的鄰接矩陣的數(shù)學(xué)表達(dá)式如式(1):
(1)
式(1)中d表示復(fù)鉸連接的構(gòu)件數(shù)目,即復(fù)鉸的元數(shù)。一般地,鄰接矩陣是用于表示運(yùn)動(dòng)鏈中構(gòu)件與構(gòu)件之間的關(guān)系,而桿組拓展的鄰接矩陣表示構(gòu)件、復(fù)鉸、外接運(yùn)動(dòng)副三者之間的關(guān)系。矩陣中非對角線元素表示的構(gòu)件、復(fù)鉸、外接運(yùn)動(dòng)副之間是否連接,對角線元素為0。圖1中的桿組有一個(gè)三元復(fù)鉸,則d=3,它的拓展鄰接矩陣見式(2):
(2)
(1)矩陣的階數(shù)等于桿組結(jié)構(gòu)中構(gòu)件數(shù)、復(fù)鉸數(shù)以及外接運(yùn)動(dòng)副數(shù)三者之和;
(2)矩陣中i行(列)中“1”的個(gè)數(shù)m≥2時(shí),則該行(列)表示的是構(gòu)件,其中m是構(gòu)件的元數(shù);
(3)若矩陣i行(列)中“d”的個(gè)數(shù)t≥2時(shí),則該行(列)表示的是復(fù)鉸,其中t是復(fù)鉸的元數(shù);
(4)若矩陣中i行(列)有且僅有一個(gè)“1”,則該行(列)表示桿組的外接運(yùn)動(dòng)副,且該外接運(yùn)動(dòng)副連接位置在元素“1”對應(yīng)的列(行)構(gòu)件上。
例如式(2)的矩陣,表示對應(yīng)的桿組拓?fù)鋱D中構(gòu)件數(shù)、復(fù)鉸數(shù)、外接運(yùn)動(dòng)副數(shù)的和為8,即n+J+pe=8。矩陣中第一行中元素“1”的個(gè)數(shù)m=3,則該行表示的是三元構(gòu)件;矩陣中第七行中“3”的個(gè)數(shù)為t=3,所以該行代表的是三元復(fù)鉸;第7、8行中只有一個(gè)元素“1”,則它們表示的是外副。式(2)中的具體桿組結(jié)構(gòu)信息如表1所示。
表1 矩陣包含信息
兩桿組是否同構(gòu),可按照如下步驟來判定:
(1)對桿組拓?fù)鋱D的構(gòu)件、復(fù)鉸及外接運(yùn)動(dòng)副進(jìn)行任意編號(hào);
(2)比較桿組結(jié)構(gòu)中構(gòu)件數(shù)(n)、復(fù)鉸數(shù)(J)、外接運(yùn)動(dòng)副數(shù)(pe),若三個(gè)數(shù)不相等,則異構(gòu);若不相等,則進(jìn)行下一步;
(3)構(gòu)建桿組拓展的鄰接矩陣,得到桿組結(jié)構(gòu)信息列表,比較列表中的信息,若不同,則異構(gòu);若相同,則進(jìn)行下一步;
(4)求出拓展的鄰接矩陣的特征值λ,特征向量ξ,若特征值不完全相同,則異構(gòu);否則,進(jìn)行下一步;
(5)若兩桿組的特征向量矩陣[ξ1,ξ2,…ξi…,ξN]可以通過若干行列變化得到另外一個(gè)特征向量矩陣,則同構(gòu);反之,異構(gòu)。之后根據(jù)上述變化矩陣找到同構(gòu)桿組中對應(yīng)的構(gòu)件、復(fù)鉸及外接運(yùn)動(dòng)副。
以圖2三個(gè)含復(fù)鉸的八桿桿組為例,進(jìn)行同構(gòu)判定。首先對拓?fù)鋱D中構(gòu)件、復(fù)鉸、外接運(yùn)動(dòng)副進(jìn)行任意編號(hào)1~11(n+J+pe=11)。
圖2 8桿桿組
然后,構(gòu)建桿組拓展鄰接矩陣(11階),桿組(1)拓展的鄰接矩陣Ac1,表2是矩陣中包含的桿組信息。
表2 Ac1矩陣中桿組包含信息
從表2中可知圖2中桿組(1)的構(gòu)件、復(fù)鉸、外接運(yùn)動(dòng)副的數(shù)量類型以及它們之間的連接情況,下面是桿組(2)、(3)對應(yīng)的拓展鄰接矩陣Ac2、Ac3,表2、表3是矩陣中Ac2、Ac3包含的桿組結(jié)構(gòu)信息。
表3 Ac2矩陣包含信息
續(xù)表
表4 Ac3矩陣包含信息
比較3個(gè)表格中各桿組中的信息,發(fā)現(xiàn)構(gòu)件、復(fù)鉸、外接運(yùn)動(dòng)副各自的類型數(shù)目均相同,構(gòu)件數(shù)n=8(二元構(gòu)件1個(gè)、三元構(gòu)件3個(gè)、四元構(gòu)件1個(gè)),復(fù)鉸數(shù)J=1(三元復(fù)鉸),外接運(yùn)動(dòng)副數(shù)pe=2。它們的連接其他結(jié)構(gòu)的情況都相同,例如四元構(gòu)件都是連接3個(gè)二元構(gòu)件和1個(gè)外接運(yùn)動(dòng)副。轉(zhuǎn)(4)。
計(jì)算機(jī)編程求取矩陣Ac1、Ac2、Ac3的特征值和特征向量,桿組(1)、(2)、(3)的特征值分別用λ1、λ2、λ3表示如下:
可知3個(gè)特征值λ1≠λ2=λ3,則桿組(1)與桿組(2)、(3)不同構(gòu)。矩陣Ac2、Ac3的特征向量矩陣分別用P2、P3表示如下,矩陣P2、P3不完全相同,此時(shí)仍不能判斷桿組(2)和桿組(3)是否同構(gòu),需要進(jìn)行步驟(5),特征向量矩陣P2或P3經(jīng)過行列變化后,是否能相等。
上述矩陣Ac3的特征向量矩陣P3和矩陣Ac2的特征向量矩陣P2具有6組行對應(yīng)關(guān)系,映射到桿組拓?fù)浣Y(jié)構(gòu)中,即是桿組(2)和桿組(3)的構(gòu)件、復(fù)鉸、外副之間的對應(yīng)關(guān)系。E11(i,j)表示的是11階單位矩陣中的i、j行互換,驗(yàn)證可知存在矩陣B使得BAc3B-1=Ac2。其中矩陣B為:
B=E11(7, 8)E11(6, 8)
E11(5, 8)E11(4, 5)E11(3, 4)E11(2, 8)
由此可以得出桿組(2)和桿組(3)同構(gòu),且可得出兩者構(gòu)件、復(fù)鉸和外接運(yùn)動(dòng)副編號(hào)對應(yīng)關(guān)系如表5所示。
表5 編號(hào)對應(yīng)關(guān)系
續(xù)表
運(yùn)用桿組中拓?fù)浣Y(jié)構(gòu)信息和桿組拓展的鄰接矩陣特征值和特征向量法進(jìn)行同構(gòu)判定,全程可由計(jì)算機(jī)完成,簡單且實(shí)用。其中拓展的鄰接矩陣在原有的鄰接矩陣的基礎(chǔ)上做出了拓展,增加了復(fù)鉸以及外副的對應(yīng)行列,使得矩陣中包含了更加全面的桿組結(jié)構(gòu)信息。
(1)通過對桿組拓?fù)鋱D結(jié)構(gòu)特點(diǎn)的分析,在鄰接矩陣的基礎(chǔ)之上提出了新的桿組拓?fù)鋱D的描述方式——拓展鄰接矩陣。該矩陣是能表示桿組構(gòu)件、復(fù)鉸、外接運(yùn)動(dòng)副之間的連接關(guān)系的對稱矩陣,實(shí)現(xiàn)了桿組拓?fù)浣Y(jié)構(gòu)的唯一表示。
(2)綜合了拓展鄰接矩陣中包含的桿組各結(jié)構(gòu)本身信息、它們之間的連接信息,以及桿組拓展鄰接矩陣的特征值特征向量,給出一種桿組同構(gòu)判定的新方法,特別是針對含復(fù)鉸和外接運(yùn)動(dòng)副的桿組判定方法。該方法可完全由計(jì)算機(jī)來完成,是最簡便操作方法之一。
(3)根據(jù)拓展鄰接矩陣的行列變換,找出桿組中構(gòu)件、復(fù)鉸及外接運(yùn)動(dòng)副編號(hào)的對應(yīng)關(guān)系,對桿組同構(gòu)結(jié)果進(jìn)行對比驗(yàn)證,由此提高了該判別方法的可靠性。