艾 輝 陳立平 李玉梅 熊體凡
華中科技大學國家CAD支撐軟件工程技術研究中心,武漢,430074
隨著客戶對個性化產品的需求日益提高,如何快速響應市場,開發出符合客戶功能和性能需求的產品已成為企業在產品開發中迫切需要解決的問題。產品配置技術作為實現大規模定制的關鍵技術,能有效支持產品快速定制[1]。目前,國內外學者對產品配置技術做了大量的研究,提出了多種產品配置模型和相應的求解策略。祁國寧等[2]提出了一種基于產品族主結構進行定制產品配置設計的方法,該方法通過產品的主模型和主文檔進行定制產品的變型設計,達到定制產品快速設計的目的。Jiao等[3]從功能、技術和結構三個角度對產品族模型進行統一的描述,提出了產品族建模的三視圖方案,為早期模塊化設計與產品族建模提供了有效支持。Si mpson等[4]通過共享通用模塊和結構建立了以產品平臺為基礎的面向產品族的設計模塊,以滿足客戶多樣化的產品定制需求。這些研究表明模塊化和產品族是實現配置設計的重要基礎。產品配置是一種典型的基于知識的產品設計方法,在配置設計過程中需要大量的產品知識[5]。現代復雜產品通常綜合了機械、電子、控制、液壓等多個學科的領域知識,有必要將描述產品的多領域知識進行統一、有效地表達、組織和管理,并在產品族模型中融入這些知識,實現產品多學科協同優化配置設計。
現有的配置設計主要集中在可配置的產品族設計研究上,對于配置方案改變所造成的性能變化缺少相關研究。當形成新的配置方案時,不能及時地得到該方案產品的性能參數,驗證是否滿足客戶對定制產品的性能需求,使得設計過程效率低、周期長。因此,需要一種機制對產生的產品配置方案進行性能預測,使其能有效地連接需求配置和工程配置[6]。文獻[7]提出了基于最小二乘逼近的產品配置方案綜合性能預測方法。該方法主要通過性能參數之間的權重、模塊實例與性能參數的矩陣以及客戶需求與性能參數之間的矩陣確定配置性能模糊值,然后基于二乘逼近擬合模糊值與實際值之間的函數關系,通過擬合曲線求出預測值。文獻[8]提出了基于粗糙集神經網絡的配置性能預測方法,該方法通過產品族中典型產品變型的歷史數據挖掘來預測新產品變型的基本性能。這些方法都依賴歷史數據,預測精度容易受主觀因素和經驗影響。隨著數字仿真技術的發展,數字樣機技術[9]綜合了多領域的知識對產品性能進行分析,已經廣泛應用于產品設計過程中。因此,基于多領域仿真模型的仿真可以作為配置產品性能預測的一種直接和有效的方式。
本文提出了集成多領域協同配置與性能仿真的產品快速設計方法,以集成多領域知識的產品族模型進行配置推理,快速生成產品方案,并自動映射構建基于Modelica語言的多領域仿真模型,實現基于仿真的配置產品性能預測。產品族模型能有效組織和重用產品的多領域知識,是進行多領域協同配置的基礎。基于仿真的配置產品性能預測結果更加直觀和精確,可為確定合理的產品配置方案提供保障。
基于配置與仿真的產品設計是一個面向復雜產品的“需求分析-配置設計-仿真分析-再配置”的過程。如圖1所示,首先,客戶提出個性化定制需求,設計者將定制需求轉化為配置參數,然后確定相應的產品族模型,調用多領域協同配置引擎進行配置推理,獲得配置方案。然后在定型產品庫中對配置方案進行搜索,如果存在相同配置方案則提取產品性能數據;如果不存在相同配置方案,則根據產品方案和多領域仿真模型庫構建多領域仿真模型實例,并調用多領域仿真軟件進行性能仿真,獲取產品性能數據。最后,對產品性能數據進行評估并反饋給用戶,如果用戶對配置方案滿意則將新產品配置方案及相關性能信息輸出到定型產品模型庫,完成配置設計過程;如果用戶對配置方案不滿意則修改配置參數再配置,最終獲得滿意的配置方案。
這個設計過程主要包括兩部分。第一部分是基于多領域知識的協同產品配置:將產品方案設計作為一個配置問題,以集成多領域知識產品族模型為基礎,通過多領域協同配置引擎的求解快速生成產品設計方案。關鍵技術包括領域知識的分類與表達方法,構建集成多領域知識的產品族模型以及協同配置推理機制。第二部分是產品配置方案的性能預測:引入多領域統一建模語言及仿真技術,實現基于多領域仿真模型的產品性能仿真分析。關鍵技術包括面向產品配置方案的多領域仿真模型實例的快速構建。

