999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于SolidWorks二次開(kāi)發(fā)的球閥閥體參數(shù)化設(shè)計(jì)

2020-04-22 06:29:48張小鵬王洪申王學(xué)豐
機(jī)械制造與自動(dòng)化 2020年1期
關(guān)鍵詞:二次開(kāi)發(fā)模型設(shè)計(jì)

張小鵬,王洪申,王學(xué)豐

(1. 蘭州理工大學(xué) 機(jī)電工程學(xué)院,甘肅 蘭州 730050; 2. 維都利閥門(mén)有限公司,浙江 溫州 325024)

0 引言

SolidWorks是一款基于windows的三維CAD軟件,因其具有操作簡(jiǎn)單、易學(xué)易用的特點(diǎn)而廣泛運(yùn)用于各行各業(yè)[1]。閥門(mén)是工業(yè)生產(chǎn)中不可缺少的流體設(shè)備之一。球閥被廣泛應(yīng)用在石油煉制、長(zhǎng)輸管線(xiàn)、化工、造紙、制藥等行業(yè)。在國(guó)家標(biāo)準(zhǔn)中定義球閥為閥桿帶動(dòng)球體、球體繞球閥軸線(xiàn)作旋轉(zhuǎn)運(yùn)動(dòng)的一類(lèi)閥門(mén)[2]。球閥形狀特點(diǎn)是結(jié)構(gòu)相對(duì)固定,同類(lèi)球閥拓?fù)浣Y(jié)構(gòu)具有高度一致性,產(chǎn)品型號(hào)具有系列化特征,是進(jìn)行參數(shù)化設(shè)計(jì)的理想對(duì)象。通過(guò)二次開(kāi)發(fā)三維軟件的方法將同一型號(hào)的閥門(mén)參數(shù)歸納、整理,并通過(guò)可視化窗口統(tǒng)一輸入,自動(dòng)生成三維模型,可提高閥門(mén)的設(shè)計(jì)效率,降低開(kāi)發(fā)成本,縮短新產(chǎn)品的開(kāi)發(fā)周期。

1 球閥的結(jié)構(gòu)及工作原理

球閥是帶有圓形通道的啟閉件,通過(guò)手柄繞垂直于通道的軸線(xiàn)旋轉(zhuǎn),球體隨著閥桿的轉(zhuǎn)動(dòng)從而達(dá)到啟閉通道的作用[3]。設(shè)計(jì)時(shí),閥體的流道孔中心與球體(啟閉作用)流道中心對(duì)準(zhǔn)時(shí)為全開(kāi)狀態(tài),通過(guò)閥桿傳力將球體繞轉(zhuǎn)軸轉(zhuǎn)動(dòng)90°時(shí),球閥將處于完全關(guān)閉狀態(tài),如圖1所示。球閥的結(jié)構(gòu)使得它有以下幾點(diǎn)優(yōu)點(diǎn):

1) 因球閥左右通道相同,故其安裝位置相對(duì)自由,介質(zhì)的流向可以任意給定,流體阻力小;

2) 結(jié)構(gòu)簡(jiǎn)單,密封性能良好且容易維修;

3) 球閥適用于經(jīng)常操作、啟閉迅速方便的場(chǎng)合,適用范圍廣。

圖1 球閥工程圖

2 SolidWorks二次開(kāi)發(fā)原理和關(guān)鍵技術(shù)

