PDM(Product Data Management)是用來管理所有與產(chǎn)品相關(guān)的信息和所有與產(chǎn)品相關(guān)的過程的技術(shù)。針對當(dāng)前PDM與CAD集成現(xiàn)狀:(l)目前對于PDM與三維設(shè)計軟件的研究尚不成熟,集成程度不高;(2)中小企業(yè)由于自身條件的限制,并不適合引進(jìn)大型商用PDM軟件,存在對PDM/CAD集成需求仍難以滿足的問題。針對上述狀況,基于自行開發(fā)的適合中小企業(yè)的PDM原型系統(tǒng),文中介紹了一種通過調(diào)用SolidWorks API函數(shù)開發(fā)插件的方法,設(shè)計了插件的功能模型,實現(xiàn)三維CAD軟件SolidWorks與PDM系統(tǒng)集成,保證了數(shù)據(jù)的完整性和一致性。
1 SolidWorks二次開發(fā)的關(guān)鍵技術(shù)
1.1 SolidWorks API對象模型
SolidWorks APl(SolidWorks Application Programming Interface)提供了支持二次開發(fā)的應(yīng)用編程接口,通過該接口可以形成客戶化定制的SolidWorks軟件系統(tǒng)。SolidWorks API的對象模型關(guān)系層次分為若干層,每一層包括若干對象。SldWorks對象位于SolidWorks APl最上層,通過該對象可以直接或間接訪問其他APl對象,還可以實現(xiàn)應(yīng)用程序的基本操作,如創(chuàng)建、打開、關(guān)閉文件等。
1.2 SolidWorks API接口方式
SolidWorks APl中包含了數(shù)百個可以在Visual Basic、VBA、C、C#或SolidWorks宏文件調(diào)用的函數(shù)。SolidWorks APl接口分為兩種:一種是獨立應(yīng)用程序(Stand alone application),它基于OLE Automation的ID ispatch技術(shù),此種技術(shù)只能用于開發(fā)*.exe形式的程序,無法實現(xiàn)與SolidWorks系統(tǒng)的集成。另一種開發(fā)方式是插件形式(Add-In application),它基于Windows的COM(Component Object Model組件對象模型)技術(shù),它建立了一個軟件模塊同另一個軟件模塊的連接,當(dāng)這種連接建立成功之后,兩個模塊之間就可以通過接口來進(jìn)行通訊。COM技術(shù)是使用最多的SolidWorks APl,并可控制SolidWorks的運(yùn)行方式,生成*.dll文件,也可以開發(fā)*.exe形式的程序。
1.3 SolidWorks開發(fā)工具
任何支持OLE和COM的編程語言都可以作為SolidWorks的二次開發(fā)工具,用戶可以使用VB、VBA、VC、Delphi等高級語言對SolidWorks進(jìn)行二次開發(fā)。
2 集成系統(tǒng)開發(fā)實例
2.1 SolidWorks接口方式與開發(fā)工具的選擇
獨立應(yīng)用程序與SolidWorks程序運(yùn)行在不同的進(jìn)程空間,客戶程序的異常不會影響SolidWorks,但由于涉及到跨進(jìn)程調(diào)用,它的效率會相對比較低,而且這種方式的拓展性不好。基于COM技術(shù)的Visual C#編程語言開發(fā)的DLL(Dynamic Link LibrarV,動態(tài)鏈接庫)文件,可以直接嵌入到SolidWorks內(nèi)部,當(dāng)成功加載后,應(yīng)用程序的菜單就直接出現(xiàn)在SolidWorks主菜單上,與SolidWorks自帶的插件一樣。本文選用Visual C#開發(fā)語言,以插件程序的形式對三維CAD軟件SolidWorks 2010進(jìn)行二次開發(fā)。
2.2 插件的功能模型設(shè)計
本插件采用模塊化設(shè)計原則,由用戶界面、功能模塊、數(shù)據(jù)庫等模塊組成,各個模塊之間相互獨立。修改其中一個時,不會對其余模塊產(chǎn)生影響。插件的功能框架如圖l所示,根據(jù)集成需求,本系統(tǒng)功能模塊有用戶登錄、檢入、檢出、檢索等。
圖1 插件功能框架
2.3 C#二次開發(fā)SolidWorks的步驟
(1)DLL的創(chuàng)建
基于COM技術(shù)的C#編程語言所開發(fā)的DLL文件,通過使用向?qū)?chuàng)建,加入應(yīng)用程序的代碼,編譯連接后生成*.dll文件,也就是插件。
(2)DLL的加載
將動態(tài)鏈接庫文件*.dll加載到SolidWorks中注冊成為SolidWorks系統(tǒng)的插件,然后運(yùn)行SolidWorks,點擊【工具/插件】菜單命令,在彈出的插件對話框中選擇要加載的插件即可。再次啟動SolidWorks軟件無需再進(jìn)行加載操作。插件加載界面如圖2所示。
圖2 插件加載界面
3 結(jié)束語
(1)本文研究了三維CAD軟件SolidWorks二次開發(fā)的關(guān)鍵技術(shù),通過調(diào)用SolidWorks API函數(shù),介紹了插件開發(fā)的方法;
(2)在SolidWorks2010中開發(fā)了插件“產(chǎn)品數(shù)據(jù)管理”,設(shè)計了插件的功能模型,實現(xiàn)j維CAD軟件SolidWorks與自行開發(fā)的PDM原型系統(tǒng)集成,保證了數(shù)據(jù)的完整性和一致性。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:三維CAD軟件與PDM系統(tǒng)集成方法研究