(1)使用配置的方法建立零部件庫;

(2)使用和解除約束方程;

(3)使用壓縮的方法處理不同拓撲結構問題;

(4)使用Access 數據庫便于用戶修改。

" />

久久国产色av_国产人妻777人伦精品hd_欧美 国产 日本_好吊色欧美一区二区三区

您的位置:網站首頁 > Solidworks

基于SoIidWorks的三次開發方法研究

時間:2008-07-21 18:36:23 來源:
摘 要:詳細探討了如何于SolidWorks 二次開發完成后,在不改動程序的前提下,為用戶提供良好的三次開發接口,并實現對產品庫和零件庫的修改和升級。此方法有效延長了二次開發軟件的生命周期,使軟件得到最大程度的利用,對CAD 軟件的企業級應用具有十分重要的意義。

    關鍵詞:SolidWorks;三次開發;零部件庫;方程式;壓縮技術


    CAD 軟件在國內生產制造企業中的應用越來越廣泛,大量二次開發的需求隨之產生,根據企業產品特點開發出一套專業設計軟件成為眾多企業設計部門的迫切要求。

    PRO/ E,AutoCAD,SolidWorks 和SolidEdge 等著名CAD 設計軟件都提供了良好的二次開發平臺,基于這些軟件的二次開發產品滿足了各種企業和行業的設計需求,然而這樣的軟件產品卻往往會遇到以下幾個方面的問題:

    (1)專業性強

    企業往往無法在現有CAD 軟件中找到適合自己行業的零件庫,在此情況下便產生了二次開發的需求,因此二次開發產生的零部庫一般都是針對某個設計行業。這樣的零部件庫日后很難從軟件市場上得到升級和補充,例如空氣分離設備行業,全國只有近百家專業生產廠商,現在CAD 廠商通常不會為這樣的專業領域企業設計完善的零部件庫。

    (2)保密性高

    企業的設計軟件充分體現了企業的技術特點和技術優勢,這樣的二次開發軟件具有很強的保密性。為了防止技術資料泄漏并保持同行業內的競爭優勢,企業往往非常慎重地選擇軟件開發伙伴,這樣就為日后維護帶來很大的困難。以空氣分離設備行業為例,該行業準入門檻低,擁有核心技術的人員可以很容易地組建新的生產企業,因此資料的保密是關系到企業生存的大事。如何在保密的情況下,長期維護和升級軟件成了企業面臨的新問題。

    (3)設計變動頻繁

    企業產品要更新換代,進而帶動零部件庫的更新和程序設計流程的變化。從企業需求角度而言,創新設計是企業賴以生存的基石,設計變動將頻繁發生;而從軟件的角度來說,涉及變動嚴重威脅了軟件的壽命,任何改動都可能導致既有軟件功能完全喪失。如果對每次設計變動都要聯系軟件設計企業,必然造成無謂的二次投資,而對于軟件企業更改原有軟件帶來的開銷往往是驚人的。

    如何解決這些問題成了企業發展創新道路上的新困難,由此產生了企業三次開發的需求———企業在有限的軟件開發能力之下,不必支付大量的維護升級成本就能自主進行三次開發,讓軟件適應企業日益增長的設計需求。

    將以SolidWorks 為例,結合實際工程項目經驗,探討在二次開發過程中充分考慮用戶三次開發需求而進行的若干改進和嘗試,從而保證用戶在軟件交付使用后仍然能夠自行升級和維護該軟件。


