亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于SolidWorks的焊件參數(shù)化自動建模研究

        2016-02-23 03:40:52朱英翔余啟志
        關鍵詞:二次開發(fā)模型設計

        朱英翔,陳 燕,余啟志

        (上海工程技術大學 高等職業(yè)技術學院,上海 200437)

        基于SolidWorks的焊件參數(shù)化自動建模研究

        朱英翔,陳 燕,余啟志

        (上海工程技術大學 高等職業(yè)技術學院,上海 200437)

        產(chǎn)品規(guī)格會因尺寸的改變而多樣化,這就導致三維建模過程中對同一類產(chǎn)品由于其規(guī)格變化而反復進行設計。為了解決這一問題,應用SolidWorks的API和軟件開發(fā)工具包進行二次開發(fā)。以VisualStudio作為集成開發(fā)工具,C#語言作為開發(fā)環(huán)境,采用add-in組件并嵌入DLL動態(tài)鏈接庫作為可執(zhí)行文件。然后以穩(wěn)定器的焊接結構包裝架作為原型模型,基于該原型模型調(diào)用SolidWorks的API,自定義屬性管理器建立用戶交互操作。實例應用表明,通過應用該方法可高效地進行產(chǎn)品的參數(shù)化設計和建模。

        二次開發(fā); 自動建模;SolidWorksAPI; 焊件

        0 引言

        工程技術人員廣泛使用各種三維CAD軟件,這些軟件的應用使得設計過程更加直觀[1]。但是,隨著社會分工越來越細,一般的CAD軟件對于專門產(chǎn)品設計存在著重復建模、效率低下等問題。為了縮短設計繪圖的時間,針對三維CAD軟件的二次開發(fā)越來越受到青睞。這些開發(fā)大多利用三維CAD軟件提供開發(fā)接口,建立一個基本模型庫,基于尺寸的數(shù)字化驅(qū)動得到不同規(guī)格的產(chǎn)品[2]。

        近年來,在我國有很多學者論述了應用SolidWorks實現(xiàn)參數(shù)化建模的方法,羅煜峰等人研究了SolidWorks的二次開發(fā)接口,在VC++編譯環(huán)境下開發(fā)了三維CAD文件的快速發(fā)布模塊,并將其通過動態(tài)鏈接庫技術集成到SolidWorks軟件環(huán)境中[3]。彭波等人研究了應用VisualBasic窗口應用程序作為交互平臺的SolidWorksAPI參數(shù)化建模模塊[4]。關永軍闡述了應用VisualBasic宏操作對SolidWorks的二次開發(fā),完成了基于參數(shù)輸入的快速建模,驗證了其高效、準確的設計意圖[5]。彭玉青等人利用VB.net程序和COM組件構建了SolidWorks有關建筑組件的常用庫,這些部件可以被尺寸驅(qū)動且以插件的形式嵌入模型內(nèi)[6]。

        上述研究都沒有涉及屬性管理器。因此,本文運用自定義屬性管理器的方式,利用C#語言編寫一個可執(zhí)行的DLL(動態(tài)鏈接庫)文件,在不新建窗口的基礎上,僅通過樣板模型特征的屬性管理器頁面的尺寸參數(shù)設置,達到快速參數(shù)化建模的目的。這里的樣板模型以鉆具穩(wěn)定器包裝架的焊件實例形式呈現(xiàn)[7]。

        1 SolidWorks二次開發(fā)環(huán)境的構建

        1.1 開發(fā)環(huán)境的選擇

        三維CAD軟件SolidWorks給使用者提供了專供二次開發(fā)的API(應用程序接口),可以調(diào)用基于應用的VisualBasic、VB.net、VisualC#、VisualC++6.0以及VisualC++/CLI等開發(fā)環(huán)境來實現(xiàn)API包含的功能[8]。本實例將采用VisualC#作為開發(fā)環(huán)境。C#作為.Net框架下面向?qū)ο蟮木幊陶Z言,它也支持SolidWorks宏。

        1.2 二次開發(fā)環(huán)境構建方法

        第一種是獨立的計算機應用程序。首先在VisualStudio中創(chuàng)建一個項目,該項目要添加外部引用,通過COM(組件對象模型)組件的形式在該項目中添加有關SolidWorks類型庫。然后,在Main方法中實例化SolidWorks項目,并編寫相關建模代碼和交互方式。最后,運行并調(diào)試該項目,生成一個.exe結尾的可執(zhí)行文件,從而可以視為是一個獨立的應用程序。

        第二種是嵌入一個add-in(加載項)程序。SolidWorks提供了相應的SDK(軟件開發(fā)工具包),在開發(fā)之前首先要在操作系統(tǒng)中安裝相應版本的SolidWorksAPISDK。安裝成功SDK之后,再次啟動VisualStudio,在新建的項目中就可以選擇SolidWorksadd-in項目模板SwCSharpAddin,自動預生成一個C#項目,該項目的可執(zhí)行文件是以DLL形式嵌入建模軟件內(nèi)部的,在此基礎上編寫相關建模代碼和交互方式。

        本文的設計是基于原型模型的參數(shù)化建模,所謂原型模型是指拓撲結構完全定義,尺寸參數(shù)由尺寸變量定義的一種CAD模型。為了實現(xiàn)高效的尺寸參數(shù)重新賦值和模型重建,采用add-in程序作為二次開發(fā)的手段[9]。其開發(fā)結構如圖1所示。

        圖1 系統(tǒng)開發(fā)結構

        2 焊件樣板模型設計

        圖2 鉆具穩(wěn)定器及包裝架實物圖

        本文所舉例的三維模型是一個包裝架,它是一個由型材焊接而成的焊件。其實物如圖2所示,圖中包裝架內(nèi)部就是所承載的鉆具穩(wěn)定器。鉆具穩(wěn)定器作為石油開采工具,國家能源局標準SY/T5051-2009對此產(chǎn)品做了規(guī)范性指導,由于該產(chǎn)品尺寸規(guī)格相差很多,其包裝架規(guī)格也就需要適應這一點。本文以該焊件的參數(shù)化自動建模作為例,其他基于原型的零件自動化建模的過程亦可參考。

        2.1 包裝架設計方案

        圖3是標準中穩(wěn)定器主要尺寸的示意圖,圖中L2是工作長度,D1是工作直徑,D2是鉆具連接外徑。先以標準中某一個規(guī)格鉆具穩(wěn)定器設計包裝架為例,其包裝架的尺寸就是默認值,為了保證承載這里的樣板焊件,以最大的穩(wěn)定器包裝架進行設計。包裝架全部由70×70×7的等邊角鋼焊接而成。

        圖3 穩(wěn)定器主要尺寸的示意圖

        其穩(wěn)定器軸向的支撐結構視圖如圖4所示。

        圖4 軸向的支撐結構視圖

        設計要求支架兩側留10mm空隙,支架底部留40mm空隙。根據(jù)幾何關系可得:

        W=D1+160

        H=D1+45

        此外,包裝架的長度取兩倍的穩(wěn)定器工作長度(L2)。

        2.2 樣板模型建模分析

        建模基本步驟如下:(1)通過草圖和3D草圖以直線的命令繪制等邊角鋼所在位置;(2)利用焊件選項卡下的結構構件命令生成等邊角鋼模型;(3)剪裁、延伸兩端使支架成型。

        建模完成之后,可以充分利用三維CAD軟件做結構分析,判斷焊件是否達標。本例應用有限元方法做靜力學分析,仿真結果安全系數(shù)如圖5所示,最小安全系數(shù)為2.7,能夠滿足承載需求。由于樣板穩(wěn)定器焊件模型是按最大的穩(wěn)定器設計的,所以其余尺寸穩(wěn)定器包裝架亦能滿足強度要求。

        圖5 有限元仿真靜應力結果安全系數(shù)分布圖

        3 C# add-in項目設計

        3.1 基于API建模

        為了更加快速地找到API的建模方法,可以借助宏操作。SolidWorks支持基于VSTA(VisualStudioToolsforApplications)C#的宏語句,可以通過宏的記錄操作來找需要的API方法。新建零件,點擊“錄制宏”并對包裝架重新建模,建模完成后點擊“停止宏”,選擇保存為SWVSTAC#Macro項目。通過點擊“編輯”命令打開保存的宏項目文件。此例主要用到的API方法如下:

        繪制直線:ModelDoc@::SketchManager.CreateLine

        繪制焊件結構件:ModelDoc@::FeatureManager.InsertStructuralWeldment4

        剪裁焊件:ModelDoc@::FeatureManager.EditRollback

        系統(tǒng)內(nèi)加載SolidWorksAPISDK完畢后,在VisualStudio中就可以選擇新建SolidWorksadd-in項目,選擇該項目后自動生成一個項目模板,根據(jù)項目模板自動生成的類進行編程。在建立樣板模型的時候,根據(jù)默認的穩(wěn)定器參數(shù)值算出對應的包裝架尺寸參數(shù),然后以這個參數(shù)作為包裝架設計依據(jù),調(diào)用繪制直線、繪制焊件結構件、剪裁焊件等API方法,完成整個包裝架默認尺寸的樣板模型的自動建模。

        3.2 參數(shù)化建模和尺寸賦值方法

        參數(shù)化建模就是采用預定義的方法建立圖形的幾何約束集 ,指定一組尺寸作為參數(shù)與幾何約束集相關聯(lián),并將所有的關聯(lián)式融入到應用程序中,然后采用人機交互方式即通過對話框修改參數(shù)尺寸,最終由程序根據(jù)這些參數(shù)順序地執(zhí)行表達式來實現(xiàn)的方法。

        從上文中可知,包裝架的尺寸是由其所擺放的穩(wěn)定器的尺寸決定的,因此在參數(shù)化建模時,可以直接用穩(wěn)定器的主要尺寸來驅(qū)動包裝架的尺寸,這樣簡化了設計的步驟,體現(xiàn)了CAD技術在設計中的功能,同時也提高了設計效率[10]。在C#工程文件中新建基于樣板模型建模的方法,該改方法利用穩(wěn)定器的尺寸驅(qū)動包裝架的尺寸。其代碼段如下:

        ……

        myFeature= ((Feature)(swDoc.FeatureManager.InsertWeldmentFeature()));

        ……

        SketchSegmentskSegment=null;

        skSegment= ((SketchSegment)(swDoc.SketchManager.CreateLine(w, 0, 0,w,l, 0)));//6個參數(shù)表明直線首末點的坐標(X1,Y1,Z1,X2,Y2,Z2)

        myFeature= ((Feature)(swDoc.FeatureManager.InsertStructuralWeldment4("C:ProgramFilesSOLIDWORKSCorpSOLIDWORKSlangchinese-simplifiedweldmentprof" +"ilesGBLAngle(equal)7X7.sldlfp",1,true,vGroups)));

        ……

        由于包裝架的型材和剪裁方式不會隨規(guī)格尺寸變化而變化,因此改變包裝架規(guī)格尺寸在建模過程中也就是改變等邊角鋼所在的直線的位置和長度。從API建模方法中可知,創(chuàng)建直線過程中,直線的位置是通過直線首末兩點的坐標確定的,因此把包裝架尺寸參數(shù)先映射到等邊角鋼所在直線坐標中,再把包裝架尺寸參數(shù)值由穩(wěn)定器基本尺寸值換算得出。通過定義一些雙精度浮點變量,來代替原本樣板模型中建模命令的一些常量。這樣便構建了一個帶有參數(shù)的建模方法。

        3.3 屬性管理器設計

        完成了樣板模型的建模之后,還要以用戶輸入進行尺寸進行參數(shù)化建模,所有的參數(shù)在輸入時都需要用戶交互界面,用戶交互操作最好描述為控件創(chuàng)建和響應的各種事件。常用的方法就是新建并設計一個窗體在窗體內(nèi)嵌入控件,通過對控件的操作完成參數(shù)的賦值。本次開發(fā)充分發(fā)揮SolidWorks屬性管理器的功能,所謂屬性管理器,就是用來記錄模型、裝配、工程圖中某一個結構的特征參數(shù)的選項卡。在SolidWorksAPI中提供了自定義屬性管理器的開發(fā)接口。其構建方法和窗體程序類似,可以把整個屬性管理器視為一個容器,在其中可以添加各種控件完成頁面設計。每一個控件都有一個ID,通過監(jiān)聽各種事件,判斷ID之后可以寫入相應事件的響應。

        本例中需要完成的用戶交互操作就是輸入穩(wěn)定器主要尺寸,該尺寸是驅(qū)動包裝架尺寸的,分別是工作長度L2,鉆具直徑D2,工作直徑D1。通過SolidWorksAPI提供的方法自定義屬性管理器,首先是設計屬性管理器的界面,為了使得參數(shù)可視化效果更好,創(chuàng)建了三個組,給每個組都賦給相應的名稱,在每組內(nèi)包含一個數(shù)字欄,這些數(shù)字欄就是對應要修改的L2、D2,D1,默認值是0 。此外還在每一個數(shù)字欄邊上添加尺寸種類枚舉,在長度單位的枚舉項上改為毫米。最后的效果如圖6所示。

        圖6 屬性管理器頁面設計

        提供了交互界面之后,還需要為控件創(chuàng)建響應,因為在屬性管理器中有自帶的確定按鈕(√),不必再創(chuàng)建按鈕控件,通過點擊“確定”按鈕觸發(fā)重新建模的方法。其建模方法程序段如下:

        publicvoidModifyModel(doublel2,doubled2,doubled1)

        {

        modDoc= (IModelDoc2)iSwApp.NewDocument(partTemplate, (int)swDwgPaperSizes_e.swDwgPaperA2size, 0.0, 0.0);

        modDoc.SketchManager.InsertSketch(true);

        w=d1+0.16;

        h=d1+0.045;

        h1=d1/2+0.707*d2+0.04;

        l=2*l2;

        modDoc.SketchManager.InsertSketch(true);

        ArrayvGroups=null;

        DispatchWrapper[]GroupArray=newDispatchWrapper[1];

        StructuralMemberGroupGroup1 =null;

        Group1 = ((StructuralMemberGroup)(swDoc.FeatureManager.CreateStructuralMemberGroup()));

        ……

        Group1.Angle= 1.570796326795;

        GroupArray[0] =newDispatchWrapper(Group1);

        vGroups=GroupArray;

        skSegment= ((SketchSegment)(swDoc.SketchManager.CreateLine(0, 0, 0, 0,l, 0)));

        myFeature= ((Feature)(swDoc.FeatureManager.InsertStructuralWeldment4("C:ProgramFilesSOLIDWORKSCorpSOLIDWORKSlangchinese-simplifiedweldmentprof" +"ilesGBLAngle(equal)7X7.sldlfp",1,true,vGroups)));

        skSegment= ((SketchSegment)(swDoc.SketchManager.CreateLine(w, 0, 0,w,l, 0)));

        ……

        }

        4 結論

        完成調(diào)試工作并生成相應的.dll文件之后,打開SolidWorks軟件,點擊工具欄下拉菜單,在如圖7所示的界面中,就能建立樣板模型或者重新建立參數(shù)化的自定義模型。

        圖7 add-in菜單欄

        按圖6輸入所要求的參數(shù)后點擊確定按鈕(√),SolidWorks執(zhí)行重新建模方法,完成了基于參數(shù)化的自動建模,其結果如圖8所示。通過實例展示,本文利用屬性管理器實現(xiàn)了產(chǎn)品的參數(shù)化自動建模,從而避免了建模工作中的重復工作,整個建模過程更加快速直觀。

        圖8 參數(shù)化建模模型(渲染后)

        [1] 馮興路. 現(xiàn)代機械制造技術及其發(fā)展趨勢探討[J]. 山東工業(yè)技術, 2016(1):233.

        [2] 孫志洋, 仲梁維, 魯康東,等. 基于SolidWorks二次開發(fā)的立罐快速設計系統(tǒng)研究[J]. 通信電源技術, 2015,32(6):64-66.

        [3] 羅煜峰, 陳旭, 李元山.SolidWorks的三維CAD文件快速發(fā)布模塊的設計[J]. 圖學學報, 2012, 33(5):94-98.

        [4] 彭波, 楊岳, 蘇春模. 采用SolidWorksAPI的離心式葉輪參數(shù)化建模[J]. 圖學學報, 2009, 30(5):1-7.

        [5] 關永軍.SolidWorks的二次開發(fā)及應用[J]. 科技創(chuàng)新導報, 2012(14):28.

        [6]PengYuqing,JingXie,WangXiaoyan.Researchandrealizationonarchitectural3Dmodelofarchitecturalprocesssimulationsystem[C].InternationalWorkshoponComputerScienceandEngineering,IEEE, 2009,1:543-547.

        [7] 陳雨, 毛恩榮, 呂黃珍,等. 基于推理的大型收獲機械變速箱參數(shù)化設計[J]. 農(nóng)業(yè)機械學報, 2013, 44(S2):278-282.

        [8]NAGELC,EVJENB,GLYNNJ,等.C#高級編程(第7版)[M].李銘,譯.北京:清華大學出版社, 2010.

        [9] 敖行, 江昊, 張迅. 一種CAD圖紙中WLAN器件連接關系的獲取方法[J]. 計算機應用與軟件, 2016,33(1):90-93.

        [10] 彭澤軍. 基于UG/OPEN、C#的箱蓋模具快速設計系統(tǒng)研究[J]. 制造業(yè)自動化, 2014(21):84-86.

        Research on dense urban LTE network planning and designing

        ZhuYingxiang,ChenYan,YuQizhi

        (AdvancedVocationalTechnicalCollege,ShanghaiUniversityofEngineeringScience,Shanghai200437,China)

        Inmodernproduction,thechangeofdimensioncanresultindiversificationofproductspecifications,whichwillresultinaprobleminreusability.Inthispaper,weuseSolidWorksAPIandsoftwaredevelopmentkitstodosecondarydevelopmentsoastodealwiththeproblem.TheintegratedevelopmenttoolisVisualStudiowithprogramminglanguageofC#,andadd-incomponentisadoptedtogenerateDLLasexecutablefile.Usingcustompropertymanagerpageinsteadofformstoreassigntheparameterandrebuildthemodel.Themodelisbasedonaweldedstructurewhichisastabilizerpackingframeasaprototypemodel,andAPIisusedtoachievetheeffectofmodularmodelingandparameteroperation.Exampleshowsthismethodisfeasibletoefficientparametricdesignandmodeling.

        secondarydevelopment;modularmodeling;SolidWorksAPI;weldedstructure

        TP

        ADOI: 10.19358/j.issn.1674- 7720.2016.22.022

        朱英翔,陳燕,余啟志. 基于SolidWorks的焊件參數(shù)化自動建模研究[J].微型機與應用,2016,35(22):84-87,91.

        2016-07-19)

        朱英翔(1989-),男,碩士,助教,主要研究方向:工程機械、遠程控制。

        陳燕(1980-),女,碩士,講師,主要研究方向:CAD/CAM。

        余啟志(1979-)男,碩士,講師,主要研究方向:機械結構及焊接強度分析。

        猜你喜歡
        二次開發(fā)模型設計
        一半模型
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權M-估計的漸近分布
        淺談基于Revit平臺的二次開發(fā)
        甘肅科技(2020年20期)2020-04-13 00:30:02
        淺談Mastercam后處理器的二次開發(fā)
        模具制造(2019年3期)2019-06-06 02:11:02
        瞞天過?!律O計萌到家
        藝術啟蒙(2018年7期)2018-08-23 09:14:18
        西門子Easy Screen對倒棱機床界面二次開發(fā)
        設計秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設計叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        3D打印中的模型分割與打包
        操风骚人妻沉沦中文字幕| 国产精品入口蜜桃人妻| 男女性搞视频网站免费| 日本一区二区三区光视频| 精品偷拍被偷拍在线观看| 中文字幕无码家庭乱欲| www.亚洲天堂.com| 五月婷婷丁香视频在线观看| 蜜桃视频一区二区在线观看| 天干天干啦夜天干天2017| 亚洲欧美日韩国产精品一区| 一区二区国产视频在线| 国产精品亚洲精品日韩已方| 日本丰满熟妇bbxbbxhd| 欧美xxxx新一区二区三区 | 中文字幕一区二区三区在线乱码| 日本黑人亚洲一区二区| 最新精品国偷自产在线| 精品久久久久一区二区国产| 精品国精品自拍自在线| 粗大猛烈进出高潮视频大全| 曝光无码有码视频专区| 一区二区三区国产在线网站视频| 久久少妇高潮免费观看| 成人内射国产免费观看| 美丽人妻被按摩中出中文字幕| 人妻丰满熟妇av一区二区| 97中文字幕精品一区二区三区 | 妞干网中文字幕| 一区二区三区亚洲免费| 成人一区二区免费中文字幕视频 | 在线免费观看毛视频亚洲精品| 麻豆国产精品va在线观看不卡| 久久国产精品二国产精品| 18禁国产美女白浆在线| 国产一区白浆在线观看| 国产精品一区二区在线观看| 国产免费一区二区三区最新不卡| 国产女主播大秀在线观看| 免费无码又爽又高潮视频| 国产精品内射后入合集|