国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SolidWorks方程式及API的容積式換熱器參數(shù)化設(shè)計(jì)*

2017-11-13 06:34王曉翔
化工機(jī)械 2017年4期
關(guān)鍵詞:二次開發(fā)筒體方程式

王曉翔

(陜西普光能源技術(shù)有限公司)

基于SolidWorks方程式及API的容積式換熱器參數(shù)化設(shè)計(jì)*

王曉翔

(陜西普光能源技術(shù)有限公司)

為提高容積式換熱器的繪圖效率,簡述了基于SolidWorks的參數(shù)化設(shè)計(jì)方式,介紹了SolidWorks方程式結(jié)構(gòu)和API對象的層次結(jié)構(gòu)。分析了兩種方式的工作原理并詳細(xì)介紹了系統(tǒng)工作流程。使用VB語言設(shè)計(jì)交互界面,設(shè)計(jì)出容積式換熱器的參數(shù)化設(shè)計(jì)系統(tǒng)。結(jié)果表明:該系統(tǒng)具有界面簡潔和繪圖準(zhǔn)確的特點(diǎn),能大幅提高設(shè)計(jì)效率。

容積式換熱器 API SolidWorks 參數(shù)化設(shè)計(jì)

容積式換熱器具有換熱效率高、儲水能力大的優(yōu)點(diǎn),被廣泛應(yīng)用于化工、石油、機(jī)械、電力、集中供暖及食品制藥等領(lǐng)域[1]。但它的參數(shù)較多,無論是前期設(shè)計(jì),還是后期繪制制造工程圖,均需要花費(fèi)大量的時間。

參數(shù)化設(shè)計(jì)也稱為變形設(shè)計(jì),是指在不改變基本原理的基礎(chǔ)上,為滿足不同的功能需求,通過參數(shù)改變產(chǎn)品的局部構(gòu)造,對具體結(jié)構(gòu)進(jìn)行調(diào)整形成參數(shù)不同的同類產(chǎn)品[2,3],參數(shù)化設(shè)計(jì)是企業(yè)目前廣泛采用的機(jī)械設(shè)計(jì)方法,能大幅提高零件的重復(fù)利用率,從而提高設(shè)計(jì)效率。筆者首次將SolidWorks方程式和API的參數(shù)化設(shè)計(jì)方式相結(jié)合,對復(fù)雜的容積式換熱器進(jìn)行參數(shù)化設(shè)計(jì),以提高設(shè)計(jì)效率。

1 SolidWorks參數(shù)化設(shè)計(jì)方式

SolidWorks是世界上第一款基于Windows的三維參數(shù)化設(shè)計(jì)軟件[4],在國內(nèi)外廣泛應(yīng)用。但SolidWorks是一款通用設(shè)計(jì)軟件,不能完全滿足每個行業(yè)的特殊要求,為此,它提供了兩種不同形式的變形設(shè)計(jì),分別為:

a.基于方程式的變形設(shè)計(jì)[5,6]。該方式的主要在不同零件參數(shù)之間建立一定的尺寸關(guān)系,進(jìn)行鏈接,從而達(dá)到只改變少量的主動參數(shù)即可對全部參數(shù)進(jìn)行修改的目的。該方式優(yōu)點(diǎn)是簡單易用,并支持特征壓縮,幾乎不需要復(fù)雜編程;缺點(diǎn)是變形能力較弱,不適合較大的變形。

b.基于API(Application Programing Interface)的變形設(shè)計(jì)[7,8]。該方式主要通過VB、C++等高級程序語言調(diào)用SolidWorks的API函數(shù),使用程序驅(qū)動軟件繪圖。優(yōu)點(diǎn)是能靈活地達(dá)到較大的變形設(shè)計(jì)目的;缺點(diǎn)是需要熟練運(yùn)用程序語言、API函數(shù)等,前期需要較復(fù)雜的編程。

筆者同時使用上述兩種形式的變形設(shè)計(jì),使用VB語言建立交互界面,對容積式換熱器進(jìn)行參數(shù)化設(shè)計(jì)。

