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

        ?

        減速器箱體的參數(shù)化建模與界面化實(shí)現(xiàn)

        2020-10-27 02:54:58李之圓吳群彪方海峰
        關(guān)鍵詞:箱蓋工程圖二次開發(fā)

        李之圓,吳群彪,,梁 濤,陳 濤,方海峰,

        (1.江蘇科技大學(xué)機(jī)電與動力工程學(xué)院,江蘇 張家港 215600) (2.江蘇科技大學(xué)蘇州理工學(xué)院,江蘇 張家港 215600)

        減速器作為獨(dú)立的閉式傳動裝置連接原動機(jī)和工作機(jī),用來增大轉(zhuǎn)矩和降低轉(zhuǎn)速,滿足不同的工作需求。減速器的種類很多,按照傳動類型可分為齒輪減速器、蝸桿減速器、行星減速器以及它們互相組合而成的減速器。按照傳動級數(shù)可以分為單級減速器和多級減速器;按照齒輪形狀可以分為圓柱齒輪減速器、圓錐齒輪減速器和圓錐圓柱齒輪減速器;按照傳動的布置形式可以分為展開式、分流式和同軸式減速器。

        國外首先使用個人計(jì)算機(jī)進(jìn)行參數(shù)化建模與界面實(shí)現(xiàn),并且取得了令人矚目的成就。Chugunov等[1]研究了SolidWorks二次開發(fā)程序在實(shí)際應(yīng)用和優(yōu)化方面的一些問題,對參數(shù)化建模與界面實(shí)現(xiàn)進(jìn)行了比較全面的概述;Yu[2]系統(tǒng)闡述了基于SolidWorks的參數(shù)化設(shè)計(jì)和智能化裝配的工作原理與簡單的開發(fā)方法;Reddy等[3]基于SolidWorks API開發(fā)了一套智能化的軸承設(shè)計(jì)數(shù)據(jù)庫。

        目前,國內(nèi)關(guān)于SolidWorks二次開發(fā)的研究主要是使用SolidWorks自帶的二次開發(fā)語言VBA進(jìn)行各種簡單零件加工程序的開發(fā)。顧忠新等[4]在減速器箱體類零件的參數(shù)化設(shè)計(jì)中使用SolidWorks自帶的VBA工具設(shè)計(jì)了一款能夠快速創(chuàng)建減速器箱體零件的窗口程序,但程序比較簡單,只能實(shí)現(xiàn)箱體零件的快速建模,不能實(shí)現(xiàn)箱體零件的自動化裝配;柏子剛[5]利用SolidWorks開發(fā)了一款簡易軟件進(jìn)行壓縮機(jī)連桿類零件的快速參數(shù)化設(shè)計(jì);印立康等[6]利用SolidWorks進(jìn)行了中型鋼設(shè)計(jì)的二次開發(fā)研究。

        國內(nèi)除了利用VBA進(jìn)行了一些簡單零件體的二次開發(fā),還進(jìn)行了一些關(guān)于復(fù)雜系統(tǒng)和運(yùn)動仿真方面的深入研究。劉勛[7]基于SolidWorks進(jìn)行了帶式輸送機(jī)機(jī)架CAD(computer aided design)/CAE(computer aided engineering)系統(tǒng)的開發(fā)與研究;汪志軍[8]基于SolidWorks二次開發(fā)進(jìn)行了帶式輸送機(jī)CAD系統(tǒng)的研究;趙方舟[9]基于SolidWorks進(jìn)行了計(jì)算機(jī)輔助公差優(yōu)化設(shè)計(jì)的研究。

        VBA比較適合制作一些簡單的或者是個人工作用的小工具,VBA編程比C#復(fù)雜,VBA所用到類庫少,且加載麻煩,而C#編程簡單且功能比VBA功能更加全面,因此本文著重介紹C#語言的使用。

        1 開發(fā)工具工作過程及原理

        本文運(yùn)用開發(fā)工具Visual Studio中的C#編寫控制臺程序,再用編寫好的程序?qū)崿F(xiàn)SolidWorks的二次開發(fā)。

        SolidWorks二次開發(fā)的工作原理是:通過調(diào)用不同的API函數(shù)打開SolidWorks以進(jìn)行不同的操作,如創(chuàng)建坐標(biāo)系、繪制草圖、拉伸實(shí)體、對稱陣列等等。API工具保證不同應(yīng)用之間用同一種編程語言進(jìn)行交互,傳遞參數(shù),并且這種語言編寫的代碼在兩個程序之間能夠互相通過數(shù)據(jù)傳遞確保二次開發(fā)的程序能成功運(yùn)行,如C#語言對應(yīng)的API函數(shù)保證了Microsoft.NET平臺與SolidWorks三維軟件之間的交互與二次開發(fā)程序的順利運(yùn)行。除了調(diào)用相應(yīng)的API函數(shù)外,在SolidWorks與其他平臺進(jìn)行交互與共同開發(fā)時,還需要添加相應(yīng)的引用協(xié)議,如在進(jìn)行二次開發(fā)之前,需要添加Microsoft.NET平臺與SolidWorks三維軟件的引用協(xié)議SolidWorks. Interop.sldworks.dll和SolidWorks.Interop.swconst.dll。SolidWorks二次開發(fā)工作過程如圖1所示。

        圖1 SolidWorks二次開發(fā)工作過程

        2 Windows窗體程序框架的設(shè)計(jì)與搭建

        2.1 主程序窗口的設(shè)計(jì)

        二次開發(fā)的減速器箱體設(shè)計(jì)程序包含3個窗體界面,其中主界面是程序打開后展現(xiàn)的首個界面,包括1個裝配完成狀態(tài)下的減速器箱體二維示意圖和6個按鈕控件,6個按鈕分別為“打開SolidWorks”“箱體設(shè)計(jì)”“箱蓋設(shè)計(jì)”“打開裝配體”“生成工程圖”“退出”。主界面設(shè)計(jì)如圖2所示。

        圖2 二級減速器箱體設(shè)計(jì)軟件主界面

        減速器箱體裝配體的示意圖通過圖片框應(yīng)用(PictureBox)實(shí)現(xiàn)。在進(jìn)行二次開發(fā)時,根據(jù)實(shí)際圖片大小和整個開發(fā)窗口的大小,將圖片框位置設(shè)置為(22,30),圖片框大小設(shè)置為448×336,將圖片來源設(shè)置為存放減速器箱體裝配體二維示意圖的文件夾,并且選擇經(jīng)過調(diào)整和修飾的圖片。

        2.2 箱體設(shè)計(jì)子窗口的設(shè)計(jì)

        通過主窗口界面上的箱體設(shè)計(jì)按鈕,鏈接到箱體設(shè)計(jì)的子界面上,進(jìn)行箱體數(shù)據(jù)的采集與錄入。箱體設(shè)計(jì)界面如圖3所示。

        圖3 箱體設(shè)計(jì)的子界面

        減速器箱體設(shè)計(jì)的子界面包含25個標(biāo)簽控件(Label)、25個文本框控件(TextBox)和3個按鈕控件(Button)。其中,標(biāo)簽控件用來設(shè)置提示文本,文本框控件用來錄入數(shù)據(jù),按鈕控件用來執(zhí)行保存數(shù)據(jù)、建立箱體三維零件、繪制二維工程圖與關(guān)閉當(dāng)前箱體設(shè)計(jì)子窗口等操作。

        2.3 箱蓋設(shè)計(jì)窗口的設(shè)計(jì)

        在完成箱體的設(shè)計(jì)之后,用戶返回主界面,再通過主界面上的箱蓋設(shè)計(jì)按鈕,鏈接到箱蓋設(shè)計(jì)的子界面上,進(jìn)行箱蓋數(shù)據(jù)的采集與錄入。箱蓋設(shè)計(jì)界面如圖4所示。

        圖4 箱蓋設(shè)計(jì)的子界面

        箱蓋設(shè)計(jì)子界面一共包含9個標(biāo)簽控件(Label)、9個文本框控件(TextBox)和3個按鈕控件(Button)。與箱體設(shè)計(jì)界面類似,標(biāo)簽控件用來設(shè)置提示文本,文本框控件用來錄入數(shù)據(jù),創(chuàng)建三維圖按鈕控件用來繪制三維模型,繪制工程圖按鈕用來繪制對應(yīng)工程圖并且進(jìn)行標(biāo)注,退出按鈕用來關(guān)閉當(dāng)前子界面并返回主界面。

        3 零件體的尺寸驅(qū)動與工程圖生成

        3.1 零件體的尺寸驅(qū)動方法

        在SolidWorks二次開發(fā)中,API函數(shù)中包含一個通用sldwork對象,sldwork對象存在一個通用的文檔對象ModelDoc2,可以通過SolidWorks API函數(shù)將SolidWorks中的零件體、裝配體和工程圖3種文檔賦給文檔ModelDoc2,然后運(yùn)用ModelDoc2中的方法對3種文檔進(jìn)行修改與調(diào)整。

        3.1.1預(yù)備工作

        進(jìn)行零件體的SolidWorks二次開發(fā)時,首先要根據(jù)零件體文檔的存儲地址找到對應(yīng)的零件體文檔,然后將零件體文檔賦給文檔ModelDoc2,再使用ModelDoc2包含的方法對零件體的各種參數(shù)進(jìn)行修改。以箱蓋零件體為例,箱蓋零件體的參數(shù)來源比較復(fù)雜,一部分是從箱體零件上提取的,另一部分是從箱蓋設(shè)計(jì)界面上提取的,首先需要對這些數(shù)據(jù)進(jìn)行處理,然后再使用這些數(shù)據(jù)驅(qū)動箱蓋零件進(jìn)行修改。

        創(chuàng)建箱蓋三維模型之前需要先提取箱體的部分參數(shù),將箱體文檔賦給ModelDoc2所創(chuàng)建的對象。根據(jù)箱體文檔的存儲目錄,將箱體文檔賦給ModelDoc2類對象SWPartDoc,對應(yīng)步驟和代碼如下。

        1)打開文檔,判斷進(jìn)程:

        open_swfile("",getProcesson("SLDWORKS"), "SldWorks.Application");

        2)文件目錄賦值:

        int IntError=-1;

        int IntWraning=-1;

        string filepath1=ModleRoot+@"箱體.SLDPRT";

        3)打開對應(yīng)路徑下的文檔,并將這文檔賦給SwPartModelDoc2:

        SwPartDoc=swApp.OpenDoc6(filepath1,(int)swDocumentTypes_e.swDocPART,(int)swOpenDocOptions_e.swOpenDocOptions_LoadModel, "", ref IntError, ref IntWraning);

        3.1.2尺寸驅(qū)動法使用

        箱體的參數(shù)賦給ModelDoc2類對象SWPartDoc,運(yùn)用ModelDoc2中的方法獲得箱體所包含的數(shù)據(jù),例如下箱體尺寸部分代碼見表1。

        表1 下箱體尺寸的部分代碼

        3.1.3后續(xù)工作

        在修改完草圖尺寸之后,箱蓋的三維零件并不會發(fā)生改變,還需要使用代碼重新編輯箱蓋的零件體,才能改變箱蓋零件三維模型的尺寸。

        在重新編輯完零件體之后,按照輸入的尺寸使用尺寸驅(qū)動法生成箱蓋零件體,如圖5所示。

        圖5 箱蓋零件體

        3.2 零件體工程圖的生成與標(biāo)注方法

        SolidWorks二次開發(fā)的另一項(xiàng)重要功能是繪制工程圖,并且實(shí)現(xiàn)自動化標(biāo)注,這項(xiàng)功能能夠極大節(jié)省設(shè)計(jì)人員繪制二維圖的時間,設(shè)計(jì)人員可以在二次開發(fā)生成的工程圖的基礎(chǔ)之上,進(jìn)行簡單的修改與零件剖視圖的生成,快速完成零件體與裝配體的二維圖繪制。

        利用SolidWorks生成零件體的工程圖并進(jìn)行修改的方法與三維模型的修改與裝配方法類似,需要先打開零件體的工程圖,其步驟和代碼如下。

        1)打開文檔,判斷進(jìn)程:

        open_swfile("", getProcesson("SLDWORKS"), "SldWorks.Application");

        2)文件目錄賦值:

        int IntError=-1;

        int IntWraning=-1;

        string filepath2=ModleRoot+@"蓋.SLDDRW";

        3)創(chuàng)建一個新的ModelDoc2的文檔用來存放打開工程圖:

        ModelDoc2 SwDrawDoc=swApp.OpenDoc6(filepath2,int)swDocumentTypes_e.swDocDRAWING,(int)swOpenDocOptions_e.swOpenDocOptions_LoadModel, "", ref IntError, ref IntWraning);

        4)重新編輯工程圖:

        SwDrawDoc.EditRebuild3();

        在生成的基礎(chǔ)零件圖上,開發(fā)者可以預(yù)先進(jìn)行一些簡單的參數(shù)標(biāo)注,標(biāo)注樣式如圖6所示。使用者還可以根據(jù)具體情況,在基礎(chǔ)零件圖上再增加或者刪除一些參數(shù),以滿足自己的設(shè)計(jì)要求。

        零件體工程圖的標(biāo)注包含了很多細(xì)節(jié),如圖7所示是箱蓋零件體俯視圖的局部展示。

        圖6 零件體三視工程圖

        圖7 零件體工程圖局部展示

        4 裝配體的配合驅(qū)動與工程圖生成

        4.1 預(yù)備工作

        與3.1.1相同,步驟和代碼如下。

        1)打開文檔,判斷進(jìn)程:

        open_swfile("", getProcesson("SLDWORKS"), "SldWorks.Application");

        2)文件目錄賦值:

        式中:GNOx為澳斯麥特爐產(chǎn)生的氮氧化合物質(zhì)量;B為消耗的粉煤量,暫定4 700 kg/h;β為燃料中氮的轉(zhuǎn)化率,25%;N為燃料中的含氮量,某冶煉廠燃煤中含氮量為1.29%。

        int IntError=-1;

        int IntWraning=-1;

        string filepath1=ModleRoot+@"減速器.SLDASM";

        3)創(chuàng)建一個新的ModelDoc2的文檔用來存放打開裝配體:

        ModelDoc2SwAssemDoc = swApp.OpenDoc6(filepath1,(int)swDocumentTypes_e.swDocASSEMBLY,(int)swOpenDocOptions_e.swOpenDocOptions_LoadModel, "", ref IntError, ref IntWraning);

        4.2 配合驅(qū)動法使用

        以一組裝配基準(zhǔn)為例,說明配合驅(qū)動的方法,首先定義兩個零件體上需要配合的特征,然后選擇合適的裝配方法進(jìn)行裝配,步驟和代碼如下。

        1)定義需要裝配的一組基準(zhǔn)對應(yīng)的SelectByID2的字符串名稱:

        #region 裝配一對基準(zhǔn);

        2)清空選擇集后,選中基準(zhǔn)面:

        string MateBaseName2="RectangleWireConnectFace@PlugBottomBox-1@PowerStrip";

        3)清空選擇集后,選中基準(zhǔn)面:

        swAssemModleDoc.Extension.SelectByID2(MateBaseName1, "PLANE", 0, 0, 0, false, 1, null, 0);

        4)在選擇集中附加選擇與之配對的基準(zhǔn): swAssemModleDoc.Extension.SelectByID2(MateBaseName2, "PLANE", 0, 0, 0, true, 1, null, 0);

        5)添加兩個基準(zhǔn)之間距離為20 mm的距離配合:

        int x=-1;

        Mate2 SwMate = SwAssem.AddMate5(5, 1, true, 0.02, 0.02, 0.02, 0, 0, 0, 0, 0, false, true, 0, out x);

        6)配合也是特征,將其轉(zhuǎn)化為特征對象:

        Feature swMateFeature=(Feature)SwMate;

        7)配合特征重命名:

        if (swMateFeature !=null)

        {

        swMateFeature.Name="測試距離配合";

        }

        #endregion

        4.3 裝配體工程圖的生成與標(biāo)注方法

        利用SolidWorks生成零件體工程圖并進(jìn)行修改,需要先打開裝配體的工程圖,步驟和代碼如下。

        1)打開文檔,判斷進(jìn)程:

        open_swfile("", getProcesson("SLDWORKS"),

        "SldWorks.Application");

        2)文件目錄賦值:

        int IntError=-1;

        int IntWraning=-1;

        string filepath2=ModleRoot+@"減速器.SLDDRW";

        3)創(chuàng)建一個新的ModelDoc2的文檔用來存放打開的工程圖:

        ModelDoc2 SwDrawDoc=swApp.OpenDoc6 (file path2, (int)swDocumentTypes_e.swDocDRAWING, (int)swOpenDocOptions_e.swOpenDocOptions_LoadModel, "", ref IntError, ref IntWraning);

        4)重新編輯工程圖:

        SwDrawDoc.EditRebuild3();

        在生成的基礎(chǔ)裝配圖上,開發(fā)者可以預(yù)先進(jìn)行一些簡單的參數(shù)標(biāo)注,標(biāo)注樣式如圖8所示。使用者也可以根據(jù)具體情況,在基礎(chǔ)裝配圖上再增加或者刪除一些參數(shù),以滿足自己設(shè)計(jì)的要求。

        圖8 裝配體三視工程圖

        裝配體工程圖的標(biāo)注包含了很多細(xì)節(jié),如圖9所示是減速器箱體主視圖的局部展示。

        圖9 裝配體工程圖局部展示

        5 結(jié)束語

        本文運(yùn)用C# 語言結(jié)合API函數(shù)對SolidWorks進(jìn)行二次開發(fā),設(shè)計(jì)了一款能在Windows系統(tǒng)中獨(dú)立運(yùn)行的減速器箱體設(shè)計(jì)軟件,該軟件能夠?qū)崿F(xiàn)減速器箱體零件的快速參數(shù)化建模和工程圖生成,并能夠?qū)崿F(xiàn)自動化裝配和生成裝配圖。本文的方法能夠大大提高減速器箱體的設(shè)計(jì)效率,并可為其他復(fù)雜曲面結(jié)構(gòu)的參數(shù)化建模與裝配提供具有參考意義的思路。

        猜你喜歡
        箱蓋工程圖二次開發(fā)
        發(fā)射箱前蓋外壓承載剛度評估及優(yōu)化方法
        “3+4”人才培養(yǎng)模式下本科階段“工程圖學(xué)”課程的優(yōu)化設(shè)計(jì)
        面向工程認(rèn)證的機(jī)制專業(yè)工程圖學(xué)(一)課程教學(xué)探索
        淺談基于Revit平臺的二次開發(fā)
        甘肅科技(2020年20期)2020-04-13 00:30:02
        淺談Mastercam后處理器的二次開發(fā)
        模具制造(2019年3期)2019-06-06 02:11:02
        分析三維CAD建模技術(shù)在工程圖學(xué)中的應(yīng)用
        電子測試(2018年10期)2018-06-26 05:54:22
        西門子Easy Screen對倒棱機(jī)床界面二次開發(fā)
        電動車箱蓋纖維填充取向與澆口位置關(guān)系分析
        中國塑料(2016年9期)2016-06-13 03:18:55
        項(xiàng)目式教學(xué)在工程圖學(xué)課程中的探索與實(shí)踐
        基于Pro/E二次開發(fā)的推土鏟參數(shù)化模塊開發(fā)
        国产尤物AV尤物在线看| 国产一区二区三区在线观看完整版| 免费成人电影在线观看| 亚洲爆乳精品无码一区二区| 91福利视频免费| 久久爱91精品国产一区| 丁香婷婷色| 成人黄网站免费永久在线观看 | 男人天堂插插综合搜索| 国产精品一区二区av麻豆| 久久久午夜精品福利内容| 久久亚洲AV无码精品色午夜| 亚洲一区二区日韩在线| 久久99热国产精品综合| 性猛交ⅹxxx富婆视频| 国产农村乱子伦精品视频| 精品国产制服丝袜高跟| 久久久99精品视频| 美女视频黄a视频全免费网站色| 高h小月被几个老头调教| 一本大道久久香蕉成人网| 最新亚洲无码网站| 91熟女av一区二区在线| 午夜理论片yy6080私人影院| 婷婷开心深爱五月天播播| 91精品亚洲一区二区三区| 手机久草视频福利在线观看| 无码成人一区二区| 不卡视频一区二区三区| 麻豆人妻无码性色AV专区| 日韩美女av一区二区三区四区| 国产精品av在线| 午夜家庭影院| 久久精品国产亚洲av高清蜜臀| 免费在线观看av不卡网站 | 毛片大全真人在线| 亚洲欧美日韩国产精品一区| 中文字幕成人精品久久不卡91| 国产在热线精品视频| 国产真人性做爰久久网站| 91爱爱视频|