基于Web的SolidWorks網(wǎng)絡(luò )協(xié)同設計系統的設計與實(shí)現
以SolidWorks 為基礎平臺,ASP. NET 為二次開(kāi)發(fā)工具,設計并實(shí)現了基于Web 的SolidWorks 零件協(xié)同設計系統。以SolidWorks 為開(kāi)發(fā)工具的中小型企業(yè)采用該系統可以直接通過(guò)網(wǎng)絡(luò )進(jìn)行三維圖形零件庫的在線(xiàn)動(dòng)態(tài)瀏覽、零件參數化驅動(dòng)和屬性信息的提取并實(shí)現零件上傳、下載等功能,可以促進(jìn)設計人員與生產(chǎn)制造部門(mén)的實(shí)時(shí)交流。該系統是計算機支持協(xié)同設計( CSCD) 的一個(gè)設計與實(shí)現方案,通過(guò)這種方案可以迅速將計算機支持協(xié)同設計在低成本的中小型企業(yè)推廣應用。
隨著(zhù)現代制造業(yè)的高速發(fā)展,企業(yè)之間的競爭也日趨激烈,面對Internet 的網(wǎng)絡(luò )化和制造業(yè)信息化的現狀,CSCD ( Computer Supported Cooperative Design)將分布式資源通過(guò)Internet 網(wǎng)絡(luò )實(shí)現資源共享和集成同時(shí)進(jìn)行網(wǎng)絡(luò )協(xié)同設計,通過(guò)網(wǎng)絡(luò )協(xié)同設計系統促使對產(chǎn)品需求者和設計人員的實(shí)時(shí)交互,可以對同一零件進(jìn)行在線(xiàn)動(dòng)態(tài)瀏覽( 能夠對可視化插件支持的. wrl 格式3D 模型進(jìn)行旋轉、移動(dòng)、縮放等動(dòng)態(tài)操作) 、零件參數化驅動(dòng)和屬性信息的提取等。
SolidWorks 是現代比較常用的集CAD/CAM/CAE于一體的三維設計軟件,給用戶(hù)提供了強大的二次開(kāi)發(fā)接口SolidWorks API,凡支持COM 技術(shù)的開(kāi)發(fā)工具,如C,C + + ,VB,C#,. NET,Delphin 等均可對其進(jìn)行開(kāi)發(fā),該系統采用C#和ASP. NET 作為二次開(kāi)發(fā)工具,功能強大且操作簡(jiǎn)單。中小型企業(yè)的設計人員通過(guò)使用該系統,減少了開(kāi)發(fā)周期,提高了設計效率,降低了成本。
1、協(xié)同設計系統的整體結構設計
協(xié)同設計系統主要通過(guò)網(wǎng)絡(luò )實(shí)現三維圖形零件庫的在線(xiàn)動(dòng)態(tài)瀏覽、零件參數化驅動(dòng)和屬性信息的提取等。在實(shí)現時(shí)可以有3 種方案: 開(kāi)放的exe 可執行程序,dll 插件擴展SolidWorks 和基于Web 瀏覽器對SolidWorks API 進(jìn)行二次開(kāi)發(fā)。對于開(kāi)放的exe 可執行程序方案,要求程序在本機上執行,通過(guò)網(wǎng)絡(luò )調用服務(wù)器上的零件庫并進(jìn)行開(kāi)發(fā)交流,但它需要將程序安裝在本地的客戶(hù)端上,對平臺的依賴(lài)性很大。第二種用api 開(kāi)發(fā)插件來(lái)擴展SolidWorks 則需要在客戶(hù)端安裝SolidWorks,加大了客戶(hù)端的壓力。而第三種則只需要在服務(wù)器上安裝Solidworks 并對其進(jìn)行開(kāi)發(fā),然后客戶(hù)可以在不同的平臺通過(guò)瀏覽器直接訪(fǎng)問(wèn)服務(wù)器的資源。在比較3 種方案的優(yōu)缺點(diǎn)后,決定采用Web 開(kāi)發(fā)的模式系統的總體框架如圖1 所示。

圖1 系統詳細構架圖
該系統采用B/S 模式,與傳統的C/S 模式相比,主要功能均在服務(wù)器上實(shí)現,用戶(hù)只需通過(guò)Web 瀏覽器向服務(wù)器發(fā)送申請,經(jīng)過(guò)服務(wù)器處理后返回給用戶(hù)Web 頁(yè)面。另外,Web 應用程序必須經(jīng)過(guò)后臺數據庫儲存數據實(shí)現與用戶(hù)的交互功能;赪eb的應用程序可以劃分為3 個(gè)層次: 用戶(hù)層、業(yè)務(wù)邏輯層和數據支持層。其中用戶(hù)層只需用戶(hù)安裝可視化插件,通過(guò)瀏覽器即可訪(fǎng)問(wèn)系統的功能頁(yè)面。邏輯處理層是參數表達式提取和屬性信息提取的關(guān)鍵,以ASP. NET 作為開(kāi)發(fā)工具,通過(guò)編寫(xiě)C# 語(yǔ)言程序代碼,操作SolidWorks API 獲得系統所需的數據信息。數據訪(fǎng)問(wèn)層用于儲存零件模型文件、可視化文件、參數說(shuō)明文件等,完成與用戶(hù)的交互模塊,實(shí)現資源共享功能。
5、結束語(yǔ)
研究了基于Web 的SolidWorks 協(xié)同設計系統,首先要解決的問(wèn)題是SolidWorks API 的熟練應用。其次針對系統的結構,對系統總體框架、零件參數化驅動(dòng)及屬性信息提取關(guān)鍵技術(shù)和網(wǎng)絡(luò )協(xié)同設計系統數據庫訪(fǎng)問(wèn)技術(shù)進(jìn)行了深入的分析。最后基于以上理論知識實(shí)際應用到ASP. NET 的協(xié)同設計系統;赪eb的SolidWorks 協(xié)同設計系統是一種面向服務(wù)的分布式應用,隨著(zhù)現代制造業(yè)逐漸向網(wǎng)絡(luò )化和信息化方向發(fā)展,利用Internet 對SolidWorks 進(jìn)行二次開(kāi)發(fā)使得中小型企業(yè)能夠直接通過(guò)網(wǎng)絡(luò )進(jìn)行三維圖形零件庫的在線(xiàn)動(dòng)態(tài)瀏覽、零件參數化驅動(dòng)及屬性信息的提取等,加強了企業(yè)之間的交流和合作,節約了企業(yè)的成本和提高了產(chǎn)品設計效率。
該系統的實(shí)際應用目前還在測試階段,而且內部很多功能上問(wèn)題以及安全上的問(wèn)題還有待于進(jìn)一步解決。但是,通過(guò)該系統,已經(jīng)能夠完成一個(gè)協(xié)同設計系統所需要的大多數功能。