朱博文,高躍飛,王月桐,劉 松
(中北大學(xué) 機(jī)電工程學(xué)院,山西 太原 030051)
槍管作為自動武器中核心零部件之一,是完成武器射擊的基本零件。當(dāng)前槍管設(shè)計過程中主要是借助一些通用CAD軟件完成一些諸如繪圖、三維實體建模等方面的工作,計算機(jī)為設(shè)計人員的設(shè)計工作提供了一定的輔助作用,但是設(shè)計的自動化程度低[1]、用戶友好性差,并且在槍管設(shè)計過程中需要多種軟件交互操作,設(shè)計人員需要耗費(fèi)大量的時間來完成多個軟件工具操作等繁瑣的工作。槍管是一種較為典型的零件,在實際設(shè)計中其幾何拓?fù)潢P(guān)系變化不大,而結(jié)構(gòu)尺寸卻需要隨時調(diào)整,這樣就會產(chǎn)生大量的重復(fù)設(shè)計,增加勞動與時間成本,基于UG二次開發(fā)模塊開發(fā)的參數(shù)化建模功能可有效解決這種重復(fù)設(shè)計問題[2-4]。
筆者以UG /NX 8.0軟件相關(guān)二次開發(fā)模塊為基礎(chǔ),以槍管設(shè)計計算及參數(shù)化建模為重點,將槍管設(shè)計經(jīng)驗和流程以向?qū)问郊右怨袒?,形成槍管快速設(shè)計與分析的模塊開發(fā)方法。并通過UG/Open API和C++與MATLAB混合編程方法完成了后臺程序的設(shè)計計算和參數(shù)化建模,充分保留C++的簡單、快捷及自由性和MATLAB強(qiáng)大的圖像處理功能,使得設(shè)計人員不必使用其他軟件工具,只需在UG環(huán)境中即可獨立完成槍管設(shè)計各個步驟,不必耗費(fèi)大量的時間對設(shè)計人員進(jìn)行理論知識和軟件應(yīng)用方面的培訓(xùn)。使設(shè)計人員從大量復(fù)雜而瑣碎的設(shè)計計算、手工繪圖、實體建模的工作中解脫出來,從而集中精力于設(shè)計創(chuàng)新,極大地提高了槍管設(shè)計效率,縮短研發(fā)周期,并減少了過程信息的存儲量。
槍管在設(shè)計過程中,首先需根據(jù)槍管設(shè)計的相關(guān)知識和槍管設(shè)計要求,提取相關(guān)設(shè)計參數(shù),為后續(xù)設(shè)計提供數(shù)據(jù)基礎(chǔ)。內(nèi)膛結(jié)構(gòu)設(shè)計主要包括結(jié)構(gòu)形式的確定和相關(guān)參數(shù)的設(shè)置。外形結(jié)構(gòu)設(shè)計則是對槍管材料、安全系數(shù)等的選取以及外形調(diào)整。在內(nèi)膛及外形設(shè)計完成后,可得到槍管的實體模型,以此模型為基礎(chǔ),對槍管進(jìn)行有限元分析計算。
對于內(nèi)膛結(jié)構(gòu)設(shè)計,其結(jié)構(gòu)形式和結(jié)構(gòu)參數(shù)的選擇均由設(shè)計人員來完成。在線膛設(shè)計中,需要選擇矩形膛線、梯形膛線、圓形膛線等線膛截面形狀,并輸入膛線數(shù)、膛線深度、導(dǎo)程等參數(shù),就可得到相應(yīng)結(jié)構(gòu)形式的線膛特征。
彈膛設(shè)計與線膛設(shè)計類似,也是通過設(shè)計人員選擇椎體個數(shù)后,輸入各椎體的大端直徑以及椎體到槍管尾端的距離等參數(shù),相較比線膛復(fù)雜的一方面就是需要考慮彈膛開槽的形式。
另外,在確定內(nèi)膛結(jié)構(gòu)后,內(nèi)膛結(jié)構(gòu)部分參數(shù)會以數(shù)據(jù)文件的形式保存起來,供后續(xù)內(nèi)彈道計算調(diào)用。
設(shè)計槍管的外形時,首先應(yīng)進(jìn)行強(qiáng)度計算,以決定各主要斷面的壁厚。并根據(jù)槍管與其結(jié)合零件的大小和所在的部位,考慮工藝要求、剛度和熱容量等因素來調(diào)整槍管的外形,使之成為滿足強(qiáng)度要求、形狀規(guī)則的槍管[5]。
槍管在射擊時受到的力很復(fù)雜,有彈頭在內(nèi)膛中運(yùn)動的力,槍身后坐力和火藥氣體壓力等。因此,根據(jù)基本假設(shè)[6]在MATLAB中編寫相應(yīng)內(nèi)彈道方程,并以C++與MATLAB混合編程技術(shù),開發(fā)一個以MFC為界面、MATLAB為后臺計算程序的內(nèi)彈道計算模塊。
威縣的葡萄基地則是我國五大葡萄產(chǎn)區(qū)中唯一符合最適宜區(qū)7項指標(biāo)要求的優(yōu)生區(qū),常年種植優(yōu)質(zhì)葡萄10萬畝以上。近年來,威縣按照供給側(cè)改革發(fā)展理念,通過產(chǎn)業(yè)結(jié)構(gòu)調(diào)整,大力發(fā)揮葡萄種植科普示范基地、葡萄種植專業(yè)合作社等組織的作用,引導(dǎo)農(nóng)戶強(qiáng)力推廣成熟的葡萄種植技術(shù)和優(yōu)質(zhì)的葡萄品種,使威縣葡萄種植產(chǎn)業(yè)逐步成為帶動農(nóng)民增收致富的又一大主導(dǎo)產(chǎn)業(yè)。
本模塊的開發(fā)重點是MATLAB文件如何生成DLL文件和C++如何調(diào)用DLL文件。筆者在MARLAB 2010b中,通過Deployment Tool工具直接將m文件轉(zhuǎn)化,生成相對應(yīng)的頭文件、庫文件和dll文件,供后續(xù)調(diào)用。將生成的文件移動到VC++程序工作路徑下,并在VS 2010編譯平臺下添加附加依賴項和設(shè)置附加包含目錄,完成編程環(huán)境的設(shè)置。
編程環(huán)境設(shè)置完成后,即可對MATLAB文件的函數(shù)進(jìn)行調(diào)用,從而實現(xiàn)C++對MATLAB程序的調(diào)用,完成混和編程。內(nèi)彈道程序編寫完成后,可生成獨立運(yùn)行程序(*.exe)。這樣,內(nèi)彈道模塊既可獨立運(yùn)行,也可通過system函數(shù)在VC++中隨時調(diào)用。
輸入原始數(shù)據(jù)并進(jìn)行內(nèi)彈道計算后,便可得到相關(guān)內(nèi)彈道數(shù)據(jù),并以此進(jìn)行槍管平均壓力曲線或高低溫壓力曲線的計算和繪制,平均壓力法處理界面如圖2所示。
選擇槍管各部分安全系數(shù)和槍管材料后,就可得到槍管理論強(qiáng)度曲線。最后,根據(jù)槍管外徑計算公式[5]確定槍管各主要截面的外徑,以此繪制槍管的理論外形,公式為
(1)
式中:r1為槍管內(nèi)膛結(jié)構(gòu)設(shè)計得出的內(nèi)徑;r2為得出的理論外徑;n為各部分的安全系數(shù);p為各部分膛壓;σs為材料屈服極限。
以上步驟完成后,有關(guān)數(shù)據(jù)將會保持到指定位置的系統(tǒng)初始化文件(*.ini)中,供后續(xù)調(diào)用或存儲。
在UG環(huán)境下應(yīng)用UG表達(dá)式的功能建立槍管參數(shù)化模型, 并通過UG/Open的二次開發(fā)功能完成槍管的系統(tǒng)化開發(fā)。本軟件使用UG二次開發(fā)模塊BlockUIStyler設(shè)計相關(guān)對話框,并保存為*.cpp、*.hpp、*.dlx3個文件,用VS2010編譯器調(diào)用*.cpp、*.hpp的文件,編譯生成*.dll文件,等待調(diào)用[7-8];編輯UG軟件中的MenuScript文件進(jìn)行菜單界面設(shè)計,并保存在用戶目錄的startup子目錄下,進(jìn)行聯(lián)合開發(fā)。
新建文本文件,寫入相關(guān)代碼,修改擴(kuò)展名為*.men文件,并將其放入用戶開發(fā)子目錄startup下,即可通過UG/OpenMenuScript制作協(xié)調(diào)于UG的新菜單。UG啟動后,系統(tǒng)會自動調(diào)用用戶注冊目錄下的菜單文件和工具欄腳本文件中的信息,在UG指定位置顯示菜單如圖3所示。
利用UG/OpenBlockUIStyler定制用戶對話框。進(jìn)入塊UI樣式編輯器,在設(shè)計對話框中添加向?qū)?、膛線數(shù)、膛線尺寸、彈膛錐數(shù)、內(nèi)彈道計算按鈕等,并添加對應(yīng)的位圖文件,調(diào)整各個控件的相對位置。完成后的效果圖如圖4所示。
通過修改槍管模板模型的尺寸參數(shù)來實現(xiàn)參數(shù)化建模。模板模型庫事先用手工方式建立,建立過程中定義重要尺寸的表達(dá)式,這些特定的驅(qū)動參數(shù)包括:槍口形狀、彈膛錐數(shù)、膛線數(shù)、膛線形狀、外形參數(shù)等,并與指定對話框的控件相關(guān)聯(lián),保存在程序指向的目錄下。
由于槍管特征較多,所需建立的模板也很多,若只采用手工方式建立模板,需要大量的時間來完成模板的創(chuàng)建,而產(chǎn)生的模板數(shù)量也很多,這為軟件的運(yùn)行造成了不便。若只采用后臺程序建模,也需要大量的精力來完成。所以筆者采用UG/OpenAPI與手工方式相互結(jié)合的方法完成參數(shù)化模型的創(chuàng)建,節(jié)省了存儲空間和工作量。
參數(shù)化建模的基本過程是:運(yùn)行槍管設(shè)計分析平臺→參數(shù)化建?!鷨覷GNX→打開模板文件→修改驅(qū)動尺寸→根據(jù)新尺寸重建模型→存儲新文件→關(guān)閉UGNX。
本軟件以VS2010編譯器和UG/NX8.0為開發(fā)平臺。首先將“:UGUGOPENvs_files”下的VB、VC、VC# 3個文件夾替換到VS2010目錄下對應(yīng)的文件夾下;在VS2010中新建一個NX8OpenWizard1項目模板文件;將BlockUIStyler生成的*.cpp、*.hpp文件替換到項目文件中,編寫相應(yīng)的回調(diào)函數(shù),生成動態(tài)鏈接庫文件(*.dll),供菜單項調(diào)用。系統(tǒng)實現(xiàn)流程如圖5所示。
本模塊主要是為了實現(xiàn)UG的各個模塊數(shù)據(jù)的保存與提取,以及各個模塊相互之間數(shù)據(jù)的自動傳遞。當(dāng)數(shù)據(jù)較少不必引用數(shù)據(jù)庫時,可以利用文件解析與重構(gòu)技術(shù)實現(xiàn)UG系統(tǒng)數(shù)據(jù)管理,模塊的數(shù)據(jù)以文件的形式完成保存、提取和傳遞等功能,可以使系統(tǒng)各模塊相互獨立,開發(fā)的程序不會太長,易于修改、擴(kuò)充。
以某7.62mm自動步槍[5]為例,啟動UG軟件,選擇【設(shè)計分析一體化軟件】|【槍管設(shè)計分析一體化軟件】|【槍管設(shè)計分析】,如圖3所示。彈出如圖4所示的對話框,根據(jù)向?qū)Р襟E依次進(jìn)行槍管設(shè)計。
在圖4對話框中輸入內(nèi)膛結(jié)構(gòu)參數(shù),完成后,點擊下一步,進(jìn)入外形結(jié)構(gòu)設(shè)計對話框,如圖6所示。
外形設(shè)計完成后,單擊完成,即可在UG環(huán)境中建立槍管的實體模型,結(jié)果如圖7所示。
經(jīng)過參數(shù)化設(shè)計完成模型與原有槍管模型進(jìn)行對比,可知用本軟件設(shè)計的槍管模型符合槍管設(shè)計要求,與原有槍管模型差別可忽略不計,滿足設(shè)計要求。
彈丸射擊時,由于槍管的振動會增大射角的散布,進(jìn)而影響射擊密集度。模態(tài)分析可為輕武器系統(tǒng)的振動特性分析、射彈分布情況以及結(jié)構(gòu)動力特性的優(yōu)化設(shè)計提供依據(jù)。
彈丸射擊時槍管發(fā)生的振動主要有橫向振動、縱向振動、扭轉(zhuǎn)振動以及幅向振動。武器設(shè)計時,要使激勵頻率避開槍管固有頻率,以免發(fā)生共振。為了保證武器良好的射擊精度,對槍管進(jìn)行模態(tài)分析是十分必要的。
NXNastran模態(tài)分析集成于UG高級仿真模塊中,用于計算和評估結(jié)構(gòu)的固有頻率,計算時不考慮阻尼和外載荷。采用Lanczos法求解,該方法精確度高,收斂速度快[9]。網(wǎng)格單元屬性類型選擇為CTETRA(4),設(shè)槍管材料屬性為:質(zhì)量密度ρ=7 800 kg/m3,楊氏模量E=210 GPa,泊松比μ=0.30,屈服強(qiáng)度σ=475 MPa。解算后,槍管有代表性的模態(tài)振型圖如圖8所示。 從振型計算結(jié)果可以看出,前10階模態(tài)中出現(xiàn)了6個固有頻率區(qū)域,3種振型,各階模態(tài)頻率中,第1、2階模態(tài)頻率最低,在89 Hz左右。以600發(fā)/min射速計算,射頻為10 Hz,意味著武器振動周期比射擊周期小很多,能夠避開該槍管的固有頻率。最大應(yīng)變均出現(xiàn)在槍管尾端固定約束邊界位置,因此應(yīng)提高此區(qū)域的結(jié)構(gòu)強(qiáng)度。
筆者應(yīng)用UG/Open API和C++與MATLAB混合編程技術(shù),充分發(fā)揮各自的優(yōu)點,對UG進(jìn)行二次開發(fā)。將槍管設(shè)計經(jīng)驗和流程以向?qū)问郊右怨袒ㄖ屏藚f(xié)調(diào)于UG環(huán)境下的槍管設(shè)計向?qū)υ捒蚝筒藛?,實現(xiàn)了槍管的設(shè)計分析和參數(shù)化建模,使得在UG軟件本身即可獨立完成槍管的設(shè)計分析過程。極大地提高了設(shè)計效率,且為槍管的系列化和建立槍管數(shù)據(jù)庫提供了基礎(chǔ)。
根據(jù)實際應(yīng)用中的需要,利用UG自帶有限元模塊NX Nastran對槍管的固有頻率、振型進(jìn)行了模態(tài)分析,對槍管結(jié)構(gòu)進(jìn)行動態(tài)性能評估,為后續(xù)的設(shè)計工作提供合適的動頻率參數(shù),避免設(shè)計槍管時發(fā)生共振現(xiàn)象。
References)
[1]馬俊. 基于特征技術(shù)的UG參數(shù)化建模的研究[J]. 機(jī)械工程與自動化,2009(6):179-180,182. MA Jun. UG’s parametric modeling based on feature technology[J]. Mechanical Engineering & Automation, 2009(6):179-180,182.(in Chinese)
[2]王峰,俞新陸.產(chǎn)品級三維參數(shù)化設(shè)計系統(tǒng)的研究與開發(fā)[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,2001,13(11):1012-1018. WANG Feng, YU Xinlu. Research and development of product-dimensional parametric design system[J]. Journal of Computer Aided Design and Computer Graphics, 2001,13(11):1012-1018. (in Chinese)
[3]馬翠霞,孟祥旭.參數(shù)化設(shè)計中的對象約束模型及反向約束的研究[J].計算機(jī)學(xué)報,2000,23(9):991-995. MA Cuixia,MENG Xiangxu.Research on object constraints model and inverted constraints in parametric design[J].Chinese Journal of Computers,2000,23(9):991-995.(in Chinese)
[4]史麗媛,祝錫晶,馬繼召.基于UG 參數(shù)化設(shè)計系統(tǒng)的研究[J].圖學(xué)學(xué)報,2013,34(2):108-112. SHI Liyuan, ZHU Xijing, MA Jizhao. A UG-based parametric design system[J]. Journal of Graphics, 2013,34(2):108-112. (in Chinese)
[5]戴成勛,靳天佑,朵英賢.自動武器設(shè)計新編[M].北京:國防工業(yè)出版社,1990. DAI Chengxun, JIN Tianyou, DUO Yingxian. The new compiles of automatic weapon design[M].Beijing: National Defense Industry Press,1990.(in Chinese)
[6]金志明.槍炮內(nèi)彈道學(xué)[M].北京:北京理工大學(xué)出版社,2004. JIN Zhiming. Gun interior ballistics[M].Beijing:Beijing Institute of Technology Press,2004.(in Chinese)
[7]楊宗亮, 吳兆華. UG二次開發(fā)技術(shù)及其開發(fā)技巧[J]. 機(jī)械工程師, 2007(4):112-114. YANG Zongliang, WU Zhaohua. The second development technology and development skill of UG[J].Mechanical Engineer, 2007(4):112-114. (in Chinese)
[8]周臨震, 李青祝, 秦珂. 基于UG NX系統(tǒng)的二次開發(fā)[M].鎮(zhèn)江:江蘇大學(xué)出版社, 2012. ZHOU Linzhen, LI Qingzhu, QIN Ke. Application deve-lopment using NX open[M].Zhenjing:Jiangsu University Press,2012.(in Chinese)
[9]付永濤,谷立臣,李亮,等.基于UG二次開發(fā)的變位斜齒輪參數(shù)化建模研究[J]. 機(jī)械傳動, 2014(1):62- 66. FU Yongtao, GU Lichen, LI Liang,et al. Study on parametric 3D modeling of modified helical gear based on UG secondary development[J]. Journal of Mechanical Transmission, 2014(1):62-66. (in Chinese)