2 SolidWorks變型設(shè)計(jì)基礎(chǔ)

2.1 方程式結(jié)構(gòu)

在SolidWorks零件中有3種形式的方程式,分別為“全局變量”、“特征”、“尺寸”,用戶可單獨(dú)使用或聯(lián)合使用。

“全局變量”一般用于存儲主動參數(shù),其表示方式為:

A=P

A——全局變量名稱;

P——全局變量數(shù)值。

“特征”用于對特征的壓縮或解壓縮,表示方式為:

B=S

B——特征名稱;

S——零部件狀態(tài),有壓縮和解壓縮兩種狀態(tài)。

“尺寸”一般用于存儲從動參數(shù),其表示方式為:

C@D=P

C——草圖或特征的參數(shù)名稱,如長、寬等;

D——零件草圖或特征名稱。

2.2 特征的壓縮與解壓縮

特征的壓縮(suppressed)是指將拉伸、切除等特征從產(chǎn)品裝配體中隱藏,并從電腦內(nèi)存中移除,但并不刪除,當(dāng)工藝參數(shù)要求需要該特征時,可對它解除壓縮(unsuppressed)。壓縮與解壓縮相對于刪除與添加可以減少電腦工作時占用的內(nèi)存,提高設(shè)計(jì)效率[9]。

SolidWorks支持通過IF判斷語句對特征實(shí)施條件壓縮,即根據(jù)某些條件是否滿足對零部件進(jìn)行壓縮或解壓縮,如:排污口=IF(“直徑”<50,suppressed ,unsuppressed)。

2.3 SolidWorks API

對SolidWorks進(jìn)行二次開發(fā)的方式一般有兩種[10,11]:一種是基于COM的,可以生成*.dll格式的文件,作為插件在SolidWorks中運(yùn)用;另一種是基于OLE的,可以開發(fā)出獨(dú)立的第三方exe程序。筆者選擇基于OLE技術(shù)的二次開發(fā),開發(fā)出exe形式的應(yīng)用程序。

SolidWorks對象模型結(jié)構(gòu)如圖1所示,它是一個多層次的樹形結(jié)構(gòu),每一層均包含若干個對象,每個對象封裝了特定的屬性、事件和方法。

圖1 API對象結(jié)構(gòu)

SolidWorks 提供了幾百個 API函數(shù)供用戶使用,常用的API函數(shù)[12]及其注解為:

NewDocument 新建

SaveAs2 保存

SelectByID 選擇

AddMate 配合

CreateCircleByRadius2 創(chuàng)建圓

FeatureExtrusion2 拉伸實(shí)體

其中,SelectByID是最重要的函數(shù)之一,可以選擇實(shí)體特征、草圖以及點(diǎn)、線、面等所有的對象,其格式為:Boolstatus =PART.SelectByID(Name,Type,X,Y,Z)。其中,name指選擇對象的名稱;Type指對象的類型;X,Y,Z指被選擇對象上任意一點(diǎn)的坐標(biāo)。

3 設(shè)計(jì)實(shí)例

3.1 容積式換熱器結(jié)構(gòu)

換熱器是熱交換系統(tǒng)的關(guān)鍵產(chǎn)品,主要由筒體、封頭、底座、管箱、法蘭、儀表接管及機(jī)芯組件等零部件組成,如圖2所示。

圖2 容積式換熱器結(jié)構(gòu)

系統(tǒng)工作流程如圖3所示,對于筒體的直徑、厚度及高度等只有參數(shù)變化而不涉及到形狀變化的部分,采用方程式設(shè)計(jì)。對于換熱器筒體與法蘭以及換熱機(jī)芯之間的裝配,采用API函數(shù)和VB語言進(jìn)行二次開發(fā)的方式來實(shí)現(xiàn)。

3.2 基于方程式的變形設(shè)計(jì)

先設(shè)置底層的全局變量,然后將從動參數(shù)與全局變量建立方程式進(jìn)行鏈接??梢酝ㄟ^只改變少數(shù)全局變量即達(dá)到修改全部參數(shù)的目的。

