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

?

基于UG二次開發(fā)的冰箱結(jié)構(gòu)系統(tǒng)快速設(shè)計

2013-09-12 06:14汪年結(jié)
機(jī)械設(shè)計與制造工程 2013年11期
關(guān)鍵詞:二次開發(fā)特征參數(shù)對話框

汪年結(jié),劉 宇,高 浪,彭 玲,向 東

(1.四川長虹電器股份有限公司,四川綿陽 621000)

(2.清華大學(xué)機(jī)械工程系,北京 100084)

基于UG二次開發(fā)的冰箱結(jié)構(gòu)系統(tǒng)快速設(shè)計

汪年結(jié)1,劉 宇1,高 浪2,彭 玲1,向 東2

(1.四川長虹電器股份有限公司,四川綿陽 621000)

(2.清華大學(xué)機(jī)械工程系,北京 100084)

縮短開發(fā)時間、提高零件通用化率是冰箱制造企業(yè)提升競爭力的重要途徑。針對冰箱開發(fā)過程中結(jié)構(gòu)系統(tǒng)設(shè)計時間長、零件通用化程度低、設(shè)計標(biāo)準(zhǔn)難以執(zhí)行的問題,提出基于UG二次開發(fā)的冰箱結(jié)構(gòu)系統(tǒng)快速設(shè)計方法并給出程序設(shè)計方案。首先基于模塊化、參數(shù)化設(shè)計和面向?qū)ο笾R表示的思想,建立結(jié)構(gòu)系統(tǒng)的參數(shù)化模型;然后利用UG NX/Open提供的二次開發(fā)功能,在UG中建立了冰箱結(jié)構(gòu)系統(tǒng)快速設(shè)計功能菜單、對話框和應(yīng)用程序,實現(xiàn)了三維建模環(huán)境下的結(jié)構(gòu)系統(tǒng)參數(shù)化快速生成。

UG;二次開發(fā);冰箱;快速設(shè)計;參數(shù)化設(shè)計

隨著市場需求的不斷變化,冰箱產(chǎn)品的更新?lián)Q代加快,市場對產(chǎn)品開發(fā)的速度提出了更高的要求。冰箱產(chǎn)品的結(jié)構(gòu)系統(tǒng)設(shè)計在冰箱產(chǎn)品開發(fā)中占有較大比重,結(jié)構(gòu)系統(tǒng)快速設(shè)計對于冰箱的開發(fā)具有重要意義。冰箱產(chǎn)品型號多樣,但是功能相對穩(wěn)定,技術(shù)相對成熟,形成了大量成熟、穩(wěn)定的設(shè)計經(jīng)驗和規(guī)范。在結(jié)構(gòu)設(shè)計中合理地重用這部分設(shè)計經(jīng)驗,實現(xiàn)參數(shù)化驅(qū)動的變型設(shè)計,是結(jié)構(gòu)系統(tǒng)快速設(shè)計的基本途徑;制定并執(zhí)行設(shè)計規(guī)范是減少不必要的零件變型、減少零件型號的重要舉措。

設(shè)計經(jīng)驗的重用和設(shè)計規(guī)范的可視化、易操作化需要IT工具的有效支撐,UG NX是西門子公司旗下的一款三維制作軟件,其強大的建模能力使得冰箱設(shè)計人員能夠有效地建立冰箱零件和裝配模型,指導(dǎo)產(chǎn)品的制造過程;其提供的二次開發(fā)功能則支持設(shè)計人員根據(jù)具體設(shè)計任務(wù)的特點,建立專門的設(shè)計程序或管理工具,實現(xiàn)三維設(shè)計工具的擴(kuò)展功能或與PDM系統(tǒng)的有效集成,加快產(chǎn)品的開發(fā)速度,促進(jìn)企業(yè)內(nèi)部知識的共享和延續(xù)。文獻(xiàn)[1]~[5]介紹了基于.NET框架的UG二次開發(fā)技術(shù)的基本原理和實例應(yīng)用。本文在上述研究的基礎(chǔ)上,從模塊化、參數(shù)化的角度對冰箱結(jié)構(gòu)系統(tǒng)進(jìn)行了建模分析,并基于UG NX/Open二次開發(fā)功能,開發(fā)了冰箱結(jié)構(gòu)系統(tǒng)快速設(shè)計原型系統(tǒng)。