1 SoIidWorks三次開發的四種方法

    SolidWorks 的二次開發通常是利用SolidWorks 公司提供的功能齊全的API 函數庫,使用Visual C ++ 或者Visual Basic 語言設計完成的。這樣的工作對于軟件開發企業來說比較簡單,而一旦二次開發軟件交付用戶使用,理解和修改代碼的工作對于用戶來說將變得十分困難。下面的討論就是基于用戶只具有基本的計算機操作能力,沒有軟件開發能力的前提之下,如何繞開代碼修改,仍能夠對二次開發軟件進行補充和升級的四種方法,以滿足企業創新和發展的需要。

    這四種方法分別是:

    (1)使用配置的方法建立零部件庫;

    (2)使用和解除約束方程;

    (3)使用壓縮的方法處理不同拓撲結構問題;

    (4)使用Access 數據庫便于用戶修改。

    1.1 使用配置的方法建立零部件庫

    二次開發中建立零部件庫有兩種方法:

    (1)編程實現

    SolidWorks 提供了完整的API 函數,調用接口函數可以實現各種繪圖功能。以實現一個圓柱系列化為例,其步驟如下:

    ①使用ModelDoc 對象中的CreateCircle2 函數即可按照制定的圓心和圓周上一點繪制圓形。使用PartDoc 對象中的FeatureExtrusion3函數進行拉伸,得到一個圓柱。#p#分頁標題#e#

    ②在數據庫(如SQLServer)中建立一組不同規格的圓的直徑表。

    ③使用ODBC 或者JDBC 建立程序和數據庫的連接,調用不同的直徑值在SolidWorks 中生成不同尺寸的圓柱形。

    這樣就完成了對一組圓柱零件庫的程序驅動。#p#分頁標題#e#

    (2)使用配置實現

    配置(Configurations)是SolidWorks 中實現零部件庫的一個重要方法,它可以在單一的文件中對零件或裝配體生成多個設計變化。配置提供了簡便的方法來開發與管理一組有著不同尺寸、零部件或其他參數的模型,它是通過插入系列零件設計表實現的,SolidWorks 內嵌Excell 表以支持此功能。

    如圖1 所示,對于“管子”零件有兩個參數是系列化的,即管子外徑和管子壁厚。對于每一個公稱通徑,如當前配置DN57,都有一組管子外徑57mm(管子外徑@ 草圖1)和管子壁厚3. 50mm(管子壁厚@ 拉伸-薄壁1)與之對應。如此形成一組DN10-DN400 的配置就形成了管子的零件庫。