圖3 系統(tǒng)流程

3.2.1 特征壓縮

溫度計(jì)、壓力表支管數(shù)量一般有2~4個,應(yīng)根據(jù)實(shí)際工藝參數(shù)而定??梢栽谇捌趯?個支管全部繪制出來,根據(jù)工藝條件判斷是否將其壓縮,對于第4個支管,賦予以下方程式:

支管4=IF(“支管數(shù)量”=4,unsuppressed,suppressed)

該方程式表示,當(dāng)需要4個支管時,第4個支管不壓縮;否則,被壓縮。

3.2.2 多條件判斷

換熱器支座高度與換熱器直徑的關(guān)系見表1,這里可以使用iff多條件判斷函數(shù)建立方程式,處理上述復(fù)雜關(guān)系。以下方程式可以使支座高度根據(jù)所輸入的參數(shù)自動變化:

"h@底座" = iif ( "直徑" <= 1000 ,350 ,iif ( "直徑" <= 1400 ,420 ,iif ( "直徑" <= 1800 ,460 ,500 ) ) )

表1 支座高度 mm

3.2.3 鏈接外部文件

方程式可以鏈接到外部的TXT文件,進(jìn)行數(shù)據(jù)傳輸。通過VB生成的exe應(yīng)用程序,修改TXT文件中的全局變量,進(jìn)而修改所有參數(shù),滿足新工藝條件的要求。程序核心代碼如下:

Open App.Path &"" &Fillname &".txt" For Input As #1

Do While Not EOF(1)

i = i + 1

Line Input #1,LStr : L = InStr(LStr,"=")

LStr = Left(LStr,L) : LStr = LStr &A(i)

MyStr = MyStr &LStr &vbCrLf

If i = n Then Exit Do

Loop

修改全局變量后,所有的方程式快速地逐次自動求解,可以節(jié)省大量時間。

3.3 基于API的變形設(shè)計(jì)

對于換熱器筒體與法蘭以及換熱機(jī)芯之間的裝配,使用方程式技術(shù)比較難實(shí)現(xiàn),這里采用API函數(shù)和VB語言結(jié)合的方式來靈活實(shí)現(xiàn)。對于筒體與第1個法蘭零件裝配的核心代碼與注釋如下:

′鏈接SolidWorks

Set SWAPP=CreateObject("SldWorks.Application")

′添加對應(yīng)的法蘭零件,Name1為第1個法蘭的名稱

boolstatus = PART.AddComponent(Name1,0,0,0)

′整理點(diǎn)對象參數(shù),TT為筒體名稱,ZPT為裝配體名稱

Temp1 = "Point1@原點(diǎn)@Name1-1@ZPT"

Temp2 = "Point1@3DSketch1@TT-1@ZPT"

′選擇點(diǎn)對象

boolstatus = PART.SelectByID(Temp1,"",…)

boolstatus = PART.SelectByID(Temp2,"",…)

′點(diǎn)與點(diǎn)進(jìn)行裝配

Set myMate = PART.AddMate4(0,-1,False,…)

′面與面裝配

Set myMate = PART.AddMate4(3,0,False,…)

′重建模型

PART.EditRebuild3

其他零件與筒體之間的裝配代碼與上述代碼類似,不再贅述。該程序與上述修改TXT文件的程序可以整合到一起,交互界面如圖4所示,界面簡潔易懂,又具有靈活的變形功能。

圖4 程序交互界面

4 結(jié)束語

提出一種基于SolidWorks方程式和API的參數(shù)化設(shè)計(jì)方式,在零件層次和裝配體層次分別運(yùn)用方程式和API函數(shù)對容積式換熱器進(jìn)行參數(shù)化設(shè)計(jì),使用VB語言建立交互界面。該參數(shù)化設(shè)計(jì)系統(tǒng)界面簡潔且變形靈活,能大幅提高設(shè)計(jì)效率。