1 冰箱結(jié)構(gòu)系統(tǒng)的參數(shù)化建模

冰箱結(jié)構(gòu)系統(tǒng)快速設(shè)計的前提是建立模塊化、參數(shù)化的結(jié)構(gòu)模型。所謂模塊化,是指將產(chǎn)品的零件或者組件封裝成具有明確功能及接口的結(jié)構(gòu)單元;所謂參數(shù)化指模塊可由特征參數(shù)驅(qū)動生成一系列的模塊實體(模塊實例)。用面向?qū)ο蟮闹R表達(dá)方式來解釋,即模塊是對象類,而模塊實體是對象實例。模塊的屬性參數(shù)分為規(guī)范化參數(shù)和特征參數(shù)兩類,其中規(guī)范化參數(shù)由設(shè)計規(guī)范規(guī)定,一般的設(shè)計人員無權(quán)限修改,例如企業(yè)標(biāo)準(zhǔn)規(guī)定的鈑金件截面、塑料件厚度等;特征參數(shù)是模塊的驅(qū)動參數(shù),一般是根據(jù)模塊的外部條件通過接口驅(qū)動生成的,通過特征參數(shù)的變化可以快速地生成一族模塊實體。這種建模方式使模塊實體能有效地繼承模塊的設(shè)計要素,并能通過指定的參數(shù)進(jìn)行變型,達(dá)到規(guī)范化設(shè)計和快速設(shè)計的雙重效果。

1.1 零件的模塊化、參數(shù)化建模

零件的模塊化、參數(shù)化建模是根據(jù)模塊化設(shè)計和面向?qū)ο蠼5乃枷?,將零件或組件的規(guī)范化參數(shù)進(jìn)行封裝,建立圍繞特征參數(shù)的模型生成機(jī)制,并建立特征參數(shù)與外部設(shè)計輸入的接口關(guān)系。在UG里參數(shù)以及參數(shù)之間的關(guān)聯(lián)可以表達(dá)式的形式來體現(xiàn),圍繞特征參數(shù)三維建模的關(guān)鍵點在于模型內(nèi)部的參數(shù)均以特征參數(shù)為參照。以冰箱結(jié)構(gòu)的中梁為例,其結(jié)構(gòu)要素如圖1所示。

圖1 中梁的結(jié)構(gòu)要素

其中,結(jié)構(gòu)要素2,3,5在梁身的左右對稱位置,要素4在梁身的上下對稱位置,圖1中均只在一側(cè)進(jìn)行了標(biāo)注。梁由于和兩個側(cè)板上對應(yīng)的安裝孔配合,所以其特征參數(shù)為兩個中梁固定孔之間的間距尺寸;而剩余的要素如中梁固定孔、中梁安裝片、合頁安裝孔和內(nèi)膽安裝槽的典型結(jié)構(gòu)、尺寸和相對位置由企業(yè)設(shè)計規(guī)范規(guī)定,在模型中予以固化并實現(xiàn)可視化。因此,建模的時候應(yīng)該首先建立合頁的“合頁安裝孔距離”表達(dá)式,例如以“holes-Width”表示,后續(xù)建模過程中在中梁的左右寬度方向上需要引用到這一距離時,均用附帶“holes-Width”的公式來表達(dá)。由此生成的三維模型是一個可進(jìn)行參數(shù)化設(shè)計的模板文件,能從外部進(jìn)行修改的參數(shù)只有“holesWidth”,該特征參數(shù)確定后即可生成具體的零件。

1.2 結(jié)構(gòu)系統(tǒng)的參數(shù)化快速設(shè)計