圖1 基于配置與仿真的產品設計過程

圖2 領域知識分類及形式化表達
復雜產品的設計涉及機械、電子、控制等多個學科的領域知識,每個領域有其特定的設計知識,對于不同的設計對象,又有不同的領域知識共同描述,并隨著產品設計過程的深入和優化,這些知識信息不斷地分裂和聚合。因此,需要一種合理的方法來統一表達和組織這些知識,實現多領域知識的協同優化設計。
如圖2所示,按照表現形式的不同,領域知識包括公式、微分方程、表格、圖形、技術說明等。為了實現這些知識的計算機識別與計算,必須對這些知識進行結構化分析與形式化表達。產品方案的設計過程是產品設計參數的確定過程,因此,可以把領域知識轉化為設計參數的約束關系,約束關系可以通過計算表達式和產生式規則來表達。特性參數是描述知識的一種重要手段,每一個領域的知識都可以用一組特性參數來描述。如減速器產品的動力學知識模型可以用特性參數集{功率,轉速,輸出轉速,輸入轉矩,效率}來表示。以單個領域的知識為對象,提取其包含的設計參數作為該領域的特性參數,并在此基礎上建立領域知識模型。
定義1 領域知識模型是對領域知識的抽象描述,封裝了該領域的特定知識,可描述為

式中,PD為該領域知識的特性參數集;CDI為該領域知識轉化而來的約束集,約束通過計算表達式和產生式規則來表達。
復雜產品的設計涉及的多個領域相互獨立而又互相耦合,其獨立性表現在一個領域知識模型存在各自的設計知識,具有固有的特性,不受其他領域知識模型的影響,耦合性體現在一些重要的特性參數存在于多個領域知識模型中,使得領域知識模型相互約束。為了有效地集成這些領域知識,建立的多領域知識模型應該具備以下特性:
(1)局部封裝性。由于每個領域的獨立性,需要對單個領域進行封裝,描述其特有的知識。
(2)可擴展性。由于描述設計對象的不同,集成的多領域知識模型并不完全相同,并且隨著設計過程的深入,有不同的領域知識模型加入或者取消,因此,集成的多領域知識模型是一個動態的,可擴展的網絡。
(3)參數驅動特性。由于多領域知識模型之間的耦合性,可以通過參數約束關系將各個領域知識模型連接在一起,構成動態網絡。在這個網絡當中任何一個領域知識模型的特性參數的改變都可以通過連接參數驅動,使得與之相關的領域知識模型做出相應的更改。根據以上分析,本文構建了一個基于動態網絡的多領域知識模型。
定義2 基于動態網絡的多領域知識模型是以參數為紐帶,將各領域知識模型連接在一起,形成的一個全面描述產品多個領域相互驅動、相互約束的立體知識模型網絡,可以描述為
MDM = (CDM,CDE)
式中,CDM 為網絡中所包含的領域知識模型集,CDM ={DMi|i=1,2,…,m};m為領域知識模型個數;CDE為領域知識模型之間的參數約束關系。
如圖3所示,基于約束網絡的多領域知識模型可以將復雜產品涉及的幾何結構、電氣、控制、運動學、動力學等各領域知識模型有效集成起來,通過這些領域知識模型的互聯及參數約束關系,實現產品配置設計過程的多學科協同優化。
為了在產品配置過程中利用多領域知識進行協同配置推理,必需建立集成多領域知識的產品族模型。產品族模型是以零部件族和模塊化為基礎的,是一個產品系列的抽象表達。文獻[10]提出了產品功能結構單元的定義,采用面向對象的方法,將功能和原理作為產品族零部件類的特征屬性與產品結構封裝在一起,使產品功能結構單元成為含有功能和原理的信息載體。本文借用該思想,建立產品配置設計單元(product configuration design unit,PCDU),對多領域知識進行封裝,并在此基礎上構建產品族模型。
定義3 PCDU是對在功能、結構和原理上具有相似特征的零部件族進行抽象和歸納得到的設計視圖,是構成產品族模型的基本單位,可以描述為

