(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_欧美 国产 日本_好吊色欧美一区二区三区
精品网站在线看| 麻豆av福利av久久av| 免费在线观看毛片网站| 欧美成人在线免费| 91国内揄拍国内精品对白| 欧美久久久久久久久久久久久| 中文字幕在线乱| 国产精品美女999| 久久久亚洲国产| 国产美女91呻吟求| 男人天堂成人在线| 欧美激情第6页| 国产成人精品综合久久久| 免费看污久久久| 日本一区二区在线视频观看| 精品国产一二| 国产精品久久久久久久久男| 九色自拍视频在线观看| 成人精品视频在线| 国产在线观看一区二区三区| 日韩欧美视频网站| 午夜老司机精品| 一区二区高清视频| 欧美精品一本久久男人的天堂| 日韩中文字幕在线看| 99在线观看视频免费| 欧美福利一区二区三区| 日韩精品一区二区三区久久 | 欧美专区日韩视频| 一区二区三区视频| 国产精品福利网站| 日韩亚洲欧美成人| 色婷婷综合成人| 91精品免费看| av一本久道久久波多野结衣| 成人av免费在线看| av久久久久久| 风间由美一区二区三区| 欧美精品一区二区三区在线四季| 欧美一区二区三区图| 亚洲a级在线播放观看| 一本久道综合色婷婷五月| 伊人久久99| 亚洲精品久久久久久一区二区| 亚洲精品成人久久久998| 亚洲欧美丝袜| 懂色av粉嫩av蜜臀av| 日本在线播放不卡| 亚洲高清视频一区| 亚洲欧美精品| 熟女少妇在线视频播放| 日韩暖暖在线视频| 欧美亚洲视频在线观看| 欧美老熟妇喷水| 欧美在线观看黄| 欧美凹凸一区二区三区视频| 精品欧美国产一区二区三区不卡| 国内精品视频免费| 国产免费一区视频观看免费| 成人a在线视频| 国产日韩欧美在线看| 高清视频一区| 国产成人精品免高潮费视频| 日韩亚洲精品电影| 国产精品第一区| 中文字幕黄色大片| 日韩av电影在线免费播放| 欧美日韩在线播放一区二区| 国产日韩欧美自拍| 国产麻豆日韩| 国产二区一区| 国产精品久久久久99| 欧美极品欧美精品欧美视频| 色99中文字幕| 国模视频一区二区| 91精品国产自产91精品| 九一免费在线观看| 精品国产一区二区三区四区vr | 一区二区精品在线观看| 亚洲激情电影在线| 影音先锋欧美在线| 日韩视频免费在线播放| 国产一区二区视频在线观看| 久久综合亚洲精品| 国产精品久久久久久久久男| 性色av一区二区三区| 欧美亚洲成人网| 国产一区二区精品在线| 国产精品12p| 久久综合网hezyo| 日韩福利视频| 国产伦精品一区二区三区四区视频_| 国产福利不卡| 一本色道久久综合亚洲精品婷婷| 日韩精品久久一区二区三区| 欧美视频1区| 97久久精品人人澡人人爽缅北| 精品国产依人香蕉在线精品| 中文字幕一区综合| 欧美日韩一道本| 91免费看片在线| 久久综合免费视频| 青青草国产精品| 久久久在线免费观看| 精品乱子伦一区二区三区| 正在播放国产精品| 虎白女粉嫩尤物福利视频| 久久这里只有精品23| 欧美激情久久久久| 男女超爽视频免费播放| 99精品国产高清一区二区| 国产精品动漫网站| 欧美日韩在线成人| 日韩中文字幕在线观看| 日本精品久久中文字幕佐佐木| 高清一区二区三区视频| 久久这里只有精品99| 欧美韩国日本在线| 色天天综合狠狠色| 欧美一级免费视频| 91精品视频播放| 亚洲一区二区三区四区在线播放 | 欧美成人四级hd版| 热99这里只有精品| 91成人免费视频| 亚洲自拍欧美另类| 不卡视频一区二区| 中国人体摄影一区二区三区| 国产日韩欧美91| 久久av.com| 欧美日韩亚洲免费| 国产精品视频免费在线| 欧美亚洲精品日韩| 久久精品国产v日韩v亚洲| 日本精品一区二区三区四区 | 欧美xxxx黑人又粗又长精品| 久久一区二区精品| 中文字幕在线观看一区二区三区| 国产伦精品一区二区三区视频黑人 | 国产伦精品一区二区三区在线 | 久久精品视频中文字幕| 欧美国产日韩激情| 一区二区免费在线视频| 69国产精品成人在线播放| 欧美在线视频免费| 一区二区三区国| 久久人人爽人人爽人人片亚洲| 成人福利网站在线观看11| 欧美中文字幕在线| 亚洲一区在线免费| 久久天天躁狠狠躁夜夜爽蜜月| 成人中文字幕av| 男女超爽视频免费播放| 亚洲a中文字幕| 麻豆国产va免费精品高清在线| 久久欧美在线电影| 国产女人精品视频| 欧美一级大片视频| 亚洲一二三区精品| 国产精品视频免费在线| 国产精品91久久久久久| 国产毛片久久久久久国产毛片| 欧美一区视久久| 日韩中文不卡| 一本大道熟女人妻中文字幕在线 | 91av福利视频| 蜜桃久久影院| 日本精品一区二区三区在线| 精品国产一二| 国产精品视频精品| 国产传媒一区| 91九色精品视频| 国产麻豆日韩| 国产一区二区四区| 品久久久久久久久久96高清| 亚洲黄色一区二区三区| 久久国产精品影视| 国产精品初高中精品久久| 精品国产一区二区三区久久久狼| 国产精品av在线播放| 欧美在线免费观看| 日韩av免费一区| 午夜视频久久久| 亚洲熟妇av一区二区三区| 精品久久久久久乱码天堂| 国产精品高清网站| 久久精品视频在线播放| 少妇精69xxtheporn| 久久精品国产一区二区三区不卡| 国产经典久久久| 国产精品99久久久久久久久 | 欧美一区二区三区精品电影| 亚洲精品永久www嫩草| 亚洲天堂av免费在线观看| 欧美激情极品视频| 欧美极品在线播放| 欧美日韩国产成人在线| 久久精品国产亚洲精品2020| 国产欧美va欧美va香蕉在线| 久久精品综合一区|