SolidWorks的應(yīng)用程序接口(application program interface,API)是一個(gè)基于對(duì)象的嵌入與鏈接(object linking and embedding, OLE)或組件對(duì)象模型(component object model, COM)的編程接口[4]。目前對(duì)于SolidWorks的二次開(kāi)發(fā)大概分為兩種,SolidWorks內(nèi)置宏和微軟的Visual Studio(支持VB.NET、C#、C++)。SolidWorks API是一個(gè)多層次的自上而下的樹(shù)形網(wǎng)絡(luò)結(jié)構(gòu),如圖2所示。因此,對(duì)于SolidWorks類(lèi)對(duì)象的訪問(wèn)也是通過(guò)自上而下訪問(wèn)的方法。SldWorks是根目錄對(duì)象類(lèi),位于應(yīng)用程序的底層,是訪問(wèn)SolidWorks API所有對(duì)象的入口[5]。本文使用SolidWorks-API-SDK 2016提供的接口,通過(guò)Microsoft Visual Studio 2010進(jìn)行二次開(kāi)發(fā)。

圖2 SolidWorks API接口對(duì)象

3 球閥閥體參數(shù)化設(shè)計(jì)

3.1 二次開(kāi)發(fā)流程

基于SolidWorks的二次開(kāi)發(fā)思路有兩種,一種是完全程序化參數(shù)建模,這種方法是一種自下而上的建模方法,由最底層的點(diǎn)、線(xiàn)、面構(gòu)成圖形,該方法的缺陷是若零件較為復(fù)雜,則編程量太大,且專(zhuān)業(yè)要求較高。另一種方法是在三維模型的基礎(chǔ)上驅(qū)動(dòng)尺寸,這種方法是一種自上而下的建模方法,即在保證零件結(jié)構(gòu)不發(fā)生變化的情況下,建立好零件模板,運(yùn)行時(shí)只需指定尺寸值,由尺寸自動(dòng)定位到相應(yīng)的尺寸變量。該方法的優(yōu)點(diǎn)是編程量少,特征間約束由模型自動(dòng)產(chǎn)生,采用這種方法可以利用SolidWorks自身的參數(shù)化及編程技術(shù)優(yōu)勢(shì),因此所需編寫(xiě)的程序代碼相對(duì)簡(jiǎn)單[6]。圖3為閥門(mén)參數(shù)化流程。

圖3 閥門(mén)參數(shù)化設(shè)計(jì)流程

3.2 閥體的三維建模

作為參數(shù)化設(shè)計(jì)的基礎(chǔ),零件的三維建模顯得尤為重要,建模的方法及順序會(huì)直接影響參數(shù)化設(shè)計(jì)的結(jié)果。為確保參數(shù)化的正確性,在建模過(guò)程中必須要添加合理的約束,以實(shí)現(xiàn)參數(shù)的全約束,包括幾何約束和工程約束。幾何約束分為結(jié)構(gòu)約束和尺寸約束,如長(zhǎng)度、寬度、角度等約束為尺寸約束;如平行、垂直等指幾何元素之間的拓?fù)潢P(guān)系的約束為結(jié)構(gòu)約束[7]。繪制完成后,在特征樹(shù)中右鍵單擊【注解】,選中顯示特征尺寸,并在【立即視圖工具欄區(qū)】選中顯示尺寸名稱(chēng),也可以通過(guò)設(shè)計(jì)需要改變名稱(chēng)。在球閥的設(shè)計(jì)過(guò)程中,涉及的主要參數(shù)包括法蘭尺寸、壁厚、球閥結(jié)構(gòu)長(zhǎng)度等,將這些參數(shù)作為全局變量,如表1所示。

表1 全局參數(shù) 單位:mm

全局變量可以用于驅(qū)動(dòng)尺寸作為唯一的數(shù)值,通過(guò)SolidWorks自帶的方程式功能將參數(shù)之間建立關(guān)聯(lián),在SolidWorks中方程的形式是:因變量=自變量。

例如在方程式“D9@草圖1”=“D8@草圖1” / 2中,系統(tǒng)會(huì)根據(jù)尺寸D8求解尺寸D9,一旦方程式寫(xiě)好并應(yīng)用到模型之后,尺寸D9就不能直接修改,方程式建立完成之后的模型如圖4所示。

圖4 建立模型

3.3 配置及創(chuàng)建系列零件表

在SolidWorks軟件中,配置管理器是SolidWorks中非常獨(dú)特的一部分功能,它提供了簡(jiǎn)便的方法來(lái)開(kāi)發(fā)和管理一組尺寸不同、特征相似的一系列零件。在工具欄【插入】中點(diǎn)擊設(shè)計(jì)表,在彈出的對(duì)話(huà)框中選擇上一步的全局尺寸作為參數(shù)添加到設(shè)計(jì)表中,如圖5所示。

圖5 系列零件表

4 系統(tǒng)實(shí)現(xiàn)

根據(jù)上述步驟,通過(guò)SolidWorks二次開(kāi)發(fā)接口,對(duì)配置管理進(jìn)行二次開(kāi)發(fā),創(chuàng)建人機(jī)交互對(duì)話(huà)框,輸入?yún)?shù)生成不同尺寸的零件,從而實(shí)現(xiàn)參數(shù)化。

4.1 新建項(xiàng)目

在SolidWorks二次開(kāi)發(fā)過(guò)程中,非模態(tài)對(duì)話(huà)框創(chuàng)建的過(guò)程如下:

