董晨
摘 要:UG是一款廣泛應(yīng)用于機(jī)械設(shè)計行業(yè)的CAD軟件,能夠完成對復(fù)雜工業(yè)產(chǎn)品的建模設(shè)計,并具有強(qiáng)大的二次開發(fā)功能。本文著重探究了VC++聯(lián)合UG二次開發(fā)進(jìn)行工業(yè)產(chǎn)品建模設(shè)計的技術(shù)問題,在對UG二次開發(fā)概念、常用工具等進(jìn)行詳細(xì)闡述的基礎(chǔ)上,以工業(yè)產(chǎn)品波紋管為例,分析了UG二次開發(fā)環(huán)境中應(yīng)用VC++進(jìn)行產(chǎn)品設(shè)計的步驟。
關(guān)鍵詞:UG;VC++;二次開發(fā);工業(yè)產(chǎn)品設(shè)計
DOI:10.16640/j.cnki.37-1222/t.2017.04.022
1 引言
UG(Unigraphics NX)是由SPS公司推出的一款工業(yè)CAD/CAM產(chǎn)品設(shè)計軟件,它針對用戶的三維及多維產(chǎn)品設(shè)計需求,提供了交互化、虛擬化的設(shè)計體驗(yàn)。在工業(yè)產(chǎn)品的設(shè)計中,UG體現(xiàn)出了強(qiáng)大的設(shè)計功能,其主要功能包含工業(yè)設(shè)計、產(chǎn)品仿真、NC加工、模具設(shè)計等,在不同的設(shè)計功能中,UG都為用戶提供了人性化、便捷化的設(shè)計思維,尤其是UG提供的二次開發(fā)功能,能夠幫助客戶全面地改善設(shè)計過程的效率,降低設(shè)計成本,縮短產(chǎn)品進(jìn)入市場的時間,將產(chǎn)品制造的過程集成到一個實(shí)現(xiàn)數(shù)字化管理和協(xié)同的框架中。可以說UG的應(yīng)用使現(xiàn)代制造業(yè)產(chǎn)品設(shè)計、加工的方式實(shí)現(xiàn)了全面革新。
2 UG二次開發(fā)概述
2.1 UG二次開發(fā)的界定
二次開發(fā)是UG內(nèi)含的功能之一,主要依賴于UG/Open工具集完成,亦是UG為用戶提供的最為有效的開發(fā)工具之一。二次開發(fā)功能依托于開放性架構(gòu),在具體的開發(fā)過程中,能夠利用多種環(huán)境語言和工具完成工作,其中,在二次開發(fā)的程序編譯環(huán)節(jié),主要采用VC++語言完成。此外,C語言、Java語言也可用于UG的二次開發(fā),通過上述高級計算機(jī)語言,UG能夠在二次開發(fā)環(huán)節(jié)中建立起完美的人機(jī)交互界面,不僅為用戶提供高效的開發(fā)體驗(yàn),還能夠?yàn)榧夹g(shù)人員提供便捷的開發(fā)輔助操作,可以說,UG二次開發(fā)的功能十分強(qiáng)大。
2.2 UG二次開發(fā)的工具
UG二次開發(fā)工具包含很多,其主要的有:UG/Open MenuScript、UG/Open API和UG/Open GRIP等,上述工具在UG二次開發(fā)中各有應(yīng)用領(lǐng)域且功能各異:(1)UG/Open MenuScript。應(yīng)用于UG操作界面的二次開發(fā),能夠通過添加自定義菜單文件的形式,完成個性化UG操作界面的開發(fā)。(2)UG/Open API。是UG的開發(fā)封裝工具集,內(nèi)部包含2000多個二次開發(fā)函數(shù),能夠完成對UG圖形終端、數(shù)據(jù)庫管理器的二次開發(fā)。(3)UG/Open GRIP。是UG內(nèi)含的專屬編程語言,用于圖形交互編程,設(shè)計者利用UG/Open GRIP能夠?qū)崿F(xiàn)UG二次開發(fā)中的圖形編程操作。
3 UG環(huán)境下聯(lián)合VC++進(jìn)行波紋管開發(fā)的案例
3.1 波紋管結(jié)構(gòu)分析
波紋管是一種重要的工業(yè)應(yīng)用產(chǎn)品,利用可折疊紋片沿折疊伸縮方向進(jìn)行連接,制成的一種管狀元件,被廣泛應(yīng)用在儀器儀表、電力通信、機(jī)械加工等領(lǐng)域。波紋管的結(jié)構(gòu)特點(diǎn)為:彈性佳,能夠在外界壓力、軸向力、縱向力的作用下產(chǎn)生偏移,強(qiáng)度高,耐久性好,應(yīng)力比較小。從波形結(jié)構(gòu)上分類,波紋管包含U型、C型兩大類,本文主要探究U型波紋管在UG環(huán)境下的二次開發(fā)。
3.2 開發(fā)環(huán)境配置
利用UG軟件進(jìn)行波紋管的二次開發(fā),需要創(chuàng)建開發(fā)環(huán)境,具體來說,需要設(shè)計者依托UG環(huán)境創(chuàng)設(shè)startup以及application兩個文檔,用于存放項(xiàng)目案例開發(fā)的文件,而創(chuàng)設(shè)這兩個文檔的過程,即是開發(fā)環(huán)境配置的主要工作。具體的操作為:首先,打開UG軟件中的custom dirs.dat文檔。其次,在文檔最后一行鍵入startup以及application兩個文檔的路徑。再次,采用VC++提供的MFA建立案例項(xiàng)目,同時創(chuàng)設(shè)一個MFC方式的靜態(tài)鏈接DLL文件。最后,在UG工具欄的【選項(xiàng)】中選擇【Directoris】,并在【Library files】以及【Includefiles】中添加相應(yīng)的環(huán)境配置路徑文件。
3.3 編寫菜單文件
編寫菜單文件,是進(jìn)行項(xiàng)目開發(fā)的第二步,具體可采用UG/Open MenuScript進(jìn)行編寫。實(shí)際操作時,設(shè)計人員可利用記事本進(jìn)行編輯,并將編輯好的文件保存在startup文件夾中以供后期調(diào)用。本設(shè)計的菜單程序可編寫如下:
VERSION 120
EDIT UG GATEWAY MAIN MENUBAR
BUTTON MODEL BELLOW
END OF MENU
3.4 對話框編輯
對話框是項(xiàng)目案例進(jìn)行二次開發(fā)時的人機(jī)交互界面,在本項(xiàng)目開發(fā)中,需要使用UG/Open UIStyler工具開發(fā),具體的操作方法為:在UG軟件中淡季菜單【應(yīng)用】-【用戶界面編輯器】,進(jìn)入UG/Open UIStyler界面,調(diào)取相應(yīng)的開發(fā)控件進(jìn)行設(shè)置,完成后單擊【保存】按鍵,將設(shè)置好的對話框保存起來。UG二次開發(fā)環(huán)境會自動生成一個*.c和一個*.h文件,用于后期的對話框編輯調(diào)用。
3.5 主程序編輯
主程序的編輯采用UG/Open API完成,在具體的編輯中,首先,需要將*.c和*.h文件導(dǎo)入到開發(fā)項(xiàng)目中,并利用主入口函數(shù)ufsta()進(jìn)行編譯;其次,利用Project_Model_bellow()函數(shù)打開波紋管幾何模型對話框;再次,利用UF_CALL_GRIP函數(shù)調(diào)用波紋管建模的GRIP程序;最后,在UG菜單中點(diǎn)擊【航天發(fā)動機(jī)項(xiàng)目產(chǎn)品】-【創(chuàng)建波紋管項(xiàng)目】,系統(tǒng)將顯示出波紋管的集合建模參數(shù),此時輸入對應(yīng)的尺寸數(shù)值,并點(diǎn)擊【OK】按鍵,軟件便可自動完成波紋管三維模型的繪制。
4 結(jié)語
利用VC++聯(lián)合UG的二次開發(fā)功能,進(jìn)行工業(yè)產(chǎn)品設(shè)計建模是一種較為實(shí)用的產(chǎn)品模型研發(fā)方案,本文僅截取一個小的應(yīng)用點(diǎn)進(jìn)行了案例分析,希望能夠引起更多專業(yè)技術(shù)人員的注意,在今后的工業(yè)產(chǎn)品建模開發(fā)中,更深入地研究UG的二次開發(fā)技術(shù),并用于實(shí)踐。
參考文獻(xiàn):
[1]李如忠.UG二次開發(fā)中利用MFC的方法[J].機(jī)械工程與自動化,2008(06):166-168.
[2]趙韓,張冰戰(zhàn).UG二次開發(fā)CAD系統(tǒng)MFC的調(diào)用方法研究[J].現(xiàn)代制造工程,2007(02):52-54.
[3]吳占陽,侯忠濱等.UG二次開發(fā)技術(shù)研究[J].現(xiàn)代機(jī)械,2005(05):48-50.