圖3 基于動態網絡的多領域知識模型

式中,U為PCDU的特性參數域;V為該PCDU的值域;C為U在V上實現的約束。
PCDU作為基本的設計對象封裝了多領域知識,將其蘊含的功能、結構、原理性的設計性知識通過特性參數及約束進行表達。根據定義1和定義2可以得到:

式中,PDi為第i個領域的特性參數集;m為領域個數。
產品族模型按照樹狀層次結構可以分解為若干個PCDU。在產品族模型的基礎上,通過對PCDU的實例化實現產品配置設計。因此,構建產品族模型需要按照產品的拓撲結構建立PCDU之間的裝配約束關系。假設配置單元PUi是PUj的父單元,那么它們之間的裝配關系可以描述為一個有序對

式中,CAij為裝配約束;Nij為PUj裝配在PUi上的數量,由PUi的參數取值來決定,有Nij=CAij(Ui);Ui為PUi的參數集。
當Nij=0時,表示PUi不用裝配PUj。由于在結構設計中,子零部件的部分參數是由父零部件的參數決定的,因此,可用CPij表示PUi與PUj之間的特性參數連接約束,實現PCDU之間的參數傳遞。
定義4 產品族模型是該系列產品所有PCDU的有序集合,由PCDU依據一定的層次結構和約束關系形成的多叉產品結構樹,可以描述為

式中,F為產品族模型的面向配置的一組特性參數;Q為PCDU 集合,有Q= {PUi|i=1,2,…,q},q為產品族模型中所包含的所有不同PCDU的總數;A為產品族模型中的PU之間的裝配結構關系集,表示非最底層單元PUi的結構裝配關系,A = {〈PUi,PUj〉|PUj∈Qi};Qi為PUi所有子單元的集合。
集成多領域知識的產品族模型以PCDU為基本構成單位,通過特性參數和約束將領域知識進行封裝,模型中以裝配約束關系建立PCDU之間的連接關系和驅動特性參數實現PCDU的實例化。
根據前面的定義,產品配置實質上是面向用戶需求,對集成多領域知識的產品族模型中的特性參數的求解過程。客戶需求是產品配置設計的輸入,表達了定制產品應該具有的功能、性能等個性化定制需求。由于客戶的個性化定制需求的多樣性和模糊性,不能直接作為配置設計的輸入參數,必需參照產品領域知識的規范化表達進行統一轉化。每個產品都有不同的特性與其他產品區別開來,這些關鍵特征可以用特性參數描述。根據規范化的特性參數集,我們將客戶的需求映射為一組配置特性參數 X = {x1,x2,…,xn}。
定義5 產品配置推理過程是在產品族模型上,根據配置特性參數對模型中的PCDU進行實例化的過程,描述為

式中,f為配置推理過程;X為配置特性參數;PF M 為產品族模型;PS為通過配置推理得到的可行性產品設計方案集。
配置推理過程中以特性參數為媒介,由約束驅動特性參數計算求解獲得可行的產品設計方案。約束具體表現為計算表達式和產生式規則,通過配置推理引擎進行解析和計算。產品設計方案的配置推理過程如圖4所示。