模塊化設(shè)計的一大特點是模塊之間可通過特征參數(shù)關(guān)聯(lián)實現(xiàn)系統(tǒng)的參數(shù)化設(shè)計。對于冰箱產(chǎn)品而言,用戶對于冰箱的尺寸有多樣化的需求,因此需要建立冰箱結(jié)構(gòu)系統(tǒng)外廓尺寸的參數(shù)化驅(qū)動方案?;赨G的裝配關(guān)聯(lián)技術(shù),可實現(xiàn)特征參數(shù)表達(dá)式的引用,達(dá)到參數(shù)驅(qū)動的效果。以兩門冰箱為例,其結(jié)構(gòu)系統(tǒng)模型如圖2所示。

圖2 兩門冰箱的結(jié)構(gòu)系統(tǒng)

在三維模型裝配的過程中,以一側(cè)的側(cè)板為裝配基準(zhǔn),在冰箱寬度方向上由安裝孔定位裝配上梁、中梁、下梁、后上梁等諸多零件,再以上述梁另一側(cè)的孔安裝另一塊側(cè)板,支架分別與側(cè)板的兩個邊配合。結(jié)構(gòu)系統(tǒng)的驅(qū)動參數(shù)為外廓尺寸“寬度”、“深度”和“高度”,分別建立表達(dá)式 Width、Depth和Height,根據(jù)模塊的接口關(guān)系,建立結(jié)構(gòu)系統(tǒng)驅(qū)動參數(shù)到模塊特征參數(shù)之間的映射關(guān)系。3個驅(qū)動參數(shù)與模塊特征參數(shù)的映射關(guān)系見表1。

表1中的表達(dá)式除Width、Depth和Height根據(jù)設(shè)計需求確定外,其余參數(shù)均為設(shè)計規(guī)范規(guī)定的參數(shù)。因此,通過結(jié)構(gòu)系統(tǒng)3個驅(qū)動參數(shù)的修改,可驅(qū)動各個模塊特征參數(shù)生成新的模塊實體,實現(xiàn)整個結(jié)構(gòu)系統(tǒng)的快速設(shè)計。

2 UG二次開發(fā)的應(yīng)用

UG二次開發(fā)工具提供的MenuScript菜單腳本語言、UIStyler對話框編輯器用于建立UG中的自定義菜單和對話框;NX Open應(yīng)用程序接口(API)基于.NET框架,支持VB.NET、C#等高級編程語言,大大地提高了編程效率,降低了編程難度。本文基于UG 7.5,采用C#編程語言在Visual Studio 2010開發(fā)環(huán)境中進(jìn)行二次開發(fā),實現(xiàn)第1節(jié)中所述的結(jié)構(gòu)系統(tǒng)參數(shù)化設(shè)計系統(tǒng)。二次開發(fā)的實現(xiàn)方式根據(jù)對話框的類型主要有兩種:第一種是利用UG附帶UIStyler功能建立對話框,編寫菜單的回調(diào)程序,生成.dll動態(tài)鏈接庫被UG調(diào)用實現(xiàn)相應(yīng)功能;第二種是采用Windows窗體應(yīng)用程序,用.NET框架中的控件實現(xiàn)。本文介紹第一種方式,并在最后對第二種方式進(jìn)行簡要介紹和對比。

表1 結(jié)構(gòu)系統(tǒng)驅(qū)動參數(shù)與模塊特征參數(shù)的映射關(guān)系

在進(jìn)行UG二次開發(fā)之前,需要先建立工作目錄,目錄下包含“startup”和“application”兩個子文件夾,然后建立環(huán)境變量“UGII_USER_DIR”,并將工作目錄地址設(shè)為變量值。

2.1 菜單及界面設(shè)計

a.在工作目錄的“startup”文件夾下新建*.men文件,并用記事本編寫文本如下:

VERSION 121

EDIT UG_GATEWAY_MAIN_MENUBAR

