劉彥臣, 劉玉斌, 石亦琨, 唐家鵬, 李戰(zhàn)芬
(1. 中北大學(xué) 機(jī)電工程學(xué)院, 山西 太原 030051; 2. 首都航天機(jī)械公司, 北京 100076;3. 太原工業(yè)學(xué)院 網(wǎng)絡(luò)與信息中心, 山西 太原 030008)
產(chǎn)品關(guān)聯(lián)設(shè)計(jì)及變更影響分析*
劉彥臣1, 劉玉斌1, 石亦琨2, 唐家鵬1, 李戰(zhàn)芬3
(1. 中北大學(xué) 機(jī)電工程學(xué)院, 山西 太原 030051; 2. 首都航天機(jī)械公司, 北京 100076;3. 太原工業(yè)學(xué)院 網(wǎng)絡(luò)與信息中心, 山西 太原 030008)
針對(duì)產(chǎn)品關(guān)聯(lián)設(shè)計(jì)技術(shù)及關(guān)聯(lián)信息的管理策略, 建立了關(guān)聯(lián)信息的計(jì)算機(jī)表示模型. 提出了面向產(chǎn)品關(guān)聯(lián)設(shè)計(jì)的廣度優(yōu)先遍歷算法, 實(shí)現(xiàn)了模型關(guān)聯(lián)傳播范圍的求解, 獲得了需要關(guān)聯(lián)協(xié)調(diào)解決的零部件間的關(guān)聯(lián)關(guān)系和參數(shù). 開(kāi)發(fā)了基于CATIA平臺(tái)的產(chǎn)品關(guān)聯(lián)設(shè)計(jì)工具集, 并進(jìn)行實(shí)時(shí)自動(dòng)更新, 從而實(shí)現(xiàn)對(duì)產(chǎn)品結(jié)構(gòu)模型的快速重建以及設(shè)計(jì)的快速迭代, 提高了工作效率和結(jié)構(gòu)設(shè)計(jì)質(zhì)量, 加速了產(chǎn)品的研制進(jìn)程. 最后以飛機(jī)垂尾結(jié)構(gòu)為例, 驗(yàn)證了關(guān)聯(lián)設(shè)計(jì)工具集及算法的可行性和有效性.
基準(zhǔn)引用; 參數(shù)關(guān)聯(lián); 變更; 關(guān)聯(lián)傳播范圍
復(fù)雜產(chǎn)品的設(shè)計(jì)往往是一個(gè)不斷迭代的過(guò)程, 設(shè)計(jì)中結(jié)構(gòu)的變更和修改是不可避免的[1]. 由于產(chǎn)品零部件模型之間普遍存在著各種關(guān)聯(lián)關(guān)系, 因此, 設(shè)計(jì)變更往往會(huì)產(chǎn)生關(guān)聯(lián)傳播現(xiàn)象[2], 如在設(shè)計(jì)過(guò)程中, 當(dāng)某個(gè)模型的參數(shù)或元素發(fā)生變更后, 引用了該模型參數(shù)或元素的其它模型可能會(huì)受到影響[3]. 雖然數(shù)據(jù)管理平臺(tái)提供了產(chǎn)品設(shè)計(jì)變更的管理, 但是由于產(chǎn)品結(jié)構(gòu)模型間關(guān)聯(lián)關(guān)系的復(fù)雜性及受設(shè)計(jì)人員知識(shí)的限制, 實(shí)際中仍然采用經(jīng)驗(yàn)判斷的方式來(lái)確定受影響模型, 而導(dǎo)致可能漏掉某些模型, 使得在最后接近完成設(shè)計(jì)時(shí)發(fā)現(xiàn)模型間的沖突, 此時(shí)進(jìn)行修改或返工必然會(huì)造成設(shè)計(jì)的延誤和時(shí)間的浪費(fèi)[4]. 因此需要進(jìn)行產(chǎn)品結(jié)構(gòu)設(shè)計(jì)變更影響分析和控制, 搜索并求解受當(dāng)前模型影響的全部關(guān)聯(lián)模型, 并進(jìn)行模型的快速修改和更新.
目前, 產(chǎn)品變更的影響受到了廣泛的關(guān)注和重視, 很多國(guó)內(nèi)外研究人員對(duì)設(shè)計(jì)更改導(dǎo)致的變更傳播進(jìn)行了研究, 但這些研究更多偏重于理論方法的介紹和分析[5-8]. 如Reddie等[9]提出了復(fù)雜產(chǎn)品分析網(wǎng)絡(luò)處理的方法, 用于表達(dá)產(chǎn)品中模塊之間的關(guān)聯(lián)性, 并根據(jù)模塊和系統(tǒng)的依賴(lài)關(guān)系進(jìn)行設(shè)計(jì)變更影響的分析. 何睿等[10]基于設(shè)計(jì)結(jié)構(gòu)矩陣和有向圖理論, 在產(chǎn)品設(shè)計(jì)過(guò)程中針對(duì)產(chǎn)品變更及傳播的特點(diǎn), 分析了工程變更中不同變更傳播的類(lèi)型及其傳播的內(nèi)在原因, 提出了通過(guò)核心模塊聚類(lèi)進(jìn)行變更傳播影響的預(yù)測(cè)方法. 方泳澤等[11]對(duì)工程變更中零件變更的傳播問(wèn)題進(jìn)行了研究, 提出了基于有向圖的變更傳播方法, 通過(guò)“傳播實(shí)圖”來(lái)引導(dǎo)和記錄零件變更的傳播范圍, 并進(jìn)行變更的影響評(píng)估. Eckert等[12]在直升機(jī)設(shè)計(jì)過(guò)程中通過(guò)建立不同的鏈接關(guān)系, 對(duì)設(shè)計(jì)變更進(jìn)行分析、 評(píng)估和預(yù)測(cè), 并引入了“傳播可能性”的概念來(lái)定量地預(yù)測(cè)直升機(jī)設(shè)計(jì)中變更傳播影響的可能性.
上述研究分別從不同角度對(duì)變更影響做了分析, 并對(duì)工程及設(shè)計(jì)變更影響的模型進(jìn)行了預(yù)測(cè), 為工程及設(shè)計(jì)中預(yù)測(cè)和控制變更的影響提供了理論基礎(chǔ). 然而, 這些對(duì)變更的影響分析無(wú)法具體確定出產(chǎn)品變更影響的模型傳播范圍, 即沒(méi)有通過(guò)一種有效的方法或算法求得受影響的模型, 更無(wú)法細(xì)化到具體特征和參數(shù)級(jí)別. 在實(shí)際產(chǎn)品設(shè)計(jì)中, 設(shè)計(jì)人員需要確定某個(gè)模型進(jìn)行了變更操作后會(huì)影響到哪些下游模型, 并關(guān)心影響的模型內(nèi)具體的元素, 因此以上研究難以對(duì)解決實(shí)際產(chǎn)品設(shè)計(jì)變更影響給予有效指導(dǎo).
本文提出面向產(chǎn)品關(guān)聯(lián)設(shè)計(jì)的廣度優(yōu)先遍歷算法, 開(kāi)發(fā)了關(guān)聯(lián)設(shè)計(jì)工具集, 基于飛機(jī)垂尾結(jié)構(gòu)實(shí)現(xiàn)了設(shè)計(jì)變更的搜索, 自動(dòng)判斷受影響的下游模型, 并能夠準(zhǔn)確定位到模型內(nèi)部的具體元素, 為飛機(jī)翼面結(jié)構(gòu)設(shè)計(jì)等工程中變更傳播分析問(wèn)題的解決提供了新思路.
傳統(tǒng)的參數(shù)化設(shè)計(jì)一般是在單個(gè)零件內(nèi)通過(guò)幾何及尺寸約束的定義建立特征的相關(guān)性, 或在零件間通過(guò)簡(jiǎn)單表達(dá)式實(shí)現(xiàn)公式或參數(shù)的關(guān)聯(lián)[13], 是一種零件級(jí)的參數(shù)化設(shè)計(jì)技術(shù). 在面對(duì)復(fù)雜的產(chǎn)品設(shè)計(jì)或無(wú)法簡(jiǎn)單用表達(dá)式表述的關(guān)系時(shí), 以往的參數(shù)化設(shè)計(jì)技術(shù)不能夠滿(mǎn)足設(shè)計(jì)需求. 關(guān)聯(lián)設(shè)計(jì)把零件的參數(shù)化設(shè)計(jì)上升到零件與零件之間的關(guān)聯(lián), 表現(xiàn)為零件中幾何元素或參數(shù)間的驅(qū)動(dòng)[14], 是面向產(chǎn)品和部件級(jí)的參數(shù)化設(shè)計(jì)技術(shù).
關(guān)聯(lián)設(shè)計(jì)是指產(chǎn)品設(shè)計(jì)過(guò)程中, 在產(chǎn)品數(shù)據(jù)管理和CAD技術(shù)支持下, 通過(guò)參數(shù)化設(shè)計(jì)技術(shù)建立零件或模型之間的驅(qū)動(dòng)關(guān)系[15].
模型關(guān)聯(lián)是指通過(guò)幾何元素或參數(shù)的外部引用, 在產(chǎn)品零部件之間建立的鏈接關(guān)系. CATIA通過(guò)發(fā)布機(jī)制、 帶鏈接的粘貼、 外部引用等功能在一定程度上支持了產(chǎn)品的關(guān)聯(lián)設(shè)計(jì), 并保證了這種鏈接.
對(duì)象是指產(chǎn)品關(guān)聯(lián)設(shè)計(jì)中模型內(nèi)部的特征及參數(shù), 本文將基準(zhǔn)點(diǎn)、 基準(zhǔn)線、 基準(zhǔn)面等特征元素及參數(shù)統(tǒng)一定義為“對(duì)象”.
根據(jù)產(chǎn)品模型間關(guān)聯(lián)的特點(diǎn), 關(guān)聯(lián)關(guān)系主要包括兩種類(lèi)型: 基準(zhǔn)引用和參數(shù)關(guān)聯(lián). 基準(zhǔn)引用通常是在產(chǎn)品裝配的環(huán)境下, 零件設(shè)計(jì)時(shí)直接選取其它零件模型中的基準(zhǔn)點(diǎn)、 線、 面等特征作為參考而建立起來(lái)的外部引用關(guān)聯(lián)方式; 參數(shù)關(guān)聯(lián)是零件設(shè)計(jì)時(shí)通過(guò)零件模型之間的幾何或非幾何參數(shù)建立起來(lái)的外部關(guān)聯(lián)方式, 其中產(chǎn)品結(jié)構(gòu)的重量、 材料、 熱處理、 表面處理等非幾何文本信息采用字符串形式, 可以轉(zhuǎn)化為參數(shù)關(guān)聯(lián)類(lèi)型.
為記錄和管理產(chǎn)品零件(或稱(chēng)模型)間的關(guān)聯(lián)關(guān)系, 實(shí)現(xiàn)關(guān)聯(lián)設(shè)計(jì)信息的有效管理, 建立零件間關(guān)聯(lián)信息的計(jì)算機(jī)表示模型, 如圖 1 所示.
關(guān)聯(lián)信息由兩個(gè)層次構(gòu)成:
1) 關(guān)聯(lián)關(guān)系的上層為模型間關(guān)聯(lián), 如模型M0和模型M3關(guān)聯(lián), 可用以模型為結(jié)點(diǎn)、 模型關(guān)聯(lián)關(guān)系為邊的有向無(wú)循環(huán)圖表示, 且圖中不存在回路.
圖 1 關(guān)聯(lián)信息計(jì)算機(jī)表示模型Fig.1 Associated information model of computer
2) 關(guān)聯(lián)關(guān)系的底層為模型間包括特征和參數(shù)的具體對(duì)象的關(guān)聯(lián), 如模型M6基于特征obj0引用模型M3, 參數(shù)M6_obj2=M3_obj1+M3_obj3, 模型M6所用材料與模型M3相同等. 這種關(guān)聯(lián)可用從驅(qū)動(dòng)對(duì)象到被驅(qū)動(dòng)對(duì)象的映射表來(lái)表示. 產(chǎn)品模型關(guān)聯(lián)的本質(zhì)是模型中對(duì)象的關(guān)聯(lián), 存在對(duì)象關(guān)聯(lián)的產(chǎn)品模型之間必然存在關(guān)聯(lián)關(guān)系.
為進(jìn)一步便于計(jì)算機(jī)理解和處理模型關(guān)聯(lián)關(guān)系, 可以使用BNF范式對(duì)關(guān)聯(lián)信息計(jì)算機(jī)表示模型進(jìn)行形式化表達(dá):
〈關(guān)聯(lián)信息〉∷=〈模型〉〈模型關(guān)聯(lián)關(guān)系〉,
〈模型〉∷=〈模型ID〉〈模型所在路徑〉〈模型對(duì)象集〉,
〈模型對(duì)象集〉∷={〈模型特征〉}{〈模型參數(shù)〉},
〈模型關(guān)聯(lián)關(guān)系〉∷={〈對(duì)象關(guān)聯(lián)關(guān)系〉}〈對(duì)象關(guān)聯(lián)關(guān)系個(gè)數(shù)〉,
〈對(duì)象關(guān)聯(lián)關(guān)系〉∷={〈驅(qū)動(dòng)參數(shù)〉}{〈被驅(qū)動(dòng)參數(shù)〉}〈關(guān)聯(lián)類(lèi)型〉〈關(guān)聯(lián)關(guān)系表達(dá)式〉.
本文以產(chǎn)品關(guān)聯(lián)信息計(jì)算機(jī)表示模型為基礎(chǔ), 首先在產(chǎn)品結(jié)構(gòu)樹(shù)中自頂向下地進(jìn)行關(guān)聯(lián)建模, 然后通過(guò)分析模型對(duì)象變更的傳遞路徑, 進(jìn)行關(guān)聯(lián)傳播范圍求解方法的研究, 最后獲得需要關(guān)聯(lián)協(xié)調(diào)解決的零部件模型以及關(guān)聯(lián)關(guān)系和參數(shù), 如圖 2 所示, 從而支持設(shè)計(jì)人員快速、 準(zhǔn)確地定位這些模型以及模型內(nèi)部具體對(duì)象, 并進(jìn)行自動(dòng)更新.
圖 2 產(chǎn)品結(jié)構(gòu)變更影響分析Fig.2 Analysis of product structure change
關(guān)聯(lián)設(shè)計(jì)中, 首先要進(jìn)行模型內(nèi)對(duì)象的發(fā)布. 發(fā)布(Publication)是進(jìn)行產(chǎn)品結(jié)構(gòu)協(xié)同設(shè)計(jì)時(shí)為更好地控制所創(chuàng)建的外部參考特征而進(jìn)行的操作, 是一個(gè)用特定的標(biāo)簽進(jìn)行元素命名的過(guò)程[16]. 如果模型中創(chuàng)建的對(duì)象被其他模型引用, 需要通過(guò)“發(fā)布”機(jī)制將該對(duì)象進(jìn)行發(fā)布. 圖 3 所示為機(jī)翼盒段骨架模型構(gòu)件的站位面及上下蒙皮發(fā)布的情形.
圖 3 機(jī)翼盒段結(jié)構(gòu)元素發(fā)布Fig.3 Release of wing box elements
通常用于發(fā)布的對(duì)象包括線框元素如點(diǎn)、 線、 面等, 也可以是構(gòu)造實(shí)體幾何中的長(zhǎng)方體、 圓柱體以及參數(shù)等. 協(xié)同設(shè)計(jì)過(guò)程中, 發(fā)布的對(duì)象更方便被所有設(shè)計(jì)人員識(shí)別并引用, 也更容易實(shí)現(xiàn)零部件之間的替換, 同時(shí), 具有相同名字的發(fā)布對(duì)象能夠自動(dòng)鏈接. 雖然模型創(chuàng)建時(shí)引用普通對(duì)象同樣能夠?qū)崿F(xiàn)模型的關(guān)聯(lián), 但是引用未發(fā)布的特征或參數(shù)時(shí), 關(guān)聯(lián)鏈接容易斷開(kāi)或出現(xiàn)錯(cuò)誤, 難于實(shí)現(xiàn)模型的自動(dòng)更新, 因此產(chǎn)品結(jié)構(gòu)關(guān)聯(lián)設(shè)計(jì)中禁止引用未經(jīng)發(fā)布的對(duì)象.
產(chǎn)品模型關(guān)聯(lián)關(guān)系的建立是根據(jù)產(chǎn)品結(jié)構(gòu)樹(shù), 自頂向下依次建立組件模型之間的關(guān)聯(lián). 先建立產(chǎn)品與部件之間的關(guān)聯(lián), 然后向下一層進(jìn)行分解, 直到產(chǎn)品最低層的零件級(jí)別, 從而形成所有零部件的關(guān)聯(lián)模型網(wǎng)絡(luò). 產(chǎn)品結(jié)構(gòu)樹(shù)中零組件之間存在大量關(guān)聯(lián)關(guān)系, 各關(guān)聯(lián)關(guān)系相互聯(lián)系在一起形成特征對(duì)象關(guān)聯(lián)網(wǎng)絡(luò), 如圖 4 所示.
圖 4 產(chǎn)品對(duì)象關(guān)聯(lián)網(wǎng)絡(luò)Fig.4 Associated network of product object
該網(wǎng)絡(luò)以結(jié)構(gòu)樹(shù)為框架, 包含了產(chǎn)品族、 產(chǎn)品層、 部件層、 零件層及對(duì)象特征等多維度的產(chǎn)品關(guān)聯(lián)設(shè)計(jì)信息.
關(guān)聯(lián)傳播路徑分析以產(chǎn)品的結(jié)構(gòu)樹(shù)為基礎(chǔ)定義路徑, 采用遍歷的方法進(jìn)行搜索. 按照給定的產(chǎn)品結(jié)構(gòu)樹(shù)中的單向路徑來(lái)查找建立關(guān)聯(lián)關(guān)系的組件及零件模型, 從關(guān)聯(lián)傳播的角度遍歷組件或零件模型之間所有的可能路徑, 從而獲取關(guān)聯(lián)傳播路徑的集合. 研究和討論關(guān)聯(lián)傳播路徑是進(jìn)行結(jié)構(gòu)變更影響分析及確定模型關(guān)聯(lián)傳播范圍的基礎(chǔ)和前提.
路徑是指產(chǎn)品結(jié)構(gòu)樹(shù)中兩個(gè)模型或結(jié)點(diǎn)之間依次連接形成的不封閉的路線.
路徑包括橫向路徑和縱向路徑: 結(jié)構(gòu)樹(shù)中由具有橫向關(guān)聯(lián)關(guān)系的模型或結(jié)點(diǎn)連接而成的路徑, 稱(chēng)為橫向路徑, 如圖 5 所示的模型④-⑤和-等形成的橫向路徑; 結(jié)構(gòu)樹(shù)中具有從屬關(guān)聯(lián)關(guān)系的模型或結(jié)點(diǎn)之間連接而成的路徑, 稱(chēng)為縱向路徑, 如模型①-④-⑨形成的縱向路徑.
圖 5 關(guān)聯(lián)傳播路徑及可能的受影響模型Fig.5 Associated propagation path and affected models
在產(chǎn)品關(guān)聯(lián)設(shè)計(jì)中, 橫向路徑和縱向路徑都具有單向性, 即只能上游模型影響下游模型, 而下游模型特征或參數(shù)的變化不會(huì)引起上游相關(guān)模型的任何變更, 即在圖5中模型④的變更不能影響到模型①.
如模型④發(fā)生變更, 則出現(xiàn)的路徑為:
1) 定義
在產(chǎn)品設(shè)計(jì)更改過(guò)程中, 當(dāng)模型中某對(duì)象發(fā)生變更時(shí), 受到影響的模型的集合稱(chēng)為模型變更的關(guān)聯(lián)傳播范圍或變更影響范圍. 關(guān)聯(lián)傳播范圍可以表示為
D(ci)={c|c∈Cp∪c∈Cc},
式中:Cp為橫向路徑集合;Cc為縱向路徑集合.
關(guān)聯(lián)傳播范圍的確定是通過(guò)統(tǒng)計(jì)變更傳遞路徑上的結(jié)點(diǎn), 獲取所有關(guān)聯(lián)傳播影響的零部件模型. 為了評(píng)估或確定關(guān)聯(lián)傳播的范圍, 有必要分析模型間的直接影響和間接影響. 直接影響通常發(fā)生在兩個(gè)具有直接關(guān)聯(lián)的模型間, 不需要經(jīng)過(guò)其他模型或第三方系統(tǒng). 而一個(gè)模型對(duì)另外模型的間接影響往往需要經(jīng)過(guò)一個(gè)或多個(gè)模型的傳遞才可以實(shí)現(xiàn). 在圖5中, 模型④中某對(duì)象發(fā)生更改時(shí), 模型⑤, ⑨,,,都可能發(fā)生變更, 其中模型⑤和⑨為受直接影響的模型, 而模型,和為模型④的間接影響模型; 模型是模型⑩的直接影響模型, 同時(shí)是模型⑤的間接影響模型. 討論和確定關(guān)聯(lián)傳播范圍, 不僅要考慮受變更模型的直接影響, 同時(shí)還要考慮間接影響.
2) 關(guān)聯(lián)傳播范圍對(duì)象分析
關(guān)聯(lián)傳播范圍的求解是從要分析的變更的模型結(jié)點(diǎn)開(kāi)始, 在關(guān)聯(lián)信息計(jì)算機(jī)表示模型關(guān)系圖中按照關(guān)聯(lián)傳播路徑進(jìn)行遍歷, 搜索出受影響的模型并將其更新, 以保持上下游模型數(shù)據(jù)的一致性. 但與通常的遍歷搜索不同, 關(guān)聯(lián)傳播范圍的搜索是基于模型內(nèi)部對(duì)象, 而不僅僅是模型本身, 如圖 6 所示. 當(dāng)模型中某個(gè)對(duì)象發(fā)生更改時(shí), 與該模型直接關(guān)聯(lián)的模型是否會(huì)更改與模型中具有關(guān)聯(lián)關(guān)系的對(duì)象有關(guān).
圖 6 中對(duì)象A和B為模型①中的發(fā)布元素, 對(duì)象D, F, K與對(duì)象A之間存在映射關(guān)系, 模型②, ③和⑥在建模時(shí)均引用了發(fā)布對(duì)象A, 因此模型①與模型②, ③和⑥之間存在關(guān)聯(lián)關(guān)系, 其中模型①為上游驅(qū)動(dòng)模型, 其余為下游被驅(qū)動(dòng)模型. 對(duì)象H與B之間存在映射關(guān)系, 模型④在建模時(shí)引用了發(fā)布對(duì)象B, 模型①與④之間存在關(guān)聯(lián)關(guān)系, 其中模型①為上游驅(qū)動(dòng)模型, 模型④為下游被驅(qū)動(dòng)模型. 對(duì)象DD為模型②中的對(duì)象D經(jīng)過(guò)操作得到的對(duì)象再進(jìn)行發(fā)布后的元素, 模型⑤在建模時(shí)引用了該元素, 模型②與⑤之間存在關(guān)聯(lián)關(guān)系, 其中模型②為上游驅(qū)動(dòng)模型, 模型⑤為下游被驅(qū)動(dòng)模型. 現(xiàn)假設(shè)模型①中的A對(duì)象發(fā)生更改, 由于存在直接的關(guān)聯(lián)和映射關(guān)系, 模型②, ③和⑥受到影響隨之變更, 為直接受影響模型, 而D的變更可能觸發(fā)DD的變更, 從而促使模型⑤變更, 因此模型⑤成為可能的間接受影響模型. 如果模型①中的B對(duì)象發(fā)生更改, 則僅會(huì)引起模型④變更, 而不會(huì)引起模型②, ③和⑥的變更.
圖 6 基于對(duì)象的模型設(shè)計(jì)變更Fig.6 Design changes based on object model
因此, 模型的變更不一定會(huì)對(duì)與其相關(guān)聯(lián)的其他模型產(chǎn)生影響, 只有當(dāng)改變被關(guān)聯(lián)模型引用的對(duì)象時(shí), 相關(guān)聯(lián)的模型才受到影響.
3) 求解算法
廣度優(yōu)先遍歷算法的基本思想是: 首先在有向圖中從初始結(jié)點(diǎn)p0開(kāi)始, 依次搜索p0的所有相關(guān)聯(lián)的結(jié)點(diǎn)p1,p2…, 然后按照順序選中一個(gè)已經(jīng)搜索的結(jié)點(diǎn), 繼續(xù)搜索其所有相關(guān)結(jié)點(diǎn), 當(dāng)所有結(jié)點(diǎn)都被搜索, 則遍歷搜索結(jié)束.
本文提出面向產(chǎn)品關(guān)聯(lián)設(shè)計(jì)的廣度優(yōu)先遍歷算法, 根據(jù)圖 4 所示的產(chǎn)品對(duì)象關(guān)聯(lián)網(wǎng)絡(luò)及模型對(duì)象間的關(guān)聯(lián)關(guān)系, 產(chǎn)品對(duì)象關(guān)聯(lián)網(wǎng)絡(luò)為一有向圖, 圖中的每個(gè)結(jié)點(diǎn)對(duì)應(yīng)一個(gè)變量, 變量的取值為1或0. 當(dāng)一個(gè)結(jié)點(diǎn)發(fā)生變更后, 搜索與該結(jié)點(diǎn)相連接的所有結(jié)點(diǎn), 然后判斷結(jié)點(diǎn)是否變更, 如果結(jié)點(diǎn)需要變更, 則該結(jié)點(diǎn)取值為1, 需從此結(jié)點(diǎn)向下繼續(xù)遍歷搜索, 否則該結(jié)點(diǎn)取值為0, 具體算法如下:
1) 假設(shè)p0結(jié)點(diǎn)處初始模型M0內(nèi)的某一對(duì)象發(fā)生變更, 則搜索從初始模型M0開(kāi)始, 沿著模型M0的橫向和縱向傳播路徑, 依次訪問(wèn)所有與初始模型有關(guān)聯(lián)的下游受影響模型M1,M2,….
2) 根據(jù)模型關(guān)聯(lián)的對(duì)象進(jìn)行判斷, 與初始模型內(nèi)對(duì)象具有關(guān)聯(lián)關(guān)系的模型所在的結(jié)點(diǎn)記為1, 否則記為0. 繼續(xù)遍歷搜索取值為1的模型所在結(jié)點(diǎn), 而取值為0的結(jié)點(diǎn)不再繼續(xù)搜索. 當(dāng)所有相關(guān)結(jié)點(diǎn)均取值為0或無(wú)下游結(jié)點(diǎn), 搜索結(jié)束.
3) 去除傳播路徑中重復(fù)的結(jié)點(diǎn), 只保留1個(gè), 計(jì)算所有取值為1的結(jié)點(diǎn)對(duì)應(yīng)的模型, 即可獲得最終的初始影響模型變更的關(guān)聯(lián)傳播范圍D(ci).
結(jié)合圖 7 的模型變更過(guò)程, 該算法可描述為:
圖 7 模型的變更Fig.7 Change of model
1)p0結(jié)點(diǎn)處模型中某一已發(fā)布對(duì)象A(如某平面位置)發(fā)生變更, 首先沿縱向傳播路徑進(jìn)行搜索, 由于下游模型①和②中的對(duì)象與A具有關(guān)聯(lián)關(guān)系, 因此, 該模型的變更必然會(huì)引起模型①和②的變更, 則p1結(jié)點(diǎn)和p2結(jié)點(diǎn)記為1, 如圖 7 所示; 而發(fā)布對(duì)象A沒(méi)有被模型③所引用, 因此, 模型③不會(huì)被影響, 則p3結(jié)點(diǎn)記為0, 同時(shí)模型③下游所有模型結(jié)點(diǎn)均記為0.
2) 模型①和②中引用A的對(duì)象經(jīng)過(guò)模型內(nèi)部操作后進(jìn)行發(fā)布, 分別為B和C. 然后以p1和p2結(jié)點(diǎn)為起點(diǎn)繼續(xù)向下并沿縱向傳播路徑和橫向路徑進(jìn)行遍歷搜索, 搜索方法同步驟1). 根據(jù)遍歷搜索結(jié)果, 模型⑤被影響, 則p5結(jié)點(diǎn)記為1, 模型④, ⑥和⑦沒(méi)有受到影響, 則模型結(jié)點(diǎn)記為0, 下游結(jié)點(diǎn)也均記為0.
3) 同步驟1)和2), 繼續(xù)以p5結(jié)點(diǎn)為起點(diǎn)向下進(jìn)行遍歷搜索, 模型⑥被影響, 則p6結(jié)點(diǎn)記為1, 模型沒(méi)有受到影響, 則p11結(jié)點(diǎn)記為0, 其下游結(jié)點(diǎn)也均記為0.
4) 再以結(jié)點(diǎn)p6為起點(diǎn)向下進(jìn)行遍歷搜索, 模型被影響, 則結(jié)點(diǎn)p12記為1, 模型沒(méi)有受到影響, 則p13結(jié)點(diǎn)記為0, 其下游結(jié)點(diǎn)也均記為0.
圖 7 反映了p0結(jié)點(diǎn)處模型變更的情形, 去除重復(fù)結(jié)點(diǎn)處模型, 計(jì)算所有取值為1的結(jié)點(diǎn)處模型, 其精確的關(guān)聯(lián)傳播范圍為:D(c0)={c1,c2,c5,c6,c12}.
根據(jù)上述分析, 面向產(chǎn)品關(guān)聯(lián)設(shè)計(jì)的廣度優(yōu)先遍歷算法具有以下特點(diǎn):
1) 有向圖中結(jié)點(diǎn)取值為0還是1, 由計(jì)算機(jī)根據(jù)模型關(guān)聯(lián)對(duì)象關(guān)系自動(dòng)判別, 而繼續(xù)向下遍歷搜索的前提條件是模型結(jié)點(diǎn)取值必須為1.
2) 模型的結(jié)點(diǎn)可能被重復(fù)遍歷, 如模型⑥結(jié)點(diǎn), 以該結(jié)點(diǎn)向下遍歷時(shí)應(yīng)將結(jié)點(diǎn)的取值進(jìn)行疊加, 并且在求解關(guān)聯(lián)傳播范圍時(shí)只應(yīng)統(tǒng)計(jì)1次.
3) 基于該算法進(jìn)行的相關(guān)修改常常在一個(gè)有限的范圍內(nèi), 即更改一個(gè)模型引起所有模型的改變是不可能的, 這與實(shí)際產(chǎn)品設(shè)計(jì)是吻合的.
該實(shí)例發(fā)生了多級(jí)變更, 除了模型①和②外, 還產(chǎn)生了⑤, ⑥和3個(gè)間接受影響模型, 而在實(shí)際的產(chǎn)品結(jié)構(gòu)變更過(guò)程中, 這種情形會(huì)經(jīng)常出現(xiàn).
關(guān)聯(lián)設(shè)計(jì)把單個(gè)模型的參數(shù)化設(shè)計(jì)上升為兩個(gè)甚至多個(gè)模型之間的關(guān)聯(lián), 其外部表現(xiàn)為模型和模型之間的關(guān)聯(lián)和驅(qū)動(dòng)關(guān)系, 而實(shí)質(zhì)的關(guān)聯(lián)關(guān)系存在于模型內(nèi)具體對(duì)象之間, 即對(duì)象間的驅(qū)動(dòng), 如圖 8 所示, 其本質(zhì)是數(shù)據(jù)在模型內(nèi)對(duì)象間的流動(dòng)或傳遞, 即數(shù)據(jù)流. 形成數(shù)據(jù)流的數(shù)據(jù)可以是幾何參數(shù)或非幾何參數(shù)(如材料), 也可以是點(diǎn)、 線和面等基準(zhǔn)特征元素.
在產(chǎn)品關(guān)聯(lián)設(shè)計(jì)中, 上下游模型間數(shù)據(jù)流具有以下特點(diǎn):
1) 模型間數(shù)據(jù)的映射用于記錄和表達(dá)模型之間的數(shù)據(jù)流向關(guān)系, 通過(guò)數(shù)據(jù)流可以查看模型間的關(guān)聯(lián)關(guān)系, 從而實(shí)現(xiàn)向上進(jìn)行來(lái)源分析, 向下進(jìn)行變更影響分析.
2) 數(shù)據(jù)的引用功能支持模型引用父級(jí)節(jié)點(diǎn)和同級(jí)節(jié)點(diǎn)的數(shù)據(jù).
3) 上游模型對(duì)象發(fā)生變更, 通過(guò)模型間數(shù)據(jù)流的映射和傳遞, 下游模型發(fā)現(xiàn)不匹配, 則模型自動(dòng)變紅.
圖 8 模型間數(shù)據(jù)映射關(guān)系Fig.8 Data mapping relationship between models
飛機(jī)翼面結(jié)構(gòu)設(shè)計(jì)變更主要包括以下兩種情形: ① 模型創(chuàng)建基準(zhǔn)線或基準(zhǔn)面的變化引起引用該基準(zhǔn)的模型的更新; ② 模型結(jié)構(gòu)發(fā)生尺寸的修改, 如飛機(jī)翼面結(jié)構(gòu)件模型參數(shù)的更改, 導(dǎo)致與該參數(shù)有關(guān)聯(lián)關(guān)系的模型的尺寸發(fā)生更改. 對(duì)于這兩種設(shè)計(jì)變更, 前一種情形在目前的飛機(jī)翼面結(jié)構(gòu)設(shè)計(jì)中應(yīng)用較多, 相關(guān)技術(shù)較為成熟, 而對(duì)模型幾何或非幾何參數(shù)的更改導(dǎo)致的設(shè)計(jì)變更所進(jìn)行的研究還相對(duì)較少. 下面以某飛機(jī)翼面結(jié)構(gòu)(垂尾)為例說(shuō)明上述變更情形, 如圖 9 所示. 由于垂尾結(jié)構(gòu)設(shè)計(jì)中模型間的關(guān)聯(lián)關(guān)系及變更對(duì)象較多, 表 1 中列出其中一部分的變更情形, 并在關(guān)聯(lián)設(shè)計(jì)工具集的傳播范圍求解中進(jìn)行驗(yàn)證.
圖 9 垂尾結(jié)構(gòu)Fig.9 Structure of vertical tail
表 1 垂尾結(jié)構(gòu)模型及關(guān)聯(lián)關(guān)系
為提高飛機(jī)翼面結(jié)構(gòu)模型更新速度及數(shù)字化設(shè)計(jì)的效率和質(zhì)量, 在上述研究和分析的基礎(chǔ)上, 基于CATIA V5平臺(tái)開(kāi)發(fā)快速設(shè)計(jì)軟件——關(guān)聯(lián)設(shè)計(jì)工具集, 界面如圖10所示. 關(guān)聯(lián)設(shè)計(jì)工具集的開(kāi)發(fā)采用CAA來(lái)實(shí)現(xiàn), 因?yàn)镃AA的可定制程度最高, 由CAA C++ API提供的界面最優(yōu), 并且能夠與CATIA更好地兼容, 也更容易訪問(wèn)VPM系統(tǒng).
圖 10 關(guān)聯(lián)設(shè)計(jì)工具集Fig.10 Toolset of associated design
圖 11 關(guān)聯(lián)傳播范圍Fig.11 Associated propagation range
針對(duì)本文所提出的算法及關(guān)聯(lián)設(shè)計(jì)工具集最核心的功能, 以飛機(jī)垂尾結(jié)構(gòu)為驗(yàn)證對(duì)象, 以表 1 的變更情形進(jìn)行飛機(jī)翼面結(jié)構(gòu)設(shè)計(jì)變更影響分析, 實(shí)現(xiàn)模型關(guān)聯(lián)傳播范圍的求解. 首先選擇關(guān)聯(lián)設(shè)計(jì)工具集界面“裝配模型”文本框, 拾取CATIA中裝配模型, 然后點(diǎn)擊“關(guān)聯(lián)范圍”按鈕, 工具集會(huì)彈出“關(guān)聯(lián)傳播范圍”對(duì)話(huà)框, 展示所拾取的裝配模型結(jié)構(gòu)樹(shù)下的所有裝配體及模型, 點(diǎn)擊其中任何模型的某一對(duì)象, 其上游模型和下游受影響的模型以及內(nèi)部具體對(duì)象以不同顏色呈高亮顯示, 如圖 11 所示. 其中深色表示上游模型及其內(nèi)部發(fā)布的對(duì)象, 淺色表示下游受影響模型及其內(nèi)部對(duì)象. 基于驗(yàn)證實(shí)例及工具集功能, 需要說(shuō)明:
1) 通過(guò)垂尾結(jié)構(gòu)模型間的數(shù)據(jù)流, 關(guān)聯(lián)設(shè)計(jì)工具集不僅能夠?qū)崿F(xiàn)產(chǎn)品變更影響分析, 同時(shí)支持設(shè)計(jì)變更來(lái)源分析, 即實(shí)現(xiàn)模型變更來(lái)源追溯. 點(diǎn)擊模型中某對(duì)象, 工具集能夠快速查詢(xún)到上游模型及內(nèi)部對(duì)象, 具體為與選擇對(duì)象相對(duì)應(yīng)的上游模型內(nèi)發(fā)布的對(duì)象, 并呈高亮顯示, 如圖11(3)所示;
2) 在飛機(jī)翼面結(jié)構(gòu)設(shè)計(jì)中, 往往形成二級(jí)或多級(jí)關(guān)聯(lián), 如圖11(3)和(4)所示. 選擇上游模型中某發(fā)布的對(duì)象, 不僅與其具有直接關(guān)聯(lián)的模型及內(nèi)部對(duì)象呈高亮顯示, 其下游所有間接影響的模型及模型內(nèi)具體對(duì)象也均呈高亮顯示.
本文進(jìn)行關(guān)聯(lián)設(shè)計(jì)及變更影響分析, 研究?jī)?nèi)容具有普遍通用性, 不僅適用于飛機(jī)翼面結(jié)構(gòu), 同樣適用于其他復(fù)雜產(chǎn)品的快速設(shè)計(jì)和變型設(shè)計(jì).
建立了產(chǎn)品零件關(guān)聯(lián)關(guān)系的計(jì)算機(jī)表示模型, 實(shí)現(xiàn)了關(guān)聯(lián)信息的有效管理, 提出了面向產(chǎn)品關(guān)聯(lián)設(shè)計(jì)的廣度優(yōu)先遍歷求解方法, 在關(guān)聯(lián)信息計(jì)算機(jī)表示模型關(guān)系圖中, 按照關(guān)聯(lián)傳播路徑自上而下地遍歷搜索, 進(jìn)行產(chǎn)品結(jié)構(gòu)變更影響分析, 實(shí)現(xiàn)了關(guān)聯(lián)傳播范圍的求解.
開(kāi)發(fā)了關(guān)聯(lián)設(shè)計(jì)工具集, 以飛機(jī)翼面結(jié)構(gòu)為例, 驗(yàn)證了關(guān)聯(lián)設(shè)計(jì)技術(shù)及求解方法的可行性和有效性. 工具集支持向前進(jìn)行來(lái)源分析, 向后進(jìn)行影響分析. 通過(guò)分析確定模型關(guān)聯(lián)傳播范圍, 并及時(shí)通知下游設(shè)計(jì)人員, 讓其知道更新操作影響哪些下游模型, 本模型需要更新是由上游哪個(gè)模型引發(fā), 以便出錯(cuò)回溯并有針對(duì)性地更改設(shè)計(jì), 并對(duì)其進(jìn)行同步更新, 提高設(shè)計(jì)的效率, 保證上下游模型數(shù)據(jù)的一致, 實(shí)現(xiàn)設(shè)計(jì)的并行和協(xié)同.
[1] 謝友柏. 現(xiàn)代設(shè)計(jì)理論中的若干基本概念[J]. 機(jī)械工程學(xué)報(bào), 2007, 43(11): 7-16.
Xie Youbai. Some basic concepts in modern design theory[J]. Journal of Mechanical Engineering, 2007, 43(11): 7-16. (in Chinese)
[2] 宮中偉, 莫蓉, 楊海成, 等. 基于經(jīng)驗(yàn)的工程變更傳播路徑預(yù)測(cè)方法[J]. 航空學(xué)報(bào), 2013, 34(3): 677-685.
Gong Zhongwei, Mo Rong, Yang Haicheng, et al. History-based engineering change propagation predicting[J]. Acta Aeronauticaet Astronautica Sinica, 2013, 34(3): 677-685. (in Chinese)
[3] 陳陽(yáng)平. 基于數(shù)字樣機(jī)的直升機(jī)協(xié)同設(shè)計(jì)研究與應(yīng)用[D]. 南京: 南京航空航天大學(xué), 2010.
[4] 賈海利, 王愛(ài)民, 唐承統(tǒng). 基于產(chǎn)品結(jié)構(gòu)界面關(guān)聯(lián)模型的協(xié)調(diào)設(shè)計(jì)技術(shù)[J]. 計(jì)算機(jī)集成制造系統(tǒng), 2011, 17(5): 897-907.
Jia Haili, Wang Aimin, Tang Chengtong. Coordinate design technology based on product structure interface association model[J]. Computer Integrated Manufacturing Systems, 2011, 17(5): 897-907. (in Chinese)
[5] Baya V. Information handling behavior of designers during conceptual design: three experiments[D]. California: Standford University, 2006.
[6] 楊帆, 唐曉青, 段桂江. 基于特性關(guān)聯(lián)網(wǎng)絡(luò)模型的機(jī)械產(chǎn)品工程更改傳播路徑搜索方法[J]. 機(jī)械工程學(xué)報(bào), 2011, 47(19): 97-106.
Yang Fan, Tang Xiaoqing, Duan Guijiang. Searching model of change propagation paths for mechanical product based on characteristic linkage network[J]. Journal of Mechanical Engineering, 2011, 47(19): 97-106. (in Chinese)
[7] Rouibaha K, Caskeyb K R. Change management in concurrent engineering from a parameter perspective[J]. Computers in Industry, 2003, 12(5): 15-34.
[8] Clarkson P J, Simons C, Eckert C. Predicting change propagation in complex design[J]. Journal of Mechanical Design, 2004, 126(5): 788-797.
[9] Reddie K R, Moon Y B. A framework for managing engineering change propagation[J]. International Journal of Innovation & Learning, 2009, 6(5): 461.
[10] 何睿, 唐敦兵, 薛建彬. 基于設(shè)計(jì)結(jié)構(gòu)矩陣的工程變更傳播研究[J]. 計(jì)算機(jī)集成制造系統(tǒng), 2008, 14(4): 656-660.
He Rui, Tang Dunbing, Xue Jianbin. Engineering change propagation based on design structure matrix[J]. Computer Integrated Manufacturing Systems, 2008, 14(4): 656-660. (in Chinese)
[11] 方泳澤, 謝書(shū)童. 基于有向圖的工程變更傳播分析的研究[J]. 圖學(xué)學(xué)報(bào), 2012, 33(5): 132-136.
Fang Yongze, Xie Shutong. Propagation analysis of engineering change based on digraph[J]. Journal of Graphics, 2012, 33(5): 132-136. (in Chinese)
[12] Eckert C, Clarkson P J, Zanker W. Change and customisation in complex engineering domains [J]. Research in Engineering Design, 2004, 15(1): 1-21.
[13] Chen X, Gao S M, Yang Y D, et al. Multi-level assembly model for top-down design of mechanical products[J].Computer-Aided Design, 2012, 44(10): 1033-1048.
[14] 田憲偉, 曲直. 基于MBD的關(guān)聯(lián)設(shè)計(jì)技術(shù)在飛機(jī)研制中的應(yīng)用[J]. 航空工程進(jìn)展, 2013, 4(3): 381-385.
Tian Xianwei, Qu Zhi. The application of associated design technology based on MBD in aircraft development [J]. Aeronautical Manufacturing Technology, 2013, 4(3): 381-385. (in Chinese)
[15] 劉俊堂, 劉看旺. 關(guān)聯(lián)設(shè)計(jì)技術(shù)在飛機(jī)研制中的應(yīng)用[J]. 航空制造技術(shù), 2008(14): 45-47.
Liu Juntang, Liu Kanwang. The application of associated design technology in aircraft development[J]. Aeronautical Manufacturing Technology, 2008(14): 45-47. (in Chinese)
[16] Verhagen W J C, Bermell P. A critical review of knowledge-based engineering: an identification of research challenges[J]. Advanced Engineering Informatics, 2012, 11(26): 5-15.
ProductAssociatedDesignandChangeImpactAnalysis
LIU Yan-chen1, LIU Yu-bin1, SHI Yi-kun2, TANG Jia-peng1, LI Zhan-fen3
(1. College of Mechatronic Engineering, North University of China, Taiyuan 030051, China;2. China Capital Aerospace Machinery Company, Beijing 100076, China;3. Network Information Center, Taiyuan Institute of Technology, Taiyuan 030008, China)
According to associated design technology and management strategy of product associated design information, computer representation model of associated information is built. Breadth first search algorithm oriented product associated design is proposed to achieve the solution for the associated propagation range of models and the parts, association and parameters need to be addressed are obtained. Associated design toolset based on CATIA platform is developed to support designers to quickly and automatically update in real time, so as to realize achieve rapid reconstruction of product models and fast design iteration, improve work efficiency and design quality, accelerate the development process of the product. An aircraft vertical tail structure instance is presented to demonstrate that the associated design toolset and algorithm are feasible and effective.
datum reference; parameter association; change; associated propagation range
1673-3193(2017)03-0282-09
2016-11-12
劉彥臣(1974-), 男, 副教授, 博士, 主要從事先進(jìn)制造技術(shù)的研究.
V221
A
10.3969/j.issn.1673-3193.2017.03.007