圖4 配置推理過程
現代復雜產品通常都綜合了機械、電氣電子、液壓、控制等多種學科的領域知識,無論是系統級的產品方案設計,還是部件級的詳細參數設計,都涉及多個不同相關領域知識。通過多領域協同配置推理獲得的產品配置方案包含了這些知識,為了驗證產品設計方案的合理性和產品的整體性能是否滿足客戶需求,本文采用數字仿真技術進行仿真分析。隨著科技的發展,針對復雜產品的建模與仿真技術正朝著多領域統一建模與協同仿真的方向發展。基于統一建模語言的方法對來自不同領域的系統構件采用統一方式進行描述,徹底實現了不同領域模型之間的無縫集成和數據交換。Modelica語言是目前盛行的一種多領域物理系統建模語言,它具備模型重用性高、建模簡單方便、無須符號處理等許多優點,其開放的模型庫讓用戶可以很容易地開發自己的模型或采用已有的模型來滿足自己的獨特需求,也可以將定制模型加入庫中以備重用[11]。根據這些特點,可以構建基于Modelica的產品族仿真模型,并建立產品配置方案的特性參數和產品族仿真模型之間的映射關系,通過特性參數驅動快速生成多領域物理仿真模型實例,在多領域仿真平臺下進行產品性能仿真,實現基于仿真的配置方案性能預測。
Modelica語言采納了陳述式設計思想,其軟件組件模型支持根據實際系統的物理拓撲結構組織構建仿真模型,產品族多領域仿真模型可以按照產品結構進行模塊化劃分,建立與面向配置的產品族模型相似的樹形層次化結構模型。在模塊化層次結構中,每個對象模型可以進一步分解成子模型,各個子模型通過標準接口組裝成完整的系統級仿真模型。子模型包含組件、方程、注解等主要信息,其中,組件包含常數、參數、變量和其他模型的對象,變量值記錄求解過程中當前時刻的結果,常數用來定義固定值,參數表示在每次仿真過程中不變的常量,在仿真之前需要對其賦值,一般是代表該模型的特性參數;方程包括等式方程、連接方程、組件變型方程和賦值方程等,用來描述不同領域子系統的物理規律和現象;注解包括可視化圖形信息、版本信息和說明信息等。因此,根據產品配置方案中的特性參數對產品族多領域仿真模型的參數進行賦值,可實例化仿真模型。本文使用基于Modelica語言的復雜機械系統統一建模平臺軟件MWor ks來進行建模與仿真。Mwor ks建模器[12]建模包括兩種途徑:文本建模和圖形建模,其中文本中顯示的是Modelica語言描述的仿真模型。可以根據模型文本中的關鍵字“parameter”和參數名稱,建立與產品配置方案對應的模塊的特性參數的映射關系,完成模型參數的賦值。以電機模型為例,如圖5所示,圖中產品配置方案中電機對仿真模型中的特性參數有轉動慣量、增益、阻尼、最高轉數、最大電流等。

圖5 產品配置方案與仿真模型映射關系
面向產品配置方案的建模仿真過程如圖6所示,包括三部分:
(1)產品族仿真模型建模。按照產品族模型進行系統模塊分解,以子模塊為單位定制仿真模型,這個建模過程可以充分繼承和重用Modolica標準多領域基本模型。完成子模型建模后,使用標準接口將這些子模型進行系統組裝,構建產品族仿真模型,最終建立與產品族模型庫對應的產品族仿真模型庫。
(2)面向產品配置方案的仿真模型實例生成。由于產品族仿真模型與產品族的對應關系,根據產品配置方案的產品族模型引用相應產品族仿真模型,通過配置方案的具體參數對產品仿真模型進行參數賦值,加上步長、仿真時間數據生成仿真模型實例。
(3)性能仿真分析。在Mwor ks軟件環境中,將仿真模型實例進行編譯、仿真,仿真結果以二維圖表或三維動畫顯示。