1) 插入一個(gè)新的對(duì)話(huà)框,ID默認(rèn)即可;

2) 可以直接雙擊對(duì)話(huà)框空白處或者在右鍵為對(duì)話(huà)框添加類(lèi),在彈出的類(lèi)對(duì)話(huà)框中輸入類(lèi)名(BallDlg),點(diǎn)擊確定;

3) 在工程.cpp文件中添加包含對(duì)話(huà)框頭文件的語(yǔ)句#include “FirstDlg.h”,并添加非模態(tài)對(duì)話(huà)框的初始化代碼:

BallDlg dlg=new BallDlg (AfxGetMainWnd());

4) 將設(shè)計(jì)好的對(duì)話(huà)框與SldWorks對(duì)象聯(lián)系起來(lái),即為對(duì)話(huà)框添加成員函數(shù)。

在BallDlg.h中定義:

voidgetSW(ISldWorks *Sw);

在BallDlg.cpp中聲明:

void BallDlg::getSW(ISldWorks *Sw)

this->ball_iSldWorks_dlg=Sw;

}

4.2 添加對(duì)話(huà)框控件

添加如圖6所示控件,在資源管理器選項(xiàng)卡bitmap中,將球閥閥體的位圖加入到界面中。為生成三維圖按鈕添加事件處理程序,關(guān)鍵代碼如4.3節(jié)所述。

圖6 球閥參數(shù)輸入界面

4.3 程序及函數(shù)說(shuō)明:

UpdateData(TRUE);

CComBSTRfileName(_T("..\ball valve.SLDPRT")); //打開(kāi)文件

CComPtr m_iModelDoc;

VARIANT_BOOL retval=VARIANT_TRUE;

計(jì)劃建設(shè)是執(zhí)行實(shí)施的基礎(chǔ),執(zhí)行實(shí)施是評(píng)價(jià)檢查的前提,評(píng)價(jià)檢查是優(yōu)化改進(jìn)的關(guān)鍵,上一環(huán)是下一環(huán)有序開(kāi)展的先決條件。優(yōu)化改進(jìn)階段是內(nèi)控閉環(huán)建設(shè)的核心和關(guān)鍵點(diǎn),是內(nèi)控閉環(huán)形成的重要環(huán)節(jié)。

m_iSldWorks_dlg->OpenDoc6(fileName,swDocPART,Options,NULL,&Errors,&Warnings,&m_iModelDoc); //打開(kāi)文件

CComPtrpConfigurationManager;

CComPtrpConfiguration;

m_iModelDoc->get_ConfigurationManager(&pConfigurationManager); //獲得配置名

CString a0=L"D1@草圖2";

CString a1=L"D111@草圖14";

CString a2=L"D2@草圖14";

……

pConfigurationManager->ISetConfigurationParams ( Name, paramCount, paramNames, paramValues, &retval);

m_iModelDoc->ViewZoomtofit( ); //視圖設(shè)定

在本程序中,首先輸入配置的名稱(chēng)和各尺寸的參數(shù)值,獲得當(dāng)前模型的配置管理器對(duì)象并使用程序接口添加一個(gè)新的配置,然后通過(guò)程序更改三維模型的參數(shù),實(shí)現(xiàn)零件的參數(shù)化設(shè)計(jì)。表2說(shuō)明了在SolidWorks API函數(shù)中打開(kāi)文件函數(shù)OpenDoc6各參數(shù)的意義。

表2 SldWorks->OpenDoc6各參數(shù)的說(shuō)明

4.4 添加菜單

在Addmenus()函數(shù)中,將自動(dòng)生成的代碼改為

hret = icmdGroup->AddCommandItem2(L“閥體參數(shù)化”, -1, L“閥體參數(shù)化對(duì)話(huà)框”, L“閥體參數(shù)化”, 0, callback, enable, MAIN_ITEM_ID1, menuToolbarOption, &cmdIndex0)。

4.5 異常處理

在程序中增加條件語(yǔ)句,對(duì)其進(jìn)行判斷,不僅可以有效地提示用戶(hù)出現(xiàn)錯(cuò)誤的類(lèi)型和位置,還可以通過(guò)return()函數(shù)實(shí)現(xiàn)跳轉(zhuǎn),避免SolidWorks出現(xiàn)運(yùn)算錯(cuò)誤而重啟。例如:

If(swPart=NULL)

{

AfxMessageBox(“閥體參數(shù)化設(shè)計(jì)失敗!”);

Return;

}