實現這個長度關系有兩種方法:

    (1)編程實現

    可以按照如下步驟設定彎頭半徑和管道直徑的關系:

    ①使用ModelDoc2 對象的子對象Annotation 中的GetDimension函數獲得管道直徑參數。

    ②使用ModelDoc2 對象中的SetParamValue 方法設定彎頭直徑值為管道直徑的1. 5 倍。

    這樣就設定了彎頭直徑和管道直徑的關系。

    (2)使用方程式實現

    方程式是SolidWorks 提供的一種重要的尺寸約束關系,在零部件尺寸實現參數驅動后,可以使用尺寸名稱作為變量添加方程式。當在裝配體中使用方程式時,可以在零件之間、零件和子零部件之間,以配合尺寸來生成方程式。

    使用方程式可以輕松地實現這個數學關系,同時又使用戶日后可以很方便地進行修改。在圖2 中,兩個彎頭可以由下面兩個方程式進行控制:

    “D2@ 草圖2”=“管子外徑@ 草圖1”× 1. 5

    “D2@ 草圖4”=“管子外徑@ 草圖1”× 1. 5

    可以看出,與第一種方法相比,用方程式控制可以不必關心程序代碼,直接在SolidWorks 中實現數學關系的添加和修改。例如有些管路根據經驗要求彎頭直徑是管道直徑的2 倍,因為這樣一個微小的變動而修改整個程序對于用戶來說將非常困難,使用方程式則只需在SolidWorks 選擇“ 編輯方程式”,將系數1. 5 改成2 即可。

    另外值得一提的是,使用方程式和配置一起配合使用,可以極大地簡化零部件的復雜程度。如圖2 所示,整個管道是由拉伸-薄壁1、拉伸-薄壁2、拉伸-薄壁3、旋轉-薄壁1、旋轉-薄壁2 五部分組成,其中拉伸-薄壁1 的壁厚是配置中定義的,其余四部分沒有建立配置,其壁厚可以由如下方程式來控制:

    “D5@ 拉伸-薄壁3”=“管子壁厚@ 拉伸-薄壁1”

    “D3@ 旋轉-薄壁2”=“管子壁厚@ 拉伸-薄壁1”

    “D5@ 拉伸-薄壁2”=“管子壁厚@ 拉伸-薄壁1”

    “D3@ 旋轉-薄壁1”=“管子壁厚@ 拉伸-薄壁1”

    這樣既減少了資源開銷,又方便用戶自行進行變更和控制。

    1.3 使用壓縮的方法處理不同拓撲結構問題

    拓撲問題一直是CAD 軟件中的重要問題,用戶在設計過程中也常常遇到這樣的需求。

    如圖3 所示,在空氣分離設備中氮氧分離設備( 左)上部要安裝氣缸(右),常用的氣缸有QT100 和QT200 兩個型號,根據設備尺寸的不同進行選擇。

 

    通常氮氧分離設備直徑小于1 500mm 時使用QT100,當直徑大于1 500mm 時采用QT200,可以用如下兩種方法解決這個問題:

    (1)編輯實現

    可用如下步驟編程實現:①使用SolidWorks 對象的Open-Doc6 方法加載氮氧分離設備文件。②根據氮氧分離設備直徑判斷需要選擇的氣缸類型,并加載相應文件。③使用Model-Doc2 對象里的AssemblyDoc 子對象中的Mate2 方法將兩個部分裝配在一起。#p#分頁標題#e#

    (2)壓縮實現

    壓縮是暫時將零部件從裝配體中移除(而不是刪除)。它不裝入內存,不再是裝配體中有功能的部分。

    這里選用SolidWorks 的壓縮功能而沒有使用輕化或者隱藏,主要是考慮在對零部件進行壓縮之后,該零部件包含的配合關系也被壓縮,這樣在同樣的位置裝配兩個類似的零部件,只要其中之一處于壓縮狀態,則另一個完全不受影響。而輕化或者隱藏是部分零部件模型數據裝入內存,其余的模型數據根據需要裝入,這樣會導致當一個零部件處于當前狀態時,被輕化或者隱藏的零部件仍然有部分信息處于當前狀態,造成信息混亂和編輯困難。#p#分頁標題#e#

    在繪制如圖3 所示三維圖形時,將兩種氣缸都裝配在氮氧分離設備頂端并都處于壓縮狀態,設計過程中,用戶根據需要選擇一種氣缸之后,程序解除該氣缸的壓縮狀態。如果設計變動,需要選用另外一種氣缸,那么用戶可以很方便地刪除當前氣缸,將另一種氣缸從壓縮狀態中釋放出來即可。以此類推,當設計者開發出更多新型號的氣缸后,只需要在氮氧分離裝置頂部裝配新的氣缸并處于壓縮狀態,待程序生成整套設備后,根據需要選擇每種氣缸的壓縮狀態。

    另外,實際設計過程中,根據經驗往往需要對氣缸的選擇標準進行調整。例如對于不同純度的要求,往往可以靈活選用,在氮氧分離設備直徑大于1 500mm 時仍然選擇QT100。

    這樣的情況給程序設計帶來困難,用戶無法修改程序代碼調整這個尺度,而采用壓縮的方法可以有效地解決這個問題。

    1.4 使用Access 數據庫便于用戶修改

    作為具有GUI 的設計軟件,總是不可避免地要用到數據庫。例如在工業制氧機產品設計界面上,主管路設計中的“ 公稱通徑型號”,AC 和CG 選型中的“AC 型號”、“AC 冷干機型號”和“CG 型號”等需要下拉菜單的控件都需要數據庫的支持,這里為了最大限度地降低用戶日后修改的難度,避免采用SQL Server 等中型以上的數據庫,而是選用Access 數據庫。程序通過DAO 調用Access 數據庫中的相關表格,當用戶需要添加新的下拉菜單內容時,只需要打開程序的Access 文件,在相關的表中進行添加即可。

    例如在Access 中對每個下拉菜單都有相關的表支持,對于圖4 中AC 和CG 選型下拉菜單,Access 中有表格“ACCG”相對應,存儲著從AC1. 2 至AC97 等17 行數據。當用戶需要添加新的AC 類型時,只需要在Access 中添加新的一行數據,即可反映在設計界面的下拉菜單中,方便了用戶對AC 設備庫進行升級和補充。

