專利名稱:基于復雜網(wǎng)絡邊介數(shù)的模塊劃分方法
技術(shù)領(lǐng)域:
本發(fā)明涉及機械產(chǎn)品設計領(lǐng)域,具體涉及ー種基于復雜網(wǎng)絡邊介數(shù)的模塊劃分方法。
背景技術(shù):
面向大批量定制和大批量定制的設計技術(shù)是建立在模塊化基礎(chǔ)上的。產(chǎn)品的模塊化設計是在對一定范圍內(nèi)的不同功能或相同功能不同性能、不同規(guī)格的產(chǎn)品進行功能分析的基礎(chǔ)上,劃分并設計出一系列功能模塊。通過模塊的選擇和組合可以構(gòu)成不同的產(chǎn)品,通過對不同模塊的組合實現(xiàn)了以有限資源生產(chǎn)出盡可能多的產(chǎn)品品種。產(chǎn)品模塊化是企業(yè)產(chǎn)品資源重用的基礎(chǔ),也是實現(xiàn)產(chǎn)品配置設計和變型設計的關(guān)鍵。產(chǎn)品模塊化綜合考慮了產(chǎn)品對象,把產(chǎn)品按照功能分解成不同用途和性能的模塊,并使模塊的接ロ(結(jié)合要素、形狀和尺寸等)標準化,選擇不同的模塊可以迅速組成滿足各種要求的產(chǎn)品。模塊化設計是大批量定制的一個關(guān)鍵使能技木。許多專家和學者對模塊化設計進行了大量的研究,并取得了一定的成果,但是模塊化設計的ー些關(guān)鍵技術(shù)如模塊劃分等仍然沒有得到完善解決。近年來,隨著復雜網(wǎng)絡理論研究的發(fā)展,其應用領(lǐng)域也越來越廣。但主要集中在交通網(wǎng)、互聯(lián)網(wǎng)、電カ網(wǎng)等領(lǐng)域,在機械領(lǐng)域里的應用極少。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種基于復雜網(wǎng)絡邊介數(shù)的模塊劃分方法,該模塊劃分方法對技術(shù)人員的設計經(jīng)驗依賴較低,且具有一定的通用性,并可以在一定程度上實現(xiàn)智能化,可以在較短的時間內(nèi)實現(xiàn)對機械產(chǎn)品的模塊劃分。為解決上述問題,本發(fā)明是通過以下方案實現(xiàn)的一種基于復雜網(wǎng)絡邊介數(shù)的模塊劃分方法,包括如下步驟(I)給出給定機械產(chǎn)品內(nèi)部所有零部件相互之間的裝配約束關(guān)系式;(2)根據(jù)給定機械產(chǎn)品的零部件數(shù)及上述零部件間的裝配約束關(guān)系建立裝配關(guān)系網(wǎng)絡;(3)計算給定機械產(chǎn)品零部件的裝配關(guān)系網(wǎng)絡中各條邊的邊介數(shù);(4)去掉網(wǎng)絡中邊介數(shù)最大的邊,將網(wǎng)絡分成若干子網(wǎng)絡;(5)對各個子網(wǎng)絡重復計算邊介數(shù)和去掉網(wǎng)絡中邊介數(shù)最大的邊的過程,直到分解的所有子網(wǎng)絡符合設定的模塊劃分粒度為止,此時所得子網(wǎng)絡即為劃分出的功能模塊;(6)根據(jù)劃分出的功能模塊建立功能模塊庫,該功能模塊庫記錄有各個功能模塊所包含的零部件。當步驟(3)對無權(quán)無向無環(huán)網(wǎng)絡進行邊介數(shù)搜索時,其過程如下采用循環(huán)與鄰接表的數(shù)據(jù)結(jié)構(gòu)將網(wǎng)絡的所有結(jié)點及其對應的鄰接點按順序依次存入鄰接表,然后從網(wǎng)絡中任選一條邊依次捜索所有包含該邊的任意兩點間的最短路徑,并記錄該邊的邊介數(shù),如此循環(huán),直到網(wǎng)絡中所有邊的邊介數(shù)都求出來為止。
本發(fā)明將復雜網(wǎng)絡的有關(guān)理論應用到模塊劃分中,則可以很好地分析機械產(chǎn)品中零部件裝配關(guān)系。如果用結(jié)點來表示機械產(chǎn)品中的零件或部件,以邊來表示零件或部件之間的裝配關(guān)系,因為零部件間的聯(lián)接關(guān)系是相互的,且只考慮它們的聯(lián)接關(guān)系,不考慮裝配關(guān)系重要程度,這樣就可以組成ー個無權(quán)無向無環(huán)網(wǎng)絡。計算出各邊的邊介數(shù),則可以形象清晰地看到各聯(lián)接關(guān)系的緊密和重要程度,邊介數(shù)越大,說明它的聯(lián)接重要度越大,逐步去掉邊介數(shù)大的邊,就可以將整個機械網(wǎng)絡分成一個ー個的小集團(即模塊)。改變?nèi)サ暨吔閿?shù)的程度,即可得到不同粒度的模塊形式。這樣就可以得到多種模塊劃分方案以供分析選擇。與現(xiàn)有技術(shù)相比,本發(fā)明能夠在對企業(yè)某型成熟系列化機床銷售數(shù)據(jù)和訂單進行數(shù)據(jù)分析后,對未來產(chǎn)品的發(fā)展和客戶的個性化需求進行了定位和預測。在此基礎(chǔ)上,成功地實現(xiàn)了 1、按照功能、結(jié)構(gòu)特點及加工裝配等條件,進行了模塊劃分;2、通過自定義算法,合理地對模塊間的接ロ進行了標準化;3、實現(xiàn)了模塊的捜索以及變型設計技術(shù)下定制模塊的快速生成;4、實現(xiàn)了模塊在軟件環(huán)境下的自動組合。通過模塊化設計使得機床設計周期從3個月縮短到幾個小時即可完成。
圖1為ー種無權(quán)無向無環(huán)網(wǎng)絡;圖2為邊介數(shù)搜索流程圖;圖3為基于復雜網(wǎng)絡邊介數(shù)集聚特性的模塊劃分框圖;圖4為移除邊11-24后所得的兩個子網(wǎng)絡W11、W24 ;圖5為移除邊9-17后所得的兩個子網(wǎng)絡W9、W17 ;圖6為由圖1所示網(wǎng)絡劃分的五個子模塊(a、b、c、d、e)。
具體實施例方式下面對本發(fā)明一種基于復雜網(wǎng)絡邊介數(shù)的模塊劃分方法進行詳細說明參數(shù)化建模技術(shù)是當今CAD技術(shù)中非常重要的建模技術(shù)之一,是產(chǎn)品建模中ー個很重要的手段,被普遍應用在系列化產(chǎn)品的設計之中。參數(shù)化模型是通過約束表達產(chǎn)品模型的形狀特征,定義一組參數(shù)來控制產(chǎn)品的設計結(jié)果,因此可以通過修改設計參數(shù)來更改產(chǎn)品模型或創(chuàng)建相似產(chǎn)品模型。參數(shù)化設計的基本思想是在基于約束的產(chǎn)品描述方法上,以ー組參數(shù)來控制產(chǎn)品幾何模型所對應的一組結(jié)構(gòu)尺寸,且參數(shù)和尺寸之間是顯式對應的關(guān)系,因而可以通過修改尺寸參數(shù)來驅(qū)動幾何模型。參數(shù)化設計方法與傳統(tǒng)設計方法的主要區(qū)別是前者采用的基于約束的產(chǎn)品描述方法將產(chǎn)品的整個設計過程進行了存儲,所以可以設計出一族相似的產(chǎn)品;而后者設計出的是單ー的產(chǎn)品。經(jīng)過十幾年的發(fā)展,如今零件級的參數(shù)化設計技術(shù)已經(jīng)相對成熟,ー些常用的三維設計軟件(如SolidWorkS、CATIA、UG、PRO/E等)都提供了易學易用的零件級參數(shù)化設計功能。但到目前為止,部件級和產(chǎn)品級的參數(shù)化建模技術(shù)還不夠成熟,主要是先對零件級實施參數(shù)化技木,建立零件級的參數(shù)化模型,再通過對零件級參數(shù)化模型添加裝配約束來構(gòu)建部件級與產(chǎn)品級的參數(shù)化模型。各種產(chǎn)品都是由不同部件或零件組成的,而部件又是由子部件或零件組成的,因此,按此規(guī)律逐層分解,最終可以將整個產(chǎn)品分解成最小的組成單元,即零件。如果先采用參數(shù)化技術(shù)建立零件級的參數(shù)化模型,再通過同一部件中各零件之間裝配約束關(guān)系(尺寸約束關(guān)系)進行裝配,就可以建立由零件級的參數(shù)化模型以及裝配約束關(guān)系(主要為尺寸約束關(guān)系)所組成的部件級參數(shù)化模型,以此類推,一直可以類推到產(chǎn)品,即產(chǎn)品的參數(shù)化模型可以通過零件級的參數(shù)化模型和各零件之間的裝配約束關(guān)系而得到。本發(fā)明選用現(xiàn)今比較流行的SolidWorks三維造型軟件作為參數(shù)化設計工具。Solidfforks三維造型軟件是美國SolidWorks公司在繼承和總結(jié)大量機械CAD軟件設計經(jīng)驗的基礎(chǔ)上,于1995年11月首家推出的基于Windows環(huán)境下開發(fā)的三維CAD軟件,因為其技術(shù)創(chuàng)新符合CAD技術(shù)發(fā)展的潮流與趨勢,自從誕生以來,便受到廣大用戶的青睞,尤其是中小型企業(yè)。目前,SolidWorks三維軟件在機械行業(yè)被普遍采用,是市場份額增長較快、市場前景較好、技術(shù)發(fā)展較快、性價比較優(yōu)的軟件之一。SolidWorks軟件擁有十分強大的功能,涵蓋了零件造型、鈑金設計、曲面建模、從裝配圖的設計到工程圖的繪制、從有限元分析到動態(tài)仿真等領(lǐng)域。它可以通過草圖繪制、拉イ申、旋轉(zhuǎn)、抽殼、陣列等操作來實現(xiàn)零件建摸;可以通過掃描、放樣、填充等功能來實現(xiàn)復雜曲面繪制;可以通過智能化裝配技術(shù)完成零部件裝配,而且可以動態(tài)的查看裝配體的仿真 運動,并對運動的零部件進行動態(tài)的干涉檢查和間隙檢查;可以完成三維圖到工程圖的自動轉(zhuǎn)化,包括尺寸及公差等信息的標注;可以通過SolidWorks提供的COSMOSXPress插件模塊,直接對零件進行有限元分析等功能。(I)裝配約束關(guān)系的提取當前主流的三維軟件,如SolidWorks、CATIA、UG、PR0/E等,都提供了二次開發(fā)接ロ(API),使用戶能在軟件本身功能的基礎(chǔ)上開發(fā)新的功能模塊,滿足特定的需求。因此,可以通過二次開發(fā)技木,對相關(guān)的三維軟件進行二次開發(fā),開發(fā)裝配約束關(guān)系提取模塊,利用該模塊可以提取相應三維軟件中打開的產(chǎn)品三維模型的裝配約束關(guān)系。本發(fā)明利用VisualC++6. 0平臺對SolidWorks2008進行二次開發(fā),開發(fā)出能與SolidWorks2008集成的裝配約束關(guān)系提取模塊。利用該模塊可以很方便地提取出SolidWorks2008環(huán)境下打開的產(chǎn)品參數(shù)化模型中零部件之間的裝配約束關(guān)系。(1.1) Solidfforks 二次開發(fā)方法簡介SolidWorks軟件在提供強大的設計、分析等功能的同吋,為了滿足用戶進行二次開發(fā)的個性化需求,提供了大量的API (應用程序接ロ )函數(shù),這些API函數(shù)是SolidWorks的 0LE(0bject Linking and Embedding,對象的嵌入與鏈接)或 COM (Component ObjectModel,組件對象模型)接ロ。任何支持OLE和COM的編程語言都可以作為SolidWorks的開發(fā)工具。SolidWorks 二次開發(fā)技術(shù)分為基于OLE自動化技術(shù)和基于COM技術(shù)兩種。其中COM技術(shù)可以使用的SolidWorks API更多,并且可控制SolidWorks的運行方式,生成*. exe和*. dll格式的文件。通過基于COM技術(shù)對SolidWorks進行二次開發(fā),不僅生成的*. exe文件和*. dll文件都可以作為COM的組件,而且可以利用Visual C++編寫基于COM技術(shù)的DLL程序,實現(xiàn)對SolidWorks底層的ー些開發(fā),且這類代碼的執(zhí)行效率很高,可以直接在SolidWorks界面中添加新菜單和新工具條等,當運行程序注冊成功后即可以生成為SolidWorks的插件,從而實現(xiàn)與SolidWorks的無縫集成,是目前二次開發(fā)方法中應用最多的ー種。本發(fā)明所開發(fā)的產(chǎn)品裝配關(guān)系提取模塊就是采用COM開發(fā)技木,以VisuaLC++6. 0作為開發(fā)平臺,利用C++語言,通過 SolidWorks2008API 對 SolidWorks2008 進行二次開發(fā)而成。(1. 2) SolidWorks 二次開發(fā)方法的關(guān)鍵技術(shù)(1. 2. DSolidfforks API 程序結(jié)構(gòu)一個完整的SolidWorks應用程序體系結(jié)構(gòu)由Visual C++6. 0應用程序設計向?qū)ё詣觿?chuàng)建的程序框架、添加的SolidWorks Addin對象、新的.cpp源文件和需要的程序代碼等部分組成。從整個程序結(jié)構(gòu)的體系上看,程序設計者主要做以下兩個工作一是實現(xiàn)Visual C++6. 0開發(fā)平臺在SolidWorks運行環(huán)境中設計的接ロ程序和終止程序;ニ是根據(jù)實際功能要求編寫SolidWorks 二次開發(fā)應用程序主體部分。前者是完成Visual C++6. 0與SolidWorks的無縫對接,后者是完成應用程序要求的ー個或多個.cpp源文件。ConnectToSff ()是對象初始化函數(shù),是連接到SolidWorks的入ロ函數(shù),相當于C程序中的MainO函數(shù),當SolidWorks中加載插件時優(yōu)先被調(diào)用,其格式為
權(quán)利要求
1.基于復雜網(wǎng)絡邊介數(shù)的模塊劃分方法,其特征是包括如下步驟 (1)給出給定機械產(chǎn)品內(nèi)部所有零部件相互之間的裝配約束關(guān)系式; (2)根據(jù)給定機械產(chǎn)品的零部件數(shù)及上述零部件間的裝配約束關(guān)系建立裝配關(guān)系網(wǎng)絡; (3)計算給定機械產(chǎn)品零部件的裝配關(guān)系網(wǎng)絡中各條邊的邊介數(shù); (4)去掉網(wǎng)絡中邊介數(shù)最大的邊,將網(wǎng)絡分成若干子網(wǎng)絡; (5)對各個子網(wǎng)絡重復計算邊介數(shù)和去掉網(wǎng)絡中邊介數(shù)最大的邊的過程,直到分解的所有子網(wǎng)絡符合設定的模塊劃分粒度為止,此時所得子網(wǎng)絡即為劃分出的功能模塊; (6)根據(jù)劃分出的功能模塊建立功能模塊庫,該功能模塊庫記錄有各個功能模塊所包含的零部件。
2.根據(jù)權(quán)利要求1所述基于復雜網(wǎng)絡邊介數(shù)的模塊劃分方法,其特征是當步驟(3)對無權(quán)無向無環(huán)網(wǎng)絡進行邊介數(shù)搜索時,其過程是采用循環(huán)與鄰接表的數(shù)據(jù)結(jié)構(gòu)將網(wǎng)絡的所有結(jié)點及其對應的鄰接點按順序依次存入鄰接表,然后從網(wǎng)絡中任選一條邊依次搜索所有包含該邊的任意兩點間的最短路徑,并記錄該邊的邊介數(shù),如此循環(huán),直到網(wǎng)絡中所有邊的邊介數(shù)都求出來為止。
全文摘要
本發(fā)明公開一種基于復雜網(wǎng)絡邊介數(shù)的模塊劃分方法,其首先根據(jù)給定機械產(chǎn)品內(nèi)部所有零部件相互之間的裝配約束關(guān)系式建立裝配關(guān)系網(wǎng)絡;然后計算給定機械產(chǎn)品零部件的裝配關(guān)系網(wǎng)絡中各條邊的邊介數(shù),并去掉網(wǎng)絡中邊介數(shù)最大的邊,將網(wǎng)絡分成若干子網(wǎng)絡;最后對各個子網(wǎng)絡重復計算邊介數(shù)和去掉網(wǎng)絡中邊介數(shù)最大的邊的過程,直到分解的所有子網(wǎng)絡符合設定的模塊劃分粒度為止,此時所得子網(wǎng)絡即為劃分出的功能模塊;并據(jù)此建立功能模塊庫。該模塊劃分方法對工程技術(shù)人員的經(jīng)驗要求較低,且具有一定的通用性,并可以在一定程度上實現(xiàn)智能化,可以在較短的時間內(nèi)實現(xiàn)對機械產(chǎn)品的模塊劃分。
文檔編號G06F17/50GK103020400SQ201310001959
公開日2013年4月3日 申請日期2013年1月5日 優(yōu)先權(quán)日2013年1月5日
發(fā)明者楊運澤, 劉夫云, 鄧艷容, 匡兵, 李雪梅, 孫永厚, 許坤, 趙海新, 鮑家定, 景暉 申請人:桂林電子科技大學