4.6 編譯并加載.DLL文件到SolidWorks

將設(shè)計(jì)好的閥體參數(shù)輸入到可視化界面中,尺寸參數(shù)通過(guò)從人機(jī)交互界面讀取并驅(qū)動(dòng)模型得到如圖7所示結(jié)果。

圖7 運(yùn)行結(jié)果

5 結(jié)語(yǔ)

本文介紹了在visual studio 2010環(huán)境下開(kāi)發(fā)動(dòng)態(tài)連接庫(kù)的方法,最終將編譯生成的DLL文件注冊(cè)到SolidWorks軟件中,實(shí)現(xiàn)了基于SolidWorks平臺(tái)的球閥閥體參數(shù)化設(shè)計(jì),使同類(lèi)球閥的設(shè)計(jì)難度降低,加快產(chǎn)品的設(shè)計(jì)效率。

猜你喜歡
二次開(kāi)發(fā)模型設(shè)計(jì)
一半模型
重要模型『一線(xiàn)三等角』
重尾非線(xiàn)性自回歸模型自加權(quán)M-估計(jì)的漸近分布
淺談基于Revit平臺(tái)的二次開(kāi)發(fā)
甘肅科技(2020年20期)2020-04-13 00:30:02
淺談Mastercam后處理器的二次開(kāi)發(fā)
模具制造(2019年3期)2019-06-06 02:11:02
瞞天過(guò)海——仿生設(shè)計(jì)萌到家
西門(mén)子Easy Screen對(duì)倒棱機(jī)床界面二次開(kāi)發(fā)
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專(zhuān)
Coco薇(2017年5期)2017-06-05 08:53:16
3D打印中的模型分割與打包
主站蜘蛛池模板: 久久男人资源站| 中文字幕无线码一区| 亚洲v日韩v欧美在线观看| 中文成人无码国产亚洲| 亚洲精品免费网站| 国产一级裸网站| 国产精品一区二区无码免费看片| 午夜电影在线观看国产1区| 精品国产自在现线看久久| 久久福利片| 国产午夜人做人免费视频| 亚洲一区二区精品无码久久久| 一本色道久久88| 国产91视频免费| 国产真实二区一区在线亚洲| 亚洲欧洲日韩综合色天使| 亚洲福利网址| 狠狠干综合| 国产97公开成人免费视频| 五月六月伊人狠狠丁香网| 国产综合亚洲欧洲区精品无码| 欧美一级高清片欧美国产欧美| 狠狠干欧美| 美女视频黄频a免费高清不卡| 亚洲欧美成aⅴ人在线观看| 在线观看免费人成视频色快速| 在线视频亚洲欧美| 三上悠亚一区二区| 成人午夜视频网站| 欧美国产日韩另类| 在线观看国产精品一区| 午夜三级在线| 少妇精品网站| 免费一级毛片在线观看| 色偷偷男人的天堂亚洲av| 国产福利2021最新在线观看| 久草性视频| 欧美亚洲香蕉| 91久久夜色精品国产网站| 亚洲狠狠婷婷综合久久久久| 手机精品视频在线观看免费| 国产av剧情无码精品色午夜| 人妻少妇乱子伦精品无码专区毛片| 22sihu国产精品视频影视资讯| 亚洲日韩在线满18点击进入| 亚洲日本在线免费观看| 国产欧美成人不卡视频| 毛片免费在线视频| 美女毛片在线| 青青草原国产精品啪啪视频| 国产中文一区二区苍井空| 欧美一区二区福利视频| 波多野结衣视频一区二区| 在线精品自拍| 美女无遮挡免费网站| 欧美亚洲一二三区| 久久男人资源站| 三区在线视频| 亚洲精品无码抽插日韩| 亚洲精品视频在线观看视频| 国产69精品久久久久孕妇大杂乱 | 国产视频欧美| 国产精品永久不卡免费视频| 婷婷综合色| 污视频日本| 一本大道无码高清| 欧美不卡二区| 亚洲日韩高清在线亚洲专区| 欧美a在线看| 丁香婷婷久久| 伊人婷婷色香五月综合缴缴情| 亚洲色无码专线精品观看| 中文字幕亚洲综久久2021| 在线观看免费黄色网址| 18黑白丝水手服自慰喷水网站| 国产免费高清无需播放器| 日韩在线中文| 天天综合色网| 色妞www精品视频一级下载| 丁香五月亚洲综合在线| 国产成人精品2021欧美日韩| 伊人无码视屏|