BEFORE UG_HELP

CASCADE_BUTTON CUSTOM_MENU

LABEL冰箱設(shè)計

END_OF_BEFORE

MENU CUSTOM_MENU

BUTTON SUB_MENU

LABEL結(jié)構(gòu)系統(tǒng)快速設(shè)計

ACTIONS*.dll

END_OF_MENU

打開UG后,自動生成的菜單文件如圖3所示。

圖3 UG中生成的菜單

b.打開UG中的UIStyler界面編輯器,選取標(biāo)簽、數(shù)字輸入框控件構(gòu)建如圖4所示的對話框。

圖4 UG中的圖形界面

將對話框按照C#語言保存,生成一個*.dlg文件和一個*.cs文件,將*.dlg文件放置在application文件夾中。

2.2 程序編寫

在VS2010中加載UG為C#提供的模板文件(位置在“...UGSNX 7.5UGOPENvs_filesVC#”),新建一個解決方案,將程序文件替換成2.1節(jié)中生成的*.cs文件。在“應(yīng)用”按鈕的回調(diào)函數(shù)apply_cb()內(nèi),添加代碼實現(xiàn)讀取對話框中數(shù)值,并賦給相應(yīng)表達(dá)式。對表達(dá)式的操作使用Expression(表達(dá)式)類,首先新建Expression類的實例,然后按名稱搜索結(jié)構(gòu)系統(tǒng)模型中的表達(dá)式對實例進(jìn)行賦值,最后從數(shù)字輸入框中讀入驅(qū)動參數(shù)并將參數(shù)賦給表達(dá)式實例?;卣{(diào)函數(shù)apply_cb()的主要代碼如下:

……

//獲取當(dāng)前對話框和當(dāng)前工作部件

theSession=Session.GetSession();

theUFSession=UFSession.GetUFSession();

workPart=theSession.Parts.Work;

//------------------

i

nt width,depth,height;

width=changeInt0.ItemValue;

depth=changeInt1.ItemValue;

height=changeInt2.ItemValue;

//建立3個表達(dá)式對象并賦予模型表達(dá)式的值

Expression expWidth,expDepth,expHeight;

expWidth=workPart.Expressions.FindObject(“Width”);

expDepth= workPart.Expressions.FindObject(“Depth”);

expHeight=workPart.Expressions.FindObject(“Height”);

//------------------

//修改模型表達(dá)式的值

workPart.Expressions.Edit(expWidth,width.ToString());

workPart.Expressions.Edit(expDepth,depth.ToString());

workPart.Expressions.Edit(expHeight,height.ToString());

//------------------

theUFSession.Modl.Update(); //更新模型

……

2.3 運行調(diào)試

生成解決方案得到*.dll文件,將該文件置于application文件夾下,并將文件名寫到*.men文件中按鈕的事件中。在UG中加載結(jié)構(gòu)系統(tǒng)模型文件,通過菜單打開對話框,輸入所需的外廓尺寸,點擊“應(yīng)用”即可生成相應(yīng)的三維模型,如圖5所示。需要注意的是,為使修改數(shù)值后模型能夠?qū)崟r更新,需要在導(dǎo)航器上的裝配體處右鍵選取“WAVE——解決更新狀態(tài)”。

圖5 在UG中通過參數(shù)驅(qū)動結(jié)構(gòu)系統(tǒng)

2.4 討論

以上方案是基于UG內(nèi)部開發(fā)環(huán)境進(jìn)行二次開發(fā),其優(yōu)點是能夠與UG的開發(fā)風(fēng)格保持一致,適合較為簡單的程序功能。另一種實現(xiàn)方式是利用Windows窗體設(shè)計,其主要區(qū)別在于程序中不需要加載對話框文件*.dlg,而是新建Windows窗體(Form)類的實例,在窗體中添加控件,并編寫相關(guān)的事件函數(shù)來實現(xiàn)所需的功能,這種方法能夠充分運用.NET豐富的設(shè)計資源,并能與數(shù)據(jù)庫進(jìn)行很好的集成,適合較為復(fù)雜的應(yīng)用程序或需要與數(shù)據(jù)庫集成的場合。