圖6 面向產品配置方案的建模仿真過程
機械手是典型的機電一體化產品,按照應用的不同環境和工作內容的需求,必需進行定制。機械手一般都為多關節的空間機構,其運動副通常有移動副和轉動副兩種,運動機構一般由液壓、氣動、電氣裝置驅動。其本體結構模型是依據其各個關節的動作行為來建立的,可獨立地實現垂直方向上升、下降和旋轉,以及水平方向的旋轉和移動。各個關節模塊具有相對獨立性,可以將驅動電機、減速器、傳感器等集成在一個關節中,實現模塊化設計。關節模塊繼續向下分解為減速器、電機等子模塊,通過將不同關節模塊連接,易于組成規格不同的機械手,以適應不同工作環境下的功能和性能需求。因此,可以根據模塊化設計原理對機械手進行模塊化劃分,建立PCDU,并在此基礎上構建機械手產品族模型,實現機械手產品的系列化和定制開發。
利用前述產品設計方法和PLM、多領域仿真系統開發了面向定制產品的快速設計系統。以機械手產品的定制為例描述該系統,如圖7所示。設計部門通過分析機械手產品族信息,綜合多領域知識,建立PCDU。以PCDU為節點建立不同系列產品族模型,相應地按照產品族結構劃分建立基于Modelica的產品族仿真模型。當客戶提出機械手定制需求,如工作環境、安裝環境、功能等,對定制需求進行分析,確定機械手的配置特性參數。根據配置特性參數選擇六自由度機械手產品族模型,對該產品族模型的配置特性參數進行初始化賦值,然后通過協同配置推理獲得產品配置方案。由配置方案具體特性參數映射到產品族仿真模型中,生成六自由度機械手仿真模型實例,并導入到多領域統一建模仿真平臺軟件Mworks中進行編譯、仿真,仿真數據可以以二維圖表和三維動畫直觀顯示,提取產品仿真性能參數與目標參數進行對比,確定合理的產品設計方案,如圖7中軸3的運動角仿真結果。由于產品族模型中融入了多領域知識,并集成有效的仿真工具,在配置設計過程中能更快速地獲得滿足客戶定制需求的產品方案。

圖7 六自由度機械手的配置仿真設計實例
(1)以特性參數和約束為表達形式,建立了基于動態網絡的多領域知識模型,為組織和描述多領域知識提供了一種有效的方法。
(2)以PCDU為基本單元封裝和重用產品各領域設計知識,建立了集成多領域知識的產品族模型,為實現產品多領域協同配置設計提供支持。
(3)集成多領域仿真工具,將產品設計方案自動映射構建基于Modelica語言的多領域仿真模型,對產品設計方案進行性能仿真和分析,提供可視化的仿真過程和分析報告,使客戶能直觀地了解產品性能,減少試驗環節,有效地縮短了產品開發周期。
[1] 祁國寧,顧新建,譚建榮,等.大批量定制技術及其應用[M].北京:機械工業出版社,2003.
[2] 祁國寧,楊青海,黃哲人,等.面向大批量定制的產品開發設計方法研究[J].中國機械工程,2004,15(19):1697-1701.
[3] Jiao J X,Tseng M M,Duffy V G,et al.Product Fa mily Modeling for Mass Custo mization[J].Co mputers &Industrial Engineering,1998,35(3/4):495-498.
[4] Si mpson T W,Jonathan R A M,Misstree F.Product Platfor m Design:Method and Application[J].Research in Engineering Design,2001,13(1):2-22.
[5] Stu mptner M.An Overview of Knowledge-based Configuration[J].AI Co mmunications,1997,10(2):111-125.
[6] 王愛民,肖田元,孟明辰.面向大規模定制的配置設計技術研究[J].計算機集成制造系統,2004,10(11):1326-1329.
[7] 王海軍,孫寶元,張強,等.支持個性化產品定制的變型配置設計方法[J].機械工程學報,2006,42(1):90-97.
[8] 王忠浩,邵新宇,張國軍,等.基于粗糙集神經網絡的產品族配置性能預測方法[J].機械工程學報,2007,43(5):85-90.
[9] 陳立平,張云清,任衛群,等.機械系統動力學分析及ADA MS應用教程[M].北京:清華大學出版社,2005.
[10] 譚建榮,李濤,戴若夷.支持大批量定制的產品配置設計系統的研究[J].計算機輔助設計與圖形學學報,2003,15(8):931-937.
[11] 趙建軍,丁建完,周凡利,等.Modelica語言及其多領域統一建模與仿真機理[J].系統仿真學報,2006,18(增刊2):570-573.
[12] 吳義忠,吳民峰,陳立平.基于 Modelica語言的復雜機械系統統一建模平臺研究[J].中國機械工程,2006,17(22):2391-2396.