基于Web的SolidWorks網絡協同設計系統的設計與實現
以SolidWorks 為基礎平臺,ASP. NET 為二次開發工具,設計并實現了基于Web 的SolidWorks 零件協同設計系統。以SolidWorks 為開發工具的中小型企業采用該系統可以直接通過網絡進行三維圖形零件庫的在線動態瀏覽、零件參數化驅動和屬性信息的提取并實現零件上傳、下載等功能,可以促進設計人員與生產制造部門的實時交流。該系統是計算機支持協同設計( CSCD) 的一個設計與實現方案,通過這種方案可以迅速將計算機支持協同設計在低成本的中小型企業推廣應用。
隨著現代制造業的高速發展,企業之間的競爭也日趨激烈,面對Internet 的網絡化和制造業信息化的現狀,CSCD ( Computer Supported Cooperative Design)將分布式資源通過Internet 網絡實現資源共享和集成同時進行網絡協同設計,通過網絡協同設計系統促使對產品需求者和設計人員的實時交互,可以對同一零件進行在線動態瀏覽( 能夠對可視化插件支持的. wrl 格式3D 模型進行旋轉、移動、縮放等動態操作) 、零件參數化驅動和屬性信息的提取等。
SolidWorks 是現代比較常用的集CAD/CAM/CAE于一體的三維設計軟件,給用戶提供了強大的二次開發接口SolidWorks API,凡支持COM 技術的開發工具,如C,C + + ,VB,C#,. NET,Delphin 等均可對其進行開發,該系統采用C#和ASP. NET 作為二次開發工具,功能強大且操作簡單。中小型企業的設計人員通過使用該系統,減少了開發周期,提高了設計效率,降低了成本。
1、協同設計系統的整體結構設計
協同設計系統主要通過網絡實現三維圖形零件庫的在線動態瀏覽、零件參數化驅動和屬性信息的提取等。在實現時可以有3 種方案: 開放的exe 可執行程序,dll 插件擴展SolidWorks 和基于Web 瀏覽器對SolidWorks API 進行二次開發。對于開放的exe 可執行程序方案,要求程序在本機上執行,通過網絡調用服務器上的零件庫并進行開發交流,但它需要將程序安裝在本地的客戶端上,對平臺的依賴性很大。第二種用api 開發插件來擴展SolidWorks 則需要在客戶端安裝SolidWorks,加大了客戶端的壓力。而第三種則只需要在服務器上安裝Solidworks 并對其進行開發,然后客戶可以在不同的平臺通過瀏覽器直接訪問服務器的資源。在比較3 種方案的優缺點后,決定采用Web 開發的模式系統的總體框架如圖1 所示。
圖1 系統詳細構架圖
該系統采用B/S 模式,與傳統的C/S 模式相比,主要功能均在服務器上實現,用戶只需通過Web 瀏覽器向服務器發送申請,經過服務器處理后返回給用戶Web 頁面。另外,Web 應用程序必須經過后臺數據庫儲存數據實現與用戶的交互功能。基于Web的應用程序可以劃分為3 個層次: 用戶層、業務邏輯層和數據支持層。其中用戶層只需用戶安裝可視化插件,通過瀏覽器即可訪問系統的功能頁面。邏輯處理層是參數表達式提取和屬性信息提取的關鍵,以ASP. NET 作為開發工具,通過編寫C# 語言程序代碼,操作SolidWorks API 獲得系統所需的數據信息。數據訪問層用于儲存零件模型文件、可視化文件、參數說明文件等,完成與用戶的交互模塊,實現資源共享功能。
5、結束語
研究了基于Web 的SolidWorks 協同設計系統,首先要解決的問題是SolidWorks API 的熟練應用。其次針對系統的結構,對系統總體框架、零件參數化驅動及屬性信息提取關鍵技術和網絡協同設計系統數據庫訪問技術進行了深入的分析。最后基于以上理論知識實際應用到ASP. NET 的協同設計系統。基于Web的SolidWorks 協同設計系統是一種面向服務的分布式應用,隨著現代制造業逐漸向網絡化和信息化方向發展,利用Internet 對SolidWorks 進行二次開發使得中小型企業能夠直接通過網絡進行三維圖形零件庫的在線動態瀏覽、零件參數化驅動及屬性信息的提取等,加強了企業之間的交流和合作,節約了企業的成本和提高了產品設計效率。
該系統的實際應用目前還在測試階段,而且內部很多功能上問題以及安全上的問題還有待于進一步解決。但是,通過該系統,已經能夠完成一個協同設計系統所需要的大多數功能。