3 結(jié)論

本文通過冰箱結(jié)構(gòu)系統(tǒng)的參數(shù)化、模塊化分析,建立了結(jié)構(gòu)系統(tǒng)驅(qū)動參數(shù)與模塊特征參數(shù)的映射關(guān)系,并應(yīng)用UG NX/Open提供的二次開發(fā)功能,給出了UG中設(shè)計菜單、對話框和回調(diào)函數(shù)的具體設(shè)計程序,實現(xiàn)了冰箱結(jié)構(gòu)系統(tǒng)外廓參數(shù)改變后模塊模型的自動重建。本文提出的方法對于冰箱企業(yè)進(jìn)行結(jié)構(gòu)系統(tǒng)快速設(shè)計具有參考意義,后續(xù)的研究方向為解決多個驅(qū)動參數(shù)映射到多個模塊特征參數(shù)時的耦合問題,以及建立UG二次開發(fā)系統(tǒng)與企業(yè)PDM系統(tǒng)的集成方案等。

[1]游安弼.用 C#二次開發(fā) UG NX[J].現(xiàn)代機(jī)械,2007(2):79-82.

[2]朱宏宇,任樹華..NET的UG二次開發(fā)接口技術(shù)的研究與應(yīng)用[J].現(xiàn)代制造工程,2008(12):48-50.

[3]何麗,孫文磊,王宏偉.UG二次開發(fā)技術(shù)在Web零件庫系統(tǒng)開發(fā)中的應(yīng)用研究[J].機(jī)床與液壓,2011,39(20):9-11.

[4]劉興廣,蘇霞.基于C#.NET的NX7二次開發(fā)研究[J].計算機(jī)光盤軟件與應(yīng)用,2012(7):159-160.

[5]張萍.基于 UG NX子午胎活絡(luò)模 CAD系統(tǒng)研究與開發(fā)[D].淄博:山東理工大學(xué),2009.

Rapid Design for Refrigerator Structure System Based on UG NX/Open

WANG Nianjie1,LIU Yu1,GAO Lang2,PENG Lin1,XIANG Dong2
(1.Changhong Electric Co.,Ltd,Sichuan Mianyang,621000,China)
(2.Tsinghua University,Beijing,100084,China)

In order to shorten the development cycle and rise the commonality,it proposes a new method based on UG NX/Open to achieve rapid design for refrigerator structure system,and gives a relative program.Firstly,it builds the parametric model of refrigerator structure system based on modular design,parametric design and object-oriented modeling.Then,it applies UG NX/Open technology to build the function menu,dialogue box and program.The proposed method is illustrated with a case of refrigerator structure system.

UG;Secondary Development;Refrigerator;Rapid Design;Parametric Design

TH122

A

2095-509X(2013)11-0006-04

10.3969/j.issn.2095-509X.2013.11.002

2013-08-22

國家自然科學(xué)基金資助項目(51075233);國家863計劃資助項目(SS2013AA041305)

汪年結(jié)(1977—),男,安徽安慶人,四川長虹電器股份有限公司工程師,主要研究方向為綠色設(shè)計、循環(huán)經(jīng)濟(jì)。

猜你喜歡
二次開發(fā)特征參數(shù)對話框
故障診斷中信號特征參數(shù)擇取方法
基于特征參數(shù)化的木工CAD/CAM系統(tǒng)
淺談基于Revit平臺的二次開發(fā)
正?;謴?fù)虛擬機(jī)
淺談Mastercam后處理器的二次開發(fā)
Bootlace Worms’Secret etc.
What Is Beauty?
西門子Easy Screen對倒棱機(jī)床界面二次開發(fā)
基于PSO-VMD的齒輪特征參數(shù)提取方法研究
淺談VB的通用對話框《CommonDialog》控件的使用