[1] 蘆潮,朱敦智.盤管式與容積式儲熱水箱供水實(shí)驗(yàn)研究[J].太陽能學(xué)報(bào),2008,29(5): 569~573.

[2] 錢婷婷.液壓支架變型設(shè)計(jì)方法及應(yīng)用研究[D].蘇州: 蘇州大學(xué),2015.

[3] 李振興,王宗彥,曾清平.配置產(chǎn)品變型設(shè)計(jì)技術(shù)研究[J].煤礦機(jī)械,2012,33(11): 251~253.

[4] 劉太冉,崔煥勇,王海燕,等.基于SolidWorks的修形直齒錐齒輪設(shè)計(jì)系統(tǒng)[J].濟(jì)南大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,28(6): 446~451.

[5] 高捷.基于SolidWorks的施工升降機(jī)CAD系統(tǒng)研究與開發(fā)[D].西安: 長安大學(xué),2013.

[6] 宋龍,馬龍,賈志欣.基于SolidWorks的曲柄壓力機(jī)傳動機(jī)構(gòu)部件參數(shù)化技術(shù)研究[J].鍛壓技術(shù),2015,40(2): 107~111.

[7] 馬詠梅,丁行武,李鑫.SolidWorks二次開發(fā)在機(jī)械零件設(shè)計(jì)中的應(yīng)用與研究[J].機(jī)械傳動,2010,34(1): 72~74.

[8] 許書生,徐兵,李春光,等.基于SolidWorks二次開發(fā)的軸向柱塞泵參數(shù)化建模設(shè)計(jì)[J].機(jī)床與液壓,2010,38(9): 71~73.

[9] 劉敬,朱長才,孫家廣.基于SolidWorks的設(shè)備庫的研究和實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究,2006,23(1): 132~135,140.

[10] 羅臣強(qiáng),仲梁維,朱娟.基于配置技術(shù)的起重機(jī)起升機(jī)構(gòu)快速設(shè)計(jì)系統(tǒng)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2012,21(2): 18~21.

[11] 田文濤,賀小華.基于VB技術(shù)的SolidWorks二次開發(fā)與應(yīng)用[J].計(jì)算機(jī)工程與科學(xué),2009,31(7): 65~67,76.

[12] 辛楊桂.基于VB.NET的SolidWorks二次開發(fā)在液壓設(shè)計(jì)中的應(yīng)用[D].沈陽: 東北大學(xué),2011.

ParametricDesignoftheVolumetricHeatExchangerBasedontheSolidWorksEquationandAPI

WANG Xiao-xiang

(ShaanxiPuguangEnergyTechnologyCo.,Ltd.)

In order to improve the drawing efficiency of the volumetric heat exchanger,the SolidWorks-based parametric design methods,the structure of the SolidWorks equation and the hierarchy of the API object were introduced and the working principle of aforementioned two methods was analyzed and the working flow of the system was introduced in detail.Having VB language used to design the interactive interface and the parametric design system of the volumetric heat exchanger was implemented to show that,the system has simple interface,accurate drawing and it can greatly improve the design efficiency.

volumetric heat exchanger,API,SolidWorks,parametric design

王曉翔(1991-),工程師,從事化工及新能源的研究,originalcandy@163.com。

TQ051.5

A

0254-6094(2017)04-0410-04

2016-10-13)

猜你喜歡
二次開發(fā)筒體方程式
巧配化學(xué)方程式
b型管板與筒體溫差應(yīng)力的分析計(jì)算和評定
回轉(zhuǎn)窯筒體對接操作方法
一種臥式筒體糞污發(fā)酵裝置的筒體設(shè)計(jì)與分析
基于Eulerian模型有機(jī)硅流化床變徑筒體的數(shù)值模擬
挑戰(zhàn)一級方程式
西門子Operate高級編程的旋轉(zhuǎn)坐標(biāo)系二次開發(fā)
淺談Mastercam后處理器的二次開發(fā)
教養(yǎng)方程式
西門子Easy Screen對倒棱機(jī)床界面二次開發(fā)