綜合以上四種方法,一個總的原則就是:讓程序最小限度地參與到設計中來,為用戶提供最大的方便以及自由設計和修改的空間。


2 結論

    本文詳細介紹了在SolidWorks 二次開發完成后,如何留給用戶一個三次開發空間的若干種方法。這是個很有意義的研究領域,使二次開發軟件保持長久的生命力,同時最大限度地節省用戶的開發和維護成本。而如何更大程度地給用戶開放自由發揮的空間,還有待于進一步的研究。

參考文獻:

    [1] 池勇,辛選榮,葛中新,等. SolidWorks 二次開發方法的研究[ J].機械,2003,30(3):38-40.

    [2] 江有永,曾忠,曹志全,等. 基于SolidWorks 的尺寸方程驅動系列件庫建模實現[J]. 機械工程師,2003,(5):25-26.

    [3] 夏秋英. 參數化、變量化技術及其CAD 系統[J]. 精密制造與自動化,2005,(1):53-55.

    [4] 李光耀,杜娟. 基于參數的SolidWorks 零件庫的開發和實現[ J].機械設計與制造,2005,(5):40-45.

    [5] 劉潔,李言. 二次開發SolidWorks 建立國標零件庫[ J]. 計算機輔助設計與制造,2000,(10):43-44.  


