一種五連桿機(jī)構(gòu)模型變更識別方法
【專利摘要】本發(fā)明公開了一種五連桿機(jī)構(gòu)模型變更識別方法,包括步驟:根據(jù)五連桿機(jī)構(gòu)的零件屬性數(shù)據(jù)結(jié)構(gòu)構(gòu)建零件類型表,并比較初始和變更后的零件類型表,識別出零件實(shí)例變更;根據(jù)五連桿機(jī)構(gòu)的約束屬性數(shù)據(jù)結(jié)構(gòu)構(gòu)建約束關(guān)系表,并比較初始和變更后的約束關(guān)系表,完成約束關(guān)系變更識別;輸出零件實(shí)例及約束關(guān)系變更識別結(jié)果。采用本發(fā)明的方法可快速識別五連桿機(jī)構(gòu)模型變更,并推廣至其他機(jī)械系統(tǒng)的模型變更識別,根據(jù)該方法得到的模型變更結(jié)果信息,可增量式傳播至其他設(shè)計(jì)平臺,而無需傳播整個模型,降低了信息傳輸負(fù)擔(dān),提高了傳輸效率。
【專利說明】一種五連桿機(jī)構(gòu)模型變更識別方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及機(jī)械設(shè)計(jì)【技術(shù)領(lǐng)域】,具體涉及一種在機(jī)械結(jié)構(gòu)模型可訪問的基礎(chǔ)上, 一種五連桿機(jī)構(gòu)模型變更識別方法。
【背景技術(shù)】
[0002] 平面五連桿機(jī)構(gòu)的應(yīng)用十分廣泛,在設(shè)計(jì)該機(jī)構(gòu)的過程中,設(shè)計(jì)人員根據(jù)不斷變 動的需求對設(shè)計(jì)模型施加各種設(shè)計(jì)改變,直至設(shè)計(jì)需求得到滿足為止。每一次設(shè)計(jì)改變都 將導(dǎo)致設(shè)計(jì)模型發(fā)生一定的變更,這種設(shè)計(jì)模型的變更隨著設(shè)計(jì)過程的推進(jìn)而不斷發(fā)生。
[0003] 機(jī)械模型變更的識別,在模型的增量更新及模型的一致性檢測等方面起著重要作 用。由于控制系統(tǒng)設(shè)計(jì)依賴相應(yīng)的機(jī)械結(jié)構(gòu)信息,五連桿結(jié)構(gòu)的機(jī)械結(jié)構(gòu)模型變更信息需 傳播至控制平臺,以維護(hù)模型的一致性。然而,現(xiàn)有的設(shè)計(jì)平臺對模型變更識別的支持還不 夠完善,很多識別工作仍需要人工完成,增加了設(shè)計(jì)人員的負(fù)擔(dān),錯誤率高且效率低下。更 為重要的是,不能保證模型變更傳播的自動性和實(shí)時性?,F(xiàn)有的機(jī)械設(shè)計(jì)工具僅能通過操 作歷史來獲得模型變更,不能直接由模型數(shù)據(jù)獲得模型變更。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明提供了一種五連桿機(jī)構(gòu)模型變更識別方法,直接由模型數(shù)據(jù)獲得模型變 更,完成五連桿機(jī)構(gòu)模型變更的識別。
[0005] 為了實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下:
[0006] 一種五連桿機(jī)構(gòu)模型變更識別方法,包括步驟:
[0007] 步驟1、根據(jù)五連桿機(jī)構(gòu)的零件屬性數(shù)據(jù)結(jié)構(gòu)構(gòu)建零件類型表,并比較初始和變更 后的零件類型表,識別出零件實(shí)例變更;
[0008] 步驟2、根據(jù)五連桿機(jī)構(gòu)的約束屬性數(shù)據(jù)結(jié)構(gòu)構(gòu)建約束關(guān)系表,并比較初始和變更 后的約束關(guān)系表,完成約束關(guān)系變更識別;
[0009] 步驟3、輸出零件實(shí)例及約束關(guān)系變更識別結(jié)果。
[0010] 本發(fā)明所述步驟1包括步驟:
[0011] 步驟1. 1、為五連桿機(jī)構(gòu)的每個零件實(shí)例構(gòu)建零件屬性數(shù)據(jù)結(jié)構(gòu),并將零件實(shí)例的 零件屬性數(shù)據(jù)結(jié)構(gòu)填入零件類型表中構(gòu)建初始五連桿機(jī)構(gòu)的零件類型表T,表中每個零件 屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)設(shè)為"不變";
[0012] 步驟1. 2、為變更后的五連桿機(jī)構(gòu)構(gòu)建零件類型表T',表中每個零件屬性數(shù)據(jù)結(jié) 構(gòu)的狀態(tài)設(shè)為"未知";
[0013] 步驟1.3、比較零件類型表T與T',對于僅存在于T'中的零件類型,將其對應(yīng)的 零件屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)均設(shè)為"新添加",對于僅存在于T中的零件類型,將其對應(yīng)的零 件屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)均設(shè)為"刪除";
[0014] 步驟1.4、通過比對類型表T和T',對于既存在于T,也存在與T'中的零件類型 列,以T中該列對應(yīng)零件屬性數(shù)據(jù)結(jié)構(gòu)的指針屬性為查詢條件,獲取T'中相應(yīng)列中是否存 在指針屬性相同的零件屬性數(shù)據(jù)結(jié)構(gòu),對于T'相應(yīng)列中從未被查詢命中的零件屬性數(shù)據(jù) 結(jié)構(gòu),其狀態(tài)設(shè)為"新添加";
[0015] 步驟1. 5、通過檢測類型表T和T'中均存在的零件類型的類型參數(shù)是否改變來獲 得零件類型參數(shù)變更信息,若有變更,將其對應(yīng)的零件屬性數(shù)據(jù)結(jié)構(gòu)狀態(tài)設(shè)為"改變";
[0016] 步驟1. 6、通過檢測類型表T'中零件實(shí)例參數(shù)是否改變來獲得零件實(shí)例參數(shù)變 更信息,對表T'中所有狀態(tài)仍為"未知"的零件屬性數(shù)據(jù)結(jié)構(gòu),若零件實(shí)例參數(shù)改變,將相 應(yīng)的零件屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)設(shè)為"改變";
[0017] 步驟1. 7、為狀態(tài)為"新添加"的零件屬性數(shù)據(jù)結(jié)構(gòu)生成標(biāo)識符屬性;
[0018] 步驟1. 8、輸出零件實(shí)例變更的識別結(jié)果。
[0019] 本發(fā)明所述步驟2包括步驟:
[0020] 步驟2. 1、構(gòu)建初始五連桿機(jī)構(gòu)的關(guān)系表RT,以零件屬性數(shù)據(jù)結(jié)構(gòu)為列名,以標(biāo)識 符屬性值為次序,建立關(guān)系表RT,為每個約束實(shí)例構(gòu)建屬性數(shù)據(jù)結(jié)構(gòu),并將約束屬性數(shù)據(jù)結(jié) 構(gòu)填入關(guān)系表RT中,其對應(yīng)的行為約束實(shí)例中被約束的源零件實(shí)例的零件屬性數(shù)據(jù)結(jié)構(gòu), 其對應(yīng)的列為約束實(shí)例中被約束的目標(biāo)零件實(shí)例的零件屬性數(shù)據(jù)結(jié)構(gòu);
[0021] 步驟2. 2、為變更后的五連桿機(jī)構(gòu)構(gòu)建關(guān)系表RT';
[0022] 步驟2. 3、比較關(guān)系表RT與RT',對于RT'中狀態(tài)為"新添加"的列零件屬性數(shù)據(jù) 結(jié)構(gòu),其對應(yīng)的約束屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)設(shè)為"新添加",對于僅存在于RT中的列,其對應(yīng) 的約束屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)設(shè)為"刪除",通過比對RT與RT'中相同位置約束實(shí)例的指針, 可獲取其他狀態(tài)為"新添加"和"刪除"的約束屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài);
[0023] 步驟2. 4、檢測約束實(shí)例的類型參數(shù)變化,如存在改變,則對應(yīng)的約束屬性數(shù)據(jù)結(jié) 構(gòu)的狀態(tài)設(shè)為"改變";
[0024] 步驟2. 5、檢測約束實(shí)例的參數(shù)變化,如存在改變,則對應(yīng)的約束屬性數(shù)據(jù)結(jié)構(gòu)的 狀態(tài)設(shè)為"改變";
[0025] 步驟2. 6、為狀態(tài)為"新添加"的約束屬性數(shù)據(jù)結(jié)構(gòu)生成標(biāo)識符屬性;
[0026] 步驟2. 7、輸出約束實(shí)例變更識別結(jié)果。
[0027] 本發(fā)明提出的一種五連桿機(jī)構(gòu)模型變更識別方法,首先設(shè)計(jì)零件屬性數(shù)據(jù)結(jié)構(gòu), 構(gòu)建零件類型表。此外,應(yīng)定義相應(yīng)的狀態(tài)信息描述機(jī)械零件發(fā)生何種變更。在設(shè)計(jì)變更 后的機(jī)械零件類型表中,新出現(xiàn)的零件類型所對應(yīng)的零件屬性數(shù)據(jù)結(jié)構(gòu)的狀體均為"新加 入"。對于已有的零件類型,可通過查表找出新的零件實(shí)例及被刪除的零件實(shí)例。對于非新 生成的零件實(shí)例,其變更只能是零件類型參數(shù)變化或零件實(shí)例參數(shù)變化。因此,可對比該兩 類參數(shù)來確定該零件是否發(fā)生變更。最后基于零件的變更,可構(gòu)造關(guān)系表,識別出轉(zhuǎn)動約束 關(guān)系的變更。該方法可快速識別五連桿機(jī)構(gòu)模型變更,并推廣至其他機(jī)械系統(tǒng)的模型變更 識別。根據(jù)該方法得到的模型變更結(jié)果信息,可增量式傳播至其他設(shè)計(jì)平臺,而無需傳播整 個模型,降低了信息傳輸負(fù)擔(dān),提高了傳輸效率。
【專利附圖】
【附圖說明】
[0028] 圖1為本發(fā)明實(shí)施例五連桿機(jī)構(gòu)初始結(jié)構(gòu);
[0029] 圖2為本發(fā)明實(shí)施例五連桿裝配體樹形結(jié)構(gòu)示意圖;
[0030] 圖3為本發(fā)明零件屬性數(shù)據(jù)結(jié)構(gòu);
[0031] 圖4為本發(fā)明變更后五連桿機(jī)構(gòu)結(jié)構(gòu);
[0032] 圖5為本發(fā)明約束屬性數(shù)據(jù)結(jié)構(gòu);
[0033] 圖6為本發(fā)明五連桿機(jī)構(gòu)模型變更識別方法流程圖。
【具體實(shí)施方式】
[0034] 下面結(jié)合附圖和實(shí)施例對本發(fā)明技術(shù)方案做進(jìn)一步詳細(xì)說明,以下實(shí)施例不構(gòu)成 對本發(fā)明的限定。
[0035] 五連桿機(jī)構(gòu)主要由五個連桿組成,如圖1所示,連桿1-5通過軸相連,表示連桿之 間的轉(zhuǎn)動約束關(guān)系。五個連桿分別屬于五種不同的連桿零件類型,軸的零件類型相同。因 此,每種連桿零件類型有一個零件實(shí)例(對應(yīng)一個連桿),軸零件類型對應(yīng)五個零件實(shí)例 (對應(yīng)五個軸)。五連桿機(jī)構(gòu)僅包含一種約束類型,即轉(zhuǎn)動約束類型,對應(yīng)五個轉(zhuǎn)動約束實(shí) 例。五連桿機(jī)構(gòu)的裝配體結(jié)構(gòu)如圖2所示,圖中箭頭表示轉(zhuǎn)動約束所作用的零件實(shí)例。
[0036] 五連桿機(jī)構(gòu)的變更識別需分別識別零件實(shí)例的變更和轉(zhuǎn)動約束實(shí)例的變更。如圖 6所示,本實(shí)施例一種五連桿機(jī)構(gòu)模型變更識別方法,包括如下步驟:
[0037] S1、根據(jù)五連桿機(jī)構(gòu)的零件屬性數(shù)據(jù)結(jié)構(gòu)構(gòu)建零件類型表,并比較初始和變更后 的零件類型表,識別出零件實(shí)例變更;
[0038] S2、根據(jù)五連桿機(jī)構(gòu)的約束屬性數(shù)據(jù)結(jié)構(gòu)構(gòu)建約束關(guān)系表,并比較初始和變更后 的約束關(guān)系表,完成約束關(guān)系變更識別;
[0039] S3、輸出零件實(shí)例及約束關(guān)系變更識別結(jié)果。
[0040] 以下通過具體的實(shí)施例對零件變更識別和轉(zhuǎn)動約束關(guān)系變更識別進(jìn)行說明。
[0041] 實(shí)施例一,對于零件實(shí)例的變更,設(shè)計(jì)人員可修改機(jī)構(gòu)的零件屬性,包括由零件類 型屬性列表和零件實(shí)例屬性列表中列出的屬性,或更換新的零件。如在圖4中,連桿1被替 換。
[0042] 零件變更識別的方法包括如下步驟:
[0043] 步驟一:構(gòu)建初始裝配體的零件類型表。
[0044] 對于零件實(shí)例的變更,由于變更識別需記錄初始的零件屬性信息,零件屬性信息 包括零件實(shí)例屬性和零件類型屬性。作為模型變更識別的依據(jù),首先需構(gòu)建零件屬性數(shù)據(jù) 結(jié)構(gòu),如圖3所示,例如該數(shù)據(jù)結(jié)構(gòu)包括標(biāo)識符(用來全局標(biāo)識該零件實(shí)例)、零件實(shí)例名 稱、指針(指向該零件實(shí)例地址)、類型屬性(零件類型屬性列表,用來表示由零件類型定義 的屬性列表,包含尺寸參數(shù)和質(zhì)量)、零件實(shí)例(零件實(shí)例屬性列表,包含各不相同的零件 實(shí)例屬性,如重心和慣量)、狀態(tài)屬性(該零件的當(dāng)前狀態(tài))。
[0045] 其中狀態(tài)模式定義了五種可能的變更狀態(tài),其中"未知"狀態(tài)僅在變更識別方法中 作為臨時狀態(tài)使用。根據(jù)零件實(shí)例的類型分類構(gòu)建零件類型屬性列表和零件實(shí)例屬性列 表,用來初始化零件屬性數(shù)據(jù)結(jié)構(gòu)。
[0046] 利用如圖3所示數(shù)據(jù)結(jié)構(gòu)記錄初始的零件屬性信息。其中,零件類型屬性列表用 來記錄連桿及軸零件類型參數(shù),零件實(shí)例屬性列表記錄連桿和軸零件實(shí)例參數(shù),得到一系 列零件屬性數(shù)據(jù)結(jié)構(gòu)集合。其中狀態(tài)模式定義為"不變"。
[0047] 以零件所屬類型為列信息,構(gòu)建零件類型表T。將描述五個連桿和五個軸零件的 零件屬性數(shù)據(jù)結(jié)構(gòu)mpl?mplO填入表中,如表1所示。由于連桿和軸零件各有五個零件實(shí) 例,在連桿類型列中分別定義mpl至mp5用來描述連桿零件實(shí)例信息。同理,為軸零件實(shí)例 定義mp6至mplO并填入表1中。
[0048]
【權(quán)利要求】
1. 一種五連桿機(jī)構(gòu)模型變更識別方法,其特征在于,包括步驟: 步驟1、根據(jù)五連桿機(jī)構(gòu)的零件屬性數(shù)據(jù)結(jié)構(gòu)構(gòu)建零件類型表,并比較初始和變更后的 零件類型表,識別出零件實(shí)例變更; 步驟2、根據(jù)五連桿機(jī)構(gòu)的約束屬性數(shù)據(jù)結(jié)構(gòu)構(gòu)建約束關(guān)系表,并比較初始和變更后的 約束關(guān)系表,完成約束關(guān)系變更識別; 步驟3、輸出零件實(shí)例及約束關(guān)系變更識別結(jié)果。
2. 根據(jù)權(quán)利要求1所述的五連桿機(jī)構(gòu)模型變更識別方法,其特征在于,所述步驟1包括 步驟: 步驟1. 1、為五連桿機(jī)構(gòu)的每個零件實(shí)例構(gòu)建零件屬性數(shù)據(jù)結(jié)構(gòu),并將零件實(shí)例的零件 屬性數(shù)據(jù)結(jié)構(gòu)填入零件類型表中構(gòu)建初始五連桿機(jī)構(gòu)的零件類型表T,表中每個零件屬性 數(shù)據(jù)結(jié)構(gòu)的狀態(tài)設(shè)為"不變"; 步驟1. 2、為變更后的五連桿機(jī)構(gòu)構(gòu)建零件類型表T',表中每個零件屬性數(shù)據(jù)結(jié)構(gòu)的 狀態(tài)設(shè)為"未知"; 步驟1.3、比較零件類型表T與T',對于僅存在于T'中的零件類型,將其對應(yīng)的零件 屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)均設(shè)為"新添加",對于僅存在于T中的零件類型,將其對應(yīng)的零件屬 性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)均設(shè)為"刪除"; 步驟1.4、通過比對類型表T和T',對于既存在于T,也存在與T'中的零件類型列,以 T中該列對應(yīng)零件屬性數(shù)據(jù)結(jié)構(gòu)的指針屬性為查詢條件,獲取T'中相應(yīng)列中是否存在指 針屬性相同的零件屬性數(shù)據(jù)結(jié)構(gòu),對于T'相應(yīng)列中從未被查詢命中的零件屬性數(shù)據(jù)結(jié)構(gòu), 其狀態(tài)設(shè)為"新添加"; 步驟1. 5、通過檢測類型表T和T'中均存在的零件類型的類型參數(shù)是否改變來獲得零 件類型參數(shù)變更信息,若有變更,將其對應(yīng)的零件屬性數(shù)據(jù)結(jié)構(gòu)狀態(tài)設(shè)為"改變"; 步驟1. 6、通過檢測類型表T'中零件實(shí)例參數(shù)是否改變來獲得零件實(shí)例參數(shù)變更信 息,對表T'中所有狀態(tài)仍為"未知"的零件屬性數(shù)據(jù)結(jié)構(gòu),若零件實(shí)例參數(shù)改變,將相應(yīng)的 零件屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)設(shè)為"改變"; 步驟1. 7、為狀態(tài)為"新添加"的零件屬性數(shù)據(jù)結(jié)構(gòu)生成標(biāo)識符屬性; 步驟1. 8、輸出零件實(shí)例變更的識別結(jié)果。
3. 根據(jù)權(quán)利要求1所述的五連桿機(jī)構(gòu)模型變更識別方法,其特征在于,所述步驟2包括 步驟: 步驟2. 1、構(gòu)建初始五連桿機(jī)構(gòu)的關(guān)系表RT,以零件屬性數(shù)據(jù)結(jié)構(gòu)為列名,以標(biāo)識符屬 性值為次序,建立關(guān)系表RT,為每個約束實(shí)例構(gòu)建屬性數(shù)據(jù)結(jié)構(gòu),并將約束屬性數(shù)據(jù)結(jié)構(gòu)填 入關(guān)系表RT中,其對應(yīng)的行為約束實(shí)例中被約束的源零件實(shí)例的零件屬性數(shù)據(jù)結(jié)構(gòu),其對 應(yīng)的列為約束實(shí)例中被約束的目標(biāo)零件實(shí)例的零件屬性數(shù)據(jù)結(jié)構(gòu); 步驟2. 2、為變更后的五連桿機(jī)構(gòu)構(gòu)建關(guān)系表RT'; 步驟2. 3、比較關(guān)系表RT與RT',對于RT'中狀態(tài)為"新添加"的列零件屬性數(shù)據(jù)結(jié)構(gòu), 其對應(yīng)的約束屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)設(shè)為"新添加",對于僅存在于RT中的列,其對應(yīng)的約束 屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài)設(shè)為"刪除",通過比對RT與RT'中相同位置約束實(shí)例的指針,可獲取 其他狀態(tài)為"新添加"和"刪除"的約束屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài); 步驟2. 4、檢測約束實(shí)例的類型參數(shù)變化,如存在改變,則對應(yīng)的約束屬性數(shù)據(jù)結(jié)構(gòu)的 狀態(tài)設(shè)為"改變"; 步驟2. 5、檢測約束實(shí)例的參數(shù)變化,如存在改變,則對應(yīng)的約束屬性數(shù)據(jù)結(jié)構(gòu)的狀態(tài) 設(shè)為"改變"; 步驟2. 6、為狀態(tài)為"新添加"的約束屬性數(shù)據(jù)結(jié)構(gòu)生成標(biāo)識符屬性; 步驟2. 7、輸出約束實(shí)例變更識別結(jié)果。
【文檔編號】G06F17/50GK104408124SQ201410696220
【公開日】2015年3月11日 申請日期:2014年11月26日 優(yōu)先權(quán)日:2014年11月26日
【發(fā)明者】葉曉平 申請人:麗水學(xué)院