久久国产色av_国产人妻777人伦精品hd_欧美 国产 日本_好吊色欧美一区二区三区
久久亚洲精品视频| julia一区二区中文久久94| 国产成人精品免费视频大全最热 | 欧美一级黄色网| 亚洲精品高清视频| 亚洲一区二区三区免费观看| 中文字幕av久久| 一级日韩一区在线观看| 国产精品成人在线| 欧美精品在线免费观看| 最新av网址在线观看| 尤物国产精品| 午夜精品在线观看| 日韩av电影中文字幕| 人妻久久久一区二区三区| 欧美久久电影| 国产一区二区在线免费| 国产美女99p| 91免费在线观看网站| 91精品国产高清自在线| 久久精品国产一区二区三区不卡 | 九九热视频这里只有精品| 精品麻豆av| 久久久久久高潮国产精品视| 亚洲免费久久| 欧洲亚洲免费视频| 国产在线一区二区三区欧美| 成人毛片一区二区| 久久久久久久网站| 国产精品久久久久久久久久久不卡| 久久艹在线视频| 亚洲成人午夜在线| 欧美亚洲国产成人精品| 国产日韩视频在线播放| 高清亚洲成在人网站天堂| 91成人国产在线观看| 日韩中文有码在线视频| 欧美日韩国产二区| 日韩成人av电影在线| 欧美区高清在线| 99精品在线免费视频| 久久久久久久中文| 中文字幕第一页亚洲| 日韩一二区视频| 国产一区二区精品免费| 国产高清一区二区三区| 精品免费日产一区一区三区免费 | 久久99久久久久久| 国产精品久久久久久久久久小说| 亚洲精品免费一区二区三区| 欧美亚洲丝袜| 99视频免费观看蜜桃视频| www日韩欧美| 岛国视频一区| 国产日产欧美一区二区| 日韩在线视频免费观看| 亚洲精品一区国产精品| 精品无码久久久久久久动漫| 国产第一区电影| 国产精品麻豆免费版| 午夜精品亚洲一区二区三区嫩草 | 久久中文字幕在线视频| 日本欧美色综合网站免费| 国产一区二区自拍| 日韩在线视频网站| 视频一区国产精品| 高清在线观看免费| 久热精品视频在线免费观看| 欧美在线观看日本一区| 久久久午夜视频| 国产精品第一区| 青青青在线视频播放| 国产精品 日韩| 最新国产精品久久| 国产午夜精品一区| 国产精品露脸av在线| 欧美一区二区中文字幕| 久久久久久噜噜噜久久久精品| 日韩在线观看a| 国产精品一区视频| 国产精品少妇在线视频| 人人做人人澡人人爽欧美| 狠狠色噜噜狠狠狠狠色吗综合| 国产成人综合精品在线| 一本一生久久a久久精品综合蜜| 日韩精品电影网站| 久久偷窥视频| 亚洲在线观看视频网站| 国产在线青青草| 国产精品区免费视频| 日韩国产高清一区| 久久久在线免费观看| 欧美日韩福利视频| 国产在线视频一区| 久久精品国产理论片免费| 亚洲精品日韩成人| av在线观看地址| 最新国产精品久久| 国产无套粉嫩白浆内谢的出处| 久久精品国产成人精品| 五月天在线免费视频| 福利视频一二区| 在线视频精品一区| 国产精品专区第二| 欧美成人久久久| 国产欧美久久久久| 欧美激情在线观看视频| 国产免费一区二区三区在线观看 | 狠狠干视频网站| 久久久97精品| 一区二区在线不卡| 国产精品一区二区免费| 欧美激情伊人电影| 成人免费福利在线| 亚洲精品国产精品国自产观看| 91成人在线视频观看| 亚洲精品国产系列| 国产精彩免费视频| 国产99视频精品免费视频36| 国产性生交xxxxx免费| 国产精品劲爆视频| 国产精品小说在线| 亚洲欧美日韩综合一区| 久久综合毛片| 日韩激情免费视频| 国产av人人夜夜澡人人爽麻豆| 九色91av视频| 成人国产精品色哟哟| 午夜精品短视频| 国产成人精品视频免费看| 欧洲熟妇精品视频| 国产精品久久999| 精品少妇人欧美激情在线观看 | 欧美激情一级欧美精品| 99久久精品无码一区二区毛片| 欧美精品www在线观看| 114国产精品久久免费观看| 日本一区二区三区视频在线观看| 99久久久久国产精品免费| 电影午夜精品一区二区三区 | 中文字幕人成一区| 91成人免费观看网站| 亚洲wwwav| 日韩视频在线免费| 国产欧美一区二区三区在线| 美女999久久久精品视频| 91精品国产91| 激情伦成人综合小说| 欧美激情综合色| 国产精品99导航| 日韩高清国产精品| 久久精品国产99国产精品澳门| 国产欧美一区二区三区四区| 日韩在线第一区| 久久久久亚洲精品成人网小说| 国产日韩精品电影| 日本久久久久久久久| 欧美人成在线视频| 99久热re在线精品996热视频| 日韩精品不卡| 亚洲精品一品区二品区三品区| 久久精品91久久香蕉加勒比| 国产女人18毛片| 国产精品专区在线| 亚洲国产精品久久久久爰色欲| 日韩在线欧美在线| 国产精品综合不卡av| 欧洲在线视频一区| 久久精品日产第一区二区三区| 国产小视频免费| 日韩女优中文字幕| 亚洲a在线观看| 国产99在线播放| 国产精品久久久一区| 久久精品香蕉视频| 欧美一区观看| 熟女少妇在线视频播放| 色综合91久久精品中文字幕| 精品国产一区二区三区四区在线观看 | 极品美女扒开粉嫩小泬| 亚洲精品无人区| 色综合久综合久久综合久鬼88| 色999日韩欧美国产| 国产精品18久久久久久麻辣| 国产情侣av自拍| 激情综合网婷婷| 日本女人高潮视频| 久久精品久久精品亚洲人| 99免费在线观看视频| 日韩国产精品毛片| 痴汉一区二区三区| 一区二区在线不卡| 国产精品久久久久久av福利| 久久久久久尹人网香蕉| 国产精品一区二区你懂得| 国自在线精品视频| 少妇人妻互换不带套| 性欧美长视频免费观看不卡| 亚洲永久在线观看| 亚洲精品影院|